@font-face{font-family:Syne;src:url(/assets/Syne-VariableFont_wght-xUwt_5DS.ttf) format("truetype");font-weight:400 800;font-style:normal;font-display:swap}@font-face{font-family:Space Mono;src:url(/assets/SpaceMono-Regular-Ba0nOT4a.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Space Mono;src:url(/assets/SpaceMono-Italic-Bsn02tz1.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Space Mono;src:url(/assets/SpaceMono-Bold-Dyp2aizM.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Space Mono;src:url(/assets/SpaceMono-BoldItalic-Cfx5I7zT.ttf) format("truetype");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/assets/JetBrainsMono-VariableFont_wght-BrlcHZ7m.ttf) format("truetype");font-weight:300 700;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/assets/JetBrainsMono-Italic-VariableFont_wght-CZO9PUqx.ttf) format("truetype");font-weight:300 700;font-style:italic;font-display:swap}:root{--enc-violet: #8b5cf6;--enc-violet-fill: #7c5cfc;--enc-violet-dim: #6d4de0;--enc-violet-bright: #a78bfa;--enc-violet-glow: rgba(139, 92, 246, .22);--enc-violet-subtle: rgba(139, 92, 246, .1);--enc-magenta: #e060c0;--enc-magenta-glow: rgba(224, 96, 192, .18);--enc-logo-grad: linear-gradient(100deg, #a020e0 0%, #e060c0 50%, #7c5cfc 100%);--enc-green: #2be08b;--enc-green-fill: #1fb874;--enc-green-dim: #18a968;--enc-green-glow: rgba(43, 224, 139, .16);--enc-green-subtle: rgba(43, 224, 139, .08);--enc-cyan: #00e5ff;--enc-cyan-dim: #00b8cc;--enc-cyan-glow: rgba(0, 229, 255, .15);--enc-purple: var(--enc-violet);--enc-purple-glow: var(--enc-violet-glow);--enc-yellow: #ffd60a;--enc-red: #ff4d6d;--enc-red-glow: rgba(255, 77, 109, .18);--enc-bg-base: #0a0c0f;--enc-bg-surface: #111318;--enc-bg-elevated: #181c22;--enc-bg-hover: #1f242d;--enc-bg-border: #252b35;--enc-text-primary: #f0f4ff;--enc-text-secondary: #8892a4;--enc-text-muted: #4a5568;--enc-text-inverse: #0a0c0f;--font-display: "Syne", sans-serif;--font-mono: "JetBrains Mono", monospace;--font-ui: "Space Mono", monospace;--text-xs: .625rem;--text-sm: .75rem;--text-base: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.375rem;--text-2xl: 1.75rem;--text-3xl: 2.25rem;--text-4xl: 3rem;--text-5xl: 4rem;--text-hero: 5.5rem;--leading-tight: 1.1;--leading-snug: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.7;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-pill: 9999px;--border-width: 1px;--border-color: var(--enc-bg-border);--border-active: var(--enc-green);--shadow-card: 0 1px 3px rgba(0, 0, 0, .4), 0 4px 16px rgba(0, 0, 0, .3);--shadow-modal: 0 8px 32px rgba(0, 0, 0, .6), 0 2px 8px rgba(0, 0, 0, .4);--glow-green: 0 0 20px var(--enc-green-glow), 0 0 40px rgba(0, 255, 135, .08);--glow-cyan: 0 0 20px var(--enc-cyan-glow);--glow-red: 0 0 20px var(--enc-red-glow);--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s cubic-bezier(.16, 1, .3, 1);--z-base: 0;--z-raised: 10;--z-overlay: 100;--z-modal: 200;--z-toast: 300;--z-tooltip: 400}*{box-sizing:border-box}html,body{background:var(--enc-bg-base);color:var(--enc-text-primary);font-family:var(--font-ui)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--enc-bg-base)}::-webkit-scrollbar-thumb{background:var(--enc-bg-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--enc-violet-dim)}.enc-hero{font-family:var(--font-display);font-weight:800;font-size:var(--text-hero);letter-spacing:-.04em;line-height:var(--leading-tight);color:var(--enc-text-primary)}.enc-h1{font-family:var(--font-display);font-weight:800;font-size:var(--text-4xl);letter-spacing:-.03em;line-height:var(--leading-tight);color:var(--enc-text-primary)}.enc-h2{font-family:var(--font-display);font-weight:700;font-size:var(--text-3xl);letter-spacing:-.02em;line-height:var(--leading-snug);color:var(--enc-text-primary)}.enc-h3{font-family:var(--font-display);font-weight:700;font-size:var(--text-2xl);letter-spacing:-.01em;line-height:var(--leading-snug);color:var(--enc-text-primary)}.enc-h4{font-family:var(--font-display);font-weight:600;font-size:var(--text-xl);line-height:var(--leading-snug);color:var(--enc-text-primary)}.enc-body{font-family:var(--font-ui);font-weight:400;font-size:var(--text-md);line-height:var(--leading-relaxed);color:var(--enc-text-secondary)}.enc-small{font-family:var(--font-ui);font-weight:400;font-size:var(--text-base);line-height:var(--leading-normal);color:var(--enc-text-secondary)}.enc-code{font-family:var(--font-mono);font-weight:400;font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--enc-green)}.enc-label{font-family:var(--font-mono);font-weight:700;font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--enc-text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-base);font-weight:700;text-decoration:none;cursor:pointer;border:none;transition:all var(--transition-base);position:relative;overflow:hidden;white-space:nowrap;letter-spacing:.04em}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--enc-violet-fill);color:#fff;padding:var(--space-3) var(--space-6);border-radius:var(--radius-md)}.btn-primary:hover:not(:disabled){background:#8b6bff;transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0);background:var(--enc-violet-dim)}.btn-secondary{background:transparent;color:var(--enc-text-primary);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);border:1px solid var(--enc-bg-border)}.btn-secondary:hover:not(:disabled){border-color:var(--enc-violet);color:var(--enc-violet-bright);background:var(--enc-violet-subtle)}.btn-ghost{background:transparent;color:var(--enc-text-secondary);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md)}.btn-ghost:hover:not(:disabled){color:var(--enc-text-primary);background:var(--enc-bg-surface)}.btn-danger{background:transparent;color:var(--enc-red);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);border:1px solid rgba(255,77,109,.4)}.btn-danger:hover:not(:disabled){background:#ff4d6d1a;border-color:var(--enc-red);transform:translateY(-1px)}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--text-xs);border-radius:var(--radius-sm)}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--text-md);border-radius:var(--radius-lg)}.btn-icon{width:40px;height:40px;background:var(--enc-bg-surface);border:1px solid var(--enc-bg-border);border-radius:var(--radius-md);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-base);font-size:var(--text-md);color:var(--enc-text-secondary)}.btn-icon:hover{border-color:var(--enc-violet);color:var(--enc-violet-bright);background:var(--enc-violet-subtle)}.badge{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill)}.badge-green{background:var(--enc-green-subtle);border:1px solid rgba(43,224,139,.25);color:var(--enc-green)}.badge-cyan{background:var(--enc-cyan-glow);border:1px solid rgba(0,229,255,.25);color:var(--enc-cyan)}.badge-violet{background:var(--enc-violet-subtle);border:1px solid rgba(139,92,246,.3);color:var(--enc-violet-bright)}.badge-yellow{background:#ffd60a1a;border:1px solid rgba(255,214,10,.25);color:var(--enc-yellow)}.badge-red{background:var(--enc-red-glow);border:1px solid rgba(255,77,109,.25);color:var(--enc-red)}.badge-neutral{background:var(--enc-bg-elevated);border:1px solid var(--enc-bg-border);color:var(--enc-text-secondary)}.badge-dot:before{content:"";display:block;width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.input-group{display:flex;flex-direction:column;gap:var(--space-2)}.input-label{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--enc-text-muted)}.input{background:var(--enc-bg-surface);border:1px solid var(--enc-bg-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-family:var(--font-mono);font-size:var(--text-base);color:var(--enc-text-primary);outline:none;transition:all var(--transition-base);width:100%}.input::placeholder{color:var(--enc-text-muted)}.input:focus{border-color:var(--enc-violet);box-shadow:0 0 0 3px var(--enc-violet-subtle)}.input-error{border-color:var(--enc-red)}.input-hint{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--enc-text-muted)}.input-hint.error{color:var(--enc-red)}.card{background:var(--enc-bg-surface);border:1px solid var(--enc-bg-border);border-radius:var(--radius-xl);padding:var(--space-6);transition:all var(--transition-base)}.card:hover{border-color:#8b5cf659;box-shadow:0 0 24px var(--enc-violet-glow);transform:translateY(-2px)}.card-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;color:var(--enc-text-primary);margin-bottom:var(--space-2)}.card-body{font-family:var(--font-ui);font-size:var(--text-base);color:var(--enc-text-secondary);line-height:var(--leading-relaxed)}.alert{display:flex;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);border-left:3px solid;margin-bottom:var(--space-3)}.alert-icon{font-family:var(--font-mono);font-size:var(--text-md);flex-shrink:0}.alert-title{font-family:var(--font-mono);font-size:var(--text-base);font-weight:700;margin-bottom:var(--space-1)}.alert-body{font-family:var(--font-ui);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--enc-text-secondary)}.alert-success{background:#00ff870f;border-color:var(--enc-green)}.alert-success .alert-title{color:var(--enc-green)}.alert-error{background:#ff4d6d0f;border-color:var(--enc-red)}.alert-error .alert-title{color:var(--enc-red)}.alert-warning{background:#ffd60a0f;border-color:var(--enc-yellow)}.alert-warning .alert-title{color:var(--enc-yellow)}.code-block{background:var(--enc-bg-surface);border:1px solid var(--enc-bg-border);border-radius:var(--radius-lg);overflow:hidden}.code-block-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-5);background:var(--enc-bg-elevated);border-bottom:1px solid var(--enc-bg-border)}.code-block-dots{display:flex;gap:var(--space-2)}.code-dot{width:10px;height:10px;border-radius:50%}.code-dot-red{background:#ff5f57}.code-dot-yellow{background:#ffbd2e}.code-dot-green{background:var(--enc-green)}.code-block-filename{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--enc-text-muted)}.code-block-lang{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--enc-violet-bright);background:var(--enc-violet-subtle);border:1px solid rgba(139,92,246,.2);padding:2px var(--space-2);border-radius:var(--radius-sm)}.code-block-body{padding:var(--space-5);font-family:var(--font-mono);font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--enc-text-primary)}.progress-bar{width:100%;height:6px;background:var(--enc-bg-elevated);border-radius:var(--radius-pill);overflow:hidden}.progress-fill{height:100%;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--enc-violet-fill),var(--enc-magenta));box-shadow:0 0 8px var(--enc-violet-glow);transition:width var(--transition-slow)}.avatar{border-radius:50%;background:var(--enc-bg-elevated);border:2px solid var(--enc-bg-border);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:700;color:var(--enc-text-secondary);flex-shrink:0}.avatar-sm{width:32px;height:32px;font-size:var(--text-xs)}.avatar-md{width:40px;height:40px;font-size:var(--text-base)}.avatar-lg{width:56px;height:56px;font-size:var(--text-xl)}.avatar.online{border-color:var(--enc-green);box-shadow:0 0 0 2px var(--enc-bg-base),0 0 0 4px var(--enc-green)}:root{--bg-dark: var(--enc-bg-base);--neon-purple: var(--enc-violet);--neon-pink: var(--enc-magenta);--neon-blue: var(--enc-cyan);--neon-gradient: linear-gradient(-45deg, var(--enc-violet), var(--enc-magenta), var(--enc-cyan));--glass-bg: rgba(17, 19, 24, .75);--glass-border: var(--enc-bg-border)}body{min-height:100vh;overflow-x:hidden;font-family:var(--main-font, var(--font-ui))}.platform-main{min-height:100vh;margin-left:0;transition:margin-left var(--transition-base)}.platform-main--sidebar{margin-left:232px}.platform-main__content{width:min(100%,1180px);padding:clamp(28px,4vw,48px);transition:padding var(--transition-base)}.platform-page{width:100%;display:flex;flex-direction:column;gap:24px}.platform-page__header{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:6px}.platform-page__heading{display:flex;flex-direction:column;gap:9px}.platform-page__heading h1{margin:0;font:800 clamp(2.15rem,5vw,3.6rem)/.98 var(--font-display);letter-spacing:-.045em}.platform-page__heading p{max-width:680px;margin:0;color:var(--enc-text-secondary);font:400 13px/1.75 var(--font-ui)}.platform-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}.platform-card{position:relative;overflow:hidden;padding:26px;border:1px solid var(--enc-bg-border);border-radius:20px;background:var(--enc-bg-surface);transition:transform var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base)}.platform-card--interactive{cursor:pointer}.platform-card--interactive:hover{transform:translateY(-3px);border-color:#8b5cf66b;box-shadow:0 18px 48px #0000003d,0 0 30px #8b5cf614}.platform-card--accent{background:radial-gradient(480px circle at 85% 75%,rgba(139,92,246,.18),transparent 55%),var(--enc-bg-surface)}.platform-card__title{margin:0;font:800 24px/1.05 var(--font-display);letter-spacing:-.03em}.platform-card__copy{margin:0;color:var(--enc-text-secondary);font:400 12px/1.7 var(--font-ui)}.platform-section-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:10px}.platform-section-title h2{margin:0;font:700 20px/1.1 var(--font-display);letter-spacing:-.02em}@media(max-width:820px){.platform-main,.platform-main--sidebar{margin-left:0}.platform-main__content{width:100%;padding:26px 16px calc(88px + env(safe-area-inset-bottom))}.platform-page__heading h1{font-size:clamp(2rem,10vw,3rem)}.platform-card{padding:21px;border-radius:17px}}body.shake{animation:shake-screen .2s cubic-bezier(.36,.07,.19,.97) both infinite}@keyframes shake-screen{0%{transform:translate(1px,1px) rotate(0)}10%{transform:translate(-1px,-2px) rotate(-1deg)}20%{transform:translate(-3px) rotate(1deg)}30%{transform:translate(3px,2px) rotate(0)}40%{transform:translate(1px,-1px) rotate(1deg)}50%{transform:translate(-1px,2px) rotate(-1deg)}60%{transform:translate(-3px,1px) rotate(0)}70%{transform:translate(3px,1px) rotate(-1deg)}80%{transform:translate(-1px,-1px) rotate(1deg)}90%{transform:translate(1px,2px) rotate(0)}to{transform:translate(1px,-2px) rotate(-1deg)}}.enc-octo{display:block;width:100%;height:100%}.platform-sidebar{position:fixed;inset:0 auto 0 0;z-index:50;width:232px;display:flex;flex-direction:column;padding:24px 16px 18px;overflow-y:auto;background:#111318f5;border-right:1px solid var(--enc-bg-border);backdrop-filter:blur(14px);transform:translate(-100%);transition:transform var(--transition-base)}.platform-sidebar--open{transform:translate(0)}.platform-sidebar__brand{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;margin-bottom:30px;padding:0 6px}.platform-sidebar__brand button{border:0;background:transparent;color:var(--enc-text-secondary);cursor:pointer}.platform-sidebar__brand img{width:120px;height:auto;display:block}.platform-sidebar__collapse{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--enc-bg-border)!important;border-radius:8px;font:400 20px/1 var(--font-mono)}.platform-sidebar__nav{display:flex;flex-direction:column;gap:4px}.platform-sidebar__nav>button{width:100%;min-height:44px;display:flex;align-items:center;gap:12px;padding:0 13px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--enc-text-secondary);font:400 12px/1 var(--font-ui);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.platform-sidebar__nav>button:hover{color:var(--enc-text-primary);background:var(--enc-bg-elevated)}.platform-sidebar__nav>button.is-active{color:var(--enc-violet-bright);border-color:#8b5cf624;background:var(--enc-violet-subtle)}.platform-sidebar__icon{width:20px;color:currentColor;font:400 17px/1 var(--font-mono);text-align:center}.platform-sidebar__course{margin-top:24px;padding-top:20px;border-top:1px solid var(--enc-bg-border)}.platform-sidebar__course-title{display:flex;align-items:center;gap:11px;padding:0 8px 14px}.platform-sidebar__course-title>span{font-size:22px}.platform-sidebar__course-title div{min-width:0;display:flex;flex-direction:column;gap:3px}.platform-sidebar__course-title strong{font:700 13px/1.2 var(--font-display)}.platform-sidebar__course-title small{color:var(--enc-text-muted);font:400 9px/1 var(--font-mono)}.platform-sidebar__lessons{display:flex;flex-direction:column;gap:3px}.platform-sidebar__lessons>.enc-label{padding:0 8px 7px}.platform-sidebar__lessons>button{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;padding:8px;border:0;border-radius:7px;background:transparent;color:var(--enc-text-muted);font:400 10px/1.35 var(--font-mono);text-align:left;cursor:pointer}.platform-sidebar__lessons>button span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.platform-sidebar__lessons>button:hover,.platform-sidebar__lessons>button.is-active{color:var(--enc-violet-bright);background:var(--enc-violet-subtle)}.platform-sidebar__enco{display:block;width:22px;height:22px;margin-inline:auto}.platform-sidebar__enco .enc-octo{width:22px;height:22px}.platform-sidebar__tag{margin-left:auto;padding:3px 6px;border:1px solid rgba(139,92,246,.45);border-radius:var(--radius-pill);background:var(--enc-violet-subtle);color:var(--enc-violet-bright);font:700 8px/1 var(--font-mono);letter-spacing:.06em}.platform-sidebar__sound{width:100%;display:flex;align-items:center;gap:10px;margin-top:auto;margin-bottom:8px;padding:9px 12px;border:1px solid var(--enc-bg-border);border-radius:10px;background:transparent;color:var(--enc-text-secondary);font:400 10px/1 var(--font-mono);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.platform-sidebar__sound:hover{border-color:#8b5cf673;color:var(--enc-text-primary)}.platform-sidebar__sound[aria-pressed=false]{color:var(--enc-text-muted)}.platform-sidebar__sound+.platform-sidebar__account{margin-top:0}.platform-sidebar__account{width:100%;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:auto;padding:10px;border:1px solid var(--enc-bg-border);border-radius:12px;background:var(--enc-bg-base);color:var(--enc-text-primary);text-align:left;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.platform-sidebar__octo{width:36px;height:36px;display:block;flex:none;overflow:hidden;border-radius:50%;background:var(--enc-violet-subtle)}.platform-sidebar__octo .enc-octo{width:36px;height:36px}.platform-sidebar__home{width:100%;margin-top:10px;padding:8px 10px;border:0;background:transparent;color:var(--enc-text-muted);font:400 9px/1 var(--font-mono);text-align:left;cursor:pointer}.platform-sidebar__home:hover{color:var(--enc-violet-bright)}.platform-sidebar__account:hover{border-color:#8b5cf673;background:var(--enc-bg-elevated)}.platform-sidebar__account>span:nth-child(2){min-width:0;display:flex;flex-direction:column;gap:4px}.platform-sidebar__account strong{overflow:hidden;color:var(--enc-text-primary);font:700 11px/1 var(--font-ui);text-overflow:ellipsis;white-space:nowrap}.platform-sidebar__account small{overflow:hidden;color:var(--enc-violet-bright);font:700 8px/1 var(--font-mono);text-overflow:ellipsis;white-space:nowrap}.sidebar-trigger{position:fixed;top:20px;left:20px;z-index:49;width:42px;height:42px;border:1px solid var(--enc-bg-border);border-radius:10px;background:#111318f0;color:var(--enc-text-secondary);font:400 16px/1 var(--font-mono);cursor:pointer}.sidebar-trigger--hidden{opacity:0;pointer-events:none}.platform-mobile-nav{display:none}@media(max-width:820px){.platform-sidebar,.sidebar-trigger{display:none}.platform-mobile-nav{position:fixed;inset:auto 0 0;z-index:60;display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));min-height:62px;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--enc-bg-border);background:#111318f5;backdrop-filter:blur(14px)}.platform-mobile-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:0;background:transparent;color:var(--enc-text-muted);font-family:var(--font-mono)}.platform-mobile-nav button>span{font-size:17px;line-height:1}.platform-mobile-nav .platform-sidebar__enco,.platform-mobile-nav .platform-sidebar__enco .enc-octo{width:24px;height:24px}.platform-mobile-nav button>small{font-size:9px}.platform-mobile-nav button.is-active{color:var(--enc-violet-bright);background:var(--enc-violet-subtle)}}.ssg-overlay{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-6);text-align:center;background:var(--enc-bg-base);color:var(--enc-text-primary)}.ssg-logo{width:72px;height:72px;object-fit:contain}.ssg-title{font-family:var(--font-display);font-size:2rem;margin:0}.ssg-message{max-width:420px;margin:0;color:var(--enc-text-secondary)}.ssg-bar{width:min(360px,100%);height:6px;overflow:hidden;border-radius:var(--radius-pill);background:var(--enc-bg-border)}.ssg-bar-fill{height:100%;border-radius:inherit;background:var(--enc-logo-grad);transition:width .4s ease}.ssg-bar-indeterminate{width:35%;animation:ssg-slide 1.4s ease-in-out infinite}.ssg-step{margin:0;font-family:var(--font-mono);font-size:.8rem;color:var(--enc-text-muted)}@keyframes ssg-slide{0%{transform:translate(-100%)}to{transform:translate(290%)}}@media(prefers-reduced-motion:reduce){.ssg-bar-fill{transition:none}.ssg-bar-indeterminate{animation:none;width:100%;opacity:.5}}.ssg-banner{position:fixed;top:0;left:0;right:0;z-index:900;padding:var(--space-2) var(--space-4);text-align:center;font-size:.85rem;color:var(--enc-text-primary);background:var(--enc-violet-dim)}.ssg-time{font-family:var(--font-mono);font-weight:700}.celebration{position:fixed;inset:0;z-index:400;display:grid;place-items:center;padding:24px 16px;overflow-y:auto;background:radial-gradient(60% 50% at 50% 38%,rgba(224,96,192,.22),transparent 70%),radial-gradient(80% 60% at 50% 0%,rgba(124,92,252,.3),transparent 70%),#07080ced;backdrop-filter:blur(8px);animation:celebration-in .35s ease-out both}.celebration--project{background:radial-gradient(60% 50% at 50% 38%,rgba(255,214,10,.18),transparent 70%),radial-gradient(80% 60% at 50% 0%,rgba(124,92,252,.3),transparent 70%),#07080ced}@keyframes celebration-in{0%{opacity:0}to{opacity:1}}.celebration__canvas{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}.celebration__content{position:relative;z-index:2;width:min(100%,460px);display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}.celebration__kicker{padding:6px 14px;border:1px solid rgba(139,92,246,.4);border-radius:var(--radius-pill);background:var(--enc-violet-subtle);color:var(--enc-violet-bright);font:700 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;animation:celebration-rise .5s .1s ease-out both}.celebration__stage{position:relative;width:min(64vw,280px);aspect-ratio:240 / 210}.celebration__stage .enc-octo{position:relative;z-index:1;width:100%;height:100%}.celebration__glow{position:absolute;inset:4% -10% -6%;border-radius:50%;background:radial-gradient(closest-side,rgba(255,120,60,.45),rgba(224,96,192,.2) 55%,transparent 75%);animation:celebration-glow 2.2s ease-in-out infinite}.celebration__glow--gold{background:radial-gradient(closest-side,rgba(255,214,10,.4),rgba(224,96,192,.16) 55%,transparent 75%)}@keyframes celebration-glow{0%,to{opacity:.65;transform:scale(.96)}50%{opacity:1;transform:scale(1.06)}}.celebration__count{display:flex;align-items:baseline;justify-content:center;gap:10px;animation:celebration-rise .5s .5s ease-out both}.celebration__count strong{font:800 clamp(64px,18vw,96px)/1.12 var(--font-display);padding-bottom:4px;letter-spacing:-.05em;background:linear-gradient(180deg,#ffd60a,#ff7a3c 60%,#ff4d6d);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 22px rgba(255,122,60,.45));font-variant-numeric:tabular-nums}.celebration__count span{color:var(--enc-text-secondary);font:400 14px/1 var(--font-mono)}.celebration__week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;width:100%}.celebration__week>div{display:flex;flex-direction:column;align-items:center;gap:6px;opacity:0;animation:celebration-pop .45s ease-out both}.celebration__week span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--enc-bg-elevated);color:#fff;font:700 12px/1 var(--font-mono)}.celebration__week span.is-active{background:var(--enc-violet-fill);box-shadow:0 0 16px var(--enc-violet-glow)}.celebration__week span.is-frozen{color:var(--enc-cyan);border:1px dashed var(--enc-cyan)}.celebration__week .is-today span.is-active{background:linear-gradient(135deg,#ff7a3c,#ff4d6d);box-shadow:0 0 22px #ff7a3c99}.celebration__week small{color:var(--enc-text-secondary);font:400 10px/1 var(--font-mono)}@keyframes celebration-pop{0%{opacity:0;transform:scale(.3)}70%{opacity:1;transform:scale(1.18)}to{opacity:1;transform:scale(1)}}.celebration__title{margin:0;font:800 clamp(26px,6vw,36px)/1.05 var(--font-display);letter-spacing:-.03em;animation:celebration-rise .5s .5s ease-out both}.celebration__text{max-width:400px;margin:0;color:var(--enc-text-secondary);font:400 13px/1.7 var(--font-ui);animation:celebration-rise .5s .9s ease-out both}.celebration__button{min-width:180px;margin-top:6px;animation:celebration-rise .5s 1.6s ease-out both}@keyframes celebration-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.celebration,.celebration__kicker,.celebration__count,.celebration__title,.celebration__text,.celebration__button,.celebration__week>div{animation-duration:.01s;animation-delay:0s!important}.celebration__glow{animation:none}}.landing-root a{color:#a78bfa;text-decoration:none}.landing-root{scroll-behavior:smooth}.landing-root textarea:focus{outline:none}.lh1:hover,.lh2:hover,.lh3:hover{color:var(--enc-text-primary)!important;background:#ffffff0a!important}.lh4:hover{border-color:#8b5cf680!important}.lh5:hover{color:var(--enc-violet-bright)!important}.loader-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;width:100%;color:var(--enc-text-primary);font-family:var(--main-font, var(--font-ui))}.loader-glow-wrapper{position:relative;width:120px;height:120px;display:flex;align-items:center;justify-content:center}.loader-enco{width:96px;height:84px;margin-top:4px;z-index:2;filter:drop-shadow(0 0 10px var(--enc-violet-glow))}.loader-enco .enc-octo{width:100%;height:100%}.loader-ring{position:absolute;width:120px;height:120px;border-radius:50%;border:3px solid transparent;border-top-color:var(--enc-magenta);border-bottom-color:var(--enc-cyan);animation:spin-ring 1.5s linear infinite;z-index:1;box-shadow:0 0 15px var(--enc-violet-glow)}.loader-text{margin-top:1.5rem;font-size:1.1rem;letter-spacing:.15em;color:var(--enc-text-secondary);text-shadow:0 0 8px var(--enc-magenta-glow);animation:pulse-text 2s infinite ease-in-out}@keyframes pulse-logo{0%{transform:scale(.9);opacity:.8}50%{transform:scale(1.1);opacity:1;filter:drop-shadow(0 0 20px var(--enc-violet-glow))}to{transform:scale(.9);opacity:.8}}@keyframes spin-ring{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.05)}to{transform:rotate(360deg) scale(1)}}@keyframes pulse-text{0%{opacity:.5}50%{opacity:1}to{opacity:.5}}
