.ext-page{--xt-surface:color-mix(in srgb, var(--text) 4.5%, transparent);--xt-surface-2:color-mix(in srgb, var(--text) 7%, transparent);--xt-surface-3:color-mix(in srgb, var(--text) 11%, transparent);--xt-hair:color-mix(in srgb, var(--text) 6%, transparent);--xt-dim-2:color-mix(in srgb, var(--text-dim) 72%, var(--bg));--xt-ok:#34d399;--xt-warn:#fbbf24;--xt-bad:#fb7185;--xt-max:1120px;width:100%;color:var(--text);position:relative;overflow:clip}body:has(.ext-page) .bg-blobs{display:none}.ext-page .xt-eyebrow{letter-spacing:.02em;color:var(--text-dim);margin:0;font-size:14px;font-weight:500}.ext-page .xt-h1{letter-spacing:-.04em;text-wrap:balance;margin:18px 0 0;font-size:clamp(44px,6.4vw,92px);font-weight:600;line-height:1.02}.ext-page .xt-h1 em{color:var(--accent-bright);font-style:normal}.ext-page .xt-h2{letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:clamp(32px,4vw,56px);font-weight:600;line-height:1.05}.ext-page .xt-h3{letter-spacing:-.03em;margin:0;font-size:clamp(24px,2.6vw,34px);font-weight:600;line-height:1.1}.ext-page .xt-lead{max-width:620px;color:var(--text-dim);text-wrap:pretty;margin:24px 0 0;font-size:clamp(17px,1.6vw,21px);line-height:1.5}.ext-page .xt-p{max-width:480px;color:var(--text-dim);text-wrap:pretty;margin:16px 0 0;font-size:17px;line-height:1.55}.ext-page .xt-tag{background:color-mix(in srgb, var(--accent-bright) 12%, transparent);color:var(--accent-bright);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;margin-bottom:14px;padding:5px 11px;font-size:12px;font-weight:700;display:inline-block}.ext-page .xt-tag-hot{background:color-mix(in srgb, var(--xt-bad) 14%, transparent);color:var(--xt-bad)}.ext-page .xt-btn{height:52px;font:inherit;cursor:pointer;transition:background var(--dur-base) var(--ease-out), filter var(--dur-base) var(--ease-out), scale var(--dur-slow) var(--ease-bounce), translate var(--dur-slow) var(--ease-bounce);border:none;border-radius:16px;justify-content:center;align-items:center;gap:8px;padding:0 26px;font-size:16px;font-weight:600;text-decoration:none;display:inline-flex}.ext-page .xt-btn-primary{background:var(--accent-bright);color:var(--bg);box-shadow:0 12px 30px -12px color-mix(in srgb, var(--accent-bright) 70%, transparent)}.ext-page .xt-btn-primary:hover{filter:brightness(1.06)}.ext-page .xt-btn-ghost{background:var(--xt-surface-2);color:var(--text)}.ext-page .xt-btn-ghost:hover{background:var(--xt-surface-3)}.ext-page .xt-btn-sm{border-radius:11px;height:38px;padding:0 16px;font-size:14px}.ext-page .xt-link{font:inherit;color:var(--accent-bright);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-top:18px;padding:6px 0;font-size:16px;font-weight:500;display:inline-flex}.ext-page .xt-link svg{transition:transform var(--dur-base) var(--ease-out)}.ext-page .xt-hero{text-align:center;flex-direction:column;align-items:center;min-height:calc(100vh - 56px);padding:clamp(56px,10vh,120px) 24px 0;display:flex;position:relative}.ext-page .xt-hero-glow{background:radial-gradient(closest-side, color-mix(in srgb, var(--accent-bright) 10%, transparent), transparent 70%);pointer-events:none;width:min(1500px,170vw);height:1000px;position:absolute;top:-300px;left:50%;transform:translate(-50%)}.ext-page .xt-hero-copy{flex-direction:column;align-items:center;max-width:900px;display:flex;position:relative}.ext-page .xt-hero-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:36px;display:flex}.ext-page .xt-meta{color:var(--xt-dim-2);margin:20px 0 0;font-size:14px}@keyframes xtRise{0%{opacity:0;transform:translateY(18px)}}.ext-page .xt-eyebrow{animation:xtRise .8s var(--ease-spring) backwards}.ext-page .xt-hero .xt-h1{animation:xtRise .8s var(--ease-spring) 60ms backwards}.ext-page .xt-hero .xt-lead{animation:xtRise .8s var(--ease-spring) .12s backwards}.ext-page .xt-hero .xt-hero-actions{animation:xtRise .8s var(--ease-spring) .18s backwards}.ext-page .xt-hero .xt-meta{animation:xtRise .8s var(--ease-spring) .24s backwards}.ext-page .xt-hero-visual{animation:xtRise 1s var(--ease-spring) .32s backwards;perspective:1600px;width:min(1040px,100%);margin-top:clamp(48px,7vh,88px);position:relative}.ext-page .xt-browser{background:color-mix(in srgb, var(--bg) 80%, var(--text));transform-origin:50% 100%;border-radius:22px 22px 0 0;min-height:520px;position:relative;overflow:hidden;box-shadow:inset 0 -1px #ffffff0f,0 40px 120px -40px #000000e6}.ext-page .xt-browser-bar{border-bottom:1px solid var(--xt-hair);align-items:center;gap:8px;height:46px;padding:0 16px;display:flex}.ext-page .xt-dot{background:var(--xt-surface-3);border-radius:50%;width:10px;height:10px}.ext-page .xt-url{background:var(--xt-surface);height:28px;color:var(--text-dim);text-align:left;border-radius:8px;flex:1;align-items:center;margin-left:12px;padding:0 14px;font-size:12px;display:flex}.ext-page .xt-ext-icon{background:var(--accent-bright);width:26px;height:26px;color:var(--bg);border-radius:7px;justify-content:center;align-items:center;display:inline-flex}.ext-page .xt-browser-body{text-align:left;justify-content:center;padding:36px;display:flex;position:relative}.ext-page .xt-browser-body .xm-post{width:min(560px,100%)}.ext-page .xt-browser-popup{filter:drop-shadow(0 30px 60px #0009);width:300px;position:absolute;top:-6px;right:28px}@supports (animation-timeline:scroll()){@keyframes xtHeroCopyOut{to{opacity:0;transform:translateY(-40px)}}@keyframes xtHeroWindow{0%{transform:rotateX(8deg)scale(1)}to{opacity:.4;transform:rotateX(0)scale(.94)}}.ext-page .xt-hero-copy{animation:linear both xtHeroCopyOut;animation-timeline:scroll(root);animation-range:0 60vh}.ext-page .xt-browser{animation:linear both xtHeroWindow;animation-timeline:scroll(root);animation-range:0 90vh}}.ext-page .xt-stats{width:min(var(--xt-max), 100% - 48px);grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:clamp(64px,9vw,120px) auto 0;display:grid}.ext-page .xt-stat{background:var(--xt-surface);border-radius:24px;padding:28px 28px 26px}.ext-page .xt-stat strong{letter-spacing:-.04em;color:var(--accent-bright);font-variant-numeric:tabular-nums;font-size:clamp(40px,4.4vw,60px);font-weight:600;line-height:1;display:block}.ext-page .xt-stat span{color:var(--text-dim);margin-top:10px;font-size:15px;line-height:1.45;display:block}.ext-page .xt-chapter{width:min(var(--xt-max), 100% - 48px);margin:clamp(96px,12vw,180px) auto 0}.ext-page .xt-split{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:center;gap:clamp(32px,6vw,96px);display:grid}.ext-page .xt-split-rev .xt-split-copy{order:2}.ext-page .xt-split-visual{justify-content:center;display:flex}.ext-page .xt-sticky{grid-template-columns:minmax(0,6fr) minmax(0,5fr);align-items:start;gap:clamp(32px,6vw,96px);display:grid}.ext-page .xt-sticky-visual{justify-content:center;padding:24px 0;display:flex;position:sticky;top:calc(56px + 12vh)}.ext-page .xt-sticky-steps{flex-direction:column;gap:clamp(120px,18vh,200px);padding:8vh 0 20vh;display:flex}@supports (animation-timeline:view()){@keyframes xtIn{0%{opacity:0;transform:translateY(36px)}to{opacity:1;transform:none}}.ext-page .xt-split,.ext-page .xt-stats,.ext-page .xt-section-head,.ext-page .xt-step,.ext-page .xt-outro{animation:linear both xtIn;animation-timeline:view();animation-range:entry entry 50%}@keyframes xtFocus{0%{opacity:.18;transform:translateY(24px)}35%{opacity:1;transform:none}70%{opacity:1}to{opacity:.18}}.ext-page .xt-step-block{animation:linear both xtFocus;animation-timeline:view();animation-range:entry exit}}.ext-page .xt-install,.ext-page .xt-changelog{width:min(var(--xt-max), 100% - 48px);margin:clamp(96px,12vw,180px) auto 0}.ext-page .xt-section-head{max-width:640px}.ext-page .xt-steps{counter-reset:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:40px 0 0;padding:0;list-style:none;display:grid}.ext-page .xt-step{background:var(--xt-surface);border-radius:24px;flex-direction:column;gap:8px;padding:28px;display:flex;position:relative}.ext-page .xt-step-n{background:var(--accent-bright);width:34px;height:34px;color:var(--bg);border-radius:10px;justify-content:center;align-items:center;margin-bottom:8px;font-size:15px;font-weight:700;display:inline-flex}.ext-page .xt-step h3{letter-spacing:-.015em;margin:0;font-size:20px;font-weight:600}.ext-page .xt-step p{color:var(--text-dim);margin:0;font-size:15px;line-height:1.5}.ext-page .xt-step p strong{color:var(--text);font-weight:600}.ext-page .xt-step code{background:var(--xt-surface-2);color:var(--text);border-radius:6px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px}.ext-page .xt-step a{color:var(--accent-bright);text-decoration:none}.ext-page .xt-step .xt-btn{align-self:flex-start;margin-top:6px}.ext-page .xt-cl{background:var(--xt-surface);border-radius:24px;margin-top:32px;padding:8px}.ext-page .xt-cl-item{border-radius:16px;grid-template-columns:150px minmax(0,1fr);gap:20px;padding:20px;display:grid}.ext-page .xt-cl-item+.xt-cl-item{border-top:1px solid var(--xt-hair)}.ext-page .xt-cl-item.is-latest{background:var(--xt-surface-2)}.ext-page .xt-cl-ver{letter-spacing:-.01em;font-size:18px;font-weight:600}.ext-page .xt-cl-ver span{color:var(--text-dim);margin-top:4px;font-size:13px;font-weight:500;display:block}.ext-page .xt-cl-body{color:var(--text-dim);font-size:15px;line-height:1.55}.ext-page .xt-cl-body strong{color:var(--text);font-weight:600}.ext-page .xt-cl .xt-link{margin:8px 12px 6px}.ext-page .xt-outro{width:min(var(--xt-max), 100% - 48px);background:var(--xt-surface);text-align:center;border-radius:32px;flex-direction:column;align-items:center;margin:clamp(96px,12vw,180px) auto 0;padding:clamp(56px,8vw,96px) 24px;display:flex}.ext-page .xt-outro .xt-p{max-width:560px}.ext-page .xt-dock{z-index:40;background:color-mix(in srgb, var(--bg) 88%, var(--text));opacity:0;pointer-events:none;transition:translate var(--dur-slow) var(--ease-spring), opacity var(--dur-base) var(--ease-out);border-radius:999px;align-items:center;gap:12px;padding:8px 8px 8px 14px;display:flex;position:fixed;bottom:20px;right:20px;translate:0 24px;box-shadow:0 20px 50px -16px #000c}.ext-page .xt-dock.is-on{opacity:1;pointer-events:auto;translate:0}.ext-page .xt-dock-name{align-items:center;gap:8px;font-size:14px;font-weight:600;display:inline-flex}.ext-page .xt-dock-name svg{color:var(--accent-bright)}.ext-page .xm-quiz{color:#1f2328;text-align:left;background:#fff;border-radius:20px;width:min(460px,100%);padding:22px;box-shadow:0 30px 80px -30px #000c}.ext-page .xm-quiz-head{color:#6b7280;justify-content:space-between;align-items:center;font-size:12px;display:flex}.ext-page .xm-quiz-badge{color:#ffcf5c;background:#14161c;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:700}.ext-page .xm-quiz-q{background:#e5e7eb;border-radius:6px;height:12px;margin-top:18px}.ext-page .xm-quiz-q.short{width:60%;margin-top:8px}.ext-page .xm-quiz-opts{flex-direction:column;gap:8px;margin-top:18px;display:flex}.ext-page .xm-opt{border:1.5px solid #e5e7eb;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;display:flex}.ext-page .xm-opt i{background:#e5e7eb;border-radius:5px;width:55%;height:10px;display:block}.ext-page .xm-radio{border:2px solid #cbd5e1;border-radius:50%;flex:none;width:16px;height:16px;position:relative}.ext-page .xm-opt.is-pick{background:#eff6ff;border-color:#2563eb;animation:4s ease-in-out infinite xmPick}.ext-page .xm-opt.is-pick .xm-radio{border-color:#2563eb}.ext-page .xm-opt.is-pick .xm-radio:after{content:"";background:#2563eb;border-radius:50%;animation:4s ease-in-out infinite xmDot;position:absolute;inset:3px}@keyframes xmPick{0%,20%{background:0 0;border-color:#e5e7eb}35%,to{background:#eff6ff;border-color:#2563eb}}@keyframes xmDot{0%,20%{transform:scale(0)}35%,to{transform:scale(1)}}.ext-page .xm-quiz-foot{justify-content:flex-end;margin-top:18px;display:flex}.ext-page .xm-quiz-pill{color:#ffcf5c;background:#14161c;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700}.ext-page .xm-lb{background:#0b0c10;border-radius:20px;grid-template-columns:minmax(0,1fr) 120px;gap:12px;width:min(520px,100%);padding:16px;display:grid;box-shadow:0 30px 80px -30px #000000e6}.ext-page .xm-lb-img{transform-origin:40% 40%;background:#f4f1ea;border-radius:12px;flex-direction:column;grid-row:span 2;gap:12px;min-height:250px;padding:26px 22px;animation:6s ease-in-out infinite xmZoom;display:flex}@keyframes xmZoom{0%,25%{transform:scale(1)}55%,75%{transform:scale(1.18)translate(-6%,-4%)}}.ext-page .xm-lb-line{background:#b8b0a2;border-radius:4px;height:8px}.ext-page .xm-lb-bar{color:#cfd3da;background:#ffffff14;border-radius:10px;justify-content:space-between;align-self:start;align-items:center;padding:8px 10px;font-size:12px;display:flex}.ext-page .xm-lb-zoom{color:#ffcf5c;font-weight:600}.ext-page .xm-lb-comments{background:#ffffff0d;border-radius:10px;flex-direction:column;gap:8px;padding:10px;display:flex}.ext-page .xm-lb-c{background:#ffffff2e;border-radius:4px;height:8px}.ext-page .xm-lb-c.short{width:60%}.ext-page .xm-post{color:#1f2328;text-align:left;background:#fff;border-radius:18px;width:min(520px,100%);padding:18px 20px;position:relative;box-shadow:0 30px 80px -30px #000c}.ext-page .xm-post-head{align-items:center;gap:10px;display:flex}.ext-page .xm-post-avatar{background:#d9dde3;border-radius:50%;width:32px;height:32px}.ext-page .xm-post-meta{flex-direction:column;gap:6px;display:flex}.ext-page .xm-post-meta i{background:#e5e7eb;border-radius:4px;width:120px;height:8px;display:block}.ext-page .xm-post-meta i.short{width:70px}.ext-page .xm-post-title{letter-spacing:-.01em;margin-top:16px;font-size:17px;font-weight:700}.ext-page .xm-post-files{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.ext-page .xm-post-files span{color:#4b5563;background:#f3f4f6;border-radius:8px;padding:5px 9px;font-size:12px}.ext-page .xm-getlink{color:#14161c;background:#ffcf5c;border-radius:10px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:700;animation:3s ease-in-out infinite xmPulse;display:inline-flex;position:absolute;top:16px;right:16px;box-shadow:0 8px 20px -8px #ffcf5ccc}@keyframes xmPulse{50%{transform:scale(1.06)}}@media (prefers-reduced-motion:reduce){.ext-page *,.ext-page :before,.ext-page :after{transition:none!important;animation:none!important}.ext-page .xt-hero-copy,.ext-page .xt-browser,.ext-page .xt-step-block{opacity:1;transform:none}}@media (max-width:900px){.ext-page .xt-split,.ext-page .xt-sticky{grid-template-columns:1fr;gap:32px}.ext-page .xt-split-rev .xt-split-copy{order:0}.ext-page .xt-sticky-visual{padding:0;position:static}.ext-page .xt-sticky-steps{gap:56px;padding:8px 0 0}.ext-page .xt-step-block{min-height:0}.ext-page .xt-stats,.ext-page .xt-steps{grid-template-columns:1fr;gap:12px}.ext-page .xt-stat{padding:22px}.ext-page .xt-cl-item{grid-template-columns:1fr;gap:8px}@supports (animation-timeline:view()){.ext-page .xt-step-block{animation-name:xtIn;animation-range:entry entry 50%}}}@media (max-width:640px){.ext-page .xt-hero{min-height:0;padding:40px 20px 0}.ext-page .xt-hero-actions{flex-direction:column;width:100%}.ext-page .xt-hero-actions .xt-btn{width:100%}.ext-page .xt-hero-visual{margin-top:40px;width:calc(100% + 40px);margin-inline:-20px}.ext-page .xt-browser{border-radius:18px 18px 0 0;min-height:0}.ext-page .xt-url{font-size:11px}.ext-page .xt-browser-body{flex-direction:column;gap:16px;padding:20px 16px 0}.ext-page .xt-browser-popup{filter:none;width:100%;position:static}.ext-page .xt-browser-popup .xp{width:100%}.ext-page .xm-post{padding:16px}.ext-page .xm-getlink{margin-top:12px;position:static}.ext-page .xt-stats,.ext-page .xt-chapter,.ext-page .xt-install,.ext-page .xt-changelog,.ext-page .xt-outro{width:calc(100% - 32px)}.ext-page .xt-outro{border-radius:24px;padding:44px 20px}.ext-page .xt-dock{left:12px;right:12px;bottom:calc(64px + env(safe-area-inset-bottom,0px) + 12px);justify-content:space-between}.ext-page .xt-p{font-size:16px}}body:has(.ext-page) #backToTop{display:none!important}.ext-page .xt-hero{perspective:1600px}.ext-page .xt-hero-visual{perspective:none;transform-style:preserve-3d;transform-origin:50% 100%}.ext-page .xt-browser{transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:transform .35s var(--ease-out);will-change:transform}.ext-page .xt-glare{z-index:2;pointer-events:none;background:radial-gradient(600px circle at var(--glare-x,50%) var(--glare-y,0%), #ffffff12, transparent 60%);transition:opacity .3s;position:absolute;inset:0}@supports (animation-timeline:scroll()){.ext-page .xt-browser{animation:none}.ext-page .xt-hero-visual{animation:xtRise 1s var(--ease-spring) .32s backwards, xtHeroWindow linear both;animation-timeline:auto,scroll(root);animation-range:normal,0 90vh}}.ext-page .xt-browser-popup{width:300px;top:8px;right:24px}.ext-page .xp{color:#e8edf5;text-align:left;background:#0f131a;border-radius:14px;width:300px;padding:14px;font-size:12px;box-shadow:0 30px 80px -30px #000000d9,inset 0 0 0 1px #ffffff0f}.ext-page .xp-head{align-items:center;gap:10px;display:flex}.ext-page .xp-logo{color:#14161c;background:linear-gradient(135deg,#ffcf5c,#d97706);border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.ext-page .xp-title{font-size:14px;font-weight:700}.ext-page .xp-ver{color:#8792a6;font-size:11px}.ext-page .xp-account{background:#151a23;border-radius:10px;align-items:center;gap:10px;margin-top:14px;padding:10px;display:flex}.ext-page .xp-avatar{color:#14161c;background:#ffcf5c;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-weight:700;display:inline-flex;position:relative}.ext-page .xp-dot{background:#4ade80;border:2px solid #151a23;border-radius:50%;width:10px;height:10px;position:absolute;bottom:-1px;right:-1px}.ext-page .xp-account-info{flex:1;min-width:0}.ext-page .xp-name{font-size:13px;font-weight:600}.ext-page .xp-email{color:#8792a6;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.ext-page .xp-ico{color:#8792a6;background:#ffffff0a;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.ext-page .xp-primary{color:#14161c;background:#ffcf5c;border-radius:10px;justify-content:center;align-items:center;gap:8px;height:38px;margin-top:10px;font-size:13px;font-weight:700;display:flex}.ext-page .xp-label{letter-spacing:.08em;text-transform:uppercase;color:#5a6377;margin:14px 0 6px;font-size:10px;font-weight:700}.ext-page .xp-row{background:#151a23;border-radius:10px;align-items:center;gap:10px;padding:10px;display:flex}.ext-page .xp-row-title{font-size:12.5px;font-weight:600}.ext-page .xp-row-desc{color:#8792a6;font-size:11px}.ext-page .xp-row>div{flex:1}.ext-page .xp-toggle{background:#ffffff24;border-radius:999px;flex:none;width:34px;height:20px;position:relative}.ext-page .xp-toggle:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;position:absolute;top:3px;left:3px}.ext-page .xp-toggle.is-on{background:#ffcf5c}.ext-page .xp-toggle.is-on:after{background:#14161c;left:17px}.ext-page .xp-row-icon{color:#ffcf5c;background:#ffcf5c1f;border-radius:8px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex}.ext-page .xp-chev{color:#5a6377}.ext-page .xf{--xf-bg:#0b0e14;--xf-surface:#12161f;--xf-surface-2:#1a1f2b;--xf-line:#232936;--xf-text:#e8edf5;--xf-muted:#8792a6;--xf-faint:#5a6377;--xf-brand:#38bdf8;--xf-brand-dim:#0e2a3a;--xf-brand-line:#1d556f;--xf-ok:#4ade80;--xf-warn:#fbbf24;--xf-err:#f87171;--xf-mono:"Cascadia Mono", ui-monospace, Consolas, "SF Mono", monospace;background:var(--xf-bg);width:min(640px,100%);min-height:440px;color:var(--xf-text);text-align:left;border-radius:16px;grid-template-columns:136px minmax(0,1fr);font-size:12px;display:grid;overflow:hidden;box-shadow:0 30px 80px -30px #000000e6,inset 0 0 0 1px #ffffff0d}.ext-page .xf-rail{border-right:1px solid var(--xf-line);background:var(--xf-surface);flex-direction:column;gap:10px;padding:14px 12px;display:flex}.ext-page .xf-rail-logo{font-size:12.5px;font-weight:700}.ext-page .xf-chip{background:var(--xf-surface-2);color:var(--xf-ok);border-radius:999px;margin-top:6px;padding:2px 8px;font-size:10.5px;display:inline-block}.ext-page .xf-rail-label{letter-spacing:.08em;text-transform:uppercase;color:var(--xf-faint);margin-top:6px;font-size:10px;font-weight:700}.ext-page .xf-rail-nav{flex-direction:column;gap:4px;display:flex}.ext-page .xf-rail-nav span{color:var(--xf-muted);font-family:var(--xf-mono);border-radius:8px;padding:7px 10px;font-weight:600}.ext-page .xf-rail-nav span.is-on{background:var(--xf-brand-dim);color:var(--xf-brand)}.ext-page .xf-rail-note{color:var(--xf-faint);margin-top:auto;font-size:10.5px}.ext-page .xf-main{flex-direction:column;gap:10px;min-width:0;padding:14px 16px;display:flex}.ext-page .xf-lagbar{color:var(--xf-warn);background:#fbbf241a;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:11.5px;font-weight:600;display:flex}.ext-page .xf-ghost,.ext-page .xf-tab,.ext-page .xf-danger{border:1px solid var(--xf-line);color:var(--xf-muted);white-space:nowrap;border-radius:7px;padding:5px 9px;font-size:11px;font-weight:600}.ext-page .xf-tab.is-on{border-color:var(--xf-brand-line);background:var(--xf-brand-dim);color:var(--xf-brand)}.ext-page .xf-danger{color:var(--xf-err);background:#f871711a;border-color:#f8717159}.ext-page .xf-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.ext-page .xf-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--xf-faint);align-items:center;gap:6px;font-size:10px;font-weight:700;display:flex}.ext-page .xf-pulse{background:var(--xf-ok);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite xfPulse}@keyframes xfPulse{50%{opacity:.3}}.ext-page .xf-h1{letter-spacing:-.01em;margin:2px 0 0;font-size:18px;font-weight:700}.ext-page .xf-h1 small{color:var(--xf-muted);margin-left:8px;font-size:11px;font-weight:500}.ext-page .xf-tools{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ext-page .xf-seg{background:var(--xf-surface-2);border-radius:8px;padding:2px;display:inline-flex}.ext-page .xf-seg b{color:var(--xf-muted);border-radius:6px;padding:4px 8px;font-size:11px;font-weight:600}.ext-page .xf-seg b.is-on{background:var(--xf-surface);color:var(--xf-text)}.ext-page .xf-meta{color:var(--xf-faint);flex-wrap:wrap;gap:10px;font-size:10.5px;display:flex}.ext-page .xf-meta b{color:var(--xf-muted)}.ext-page .xf-age{color:var(--xf-ok)}.ext-page .xf-advice{color:var(--xf-muted);background:#4ade8014;border-radius:8px;padding:8px 10px;font-size:11.5px}.ext-page .xf-advice b{color:var(--xf-ok)}.ext-page .xf-tt{grid-template-columns:74px repeat(3,minmax(0,1fr));gap:6px;display:grid}.ext-page .xf-tt-h{color:var(--xf-muted);text-align:center;padding-bottom:2px;font-size:10.5px;font-weight:700}.ext-page .xf-tt-slot{padding-top:8px}.ext-page .xf-tt-slot b{font-size:11.5px;font-weight:600;display:block}.ext-page .xf-tt-slot span{font-family:var(--xf-mono);color:var(--xf-muted);font-size:9.5px;display:block}.ext-page .xf-cell{background:var(--xf-surface);border:1px solid var(--xf-line);border-radius:8px;padding:8px 9px;transition:background .3s,border-color .3s;position:relative;overflow:hidden}.ext-page .xf-fill{transition:width .6s var(--ease-spring);position:absolute;top:0;bottom:0;left:0}.ext-page .xf-fill.low{background:#4ade801a}.ext-page .xf-fill.mid{background:#fbbf241c}.ext-page .xf-fill.high{background:#f871711c}.ext-page .xf-cell-body{position:relative}.ext-page .xf-nm{font-family:var(--xf-mono);align-items:center;gap:5px;font-size:13px;font-weight:600;display:flex}.ext-page .xf-sub{align-items:baseline;gap:5px;margin-top:4px;display:flex}.ext-page .xf-room{color:var(--xf-faint);font-size:10px}.ext-page .xf-cnt{font-family:var(--xf-mono);margin-left:auto;font-size:11.5px;font-weight:600}.ext-page .xf-cnt.low{color:var(--xf-ok)}.ext-page .xf-cnt.mid{color:var(--xf-warn)}.ext-page .xf-cnt.high{color:var(--xf-err)}.ext-page .xf-unit{color:var(--xf-faint);font-size:9.5px}.ext-page .xf-cell.is-cur{background:var(--xf-brand-dim);border-color:var(--xf-brand-line)}.ext-page .xf-cell.is-cur .xf-nm{color:var(--xf-brand)}.ext-page .xf-tagcur{color:#7fb9d6;margin-left:auto;font-size:10px}.ext-page .xf-cell.is-clash{border-color:#3a2226}.ext-page .xf-hatch{background:repeating-linear-gradient(135deg,#0000 0 6px,#f8717112 6px 12px);position:absolute;inset:0}.ext-page .xf-cell.is-clash .xf-nm{color:#c98a8a}.ext-page .xf-cell.is-clash .xf-name{-webkit-text-decoration:line-through #f8717180;text-decoration:line-through #f8717180}.ext-page .xf-why{color:var(--xf-err);font-size:10px;font-weight:600}.ext-page .xf-legend{color:var(--xf-faint);flex-wrap:wrap;gap:10px;margin-top:2px;font-size:10px;display:flex}.ext-page .xf-legend span{align-items:center;gap:5px;display:inline-flex}.ext-page .xf-legend i{background:var(--xf-surface-2);border-radius:3px;width:10px;height:10px}.ext-page .xf-legend i.grad{background:linear-gradient(90deg,#4ade801a,#f8717140)}.ext-page .xf-legend i.ok{background:#4ade8080}.ext-page .xf-legend i.warn{background:#fbbf2480}.ext-page .xf-legend i.err{background:#f8717180}.ext-page .xf-legend i.hatch{background:repeating-linear-gradient(135deg,#0000 0 2px,#f8717180 2px 4px)}.ext-page .xf-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.ext-page .xf-stats>div{background:var(--xf-surface);border:1px solid var(--xf-line);border-radius:10px;padding:10px}.ext-page .xf-v{font-family:var(--xf-mono);font-size:20px;font-weight:700}.ext-page .xf-v small{color:var(--xf-faint);margin-left:3px;font-size:10px}.ext-page .xf-k{color:var(--xf-muted);margin-top:2px;font-size:10px}.ext-page .xf-log-label{letter-spacing:.08em;text-transform:uppercase;color:var(--xf-faint);font-size:10px;font-weight:700}.ext-page .xf-log{font-family:var(--xf-mono);flex-direction:column;gap:4px;font-size:10.5px;display:flex}.ext-page .xf-log>div{gap:10px;display:flex}.ext-page .xf-log .t{color:var(--xf-faint)}.ext-page .xf-log .dim{color:var(--xf-muted)}.ext-page .xf-log .warn{color:var(--xf-warn)}.ext-page .xf-log .info{color:var(--xf-brand)}.ext-page .xf-hint{color:var(--xf-muted);justify-content:space-between;gap:8px;font-size:10.5px;display:flex}.ext-page .xf-faint{color:var(--xf-faint)}.ext-page .xf-roster{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.ext-page .xf-student{background:var(--xf-surface);border:1px solid var(--xf-line);border-radius:10px;flex-direction:column;align-items:center;gap:6px;padding:8px;display:flex}.ext-page .xf-student-photo{background:linear-gradient(160deg,#2a3140,#1a1f2b);border-radius:50%;width:44px;height:44px}.ext-page .xf-student-name{background:#2a3140;border-radius:4px;height:7px}.ext-page .xf-student-id{background:#1f2532;border-radius:3px;width:40%;height:6px}.ext-page .xf-main>*{animation:xfIn .35s var(--ease-spring) backwards}@keyframes xfIn{0%{opacity:0;transform:translateY(6px)}}.ext-page .xt-sticky-visual .xf{transform:none}.ext-page .xt-more-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:40px;display:grid}.ext-page .xt-more-tile{background:var(--xt-surface);transition:background var(--dur-base) var(--ease-out), translate var(--dur-slow) var(--ease-spring);border-radius:22px;padding:26px}.ext-page .xt-more-tile:hover{background:var(--xt-surface-2);translate:0 -2px}.ext-page .xt-more-tile h3{letter-spacing:-.015em;margin:0;font-size:19px;font-weight:600}.ext-page .xt-more-tile p{color:var(--text-dim);margin:8px 0 0;font-size:15px;line-height:1.5}@supports (animation-timeline:view()){.ext-page .xt-more-tile{animation:linear both xtIn;animation-timeline:view();animation-range:entry entry 55%}}@media (max-width:900px){.ext-page .xt-more-grid{grid-template-columns:1fr;gap:12px}.ext-page .xf{grid-template-columns:1fr;min-height:0}.ext-page .xf-rail{border-right:none;border-bottom:1px solid var(--xf-line);flex-flow:wrap;align-items:center;gap:8px}.ext-page .xf-rail-label,.ext-page .xf-rail-note{display:none}.ext-page .xf-rail-nav{flex-direction:row;gap:4px}.ext-page .xf-rail-nav span{padding:5px 8px;font-size:11px}.ext-page .xf-tt{grid-template-columns:60px repeat(3,minmax(0,1fr));gap:4px}.ext-page .xf-nm{font-size:12px}.ext-page .xf-roster{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.ext-page .xt-browser{transform:none!important}}.ext-page .xt-sticky-steps{gap:clamp(72px,10vh,120px);padding:4vh 0 16vh}.ext-page .xt-step-block{min-height:0}.ext-page .xt-step-idx{letter-spacing:.1em;color:var(--accent-bright);font-variant-numeric:tabular-nums;margin-bottom:12px;font-size:13px;font-weight:700;display:block}.ext-page .xt-facts{flex-direction:column;gap:10px;max-width:480px;margin:20px 0 0;padding:0;list-style:none;display:flex}.ext-page .xt-facts li{color:var(--text-dim);padding-left:18px;font-size:15px;line-height:1.5;position:relative}.ext-page .xt-facts li:before{content:"";background:var(--accent-bright);border-radius:50%;width:6px;height:6px;position:absolute;top:9px;left:0}.ext-page .xt-facts b{color:var(--text);font-weight:600}.ext-page .ok{color:var(--xt-ok)}.ext-page .warn{color:var(--xt-warn)}.ext-page .err{color:var(--xt-bad)}.ext-page .xt-facts-card{background:var(--xt-surface);border-radius:16px;max-width:480px;margin-top:20px;padding:6px 16px}.ext-page .xt-fact-row{color:var(--text);justify-content:space-between;gap:16px;padding:11px 0;font-size:15px;display:flex}.ext-page .xt-fact-row+.xt-fact-row{border-top:1px solid var(--xt-hair)}.ext-page .xt-fact-k{color:var(--text-dim)}:is(html:has(.ext-page),body:has(.ext-page)){overflow-x:clip}.ext-page{overflow:visible}.ext-page .xf-wrap{width:min(640px,100%);position:relative}.ext-page .xf-float{z-index:2;background:color-mix(in srgb, var(--bg) 82%, var(--text));animation:xfFloatIn .5s var(--ease-bounce) backwards;border-radius:14px;flex-direction:column;gap:2px;padding:12px 16px;display:flex;position:absolute;bottom:-22px;right:-18px;box-shadow:0 24px 60px -20px #000000d9,inset 0 0 0 1px #ffffff0f}@keyframes xfFloatIn{0%{opacity:0;transform:translateY(10px)scale(.96)}}.ext-page .xf-float b{letter-spacing:-.01em;color:var(--accent-bright);font-size:15px;font-weight:700}.ext-page .xf-float.err b{color:var(--xt-bad)}.ext-page .xf-float.warn b{color:var(--xt-warn)}.ext-page .xf-float.ok b{color:var(--xt-ok)}.ext-page .xf-float span{color:var(--text-dim);font-size:12px}@media (max-width:900px){.ext-page .xf-float{margin-top:10px;animation:none;position:static}}
