@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,500;1,6..72,400&display=swap";:root{--bg-base: #080A0F;--bg-subtle: #0D111A;--bg-card: #121722;--bg-card-hover: #171E2D;--bg-card-active: #1C2436;--bg-elevated: #1E2638;--bg-overlay: rgba(8, 10, 15, .82);--border-subtle: rgba(255, 255, 255, .06);--border-card: rgba(255, 255, 255, .1);--border-focus: rgba(0, 210, 160, .45);--border-active: rgba(255, 255, 255, .18);--text-primary: #F8FAFC;--text-secondary: #94A3B8;--text-muted: #64748B;--text-inverse: #080A0F;--accent: #00D2A0;--accent-hover: #00B88C;--accent-active: #009E78;--accent-subtle: rgba(0, 210, 160, .12);--accent-glow: rgba(0, 210, 160, .25);--accent-border: rgba(0, 210, 160, .28);--accent-text: #00D2A0;--success: #10B981;--success-bg: rgba(16, 185, 129, .12);--success-border: rgba(16, 185, 129, .25);--warning: #F59E0B;--warning-bg: rgba(245, 158, 11, .12);--warning-border: rgba(245, 158, 11, .25);--danger: #EF4444;--danger-bg: rgba(239, 68, 68, .12);--danger-border: rgba(239, 68, 68, .25);--info: #38BDF8;--info-bg: rgba(56, 189, 248, .12);--info-border: rgba(56, 189, 248, .25);--radius-xs: 6px;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 18px;--radius-xl: 24px;--radius-pill: 9999px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .2);--shadow-card: 0 12px 36px -6px rgba(0, 0, 0, .35), 0 0 0 1px var(--border-card);--shadow-elevated: 0 20px 48px -10px rgba(0, 0, 0, .5), 0 0 0 1px var(--border-card);--shadow-accent: 0 8px 24px -4px rgba(0, 210, 160, .28);--font-sans: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-serif: "Newsreader", Georgia, serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--transition-fast: .14s cubic-bezier(.16, 1, .3, 1);--transition-normal: .22s cubic-bezier(.16, 1, .3, 1);--transition-slow: .32s cubic-bezier(.16, 1, .3, 1)}[data-theme=light]{--bg-base: #F8FAFC;--bg-subtle: #F1F5F9;--bg-card: #FFFFFF;--bg-card-hover: #F8FAFC;--bg-card-active: #F1F5F9;--bg-elevated: #FFFFFF;--bg-overlay: rgba(248, 250, 252, .85);--border-subtle: rgba(0, 0, 0, .05);--border-card: rgba(0, 0, 0, .09);--border-focus: rgba(0, 180, 136, .55);--border-active: rgba(0, 0, 0, .16);--text-primary: #0F172A;--text-secondary: #475569;--text-muted: #94A3B8;--text-inverse: #FFFFFF;--accent: #00B88C;--accent-hover: #009E78;--accent-active: #008464;--accent-subtle: rgba(0, 184, 140, .1);--accent-glow: rgba(0, 184, 140, .2);--accent-border: rgba(0, 184, 140, .3);--accent-text: #009E78;--shadow-sm: 0 2px 6px rgba(0, 0, 0, .04);--shadow-card: 0 10px 30px -8px rgba(15, 23, 42, .08), 0 0 0 1px var(--border-card);--shadow-elevated: 0 20px 40px -12px rgba(15, 23, 42, .12), 0 0 0 1px var(--border-card);--shadow-accent: 0 8px 24px -4px rgba(0, 184, 140, .2)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-sans);font-size:110%;background-color:var(--bg-base);color:var(--text-primary);color-scheme:dark;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}[data-theme=light] html{color-scheme:light}body{min-height:100vh;display:flex;flex-direction:column;background-color:var(--bg-base);color:var(--text-primary);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-weight:700;letter-spacing:-.025em;line-height:1.25;color:var(--text-primary)}p{color:var(--text-secondary)}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea,select{font-family:inherit;font-size:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent-subtle);color:var(--accent)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-card);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb:hover{background:var(--border-active)}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1.5rem}.container-narrow{width:100%;max-width:960px;margin:0 auto;padding:0 1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.9375rem;font-weight:600;border-radius:var(--radius-md);transition:all var(--transition-fast);white-space:nowrap;user-select:none}.btn-sm{padding:.4rem .85rem;font-size:.8125rem;border-radius:var(--radius-sm)}.btn-lg{padding:.875rem 1.75rem;font-size:1.0625rem;border-radius:var(--radius-lg)}.btn-primary{background-color:var(--accent);color:var(--text-inverse);box-shadow:var(--shadow-accent)}.btn-primary:hover:not(:disabled){background-color:var(--accent-hover);transform:translateY(-1px);box-shadow:0 10px 28px -4px #00d2a066}.btn-primary:active:not(:disabled){background-color:var(--accent-active);transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background-color:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-card)}.btn-secondary:hover:not(:disabled){background-color:var(--bg-card-hover);border-color:var(--border-active)}.btn-ghost{color:var(--text-secondary);background:transparent}.btn-ghost:hover:not(:disabled){color:var(--text-primary);background-color:var(--bg-card-hover)}.btn-danger-ghost{color:var(--danger);background:transparent}.btn-danger-ghost:hover:not(:disabled){background-color:var(--danger-bg)}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .65rem;font-size:.75rem;font-weight:600;border-radius:var(--radius-pill);letter-spacing:.02em}.badge-accent{background:var(--accent-subtle);color:var(--accent);border:1px solid var(--accent-border)}.badge-subtle{background:var(--bg-card-hover);color:var(--text-secondary);border:1px solid var(--border-subtle)}.card{background-color:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-card)}.modal-backdrop{position:fixed;inset:0;background-color:#04060abf;backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.25rem;opacity:0;pointer-events:none;transition:opacity var(--transition-normal)}.modal-backdrop.active{opacity:1;pointer-events:auto}.modal-content{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-elevated);width:100%;max-width:560px;max-height:90vh;overflow-y:auto;transform:scale(.96) translateY(8px);transition:transform var(--transition-normal)}.modal-backdrop.active .modal-content{transform:scale(1) translateY(0)}.toast-container{position:fixed;bottom:1.5rem;right:1.5rem;z-index:1100;display:flex;flex-direction:column;gap:.75rem;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:.75rem;padding:.85rem 1.25rem;background:var(--bg-elevated);border:1px solid var(--border-card);border-radius:var(--radius-md);box-shadow:var(--shadow-elevated);color:var(--text-primary);font-size:.875rem;font-weight:500;animation:toastSlideUp .25s cubic-bezier(.16,1,.3,1) forwards}.toast.success{border-color:var(--success-border)}.toast.error{border-color:var(--danger-border)}@keyframes toastSlideUp{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.diff-added{background-color:#00d2a02e;color:#10e7a0;border-radius:4px;padding:.1em .3em;font-weight:500}.diff-removed{background-color:#ef44442e;color:#f87171;text-decoration:line-through;border-radius:4px;padding:.1em .3em}[data-theme=light] .diff-added{background-color:#00b88c33;color:#047857}[data-theme=light] .diff-removed{background-color:#ef44442e;color:#b91c1c}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner{animation:spin .8s linear infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.shimmer-line{height:1.25rem;border-radius:var(--radius-xs);background:linear-gradient(90deg,var(--bg-card-hover) 25%,var(--bg-elevated) 50%,var(--bg-card-hover) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
