.ab-kicker{border:1px solid color-mix(in srgb, var(--ring) 25%, transparent);background:color-mix(in srgb, var(--primary) 8%, transparent);color:var(--accent-foreground);border-radius:99px;align-items:center;gap:8px;padding:6px 16px;font-size:.72rem;font-weight:600;display:inline-flex}.ab-timeline-bar-wrap{padding:0 32px}.ab-timeline-bar{justify-content:space-between;align-items:center;height:80px;padding:0 8px;display:flex;position:relative}.ab-timeline-bar:before{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--ring) 40%, transparent) 8%, color-mix(in srgb, var(--ring) 60%, transparent) 50%, color-mix(in srgb, var(--ring) 40%, transparent) 92%, transparent);height:2px;position:absolute;top:calc(50% - 1px);left:24px;right:24px}.ab-year-marker{z-index:2;background:var(--card);border:2px solid color-mix(in srgb, var(--ring) 25%, transparent);cursor:pointer;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:64px;height:64px;transition:all .3s cubic-bezier(.3,.7,.3,1);display:flex;position:relative}.ab-year-marker .y-label{color:var(--accent-foreground);font-variant-numeric:tabular-nums;font-size:.86rem;font-weight:800}.ab-year-marker:hover,.ab-year-marker:focus-visible{border-color:var(--ring);background:color-mix(in srgb, var(--primary) 8%, transparent);box-shadow:0 0 22px -4px color-mix(in srgb, var(--primary) 50%, transparent);transform:translateY(-2px)}.ab-year-marker.active{background:color-mix(in srgb, var(--primary) 18%, transparent);border-color:var(--ring);box-shadow:0 0 28px -2px color-mix(in srgb, var(--primary) 60%, transparent), inset 0 1px 0 #ffffff1a;transform:translateY(-2px)scale(1.06)}.ab-year-marker.active .y-label{color:var(--foreground)}.ab-timeline-handle{top:0;bottom:0;left:var(--handle-pos,8%);pointer-events:none;z-index:4;touch-action:none;transition:left .45s cubic-bezier(.3,.7,.3,1);position:absolute;transform:translate(-50%)}.ab-timeline-handle.dragging{transition:none}.ab-handle-line{background:linear-gradient(180deg, transparent, var(--ring) 15%, var(--ring) 85%, transparent);width:3px;box-shadow:0 0 12px color-mix(in srgb, var(--primary) 60%, transparent);position:absolute;top:8px;bottom:8px;left:50%;transform:translate(-50%)}.ab-handle-grip{background:var(--primary);border:2px solid color-mix(in srgb, var(--ring) 80%, white 20%);width:44px;height:44px;box-shadow:0 8px 28px -4px #020614d9, 0 0 28px -4px color-mix(in srgb, var(--primary) 55%, transparent), inset 0 1px 0 #ffffff2e;color:var(--primary-foreground);cursor:grab;pointer-events:auto;-webkit-user-select:none;user-select:none;touch-action:none;border-radius:50%;justify-content:center;align-items:center;gap:1px;transition:transform .15s,box-shadow .25s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ab-handle-grip:hover{box-shadow:0 12px 32px -4px #020614e6, 0 0 36px -4px color-mix(in srgb, var(--primary) 70%, transparent), inset 0 1px 0 #fff3;transform:translate(-50%,-50%)scale(1.08)}.ab-handle-grip:active{cursor:grabbing;transform:translate(-50%,-50%)scale(.95)}.ab-handle-grip svg{width:13px;height:13px}.ab-handle-year{color:var(--primary-foreground);font-variant-numeric:tabular-nums;background:var(--primary);border:1px solid color-mix(in srgb, var(--ring) 45%, transparent);white-space:nowrap;letter-spacing:.02em;border-radius:99px;padding:3px 12px;font-size:.86rem;font-weight:800;position:absolute;top:-38px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px -2px #020614b3}.ab-timeline-stage{border:1px solid var(--border);--ab-bg:#fff;--ab-deep:#dbe7fa;--ab-line:#93c5fd;--ab-light:#3b82f6;--ab-label:#1d4ed8;--ab-star:#93c5fd;--ab-sign-bg:#e2ecfc;--ab-tablet-screen-bg:#f8fafc;--ab-soft:#2563eb59;--ab-faint:#2563eb14;--ab-win-off:#2563eb1a;--ab-slot-fill:#2563eb14;--ab-slot-stroke:#2563eb4d;--ab-slot-line:#2563eb66;background:linear-gradient(#d6e8ff 0%,#fff 55% 100%);border-radius:24px;height:420px;margin-top:48px;position:relative;overflow:hidden;box-shadow:0 24px 60px -40px #2563eb59,inset 0 1px #fffc}.dark .ab-timeline-stage{--ab-bg:#1a2542;--ab-deep:#0d1526;--ab-line:#3b82f6;--ab-light:#60a5fa;--ab-label:#8db4ff;--ab-star:#fff;--ab-sign-bg:#0d1526;--ab-tablet-screen-bg:#0a1124;--ab-soft:#60a5fa4d;--ab-faint:#3b82f614;--ab-win-off:#ffffff0d;--ab-slot-fill:#3b82f612;--ab-slot-stroke:#60a5fa38;--ab-slot-line:#60a5fa59;--ab-code-tx:#e2e8f0;--ab-code-kw:#c084fc;--ab-code-str:#86efac;--ab-code-cm:#64748b;background:radial-gradient(320px 220px at 50% 0,#3b82f61a,#0000 70%),linear-gradient(#111c36,#0b1324);border-color:#60a5fa2e;box-shadow:0 30px 70px -38px #020614d9,inset 0 1px #ffffff0d}.ab-year-scene{opacity:0;pointer-events:none;padding:32px 0;transition:opacity .55s cubic-bezier(.35,.7,.25,1),transform .55s cubic-bezier(.35,.7,.25,1);position:absolute;inset:0;transform:translateY(16px)}.ab-year-scene.active{opacity:1;pointer-events:auto;transform:translateY(0)}.ab-year-scene svg{width:100%;height:100%;display:block}.ab-scene-caption{-webkit-backdrop-filter:blur(10px);background:#070d1c8c;border:1px solid #ffffff14;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;display:flex;position:absolute;bottom:24px;left:32px;right:32px}.ab-scene-caption-year{color:#8db4ff;font-variant-numeric:tabular-nums;font-size:1.1rem;font-weight:800}.ab-scene-caption-text{color:#c6d3ec;text-align:end;flex:1;font-size:.92rem;line-height:1.7}[dir=ltr] .ab-scene-caption-text{text-align:start}.ab-compare{-webkit-user-select:none;user-select:none;touch-action:none;width:100%;max-width:960px;margin-inline:auto;position:relative}[dir=rtl] .ab-screen-layer--top{clip-path:inset(0 0 0 calc(100% - var(--pos,50%)));-webkit-clip-path:inset(0 0 0 calc(100% - var(--pos,50%)))}[dir=rtl] .ab-compare-grip svg:first-child,[dir=ltr] .ab-compare-grip svg:last-child{transform:scaleX(-1)}.ab-compare-hint{color:var(--muted-foreground);white-space:nowrap;justify-content:center;align-items:center;gap:8px;margin-top:20px;font-size:.82rem;display:flex}.ab-compare-hint svg{width:14px;height:14px;color:var(--accent-foreground)}@keyframes ab-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes ab-live-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}@keyframes ab-cursor-blink{0%,50%{opacity:1}51%,to{opacity:0}}.ab-team-avatar{border:2px solid color-mix(in srgb, var(--ring) 30%, transparent);width:96px;height:96px;box-shadow:0 0 30px -10px color-mix(in srgb, var(--primary) 40%, transparent), inset 0 0 0 3px color-mix(in srgb, var(--background) 70%, transparent);background:linear-gradient(135deg, var(--primary), color-mix(in srgb, var(--primary) 55%, black));color:var(--primary-foreground);border-radius:50%;justify-content:center;align-items:center;margin:0 auto;font-size:26px;font-weight:800;transition:border-color .3s,box-shadow .3s;display:flex;overflow:hidden}.ab-team-card:hover .ab-team-avatar{border-color:color-mix(in srgb, var(--ring) 60%, transparent);box-shadow:0 0 36px -8px color-mix(in srgb, var(--primary) 55%, transparent), inset 0 0 0 3px color-mix(in srgb, var(--background) 70%, transparent)}.ab-team-tag{background:color-mix(in srgb, var(--primary) 8%, transparent);border:1px solid color-mix(in srgb, var(--ring) 22%, transparent);color:var(--accent-foreground);letter-spacing:.02em;border-radius:99px;margin-top:10px;padding:3px 10px;font-size:.68rem;font-weight:600;display:inline-block}@media (max-width:1080px){.ab-dash{grid-template-columns:140px 1fr}.ab-code-area{grid-template-columns:1fr 150px}}@media (max-width:780px){.ab-timeline-bar-wrap{padding:0 16px}.ab-year-marker{width:54px;height:54px}.ab-year-marker .y-label{font-size:.78rem}.ab-timeline-stage{height:340px}.ab-scene-caption{flex-direction:column;align-items:flex-start;gap:6px;padding:12px 14px;bottom:18px;left:18px;right:18px}.ab-scene-caption-text{text-align:start;font-size:.85rem}.ab-compare{touch-action:pan-y}.ab-tablet{aspect-ratio:16/11;border-radius:22px;padding:10px 12px 18px}.ab-compare-handle{top:10px;bottom:18px}.ab-dash{grid-template-columns:1fr;font-size:10px}.ab-dash-sidebar{display:none}.ab-code-area{grid-template-columns:1fr}.ab-code-side{display:none}.ab-code-terminal{height:38%}.ab-dash-stats{gap:6px}.ab-dash-stat{padding:7px 9px}.ab-dash-stat-value{font-size:14px}.ab-dash-storage-row{grid-template-columns:1fr}.ab-dash-file-progress{width:50px}.ab-year-scene{padding:12px 10px}}@media (max-width:480px){.ab-year-marker{border-width:1.5px;width:44px;height:44px}.ab-year-marker .y-label{font-size:.7rem}.ab-timeline-stage{--ab-code-tx:#0f172a;--ab-code-kw:#7c3aed;--ab-code-str:#15803d;--ab-code-cm:#94a3b8;height:220px}.ab-tablet{aspect-ratio:16/12;border-radius:18px;padding:8px 10px 14px}.ab-dash-stats{grid-template-columns:1fr 1fr;gap:5px}.ab-dash-file{grid-template-columns:20px 1fr;gap:8px}.ab-dash-file-progress,.ab-dash-file-size{display:none}.ab-dash-chart-bars{height:18px}.ab-dash-chart-bar{width:3px}.ab-dash-upload-status{padding:7px 9px}.ab-dash-upload-status-name{font-size:9.5px}.ab-dash-upload-status-pct{font-size:12px}.ab-dash-upload-status-size{font-size:8px}.ab-code-terminal{height:42%}.ab-code-terminal-body{font-size:9px}.ab-code-line-content{font-size:9.5px}.ab-compare-hint{font-size:.74rem}}@media (prefers-reduced-motion:reduce){.ab-reveal{opacity:1;transition:none;translate:0}.ab-year-scene,.ab-code-line,.ab-term-line{transition-duration:.01ms!important}.ab-live-dot,.ab-code-cursor,.ab-term-cursor,.ab-code-side-status-dot,.ab-dash-storage-card-fill:after,.ab-dash-upload-status-fill:after{animation:none!important}.ab-timeline-handle{transition:none}}:root:not(.dark) .ab-compare{--s-text:#0f172a;--s-sub:#475569;--s-mute:#64748b;--s-acc:#1d4ed8;--s-line:#e2e8f0;--s-track:#e2e8f0;--s-tint:#2563eb14}:root:not(.dark) .ab-dash{color:var(--s-text);background:linear-gradient(#f8fafc 0%,#eef2f7 100%)}:root:not(.dark) .ab-dash-sidebar{border-color:var(--s-line);background:#fff}:root:not(.dark) .ab-dash-brand,:root:not(.dark) .ab-dash-user{border-color:var(--s-line)}:root:not(.dark) .ab-dash-brand-text,:root:not(.dark) .ab-dash-user-name,:root:not(.dark) .ab-dash-breadcrumb strong,:root:not(.dark) .ab-dash-stat-value,:root:not(.dark) .ab-dash-storage-card-value,:root:not(.dark) .ab-dash-file-name,:root:not(.dark) .ab-dash-storage-widget-used,:root:not(.dark) .ab-dash-upload-status-name,:root:not(.dark) .ab-dash-upload-status-pct{color:var(--s-text)}:root:not(.dark) .ab-dash-nav-item,:root:not(.dark) .ab-dash-breadcrumb,:root:not(.dark) .ab-dash-stat-label,:root:not(.dark) .ab-dash-storage-card-title,:root:not(.dark) .ab-dash-storage-widget-label,:root:not(.dark) .ab-dash-files-head,:root:not(.dark) .ab-dash-chart-title,:root:not(.dark) .ab-dash-upload-status-head{color:var(--s-sub)}:root:not(.dark) .ab-dash-user-role,:root:not(.dark) .ab-dash-storage-widget-total,:root:not(.dark) .ab-dash-file-size,:root:not(.dark) .ab-dash-upload-status-size,:root:not(.dark) .ab-dash-search{color:var(--s-mute)}:root:not(.dark) .ab-dash-nav-item.active{background:var(--s-tint);color:var(--s-acc);border-color:#2563eb40}:root:not(.dark) .ab-dash-nav-divider{background:var(--s-line)}:root:not(.dark) .ab-dash-storage-widget{background:var(--s-tint);border-color:var(--s-line)}:root:not(.dark) .ab-dash-search,:root:not(.dark) .ab-dash-icon-btn,:root:not(.dark) .ab-dash-stat,:root:not(.dark) .ab-dash-storage-card,:root:not(.dark) .ab-dash-files,:root:not(.dark) .ab-dash-chart{border-color:var(--s-line);background:#fff}:root:not(.dark) .ab-dash-icon-btn{color:var(--s-sub)}:root:not(.dark) .ab-dash-stat:before{background:linear-gradient(90deg,#0000,#2563eb59,#0000)}:root:not(.dark) .ab-dash-stat-change{color:#2563eb}:root:not(.dark) .ab-dash-files-head,:root:not(.dark) .ab-dash-file{border-color:var(--s-line)}:root:not(.dark) .ab-dash-files-head-link,:root:not(.dark) .ab-dash-upload-status-counter{color:var(--s-acc)}:root:not(.dark) .ab-dash-file-icon:not(.img):not(.vid):not(.zip),:root:not(.dark) .ab-dash-upload-status-icon:not(.img):not(.vid):not(.zip){background:var(--s-tint);color:#2563eb;border-color:#2563eb33}:root:not(.dark) .ab-dash-storage-widget-bar,:root:not(.dark) .ab-dash-storage-card-bar,:root:not(.dark) .ab-dash-file-progress,:root:not(.dark) .ab-dash-upload-status-bar,:root:not(.dark) .ab-code-side-op-bar{background:var(--s-track)}:root:not(.dark) .ab-dash-chart-bar{background:#2563eb4d}:root:not(.dark) .ab-dash-chart-bar.hi{background:#2563eb}:root:not(.dark) .ab-dash-upload-status{background:linear-gradient(135deg,#2563eb14,#14b8a60d);border-color:#2563eb40;box-shadow:0 -8px 20px -14px #0f172a40,inset 0 1px #fff}:root:not(.dark) .ab-code{background:linear-gradient(#f8fafc 0%,#f1f5f9 100%)}:root:not(.dark) .ab-code-topbar{border-color:var(--s-line);background:#fff}:root:not(.dark) .ab-code-tab{color:var(--s-sub)}:root:not(.dark) .ab-code-tab.active{background:var(--s-tint);color:var(--s-acc);border-color:#2563eb40}:root:not(.dark) .ab-code-status-pill{color:#15803d}:root:not(.dark) .ab-code-lines-wrap{border-color:var(--s-line);background:#fff}:root:not(.dark) .ab-code-line-num{color:#94a3b8}:root:not(.dark) .ab-code-line.active-line .ab-code-line-num{color:#2563eb}:root:not(.dark) .ab-code-line-content,:root:not(.dark) .tok-var{color:var(--s-text)}:root:not(.dark) .tok-kw{color:#7c3aed}:root:not(.dark) .tok-fn{color:#2563eb}:root:not(.dark) .tok-str{color:#15803d}:root:not(.dark) .tok-num{color:#b45309}:root:not(.dark) .tok-cm{color:#94a3b8}:root:not(.dark) .tok-pun{color:var(--s-mute)}:root:not(.dark) .ab-code-side{border-color:var(--s-line);background:#f8fafc}:root:not(.dark) .ab-code-side-title{color:var(--s-sub)}:root:not(.dark) .ab-code-side-op{border-color:var(--s-line);background:#fff}:root:not(.dark) .ab-code-side-op-id,:root:not(.dark) .ab-code-side-op-meta{color:var(--s-mute)}:root:not(.dark) .ab-code-side-op-id.hl,:root:not(.dark) .ab-code-side-op-meta strong{color:#2563eb}:root:not(.dark) .ab-code-side-op-name,:root:not(.dark) .ab-code-side-status-text,:root:not(.dark) .ab-code-side-queue{color:var(--s-text)}:root:not(.dark) .ab-code-side-status.done .ab-code-side-status-text{color:#15803d}:root:not(.dark) .ab-code-terminal{border-color:var(--s-line);background:#f1f5f9}:root:not(.dark) .ab-code-terminal-head{background:var(--s-tint);border-color:var(--s-line)}:root:not(.dark) .ab-code-terminal-title,:root:not(.dark) .ab-term-method{color:var(--s-sub)}:root:not(.dark) .ab-code-terminal-live,:root:not(.dark) .ab-term-text{color:#15803d}:root:not(.dark) .ab-term-prompt{color:#94a3b8}:root:not(.dark) .ab-term-ok{color:#16a34a}:root:not(.dark) .ab-term-arrow{color:#2563eb}:root:not(.dark) .ab-term-time{color:var(--s-mute)}:root:not(.dark) .ab-term-status{color:#b45309}:root:not(.dark) .ab-term-status.ok{color:#16a34a}:root:not(.dark) .ab-term-line.latest{background:var(--s-tint)}
