@layer base{*,:before,:after{box-sizing:border-box}*{scrollbar-width:thin;scrollbar-color:var(--outline-strong) transparent}@supports not (scrollbar-color:auto){::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar-thumb{background:var(--outline-strong);border-radius:var(--radius-pill);background-clip:padding-box;border:2px solid #0000}}}@layer components{.btn{--_c:var(--primary);--_c2:var(--primary-2,var(--secondary));--_bg:var(--_c);--_fg:var(--on-primary);justify-content:center;align-items:center;gap:var(--space-2);font:inherit;font-weight:700;font-size:var(--fs-md);border-radius:var(--radius-md);cursor:pointer;background:var(--_bg);color:var(--_fg);box-shadow:none;border:1px solid #0000;padding:10px 18px;line-height:1;transition:filter .15s,transform 50ms,box-shadow .15s;display:inline-flex}.btn:hover{filter:brightness(1.06)}.btn:active{transform:translateY(1px)}.btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.btn:disabled,.btn.btn--disabled{opacity:.5;cursor:not-allowed;filter:none}.btn.btn--secondary{--_c:var(--secondary);--_c2:var(--secondary-2,color-mix(in srgb, var(--secondary) 72%, #000));--_fg:var(--on-secondary)}.btn.btn--accent{--_c:var(--accent);--_c2:var(--accent-2,color-mix(in srgb, var(--accent) 72%, #000));--_fg:var(--on-accent)}.btn.btn--success{--_c:var(--success);--_c2:var(--success-2,color-mix(in srgb, var(--success) 72%, #000));--_fg:var(--on-success)}.btn.btn--warning{--_c:var(--warning);--_c2:var(--warning-2,color-mix(in srgb, var(--warning) 72%, #000));--_fg:var(--on-warning)}.btn.btn--error{--_c:var(--error);--_c2:var(--error-2,color-mix(in srgb, var(--error) 72%, #000));--_fg:var(--on-error)}.btn.btn--info{--_c:var(--info);--_c2:var(--info-2,color-mix(in srgb, var(--info) 72%, #000));--_fg:var(--on-info)}.btn.btn--gradient{--_bg:linear-gradient(135deg, var(--_c) 0%, var(--_c2) 100%);--_shadow-color:var(--_c);color:var(--on-gradient,var(--_fg))}.btn.btn--ghost{color:var(--on-surface);border:1px solid var(--outline-strong);box-shadow:none;background:0 0}.btn.btn--ghost:hover{background:color-mix(in srgb, var(--on-surface) 8%, transparent);filter:none}.btn.btn--ghost:active{box-shadow:none;transform:translateY(1px)}.btn.btn--outline{color:var(--_c);border:1px solid var(--_c);box-shadow:none;background:0 0}.btn.btn--outline:hover{background:color-mix(in srgb, var(--_c) 12%, transparent);filter:none}.btn.btn--outline:active{box-shadow:none;transform:translateY(1px)}.btn.btn--sm{font-size:var(--fs-sm);border-radius:var(--radius-sm);padding:7px 12px}.btn.btn--lg{font-size:var(--fs-lg);padding:13px 22px}.btn.btn--block{width:100%;display:flex}.card{--_c:var(--primary);background:var(--surface-1);border:1px solid var(--outline);border-radius:var(--radius-lg);padding:var(--space-6);color:var(--on-surface);gap:var(--space-4);flex-direction:column;display:flex}.card__header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.card__title{font-size:var(--fs-xl);margin:0;font-weight:800}.card__body{color:var(--on-surface-muted);font-size:var(--fs-md);margin:0;line-height:1.5}.card__actions{gap:var(--space-2);margin-top:auto;display:flex}.card--primary{--_c:var(--primary)}.card--success{--_c:var(--success)}.card--warning{--_c:var(--warning)}.card--error{--_c:var(--error)}.card--info{--_c:var(--info)}.card--primary,.card--success,.card--warning,.card--error,.card--info{border-inline-start:3px solid var(--_c)}.card--gradient{background:linear-gradient(135deg, color-mix(in srgb, var(--_c) 62%, var(--gradient-tint)) 0%, var(--_c) 48%, color-mix(in srgb, var(--_c) 84%, #000) 100%);color:#fff;border:none}.card--gradient .card__body{color:#ffffffd1}.field{gap:var(--space-2);flex-direction:column;display:flex}.field__label{font-size:var(--fs-xs);color:var(--on-surface);font-weight:600}.field__label--required:after{content:" *";color:var(--error)}.field__hint{font-size:var(--fs-xs);color:var(--on-surface-muted)}.field__hint--error{color:var(--error)}.field__hint--success{color:var(--success)}.input,.select,.textarea{background:var(--surface-1);border:1px solid var(--outline-strong);font:inherit;font-size:var(--fs-md);color:var(--on-surface);border-radius:var(--radius-md);width:100%;padding:10px 14px;transition:border-color .15s}.input::placeholder,.select::placeholder,.textarea::placeholder{color:var(--on-surface-muted)}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.input:disabled,.select:disabled,.textarea:disabled{opacity:.5;cursor:not-allowed}.textarea{resize:vertical;min-height:84px}.select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 4.5l3.5 3.5 3.5-3.5' fill='none' stroke='%238b93a1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-inline-end:34px}.input--error,.select--error,.textarea--error{border-color:var(--error)}.input--error:focus-visible,.select--error:focus-visible,.textarea--error:focus-visible{outline-color:var(--error)}.input--success,.select--success,.textarea--success{border-color:var(--success)}.input--success:focus-visible,.select--success:focus-visible,.textarea--success:focus-visible{outline-color:var(--success)}.input--sm,.select--sm,.textarea--sm{font-size:var(--fs-sm);border-radius:var(--radius-sm);padding-block:7px;padding-inline:11px}.input--lg,.select--lg,.textarea--lg{font-size:var(--fs-lg);padding-block:13px;padding-inline:16px}.select--sm,.select--lg{padding-inline-end:34px}.badge{--_c:var(--primary);--_c2:var(--primary-2,var(--secondary));--_bg:color-mix(in srgb, var(--on-surface) 10%, transparent);--_fg:var(--on-surface);font-size:var(--fs-xs);white-space:nowrap;border-radius:var(--radius-pill);background:var(--_bg);color:var(--_fg);box-shadow:none;border:1px solid #0000;align-items:center;gap:6px;padding:3px 10px;font-weight:700;line-height:1.5;display:inline-flex}.badge.badge--primary{--_c:var(--primary);--_c2:var(--primary-2,var(--secondary));--_bg:var(--primary-container);--_fg:var(--on-primary-container)}.badge.badge--secondary{--_c:var(--secondary);--_c2:var(--secondary-2,color-mix(in srgb, var(--secondary) 72%, #000));--_bg:var(--secondary-container);--_fg:var(--on-secondary-container)}.badge.badge--accent{--_c:var(--accent);--_c2:var(--accent-2,color-mix(in srgb, var(--accent) 72%, #000));--_bg:var(--accent-container);--_fg:var(--on-accent-container)}.badge.badge--success{--_c:var(--success);--_c2:var(--success-2,color-mix(in srgb, var(--success) 72%, #000));--_bg:var(--success-container);--_fg:var(--on-success-container)}.badge.badge--warning{--_c:var(--warning);--_c2:var(--warning-2,color-mix(in srgb, var(--warning) 72%, #000));--_bg:var(--warning-container);--_fg:var(--on-warning-container)}.badge.badge--error{--_c:var(--error);--_c2:var(--error-2,color-mix(in srgb, var(--error) 72%, #000));--_bg:var(--error-container);--_fg:var(--on-error-container)}.badge.badge--info{--_c:var(--info);--_c2:var(--info-2,color-mix(in srgb, var(--info) 72%, #000));--_bg:var(--info-container);--_fg:var(--on-info-container)}.badge.badge--outline{border-color:color-mix(in srgb, var(--_fg) 45%, transparent);box-shadow:none;background:0 0}.badge.badge--gradient{--_bg:linear-gradient(135deg, var(--_c) 0%, var(--_c2) 100%);--_fg:var(--on-gradient,#fff);border-color:#0000}.badge.badge--sm{padding:2px 8px;font-size:11px}.badge.badge--lg{font-size:var(--fs-sm);padding:5px 13px}.badge__dot{background:currentColor;border-radius:50%;flex:none;width:7px;height:7px}.alert{--_c:var(--primary);border-radius:var(--radius-md);background:color-mix(in srgb, var(--_c) 13%, var(--surface-1));color:var(--on-surface);border:1px solid var(--outline);border-left:3px solid var(--_c);font-size:var(--fs-md);box-shadow:none;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.alert.alert--success{--_c:var(--success)}.alert.alert--warning{--_c:var(--warning)}.alert.alert--error{--_c:var(--error)}.alert.alert--info{--_c:var(--info)}.alert__icon{color:var(--_c);flex:none;font-size:18px;line-height:1.35}.alert__title{font-weight:700}.alert__body{color:var(--on-surface-muted);font-size:var(--fs-sm);margin-top:2px}.switch{--_c:var(--primary);vertical-align:middle;cursor:pointer;flex:none;width:46px;height:26px;display:inline-flex;position:relative}.switch input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.switch__track{border-radius:var(--radius-pill);background:var(--surface-1);border:1px solid var(--outline-strong);transition:background .2s,border-color .2s,box-shadow .2s;position:absolute;inset:0}.switch__thumb{background:var(--on-surface-muted);border-radius:50%;width:18px;height:18px;transition:transform .2s,background .2s;position:absolute;top:4px;left:4px}.switch input:checked~.switch__track{--_bg:var(--_c);--_fg:#fff;background:var(--_bg);color:var(--_fg);box-shadow:none;border:1px solid #0000}.switch input:checked~.switch__thumb{background:#fff;transform:translate(20px)}.switch input:focus-visible~.switch__track{outline:2px solid var(--_c);outline-offset:2px}.switch input:disabled~.switch__track,.switch input:disabled~.switch__thumb{opacity:.5}.switch--success{--_c:var(--success)}.switch--warning{--_c:var(--warning)}.switch--error{--_c:var(--error)}.switch--sm{width:38px;height:22px}.switch--sm .switch__thumb{width:14px;height:14px}.switch--sm input:checked~.switch__thumb{transform:translate(16px)}.switch--lg{width:56px;height:32px}.switch--lg .switch__thumb{width:24px;height:24px}.switch--lg input:checked~.switch__thumb{transform:translate(24px)}.checkbox{--_c:var(--primary);appearance:none;border-radius:var(--radius-sm);cursor:pointer;vertical-align:middle;background:var(--surface-1);border:1px solid var(--outline-strong);flex:none;width:18px;height:18px;margin:0;transition:background .15s,border-color .15s;position:relative}.checkbox:checked,.checkbox:indeterminate{--_bg:var(--_c);--_fg:#fff;background:var(--_bg);color:var(--_fg);box-shadow:none;border:1px solid #0000}.checkbox:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:9px;position:absolute;top:50%;left:50%;transform:translate(-50%,-58%)rotate(45deg)}.checkbox:indeterminate:after{content:"";background:#fff;border-radius:1px;height:2px;position:absolute;top:calc(50% - 1px);left:3px;right:3px}.checkbox:focus-visible{outline:2px solid var(--_c);outline-offset:2px}.checkbox:disabled{opacity:.5;cursor:not-allowed}.checkbox.checkbox--success{--_c:var(--success)}.checkbox.checkbox--warning{--_c:var(--warning)}.checkbox.checkbox--error{--_c:var(--error)}.radio{--_c:var(--primary);appearance:none;cursor:pointer;vertical-align:middle;background:var(--surface-1);border:1px solid var(--outline-strong);border-radius:50%;flex:none;width:18px;height:18px;margin:0;transition:background .15s,border-color .15s;position:relative}.radio:checked{--_bg:var(--_c);--_fg:#fff;background:var(--_bg);color:var(--_fg);box-shadow:none;border:1px solid #0000}.radio:checked:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:4px}.radio:focus-visible{outline:2px solid var(--_c);outline-offset:2px}.radio:disabled{opacity:.5;cursor:not-allowed}.radio.radio--success{--_c:var(--success)}.radio.radio--warning{--_c:var(--warning)}.radio.radio--error{--_c:var(--error)}.range{--_c:var(--primary);width:100%;height:22px;accent-color:var(--_c);cursor:pointer}.range:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.range:disabled{opacity:.5;cursor:not-allowed}.range.range--success{--_c:var(--success)}.range.range--warning{--_c:var(--warning)}.range.range--error{--_c:var(--error)}.range.range--sm{height:16px}.range.range--lg{height:28px}.file{--_c:var(--primary);max-width:100%;font:inherit;font-size:var(--fs-sm);color:var(--on-surface-muted);cursor:pointer}.file::file-selector-button{font:inherit;font-weight:700;font-size:var(--fs-sm);border-radius:var(--radius-md);background:var(--_c);color:var(--on-primary);cursor:pointer;border:none;margin-inline-end:12px;padding:8px 14px;transition:filter .15s}.file::file-selector-button:hover{filter:brightness(1.06)}.file:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:var(--radius-md)}.file:disabled{opacity:.5;cursor:not-allowed}.file.file--ghost::file-selector-button{color:var(--on-surface);border:1px solid var(--outline-strong);background:0 0}.rating{--_c:var(--warning);flex-direction:row-reverse;justify-content:flex-end;gap:2px;display:inline-flex}.rating input{opacity:0;width:1px;height:1px;margin:0;position:absolute}.rating label{color:var(--outline-strong);cursor:pointer;font-size:24px;line-height:1;transition:color .12s,transform .12s}.rating label:hover{transform:scale(1.1)}.rating input:checked~label,.rating label:hover,.rating label:hover~label{color:var(--_c)}.rating input:focus-visible+label{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}.rating.rating--sm label{font-size:18px}.rating.rating--lg label{font-size:32px}.tabs{border-radius:var(--radius-md);background:var(--surface-1);border:1px solid var(--outline-strong);gap:4px;padding:4px;display:inline-flex}.tabs--block{width:100%;display:flex}.tabs--block .tab{flex:1}.tab{font:inherit;font-weight:700;font-size:var(--fs-sm);border-radius:var(--radius-sm);color:var(--on-surface-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:8px 14px;transition:color .15s}.tab:hover:not(.tab--active){color:var(--on-surface)}.tab:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.tab--active{--_bg:var(--primary);--_fg:var(--on-primary);background:var(--_bg);color:var(--_fg);box-shadow:none;border:1px solid #0000}.tab-panel{margin-top:var(--space-4)}.tabs--underline{border:none;border-bottom:1px solid var(--outline);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-radius:0;gap:4px;padding:0}.tabs--underline .tab{border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px;padding:10px 14px}.tabs--underline .tab--active{box-shadow:none;color:var(--primary);border-bottom-color:var(--primary);background:0 0}.tabs--lift{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:none;border-radius:0;gap:4px;padding:0}.tabs--lift .tab{z-index:0;border-radius:var(--radius-md) var(--radius-md) 0 0;border:1px solid #0000;border-bottom:none;margin-bottom:-1px;padding:10px 16px;position:relative}.tabs--lift .tab--active{z-index:1;background:var(--surface-1);box-shadow:none;color:var(--on-surface);border-color:var(--outline)}.tab-panels{padding-top:var(--space-4)}.tab-panels .tab-panel{margin-top:0}.tabs--lift+.tab-panels{padding:var(--space-6);background:var(--surface-1);border:1px solid var(--outline);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.tab-card{background:var(--surface-1);border:1px solid var(--outline);border-radius:var(--radius-lg);overflow:hidden}.tab-card>.tabs{border:none;border-bottom:1px solid var(--outline);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:var(--space-2);background:0 0;border-radius:0;display:flex}.tab-card>.tabs--underline{padding:var(--space-1) var(--space-2) 0}.tab-card>.tab-panels{padding:var(--space-6);margin-top:0}.tabs--sm .tab{font-size:var(--fs-xs);padding:5px 10px}.tabs--lg .tab{font-size:var(--fs-md);padding:11px 18px}.table{border-collapse:collapse;width:100%;font-size:var(--fs-md);color:var(--on-surface)}.table th,.table td{text-align:left;border-bottom:1px solid var(--outline);padding:11px 14px}.table th{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--on-surface-muted);font-weight:700}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover{background:color-mix(in srgb, var(--on-surface) 5%, transparent)}.table--zebra tbody tr:nth-child(2n){background:color-mix(in srgb, var(--on-surface) 4%, transparent)}.table--compact th,.table--compact td{padding:7px 10px}.group,.btn-group{border-radius:var(--radius-md);align-items:stretch;display:inline-flex}.group>*,.btn-group>*{box-shadow:none;border-radius:0;position:relative}.group>:not(:first-child),.btn-group>:not(:first-child){margin-inline-start:-1px}.group>:hover,.group>:focus-visible,.group>:focus-within,.btn-group>:hover,.btn-group>:focus-visible,.btn-group>:focus-within{z-index:1}.group>:first-child,.btn-group>:first-child{border-start-start-radius:var(--radius-md);border-end-start-radius:var(--radius-md)}.group>:last-child,.btn-group>:last-child{border-start-end-radius:var(--radius-md);border-end-end-radius:var(--radius-md)}.group>.input,.group>.select,.btn-group>.input,.btn-group>.select{flex:1;width:auto;min-width:0}.group--block,.btn-group--block{width:100%;display:flex}.group--block>*,.btn-group--block>*{flex:1}.segmented{border-radius:var(--radius-md);background:var(--surface-1);border:1px solid var(--outline-strong);gap:4px;padding:4px;display:inline-flex}.segmented--block{width:100%;display:flex}.segmented--block .segmented__option{flex:1}.segmented__option{flex:none;display:inline-flex;position:relative}.segmented__option input{opacity:0;cursor:pointer;width:100%;margin:0;position:absolute;inset:0}.segmented__option span{text-align:center;border-radius:var(--radius-sm);font-weight:700;font-size:var(--fs-sm);color:var(--on-surface-muted);white-space:nowrap;-webkit-user-select:none;user-select:none;flex:1;padding:8px 14px;transition:color .15s}.segmented__option input:checked+span{--_c:var(--primary);--_bg:var(--_c);--_fg:var(--on-primary);background:var(--_bg);color:var(--_fg);box-shadow:none;border:1px solid #0000}.segmented__option input:focus-visible+span{outline:2px solid var(--primary);outline-offset:2px}.progress{--_c:var(--primary);border-radius:var(--radius-pill);background:var(--surface-1);border:1px solid var(--outline-strong);width:100%;height:8px;display:block;overflow:hidden}.progress__bar{border-radius:inherit;background:var(--_c);height:100%;transition:width .3s;display:block}.progress--success{--_c:var(--success)}.progress--warning{--_c:var(--warning)}.progress--error{--_c:var(--error)}.spinner{border:3px solid var(--outline-strong);border-top-color:var(--primary);border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin;display:inline-block}.spinner--sm{border-width:2px;width:18px;height:18px}.spinner--lg{border-width:4px;width:40px;height:40px}@keyframes spin{to{transform:rotate(360deg)}}.tooltip{display:inline-flex;position:relative}.tooltip__text{visibility:hidden;opacity:0;white-space:nowrap;background:var(--tip-bg);color:var(--tip-text);font-size:var(--fs-xs);border-radius:var(--radius-sm);z-index:var(--z-dropdown);padding:6px 10px;font-weight:600;transition:opacity .15s,visibility .15s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 6px 20px #00000040}.tooltip__text:after{content:"";border:5px solid #0000;border-top-color:var(--tip-bg);position:absolute;top:100%;left:50%;transform:translate(-50%)}.tooltip:hover .tooltip__text,.tooltip:focus-within .tooltip__text{visibility:visible;opacity:1}.tooltip--bottom .tooltip__text{top:calc(100% + 8px);bottom:auto}.tooltip--bottom .tooltip__text:after{border-top-color:#0000;border-bottom-color:var(--tip-bg);top:auto;bottom:100%}.modal-overlay{z-index:var(--z-modal);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;visibility:hidden;background:#040a1480;place-items:center;padding:20px;transition:opacity .2s,visibility .2s;display:grid;position:fixed;inset:0}.modal-overlay[data-state=open]{opacity:1;visibility:visible}.modal{border-radius:var(--radius-lg);background:var(--surface-1);border:1px solid var(--outline);width:100%;max-width:440px;box-shadow:var(--shadow-2);padding:24px;transition:transform .2s;transform:translateY(10px)scale(.98)}.modal-overlay[data-state=open] .modal{transform:none}.modal__title{font-size:var(--fs-xl);margin:0 0 8px;font-weight:800}.modal__body{color:var(--on-surface-muted);font-size:var(--fs-md);margin:0 0 20px;line-height:1.5}.modal__actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.modal__body+.modal__actions{margin-top:0}.dropdown{display:inline-block;position:relative}.dropdown__menu{z-index:var(--z-dropdown);border-radius:var(--radius-md);background:var(--surface-2);border:1px solid var(--outline);opacity:0;visibility:hidden;min-width:180px;padding:6px;transition:opacity .15s,transform .15s,visibility .15s;position:absolute;top:calc(100% + 6px);left:0;transform:translateY(-4px)}.dropdown__menu--end{left:auto;right:0}.dropdown[data-state=open] .dropdown__menu{opacity:1;visibility:visible;transform:none}.dropdown__item{text-align:left;border-radius:var(--radius-sm);width:100%;color:var(--on-surface);font:inherit;font-size:var(--fs-sm);cursor:pointer;background:0 0;border:none;padding:9px 12px;font-weight:600;text-decoration:none;display:block}.dropdown__item:hover{background:color-mix(in srgb, var(--on-surface) 8%, transparent)}.dropdown__divider{background:var(--outline);height:1px;margin:6px 4px}.dropdown__caret{border-bottom:2px solid;border-right:2px solid;border-bottom-right-radius:2px;width:8px;height:8px;margin-inline-start:6px;transition:transform .2s;display:inline-block;transform:translateY(-2px)rotate(45deg)}.dropdown[data-state=open] .dropdown__caret{transform:translateY(1px)rotate(-135deg)}.avatar{width:40px;height:40px;font-weight:700;font-size:var(--fs-md);color:var(--on-surface);background:color-mix(in srgb, var(--primary) 22%, var(--surface-2));border:2px solid var(--surface-1);border-radius:50%;flex:none;place-items:center;display:inline-grid;position:relative;overflow:hidden}.avatar img{object-fit:cover;border-radius:inherit;width:100%;height:100%}.avatar--sm{width:30px;height:30px;font-size:var(--fs-xs)}.avatar--lg{width:56px;height:56px;font-size:var(--fs-xl)}.avatar--square{border-radius:var(--radius-md)}.avatar__status{background:var(--on-surface-muted);border:2px solid var(--surface-1);border-radius:50%;width:11px;height:11px;position:absolute;bottom:0;right:0}.avatar__status--online{background:var(--success)}.avatar__status--busy{background:var(--error)}.avatar-group{display:inline-flex}.avatar-group .avatar:not(:first-child){margin-left:-12px}.accordion{flex-direction:column;gap:8px;display:flex}.accordion__item{border-radius:var(--radius-md);background:var(--surface-1);border:1px solid var(--outline);overflow:hidden}.accordion__head{font-weight:700;font-size:var(--fs-md);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;list-style:none;display:flex}.accordion__head::-webkit-details-marker{display:none}.accordion__head:after{content:"";border-right:2px solid var(--on-surface-muted);border-bottom:2px solid var(--on-surface-muted);border-bottom-right-radius:2px;flex:none;width:9px;height:9px;margin-inline-start:8px;transition:transform .2s;transform:translateY(-2px)rotate(45deg)}.accordion__head:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.accordion__item[open]>.accordion__head:after{transform:translateY(2px)rotate(-135deg)}.accordion__body{color:var(--on-surface-muted);font-size:var(--fs-sm);padding:0 16px 16px;line-height:1.5}.toast-container{z-index:var(--z-toast);pointer-events:none;flex-direction:column;gap:10px;width:min(360px,100vw - 40px);display:flex;position:fixed;top:20px;right:20px}.toast-container--bottom{top:auto;bottom:20px}.toast{--_c:var(--primary);pointer-events:auto;border-radius:var(--radius-md);background:var(--surface-1);border:1px solid var(--outline);border-left:3px solid var(--_c);box-shadow:var(--shadow-2);font-size:var(--fs-sm);opacity:0;align-items:flex-start;gap:12px;padding:12px 14px;transition:opacity .2s,transform .2s;display:flex;transform:translate(12px)}.toast[data-state=open]{opacity:1;transform:none}.toast--success{--_c:var(--success)}.toast--warning{--_c:var(--warning)}.toast--error{--_c:var(--error)}.toast--info{--_c:var(--info)}.toast__body{color:var(--on-surface);flex:1;line-height:1.4}.toast__close{color:var(--on-surface-muted);cursor:pointer;background:0 0;border:none;flex:none;padding:0 2px;font-size:18px;line-height:1}.toast__close:hover{color:var(--on-surface)}.pagination{gap:4px;display:inline-flex}.pagination__item{border-radius:var(--radius-md);border:1px solid var(--outline);background:var(--surface-1);min-width:36px;height:36px;color:var(--on-surface);font:inherit;font-size:var(--fs-sm);cursor:pointer;justify-content:center;align-items:center;padding:0 8px;font-weight:600;text-decoration:none;display:inline-flex}.pagination__item:hover:not(.pagination__item--active):not(:disabled):not(.pagination__item--disabled){background:color-mix(in srgb, var(--on-surface) 8%, transparent)}.pagination__item:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.pagination__item:disabled,.pagination__item.pagination__item--disabled{opacity:.5;cursor:not-allowed}.pagination__item--active{--_bg:var(--primary);--_fg:var(--on-primary);background:var(--_bg);color:var(--_fg);box-shadow:none;border:1px solid #0000}.pagination--joined{gap:0}.pagination--joined .pagination__item{border-radius:0;position:relative}.pagination--joined .pagination__item:not(:first-child){margin-inline-start:-1px}.pagination--joined .pagination__item:hover:not(:disabled):not(.pagination__item--disabled),.pagination--joined .pagination__item:focus-visible,.pagination--joined .pagination__item--active{z-index:1}.pagination--joined .pagination__item:first-child{border-start-start-radius:var(--radius-md);border-end-start-radius:var(--radius-md)}.pagination--joined .pagination__item:last-child{border-start-end-radius:var(--radius-md);border-end-end-radius:var(--radius-md)}.pagination--sm .pagination__item{min-width:30px;height:30px;font-size:var(--fs-xs)}.pagination__ellipsis{min-width:24px;height:36px;color:var(--on-surface-muted);-webkit-user-select:none;user-select:none;justify-content:center;align-items:flex-end;padding-bottom:6px;display:inline-flex}.pagination--sm .pagination__ellipsis{height:30px}.menu,.menu__section{gap:var(--space-1);flex-direction:column;display:flex}.menu__section+.menu__section{margin-top:var(--space-3)}.menu__label{padding:var(--space-2) var(--space-3) var(--space-1);font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--on-surface-muted);font-weight:700}.menu__item{align-items:center;gap:var(--space-3);width:100%;font:inherit;font-size:var(--fs-md);text-align:start;color:var(--on-surface);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:0;padding:10px 12px;font-weight:600;line-height:1.2;text-decoration:none;transition:background .15s,color .15s;display:flex;position:relative}.menu__item>svg{flex:none;width:20px;height:20px}.menu__item>span:not([class]){flex:auto}.menu__item:hover{background:color-mix(in srgb, var(--primary) 12%, transparent)}.menu__item:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.menu__item.menu__item--active{background:var(--gradient);color:var(--on-gradient,#fff);box-shadow:0 6px 18px color-mix(in srgb, var(--primary) 30%, transparent)}.menu__item.menu__item--active .menu__badge{box-shadow:0 0 0 2px var(--on-gradient,#fff)}.menu__item:disabled,.menu__item.menu__item--disabled{opacity:.5;cursor:not-allowed}.menu__item:disabled:hover,.menu__item.menu__item--disabled:hover{background:0 0}.menu--compact .menu__label{height:1px;margin-block:var(--space-2);margin-inline:var(--space-2);background:var(--outline);padding:0;font-size:0;overflow:hidden}.menu--compact .menu__item{justify-content:center;padding:10px}.menu--compact .menu__item>span:not([class]){display:none}.menu--compact .menu__badge{background:var(--primary);min-width:15px;height:15px;color:var(--on-primary);box-shadow:0 0 0 2px var(--surface-1);margin-inline-start:0;padding:0 4px;font-size:9.5px;position:absolute;inset-block-start:3px;inset-inline-end:3px}.menu--compact .menu__item--active .menu__badge{box-shadow:0 0 0 2px var(--on-gradient,#fff)}.menu--compact .menu__item[data-tip]:after{content:attr(data-tip);inset-inline-start:calc(100% + 10px);white-space:nowrap;background:var(--tip-bg);color:var(--tip-text);font-size:var(--fs-xs);border-radius:var(--radius-sm);z-index:var(--z-dropdown);visibility:hidden;opacity:0;padding:6px 10px;font-weight:600;transition:opacity .15s,visibility .15s;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 6px 20px #00000040}.menu--compact .menu__item[data-tip]:before{content:"";inset-inline-start:100%;border:5px solid #0000;border-inline-end-color:var(--tip-bg);z-index:var(--z-dropdown);visibility:hidden;opacity:0;transition:opacity .15s,visibility .15s;position:absolute;top:50%;transform:translateY(-50%)}.menu--compact .menu__item[data-tip]:hover:after,.menu--compact .menu__item[data-tip]:hover:before,.menu--compact .menu__item[data-tip]:focus-visible:after,.menu--compact .menu__item[data-tip]:focus-visible:before{visibility:visible;opacity:1}.menu__badge{min-width:20px;height:20px;font-size:var(--fs-xs);border-radius:var(--radius-pill);background:var(--primary);color:var(--on-primary);flex:none;justify-content:center;align-items:center;margin-inline-start:auto;padding:0 7px;font-weight:700;line-height:1;display:inline-flex}.stat{--_c:var(--primary);gap:var(--space-2);padding:var(--space-6);border-radius:var(--radius-lg);color:var(--on-surface);background:var(--surface-1);border:1px solid var(--outline);flex-direction:column;display:flex;position:relative;overflow:hidden}.stat__icon{--_isize:40px;width:var(--_isize);height:var(--_isize);margin-bottom:var(--space-1);border-radius:var(--radius-md);background:color-mix(in srgb, var(--_c) 16%, transparent);color:var(--_c);flex:none;justify-content:center;align-items:center;display:inline-flex}.stat__icon>svg{width:55%;height:55%}.stat__icon--plain{background:0 0;width:auto;height:auto}.stat__icon--plain>svg{width:auto;height:auto}.stat__body{flex-direction:column;gap:2px;display:flex}.stat__value{font-size:var(--fs-xl);font-weight:800;line-height:1.1}.stat__label{font-size:var(--fs-sm);color:var(--on-surface-muted)}.stat__delta{font-size:var(--fs-xs);color:var(--_c);align-items:center;gap:4px;font-weight:700;display:inline-flex}.stat--row{align-items:center;gap:var(--space-4);flex-direction:row}.stat--row .stat__icon{margin-bottom:0}.stat--primary{--_c:var(--primary)}.stat--secondary{--_c:var(--secondary)}.stat--accent{--_c:var(--accent)}.stat--success{--_c:var(--success)}.stat--warning{--_c:var(--warning)}.stat--error{--_c:var(--error)}.stat--info{--_c:var(--info)}.stat--primary,.stat--secondary,.stat--accent,.stat--success,.stat--warning,.stat--error,.stat--info{background-image:linear-gradient(135deg, color-mix(in srgb, var(--_c) 20%, transparent) 0%, transparent 62%)}.stat--primary:before,.stat--secondary:before,.stat--accent:before,.stat--success:before,.stat--warning:before,.stat--error:before,.stat--info:before{content:"";background:var(--_c);height:3px;position:absolute;inset-block-start:0;inset-inline:0}.ring{--val:0;--_size:120px;--_track:10px;--_c1:var(--primary);--_c2:var(--secondary);width:var(--_size);height:var(--_size);place-items:center;display:inline-grid;position:relative}.ring:before{content:"";background:conic-gradient(var(--_c1) 0deg, var(--_c2) calc(var(--val) * 3.6deg), var(--surface-2) calc(var(--val) * 3.6deg + 1.5deg));-webkit-mask:radial-gradient(farthest-side, transparent calc(100% - var(--_track) - .5px), #000 calc(100% - var(--_track) + .5px));-webkit-mask:radial-gradient(farthest-side, transparent calc(100% - var(--_track) - .5px), #000 calc(100% - var(--_track) + .5px));mask:radial-gradient(farthest-side, transparent calc(100% - var(--_track) - .5px), #000 calc(100% - var(--_track) + .5px));border-radius:50%;position:absolute;inset:0}.ring__label{z-index:1;font-size:var(--fs-lg);color:var(--on-surface);font-weight:800;position:relative}.ring--sm{--_size:72px;--_track:7px}.ring--sm .ring__label{font-size:var(--fs-sm)}.ring--lg{--_size:168px;--_track:14px}.ring--lg .ring__label{font-size:var(--fs-xl)}.ring--primary{--_c1:var(--primary);--_c2:var(--primary)}.ring--secondary{--_c1:var(--secondary);--_c2:var(--secondary)}.ring--accent{--_c1:var(--accent);--_c2:var(--accent)}.ring--success{--_c1:var(--success);--_c2:var(--success)}.ring--warning{--_c1:var(--warning);--_c2:var(--warning)}.ring--error{--_c1:var(--error);--_c2:var(--error)}.ring--info{--_c1:var(--info);--_c2:var(--info)}.timeline{--_c:var(--primary);--_rail:20px;--_dot:11px;gap:var(--space-4);padding:0;flex-direction:column;margin:0;padding-inline-start:var(--_rail);list-style:none;display:flex;position:relative}.timeline:before{content:"";background:var(--outline);width:2px;position:absolute;inset-block:6px;inset-inline-start:0}.timeline__item{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-2);flex-direction:column;gap:2px;transition:transform .15s;display:flex;position:relative}.timeline__item:before{content:"";width:var(--_dot);height:var(--_dot);background:var(--_c);box-shadow:0 0 0 3px var(--surface);border-radius:50%;position:absolute;inset-block-start:var(--space-4);inset-inline-start:calc(-1 * var(--_rail) + 1px);transform:translate(-50%)}.timeline__item:hover{transform:translate(2px)}.timeline__item.timeline__item--now{--_c:var(--primary);--_c2:var(--primary-2,var(--secondary))}.timeline__item.timeline__item--now:before{box-shadow:0 0 0 3px var(--surface), 0 0 0 6px color-mix(in srgb, var(--_c) 40%, transparent)}.timeline__item.timeline__item--now .timeline__count{background:linear-gradient(135deg, var(--_c) 0%, var(--_c2) 100%);color:var(--on-gradient,#fff)}.timeline__item.timeline__item--muted{--_c:var(--on-surface-muted)}.timeline__item.timeline__item--muted .timeline__title{font-weight:600}.timeline__time{font-size:var(--fs-xs);color:var(--on-surface-muted);font-weight:700}.timeline__body{flex-direction:column;gap:2px;display:flex}.timeline__title{font-size:var(--fs-md);color:var(--on-surface);font-weight:700}.timeline__sub{font-size:var(--fs-sm);color:var(--on-surface-muted)}.timeline__count{font-size:var(--fs-xs);border-radius:var(--radius-pill);background:color-mix(in srgb, var(--on-surface) 10%, transparent);color:var(--on-surface);align-self:flex-start;margin-block-start:var(--space-1);padding:3px 10px;font-weight:700;line-height:1.5}.timeline--row .timeline__item{align-items:center;gap:var(--space-4);flex-direction:row}.timeline--row .timeline__item:before{inset-block-start:50%;transform:translate(-50%,-50%)}.timeline--row .timeline__time{flex:none;min-width:76px}.timeline--row .timeline__body{flex:1}.timeline--row .timeline__count{align-self:center;margin-block-start:0}}@layer a11y{@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto;transition-duration:1ms;animation-duration:1ms;animation-iteration-count:1}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}}:root{--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-pill:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--font:"Plus Jakarta Sans", system-ui, sans-serif;--fs-xs:12px;--fs-sm:13px;--fs-md:14px;--fs-lg:16px;--fs-xl:20px;--blur:20px;--gradient:linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);--gradient-tint:#ffd23f;--z-dropdown:1000;--z-sticky:1020;--z-modal:1050;--z-toast:1080}:root,[data-theme=aura-dark]{--primary:#00bd7d;--on-primary:#0f1a14;--primary-container:#00bd7d29;--on-primary-container:#00bd7d;--secondary:#3b82f6;--on-secondary:#fff;--secondary-container:#3b82f629;--on-secondary-container:#3b82f6;--accent:#12e0c0;--on-accent:#0f1a14;--accent-container:#12e0c029;--on-accent-container:#12e0c0;--success:#16a34a;--on-success:#fff;--success-container:#16a34a29;--on-success-container:#16a34a;--warning:#e0913a;--on-warning:#0f1a14;--warning-container:#e0913a29;--on-warning-container:#e0913a;--error:#ea4b5e;--on-error:#fff;--error-container:#ea4b5e29;--on-error-container:#ea4b5e;--info:#3b82f6;--on-info:#fff;--info-container:#3b82f629;--on-info-container:#3b82f6;--surface:#0e1526;--surface-1:#141d33;--surface-2:#1b2540;--on-surface:#e7ecf5;--on-surface-muted:#e7ecf59e;--outline:#ffffff24;--outline-strong:#ffffff3d;--glass-film:#ffffff0f;--glass-film-2:#ffffff1a;--tip-bg:#eef4faf5;--tip-text:#0e1526;--shadow-1:0 8px 32px #0006;--shadow-2:0 16px 44px #00000080}[data-theme=aura-light]{--primary:#00a86b;--on-primary:#fff;--primary-container:#00a86b29;--on-primary-container:#00a86b;--secondary:#2563eb;--on-secondary:#fff;--secondary-container:#2563eb29;--on-secondary-container:#2563eb;--accent:#0fb89b;--on-accent:#0f1a14;--accent-container:#0fb89b29;--on-accent-container:#0fb89b;--success:#16a34a;--on-success:#fff;--success-container:#16a34a29;--on-success-container:#16a34a;--warning:#d97706;--on-warning:#fff;--warning-container:#d9770629;--on-warning-container:#d97706;--error:#dc2626;--on-error:#fff;--error-container:#dc262629;--on-error-container:#dc2626;--info:#2563eb;--on-info:#fff;--info-container:#2563eb29;--on-info-container:#2563eb;--surface:#eef3f2;--surface-1:#fff;--surface-2:#f5faf8;--on-surface:#10231b;--on-surface-muted:#10231b9e;--outline:#0c463229;--outline-strong:#0c46324d;--glass-film:#ffffff8c;--glass-film-2:#ffffffb3;--tip-bg:#101828f2;--tip-text:#eef4fa;--shadow-1:0 10px 30px #0a5a3c24;--shadow-2:0 16px 40px #0a5a3c2e}:root{--font:"Noto Sans",Helvetica,system-ui,sans-serif;--radius-sm:6px;--radius-md:10px;--radius-lg:14px}[data-theme=lingoloop]{--primary:#8dd3bb;--on-primary:#123528;--primary-container:#ecf8f3;--on-primary-container:#2a8f6d;--on-gradient:var(--on-primary);--secondary:#9ec5e8;--on-secondary:#0f2436;--secondary-container:#eef5fb;--on-secondary-container:#3b74a8;--accent:#c5b4e3;--on-accent:#2c2145;--accent-container:#f5f1fa;--on-accent-container:#7a5fae;--success:#33a074;--on-success:#fff;--success-container:#ecf8f3;--on-success-container:#2a8f6d;--warning:#c47a4a;--on-warning:#fff;--warning-container:#fdf3ea;--on-warning-container:#c47a4a;--error:#e55353;--on-error:#fff;--error-container:#fdecec;--on-error-container:#c0392b;--info:#3b74a8;--on-info:#fff;--info-container:#eef5fb;--on-info-container:#3b74a8;--surface:#f8f9fc;--surface-1:#fff;--surface-2:#f1f3f8;--on-surface:#1e2330;--on-surface-muted:#5c6478;--outline:#e4e7ef;--outline-strong:#d1d5e3;--glass-film:#ffffff8c;--glass-film-2:#ffffffb3;--tip-bg:#1e2330f2;--tip-text:#f8f9fc;--shadow-1:0 2px 20px #1e23300f;--shadow-2:0 8px 30px #1e23301a;--ll-mint:#8dd3bb;--ll-mint-soft:#ecf8f3;--ll-peach:#f5c6a5;--ll-peach-soft:#fdf3ea;--ll-lavender:#c5b4e3;--ll-lavender-soft:#f5f1fa;--ll-sky:#9ec5e8;--ll-sky-soft:#eef5fb;--ll-ink-mint:#2a8f6d;--ll-ink-peach:#c47a4a;--ll-ink-lav:#7a5fae;--ll-ink-sky:#3b74a8;--ll-good:#2a8f6d;--ll-warn:#c47a4a;--ll-muted:#8b92a5;--ll-chart-1:#2a8f6d;--ll-chart-2:#7a5fae;--ll-icon-shadow:drop-shadow(0 8px 14px #1e233033)}[data-theme=lingoloop-dark]{--primary:#8dd3bb;--on-primary:#0e2019;--icon-accent-opacity:.5;--primary-container:#8dd3bb29;--on-primary-container:#8dd3bb;--on-gradient:var(--on-primary);--secondary:#9ec5e8;--on-secondary:#0d1c2a;--secondary-container:#9ec5e829;--on-secondary-container:#9ec5e8;--accent:#c5b4e3;--on-accent:#1f1733;--accent-container:#c5b4e329;--on-accent-container:#c5b4e3;--success:#6ec4a0;--on-success:#0e2019;--success-container:#8dd3bb29;--on-success-container:#8dd3bb;--warning:#f5c6a5;--on-warning:#3a2515;--warning-container:#f5c6a529;--on-warning-container:#f5c6a5;--error:#e57373;--on-error:#fff;--error-container:#e5737329;--on-error-container:#e57373;--info:#9ec5e8;--on-info:#0d1c2a;--info-container:#9ec5e829;--on-info-container:#9ec5e8;--surface:#1a1f2e;--surface-1:#232a3b;--surface-2:#2c3548;--on-surface:#f0f2f7;--on-surface-muted:#9ba3b8;--outline:#374151;--outline-strong:#4b5563;--glass-film:#ffffff0f;--glass-film-2:#ffffff1a;--tip-bg:#f0f2f7f5;--tip-text:#1a1f2e;--shadow-1:0 2px 20px #00000040;--shadow-2:0 8px 30px #00000059;--ll-mint:#8dd3bb;--ll-mint-soft:#8dd3bb26;--ll-peach:#f5c6a5;--ll-peach-soft:#f5c6a526;--ll-lavender:#c5b4e3;--ll-lavender-soft:#c5b4e326;--ll-sky:#9ec5e8;--ll-sky-soft:#9ec5e826;--ll-ink-mint:#8dd3bb;--ll-ink-peach:#f5c6a5;--ll-ink-lav:#c5b4e3;--ll-ink-sky:#9ec5e8;--ll-good:#8dd3bb;--ll-warn:#f5c6a5;--ll-muted:#6b7280;--ll-chart-1:#30a47b;--ll-chart-2:#9373e0;--ll-icon-shadow:drop-shadow(0 8px 14px #00000073)}[data-accent=green]{--primary:#b5d8a2;--secondary:#8dd3bb;--ll-mint:#b5d8a2;--ll-ink-mint:#4f8a3d}[data-accent=green][data-theme=lingoloop]{--on-primary:#233c16;--on-secondary:#123528}[data-accent=green][data-theme=lingoloop-dark]{--on-primary:#16240d;--on-secondary:#0e2019}.btn.btn--brand{background:var(--gradient);color:#fff;box-shadow:var(--shadow-1);border:0}.btn.btn--brand:hover{filter:brightness(1.05);transform:translateY(-2px)}.btn.btn--brand:active{transform:translateY(0)}.card{box-shadow:var(--shadow-1);gap:0;padding:0;overflow:hidden}.card__header{border-bottom:1px solid var(--outline);padding:18px 24px}.card__title{font-size:16.5px;font-weight:600}.card__body{padding:18px 24px 22px}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font,system-ui, sans-serif);color:var(--on-surface);background:var(--surface);margin:0;line-height:1.5;transition:background-color .3s,color .3s}body:before{content:"";pointer-events:none;z-index:-1;opacity:.6;background-image:radial-gradient(circle at 20% 20%, var(--ll-mint-soft) 0%, transparent 50%), radial-gradient(circle at 80% 80%, var(--ll-peach-soft) 0%, transparent 50%), radial-gradient(circle at 60% 30%, var(--ll-lavender-soft) 0%, transparent 40%);position:fixed;inset:0}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.auth-card,.reading-card,.lookup__results,.reading-popover{padding:var(--space-6,1.5rem);gap:var(--space-4,1rem);overflow:visible}.auth-card .card__header,.reading-card .card__header{border-bottom:0;padding:0}.auth-card .card__body,.reading-card .card__body{padding:0}.app-center{place-items:center;min-height:100%;display:grid}.auth-shell{min-height:100%;padding:var(--space-6,1.5rem);place-items:center;display:grid}.auth-card{width:100%;max-width:26rem}.auth-form{gap:var(--space-4,1rem);margin-top:var(--space-2,.5rem);flex-direction:column;display:flex}.auth-alt{margin:var(--space-4,1rem) 0 0;text-align:center;color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem)}.auth-alt a{color:var(--ll-good);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-underline-offset:3px;border-radius:4px;margin:-2px -4px;padding:2px 4px;font-weight:600;text-decoration-thickness:1.5px;transition:text-decoration-color .2s,color .2s}.auth-forgot{font-size:var(--fs-sm,.9rem);color:var(--on-surface-muted);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-underline-offset:3px;align-self:flex-end}.auth-forgot:hover{color:var(--on-surface)}.auth-alt a:hover{text-decoration-color:currentColor}.auth-alt a:focus-visible{outline:2px solid var(--primary);outline-offset:2px}[data-theme=lingoloop] .auth-alt a{color:color-mix(in srgb, var(--ll-good) 78%, #000)}.lookup{position:relative}.lookup__results{top:100%;z-index:20;margin-top:var(--space-2,.5rem);max-height:24rem;position:absolute;inset-inline:0;overflow-y:auto}.lookup__status{align-items:center;gap:var(--space-2,.5rem);color:var(--on-surface-muted);display:flex}.lookup-group{padding:var(--space-3,.75rem) 0}.lookup__results>.lookup-group:first-child,.reading-popover>.lookup-group:first-child{padding-block-start:0}.lookup__results>.lookup-group:last-child,.reading-popover>.lookup-group:last-child{padding-block-end:0}.lookup-group+.lookup-group{border-top:1px solid var(--outline,var(--border))}.lookup-group__head{align-items:baseline;gap:var(--space-2,.5rem);flex-wrap:wrap;display:flex}.lookup-group__match,.lookup-group__forms{color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem)}.lookup-group__options{margin-top:var(--space-2,.5rem);flex-direction:column;gap:2px;display:flex}.lookup-option{justify-content:space-between;align-items:center;gap:var(--space-2,.5rem);width:100%;padding:var(--space-2,.5rem) var(--space-3,.75rem);border-radius:var(--radius-sm,.5rem);color:var(--on-surface);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;display:flex}.lookup-option:hover:not(:disabled){background:color-mix(in oklab, var(--primary) 12%, transparent)}.lookup-option:disabled{opacity:.6;cursor:default}.lookup-option-row{align-items:center;gap:2px;display:flex}.lookup-option-row .lookup-option{flex:1;min-width:0}.lookup-option__set{border-radius:var(--radius-sm,.5rem);width:32px;height:32px;color:var(--on-surface-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.lookup-option__set:hover:not(:disabled){background:color-mix(in oklab, var(--primary) 12%, transparent);color:var(--on-surface)}.lookup-option__set svg{width:16px;height:16px}.lookup-option--muted{color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem)}.lookup__custom{gap:var(--space-2,.5rem);padding:var(--space-2,.5rem) var(--space-3,.75rem);display:flex}.lookup__custom .input{flex:1}.lookup__results.card{background:var(--surface)}.lookup-option__sense{margin-left:var(--space-2,.5rem);color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem)}.lookup-option__sense:before{content:"· "}.lookup-option__add{color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem)}.lookup-explain{gap:var(--space-1,.25rem);flex-direction:column;display:flex}.lookup-explain__meaning{font-size:var(--fs-sm,.9rem)}.lookup-explain__text{margin:var(--space-1,.25rem) 0 var(--space-2,.5rem);color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem);line-height:1.45}.lookup-explain__button{color:var(--ll-good);font-weight:600}.lookup-explain__error{color:var(--error);font-size:var(--fs-sm,.9rem)}.lookup__possessive{align-items:center;gap:var(--space-2,.5rem);padding-top:var(--space-3,.75rem);display:flex}.texts-form{gap:var(--space-4,1rem);flex-direction:column;display:flex}.texts-table__title{color:var(--on-surface);font-weight:600;text-decoration:none}.texts-table__title:hover{text-decoration:underline}.reading-card{gap:var(--space-4,1rem);flex-direction:column;width:100%;min-width:0;display:flex;position:relative}.reading-actions{align-items:center;gap:var(--space-2,.5rem);display:flex}.reading-text{white-space:pre-wrap;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;font-size:1.05rem;line-height:1.9}.reading-word{cursor:pointer;border-radius:var(--radius-sm,.5rem);padding:0 1px}.reading-word:hover{background:color-mix(in oklab, var(--primary) 18%, transparent)}.reading-word--active{background:color-mix(in oklab, var(--primary) 28%, transparent)}.reading-popover{z-index:30;border-radius:var(--radius-sm);background:var(--surface);width:24rem;max-width:calc(100% - 1rem);max-height:22rem;position:absolute;overflow-y:auto}.reading-phrase{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;-webkit-text-decoration-color:color-mix(in oklab, var(--accent) 65%, transparent);text-decoration-color:color-mix(in oklab, var(--accent) 65%, transparent);text-underline-offset:.25em}.reading-phrase--mine{background:color-mix(in oklab, var(--secondary) 16%, transparent);text-decoration-style:solid;-webkit-text-decoration-color:color-mix(in oklab, var(--secondary) 70%, transparent);text-decoration-color:color-mix(in oklab, var(--secondary) 70%, transparent)}.reading-phrase--hover,.reading-phrase--active{background:color-mix(in oklab, var(--accent) 22%, transparent);text-decoration-style:solid}.reading-detection{align-items:center;gap:var(--space-2,.5rem);color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem);display:flex}.reading-toolbar{justify-content:flex-end;align-items:center;gap:var(--space-2,.5rem);flex-wrap:wrap;display:flex}.reading-listen{white-space:nowrap;margin-right:auto}.text-player{bottom:var(--space-3,.75rem);z-index:20;align-items:center;gap:var(--space-2,.5rem);border:1px solid var(--outline);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-2);padding:6px 8px;display:flex;position:sticky}.text-player__controls{align-items:center;gap:2px;display:flex}.text-player__step{justify-content:center;width:32px;min-width:32px;padding:0}.text-player__main{background:var(--primary);width:36px;min-width:36px;height:36px;color:var(--on-primary);border-radius:50%;justify-content:center;padding:0}.text-player__main .spinner{margin:0}.text-player__track{flex:1;align-items:center;gap:3px;min-width:0;display:flex}.text-player__mark{background:var(--outline);cursor:pointer;background-clip:content-box;border:0;border-radius:4px;flex-basis:0;min-width:3px;height:28px;padding:10px 0;position:relative}.text-player__mark:hover{background-color:color-mix(in oklab, var(--primary) 35%, var(--outline))}.text-player__mark--done{background-color:color-mix(in oklab, var(--primary) 55%, transparent)}.text-player__mark--current{background-color:color-mix(in oklab, var(--primary) 22%, var(--outline))}.text-player__fill{background:var(--primary);border-radius:4px;position:absolute;top:10px;bottom:10px;left:0}.text-player__mark:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.text-player__count{text-align:center;min-width:4.5em;color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem);font-variant-numeric:tabular-nums;white-space:nowrap}.text-player__rates{border:1px solid var(--outline);border-radius:var(--radius-sm);padding:2px;display:flex}.text-player__rate{border-radius:calc(var(--radius-sm) - 2px);min-height:28px;color:var(--on-surface-muted);font:inherit;font-size:var(--fs-sm,.9rem);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;padding:0 8px;font-weight:600}.text-player__rate[aria-pressed=true]{background:var(--primary-container);color:var(--on-primary-container)}.text-player__close{justify-content:center;width:32px;min-width:32px;padding:0}@media (width<=720px){.text-player{left:max(16px, env(safe-area-inset-left,0px));right:max(16px, env(safe-area-inset-right,0px));bottom:calc(84px + env(safe-area-inset-bottom,0px));flex-wrap:wrap;position:fixed}.reading-card--player{padding-bottom:140px}.text-player__track{flex-basis:100%;order:-1}.text-player__count{margin-right:auto}}@media (pointer:coarse){.text-player__step,.text-player__close,.text-player__main{width:44px;min-width:44px;height:44px}.text-player__rate{min-height:40px}}.reading-modes{gap:var(--space-2,.5rem);display:flex}.reading-text--sentences,.reading-columns{gap:var(--space-2,.5rem);white-space:normal;flex-direction:column;display:flex}.reading-columns__row{gap:var(--space-4,1rem);padding-bottom:var(--space-2,.5rem);border-bottom:1px solid color-mix(in oklab, var(--outline,currentColor) 35%, transparent);grid-template-columns:1fr 1fr;display:grid}.reading-columns__translation{color:var(--on-surface-muted)}.reading-columns__missing{opacity:.4}.reading-word--known{background:color-mix(in oklab, var(--secondary) 16%, transparent);border-radius:var(--radius-sm,.5rem)}.reading-word--selected,.reading-gap--selected{background:color-mix(in oklab, var(--primary) 28%, transparent)}.reading-word--selected{border-radius:0}.reading-selection-chip{z-index:25;gap:var(--space-1,.25rem);max-width:calc(100% - 1rem);display:flex;position:absolute}.reading-selection-chip__lookup{text-align:left;white-space:nowrap;text-overflow:ellipsis;min-width:0;max-width:24rem;display:block;overflow:hidden}.reading-selection-chip__hint{border-radius:var(--radius-pill);background:var(--surface-2);color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem);white-space:nowrap;align-self:center;padding:2px 10px}.reading-selection-chip .btn--ghost{background:var(--surface);white-space:nowrap;flex-shrink:0}.reading-panel__item--mine{background:color-mix(in oklab, var(--secondary) 14%, transparent);border-radius:var(--radius-sm,.5rem);padding:0 var(--space-2,.5rem)}.reading-panel__list{gap:var(--space-2,.5rem);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.reading-panel__list li{align-items:baseline;gap:var(--space-2,.5rem);display:flex}.reading-panel__translation{color:var(--on-surface-muted)}.training-topbar{justify-content:space-between;align-items:center;display:flex}.training-progress{color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem)}.training-face{text-align:center;justify-content:center;align-items:center;gap:var(--space-3,.75rem);min-height:16rem;padding:var(--space-6,1.5rem) var(--space-4,1rem);flex-direction:column;display:flex}.training-face__prompt{overflow-wrap:anywhere;font-size:2.25rem;font-weight:600;line-height:1.2}.training-face__pron{color:var(--on-surface-muted)}.training-face__tags{gap:var(--space-2,.5rem);flex-wrap:wrap;justify-content:center;display:flex}.training-face__answer{margin-top:var(--space-3,.75rem);padding-top:var(--space-4,1rem);border-top:1px solid var(--outline,#8080804d);gap:var(--space-2,.5rem);flex-direction:column;width:100%;display:flex}.training-face__translation{overflow-wrap:anywhere;font-size:1.5rem;font-weight:500}.training-face__context{color:var(--on-surface-muted);font-style:italic}.training-grades{gap:var(--space-2,.5rem);flex-wrap:wrap;justify-content:center;display:flex}kbd{border:1px solid var(--outline-strong,#80808059);background:var(--surface-2,#8080801f);opacity:.9;border-bottom-width:2px;border-radius:.35em;padding:.1em .45em;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.72em;line-height:1.4;display:inline-block}.btn kbd{background:color-mix(in srgb, currentColor 18%, transparent);border-color:color-mix(in srgb, currentColor 40%, transparent);opacity:1}.btn .badge{color:#fff;background:#090e238c;border-color:#0000;font-weight:600}.training-choices{gap:var(--space-2,.5rem);flex-direction:column;display:flex}.training-typing{gap:var(--space-2,.5rem);display:flex}.training-typing .input{flex:1}.training-choices .btn{text-align:left;justify-content:flex-start}.training-hint{color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem);text-align:center;margin:0}.reading-sentence-actions{z-index:26;position:absolute}.reading-sentence-handle{border-radius:var(--radius-sm);background:var(--surface);width:20px;height:22px;color:var(--on-surface-muted);cursor:pointer;border:none;place-items:center;padding:0;transition:background-color .15s,color .15s;display:grid}.reading-sentence-handle:hover,.reading-sentence-actions[data-state=open] .reading-sentence-handle{background:var(--surface-2);color:var(--on-surface)}.reading-sentence-handle--mine{color:var(--secondary)}.reading-sentence-actions--speak{align-items:center;gap:2px;display:flex}.reading-sentence-actions .speak-btn.reading-sentence-speak{border-radius:var(--radius-sm);background:var(--surface);width:22px;min-width:22px;height:22px;min-height:22px}.reading-sentence-actions .speak-btn.reading-sentence-speak svg{width:15px;height:15px}.reading-sentence-actions .speak-btn.reading-sentence-speak:hover{background:var(--surface-2)}.reading-sentence-actions .speak-btn.reading-sentence-speak.is-playing,.reading-sentence-actions .speak-btn.reading-sentence-speak.is-loading{background:var(--primary-container)}.reading-text-block--sentence-speak{padding-left:24px}.reading-sentence-menu{background:var(--surface);min-width:13rem;box-shadow:var(--shadow-2)}.reading-sentence-menu .dropdown__item:disabled{color:var(--on-surface-muted);cursor:default}.reading-sentence-menu .dropdown__item:disabled:hover{background:0 0}.reading-sentence-panel{flex-direction:column;gap:0;padding:0;display:flex;overflow:hidden}.reading-sentence-panel__head{justify-content:space-between;align-items:center;gap:var(--space-2,.5rem);border-bottom:1px solid var(--outline);flex:none;padding:6px 8px 6px 16px;display:flex}.reading-sentence-panel__body{gap:var(--space-2,.5rem);flex-direction:column;flex:1;min-height:0;padding:12px 16px 14px;display:flex;overflow-y:auto}.reading-sentence-panel__body .lookup-explain__text{margin:0}.reading-sentence-panel__label{letter-spacing:1.2px;text-transform:uppercase;color:var(--ll-muted,var(--on-surface-muted));font-size:12px;font-weight:600}.reading-sentence-panel__translation{font-size:15px;line-height:1.45}.reading-sentence-panel__muted{color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem)}.reading-sentence-panel__actions{justify-content:flex-end;display:flex}.reading-sentence,.reading-columns__row{position:relative}.reading-sentence--mine:before{content:"";background:color-mix(in oklab, var(--secondary) 70%, transparent);border-radius:2px;width:3px;position:absolute;top:.3em;bottom:.3em;left:-14px}.reading-columns__row.reading-sentence--mine:before{bottom:calc(.3em + var(--space-2,.5rem))}.reading-text-block{position:relative}.reading-word--sentence,.reading-gap--sentence{background:color-mix(in oklab, var(--primary) 18%, transparent)}.reading-word--sentence{border-radius:0}.lookup-group__report{align-self:flex-start;margin-top:4px}.learn-status{flex-direction:column;align-items:flex-start;gap:4px;min-width:84px;display:inline-flex}.learn-status__line{align-items:center;gap:6px;width:100%;display:flex}.learn-status__bar{flex:1;min-width:48px;max-width:96px;height:6px}.learn-status__value,.learn-status__recall{font-size:var(--fs-xs,12px);color:var(--on-surface-muted);font-variant-numeric:tabular-nums;white-space:nowrap;line-height:1.2}a{text-decoration:none}.app{--ll-acc-soft:color-mix(in srgb,var(--primary) 16%,var(--surface-1));grid-template-columns:auto 1fr;min-height:100vh;display:grid}.sidebar{background:var(--surface-1);border-right:1px solid var(--outline);flex-direction:column;width:274px;height:100dvh;padding:20px 20px 18px;transition:background-color .3s,border-color .3s;display:flex;position:sticky;top:0;overflow:visible}.logo{flex-shrink:0;align-items:center;gap:10px;margin-bottom:20px;padding:0 8px;display:flex}.logo-icon{background:var(--gradient);border-radius:var(--radius-md);width:38px;height:38px;box-shadow:var(--shadow-1);color:#fff;flex-shrink:0;justify-content:center;align-items:center;display:flex}.logo-icon svg{width:22px;height:22px}.logo-text{white-space:nowrap;font-size:21px;font-weight:600}.sidebar>.menu{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--outline-strong) transparent;flex:auto;min-height:0;margin:0 -12px;padding:2px 12px 6px;overflow-y:auto}.sidebar-footer{flex-shrink:0}.app--compact .sidebar>.menu{scrollbar-width:none;margin:0 -10px;padding:2px 10px 6px}.app--compact .sidebar>.menu .menu__item[data-tip]:after,.app--compact .sidebar>.menu .menu__item[data-tip]:before{display:none}.side-tip{white-space:nowrap;background:var(--tip-bg);color:var(--tip-text);font-size:var(--fs-xs);border-radius:var(--radius-sm);z-index:var(--z-dropdown,1000);pointer-events:none;padding:6px 10px;font-weight:600;position:fixed;transform:translateY(-50%);box-shadow:0 6px 20px #00000040}.side-tip:before{content:"";border:5px solid #0000;border-right-color:var(--tip-bg);position:absolute;top:50%;right:100%;transform:translateY(-50%)}.side-toggle{border:1px solid var(--outline);background:var(--surface-1);width:26px;height:26px;color:var(--on-surface-muted);box-shadow:var(--shadow-1);cursor:pointer;z-index:20;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .2s,border-color .2s;display:flex;position:absolute;top:26px;right:-13px}.side-toggle:hover{color:var(--on-surface);border-color:var(--outline-strong)}.side-toggle svg{width:14px;height:14px;transition:transform .25s}.app--compact .side-toggle svg{transform:rotate(180deg)}.app--compact .sidebar{padding:20px 14px 18px}.app--compact .logo{justify-content:center;margin-bottom:20px;padding:0}.app--compact .logo-icon{width:38px;height:38px}.app--compact .logo-text{display:none}.app--compact .sidebar-footer{align-items:center;gap:10px}.app--compact .seg-theme{display:none}.app--compact .sidebar-user{background:0 0;padding:0}.app--compact .sidebar-user>div:last-child{display:none}.app--compact .user-avatar{width:38px;height:38px;font-size:14px}.app--compact .btn-logout{padding-inline:0}.app--compact .btn-logout .btn-label{display:none}.menu__item--disabled{opacity:.45;cursor:default}.menu__item--disabled:hover{background:0 0}.theme-toggle{border-radius:var(--radius-md);background:var(--surface-2);width:40px;height:40px;color:var(--on-surface-muted);cursor:pointer;border:0;justify-content:center;align-items:center;padding:0;transition:background .2s,color .2s;display:flex}.theme-toggle:hover{background:color-mix(in srgb,var(--primary) 16%,var(--surface-1));color:var(--on-surface)}.theme-toggle svg{width:20px;height:20px}.theme-toggle .icon-sun,[data-theme=lingoloop-dark] .theme-toggle .icon-moon{display:none}[data-theme=lingoloop-dark] .theme-toggle .icon-sun{display:block}.theme-toggle--rail{display:none}.app--compact .theme-toggle--rail{display:flex}.sidebar-footer{border-top:1px solid var(--outline);flex-direction:column;gap:10px;margin-top:auto;padding-top:12px;display:flex}.seg-theme{display:flex}.seg-theme .segmented{width:100%}.seg-theme .segmented__option{flex:1}.seg-theme .segmented__option span{justify-content:center;align-items:center;gap:7px;padding:9px 6px;display:flex}.seg-theme svg{width:15px;height:15px}.sidebar-user{background:var(--surface-2);border-radius:var(--radius-md);align-items:center;gap:12px;padding:9px 12px;display:flex}.user-avatar{background:linear-gradient(135deg,var(--ll-lavender) 0%,var(--ll-peach) 100%);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:16px;font-weight:600;display:flex}.user-name{font-size:14px;font-weight:600}.user-level{color:var(--ll-muted);font-size:12px}a.sidebar-user,a.more-header{color:inherit;text-decoration:none;transition:background-color .2s}a.sidebar-user:hover,a.sidebar-user.active{background:color-mix(in srgb,var(--primary) 14%,var(--surface-2))}a.more-header:hover,a.more-header.active{background:var(--surface-2)}a.sidebar-user:focus-visible,a.more-header:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.ai-budget{flex-direction:column;gap:6px;padding:0 4px;display:flex}.ai-budget__head{color:var(--ll-muted);justify-content:space-between;gap:8px;font-size:12px;display:flex}.ai-budget__value{color:var(--on-surface);font-weight:600}.app--compact .ai-budget{display:none}.more-sheet .ai-budget{padding:4px 4px 12px}.main{min-width:0;padding:36px 44px}.mobile-header{background:var(--surface-1);border-bottom:1px solid var(--outline);z-index:50;justify-content:space-between;align-items:center;padding:14px 16px;transition:background-color .3s,border-color .3s;display:none;position:sticky;top:0}.mobile-header .logo{margin:0;padding:0}.mobile-header .logo-icon{border-radius:var(--radius-sm);width:36px;height:36px}.mobile-header .logo-icon svg{width:20px;height:20px}.mobile-header .logo-text{font-size:19px}.bottom-nav{padding:8px 0;padding-bottom:max(8px,env(safe-area-inset-bottom));background:var(--surface-1);border-top:1px solid var(--outline);z-index:100;justify-content:space-around;transition:background-color .3s,border-color .3s;display:none;position:fixed;bottom:0;left:0;right:0}.bottom-nav-item{border-radius:var(--radius-md);color:var(--ll-muted);cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;padding:8px 16px;font-family:inherit;font-size:11px;font-weight:500;text-decoration:none;transition:color .2s;display:flex;position:relative}.bottom-nav-item svg{width:24px;height:24px}.bottom-nav--dense .bottom-nav-item{white-space:nowrap;flex:1 1 0;min-width:0;padding:8px 2px}.menu__item:not(.menu__item--active) svg,.bottom-nav-item:not(.active) svg,.btn svg,.side-toggle svg{--icon-accent-opacity:0}.menu__item--active svg,.logo-icon svg{--icon-accent:currentColor;--icon-accent-opacity:.3}.bottom-nav-item.active{color:var(--on-primary-container)}.bottom-nav-item.active:before{content:"";background:var(--primary);border-radius:0 0 3px 3px;width:24px;height:3px;position:absolute;top:0;left:50%;transform:translate(-50%)}.nav-badge{background:var(--ll-peach);color:#1e2330;border-radius:var(--radius-pill);text-align:center;min-width:20px;padding:2px 8px;font-size:11px;font-weight:600}.bottom-nav-item .nav-badge{min-width:18px;margin:0;padding:2px 6px;font-size:10px;position:absolute;top:4px;right:8px}.more-overlay{z-index:200;background:#040a1480;position:fixed;inset:0}.more-sheet{background:var(--surface-1);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:8px 16px;padding-bottom:max(20px,env(safe-area-inset-bottom));z-index:201;max-height:86dvh;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}.more-handle{background:var(--outline-strong);border-radius:2px;width:36px;height:4px;margin:8px auto 14px}.more-header{border-bottom:1px solid var(--outline);align-items:center;gap:12px;margin-bottom:8px;padding:12px 16px;display:flex}.more-header .user-avatar{width:48px;height:48px;font-size:18px}.more-set{justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.more-set .swatch{width:26px;height:26px}.more-set-group{align-items:center;gap:10px;display:flex}.more-logout{border-top:1px solid var(--outline);margin-top:8px;padding-top:14px}.picker{z-index:60;border-radius:var(--radius-pill);background:var(--surface-1);border:1px solid var(--outline);box-shadow:var(--shadow-2);align-items:center;gap:9px;padding:11px 15px;display:flex;position:fixed;bottom:16px;right:16px}.picker__label{letter-spacing:1px;text-transform:uppercase;color:var(--ll-muted);font-size:10.5px;font-weight:600}.swatch{background:linear-gradient(135deg,var(--s1),var(--s2));cursor:pointer;border:2px solid #0000;border-radius:50%;width:21px;height:21px;padding:0;transition:transform .15s}.swatch:hover{transform:scale(1.2)}.swatch.active{border-color:var(--on-surface)}@media (width<=1080px){.main{padding:28px 26px}}@media (width<=720px){.app,.app.app--compact{grid-template-columns:1fr}.sidebar{display:none}.mobile-header,.bottom-nav{display:flex}.main{padding:18px 16px 96px}.picker{display:none}}.back-link{color:var(--on-surface-muted);align-items:center;gap:6px;font-size:14px;font-weight:500;transition:color .2s;display:inline-flex}.back-link:hover{color:var(--ll-good)}.back-link svg{width:16px;height:16px}button svg [data-spot],.btn svg [data-spot],.badge svg [data-spot],.back-link svg [data-spot],.wset__taken svg [data-spot],.wset-own svg [data-spot],.reading-head__read svg [data-spot],.gloss-row svg [data-spot],.tset-banner svg [data-spot],.vocab-bulk svg [data-spot],.addset svg [data-spot],.sets-pop svg [data-spot]{display:none}.bigicon svg [data-spot]{display:inline}.logo-tag{background:var(--primary-container);color:var(--on-primary-container);vertical-align:middle;letter-spacing:.02em;border-radius:999px;margin-left:6px;padding:1px 6px;font-size:11px;font-weight:600}.ico-inline{vertical-align:-.22em;flex-shrink:0;width:1.15em;height:1.15em}.ico-inline [data-spot]{display:none}:where(a,button,summary):has(>.ico-inline){align-items:center;gap:.35em;display:inline-flex}[aria-expanded=true]>.ico-inline--toggle{transform:rotate(180deg)}.ico-inline--toggle{transition:transform .15s ease-out}@media (prefers-reduced-motion:reduce){.ico-inline--toggle{transition:none}}.admin-page{flex-direction:column;gap:20px;min-width:0;display:flex}.admin-page .greeting{margin-bottom:0}.admin-muted{color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem)}.admin-page a:not([class]){color:var(--on-primary-container);text-decoration:none}.admin-page a:not([class]):hover{text-decoration:underline}.admin-page a:not([class]):focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:2px}.admin-back{color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem);align-self:flex-start;align-items:center;gap:6px;min-height:44px;padding:10px 0;text-decoration:none;display:inline-flex}.admin-back:hover{color:var(--on-surface)}.admin-filters{grid-template-columns:minmax(220px,2fr) repeat(3,minmax(150px,1fr)) auto;align-items:end;gap:12px;margin-bottom:16px;display:grid}.admin-filters .field{margin:0}.admin-filters .tag-picker{grid-column:span 2}@media (width<=520px){.admin-filters .tag-picker{grid-column:auto}}.admin-filters__reset{min-height:44px}@media (width<=1100px){.admin-filters{grid-template-columns:1fr 1fr}.admin-filters__search{grid-column:1/-1}}@media (width<=520px){.admin-filters{grid-template-columns:1fr}}.segmented__option>span{justify-content:center;align-items:center;gap:6px;display:inline-flex}:where(.segmented__option>span) span{color:inherit;min-height:0;padding:0}.admin-table-wrap{overflow-x:auto;container-type:inline-size}.admin-table{width:100%}.admin-table th,.admin-table td{vertical-align:top}.admin-table th{vertical-align:middle}.admin-table th:has(.admin-sort){white-space:nowrap}.admin-table .is-numeric{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.admin-table tbody tr:hover td{background:var(--surface-2)}.admin-user-cell{flex-direction:column;gap:2px;min-width:0;display:flex}.admin-user-cell__name{color:var(--on-surface);font-weight:600;text-decoration:none}.admin-user-cell__name:hover{text-decoration:underline}.admin-badges{flex-wrap:wrap;gap:6px;display:inline-flex}.admin-nowrap{white-space:nowrap}.admin-sort{border-radius:var(--radius-sm);color:inherit;font:inherit;font-weight:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;align-items:center;gap:3px;margin:-6px -8px;padding:6px 8px;display:inline-flex}.admin-sort:hover{color:var(--on-surface);background:var(--surface-2)}.admin-sort:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.admin-sort__arrow.ico-inline{vertical-align:middle;opacity:.55;width:14px;height:14px}.admin-sort.is-active{color:var(--on-surface)}.admin-sort:hover .admin-sort__arrow{opacity:.85}.admin-sort.is-active .admin-sort__arrow{opacity:1;color:var(--on-primary-container)}.admin-sort-card{container-type:inline-size}@container (width>=730px){.admin-sort-select{display:none}}.admin-sort-select .field{margin:0}.admin-clip{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:420px;display:inline-block;overflow:hidden}@container (width<=680px){.admin-table thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.admin-table,.admin-table tbody,.admin-table tr,.admin-table td{width:100%;display:block}.admin-table tr{border:1px solid var(--outline);border-radius:var(--radius-md);margin-bottom:10px;padding:12px 14px}.admin-table tbody tr:hover td{background:0 0}.admin-table td{text-align:right;justify-content:space-between;gap:12px;display:flex;border:0!important;padding:4px 0!important}.admin-table td:before{content:attr(data-label);color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem);text-align:left;flex-shrink:0}.admin-table td.is-primary{text-align:left;display:block;padding-bottom:8px!important}.admin-table td.is-primary:before{content:none}.admin-table .is-numeric{text-align:right}.admin-clip{max-width:100%}}.admin-status{place-items:center;padding:32px;display:grid}.admin-empty{text-align:center;color:var(--on-surface-muted);margin:0;padding:28px 16px}.admin-refreshing{opacity:.55;transition:opacity .15s ease-out}.admin-profile{align-items:flex-start;gap:16px;display:flex}.admin-profile__avatar{flex-shrink:0;width:56px;height:56px;font-size:22px}.admin-profile__body{flex-direction:column;gap:6px;min-width:0;display:flex}.admin-profile h1{overflow-wrap:anywhere;margin:0;font-size:28px;font-weight:600}.admin-profile p{overflow-wrap:anywhere;margin:0}.admin-profile a{color:inherit}.admin-actions .card__body{flex-direction:column;gap:12px;display:flex}.admin-actions__row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.admin-actions__buttons{flex-wrap:wrap;gap:10px;display:flex}.admin-actions__buttons .btn{min-height:44px}.admin-actions__note{margin:0}.admin-switch{cursor:pointer;align-items:center;gap:12px;min-height:44px;display:flex}.admin-switch__hint{display:block}.admin-stats{grid-template-columns:minmax(240px,1fr) 3fr;gap:16px;display:grid}.admin-stats__ai .card__body{flex-direction:column;justify-content:center;gap:4px;height:100%;display:flex}.admin-stats__label{color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem)}.admin-stats__big{color:var(--on-surface);font-variant-numeric:tabular-nums;font-size:32px;font-weight:600}.admin-stats__list{grid-template-columns:repeat(4,1fr);gap:14px 20px;margin:0;padding:16px 20px;display:grid}.admin-stats__item{flex-direction:column-reverse;justify-content:flex-end;gap:2px;display:flex}.admin-stats__item dt{color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem)}.admin-stats__item dd{font-variant-numeric:tabular-nums;margin:0;font-size:22px;font-weight:600}@media (width<=1000px){.admin-stats{grid-template-columns:1fr}}@media (width<=560px){.admin-stats__list{grid-template-columns:1fr 1fr}}.admin-tabs-card{overflow:hidden}.admin-tabbar{border-bottom:1px solid var(--outline);position:relative}.admin-tabs{scrollbar-width:thin;flex-wrap:nowrap;padding:0 12px;display:flex;overflow:auto hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 12px calc(100% - 24px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 12px calc(100% - 24px),#0000 100%)}.admin-tabs .tab{white-space:nowrap;flex-shrink:0;align-items:center;gap:6px;min-height:44px;display:inline-flex}.admin-tabs__count{background:color-mix(in srgb,currentColor 16%,transparent);min-width:20px;height:20px;color:inherit;font-variant-numeric:tabular-nums;border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.admin-tabselect{margin:0;padding:12px 16px;display:none}@media (width<=720px){.admin-tabs{display:none}.admin-tabselect{display:block}.admin-tabbar{border-bottom:0}}.admin-tab-search{max-width:360px;margin-bottom:16px}.admin-timeline{margin:0;padding:0;list-style:none}.admin-timeline__item{border-bottom:1px solid var(--outline);grid-template-columns:170px 1fr;gap:16px;padding:10px 0;display:grid}.admin-timeline__item:last-child{border-bottom:0}.admin-timeline__time{color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem);font-variant-numeric:tabular-nums}@media (width<=560px){.admin-timeline__item{grid-template-columns:1fr;gap:2px}}.admin-details summary{cursor:pointer;color:var(--primary);font-size:var(--fs-sm,.9rem);align-items:center;min-height:32px;display:flex}.admin-details pre{background:var(--surface-2);border-radius:var(--radius-sm);text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;max-width:420px;max-height:260px;margin:8px 0 0;padding:10px;font-size:12px;overflow:auto}.admin-details p{text-align:left;overflow-wrap:anywhere;max-width:420px;margin:6px 0 0}@container (width<=680px){.admin-details{text-align:right}.admin-details pre,.admin-details p{max-width:none}}.admin-report-head{align-items:flex-end}.admin-period .segmented__option{min-height:44px}.admin-report{flex-direction:column;gap:16px;min-width:0;display:flex}.admin-report .admin-stats__list{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.admin-report a:not(.btn):not(.admin-user-cell__name){color:var(--on-primary-container)}.admin-report__note{color:var(--on-surface-muted);margin-top:2px;font-size:12.5px;display:block}.admin-report__pair{grid-template-columns:1fr 1fr;gap:16px;min-width:0;display:grid}.admin-report__pair>*{min-width:0}.admin-report__bad{color:var(--on-error-container)}@media (width<=1000px){.admin-report__pair{grid-template-columns:1fr}}@media (width<=420px){.admin-report .admin-stats__list{grid-template-columns:1fr 1fr}}.daily-chart{flex-direction:column;gap:8px;min-width:0;display:flex}.daily-chart__legend{font-size:var(--fs-sm,.9rem);color:var(--on-surface-muted);flex-wrap:wrap;gap:16px;display:flex}.daily-chart__legend span{align-items:center;gap:6px;display:inline-flex}.daily-chart__key{display:inline-block}.daily-chart__key--bar{background:var(--ll-chart-1);border-radius:3px;width:10px;height:10px}.daily-chart__key--line{background:var(--ll-chart-2);border-radius:1px;width:16px;height:2px}.daily-chart__plot{border-radius:var(--radius-sm);min-width:0;position:relative}.daily-chart__plot:focus-visible{outline:2px solid var(--primary);outline-offset:4px}.daily-chart__plot svg{display:block;overflow:visible}.daily-chart__grid{stroke:var(--outline);stroke-width:1px;shape-rendering:crispedges}.daily-chart__tick{fill:var(--on-surface-muted);font-variant-numeric:tabular-nums;font-size:11px}.daily-chart__bar{fill:var(--ll-chart-1);transition:opacity .12s ease-out}.daily-chart__plot:hover .daily-chart__bar:not(.is-active),.daily-chart__plot:focus-visible .daily-chart__bar:not(.is-active){opacity:.55}.daily-chart__hit{fill:#0000}.daily-chart__line{fill:none;stroke:var(--ll-chart-2);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round;pointer-events:none}.daily-chart__cursor{stroke:var(--outline-strong);stroke-width:1px;pointer-events:none}.daily-chart__dot{fill:var(--ll-chart-2);stroke:var(--surface-1);stroke-width:2px;pointer-events:none}.daily-chart__tooltip{border-radius:var(--radius-sm);background:var(--tip-bg);color:var(--tip-text);white-space:nowrap;pointer-events:none;font-variant-numeric:tabular-nums;z-index:2;flex-direction:column;gap:2px;padding:8px 10px;font-size:12.5px;display:flex;position:absolute;top:0;transform:translate(-50%,-100%)}.daily-chart__tooltip-muted{opacity:.75}.daily-chart__table .admin-table-wrap{max-height:280px;margin-top:8px;overflow:auto}.daily-chart__table .is-numeric{text-align:right;font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){.daily-chart__bar{transition:none}}.admin-tabs__count--alert{color:var(--on-error-container);background:var(--error-container,color-mix(in srgb,currentColor 16%,transparent))}.tab--active .admin-tabs__count--alert,.segmented__option input:checked+span .admin-tabs__count--alert{color:inherit}.admin-bg-panel{flex-direction:column;gap:12px;min-width:0;display:flex}.admin-bg-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-bg-toolbar .btn{min-height:44px}.admin-bg-toolbar .admin-bg-hint{flex:320px}.admin-bg-hint{max-width:75ch;margin:0}.admin-bg-hint code,.alert code{font-size:.9em}.admin-bulk{flex-wrap:wrap;align-items:center;gap:12px;min-height:44px;display:flex}.admin-bulk .btn{min-height:36px}.admin-pick{cursor:pointer;align-items:center;gap:10px;min-width:0;min-height:32px;display:inline-flex}.admin-pick input{width:18px;height:18px;accent-color:var(--primary);flex-shrink:0}.admin-pick__label{color:var(--on-surface);font-weight:600}.admin-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:inline-flex}.admin-row-btn{white-space:nowrap;min-height:36px}.admin-details summary .admin-clip{max-width:380px}.admin-history{flex-direction:column;gap:6px;min-width:0;max-width:420px;display:flex}.admin-history__entry{flex-direction:column;gap:2px;min-width:0;display:flex}.admin-history__meta{color:var(--on-surface-muted);font-size:12.5px}.admin-history__list{border-left:2px solid var(--outline);flex-direction:column;gap:10px;margin:8px 0 0;padding:0 0 0 10px;list-style:none;display:flex}@container (width<=680px){.admin-history{text-align:left;max-width:none}}.admin-notice{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}@media (width<=560px){.admin-bg-toolbar .segmented{grid-template-columns:1fr 1fr;width:100%;display:grid}.admin-bg-toolbar>.btn,.admin-bg-toolbar .admin-actions__buttons{width:100%}.admin-bg-toolbar .admin-actions__buttons .btn{flex:1}}@media (pointer:coarse){.admin-row-btn,.admin-bulk .btn,.admin-pick{min-height:44px}}.admin-budget{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.admin-budget .field{max-width:200px;margin:0}.admin-budget .btn{min-height:44px}.admin-budget__error{color:var(--on-error-container)}.admin-budget .admin-actions__note{flex-basis:100%}.admin-dict-tabs .tab{align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.admin-dict-filters{grid-template-columns:minmax(220px,2fr) repeat(4,minmax(140px,1fr))}.admin-dict-filters__switch{align-self:end}.admin-dict-filters__more{display:contents}.admin-dict-filters__toggle{min-height:44px;display:none}@media (width<=720px){.admin-dict-filters__toggle{justify-content:center;display:inline-flex}.admin-dict-filters__more:not(.is-open){display:none}}@media (width<=1100px){.admin-dict-filters{grid-template-columns:1fr 1fr}}@media (width<=520px){.admin-dict-filters{grid-template-columns:1fr}}.admin-owner{font-size:var(--fs-sm,.9rem);color:var(--on-surface-muted)}.admin-owner:hover{color:var(--on-surface)}.admin-dict-note{max-width:75ch;margin:0}.admin-dict-export{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.admin-dict-export__text{flex-direction:column;flex:320px;gap:4px;min-width:0;display:flex}.admin-dict-export__title,.admin-dict-section-title{margin:0;font-size:18px;font-weight:600}.admin-dict-section-title{align-items:baseline;gap:8px;margin-bottom:12px;display:flex}.admin-dict-export .btn{align-items:center;gap:8px;min-height:44px;display:inline-flex}@media (width<=560px){.admin-dict-export .btn{justify-content:center;width:100%}}.admin-dict-entry-nav{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-dict-head{flex-direction:column;gap:8px;min-width:0;display:flex}.admin-dict-head h1{overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:10px;margin:0;font-size:28px;font-weight:600;display:flex}.admin-dict-head p{margin:0}.admin-dict-head__definition{max-width:75ch;color:var(--on-surface)}.admin-dict-form{overflow-wrap:anywhere}.admin-sense{border-top:1px solid var(--outline);min-width:0;padding:14px 0}.admin-sense:first-of-type{border-top:0;padding-top:0}.admin-sense__title{font-size:var(--fs-sm,.9rem);color:var(--on-surface);margin:0 0 10px;font-weight:600}.admin-sense__forms{flex-direction:column;gap:10px;margin:0;display:flex}.admin-sense__form{grid-template-columns:minmax(120px,180px) 1fr;gap:12px;min-width:0;display:grid}.admin-sense__form dt{overflow-wrap:anywhere;flex-direction:column;gap:2px;min-width:0;display:flex}.admin-sense__form dd{min-width:0;margin:0}@media (width<=560px){.admin-sense__form{grid-template-columns:1fr;gap:4px}}.admin-sense__list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.admin-sense__item{flex-direction:column;gap:2px;min-width:0;display:flex}.admin-sense__text{overflow-wrap:anywhere;font-weight:600}.admin-sense__meta{color:var(--on-surface-muted);flex-wrap:wrap;gap:4px 12px;font-size:12.5px;display:flex}.admin-sense__meta a,.admin-dict-head a:not(.btn),.admin-page .alert a:not(.btn),.admin-dict-note a{color:var(--on-primary-container)}.is-deleted>:first-child .admin-sense__text,.admin-examples .is-deleted>p:first-child{text-decoration:line-through;-webkit-text-decoration-color:var(--on-surface-muted);text-decoration-color:var(--on-surface-muted)}.admin-dict-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.admin-dict-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;display:inline-flex}.admin-dict-actions .btn,.admin-dict-toolbar .btn,.admin-dict-add{min-height:36px}.admin-dict-hide{color:var(--on-error-container)}.admin-dict-add,.admin-dict-toolbar .btn--outline,.admin-dict-actions .btn--outline,.admin-dict-confirm .btn--outline,.admin-dict-bulk .btn--outline{color:var(--on-surface)}.admin-dict-hide[aria-disabled=true]{color:var(--on-surface-muted);-webkit-text-decoration:line-through #0000;text-decoration:line-through #0000}.admin-dict-visibility.segmented{vertical-align:middle;gap:2px;padding:3px}.admin-dict-visibility .segmented__option>span{min-height:28px;padding:3px 10px;font-size:12.5px}.admin-dict-visibility .segmented__option input:disabled{cursor:default}.admin-icon-tip{vertical-align:middle}.admin-icon-tip .tooltip__text{left:auto;right:0;transform:none}.admin-icon-tip .tooltip__text:after{left:auto;right:13px;transform:none}.admin-icon-btn{width:36px;min-width:36px;min-height:36px;color:var(--on-surface-muted);justify-content:center;align-items:center;padding:0;display:inline-flex}.admin-icon-btn:hover,.admin-icon-btn[aria-expanded=true]{color:var(--on-surface);background:var(--surface-2)}.admin-icon-btn svg{width:18px;height:18px}.admin-icon-btn.admin-dict-hide{color:var(--on-error-container)}.admin-icon-btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;text-decoration:none}.admin-dict-add{align-self:flex-start;margin-top:12px}.admin-dict-edit{border:1px solid var(--outline-strong);border-radius:var(--radius-md);background:var(--surface-1);flex-direction:column;gap:10px;min-width:0;max-width:760px;margin-top:8px;padding:12px;display:flex}.admin-dict-edit__title{font-weight:600;font-size:var(--fs-sm,.9rem);margin:0}.admin-dict-edit__fields{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px 12px;display:grid}.admin-dict-edit__fields .field{min-width:0;margin:0}.admin-dict-edit__wide{grid-column:1/-1}.admin-dict-edit__actions{flex-wrap:wrap;gap:8px;display:flex}.admin-dict-edit__actions .btn{min-height:36px}.admin-dict-sentence{overflow-wrap:anywhere;flex-direction:column;gap:2px;min-width:0;display:flex}.admin-dict-sentence-filters{grid-template-columns:minmax(220px,2fr) repeat(3,minmax(140px,1fr))}@media (width<=900px){.admin-dict-sentence-filters{grid-template-columns:1fr 1fr}}@media (width<=520px){.admin-dict-sentence-filters{grid-template-columns:1fr}}.admin-dict-bulk{margin-bottom:8px}@media (pointer:coarse){.admin-dict-actions .btn,.admin-dict-toolbar .btn,.admin-dict-add,.admin-dict-edit__actions .btn{min-height:44px}.admin-icon-btn{width:44px;min-width:44px}.admin-dict-visibility .segmented__option>span{min-height:38px}}@media (width<=560px){.admin-dict-edit input,.admin-dict-edit select,.admin-dict-edit textarea{font-size:16px}}.admin-dict-confirm{flex-direction:column;gap:12px;width:calc(100vw - 32px);max-width:560px;display:flex}.admin-dict-confirm .modal__body{flex-direction:column;gap:10px;display:flex}.admin-dict-confirm .field{margin:0}.admin-dict-confirm .field input{font-size:16px}.admin-dict-confirm__note{color:var(--on-surface-muted);margin:0}.admin-dict-confirm__hint{margin:0;font-size:12.5px}.admin-dict-confirm__actions{flex-wrap:wrap}.admin-dict-confirm__actions .btn{min-height:44px}@media (width<=520px){.admin-dict-confirm__actions{flex-direction:column}.admin-dict-confirm__actions .btn{width:100%}}.admin-dict-impact{flex-direction:column;gap:4px;margin:0;padding-left:18px;display:flex}.admin-dict-toast{z-index:calc(var(--z-modal,1050) - 1);width:min(560px,100vw - 32px);box-shadow:var(--shadow-2);align-items:center;position:fixed;bottom:24px;left:50%;overflow:hidden;transform:translate(-50%)}.admin-dict-toast .btn{flex-shrink:0;min-height:36px}.admin-dict-toast .toast__close{min-width:36px;min-height:36px}.admin-dict-toast__timer{background:var(--outline-strong);transform-origin:0;width:100%;height:3px;animation:linear forwards admin-toast-timer;position:absolute;bottom:0;left:0}@keyframes admin-toast-timer{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media (prefers-reduced-motion:reduce){.admin-dict-toast__timer{opacity:.5;animation:none}}@media (width<=720px){.admin-dict-toast{bottom:calc(76px + env(safe-area-inset-bottom))}}.history-changes{font-size:var(--fs-sm,.9rem);flex-direction:column;gap:2px;margin:2px 0 0;display:flex}.history-changes__row{grid-template-columns:minmax(90px,140px) 1fr;gap:8px;min-width:0;display:grid}.history-changes dt{color:var(--on-surface-muted)}.history-changes dd{overflow-wrap:anywhere;min-width:0;margin:0}.history-changes del,.history-changes__arrow{color:var(--on-surface-muted)}.history-changes ins{font-weight:600;text-decoration:none}@media (width<=560px){.history-changes__row{grid-template-columns:1fr;gap:0}}.admin-examples{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.admin-examples li{border-bottom:1px solid var(--outline);flex-direction:column;gap:4px;min-width:0;padding:10px 0;display:flex}.admin-examples li:last-child{border-bottom:0}.admin-examples p{overflow-wrap:anywhere;margin:0}.history .admin-dict-section-title{margin-bottom:4px}.history-totals{margin:0 0 12px}.history-kinds{max-width:100%;margin-bottom:12px;overflow-x:auto}.history-kinds .segmented__option{min-height:44px}.history-feed{margin:0;padding:0;list-style:none}.history-item{border-bottom:1px solid var(--outline);grid-template-columns:120px 1fr;gap:16px;padding:12px 0;display:grid}.history-item:last-child{border-bottom:0}.history-item__time{color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem);font-variant-numeric:tabular-nums;padding-top:2px}.history-item__body{align-items:flex-start;gap:10px;min-width:0;display:flex}.history-item__body>.badge{flex-shrink:0;margin-top:2px}.history-item__main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.history-item__main p{margin:0}.history-item__title{overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:8px;display:flex}.history-item__facts{color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem);overflow-wrap:anywhere;flex-wrap:wrap;gap:4px 12px;display:flex}.history-item__facts a{color:var(--on-primary-container)}.history-item__model{font-size:12px}.history-item__preview{font-family:var(--font-mono,ui-monospace,monospace);color:var(--on-surface);background:var(--surface-2);border-radius:var(--radius-sm);overflow-wrap:anywhere;padding:6px 8px;font-size:12.5px}.history-item__toggle{align-self:flex-start;min-height:44px}.history-item__note{font-size:12.5px}.history-chip{border:1px solid var(--outline);color:var(--on-surface-muted);border-radius:999px;align-items:center;padding:0 8px;font-size:12px;line-height:22px;text-decoration:none;display:inline-flex}a.history-chip{color:var(--on-primary-container)}a.history-chip:hover{border-color:currentColor}.history-details pre,.history-details p{max-width:none}.history-payload{grid-template-columns:1fr 1fr;gap:12px;margin-top:4px;display:grid}.history-payload__part{border:1px solid var(--outline);border-radius:var(--radius-md);min-width:0;padding:10px 12px}.history-payload__title{font-size:var(--fs-sm,.9rem);align-items:center;gap:8px;margin:0 0 8px;font-weight:600;display:flex}.history-payload pre{background:var(--surface-2);border-radius:var(--radius-sm);white-space:pre-wrap;overflow-wrap:anywhere;max-height:360px;margin:0;padding:10px;font-size:12px;overflow:auto}.history-payload__message+.history-payload__message{margin-top:8px}.history-payload__role{color:var(--on-surface-muted);margin-bottom:2px;font-size:12px;display:block}.history-domain{margin-bottom:12px}.history-entries{font-size:var(--fs-sm,.9rem);flex-direction:column;gap:4px;margin:8px 0 0;padding-left:18px;display:flex}@media (width<=900px){.history-payload{grid-template-columns:1fr}}@media (width<=560px){.history-item{grid-template-columns:1fr;gap:4px}.history-item__body{flex-direction:column;gap:6px}}.admin-dict-create{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-view-switch{margin-left:auto}.admin-view-switch svg{flex-shrink:0;width:16px;height:16px}.admin-view-switch .segmented__option>span{min-height:34px;padding:6px 12px}@media (pointer:coarse){.admin-view-switch .segmented__option>span{min-height:44px}}@media (width<=520px){.admin-view-switch__label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.admin-tiles{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin:0 0 16px;padding:0;list-style:none;display:grid}.admin-tile{border:1px solid var(--outline);border-radius:var(--radius-md);flex-direction:column;gap:8px;min-width:0;padding:14px 16px;transition:border-color .15s ease-out,background-color .15s ease-out;display:flex;position:relative}.admin-tile:hover{border-color:var(--outline-strong);background:var(--surface-2)}.admin-tile:has(.admin-tile__title:focus-visible){outline:2px solid var(--primary);outline-offset:2px}.admin-tile__head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.admin-tile__title{color:var(--on-surface);overflow-wrap:anywhere;outline:none;font-weight:600}.admin-tile__title:after{content:"";border-radius:inherit;position:absolute;inset:0}.admin-tile a:not(.admin-tile__title){z-index:1;position:relative}.admin-tile__meta{color:var(--on-surface-muted);overflow-wrap:anywhere;margin:0;font-size:12.5px}.admin-tile__stats{border-top:1px solid var(--outline);gap:20px;margin:auto 0 0;padding-top:10px;display:flex}.admin-tile__stats div{flex-direction:column-reverse;gap:2px;display:flex}.admin-tile__stats dt{color:var(--on-surface-muted);font-size:12px}.admin-tile__stats dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}@media (prefers-reduced-motion:reduce){.admin-tile{transition:none}}.admin-dict-create .btn{align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.admin-dict-create .btn--outline{color:var(--on-surface)}.admin-new{flex-direction:column;gap:16px;min-width:0;display:flex}.admin-new__section .card__body{flex-direction:column;gap:10px;min-width:0;display:flex}.admin-new__section .admin-dict-section-title{margin-bottom:0}.admin-new__hint{max-width:75ch;margin:0}.admin-new__section .field{min-width:0;margin:0}.admin-new__rows{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.admin-new__row{align-items:end;gap:10px 12px;min-width:0;display:grid}.admin-new__row--form{grid-template-columns:minmax(160px,1fr) minmax(140px,1fr) minmax(120px,.8fr) auto}.admin-new__row--translation{grid-template-columns:minmax(180px,1fr) minmax(180px,1.4fr) auto}.admin-new__row--example{grid-template-columns:1.3fr 1.3fr minmax(140px,.8fr) auto}.admin-new__row--phrase{grid-template-columns:minmax(200px,1fr) auto}.admin-new__row--phrase-example{grid-template-columns:1fr 1fr auto}.admin-new__remove{min-width:44px;min-height:44px;color:var(--on-surface-muted);justify-content:center}.admin-new__remove:hover{color:var(--on-error-container)}.admin-new__sense{border:1px solid var(--outline);border-radius:var(--radius-md);flex-direction:column;gap:10px;min-width:0;margin:0;padding:12px;display:flex}.admin-new__legend{font-weight:600;font-size:var(--fs-sm,.9rem);align-items:center;gap:4px;padding:0 6px;display:inline-flex}.admin-new__legend .admin-new__remove{min-width:32px;min-height:32px}.admin-new__matches{flex-direction:column;gap:4px;display:flex}.admin-new__matches p{margin:0}.admin-new__matches a{margin-right:8px}.admin-new__errors{margin:0;padding-left:18px}.admin-new__footer{flex-direction:column;gap:12px;display:flex}.admin-new__actions{flex-wrap:wrap;gap:8px;display:flex}.admin-new__actions .btn{align-items:center;gap:8px;min-height:44px;text-decoration:none;display:inline-flex}.admin-new .admin-dict-add{margin-top:0}.admin-new .admin-dict-add:disabled{color:var(--on-surface-muted)}@media (width<=720px){.admin-new__row{grid-template-columns:1fr auto!important}.admin-new__row>.field:first-child{grid-column:1/-1}.admin-new__row--phrase>.field:first-child,.admin-new__row--translation>.field:nth-child(2){grid-column:auto}.admin-new__row--form>.field:nth-child(2),.admin-new__row--example>.field:nth-child(2){grid-column:1/-1}.admin-new__row{border-bottom:1px solid var(--outline);padding-bottom:10px}.admin-new__row:last-child{border-bottom:0}.admin-new input,.admin-new select,.admin-new textarea{font-size:16px}.admin-new__actions .btn{flex:auto;justify-content:center}}.admin-import__upload{flex-direction:column;align-items:flex-start;gap:12px;display:flex}.admin-import__upload .field{width:100%;max-width:520px;margin:0}.admin-import__upload .btn{align-items:center;gap:8px;min-height:44px;display:inline-flex}.admin-import__current{flex-direction:column;gap:14px;min-width:0;display:flex}.admin-import__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.admin-import__head .admin-dict-section-title{overflow-wrap:anywhere;margin:0}.admin-import__progress{flex-direction:column;gap:6px;max-width:560px;display:flex}.admin-import__progress p{margin:0}.admin-import__stats{padding:0}.admin-import__report{flex-direction:column;gap:8px;display:flex}.admin-import__details{border:1px solid var(--outline);border-radius:var(--radius-md);padding:0 12px}.admin-import__details summary{cursor:pointer;align-items:center;gap:4px;min-height:44px;font-weight:600;display:flex}.admin-import__list{overflow-wrap:anywhere;flex-direction:column;gap:6px;max-height:360px;margin:0 0 12px;padding:0;list-style:none;display:flex;overflow:auto}.admin-import__list a{color:var(--on-primary-container)}.admin-import__apply{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.admin-import__apply .btn{align-items:center;gap:8px;min-height:44px;display:inline-flex}.admin-import__apply p{margin:0}.admin-import__recent{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.admin-import__recent-item{text-align:left;border:0;border-top:1px solid var(--outline);width:100%;min-height:44px;color:var(--on-surface);cursor:pointer;font:inherit;background:0 0;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:10px 4px;display:flex}.admin-import__recent li:first-child .admin-import__recent-item{border-top:0}.admin-import__recent-item:hover,.admin-import__recent-item.is-current{background:var(--surface-1)}.admin-import__recent-item:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.admin-import__recent-name{overflow-wrap:anywhere;font-weight:600}.admin-page .greeting a:not(.tab):not(.btn){color:var(--on-primary-container)}.admin-import__details summary{list-style:none}.admin-import__details summary::-webkit-details-marker{display:none}.admin-import__details summary:before{content:"";border-right:2px solid var(--on-surface-muted);border-bottom:2px solid var(--on-surface-muted);flex-shrink:0;width:7px;height:7px;margin:0 9px 0 3px;transition:transform .15s ease-out;display:inline-block;transform:rotate(-45deg)}.admin-import__details[open] summary:before{transform:rotate(45deg)}@media (prefers-reduced-motion:reduce){.admin-import__details summary:before{transition:none}}.admin-merge__options{border:0;flex-direction:column;gap:6px;max-height:50vh;margin:0;padding:0;display:flex;overflow:auto}.admin-merge__option{border:1px solid var(--outline);border-radius:var(--radius-md);cursor:pointer;align-items:flex-start;gap:10px;min-height:44px;padding:10px 12px;display:flex}.admin-merge__option:has(input:checked){border-color:var(--primary);background:var(--surface-1)}.admin-merge__option:has(input:focus-visible){outline:2px solid var(--primary);outline-offset:2px}.admin-merge__option.is-blocked{cursor:not-allowed;background:var(--surface-1)}.admin-merge__option input{flex-shrink:0;margin-top:3px}.admin-merge__text{overflow-wrap:anywhere;flex-direction:column;gap:2px;min-width:0;display:flex}.admin-import__who,.admin-import__report>p{margin:0}.admin-import__rollback{color:var(--on-surface)}.admin-mod-panel{flex-direction:column;gap:12px;display:flex}.admin-mod-filters{flex-wrap:wrap;align-items:end;gap:12px 16px;display:flex}.admin-mod-filters .field{min-width:200px;margin:0}.admin-mod-filters select{min-height:44px}.admin-mod-flags{flex-wrap:wrap}.admin-mod-flags .segmented__option>span{height:34px;padding-block:0}@media (pointer:coarse){.admin-mod-flags .segmented__option>span{height:44px}.admin-mod-filters select{min-height:54px}}.admin-mod-learners{margin-left:auto}.admin-mod-bulk{justify-content:flex-start}.admin-mod-keys{margin:0 0 0 auto}.admin-mod-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.admin-mod-card{border:1px solid var(--outline);border-radius:var(--radius-md);background:var(--surface);flex-direction:column;gap:8px;min-width:0;padding:12px 14px;display:flex}.admin-mod-card:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.admin-mod-card.is-flagged{border-left:3px solid var(--warning)}.admin-mod-card.is-selected{background:var(--surface-2);border-color:var(--outline-strong)}.admin-mod-card__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.admin-mod-card__body{flex-direction:column;gap:4px;min-width:0;display:flex}.admin-mod-card__body p{overflow-wrap:anywhere;margin:0}.admin-mod-card__text{color:var(--on-surface);font-size:18px;font-weight:600}.admin-mod-card__context{color:var(--on-surface)}.admin-mod-card__meta a{color:inherit}.admin-mod-flags-list{border-radius:var(--radius-md);background:var(--warning-container);color:var(--on-surface);overflow-wrap:anywhere;flex-direction:column;gap:4px;margin:4px 0;padding:8px 12px;list-style:none;display:flex}.admin-mod-flags-list a{color:inherit}.admin-mod-card__actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.admin-mod-card__actions .btn{min-height:36px}.admin-mod-card__actions .btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}.admin-mod-card__why{flex:220px}@media (pointer:coarse){.admin-mod-card__actions .btn{min-height:44px}.admin-mod-keys{display:none}}@media (width<=720px){.admin-mod-learners{margin-left:0}.admin-mod-keys{display:none}}@media (width<=520px){.admin-mod-filters .field{width:100%;min-width:0}.admin-mod-card__actions .btn{flex:auto}}.admin-mod-state{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.admin-mod-card__actions .btn--outline{color:var(--on-surface)}.admin-text-actions{margin-top:0}.admin-text-actions .btn{align-items:center;min-height:44px;text-decoration:none;display:inline-flex}.admin-text-actions .btn--outline{color:var(--on-surface)}.admin-text-meta{margin-top:16px}.admin-text-tags{border:0;flex-wrap:wrap;gap:8px 16px;min-width:0;margin:0;padding:0;display:flex}.admin-text-tags legend{margin-bottom:6px;padding:0}.admin-text-tag{cursor:pointer;align-items:center;gap:8px;min-height:44px;display:inline-flex}.admin-text-usage{grid-template-columns:repeat(6,1fr)}@media (width<=1100px){.admin-text-usage{grid-template-columns:repeat(3,1fr)}}@media (width<=560px){.admin-text-usage{grid-template-columns:1fr 1fr}}.admin-text-body{white-space:pre-wrap;max-width:75ch;margin:0}.admin-text-sentences{flex-direction:column;margin:0 0 8px;padding:0;list-style:none;display:flex}.admin-text-sentences li{border-bottom:1px solid var(--outline);grid-template-columns:2.5em 1fr 1fr;gap:4px 16px;padding:10px 0;display:grid}.admin-text-sentences li:last-child{border-bottom:0}.admin-text-sentences__n{color:var(--on-surface-muted);font-variant-numeric:tabular-nums}.admin-text-sentences__uk{color:var(--on-surface-muted)}@media (width<=720px){.admin-text-sentences li{grid-template-columns:2em 1fr}.admin-text-sentences li>:last-child{grid-column:2}}.admin-catalogue-report{flex-direction:column;gap:6px;margin-top:8px;display:flex}.admin-catalogue-report p{margin:0}.admin-catalogue-report code{overflow-wrap:anywhere}.admin-draft-form{flex-direction:column;gap:12px;display:flex}.admin-draft-form .field{margin:0}.admin-draft-form__row{grid-template-columns:minmax(0,3fr) minmax(140px,1fr);gap:12px;display:grid}@media (width<=560px){.admin-draft-form__row{grid-template-columns:1fr}.admin-draft-form input,.admin-draft-form select,.admin-draft-form textarea,.admin-draft-sentences textarea,.admin-draft-gloss input,.admin-draft-phrases input,.admin-draft-phrases select,.admin-draft-phrase-add input{font-size:16px}}.admin-draft-body{resize:vertical;min-height:240px;font-family:inherit;line-height:1.6}.admin-draft-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.admin-draft-list li{border-bottom:1px solid var(--outline);flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:10px 0;display:flex}.admin-draft-list li:last-child{border-bottom:0}.admin-draft-list a{align-items:center;min-height:44px;display:inline-flex}.admin-draft-tools{flex-direction:column;gap:8px;display:flex}.admin-draft-tools__grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=820px){.admin-draft-tools__grid{grid-template-columns:1fr}}.admin-draft-tools__way{border:1px solid var(--outline);border-radius:var(--radius-md);flex-direction:column;gap:8px;min-width:0;padding:12px;display:flex}.admin-draft-tools__way h3{margin:0;font-size:16px;font-weight:600}.admin-draft-tools__way p,.admin-draft-tools__way .field{margin:0}.admin-draft-tools__way .btn,.admin-draft-phrase-add .btn{min-height:44px;color:var(--on-surface);align-self:flex-start}.admin-draft-sentences{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.admin-draft-sentences li{border-bottom:1px solid var(--outline);flex-direction:column;gap:6px;padding:12px 0;display:flex}.admin-draft-sentences li:last-child{border-bottom:0}.admin-draft-sentences__en{gap:10px;line-height:1.5;display:flex}.admin-draft-sentences__uk{resize:vertical;min-height:44px;font-family:inherit}.admin-draft-sentences .btn--sm{align-self:flex-start;min-height:36px}@media (pointer:coarse){.admin-draft-sentences .btn--sm{min-height:44px}}.admin-draft-gloss{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px 12px;padding:8px 0 0;display:grid}.admin-draft-gloss__word{margin:0}.admin-draft-phrases{flex-direction:column;gap:10px;margin:0 0 12px;padding:0;list-style:none;display:flex}.admin-draft-phrases li{border:1px solid var(--outline);border-radius:var(--radius-md);flex-direction:column;gap:8px;padding:12px;display:flex}.admin-draft-phrases__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.admin-draft-phrases__fields{grid-template-columns:2fr 1fr 2fr;gap:8px 12px;display:grid}.admin-draft-phrases__fields .field{margin:0}@media (width<=720px){.admin-draft-phrases__fields{grid-template-columns:1fr}}.admin-draft-phrase-add{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.admin-draft-phrase-add .field{flex:260px;margin:0}.admin-draft-phrase-add .btn{margin-top:26px}@media (width<=560px){.admin-draft-phrase-add .btn{justify-content:center;width:100%;margin-top:0}}.admin-draft-bar{z-index:5;border:1px solid var(--outline-strong);border-radius:var(--radius-md);background:var(--surface-1);box-shadow:0 -4px 16px color-mix(in srgb,var(--on-surface) 8%,transparent);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex;position:sticky;bottom:0}.admin-draft-bar__state{color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem);flex:1 1 0;min-width:0}.admin-draft-bar__actions{flex-wrap:wrap;flex:none;gap:8px;display:flex}.admin-draft-bar__actions .btn{min-height:44px}.admin-draft-bar__actions .btn--outline{color:var(--on-surface)}@media (width<=720px){.admin-draft-bar{bottom:calc(84px + env(safe-area-inset-bottom,0px));gap:6px;padding:8px 10px}.admin-draft-bar__state{flex-basis:100%;font-size:13px}.admin-draft-bar__actions{flex-wrap:nowrap;gap:6px;width:100%}.admin-draft-bar__actions .btn{white-space:normal;text-align:center;flex:1 1 0;justify-content:center;padding:4px 8px;font-size:14px;line-height:1.15}}.admin-set-new{grid-template-columns:minmax(0,2fr) repeat(2,minmax(120px,1fr));gap:12px;display:grid}.admin-set-new .field{margin:0}@media (width<=560px){.admin-set-new{grid-template-columns:1fr}.admin-set-new input,.admin-set-new select,.admin-sense-results~* input{font-size:16px}}.admin-set-items{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.admin-set-items li{border-bottom:1px solid var(--outline);grid-template-columns:2.5em 1fr auto;align-items:center;gap:4px 12px;min-height:44px;padding:6px 0;display:grid}.admin-set-items li:last-child{border-bottom:0}.admin-set-items__label{overflow-wrap:anywhere;min-width:0}.admin-set-items__actions{flex-wrap:nowrap;margin-top:0}@media (width<=560px){.admin-set-items li{grid-template-columns:2em 1fr}.admin-set-items__actions{grid-column:2;justify-self:start}}.admin-sense-results{flex-direction:column;gap:10px;margin-top:12px;display:flex}.admin-sense-result{border:1px solid var(--outline);border-radius:var(--radius-md);padding:10px 12px}.admin-sense-result__head{margin-bottom:6px}.admin-sense-result p{margin:0}.admin-sense-result ul{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.admin-sense-result li{border-top:1px solid var(--outline);justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:4px 0;display:flex}.admin-sense-result li:first-child{border-top:0}.admin-sense-result .btn--outline{color:var(--on-surface);flex:none}.admin-sense-result .btn--outline:disabled{opacity:.6}.admin-filters--feed{grid-template-columns:repeat(3,minmax(160px,1fr)) repeat(2,minmax(140px,170px)) auto}.admin-filters__check{cursor:pointer;white-space:nowrap;align-items:center;gap:8px;min-height:44px;display:flex}@media (width<=1100px){.admin-filters--feed{grid-template-columns:1fr 1fr}}@media (width<=520px){.admin-filters--feed{grid-template-columns:1fr}}.admin-feed__active{flex-wrap:wrap;align-items:center;gap:8px;margin:-4px 0 16px;display:flex}.admin-feed__subjects{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.admin-link-button{font:inherit;color:var(--on-primary-container);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb,currentColor 40%,transparent);text-decoration-color:color-mix(in srgb,currentColor 40%,transparent);text-underline-offset:2px;cursor:pointer;background:0 0;border:0;padding:0}.admin-link-button:hover{text-decoration-color:currentColor}.admin-link-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:2px}.admin-feed__action{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.admin-feed__action+.admin-feed__subjects,.admin-feed__action~.admin-details{margin-top:6px}.admin-feed__action~.admin-details{text-align:left}.bigicon{color:var(--on-surface);flex-shrink:0;justify-content:center;align-items:center;display:flex}.bigicon svg{width:100%;height:100%}.greeting{grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:16px;margin-bottom:24px;display:grid}.greeting>div:first-child{display:contents}.greeting>div:first-child>*,.greeting>h1,.greeting>p{grid-column:1}.greeting h1,.greeting p{margin:0}.greeting h1{font-size:30px;font-weight:600;line-height:1.25}.greeting p{color:var(--on-surface-muted);align-self:start;margin-top:4px;font-size:15px}.greeting>:not(:first-child):not(h1):not(p){grid-area:1/2}@media (width<=560px){.greeting{grid-template-columns:minmax(0,1fr)}.greeting>:not(:first-child):not(h1):not(p){grid-area:auto/1;justify-self:start;max-width:100%;margin-top:12px}}.action-buttons{gap:12px;display:flex}.action-buttons .btn svg{width:18px;height:18px}.stats-grid{grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:24px;display:grid}.stat .bigicon{--icon-accent:var(--_c);width:54px;height:54px}.stat{transition:box-shadow .3s}.stat:hover{box-shadow:var(--shadow-2)}.content-grid{grid-template-columns:1fr 360px;gap:24px;padding-bottom:24px;display:grid}.main-col,.side-col{flex-direction:column;gap:24px;min-width:0;display:flex}.card-note{color:var(--ll-muted);font-size:12.5px}.card-action{color:var(--ll-good);align-items:center;gap:4px;font-size:13px;font-weight:500;transition:gap .2s;display:flex}.card-action:hover{gap:8px}.card-action svg{--icon-accent-opacity:0;width:16px;height:16px}.card-action--disabled{cursor:default;opacity:.55}.card-action--disabled:hover{gap:4px}.forecast{align-items:flex-end;gap:8px;height:80px;margin-top:6px;display:flex}.forecast .f{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:6px;height:100%;display:flex}.forecast .bar{background:var(--surface-2);border-radius:8px 8px 4px 4px;width:100%}.forecast .bar.today{background:var(--gradient)}.forecast .d{color:var(--ll-muted);font-size:10px;font-weight:600}.forecast .n{color:var(--on-surface-muted);font-size:10.5px;font-weight:700}.forecast-note{color:var(--ll-muted);margin-top:10px;font-size:12px}.forecast-note b{color:var(--on-surface)}.train-mini{flex-direction:column;gap:10px;display:flex}.tm{border:2px solid var(--outline);border-radius:var(--radius-md);cursor:pointer;color:inherit;align-items:center;gap:12px;padding:13px 15px;transition:border-color .25s,background-color .25s;display:flex}.tm:hover{border-color:var(--primary);background:var(--ll-acc-soft)}.tm .bigicon{width:46px;height:46px}.tm-info{flex:1}.tm-name{color:var(--on-surface);font-size:14.5px;font-weight:600}.tm-desc{color:var(--on-surface-muted);font-size:12px}.tm-count{background:var(--surface-2);border-radius:var(--radius-pill);color:var(--on-surface-muted);padding:4px 11px;font-size:12.5px;font-weight:600}.goal-card{background:var(--surface-1);border:1px solid var(--outline);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);text-align:center;flex-direction:column;align-items:center;gap:10px;padding:24px;transition:box-shadow .3s;display:flex;position:relative;overflow:hidden}.goal-card:hover{box-shadow:var(--shadow-2)}.goal-card:before{content:"";background:radial-gradient(circle,var(--primary) 0%,transparent 70%);opacity:.12;width:220px;height:220px;position:absolute;top:-60%;right:-40%}.goal-title{letter-spacing:1.2px;text-transform:uppercase;color:var(--ll-muted);font-size:12px;font-weight:600}.goal-note{color:var(--on-surface-muted);font-size:13px}.goal-note b{color:var(--on-surface)}.goal-streak{color:var(--ll-warn);background:var(--ll-peach-soft);border-radius:var(--radius-pill);align-items:center;gap:8px;padding:5px 14px;font-size:13px;font-weight:600;display:flex}.goal-streak svg{width:20px;height:20px}.heat{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.heat i{aspect-ratio:1;background:var(--surface-2);border-radius:5px;font-style:normal}.heat i.h1{background:color-mix(in srgb,var(--primary) 25%,var(--surface-2))}.heat i.h2{background:color-mix(in srgb,var(--primary) 50%,var(--surface-2))}.heat i.h3{background:var(--primary)}.heat i.today{outline:2px solid var(--ll-good);outline-offset:1px}.heat-note{color:var(--ll-muted);justify-content:space-between;margin-top:10px;font-size:11.5px;display:flex}.heat-note b{color:var(--ll-warn)}.cefr-row{align-items:center;gap:10px;margin-bottom:9px;display:flex}.cefr-row:last-child{margin-bottom:0}.cefr-lvl{width:28px;color:var(--on-surface-muted);font-size:12px;font-weight:700}.cefr-bar{background:var(--surface-2);border-radius:7px;flex:1;height:14px;overflow:hidden}.cefr-bar i{border-radius:7px;height:100%;display:block}.cefr-n{text-align:right;width:26px;font-size:12px;font-weight:600}.cefr-note{color:var(--ll-muted);margin-top:10px;font-size:12px}.cefr-note b{color:var(--ll-good)}.bottom-grid{grid-template-columns:1fr 1fr;gap:24px;padding-bottom:40px;display:grid}.reading-line{align-items:center;gap:14px;display:flex}.reading-line .bigicon{width:48px;height:48px}.rl-title{color:var(--on-surface);font-size:14.5px;font-weight:600}.rl-sub{color:var(--ll-muted);font-size:12px}.reading-line .progress{flex:1;width:auto;max-width:120px}.wotd-body{align-items:flex-start;gap:14px;display:flex}.wotd-body .bigicon{width:50px;height:50px}.wotd-word{color:var(--on-surface);font-size:17.5px;font-weight:600}.wotd-tr{color:var(--on-surface-muted);font-size:13px}.wotd-ex{color:var(--ll-muted);margin-top:5px;font-size:12px;font-style:italic}@media (width<=1080px){.greeting h1{font-size:26px}.stats-grid{grid-template-columns:1fr 1fr;gap:16px}.content-grid,.bottom-grid{grid-template-columns:1fr;gap:20px}}@media (width<=720px){.greeting{margin-bottom:18px}.greeting h1{font-size:22px}.greeting p{font-size:13.5px}.stats-grid{grid-template-columns:1fr;gap:12px;margin-bottom:18px}.content-grid,.bottom-grid{gap:16px;padding-bottom:16px}.main-col,.side-col{gap:16px}.card__header{padding:14px 16px}.card__body{padding:14px 16px 18px}.timeline--row .timeline__item{flex-direction:column;align-items:stretch;gap:2px}.timeline--row .timeline__item:before{inset-block-start:var(--space-4,16px);transform:translate(-50%)}.timeline--row .timeline__time{min-width:0}.timeline--row .timeline__count{align-self:flex-start;margin-block-start:4px}}.starter-card{margin-bottom:24px}.starter{flex-direction:column;gap:14px;display:flex}.starter__lead{color:var(--on-surface-muted);margin:0}.starter__actions{flex-wrap:wrap;gap:10px;display:flex}.starter__actions .btn svg,.starter__done .btn svg{width:18px;height:18px}.starter__done{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.starter__done div{flex-direction:column;flex:220px;gap:2px;display:flex}.starter__done span{color:var(--on-surface-muted);font-size:13.5px}.pagination{padding-top:var(--space-3,.75rem);flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;display:flex}.pagination__pages{align-items:center;gap:4px;margin:0;padding:0;list-style:none;display:flex}.pagination__btn{border-radius:var(--radius-sm);min-width:40px;height:40px;color:var(--on-surface);font:inherit;font-size:var(--fs-sm,.9rem);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0 10px;transition:background-color .15s ease-out,border-color .15s ease-out;display:inline-flex}.pagination__btn:hover:not(:disabled):not(.pagination__btn--current){background:var(--surface-2)}.pagination__btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.pagination__btn:disabled{opacity:.4;cursor:default}.pagination__btn--current{background:var(--primary-container);color:var(--on-primary-container);cursor:default;font-weight:600}.pagination__step{border-color:var(--outline)}.pagination__gap{text-align:center;min-width:24px;color:var(--on-surface-muted)}.pagination__total{text-align:center;color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem);flex-basis:100%}.pagination__pages--narrow{display:none}@media (width<=480px){.pagination__pages--wide{display:none}.pagination__pages--narrow{display:flex}.pagination__btn{min-width:44px;height:44px}}.speak-btn{vertical-align:middle;width:32px;min-width:32px;min-height:32px;color:var(--on-surface-muted);--icon-accent-opacity:0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.speak-btn svg{width:18px;height:18px}.speak-btn:hover{color:var(--on-surface);background:var(--surface-2)}.speak-btn--md{width:40px;min-width:40px;min-height:40px}.speak-btn--md svg{width:22px;height:22px}.speak-btn.is-playing,.speak-btn.is-loading{color:var(--on-primary-container);background:var(--primary-container);--icon-accent-opacity:1}.speak-btn.is-playing svg{animation:1.2s ease-in-out infinite speak-pulse}.speak-btn .spinner{margin:0}@keyframes speak-pulse{50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.speak-btn.is-playing svg{animation:none}}@media (pointer:coarse){.speak-btn{width:44px;min-width:44px;min-height:44px}}.speak-btn{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.speak-menu{z-index:var(--z-dropdown,1000);border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--outline);min-width:180px;box-shadow:var(--shadow-2);padding:6px;animation:.12s ease-out speak-menu-in;position:fixed}.speak-menu--above{transform:translateY(-100%)}.speak-menu__item{justify-content:space-between;align-items:center;gap:12px;min-height:40px;display:flex}.speak-menu__hint{color:var(--on-surface-muted);font-variant-numeric:tabular-nums;font-weight:500}@keyframes speak-menu-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.speak-menu{animation:none}}@media (pointer:coarse){.speak-menu__item{min-height:44px}}.speak-line{vertical-align:middle;align-items:center;gap:4px;max-width:100%;display:inline-flex}.speak-line>:first-child{overflow-wrap:anywhere;min-width:0}.lookup-group__head .speak-btn{align-self:center}.gloss-row__word .speak-line{align-self:flex-start}.tag-picker{min-width:0;margin:0;position:relative}.tag-picker__box{border:1px solid var(--outline-strong);border-radius:var(--radius-md);background:var(--surface-1);cursor:text;flex-wrap:wrap;align-items:center;gap:6px;min-height:44px;padding:5px 8px;transition:border-color .15s ease-out;display:flex}.tag-picker__box:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 25%,transparent)}.tag-picker__box.is-error{border-color:var(--on-error-container)}.tag-picker__box.is-disabled{opacity:.6;cursor:default}.tag-picker__input{min-width:120px;min-height:32px;color:var(--on-surface);font:inherit;background:0 0;border:0;outline:0;flex:120px;padding:0 4px}.tag-chip{background:color-mix(in srgb,var(--primary) 18%,var(--surface-1));color:var(--on-surface);white-space:nowrap;border-radius:999px;align-items:center;gap:2px;padding:2px 4px 2px 10px;font-size:13px;font-weight:600;line-height:20px;display:inline-flex}.tag-picker__list .tag-chip{padding-right:10px}.tag-chip__remove{width:20px;height:20px;color:var(--on-surface-muted);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:15px;line-height:1;display:inline-flex}.tag-chip__remove:hover{background:color-mix(in srgb,currentColor 16%,transparent);color:var(--on-surface)}.tag-chip__remove:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.tag-picker__list{z-index:var(--z-dropdown,1000);background:var(--surface-1);border:1px solid var(--outline-strong);border-radius:var(--radius-md);max-height:260px;box-shadow:var(--shadow-2);margin:4px 0 0;padding:4px;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.card:has(.tag-picker__list){overflow:visible}.tag-picker__list li{border-radius:var(--radius-sm);cursor:pointer;min-height:36px;color:var(--on-surface-muted);align-items:center;gap:8px;padding:4px 8px;font-size:13px;display:flex}.tag-picker__list li.is-active{background:var(--surface-2);color:var(--on-surface)}@media (pointer:coarse){.tag-picker__list li{min-height:44px}.tag-chip__remove{width:28px;height:28px}}@media (width<=560px){.tag-picker__input{font-size:16px}}.tag-picker__delete{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--on-surface-muted);cursor:pointer;opacity:0;background:0 0;border:0;justify-content:center;align-items:center;margin-left:auto;padding:0;transition:opacity .12s ease-out;display:inline-flex}.tag-picker__delete svg{width:15px;height:15px}.tag-picker__list li.is-active .tag-picker__delete,.tag-picker__list li:hover .tag-picker__delete{opacity:1}.tag-picker__delete:hover{color:var(--on-error-container);background:color-mix(in srgb,var(--on-error-container) 12%,transparent)}@media (pointer:coarse){.tag-picker__delete{opacity:1;width:40px;height:40px}}@media (prefers-reduced-motion:reduce){.tag-picker__delete{transition:none}}.tag-picker__empty{color:var(--on-surface-muted);padding:10px 12px;font-size:13px}.tag-picker__count{color:var(--on-surface-muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px}.tag-picker__count+.tag-picker__delete{margin-left:4px}.stats-grid.stats-grid--3{grid-template-columns:repeat(3,1fr)}@media (width<=1080px){.stats-grid.stats-grid--3{grid-template-columns:repeat(3,1fr)}}@media (width<=720px){.stats-grid.stats-grid--3{grid-template-columns:1fr}}.texts-list-card{margin-bottom:24px}.texts-list-card:last-child{margin-bottom:40px}.texts-toolbar{flex:360px;justify-content:flex-end}.texts-toolbar .input{max-width:320px}.vocab-empty .btn{margin-top:4px}.tfilters{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:16px 24px;display:grid}.tfilters__cell,.tfilters .tag-picker{flex-direction:column;gap:8px;min-width:0;display:flex}.tfilters__search{height:44px;font-size:16px}.tfilters .tseg{width:100%;display:flex}.tfilters .tseg .segmented__option{flex:auto}.tfilters .tseg .segmented__option>span{flex:1;min-height:34px}.tfilters .tag-picker__box{min-height:44px}@media (width<=1440px){.tfilters{grid-template-columns:repeat(2,minmax(0,1fr))}}.tfilters__more{display:contents}.tfilters__toggle{display:none}@media (width<=640px){.tfilters{grid-template-columns:minmax(0,1fr)}.tfilters .tseg .segmented__option>span{padding-inline:8px}.tfilters__toggle{justify-content:center;min-height:44px;display:inline-flex}.tfilters__more{flex-direction:column;gap:16px;display:flex}.tfilters__more:not(.is-open){display:none}}.tfilters__summary{align-items:center;gap:12px;display:flex}.tfilters__row{border:0;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;display:flex}.tfilters__label{color:var(--on-surface-muted);padding:0;font-size:12.5px;font-weight:600}.tfilters__pair{flex-wrap:wrap;gap:16px 32px;display:flex}.tfilters__reset{align-self:flex-start;align-items:center;gap:6px;display:inline-flex}.tfilters__reset svg{width:16px;height:16px}.tseg{scrollbar-width:none;align-self:flex-start;max-width:100%;overflow-x:auto}.tseg .segmented__option>span{justify-content:center;align-items:center;min-height:34px;padding:6px 14px;font-size:13px;display:inline-flex}@media (pointer:coarse){.tseg .segmented__option>span{min-height:44px}}.tseg i{opacity:.75;font-variant-numeric:tabular-nums;font-style:normal;font-weight:500}.tseg input:disabled+span{opacity:.45;cursor:default}.tseg--levels .segmented__option input:checked+span{background:var(--_tone,var(--primary));color:var(--on-gradient)}.tchips{flex-wrap:wrap;gap:8px;display:flex}.tchip{cursor:pointer;position:relative}.tchip input{opacity:0;pointer-events:none;position:absolute}.tchip span{border-radius:var(--radius-pill);border:1px solid var(--outline);background:var(--surface-1);align-items:center;gap:6px;padding:6px 14px;font-size:13.5px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.tchip span i{color:var(--on-surface-muted);font-style:normal;font-weight:500}.tchip:hover span{border-color:var(--_tone,var(--primary))}.tchip input:checked+span{background:var(--_tone,var(--primary));border-color:var(--_tone,var(--primary));color:var(--on-gradient)}.tchip input:checked+span i{color:inherit}.tchip input:focus-visible+span{outline:2px solid var(--primary);outline-offset:2px}.tlib-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;display:grid}.tlib{border-radius:var(--radius-lg);border:1px solid var(--outline);background:linear-gradient(170deg,var(--_tone-soft) 0%,var(--surface-1) 60%);min-height:132px;color:inherit;flex-direction:column;gap:8px;padding:16px 16px 18px;text-decoration:none;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;position:relative;overflow:hidden}.tlib:after{content:"";background:var(--_tone);height:4px;position:absolute;bottom:0;left:0;right:0}.tlib:hover{border-color:var(--_tone);transform:translateY(-2px);box-shadow:0 10px 24px #00000014}.tlib:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.level-pill{border-radius:var(--radius-pill);background:var(--_tone);color:var(--on-gradient);letter-spacing:.02em;align-self:flex-start;padding:2px 10px;font-size:12px;font-weight:700;display:inline-block}.tlib__meta{color:var(--on-surface-muted);font-size:12.5px;line-height:1.4}.tlib__title{font-size:16px;font-weight:700;line-height:1.3}.tlib__status{color:var(--on-surface-muted);align-items:center;gap:4px;margin-top:auto;font-size:12.5px;display:flex}.tlib__status svg{width:14px;height:14px}.tlib.is-read:after{opacity:.35}@media (prefers-reduced-motion:reduce){.tlib{transition:none}.tlib:hover{transform:none}}.wset-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;display:grid}.wset{font:inherit;text-align:left;cursor:pointer;min-height:168px}.wset__head{justify-content:space-between;align-items:center;gap:8px;min-height:22px;display:flex}.wset__tags{color:var(--on-surface-muted);font-size:12px;font-weight:700}.wset__taken{color:var(--ll-good);align-items:center;gap:4px;font-size:12px;font-weight:600;display:inline-flex}.wset__taken svg{width:14px;height:14px}.wset__progress{border-radius:var(--radius-pill);background:var(--outline);height:6px;margin-top:auto;display:block;overflow:hidden}.wset__progress span{border-radius:inherit;background:var(--_tone);height:100%;transition:width .4s;display:block}.wset .tlib__status{margin-top:0}.wset-modal{max-width:560px}.wset-modal .alert a{color:inherit;text-underline-offset:2px;font-weight:600;text-decoration:underline}.wset-modal__head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.wset-modal__head .btn svg{width:16px;height:16px}.wset-modal .modal__actions .btn{white-space:nowrap}.wset-modal .modal__actions .btn svg{width:16px;height:16px}.wset-words{border-top:1px solid var(--outline);max-height:min(52dvh,480px);margin:16px 0 0;padding:0;list-style:none;overflow-y:auto}.wset-words li{border-bottom:1px solid var(--outline);grid-template-columns:minmax(0,1fr) minmax(0,1fr) 84px;align-items:baseline;gap:12px;padding:8px 2px;display:grid}.wset-words__en b{font-weight:600}.wset-words__en i{color:var(--on-surface-muted);margin-left:6px;font-size:12.5px;font-style:normal}.wset-words__uk{color:var(--on-surface-muted)}.wset-words__status{color:var(--ll-good);white-space:nowrap;text-align:right;font-size:12px}.wset-words--page{border-top:0;max-height:none;margin:0}.wset-toolbar{flex-wrap:wrap;align-items:flex-end;gap:14px 28px;display:flex}.wset-toolbar .tfilters__row{margin:0}.wset-toolbar__create{margin-left:auto}.wset-toolbar .btn svg{width:16px;height:16px}.wset-page>.card+.card{margin-top:20px}.wset-words--page li{box-shadow:inset 0 0 0 1px var(--outline);border-bottom:0;border-radius:10px;grid-template-columns:18px minmax(0,1fr) minmax(0,1fr) 84px 72px;align-items:center;margin-bottom:4px;padding:6px 6px 6px 12px}.wset-words--page li[class]{box-shadow:none}.wset-words__check,.wset-words__all input{cursor:pointer;width:16px;height:16px;accent-color:var(--primary);margin:0}.wset-words__all{color:var(--on-surface-muted);cursor:pointer;align-items:center;gap:10px;margin:0 0 8px 12px;font-size:13px;display:inline-flex}.wset-bulk{margin-top:12px}.wset-words__actions{justify-content:flex-end;gap:4px;display:flex}.wset-words__action{justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex}.wset-words__action svg{width:16px;height:16px}.wset-words--page li.is-new{background:var(--ll-sky-soft)}.wset-words--page li.is-learning{background:var(--ll-peach-soft)}.wset-words--page li.is-learned{background:var(--ll-mint-soft)}.wset-page__head{margin-top:12px}.wset-page__head:has(.wset-page__meta)>.wset-page__own{grid-row:2}.wset-page__own{flex-shrink:0;gap:8px;display:flex}.wset-page__own .btn svg{width:15px;height:15px}.wset-page__title{flex-wrap:wrap;align-items:center;gap:6px 14px;display:flex}.wset-own{border-radius:var(--radius-pill);background:var(--ll-lavender-soft);border:1px solid color-mix(in srgb,var(--ll-lavender) 50%,transparent);letter-spacing:.01em;color:var(--on-surface);align-items:center;gap:6px;padding:4px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.wset-own svg{width:14px;height:14px}.wset-page__source{color:var(--on-surface-muted);margin:6px 0 0;font-size:13.5px}.wset-page__source a{color:var(--ll-good);font-weight:600}.wset-page__meta{align-items:center;gap:10px;margin-bottom:8px;display:flex}.wset-page__summary{flex-direction:column;gap:14px;display:flex}.wset-page__progress{flex-direction:column;gap:8px;display:flex}.wset-page__progress .wset__progress{height:8px;margin-top:0}.wset-page__actions{flex-wrap:wrap;gap:10px;display:flex}.wset-page__actions .btn svg{width:16px;height:16px}.wset-page__hint{color:var(--on-surface-muted);margin:0;font-size:13px}.wset-search{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;display:flex}.wset-search .input{flex:220px;max-width:340px}.tchip input:disabled+span{opacity:.45;cursor:default}.wset-page__empty{text-align:center;color:var(--on-surface-muted);margin:8px 0}.wset-page__empty a{color:var(--ll-good);font-weight:600}.wset-modal .field{flex-direction:column;gap:6px;margin-top:12px;display:flex}.addset{flex-direction:column;gap:6px;max-height:min(46dvh,380px);margin-top:8px;padding:2px;display:flex;overflow-y:auto}.addset__option input{accent-color:var(--primary)}.addset__new{margin-top:10px}.addset__hint{color:var(--on-surface-muted);margin:6px 0 0;font-size:13px}.addset__done{flex-direction:column;gap:2px;margin:0;padding-left:18px;display:flex}.addset__done a{color:inherit;text-underline-offset:2px;font-weight:600;text-decoration:underline}.wset-modal .modal__actions{margin-top:18px}.addset__option{border:1px solid var(--outline);cursor:pointer;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;transition:border-color .2s,background .2s;display:grid}.addset__option.is-selected{border-color:var(--primary);background:var(--surface-2)}.addset__title{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;min-width:0;font-weight:600;display:inline-flex;overflow:hidden}.addset__title svg{width:16px;height:16px}.addset__meta{color:var(--on-surface-muted);white-space:nowrap;font-size:12.5px}.twords-switch{align-self:flex-start;margin-top:10px}.twords-set{border-top:1px solid var(--outline);color:var(--on-surface-muted);flex-direction:column;gap:8px;margin-top:14px;padding-top:12px;font-size:13px;display:flex}.twords-set__row{gap:8px;display:flex}.twords-set__row .input{flex:1;min-width:0}.twords-set .btn svg{width:15px;height:15px}.xpick{flex-direction:column;gap:8px;margin-top:4px;display:flex}.xpick__mode{border:1px solid var(--outline);background:var(--surface-1);color:inherit;border-radius:14px;align-items:center;gap:14px;padding:12px 14px;text-decoration:none;transition:border-color .2s,background .2s,transform .2s;display:flex}.xpick__mode:hover{border-color:var(--_tone);background:var(--_tone-soft);transform:translateY(-1px)}.xpick__mode:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.xpick__mode.is-empty{opacity:.55}.xpick__mode>.bigicon{flex-shrink:0;width:44px;height:44px}.xpick__body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.xpick__name{font-weight:600}.xpick__name i{color:var(--on-surface-muted);font-style:normal;font-weight:500}.xpick__name em{border-radius:var(--radius-pill);background:var(--_tone-soft);color:var(--on-surface);margin-left:8px;padding:1px 8px;font-size:11.5px;font-style:normal;font-weight:600}.xpick__desc{color:var(--on-surface-muted);font-size:13px}.xpick__count{white-space:nowrap;color:var(--on-surface-muted);font-size:13px;font-weight:600}@media (width<=560px){.xpick__mode{flex-wrap:wrap}.xpick__count{margin-left:58px}}.texts-list-card .card__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.modal--form{max-width:640px}.texts-form{gap:var(--space-4,1rem);margin-top:var(--space-4,1rem);flex-direction:column;display:flex}.texts-form__body{resize:vertical;min-height:11rem;font:inherit}@media (width<=720px){.texts-list-card{margin-bottom:16px}.tlib-grid{grid-template-columns:1fr 1fr;gap:10px}.tlib{min-height:112px;padding:12px 12px 14px}.tlib__title{font-size:14.5px}.wset-grid{grid-template-columns:1fr}.wset{min-height:0}.wset-words li{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}.wset-words--page li{grid-template-columns:18px minmax(0,1fr) minmax(0,1fr) auto auto}.modal-overlay--sheet{place-items:end stretch;padding:0}.modal--form{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-width:none;max-height:92dvh;padding-bottom:max(24px,env(safe-area-inset-bottom));overflow-y:auto}.texts-form__body{min-height:8rem}}.tpick{flex-direction:column;gap:36px;padding-bottom:40px;display:flex}.tfeature{border:1px solid var(--outline);background:linear-gradient(135deg,var(--_tone-soft) 0%,var(--surface-1) 70%);border-radius:24px;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:28px 30px;display:grid;position:relative;overflow:hidden}.tfeature:after{content:"";background:var(--_tone);height:4px;position:absolute;bottom:0;left:0;right:0}.tfeature--loading{border:0;min-height:150px}.tfeature__icon{background:var(--surface-1);border:1px solid var(--outline);border-radius:20px;justify-content:center;align-items:center;width:84px;height:84px;display:flex}.tfeature__icon .bigicon{width:58px;height:58px}.tfeature--done>.bigicon{width:84px;height:84px}.tfeature__body{flex-direction:column;gap:6px;min-width:0;display:flex}.tfeature__eyebrow{letter-spacing:1.2px;text-transform:uppercase;color:var(--ll-muted);font-size:12px;font-weight:600}.tfeature__title{margin:0;font-size:24px;font-weight:700;line-height:1.2}.tfeature__title span{color:var(--on-surface-muted);font-weight:500}.tfeature__desc{color:var(--on-surface-muted);margin:0;font-size:14.5px}.tfeature__side{flex-direction:column;align-items:flex-end;gap:14px;display:flex}.tfeature__count{align-items:baseline;gap:6px;display:flex}.tfeature__count b{font-variant-numeric:tabular-nums;font-size:40px;font-weight:700;line-height:1}.tfeature__count span{color:var(--on-surface-muted);font-size:13px}.tfeature .tmode__meta{margin-top:4px}.tsection{flex-direction:column;gap:14px;display:flex}.tsection__head{align-items:baseline;gap:12px;display:flex}.tsection__head h2{margin:0;font-size:20px;font-weight:700}.tsection__note{color:var(--ll-muted);font-size:13px}.tsection__action{margin-left:auto}.tmodes{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.tpick-pair{grid-template-columns:1fr 1fr;gap:16px 24px;display:grid}.tpick-pair .tmodes{grid-template-columns:repeat(2,minmax(0,1fr))}.tmode{border:1px solid var(--outline);background:linear-gradient(170deg,var(--_tone-soft) 0%,var(--surface-1) 55%);min-height:236px;color:inherit;border-radius:20px;flex-direction:column;gap:6px;padding:20px 20px 22px;transition:border-color .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.tmode:after{content:"";background:var(--_tone);height:4px;position:absolute;bottom:0;left:0;right:0}.tmode:hover{border-color:var(--_tone);box-shadow:0 10px 24px #00000014}.tmode:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.tmode__icon{background:var(--surface-1);border:1px solid var(--outline);border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:10px;display:flex}.tmode__icon .bigicon{width:36px;height:36px}.tmode__name{font-size:17px;font-weight:700;line-height:1.25}.tmode__desc{color:var(--on-surface-muted);font-size:13px;line-height:1.4}.tmode__meta{color:var(--ll-muted);flex-wrap:wrap;gap:6px 12px;font-size:12.5px;display:flex}.tmode__meta b{color:var(--on-surface);font-weight:600}.tmode__foot{justify-content:space-between;align-items:baseline;gap:10px;margin-top:auto;padding-top:14px;display:flex}.tmode__count{font-variant-numeric:tabular-nums;font-size:28px;font-weight:700;line-height:1}.tmode__split{color:var(--on-surface-muted);text-align:right;font-size:12px}.tmode.is-empty .tmode__count{color:var(--ll-muted)}.tmode.is-empty:after{opacity:.35}.training-shell{flex-direction:column;gap:16px;max-width:620px;margin:0 auto;padding-bottom:40px;display:flex}.tset-banner{background:var(--ll-lavender-soft);border:1px solid color-mix(in srgb,var(--ll-lavender) 45%,transparent);color:var(--on-surface);border-radius:14px;align-items:center;gap:12px;padding:10px 12px 10px 16px;font-size:14px;display:flex}.tset-banner>svg{width:20px;height:20px;color:var(--primary);flex-shrink:0}.tset-banner>span{flex:1;min-width:0}.tset-banner .btn{white-space:nowrap;flex-shrink:0}.tset-banner .btn svg{width:14px;height:14px}@media (width<=560px){.tset-banner{flex-wrap:wrap}.tset-banner>span{flex:220px}.tset-banner .btn{margin-left:auto}}.tsetup-body{flex-direction:column;gap:18px;display:flex}.tsetup-head{align-items:center;gap:16px;display:flex}.tsetup-head .bigicon{width:64px;height:64px}.tsetup-name{font-size:19px;font-weight:600}.tsetup-desc{color:var(--on-surface-muted);font-size:13px}.tsetup-counts{flex-wrap:wrap;gap:10px;display:flex}.tcount-pill{background:var(--surface-2);border-radius:var(--radius-pill);color:var(--on-surface-muted);align-items:center;gap:6px;padding:6px 14px;font-size:13px;display:inline-flex}.tcount-pill b{color:var(--on-surface);font-size:14px}.tlimit b{color:var(--on-surface)}.tlimit--compact{color:var(--on-surface-muted);flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:13px;display:flex}.tlimit--compact .card__actions{gap:8px;margin:0}.tsetup-label{letter-spacing:1.2px;text-transform:uppercase;color:var(--ll-muted);font-size:12px;font-weight:600}.size-seg{gap:10px;display:flex}.size-btn{border:2px solid var(--outline);border-radius:var(--radius-md);color:inherit;cursor:pointer;font:inherit;background:0 0;flex-direction:column;flex:1;align-items:center;gap:2px;padding:12px 8px;transition:border-color .25s,background-color .25s;display:flex}.size-btn:hover{border-color:var(--primary)}.size-btn.active{border-color:var(--primary);background:var(--ll-acc-soft)}.size-btn b{font-size:18px;font-weight:700}.size-btn span{color:var(--on-surface-muted);font-size:11.5px}.tsession-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.tsession-label{align-items:center;gap:10px;font-size:14.5px;font-weight:600;display:flex}.tsession-label .bigicon{width:30px;height:30px}.training-bar{background:var(--surface-2);border-radius:3px;height:6px;overflow:hidden}.training-bar i{background:var(--gradient);border-radius:3px;height:100%;transition:width .3s;display:block}.tdone{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:10px 0 4px;display:flex}.tdone .bigicon{width:88px;height:88px}.tdone-title{font-size:19px;font-weight:600}.tdone-nums{gap:26px;display:flex}.tdone-num{flex-direction:column;align-items:center;gap:2px;display:flex}.tdone-num b{font-size:23px;font-weight:700}.tdone-num span{color:var(--ll-muted);font-size:12px}.tdone-note{color:var(--on-surface-muted);max-width:36ch;font-size:13px}.ttry-missed{text-align:left;flex-direction:column;gap:6px;width:100%;max-width:420px;margin:0;padding:0;list-style:none;display:flex}.ttry-missed li{background:var(--surface-2);border-radius:10px;justify-content:space-between;gap:12px;padding:8px 12px;font-size:14px;display:flex}.ttry-missed span{color:var(--on-surface-muted);text-align:right}.tdone .card__actions{flex-wrap:wrap;justify-content:center}.tresults{text-align:left;flex-direction:column;gap:8px;width:100%;max-width:520px;display:flex}.tresults__title{color:var(--on-surface-muted);font-size:13px;font-weight:600}.tresults__list{border:1px solid var(--outline);border-radius:12px;flex-direction:column;margin:0;padding:0;list-style:none;display:flex;overflow:hidden}.tresults__row{justify-content:space-between;align-items:center;gap:12px;padding:9px 14px;font-size:14px;display:flex}.tresults__row+.tresults__row{border-top:1px solid var(--outline)}.tresults__entry{flex-direction:column;gap:1px;min-width:0;display:flex}.tresults__entry b{overflow-wrap:anywhere;font-weight:600}.tresults__entry span{color:var(--on-surface-muted);overflow-wrap:anywhere;font-size:13px}.tresults__grade{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:3px;display:flex}.tresults__grade small{color:var(--on-surface-muted);white-space:nowrap;font-size:12px}.tdone .btn svg{width:16px;height:16px}html:has(.training-shell){scrollbar-gutter:stable}.training-choices+.card__actions,.training-typing+.alert,.alert+.card__actions{margin-top:14px}.training-details{border-top:1px solid var(--outline);flex-direction:column;gap:10px;margin-top:18px;padding-top:18px;display:flex}.training-examples{text-align:left;flex-direction:column;gap:10px;display:flex}.training-example{border-radius:var(--radius-md);background:var(--surface-1);border:1px solid var(--outline);padding:10px 14px}.training-example__en{font-size:15px;line-height:1.45}.training-example__en mark{color:inherit;text-decoration:underline;-webkit-text-decoration-color:var(--primary);text-decoration-color:var(--primary);text-underline-offset:3px;background:0 0;font-weight:700}.training-example__uk{color:var(--on-surface-muted);margin-top:2px;font-size:13.5px}.training-accordion{text-align:left}.training-accordion .accordion__head{padding:10px 14px;font-size:14px;font-weight:600}.training-accordion .accordion__head .badge{margin-left:6px}.training-forms__body{padding:0 4px 6px}.training-forms__body .table{font-size:14px}.training-forms__body tr.is-current td{background:color-mix(in srgb,var(--primary) 12%,transparent)}.training-forms__form{flex-wrap:wrap;align-items:baseline;gap:0 8px;display:flex}.training-forms__pron{color:var(--on-surface-muted);font-size:12.5px}.training-forms__label{color:var(--on-surface-muted);font-size:12px}.training-senses{margin:0;padding:0 14px 8px;list-style:none}.training-senses li{border-top:1px solid var(--outline);padding:8px 0}.training-senses__translations{font-size:14px}.training-senses__context{color:var(--on-surface-muted);font-size:12.5px;font-style:italic}@media (width<=1100px){.tmodes{grid-template-columns:repeat(2,minmax(0,1fr))}.tpick-pair{grid-template-columns:1fr;gap:36px}}@media (width<=860px){.tfeature{grid-template-columns:auto 1fr;padding:22px}.tfeature__side{flex-direction:row;grid-column:1/-1;justify-content:space-between;align-items:center}}@media (width<=720px){.tpick{gap:28px;padding-bottom:16px}.tfeature{grid-template-columns:1fr;gap:16px}.tfeature__icon,.tfeature--done>.bigicon{width:64px;height:64px}.tfeature__icon .bigicon{width:44px;height:44px}.tmodes{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tmode{min-height:210px;padding:16px 16px 20px}.tmode__count{font-size:24px}.training-shell{padding-bottom:16px}.size-seg{gap:8px}.tdone-nums{gap:18px}}.training-face--sentence{min-height:11rem}.training-face--sentence .training-face__prompt{font-size:1.6rem;line-height:1.3}.tiles-answer{border:2px dashed var(--outline);border-radius:var(--radius-md);flex-wrap:wrap;align-items:center;gap:8px;min-height:56px;padding:10px;display:flex}.tiles-answer.is-locked{border-style:solid}.tiles-answer__placeholder{color:var(--on-surface-muted);padding:0 4px;font-size:13.5px}.tiles-bank{flex-wrap:wrap;justify-content:center;gap:8px;min-height:42px;margin-top:14px;display:flex}.tile{border:1.5px solid var(--outline);border-radius:var(--radius-md);background:var(--surface-1);color:inherit;font:inherit;cursor:pointer;padding:8px 14px;font-size:15.5px;transition:border-color .2s,opacity .2s,transform .1s}.tile:hover:not(:disabled){border-color:var(--primary)}.tile:active:not(:disabled){transform:scale(.96)}.tiles-bank .tile:disabled{opacity:.25;cursor:default}.tiles-answer .tile:disabled{cursor:default}.tiles-bank+.card__actions,.tiles-bank+.alert{margin-top:16px}.training-typing--sentence{flex-direction:column;align-items:stretch}.training-typing--sentence .textarea{resize:vertical;width:100%;font-size:16px}.training-typing__buttons{flex-wrap:wrap;gap:8px;display:flex}.training-sentence-verdict{flex-direction:column;gap:4px;display:flex}.sentence-diff{font-size:15px;line-height:1.6}.sentence-diff ins{color:var(--success,#16a34a);background:color-mix(in srgb,var(--success,#16a34a) 14%,transparent);border-radius:4px;padding:0 2px;font-weight:600;text-decoration:none}.sentence-diff del{color:var(--error,#dc2626);background:color-mix(in srgb,var(--error,#dc2626) 12%,transparent);border-radius:4px;padding:0 2px}.training-typing--sentence+.alert{margin-top:14px}.tsource-tabs .tab{min-height:44px}.tsource-note{color:var(--on-surface-muted);margin:0;font-size:13.5px;line-height:1.5}.tsession-right{align-items:center;gap:10px;display:flex}.tsession-right .btn{min-height:36px}.known-undo{z-index:50;background:var(--surface-1);align-items:center;width:min(560px,100vw - 32px);position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0000002e}.known-undo .alert__body{flex:1}@media (width<=720px){.known-undo{bottom:calc(76px + env(safe-area-inset-bottom))}}.training-details__report{justify-content:flex-end;display:flex}.training-face__revealed{margin-top:8px;font-size:1.15rem;font-weight:600}.training-face__prompt .speak-line{gap:14px}.training-face__revealed .speak-line{gap:10px}.training-forms__form .speak-btn{align-self:center}.training-sentence-verdict__speak{align-self:flex-start;margin-left:auto}.training-face--listen{min-height:17.5rem}.training-listen{flex-direction:column;align-items:center;gap:10px;padding:4px 0 2px;display:flex}.training-listen__play{border:1px solid var(--outline);background:var(--primary-container);width:88px;height:88px;color:var(--on-primary-container);cursor:pointer;--icon-accent-opacity:1;border-radius:50%;justify-content:center;align-items:center;transition:transform .12s ease-out,box-shadow .2s;display:flex}.training-listen__play svg{width:40px;height:40px}.training-listen__play:hover{box-shadow:0 8px 20px #0000001a}.training-listen__play:active{transform:scale(.96)}.training-listen__play:focus-visible{outline:2px solid var(--primary);outline-offset:3px}.training-listen__play.is-playing svg{animation:1.2s ease-in-out infinite speak-pulse}.training-listen__play .spinner{margin:0}@media (prefers-reduced-motion:reduce){.training-listen__play{transition:none}.training-listen__play.is-playing svg{animation:none}}.tautoplay{width:34px;color:var(--on-surface-muted);justify-content:center;padding:0}.tautoplay[aria-pressed=true]{color:var(--on-surface)}.tautoplay svg{width:18px;height:18px}.practice-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.practice-head .back-link{min-height:44px}.practice-title{margin:0;font-size:26px;font-weight:700;line-height:1.2}.practice-lead{color:var(--on-surface-muted);margin:6px 0 0;font-size:14.5px;line-height:1.5}.psetup{flex-direction:column;gap:22px;display:flex}.pfield{border:0;flex-direction:column;gap:8px;min-width:0;margin:0;padding:0;display:flex}.pfield .field__hint{margin:0}.pseg{flex-wrap:wrap}.pseg .segmented__option{flex:auto}.pseg .segmented__option span{justify-content:center;align-items:center;min-height:44px;display:flex}.pseg .segmented__option input:focus-visible+span{outline:2px solid var(--primary);outline-offset:2px}.psetup .tabs .tab{min-height:44px}.psetup .select,.psetup .input{min-height:44px;font-size:16px}.practice-start{max-width:140px}.ptypes{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.ptype{cursor:pointer;display:flex;position:relative}.ptype input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.ptype span{border:1.5px solid var(--outline);border-radius:var(--radius-md);flex-direction:column;flex:1;gap:2px;min-height:44px;padding:9px 12px;transition:border-color .2s,background-color .2s;display:flex}.ptype b{font-size:14px;font-weight:600}.ptype i{color:var(--on-surface-muted);font-size:12.5px;font-style:normal}.ptype:hover span{border-color:var(--primary)}.ptype input:checked+span{border-color:var(--primary);background:var(--ll-acc-soft)}.ptype input:focus-visible+span{outline:2px solid var(--primary);outline-offset:2px}.practice-generating{color:var(--on-surface-muted);flex-direction:column;gap:10px;font-size:14px;display:flex}.practice-generating__bar{overflow:hidden}.practice-generating__bar .progress__bar{width:35%;animation:1.4s ease-in-out infinite practice-indeterminate}@keyframes practice-indeterminate{0%{transform:translate(-110%)}to{transform:translate(300%)}}.practice-session-label{color:var(--on-surface-muted);font-size:13px;font-weight:500}.practice-answer-error{margin-top:14px}.practice-learn{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.practice-learn .btn{min-height:44px}.practice-learn--done{color:var(--on-surface-muted);margin:0;font-size:14px}.skeleton{background:var(--surface-2);border-radius:var(--radius-md);position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--surface-1) 60%,transparent),transparent);animation:1.4s ease-in-out infinite practice-shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes practice-shimmer{to{transform:translate(100%)}}.practice-skeleton--line{width:40%;height:14px}.practice-skeleton--prompt{width:80%;height:64px;margin:28px auto}.practice-skeleton--answer,.practice-skeleton--row{height:56px}.practice-skeleton+.practice-skeleton{margin-top:10px}.practice-link-button{font:inherit;cursor:pointer;background:0 0;border:0;min-height:44px;padding:0;font-size:13px}.practice-empty{color:var(--on-surface-muted);text-align:center;margin:0;padding:8px 0}.practice-review{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.practice-review__row{border-top:1px solid var(--outline);flex-direction:column;gap:4px;padding:14px 0;display:flex;position:relative}.practice-review__row:first-child{border-top:0;padding-top:0}.practice-review__prompt{padding-right:90px;font-size:15.5px;font-weight:600;line-height:1.4}.practice-review__answer,.practice-review__reference,.practice-review__judge{font-size:14.5px;line-height:1.5}.practice-review__answer.is-missed{text-decoration:line-through;-webkit-text-decoration-color:var(--error);text-decoration-color:var(--error);text-decoration-thickness:1.5px}.practice-review__answer.is-missed .practice-review__label{text-decoration:none;display:inline-block}.practice-review__label{color:var(--on-surface-muted);font-size:13px}.practice-review__judge{color:var(--on-surface-muted);font-size:13.5px}.practice-review__row .practice-outcome{position:absolute;top:14px;right:0}.practice-review__row:first-child .practice-outcome{top:0}.practice-outcome{border-radius:var(--radius-pill);white-space:nowrap;background:var(--surface-2);color:var(--on-surface-muted);align-items:center;padding:2px 10px;font-size:12px;font-weight:600;display:inline-flex}.practice-outcome--correct{background:color-mix(in srgb,var(--success) 16%,transparent);color:var(--on-surface)}.practice-outcome--almost{background:color-mix(in srgb,var(--warning) 20%,transparent);color:var(--on-surface)}.practice-outcome--wrong,.practice-outcome--skipped{background:color-mix(in srgb,var(--error) 14%,transparent);color:var(--on-surface)}.practice-history{flex-direction:column;margin:0;list-style:none;display:flex}.practice-history li+li{border-top:1px solid var(--outline)}.practice-history__row{min-height:56px;color:inherit;border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:16px;padding:12px 4px;transition:background-color .2s;display:flex}.practice-history__row:hover{background:var(--surface-1)}.practice-history__row:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.practice-history__main{flex-direction:column;gap:2px;min-width:0;display:flex}.practice-history__title{font-size:14.5px;font-weight:600}.practice-history__desc{color:var(--on-surface-muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.practice-history__side{color:var(--on-surface-muted);flex-direction:column;flex:none;align-items:flex-end;gap:2px;font-size:12.5px;display:flex}.practice-history__score{color:var(--on-surface);font-size:14px}.practice-history__score b{font-size:16px}.practice-history__more{justify-content:center;padding:0 16px 16px}@media (width<=720px){.ptypes{grid-template-columns:1fr}.practice-title{font-size:22px}}@media (prefers-reduced-motion:reduce){.practice-generating__bar .progress__bar{opacity:.5;width:100%;animation:none}.skeleton:after{animation:none}}.practice-history-link{min-height:44px;color:var(--on-surface-muted);align-self:center;align-items:center;font-size:14px;font-weight:500;transition:color .2s;display:inline-flex}.practice-history-link:hover{color:var(--ll-good)}.profile-page{flex-direction:column;gap:20px;max-width:560px;display:flex}.profile-card{flex-direction:column;gap:14px;padding:22px 24px;display:flex}.profile-card__title{margin:0;font-size:17px;font-weight:600}.profile-card__text{color:var(--ll-muted);margin:0;font-size:14px;line-height:1.5}.profile-card__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.profile-card__hint{color:var(--ll-muted);margin-right:auto;font-size:13px}.profile-card--danger{border-color:color-mix(in srgb,var(--error,#d9534f) 35%,var(--outline))}.profile-delete-modal{flex-direction:column;gap:14px;display:flex}.profile-delete-modal .modal__title,.profile-delete-modal .modal__body{margin:0}.profile-delete-modal .modal__actions{margin-top:6px}@media (width<=600px){.profile-card{padding:18px 16px}}.profile-card__actions--start{justify-content:flex-start}.profile-switch{cursor:pointer;align-items:flex-start;gap:12px;font-size:14px;display:flex}.profile-switch .switch{margin-top:1px}.profile-switch__hint{margin-top:2px;display:block}.report-modal{overscroll-behavior:contain;flex-direction:column;gap:12px;width:calc(100vw - 32px);max-width:480px;max-height:calc(100dvh - 32px);display:flex;overflow-y:auto}.report-modal__head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.report-modal__head .modal__title{overflow-wrap:anywhere;margin:0}.report-modal__close{min-width:44px;min-height:44px}.report-modal__sense{overflow-wrap:anywhere;margin:0}.report-modal__gloss{color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem)}.report-modal__optional{color:var(--on-surface-muted);font-weight:400}.report-modal__choices{border:0;flex-direction:column;gap:4px;margin:0;padding:0;display:flex}.report-modal__choice{border-radius:var(--radius-md);cursor:pointer;flex-wrap:wrap;align-items:center;gap:10px;min-height:44px;padding:0 8px;display:flex}.report-modal__choice:hover{background:var(--surface-2)}.report-modal__choice input{width:18px;height:18px;accent-color:var(--primary);flex-shrink:0}.report-modal .field{margin:0}.report-modal textarea{font-size:16px}.report-modal .modal__actions{flex-wrap:wrap}.report-modal .modal__actions .btn{min-height:44px}@media (width<=520px){.report-modal .modal__actions{flex-direction:column-reverse}.report-modal .modal__actions .btn{width:100%}}@media (width<=720px){.report-modal{width:auto;max-width:none;max-height:92dvh}}.report-trigger{color:var(--on-surface-muted);align-items:center;gap:6px;min-height:36px;display:inline-flex}.report-trigger:hover{color:var(--on-surface)}.report-trigger svg{width:16px;height:16px}@media (pointer:coarse){.report-trigger{min-height:44px}}.vocab-grid{grid-template-columns:1fr 360px;gap:24px;padding-bottom:40px;display:grid}.vocab-main,.vocab-side{flex-direction:column;gap:24px;min-width:0;display:flex}.vocab-add-card{overflow:visible}.vocab-add-card .card__body{gap:var(--space-3,12px);flex-direction:column;display:flex}.vocab-list-card .card__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.table-wrap{overflow-x:auto}.vocab-table{min-width:480px}.vocab-table__hint{color:var(--on-surface-muted);font-size:var(--fs-sm,.9rem)}.vocab-table__remove{opacity:.5}.vocab-table__remove:hover{opacity:1}.vocab-status{padding:var(--space-6,1.5rem);place-items:center;display:grid}.vocab-empty{text-align:center;color:var(--on-surface-muted);flex-direction:column;align-items:center;gap:12px;margin:0;padding:26px 16px 30px;display:flex}.vocab-empty .bigicon{width:72px;height:72px}.vocab-tips{flex-direction:column;gap:14px;display:flex}.vocab-tip{align-items:flex-start;gap:12px;display:flex}.vocab-tip .bigicon{width:42px;height:42px}.vocab-tip b{color:var(--on-surface);font-size:14px;font-weight:600;display:block}.vocab-tip span:not(.bigicon){color:var(--on-surface-muted);font-size:12.5px}@media (width<=1440px){.vocab-grid{grid-template-columns:1fr 320px}}@media (width<=1080px){.vocab-grid{grid-template-columns:1fr;gap:20px}}@media (width<=720px){.vocab-grid,.vocab-main,.vocab-side{gap:16px}.vocab-table{min-width:480px}}.vocab-table__actions{white-space:nowrap;text-align:right}.vocab-table__actions .btn+.btn{margin-left:4px}.vocab-table__set{opacity:.6}.vocab-table__set:hover{opacity:1}.vocab-table__actions .btn{vertical-align:middle;justify-content:center;align-items:center;width:32px;height:32px;min-height:32px;padding:0;display:inline-flex}.vocab-table__actions .btn svg{width:16px;height:16px}.vocab-table__check{width:28px;padding-right:0!important}.vocab-table__check input{cursor:pointer;width:16px;height:16px;accent-color:var(--primary)}.vocab-table tr.is-selected td{background:var(--surface-2)}.vocab-bulk{z-index:5;border:1px solid var(--outline);background:var(--surface-1);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;padding:10px 12px 10px 16px;font-size:14px;display:flex;position:sticky;bottom:16px;box-shadow:0 8px 24px #0000002e}@media (width<=768px){.vocab-bulk{bottom:88px}}.vocab-bulk>span{flex:1;min-width:120px;font-weight:600}.vocab-bulk .btn svg{width:15px;height:15px}.vocab-known.is-known{color:var(--ll-good)}@media (width<=1440px){.vocab-table__date{display:none}}.vocab-list-card{overflow:clip}.vfilters{flex-wrap:wrap;align-items:center;gap:10px 12px;margin-bottom:14px;display:flex}.vfilters__search{flex:200px;min-width:160px;max-width:340px}.vfilters__select{flex:0 auto;width:auto;min-width:140px}.vfilters__reset{margin-left:auto}.vfilters__reset svg{width:14px;height:14px}.vfilters{--_h:38px}.vfilters .input{height:var(--_h);min-height:var(--_h);box-sizing:border-box;padding-top:0;padding-bottom:0}.vfilters .tseg .segmented__option>span{min-height:calc(var(--_h) - 10px);padding-top:0;padding-bottom:0}.vfilters__reset{height:var(--_h);min-height:var(--_h);align-items:center;gap:6px;display:inline-flex}@media (width<=640px){.vocab-list-card .card__header>.segmented,.vfilters .tseg{align-self:stretch;width:100%;display:flex}.vocab-list-card .card__header>.segmented .segmented__option,.vfilters .tseg .segmented__option{flex:auto;min-width:0}.vocab-list-card .card__header>.segmented .segmented__option>span,.vfilters .tseg .segmented__option>span{width:100%;padding-inline:6px}.vfilters__search{flex-basis:100%;max-width:none}.vfilters__reset{flex-basis:100%;justify-content:center;margin-left:0}.table-wrap:has(>.vocab-table){overflow-x:visible}.table.vocab-table{border:0;min-width:0;display:block}.vocab-table tbody{flex-direction:column;gap:6px;display:flex}.vocab-table thead th:not(.vocab-table__check){display:none}.vocab-table thead:not(:has(.vocab-table__check)){display:none}.vocab-table thead tr{align-items:center;padding:0 12px 8px;display:flex}.vocab-table thead .vocab-table__check{text-transform:none;letter-spacing:0;width:auto;color:var(--on-surface-muted);border:0;align-items:center;gap:10px;font-size:13px;font-weight:500;display:flex;padding:0!important}.vocab-table thead .vocab-table__check:after{content:"Позначити всі"}.vocab-table tbody tr{box-shadow:inset 0 0 0 1px var(--outline);background:var(--surface-1);border-radius:12px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"word status""tr tr""act act";align-items:center;column-gap:10px;padding:8px 8px 0 14px;display:grid}.vocab-table tbody tr:has(>.vocab-table__check){grid-template-columns:20px minmax(0,1fr) auto;grid-template-areas:"check word status"".tr tr""act act act"}.vocab-table tbody td{background:0 0;border:0;padding:0;display:block}.vocab-table tr.is-selected{background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--primary)}.vocab-table tr.is-selected td{background:0 0}.vocab-table tbody .vocab-table__check{grid-area:check;align-items:center;width:auto;display:flex}.vocab-table tbody .vocab-table__check input{width:18px;height:18px}.vocab-table__word{overflow-wrap:anywhere;grid-area:word;min-width:0}.vocab-table__word strong{font-size:17px;font-weight:600;line-height:1.3}.vocab-table__word .speak-line{gap:0}.vocab-table__word .speak-btn{background:0 0;border-color:#0000}.vocab-table__word .speak-btn.is-playing,.vocab-table__word .speak-btn.is-loading{background:var(--primary-container)}.vocab-table__tr{color:var(--on-surface);opacity:.85;overflow-wrap:anywhere;grid-area:tr;font-size:15px;line-height:1.4;padding:0 6px 10px 0!important}.vocab-table__status{grid-area:status;justify-self:end;padding-right:6px!important}.vocab-table__status .learn-status{align-items:flex-end}.vocab-table tbody .vocab-table__date{display:none}.vocab-table tbody .vocab-table__actions{border-top:1px solid var(--outline);text-align:left;grid-area:act;justify-content:flex-end;gap:2px;margin:0 -8px 0 -14px;display:flex;padding:2px 4px!important}.vocab-table__actions .btn+.btn{margin-left:0}.vocab-table__actions .btn{width:44px;height:44px;min-height:44px;color:var(--on-surface-muted);opacity:1;border-color:#0000}.vocab-table__actions .btn:hover{color:var(--on-surface)}.vocab-table__actions .vocab-known.is-known{color:var(--ll-good)}.vocab-table__actions .vocab-table__remove{order:-1;margin-right:auto}}.reading-head{flex-direction:column;gap:10px;margin-bottom:20px;display:flex}.reading-head__row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 20px;display:flex}.reading-head__title{flex-direction:column;gap:6px;min-width:0;display:flex}.reading-head__title h1{margin:0;font-size:clamp(1.5rem,1.2rem + 1vw,2rem);line-height:1.2}.reading-head__meta{color:var(--on-surface-muted);flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:13.5px;display:flex}.reading-head__read{color:var(--ll-good);align-items:center;gap:4px;font-weight:600;display:inline-flex}.reading-head__read svg{width:14px;height:14px}.reading-actions{flex-wrap:wrap;gap:8px;display:flex}.reading-actions .btn{align-items:center;gap:6px;display:inline-flex}.reading-actions .btn svg{width:16px;height:16px}.reading-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:24px;padding-bottom:40px;display:grid}.reading-aside{min-width:0;position:sticky;top:24px}.glossary-card__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.glossary-card__body{max-height:calc(100vh - 170px);overflow-y:auto}.glossary-fab{z-index:90;box-shadow:var(--shadow-2);display:none;position:fixed;bottom:80px;right:16px}.glossary-card--sheet{box-shadow:none;background:0 0;border:0}.glossary-card--sheet .card__header,.glossary-card--sheet .card__body{padding-inline:8px}.gloss-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.gloss-row{border-bottom:1px solid var(--outline);grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) 58px;align-items:center;column-gap:12px;padding:7px 8px 7px 10px;transition:background .15s;display:grid}.gloss-row:last-child{border-bottom:0}.gloss-row:hover{background:var(--surface-2)}.gloss-row.is-mine{box-shadow:inset 3px 0 0 var(--ll-mint);background:color-mix(in oklab,var(--ll-mint) 8%,transparent)}.gloss-row__word{flex-direction:column;min-width:0;display:flex}.gloss-row__word strong{color:var(--on-surface);overflow-wrap:anywhere;font-weight:650}.gloss-row__word small{color:var(--on-surface-muted);letter-spacing:.02em;font-size:11px}.gloss-row__uk{min-width:0;color:var(--on-surface-muted);overflow-wrap:anywhere;font-size:.95em}.gloss-row__actions{justify-content:flex-end;align-items:center;gap:2px;display:flex}.gloss-row__btn{width:28px;height:28px;color:var(--on-surface-muted);cursor:pointer;opacity:.7;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;transition:opacity .15s,background .15s;display:inline-flex}.gloss-row:hover .gloss-row__btn{opacity:1}.gloss-row__btn:hover:not(:disabled){background:color-mix(in oklab,var(--primary) 14%,transparent);color:var(--on-surface)}.gloss-row__btn:disabled{opacity:.35;cursor:default}.gloss-row__btn svg{width:16px;height:16px}@media (hover:none){.gloss-row__btn{opacity:1}}.sets-pop__btn{border:1px solid color-mix(in srgb,var(--ll-lavender) 55%,transparent);border-radius:var(--radius-pill);background:var(--ll-lavender-soft);height:24px;color:var(--on-surface);cursor:pointer;align-items:center;gap:3px;padding:0 7px;font-size:11.5px;font-weight:700;display:inline-flex}.sets-pop__btn svg{width:13px;height:13px}.sets-pop__btn:hover,.sets-pop__btn.is-open{border-color:var(--ll-lavender)}.sets-pop{z-index:1000;border:1px solid var(--outline);background:var(--surface-1);border-radius:12px;min-width:200px;max-width:280px;padding:8px;position:fixed;box-shadow:0 10px 30px #00000038}.sets-pop__head{text-transform:uppercase;letter-spacing:.04em;color:var(--on-surface-muted);padding:2px 6px 6px;font-size:11.5px;font-weight:700}.sets-pop ul{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.sets-pop a{color:var(--on-surface);border-radius:8px;align-items:center;gap:8px;padding:6px 8px;font-size:13.5px;font-weight:600;display:flex}.sets-pop a:hover{background:var(--surface-2);color:var(--ll-good)}.sets-pop a svg{flex-shrink:0;width:15px;height:15px}@media (width<=1080px){.reading-layout{grid-template-columns:minmax(0,1fr);padding-bottom:24px}.reading-aside{display:none}.glossary-fab{display:inline-flex}.glossary-fab--above-player{bottom:150px}}@media (width<=720px){.glossary-fab{bottom:calc(84px + env(safe-area-inset-bottom,0px))}.glossary-fab--above-player{bottom:calc(84px + 112px + env(safe-area-inset-bottom,0px))}}.translator-page{flex-direction:column;gap:24px;padding-bottom:40px;display:flex}.translator{overflow:visible}.translator__langs{border-bottom:1px solid var(--outline);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:12px 20px;display:grid}.translator__lang{font-size:14px;font-weight:600}.translator__lang:last-child{padding-left:20px}.translator__swap{min-width:40px;font-size:18px;line-height:1}.translator__panes{grid-template-columns:1fr 1fr;display:grid}.translator__pane{flex-direction:column;min-width:0;display:flex}.translator__pane--target{border-left:1px solid var(--outline);background:var(--surface-1)}.translator__text{resize:vertical;width:100%;min-height:180px;color:inherit;font:inherit;background:0 0;border:none;outline:none;flex:1;padding:18px 20px;font-size:20px;line-height:1.45}.translator__text::placeholder{color:var(--on-surface-muted);opacity:.7}.translator__footer{align-items:center;gap:8px;min-height:52px;padding:10px 14px 12px 20px;display:flex}.translator__count{color:var(--on-surface-muted);margin-right:auto;font-size:12px}.translator__spacer{flex:1}.translator__result{border-top:1px solid var(--outline);flex-direction:column;gap:14px;padding:16px 20px 20px;display:flex}.translator__repeat{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.translator__actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.translator__ai{color:var(--on-surface-muted);font-size:13.5px}.translator-block{flex-direction:column;gap:6px;display:flex}.translator-block__label{letter-spacing:1.2px;text-transform:uppercase;color:var(--ll-muted);font-size:12px;font-weight:600}.translator-explanation{margin:0;font-size:14.5px;line-height:1.5}.translator-alts,.translator-similar{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.translator-alts li{border-radius:var(--radius-md);background:var(--surface-1);border:1px solid var(--outline);justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;font-size:14.5px;display:flex}.translator-similar li{border-radius:var(--radius-md);border:1px dashed var(--outline);padding:8px 12px;font-size:14px}.translator-editor{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.translator-editor .input{flex:1;min-width:200px}.translator-list{flex-direction:column;gap:12px;display:flex}.translator-rows{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.translator-row{border-top:1px solid var(--outline);justify-content:space-between;align-items:flex-start;gap:14px;padding:12px 0;display:flex}.translator-row:first-child{border-top:none}.translator-row__text{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.translator-row__open{all:unset;cursor:pointer;overflow-wrap:anywhere;font-size:15px;font-weight:500;transition:color .2s}.translator-row__open:hover{color:var(--ll-good)}.translator-row__open:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}.translator-row__translation{color:var(--on-surface-muted);overflow-wrap:anywhere;font-size:14px}.translator-row__badges{flex-wrap:wrap;gap:6px;margin-top:3px;display:flex}.translator-row__actions{flex-shrink:0;gap:6px;display:flex}@media (width<=720px){.translator-page{gap:16px;padding-bottom:16px}.translator__panes{grid-template-columns:1fr}.translator__pane--target{border-left:none;border-top:1px solid var(--outline)}.translator__lang:last-child{text-align:right;padding-left:0}.translator__text{min-height:120px;padding:14px 16px;font-size:17px}.translator__footer{padding:8px 12px 10px 16px}.translator__result{padding:14px 16px 16px}.translator-row{flex-direction:column;gap:8px}}.translator__actions:empty{display:none}.sentences-toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.sentences-toolbar .input{flex:220px;font-size:16px}.translator-row__plain{overflow-wrap:anywhere;font-size:15px;font-weight:500}
