.alert{border-radius:var(--radius-sm);padding:10px 14px;font-size:14px;line-height:1.5}.alert--error{background:var(--color-danger-soft);color:var(--color-danger)}.alert--success{background:var(--color-success-soft);color:var(--color-success)}.alert--info{background:var(--color-surface-muted);color:var(--color-text-muted)}.button{border-radius:var(--radius-sm);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-size:15px;font-weight:600;transition:background-color .15s,opacity .15s;display:inline-flex}.button:disabled{opacity:.55;cursor:not-allowed}.button__spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:15px;height:15px;animation:.7s linear infinite button-spin}@keyframes button-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.button__spinner{animation-duration:1.6s}}.button--primary{background:var(--color-accent);color:#fff}.button--primary:not(:disabled):hover{background:#1f5cbd}.button--ghost{border-color:var(--color-border);color:var(--color-text);background:0 0}.button--ghost:not(:disabled):hover{background:var(--color-surface-muted)}.button--link{color:var(--color-accent);background:0 0;border:0;border-radius:0;gap:6px;padding:0;font-size:13px;font-weight:500;line-height:1.4;text-decoration:none}.button--link:not(:disabled):hover{color:var(--color-primary);background:0 0;text-decoration:none}.button--link:disabled{color:var(--color-text-muted);opacity:.55}.button--link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.difficulty-badge{white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:5px;padding:2px 8px;font-size:11.5px;font-weight:600;line-height:1.4;display:inline-flex}.difficulty-badge__dot{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.difficulty-badge--easy{background:var(--color-success-soft);color:var(--color-success)}.difficulty-badge--medium{background:var(--color-primary-soft);color:var(--color-primary)}.difficulty-badge--hard{background:var(--color-danger-soft);color:var(--color-danger)}.interactive-background{z-index:0;pointer-events:none;background:radial-gradient(1100px 760px at 84% 4%,#60a5fa6b,#0000 62%),radial-gradient(960px 760px at 6% 96%,#3b82f63d,#0000 64%),radial-gradient(820px 620px at 50% 42%,#ffffff6b,#0000 70%),linear-gradient(160deg,#e9f2fd 0%,#cfe2f7 46%,#b4d0ef 100%);position:fixed;inset:0;overflow:hidden}.interactive-background__canvas{width:100%;height:100%;display:block}.interactive-background__grain{opacity:.03;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");position:absolute;inset:0}.interactive-background:after{content:"";background:linear-gradient(#ffffff3d 0%,#0000 16% 84%,#dbeafe4d 100%),radial-gradient(120% 90% at 50% 108%,#93c5fd33,#0000 58%);position:absolute;inset:0}.markdown{color:var(--color-text);overflow-wrap:anywhere;font-size:15.5px;line-height:1.75}.markdown>:first-child{margin-top:0}.markdown__paragraph{margin:0 0 14px}.markdown__heading{color:var(--color-primary);scroll-margin-top:24px}.markdown__heading--1{margin:8px 0 18px;font-size:28px;line-height:1.2}.markdown__heading--2{border-bottom:1px solid var(--color-border);margin:34px 0 14px;padding-bottom:6px;font-size:22px;line-height:1.3}.markdown__heading--3{margin:26px 0 10px;font-size:18px;line-height:1.35}.markdown__heading--4,.markdown__heading--5,.markdown__heading--6{margin:20px 0 8px;font-size:16px}.markdown__list{flex-direction:column;gap:6px;margin:0 0 16px;padding-left:22px;display:flex}.markdown__list .markdown__list{margin:6px 0 0}.markdown__list li>.markdown__paragraph{margin:0}.markdown__quote{border-left:4px solid var(--color-accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--color-primary-soft);color:var(--color-text);margin:20px 0;padding:14px 18px}.markdown__quote>:last-child{margin-bottom:0}.markdown__table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-sm);margin:0 0 20px;overflow-x:auto}.markdown__table{border-collapse:collapse;width:100%;min-width:460px;font-size:14px;line-height:1.5}.markdown__table th,.markdown__table td{border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border);vertical-align:top;padding:9px 11px}.markdown__table th:last-child,.markdown__table td:last-child{border-right:0}.markdown__table tbody tr:last-child td{border-bottom:0}.markdown__table th{background:var(--color-surface-muted);color:var(--color-primary);white-space:nowrap;font-weight:600}.markdown__table tbody tr:nth-child(2n){background:color-mix(in srgb, var(--color-surface-muted) 45%, transparent)}.markdown a{color:var(--color-accent);text-underline-offset:2px;text-decoration:underline}.markdown a:hover{color:var(--color-primary)}.markdown code{background:var(--color-surface-muted);font-family:var(--font-mono);border-radius:6px;padding:1px 5px;font-size:.92em}.markdown__pre{border-radius:var(--radius-sm);background:var(--color-primary);color:#f8fafc;margin:0 0 18px;padding:14px 16px;line-height:1.55;overflow-x:auto}.markdown__pre code{color:inherit;background:0 0;padding:0}.markdown__hr{border:0;border-top:1px solid var(--color-border);margin:28px 0}.markdown img{border-radius:var(--radius-sm);margin:8px 0 18px}.markdown strong{color:var(--color-primary)}@media (width<=640px){.markdown{font-size:15px}.markdown__heading--2{font-size:20px}}.topic-toc{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:16px 14px}.topic-toc__title{letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted);margin:0 0 10px;padding:0 6px;font-size:12px;font-weight:600}.topic-toc__list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.topic-toc__link{border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--color-text-muted);border-left:2px solid #0000;padding:6px 8px 6px 10px;font-size:13px;line-height:1.4;text-decoration:none;transition:color .12s,background-color .12s,border-color .12s;display:block}.topic-toc__link:hover{color:var(--color-text);background:var(--color-surface-muted)}.topic-toc__link--active{border-left-color:var(--color-accent);background:var(--color-primary-soft);color:var(--color-primary);font-weight:600}.text-field{flex-direction:column;gap:6px;display:flex}.text-field__label{color:var(--color-text-muted);font-size:14px;font-weight:500}.text-field__control{align-items:center;display:flex;position:relative}.text-field__input{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);width:100%;padding:11px 14px;font-size:15px;transition:border-color .15s,box-shadow .15s,background-color .15s}.text-field__input--leading{padding-left:42px}.text-field__input--trailing{padding-right:46px}.text-field__leading{color:var(--color-text-muted);pointer-events:none;display:flex;position:absolute;left:13px}.text-field__trailing{display:flex;position:absolute;right:6px}.text-field__input:focus{border-color:var(--color-accent);outline:none}.text-field__input--invalid{border-color:var(--color-danger)}.text-field__error{color:var(--color-danger);font-size:13px}.password-field__toggle{width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;padding:0;transition:background-color .15s,color .15s;display:grid}.password-field__toggle:hover{background:var(--color-surface-muted);color:var(--color-text)}.password-field__toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.topic-contents{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:16px 14px}.topic-contents__title{letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted);margin:0 0 10px;padding:0 6px;font-size:12px;font-weight:600}.topic-contents__list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.topic-contents__item{border-radius:var(--radius-sm);width:100%;color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;align-items:flex-start;gap:9px;padding:8px 8px 8px 6px;transition:background-color .12s;display:flex}.topic-contents__item:hover{background:var(--color-surface-muted)}.topic-contents__item:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.topic-contents__index{min-width:18px;color:var(--color-text-muted);font-variant-numeric:tabular-nums;flex:none;padding-top:1px;font-size:10.5px}.topic-contents__body{flex-direction:column;gap:3px;min-width:0;display:flex}.topic-contents__label{font-size:13px;font-weight:500;line-height:1.35}.topic-contents__summary{color:var(--color-text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11.5px;line-height:1.4;display:-webkit-box;overflow:hidden}.topic-contents__meta{color:var(--color-text-muted);font-variant-numeric:tabular-nums;font-size:10.5px}.topic-pager{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;display:grid}.topic-pager__link{max-width:100%;color:var(--color-accent);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex:0 auto;align-items:center;gap:5px;padding:3px 0;font-size:13.5px;font-weight:600;line-height:1.35;display:inline-flex}.topic-pager__link--previous{grid-area:1/1;justify-self:start}.topic-pager__link--next{text-align:right;grid-area:1/3;justify-self:end}.topic-pager__link:hover:not(:disabled){color:var(--color-primary);text-underline-offset:2px;text-decoration:underline}.topic-pager__link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:4px}.topic-pager__link:disabled{cursor:default;opacity:.45}.topic-pager__arrow{color:var(--color-text-muted);flex:none;font-size:14px;line-height:1}.topic-pager__title{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.topic-pager__position{color:var(--color-text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;grid-area:1/2;justify-self:center;font-size:11px}.topic-pager--composer{width:100%;max-width:860px;margin:0 auto 8px;padding:0}.topic-pager--footer{border-top:1px solid var(--color-border);margin-top:28px;padding-top:18px}@media (width<=640px){.topic-pager{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px 12px}.topic-pager__link{font-size:12.5px}.topic-pager__position{text-align:center;grid-area:1/1/auto/-1}.topic-pager__link--previous{grid-area:2/1}.topic-pager__link--next{grid-area:2/2}}.course-tree{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.course-tree .course-tree{border-left:1px solid var(--color-border);margin-left:20px;padding-left:8px}.course-tree__row{border-radius:var(--radius-sm);align-items:center;gap:8px;padding:6px 8px;display:flex}.course-tree__row:hover{background:var(--color-surface-muted)}.course-tree__row--active{background:var(--color-primary-soft)}.course-tree__icon{color:var(--color-text-muted);flex:none}.course-tree__row--active .course-tree__icon{color:var(--color-accent)}.course-tree__toggle{width:20px;height:20px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;flex:none;padding:0;font-size:12px;line-height:1}.course-tree__toggle--empty{cursor:default}.course-tree__link{min-width:0;color:var(--color-text);flex:1;font-size:15px;text-decoration:none}.course-tree__link:hover{color:var(--color-accent)}.course-tree__row--active .course-tree__link{color:var(--color-primary);font-weight:600}.settings{z-index:100;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.settings__backdrop{-webkit-backdrop-filter:blur(9px)saturate(.9);background:#0f172a61;animation:.16s ease-out settings-fade;position:absolute;inset:0}.settings__dialog{border:1px solid var(--color-border);background:var(--color-surface);border-radius:18px;outline:none;flex-direction:column;width:min(760px,100%);height:min(520px,100%);animation:.18s cubic-bezier(.2,.8,.2,1) settings-pop;display:flex;position:relative;overflow:hidden;box-shadow:0 30px 70px -20px #0f172a73}.settings__header{border-bottom:1px solid var(--color-border);flex:none;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px 14px 24px;display:flex}.settings__title{letter-spacing:-.01em;margin:0;font-size:17px;font-weight:700}.settings__close{width:32px;height:32px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:background-color .14s,color .14s;display:inline-flex}.settings__close:hover{color:var(--color-text)}.settings__body{flex:1;grid-template-columns:196px minmax(0,1fr);min-height:0;display:grid}.settings__nav{border-right:1px solid var(--color-border);background:var(--color-surface-muted);flex-direction:column;gap:4px;min-height:0;padding:14px 10px;display:flex;overflow-y:auto}.settings__nav-item{width:100%;font:inherit;color:var(--color-text-muted);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:9px;align-items:center;gap:9px;padding:8px 10px;font-size:13.5px;transition:background-color .14s,color .14s;display:flex}.settings__nav-item:hover{color:var(--color-text);background:#ffffff8c}.settings__nav-item--active{background:var(--color-surface);color:var(--color-text);font-weight:600}.settings__nav-icon{color:currentColor;flex:none}.settings__content{min-height:0;padding:22px 26px 26px;overflow-y:auto}.settings__section-title{color:var(--color-text);margin:0 0 14px;font-size:14px;font-weight:700}.settings__row{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:24px;padding:16px 0;display:flex}.settings__row-text{flex-direction:column;gap:4px;min-width:0;display:flex}.settings__label{font-size:14px;font-weight:500}.settings__hint{max-width:380px;color:var(--color-text-muted);margin:0;font-size:12.5px;line-height:1.5}.settings__select{flex:none;align-items:center;display:inline-flex;position:relative}.settings__select select{appearance:none;border:1px solid var(--color-border);background:var(--color-surface);min-width:140px;font:inherit;color:var(--color-text);cursor:pointer;border-radius:9px;padding:8px 34px 8px 12px;font-size:13.5px;transition:border-color .14s,box-shadow .14s}.settings__select select:hover:not(:disabled){border-color:var(--color-accent)}.settings__select select:disabled{cursor:default;opacity:.55}.settings__select select:focus-visible{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #2a6dd92e}.settings__select-arrow{color:var(--color-text-muted);pointer-events:none;position:absolute;right:12px}.settings__facts{flex-direction:column;gap:0;margin:0;display:flex}.settings__fact{justify-content:space-between;align-items:baseline;gap:24px;padding:12px 0;display:flex}.settings__fact+.settings__fact{border-top:1px solid var(--color-border)}.settings__fact dt{color:var(--color-text-muted);font-size:13px}.settings__fact dd{text-align:right;overflow-wrap:anywhere;margin:0;font-size:13.5px;font-weight:500}@keyframes settings-fade{0%{opacity:0}}@keyframes settings-pop{0%{opacity:0;transform:translateY(8px)scale(.98)}}@media (width<=640px){.settings__dialog{height:min(560px,100%)}.settings__body{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.settings__nav{border-right:none;border-bottom:1px solid var(--color-border);flex-direction:row;padding:10px}.settings__nav-item{width:auto;padding:7px 14px}.settings__content{padding:18px 20px 22px}.settings__row{flex-direction:column;align-items:flex-start;gap:12px}}@media (prefers-reduced-motion:reduce){.settings__backdrop,.settings__dialog{animation:none}}.settings__form{border-top:1px solid var(--color-border);flex-direction:column;gap:14px;margin-top:18px;padding-top:16px;display:flex}.settings__field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.settings__form-actions{justify-content:flex-end;display:flex}@media (width<=640px){.settings__field-grid{grid-template-columns:minmax(0,1fr)}}.settings__toast{z-index:2;background:var(--color-success-soft);color:var(--color-success);border:1px solid #15803d2e;border-radius:9px;padding:9px 12px;font-size:13px;line-height:1.4;animation:.16s ease-out settings-toast-in;position:sticky;top:0;box-shadow:0 10px 24px -18px #0f172a73}.settings__toast--error{background:var(--color-danger-soft);color:var(--color-danger);border-color:#b91c1c2e}@keyframes settings-toast-in{0%{opacity:0;transform:translateY(-4px)}}.settings__account{flex-direction:column;display:flex}.settings__danger-link{color:var(--color-danger);font:inherit;cursor:pointer;background:0 0;border:none;flex:none;padding:0;font-size:13px;font-weight:500}.settings__danger-link:hover{text-underline-offset:2px;text-decoration:underline}.settings__delete{border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;gap:12px;margin-top:4px;padding:14px;display:flex}.settings__delete-warning{color:var(--color-danger);margin:0;font-size:13px;line-height:1.5}.settings__danger-button{border:1px solid var(--color-danger);border-radius:var(--radius-sm);background:var(--color-danger);color:#fff;font:inherit;cursor:pointer;padding:9px 14px;font-size:13px;font-weight:600;transition:opacity .15s,background-color .15s}.settings__danger-button:hover:not(:disabled){background:#991b1b}.settings__danger-button:disabled{cursor:default;opacity:.6}.settings__delete .settings__form-actions{gap:8px}@media (width<=640px){.settings__row--danger{align-items:flex-start}}.settings__voice-note{color:var(--color-text-muted);margin:0 0 4px;font-size:12.5px;line-height:1.55}.settings__switch{background:var(--color-surface-muted);cursor:pointer;border:none;border-radius:999px;flex:none;width:42px;height:24px;padding:0;transition:background-color .15s;position:relative}.settings__switch-thumb{background:var(--color-surface);border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0f172a38}.settings__switch[aria-checked=true]{background:var(--color-accent)}.settings__switch[aria-checked=true] .settings__switch-thumb{transform:translate(18px)}.settings__switch:disabled{cursor:default;opacity:.5}.settings__switch:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){.settings__switch,.settings__switch-thumb{transition:none}}.settings__sessions{flex-direction:column;gap:12px;display:flex}.settings__sessions-note{color:var(--color-text-muted);margin:0;font-size:12.5px;line-height:1.55}.settings__sessions-empty{color:var(--color-text-muted);margin:0;padding:18px 0;font-size:13px}.settings__session-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.settings__session{border-top:1px solid var(--color-border);align-items:center;gap:12px;padding:12px 0;display:flex}.settings__session:first-child{border-top:0}.settings__session-icon{background:var(--color-surface-muted);width:34px;height:34px;color:var(--color-text-muted);border-radius:9px;flex:none;justify-content:center;align-items:center;display:inline-flex}.settings__session-icon-svg{display:block}.settings__session-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.settings__session-name{flex-wrap:wrap;align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}.settings__session-badge{background:var(--color-success-soft);color:var(--color-success);border-radius:999px;padding:1px 7px;font-size:11px;font-weight:600}.settings__session-meta{color:var(--color-text-muted);font-size:12px}.settings__sessions-footer{border-top:1px solid var(--color-border);justify-content:flex-start;padding-top:12px;display:flex}@media (width<=640px){.settings__session{flex-wrap:wrap;align-items:flex-start}.settings__session-info{flex-basis:calc(100% - 46px)}.settings__session>.button{margin-left:46px}}.account-menu{flex:none;align-items:center;gap:10px;display:flex;position:relative}.account-menu__email{max-width:220px;color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.account-menu__trigger{width:32px;height:32px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:9px;flex:none;justify-content:center;align-items:center;padding:0;transition:background-color .14s,color .14s;display:inline-flex}.account-menu__trigger:hover,.account-menu__trigger--open{background:var(--color-surface-muted);color:var(--color-text)}.account-menu__trigger:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.account-menu__popover{z-index:20;border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;flex-direction:column;gap:2px;min-width:178px;padding:5px;display:flex;position:absolute;right:0;box-shadow:0 16px 36px -12px #0f172a4d}.account-menu__popover--up{animation:.14s cubic-bezier(.2,.8,.2,1) account-menu-pop-up;bottom:calc(100% + 8px)}.account-menu__popover--down{animation:.14s cubic-bezier(.2,.8,.2,1) account-menu-pop-down;top:calc(100% + 8px)}.account-menu__item{width:100%;font:inherit;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:9px 10px;font-size:13.5px;transition:background-color .12s;display:flex}.account-menu__item svg{color:var(--color-text-muted);flex:none}.account-menu__item:hover:not(:disabled){background:var(--color-surface-muted)}.account-menu__item:disabled{cursor:progress;opacity:.6}.account-menu__item--danger:hover:not(:disabled){background:var(--color-danger-soft);color:var(--color-danger)}.account-menu__item--danger:hover:not(:disabled) svg{color:var(--color-danger)}@keyframes account-menu-pop-up{0%{opacity:0;transform:translateY(4px)}}@keyframes account-menu-pop-down{0%{opacity:0;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.account-menu__popover{animation:none}}.catalog-page{background:var(--color-surface);border-radius:var(--radius-lg);width:min(760px,100%);box-shadow:var(--shadow-card);flex-direction:column;gap:24px;padding:32px 40px;display:flex}.catalog-page__header{align-items:center;gap:16px;display:flex}.catalog-page__logo{object-fit:contain;flex:none;width:40px;height:40px}.catalog-page__identity{flex:1;min-width:0}.catalog-page__title{color:var(--color-primary);font-size:24px}.catalog-page__subtitle{color:var(--color-text-muted);overflow-wrap:anywhere;font-size:14px}.catalog-page__body{flex-direction:column;gap:12px;display:flex}.catalog-page__hint{color:var(--color-text-muted);font-size:14px;line-height:1.6}.catalog-page__footer{border-top:1px solid var(--color-border);padding-top:8px;font-size:14px}.catalog-page__footer a{color:var(--color-accent);text-decoration:none}code{background:var(--color-surface-muted);border-radius:var(--radius-sm);font-family:var(--font-mono);padding:2px 6px;font-size:13px}.auth-language{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd1;border:1px solid #dbe4f0;border-radius:999px;align-items:center;gap:2px;padding:3px;display:inline-flex;box-shadow:0 2px 8px #0f172a0f}.auth-language__button{color:#64748b;letter-spacing:.06em;background:0 0;border:0;border-radius:999px;min-width:38px;padding:5px 9px;font-size:11px;font-weight:700;transition:background-color .16s,color .16s,box-shadow .16s}.auth-language__button:hover{color:#1d4ed8;background:#eff6ff}.auth-language__button[aria-pressed=true]{color:#fff;background:#2a6dd9;box-shadow:0 4px 10px -4px #2a6dd999}.auth-language__button:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.auth-shell{z-index:1;overscroll-behavior:contain;color:var(--color-text);position:fixed;inset:0;overflow:hidden auto}.auth-topbar{z-index:2;pointer-events:none;justify-content:space-between;align-items:center;gap:16px;padding:clamp(16px,2.6vw,28px) clamp(18px,4vw,40px);display:flex;position:fixed;top:0;left:0;right:0}.auth-topbar>*{pointer-events:auto}.auth-topbar__brand{align-items:center;gap:10px;display:inline-flex}.auth-topbar__logo{object-fit:contain;width:30px;height:35px}.auth-topbar__name{color:var(--color-primary);letter-spacing:-.015em;font-size:16px;font-weight:700}.auth-center{flex-direction:column;justify-content:flex-start;align-items:center;min-height:100%;padding:clamp(88px,12vh,116px) 20px 48px;display:flex}.auth-card{-webkit-backdrop-filter:blur(20px)saturate(120%);backdrop-filter:blur(20px)saturate(120%);background:#ffffffe0;border:1px solid #0f172a14;border-radius:22px;flex:none;width:min(420px,100%);margin-block:auto;padding:34px 32px 28px;animation:.5s cubic-bezier(.2,.75,.25,1) both auth-card-in;box-shadow:0 30px 70px -40px #0f172a59,0 8px 24px -16px #0f172a2e,inset 0 1px #fff}.auth-card__header{text-align:center;flex-direction:column;align-items:center;gap:6px;margin-bottom:22px;display:flex}.auth-card__title{color:var(--color-primary);letter-spacing:-.02em;font-size:24px;font-weight:700;line-height:1.2}.auth-card__subtitle{max-width:32ch;color:var(--color-text-muted);font-size:14px;line-height:1.5}.auth-card__subtitle a{color:var(--color-accent);font-weight:600;text-decoration:none}.auth-card__subtitle a:hover{text-decoration:underline}.auth-card__subtitleAction{margin-top:6px;font-size:13px;font-weight:600;display:block}.auth-card__body{flex-direction:column;gap:16px;display:flex}.auth-card__footer{color:var(--color-text-muted);text-align:center;border-top:1px solid #eef2f7;margin-top:20px;padding-top:18px;font-size:13.5px;line-height:1.6}.auth-card__footer a{color:var(--color-accent);text-underline-offset:3px;font-weight:600;text-decoration:none;transition:color .15s}.auth-card__footer a:hover{color:var(--color-primary);text-decoration:underline}.auth-card__links{flex-direction:column;align-items:center;gap:8px;display:flex}.auth-card__footer a.auth-card__linkSoft{color:var(--color-text-muted);font-size:13px;font-weight:500}.auth-card__footer a.auth-card__linkSoft:hover{color:var(--color-accent)}.auth-card__back{align-items:center;gap:6px;display:inline-flex}.auth-card .form{gap:14px}.auth-card .text-field__label{color:#475569;font-size:13px;font-weight:600}.auth-card .text-field__input{color:var(--color-text);background:#fff;border-color:#d8e1ee;border-radius:11px;padding-top:12px;padding-bottom:12px;font-size:16px;box-shadow:0 1px 2px #0f172a08}.auth-card .text-field__input::placeholder{color:#94a3b8}.auth-card .text-field__input:hover:not(:focus){border-color:#c3cfdf}.auth-card .text-field__input:focus{border-color:var(--color-accent);box-shadow:0 0 0 4px #2a6dd91f}.auth-card .text-field__input--invalid{border-color:var(--color-danger)}.auth-card .text-field__leading,.auth-card .password-field__toggle{color:#94a3b8}.auth-card .password-field__toggle:hover{color:var(--color-primary);background:#f1f5f9}.auth-card .password-field__toggle:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.auth-code .text-field__input{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.34em;font-size:19px}.auth-card .alert{border-radius:10px;padding:10px 13px;font-size:13px;line-height:1.5}.auth-card .alert a{font-weight:600;text-decoration:underline}.auth-card .button{border-radius:11px;width:100%;padding:12px 18px;font-size:15px}.auth-card .button--primary{color:#fff;background:linear-gradient(135deg,#3b82f6 0%,#2a6dd9 55%,#245fc0 100%);transition:box-shadow .16s,filter .16s;box-shadow:0 12px 24px -14px #2a6dd9bf,inset 0 1px #ffffff42}.auth-card .button--primary:not(:disabled):hover{filter:brightness(1.06);box-shadow:0 16px 28px -14px #2a6dd9d9,inset 0 1px #ffffff4d}.auth-card .button--primary:not(:disabled):active{filter:brightness(.98)}.auth-card .button--ghost{color:#334155;background:#fff;border-color:#d8e1ee}.auth-card .button--ghost:not(:disabled):hover{background:#f8fafc;border-color:#c3cfdf}.auth-card a:focus-visible,.auth-card .button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@keyframes auth-card-in{0%{opacity:0;transform:translateY(14px)scale(.99)}to{opacity:1;transform:none}}@media (width<=520px){.auth-center{padding:84px 16px 32px}.auth-card{border-radius:20px;padding:28px 20px 22px}.auth-card__title{font-size:22px}}@media (prefers-reduced-motion:reduce){.auth-card{animation:none}}.topic-page{background:var(--color-surface);border-radius:var(--radius-lg);width:min(1120px,100%);box-shadow:var(--shadow-card);flex-direction:column;align-self:flex-start;gap:16px;padding:32px 40px;display:flex}.topic-page__header{align-items:flex-start;gap:16px;display:flex}.topic-page__identity{flex:1;min-width:0}.topic-page__header-actions{flex:none;align-items:center;gap:10px;display:flex}.topic-page__title{color:var(--color-primary);margin-top:4px;font-size:26px}.topic-page__subtitle{color:var(--color-text-muted);margin-top:6px;font-size:15px;line-height:1.6}.topic-page__crumbs{color:var(--color-text-muted);font-size:13px}.topic-page__meta{border-radius:var(--radius-md);background:var(--color-surface-muted);flex-wrap:wrap;gap:20px;padding:14px 16px;display:flex}.topic-page__meta dt{text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);font-size:12px}.topic-page__meta dd{font-variant-numeric:tabular-nums;margin:2px 0 0;font-weight:600}.topic-page__actions{flex-wrap:wrap;gap:10px;display:flex}.topic-page__source{overflow-wrap:anywhere;margin:0;font-size:14px}.topic-page__source a{color:var(--color-accent)}.topic-page__body{grid-template-columns:minmax(0,1fr) 250px;align-items:start;gap:32px;display:grid}.topic-page__body--single{grid-template-columns:minmax(0,1fr)}.topic-page__content{min-width:0;max-width:780px;padding-top:4px;font-size:15px;line-height:1.7}.topic-page__aside{align-self:start;max-height:calc(100vh - 32px);position:sticky;top:16px;overflow-y:auto}.topic-page__toc-mobile{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);margin:0 0 20px;padding:10px 14px;display:none}.topic-page__toc-mobile summary{cursor:pointer;color:var(--color-primary);font-size:14px;font-weight:600}.topic-page__toc-mobile .topic-toc{background:0 0;border:0;margin-top:12px;padding:0}@media (width<=1040px){.topic-page__body{grid-template-columns:minmax(0,1fr)}.topic-page__content{max-width:none}.topic-page__aside{display:none}.topic-page__toc-mobile{display:block}}@media (width<=640px){.topic-page{border-radius:var(--radius-md);padding:24px 18px}.topic-page__title{font-size:23px}}.topic-page__toc-mobile .topic-contents{background:0 0;border:0;margin-top:12px;padding:0}.avatar-stage__viewport--intro{justify-content:center;align-items:center;display:flex}.avatar-stage__viewport--intro:before{content:"";pointer-events:none;background:radial-gradient(circle at 50% 30%,#60a5fa2e 0%,#0000 55%),radial-gradient(circle at 50% 118%,#2a6dd93d 0%,#0000 58%);position:absolute;inset:0}.avatar-stage__call-actions{flex-direction:column;align-items:center;margin-top:6px;display:flex}.avatar-stage__call-button{background:var(--color-success);color:#fff;font:inherit;cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;gap:9px;padding:12px 28px;font-size:15px;font-weight:600;transition:background-color .14s,box-shadow .18s,transform .1s;animation:2.6s ease-in-out infinite avatar-call-breathe;display:inline-flex;box-shadow:0 14px 30px -12px #15803db3,0 0 #4ade8073}.avatar-stage__call-button:hover{background:#166534}.avatar-stage__call-button:active{transform:scale(.96)}.avatar-stage__call-button:focus-visible{outline-offset:3px;outline:2px solid #93c5fd}.avatar-stage__call-button-icon{flex:none;width:19px;height:19px}@keyframes avatar-call-breathe{50%{box-shadow:0 14px 30px -12px #15803db3,0 0 0 9px #4ade8000}}@media (width<=800px){.avatar-stage__call-button{padding:10px 22px;font-size:14px}}@media (prefers-reduced-motion:reduce){.avatar-stage__call-button{animation:none}}.avatar-stage__panel{z-index:2;color:#fff;pointer-events:none;position:absolute;inset:0}.avatar-stage__panel button{pointer-events:auto}.avatar-stage__identity{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#080f1a85;border:1px solid #ffffff29;border-radius:14px;align-items:center;gap:9px;padding:7px 12px 7px 8px;display:flex;position:absolute;top:14px;left:14px;box-shadow:0 8px 20px -12px #020617b3}.avatar-stage__identity-logo{object-fit:contain;background:#fff;border-radius:50%;flex:none;width:30px;height:30px;padding:2px}.avatar-stage__identity-body{flex-direction:column;gap:2px;line-height:1.15;display:flex}.avatar-stage__identity-name{letter-spacing:.01em;font-size:12.5px;font-weight:650}.avatar-stage__status{color:#ffffffc2;align-items:center;gap:6px;font-size:11px;display:inline-flex}.avatar-stage__status-dot{background:#4ade80;border-radius:50%;width:6px;height:6px}.avatar-stage__status--listening .avatar-stage__status-dot{background:#f87171;animation:1s ease-in-out infinite avatar-call-pulse}.avatar-stage__status--thinking .avatar-stage__status-dot{background:#fbbf24;animation:1.5s ease-in-out infinite avatar-call-pulse}.avatar-stage__status--speaking .avatar-stage__status-dot{background:#60a5fa;animation:1.3s ease-in-out infinite avatar-call-pulse}.avatar-stage__notice{color:#ffffffd6;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none;background:#080f1a8c;border-radius:12px;align-items:center;gap:8px;width:max-content;max-width:calc(100% - 32px);margin:0;padding:7px 12px;font-size:11.5px;line-height:1.4;display:flex;position:absolute;bottom:84px;left:50%;transform:translate(-50%)}.avatar-stage__notice--error{color:#fff;pointer-events:auto;background:#7f1d1de6}.avatar-stage__notice-close{color:inherit;cursor:pointer;background:0 0;border:none;flex:none;padding:0 2px;font-size:15px;line-height:1}.avatar-stage__callbar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#080f1a94;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:8px;padding:7px 9px;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 16px 32px -18px #020617cc}.avatar-stage__control{color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff24;border-radius:50%;place-items:center;width:42px;height:42px;padding:0;transition:background-color .14s,border-color .14s,color .14s,opacity .14s,transform .1s;display:grid}.avatar-stage__control:hover:not(:disabled){background:#ffffff3d}.avatar-stage__control:active:not(:disabled){transform:scale(.94)}.avatar-stage__control:focus-visible{outline-offset:2px;outline:2px solid #93c5fd}.avatar-stage__control:disabled{opacity:.38;cursor:not-allowed}.avatar-stage__control-icon{width:19px;height:19px}.avatar-stage__control--live{background:#dc2626;border-color:#dc2626;box-shadow:0 0 0 4px #f8717129}.avatar-stage__control--live:hover:not(:disabled){background:#b91c1c}.avatar-stage__control--off{color:#0f172a;background:#ffffffeb;border-color:#0000}.avatar-stage__control--off:hover:not(:disabled){background:#fff}.avatar-stage__control--speaking{color:#bfdbfe;border-color:#93c5fdb3}.avatar-stage__control--end{background:#dc2626;border-color:#dc2626}.avatar-stage__control--end:hover:not(:disabled){background:#b91c1c}.avatar-stage__callbar-divider{background:#ffffff29;width:1px;height:22px;margin:0 2px}@keyframes avatar-call-pulse{50%{opacity:.35;transform:scale(.8)}}@media (width<=800px){.avatar-stage__identity{gap:7px;padding:6px 10px 6px 6px;top:10px;left:10px}.avatar-stage__identity-logo{width:24px;height:24px}.avatar-stage__notice{bottom:66px}.avatar-stage__callbar{gap:6px;padding:6px 8px;bottom:10px}.avatar-stage__control{width:38px;height:38px}.avatar-stage__control-icon{width:17px;height:17px}}@media (prefers-reduced-motion:reduce){.avatar-stage__status--listening .avatar-stage__status-dot,.avatar-stage__status--thinking .avatar-stage__status-dot,.avatar-stage__status--speaking .avatar-stage__status-dot{animation:none}}.avatar-stage__waiting{z-index:3;background:radial-gradient(85% 70% at 50% 18%,#3a5f8a 0%,#1d3854 46%,#0c1a2b 100%);position:absolute;inset:0;overflow:hidden}.avatar-stage__waiting:before{content:"";pointer-events:none;background:radial-gradient(circle at 50% 30%,#60a5fa2e 0%,#0000 55%),radial-gradient(circle at 50% 118%,#2a6dd93d 0%,#0000 58%);position:absolute;inset:0}.avatar-stage__call-avatar--ringing:after{content:"";border:2px solid #4ade8073;border-radius:50%;animation:1.8s ease-out infinite avatar-call-ring-pulse;position:absolute;inset:-10px}.avatar-stage__waiting-progress{color:#fff9;font-variant-numeric:tabular-nums;font-size:11.5px}.avatar-stage__waiting-hangup{flex-direction:column;align-items:center;gap:6px;margin-top:4px;display:flex}.avatar-stage__waiting-cancel{color:#fff;cursor:pointer;background:#dc2626;border:none;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;transition:background-color .14s,transform .1s;display:grid;box-shadow:0 12px 26px -12px #dc2626bf}.avatar-stage__waiting-cancel:hover{background:#b91c1c}.avatar-stage__waiting-cancel:active{transform:scale(.94)}.avatar-stage__waiting-cancel:focus-visible{outline-offset:3px;outline:2px solid #93c5fd}.avatar-stage__waiting-cancel-icon{width:20px;height:20px}.avatar-stage__waiting-cancel-label{color:#ffffffb8;font-size:11.5px}.avatar-stage__error-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}@keyframes avatar-call-ring-pulse{0%{opacity:.85;transform:scale(.94)}to{opacity:0;transform:scale(1.22)}}@media (width<=800px){.avatar-stage__waiting-progress{font-size:11px}.avatar-stage__waiting-cancel{width:42px;height:42px}}@media (prefers-reduced-motion:reduce){.avatar-stage__call-avatar--ringing:after{animation:none}}.question-card{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;gap:10px;padding:14px;display:flex}.question-card__head{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.question-card__category{background:var(--color-primary-soft);color:var(--color-primary);border-radius:999px;padding:2px 8px;font-weight:600}.question-card__badge{background:var(--color-success-soft);color:var(--color-success);border-radius:999px;padding:2px 8px;font-weight:600}.question-card__badge--skipped{background:var(--color-surface-muted);color:var(--color-text-muted)}.question-card__prompt{margin:0;font-size:15px;font-weight:600;line-height:1.5}.question-card__instruction{color:var(--color-text-muted);margin:0;font-size:12.5px;line-height:1.4}.question-card__icon{color:var(--color-text-muted);flex:none}.question-card__actions{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.question-card__actions .button--link .question-card__icon{color:currentColor}.question-card__actions .button--link .question-card__icon--hint{color:var(--color-warning)}.result-block{border-radius:var(--radius-md);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.result-block--correct{background:var(--color-success-soft);color:#14532d}.result-block--wrong{background:var(--color-orange-soft);color:var(--color-orange)}.result-block__verdict{align-items:center;gap:8px;font-weight:700;display:flex}.result-block__icon{flex:none}.result-block__confidence{opacity:.75;font-size:12px;font-weight:400}.result-block__answer,.result-block__feedback{margin:0;line-height:1.5}.result-block__label{font-weight:600}.result-block__progress{flex-direction:column;gap:6px;margin-top:4px;display:flex}.result-block__bar{background:var(--color-surface-muted);border-radius:999px;height:8px;overflow:hidden}.result-block__bar span{background:var(--color-accent);border-radius:999px;height:100%;transition:width .4s;display:block}.result-block__progress-text{flex-wrap:wrap;align-items:baseline;gap:8px;font-size:13px;display:flex}.result-block__gained{background:var(--color-success);color:#fff;border-radius:999px;padding:1px 8px;font-size:12px}.bubble{align-items:flex-start;gap:10px;max-width:100%;display:flex}.bubble--user{justify-content:flex-end}.bubble__avatar{background:var(--color-primary-soft);border-radius:50%;flex:none;align-self:flex-end;place-items:center;width:34px;height:34px;display:grid}.bubble__avatar-image{object-fit:contain;width:24px;height:24px}.bubble__body{flex-direction:column;gap:10px;min-width:0;max-width:min(780px,100%);display:flex}.bubble--tutor .bubble__body{flex:auto}.bubble--user .bubble__body{border-radius:var(--radius-md);background:var(--color-primary-soft);max-width:min(680px,82%);color:var(--color-text);border:1px solid #0000;border-bottom-right-radius:4px;padding:12px 16px}.bubble--user .rich-text code{background:var(--color-surface)}.bubble__text{overflow-wrap:anywhere;font-size:15px;line-height:1.65}.bubble__typing{align-items:center;gap:4px;height:20px;display:inline-flex}.bubble__typing i{background:var(--color-text-muted);border-radius:50%;width:7px;height:7px;animation:1.1s ease-in-out infinite bubble-typing}.bubble__typing i:nth-child(2){animation-delay:.15s}.bubble__typing i:nth-child(3){animation-delay:.3s}@keyframes bubble-typing{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.bubble__failed{color:var(--color-danger);margin:0;font-size:13px}@media (prefers-reduced-motion:reduce){.bubble__typing i{opacity:.6;animation:none}}.hint-card{border-radius:var(--radius-sm);background:var(--color-warning-soft);flex-direction:column;gap:6px;padding:10px 12px;display:flex}.hint-card__title{color:var(--color-warning);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.hint-card__icon{color:var(--color-warning);flex:none}.hint-card__text{color:var(--color-text);margin:0;font-size:13.5px;line-height:1.5}.bubble__actions{align-items:center;gap:2px;display:flex}.bubble__copy,.bubble__voice{width:28px;height:28px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .14s,background-color .14s;display:inline-flex}.bubble__copy:hover,.bubble__voice:hover,.bubble__copy--copied,.bubble__voice--active{background:var(--color-primary-soft);color:var(--color-accent)}.bubble__copy:focus-visible,.bubble__voice:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.bubble__action-icon,.bubble__voice-icon{width:16px;height:16px}.avatar-transcript{min-height:0;padding:calc(var(--avatar-stage-top) + var(--avatar-card-height) + var(--avatar-stage-gap)) var(--avatar-stage-x) 28px;flex:1;overflow-y:auto}.avatar-transcript__inner{width:min(var(--avatar-content-width), 100%);flex-direction:column;gap:20px;margin:0 auto;display:flex}.avatar-transcript__latest{flex-direction:column;gap:20px;display:flex}.avatar-transcript__empty{color:var(--color-text-muted);margin:0;font-size:13px;line-height:1.5}.avatar-transcript__spacer{height:0}@media (width<=800px){.avatar-transcript{padding-bottom:22px}}.avatar-stage{--avatar-content-width:860px;--avatar-card-height:clamp(360px, 46vh, 420px);--avatar-stage-top:14px;--avatar-stage-gap:22px;--avatar-stage-x:20px;flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.avatar-stage__floating{z-index:2;padding:var(--avatar-stage-top) var(--avatar-stage-x) 0;pointer-events:none;position:absolute;top:0;left:0;right:0}.avatar-stage__floating>.avatar-stage__viewport{pointer-events:auto}.avatar-stage:before{z-index:1;height:var(--avatar-stage-top);background:var(--color-surface);content:"";pointer-events:none;position:absolute;top:0;left:0;right:0}.avatar-stage__floating:after{top:calc(var(--avatar-stage-top) + var(--avatar-card-height));right:var(--avatar-stage-x);left:var(--avatar-stage-x);background:linear-gradient(to bottom, var(--color-surface), transparent);content:"";pointer-events:none;height:20px;position:absolute}.avatar-stage__viewport{width:min(var(--avatar-content-width), 100%);height:var(--avatar-card-height);isolation:isolate;background:radial-gradient(85% 70% at 50% 18%,#3a5f8a 0%,#1d3854 46%,#0c1a2b 100%);border-radius:20px;flex:none;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 24px 48px -28px #080f1a8c}.avatar-stage__call-screen{z-index:1;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;height:100%;padding:20px;display:flex;position:relative}.avatar-stage__call-avatar{background:linear-gradient(145deg,#ffffff3d,#ffffff0f);border-radius:50%;width:156px;height:156px;padding:4px;position:relative;box-shadow:0 24px 48px -26px #020617cc}.avatar-stage__call-avatar-image{object-fit:cover;object-position:50% 30%;border:2px solid #ffffff1f;border-radius:50%;width:100%;height:100%}.avatar-stage__call-avatar-dot{background:#4ade80;border:3px solid #16283f;border-radius:50%;width:16px;height:16px;position:absolute;bottom:12px;right:12px}.avatar-stage__call-copy{flex-direction:column;gap:2px;display:flex}.avatar-stage__call-name{color:#fff;letter-spacing:-.01em;font-size:20px;font-weight:650}.avatar-stage__call-status{color:#ffffffbd;font-size:13px}.avatar-stage__canvas{z-index:0;position:absolute;inset:0}.avatar-stage__canvas canvas{display:block;width:100%!important;height:100%!important}.avatar-stage__scrim{z-index:1;pointer-events:none;position:absolute;left:0;right:0}.avatar-stage__scrim--top{background:linear-gradient(#040a146b,#0000);height:110px;top:0}.avatar-stage__scrim--bottom{background:linear-gradient(#0000,#040a1485);height:160px;bottom:0}.avatar-stage__overlay{z-index:3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#060c16a8;place-items:center;padding:20px;display:grid;position:absolute;inset:0}.avatar-stage__card{border:1px solid var(--color-border);background:var(--color-surface);width:min(360px,100%);color:var(--color-text);text-align:center;border-radius:14px;flex-direction:column;align-items:center;gap:10px;padding:20px;display:flex;box-shadow:0 24px 48px -24px #0206178c}@media (width<=800px){.avatar-stage{--avatar-card-height:clamp(340px, 46vh, 380px);--avatar-stage-top:10px;--avatar-stage-gap:18px;--avatar-stage-x:12px}.avatar-stage__viewport{border-radius:18px}.avatar-stage__call-screen{gap:8px;padding:16px}.avatar-stage__call-avatar{width:126px;height:126px}.avatar-stage__call-name{font-size:18px}.avatar-stage__scrim--top{height:86px}.avatar-stage__scrim--bottom{height:128px}}@media (width<=560px){.avatar-stage{--avatar-card-height:clamp(320px, 50vh, 360px)}.avatar-stage__call-screen{gap:6px;padding:12px}.avatar-stage__call-avatar{width:104px;height:104px}.avatar-stage__call-name{font-size:16px}.avatar-stage__call-status{font-size:12px}}.composer{background:0 0;flex-direction:column;padding:12px 20px 14px;display:flex}.composer__box{border:1px solid var(--color-border);background:var(--color-surface);border-radius:24px;width:100%;max-width:860px;margin:0 auto;padding:5px 6px 6px;transition:border-color .16s,box-shadow .16s;box-shadow:0 1px 2px #0f172a0a}.composer__box:focus-within,.composer__box--recording{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-primary-soft)}.composer__input-wrap{position:relative}.composer__input{box-sizing:border-box;resize:none;width:100%;min-height:29px;font:inherit;color:var(--color-text);scrollbar-width:none;-ms-overflow-style:none;background:0 0;border:none;padding:9px 12px 4px;font-size:15px;line-height:1.5;display:block;overflow-y:hidden}.composer__input::placeholder{color:var(--color-text-muted)}.composer__input:focus{outline:none}.composer__input:disabled{color:var(--color-text-muted)}.composer__input::-webkit-scrollbar{width:0;height:0}.composer__scrollbar{opacity:0;pointer-events:none;width:6px;transition:opacity .22s;position:absolute;top:7px;bottom:7px;right:7px}.composer__scrollbar--visible{opacity:1}.composer__scrollbar-thumb{background:var(--color-text-muted);opacity:.55;border-radius:999px;width:4px;transition:transform 80ms linear;position:absolute;left:1px}.composer__toolbar{justify-content:space-between;align-items:center;gap:10px;min-height:34px;padding:0 4px 0 12px;display:flex}.composer__actions{flex:none;align-items:center;gap:6px;display:flex}.composer__mic{border:1px solid var(--color-border);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;background:0 0;border-radius:50%;place-items:center;padding:0;transition:color .15s,border-color .15s,background-color .15s,opacity .15s;display:grid}.composer__mic:hover:not(:disabled){border-color:var(--color-accent);color:var(--color-accent)}.composer__mic:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.composer__mic:disabled{opacity:.45;cursor:default}.composer__mic--active{border-color:var(--color-accent);background:var(--color-primary-soft);color:var(--color-accent)}.composer__mic--error{border-color:var(--color-danger);color:var(--color-danger)}.composer__keys{min-width:0;color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11.5px;overflow:hidden}.composer__send{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;padding:0;transition:background .15s,transform .1s,opacity .15s;display:grid}.composer__send:hover:not(:disabled){background:var(--color-accent)}.composer__send:active:not(:disabled){transform:scale(.94)}.composer__send:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.composer__send:disabled{background:var(--color-surface-muted);color:var(--color-text-muted);cursor:default}.composer__send-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite composer-spin}@keyframes composer-spin{to{transform:rotate(360deg)}}@media (width<=700px){.composer{padding:10px 12px 12px}.composer__box{border-radius:20px}.composer__keys{display:none}.composer__toolbar{justify-content:flex-end;padding-left:6px}}.timeline{flex:1;min-height:0;padding:20px 0;overflow-y:auto}.timeline__inner{flex-direction:column;gap:20px;max-width:860px;margin:0 auto;padding:0 20px;display:flex}.topic-rail{border-bottom:1px solid var(--color-border);flex-direction:column;gap:8px;padding-bottom:16px;display:flex}.topic-rail__head{flex-direction:column;gap:4px;display:flex}.topic-rail__title{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);margin:0;font-size:12px;font-weight:600}.topic-rail__summary{color:var(--color-text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:11.5px;line-height:1.4;display:-webkit-box;overflow:hidden}.topic-rail__list{flex-direction:column;gap:1px;max-height:42vh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.topic-rail__item{border-radius:var(--radius-sm);width:100%;color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;gap:4px;padding:7px 8px;display:flex}.topic-rail__item:hover:not(:disabled){background:var(--color-surface-muted)}.topic-rail__item--active{background:var(--color-primary-soft)}.topic-rail__item:disabled{cursor:progress;opacity:.6}.topic-rail__item:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.topic-rail__label{text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:500;line-height:1.3;overflow:hidden}.topic-rail__bar{background:var(--color-surface-muted);border-radius:999px;width:100%;height:3px;display:block;overflow:hidden}.topic-rail__bar>span{background:var(--color-accent);border-radius:999px;height:100%;transition:width .3s;display:block}.topic-rail__meta{color:var(--color-text-muted);font-variant-numeric:tabular-nums;justify-content:space-between;gap:8px;font-size:10.5px;line-height:1.2;display:flex}.topic-rail__meta strong{color:var(--color-primary);font-weight:600}.topics{flex-direction:column;flex:1;gap:10px;min-height:0;display:flex}.service-nav{flex-direction:column;gap:2px;display:flex}.service-nav__item{border-radius:var(--radius-sm);color:var(--color-text-muted);align-items:center;gap:8px;padding:7px 10px;font-size:13px;text-decoration:none;display:flex}.service-nav__item:hover{background:var(--color-surface-muted);color:var(--color-text)}.service-nav__item--active{background:var(--color-primary-soft);color:var(--color-text);font-weight:600}.service-nav__icon{color:var(--color-text-muted);flex:none}.service-nav__item:hover .service-nav__icon{color:var(--color-text)}.service-nav__item--active .service-nav__icon{color:var(--color-accent)}.topics__title{letter-spacing:.02em;text-transform:uppercase;color:var(--color-text-muted);margin:0;font-size:13px}.topics__empty{color:var(--color-text-muted);margin:0;font-size:13px}.topics__list{flex-direction:column;flex:1;gap:4px;min-height:0;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.topics__list--programs{flex:none;overflow:visible}.topics__item{border-radius:var(--radius-sm);width:100%;font:inherit;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;gap:6px;padding:8px 10px;font-size:13.5px;display:flex}.topics__main{align-items:center;gap:10px;min-width:0;display:flex}.topics__item:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.topics__item:disabled{cursor:progress;opacity:.6}.topics__item--active{background:var(--color-primary-soft)}.topics__icon{color:var(--color-text-muted);flex:none}.topics__item--active .topics__icon{color:var(--color-accent)}.topics__label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.topics__progress{background:var(--color-surface-muted);border-radius:999px;width:100%;height:4px;transition:background-color .15s;display:block;overflow:hidden}.topics__progress>span{background:var(--color-accent);border-radius:999px;height:100%;transition:width .3s,background-color .15s;display:block}.topic-article{flex:1;min-height:0;padding:24px 28px 40px;overflow-y:auto}.topic-article__inner{flex-direction:column;gap:16px;max-width:760px;margin:0 auto;display:flex}.topic-article__header{align-items:flex-start;gap:16px;display:flex}.topic-article__identity{flex:1;min-width:0}.topic-article__crumbs{color:var(--color-text-muted);font-size:12.5px}.topic-article__title{color:var(--color-primary);margin:4px 0 0;font-size:26px}.topic-article__summary{color:var(--color-text-muted);margin:6px 0 0;font-size:15px;line-height:1.6}.topic-article__meta{border-radius:var(--radius-md);background:var(--color-surface-muted);flex-wrap:wrap;gap:20px;margin:0;padding:12px 16px;display:flex}.topic-article__meta dt{letter-spacing:.02em;text-transform:uppercase;color:var(--color-text-muted);font-size:11.5px}.topic-article__meta dd{font-variant-numeric:tabular-nums;margin:2px 0 0;font-weight:600}.topic-article__body{font-size:15px;line-height:1.65}.topic-article__source{overflow-wrap:anywhere;margin:0;font-size:13px}.topic-article__source a{color:var(--color-accent)}.topic-article__toc{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);margin:0 0 18px;padding:10px 14px}.topic-article__toc summary{cursor:pointer;color:var(--color-primary);font-size:14px;font-weight:600}.topic-article__toc .topic-toc{background:0 0;border:0;margin-top:12px;padding:0}.topic-article__body>.topic-contents{margin-bottom:20px}.chat-shell{background:var(--color-bg);flex-direction:column;min-height:0;display:flex;position:fixed;inset:0}.chat-shell__brand{flex:none;align-items:center;gap:10px;padding:2px 6px;display:flex}.chat-shell__logo{object-fit:contain;flex:none;width:30px;height:30px}.chat-shell__title{letter-spacing:-.01em;color:var(--color-brand);margin:0;font-size:17px;font-weight:700;line-height:1.2}.chat-shell__body{flex:1;grid-template-columns:270px minmax(0,1fr) 280px;min-height:0;display:grid}.chat-shell__sidebar{border-right:1px solid var(--color-border);background:var(--color-bg);flex-direction:column;gap:12px;min-height:0;padding:16px 12px;display:flex;overflow:hidden}.chat-shell__account{border-top:1px solid var(--color-border);flex:none;padding-top:12px}.chat-shell__account .account-menu{justify-content:space-between;gap:8px;width:100%}.chat-shell__account .account-menu__email{max-width:150px;font-size:12.5px}.chat-shell__account .account-menu__trigger{flex:none;width:30px;height:30px}.chat-shell__main{--chat-header-height:52px;background:0 0;flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.chat-shell__workspace{background:var(--color-surface);flex-direction:column;flex:1;min-height:0;display:flex}.chat-shell__tabs{z-index:5;pointer-events:none;background:0 0;justify-content:center;padding:10px 20px 2px;display:flex;position:absolute;top:0;left:0;right:0}.chat-shell__toggle{pointer-events:auto;background:var(--color-surface-muted);border-radius:999px;grid-template-columns:repeat(3,minmax(0,1fr));width:min(336px,100%);padding:3px;display:inline-grid;position:relative}.chat-shell__toggle-thumb{background:var(--color-surface);border-radius:999px;width:calc(33.3333% - 2px);transition:transform .18s;position:absolute;top:3px;bottom:3px;left:3px;box-shadow:0 1px 2px #0f172a1a}.chat-shell__toggle--chat .chat-shell__toggle-thumb{transform:translate(100%)}.chat-shell__toggle--avatar .chat-shell__toggle-thumb{transform:translate(200%)}.chat-shell__toggle-button{z-index:1;width:100%;font:inherit;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:6px 12px;font-size:13px;transition:color .15s;position:relative}.chat-shell__toggle-button:hover{color:var(--color-text)}.chat-shell__toggle-button--active{color:var(--color-text);font-weight:600}.chat-shell__main .timeline{padding-top:calc(20px + var(--chat-header-height))}.chat-shell__main .topic-article{padding-top:calc(24px + var(--chat-header-height))}.chat-shell__main .chat-shell__error{padding-top:calc(10px + var(--chat-header-height))}.chat-shell__rail{border-left:1px solid var(--color-border);background:var(--color-bg);flex-direction:column;gap:16px;min-height:0;padding:16px 14px;display:flex;overflow-y:auto}.chat-shell__pager{flex:none;padding:0 20px}.chat-shell__placeholder{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:10px;padding:32px;display:flex}.chat-shell__placeholder-title{margin:0;font-size:20px;font-weight:700}.chat-shell__placeholder-text{max-width:460px;color:var(--color-text-muted);margin:0;line-height:1.6}.chat-shell__error{align-items:center;gap:10px;padding:10px 20px 0;display:flex}.chat-shell__error .alert{flex:1;margin:0}.chat-shell__error-close{font:inherit;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;font-size:13px;text-decoration:underline}.progress-panel{flex-direction:column;gap:10px;display:flex}.progress-panel__title{letter-spacing:.02em;text-transform:uppercase;color:var(--color-text-muted);margin:0;font-size:13px}.progress-panel__topic{margin:0;font-size:13.5px;font-weight:600;line-height:1.35}.progress-panel__muted{color:var(--color-text-muted);margin:0;font-size:12px;line-height:1.5}.progress-panel__bar{background:var(--color-surface-muted);border-radius:999px;height:4px;overflow:hidden}.progress-panel__bar span{background:var(--color-accent);border-radius:999px;height:100%;transition:width .4s;display:block}.progress-panel__numbers{font-variant-numeric:tabular-nums;margin:0;font-size:13px}.progress-panel__current{border-top:1px solid var(--color-border);flex-direction:column;gap:6px;padding-top:10px;display:flex}.progress-panel__current-label{text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted);font-size:11.5px}.progress-panel__current-text{margin:0;font-size:13px;line-height:1.5}@media (width<=1150px){.chat-shell__body{grid-template-columns:230px minmax(0,1fr)}.chat-shell__rail{display:none}.chat-shell__account .account-menu{flex-direction:column;align-items:flex-start;gap:6px}.chat-shell__account .account-menu__email{max-width:100%}}@media (width<=800px){.chat-shell__body{grid-template-columns:minmax(0,1fr)}.chat-shell__sidebar{display:none}}.avatar-view{min-height:0;padding-top:var(--chat-header-height);flex-direction:column;flex:1;display:flex;overflow:hidden}.verify-email__resend{flex-direction:column;align-items:center;gap:10px;display:flex}.verify-email__timer{color:var(--color-text-muted);text-align:center;font-size:13px;line-height:1.5}.auth-card .verify-email__resend .verify-email__resendLink{width:auto;box-shadow:none;color:var(--color-accent);background:0 0;border:0;border-radius:0;align-self:center;padding:0;font-size:13px;font-weight:600}.auth-card .verify-email__resend .verify-email__resendLink:not(:disabled):hover{box-shadow:none;color:var(--color-primary);filter:none;background:0 0;text-decoration:underline}.auth-card .verify-email__resend .verify-email__resendLink:disabled{color:var(--color-text-muted)}:root{--color-bg:#f9fafb;--color-surface:#fff;--color-surface-muted:#eef2f7;--color-primary:#0b2b4f;--color-primary-soft:#e6f0ff;--color-accent:#2a6dd9;--color-brand:#2864cc;--color-border:#d5dde8;--color-text:#0f172a;--color-text-muted:#64748b;--color-success:#15803d;--color-success-soft:#dcfce7;--color-danger:#b91c1c;--color-danger-soft:#fee2e2;--color-warning:#92400e;--color-warning-soft:#fef3c7;--color-orange:#c2410c;--color-orange-soft:#ffedd5;--radius-sm:8px;--radius-md:12px;--radius-lg:24px;--shadow-card:0 20px 40px -10px #00142840;--font-sans:"Segoe UI", Roboto, system-ui, -apple-system, "Helvetica Neue", sans-serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace}*,:before,:after{box-sizing:border-box}*{margin:0}html,body,#root{height:100%}body{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;line-height:1.5}img,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3{font-weight:600;line-height:1.25}body{background:var(--color-bg);color:var(--color-text)}#root{justify-content:center;align-items:center;width:100%;padding:16px;display:flex}.form{flex-direction:column;gap:16px;display:flex}
