@charset "UTF-8";:root,[data-color-theme=purple]{--color-brand: #a78bfa;--color-brand-deep: #7c3aed;--color-brand-secondary: #60a5fa;--color-brand-secondary-deep: #2563eb;--color-brand-accent: #ec4899;--color-brand-accent-deep: #db2777;--color-brand-tint-light: #e0e7ff;--color-brand-tint-medium: #c7d2fe;--color-brand-tag-bg: rgba(167, 139, 250, .15);--color-brand-tag-bg-alt: rgba(124, 58, 237, .1);--color-brand-shadow: rgba(167, 139, 250, .2);--color-brand-glow: rgba(139, 92, 246, .4);--color-brand-glow-strong: rgba(139, 92, 246, .5);--color-brand-rgb: 167, 139, 250;--color-brand-secondary-rgb: 96, 165, 250;--color-brand-light: #c4b5fd}[data-color-theme=green]{--color-brand: #4ade80;--color-brand-deep: #16a34a;--color-brand-secondary: #2dd4bf;--color-brand-secondary-deep: #0d9488;--color-brand-accent: #34d399;--color-brand-accent-deep: #059669;--color-brand-tint-light: #dcfce7;--color-brand-tint-medium: #bbf7d0;--color-brand-tag-bg: rgba(74, 222, 128, .15);--color-brand-tag-bg-alt: rgba(22, 163, 74, .1);--color-brand-shadow: rgba(74, 222, 128, .2);--color-brand-glow: rgba(74, 222, 128, .4);--color-brand-glow-strong: rgba(74, 222, 128, .5);--color-brand-rgb: 74, 222, 128;--color-brand-secondary-rgb: 45, 212, 191;--color-brand-light: #86efac}[data-color-theme=blue]{--color-brand: #38bdf8;--color-brand-deep: #0284c7;--color-brand-secondary: #818cf8;--color-brand-secondary-deep: #4f46e5;--color-brand-accent: #22d3ee;--color-brand-accent-deep: #0891b2;--color-brand-tint-light: #e0f2fe;--color-brand-tint-medium: #bae6fd;--color-brand-tag-bg: rgba(56, 189, 248, .15);--color-brand-tag-bg-alt: rgba(2, 132, 199, .1);--color-brand-shadow: rgba(56, 189, 248, .2);--color-brand-glow: rgba(56, 189, 248, .4);--color-brand-glow-strong: rgba(56, 189, 248, .5);--color-brand-rgb: 56, 189, 248;--color-brand-secondary-rgb: 129, 140, 248;--color-brand-light: #7dd3fc}[data-color-theme=amber]{--color-brand: #fbbf24;--color-brand-deep: #d97706;--color-brand-secondary: #fb923c;--color-brand-secondary-deep: #ea580c;--color-brand-accent: #f59e0b;--color-brand-accent-deep: #b45309;--color-brand-tint-light: #fef3c7;--color-brand-tint-medium: #fde68a;--color-brand-tag-bg: rgba(251, 191, 36, .15);--color-brand-tag-bg-alt: rgba(217, 119, 6, .1);--color-brand-shadow: rgba(251, 191, 36, .2);--color-brand-glow: rgba(251, 191, 36, .4);--color-brand-glow-strong: rgba(251, 191, 36, .5);--color-brand-rgb: 251, 191, 36;--color-brand-secondary-rgb: 251, 146, 60;--color-brand-light: #fde68a}[data-color-theme=rose]{--color-brand: #fb7185;--color-brand-deep: #e11d48;--color-brand-secondary: #f0abfc;--color-brand-secondary-deep: #c026d3;--color-brand-accent: #f472b6;--color-brand-accent-deep: #db2777;--color-brand-tint-light: #ffe4e6;--color-brand-tint-medium: #fecdd3;--color-brand-tag-bg: rgba(251, 113, 133, .15);--color-brand-tag-bg-alt: rgba(225, 29, 72, .1);--color-brand-shadow: rgba(251, 113, 133, .2);--color-brand-glow: rgba(251, 113, 133, .4);--color-brand-glow-strong: rgba(251, 113, 133, .5);--color-brand-rgb: 251, 113, 133;--color-brand-secondary-rgb: 240, 171, 252;--color-brand-light: #fda4af}[data-color-theme=teal]{--color-brand: #2dd4bf;--color-brand-deep: #0d9488;--color-brand-secondary: #67e8f9;--color-brand-secondary-deep: #0891b2;--color-brand-accent: #5eead4;--color-brand-accent-deep: #14b8a6;--color-brand-tint-light: #ccfbf1;--color-brand-tint-medium: #99f6e4;--color-brand-tag-bg: rgba(45, 212, 191, .15);--color-brand-tag-bg-alt: rgba(13, 148, 136, .1);--color-brand-shadow: rgba(45, 212, 191, .2);--color-brand-glow: rgba(45, 212, 191, .4);--color-brand-glow-strong: rgba(45, 212, 191, .5);--color-brand-rgb: 45, 212, 191;--color-brand-secondary-rgb: 103, 232, 249;--color-brand-light: #5eead4}[data-color-theme=mint]{--color-brand: #34d399;--color-brand-deep: #059669;--color-brand-secondary: #38bdf8;--color-brand-secondary-deep: #0284c7;--color-brand-accent: #22c55e;--color-brand-accent-deep: #16a34a;--color-brand-tint-light: #d1fae5;--color-brand-tint-medium: #a7f3d0;--color-brand-tag-bg: rgba(52, 211, 153, .15);--color-brand-tag-bg-alt: rgba(5, 150, 105, .1);--color-brand-shadow: rgba(52, 211, 153, .2);--color-brand-glow: rgba(52, 211, 153, .4);--color-brand-glow-strong: rgba(52, 211, 153, .5);--color-brand-rgb: 52, 211, 153;--color-brand-secondary-rgb: 56, 189, 248;--color-brand-light: #6ee7b7}:root,.dark-theme{--color-bg-primary: #0f0f23;--color-bg-secondary: #1a1a3e;--color-bg-card: rgba(255, 255, 255, .05);--color-bg-card-hover: rgba(255, 255, 255, .08);--color-bg-input: rgba(255, 255, 255, .05);--color-bg-input-focus: rgba(255, 255, 255, .08);--color-border: rgba(255, 255, 255, .1);--color-border-hover: rgba(255, 255, 255, .2);--color-border-strong: rgba(255, 255, 255, .3);--color-text-primary: #ffffff;--color-text-secondary: rgba(255, 255, 255, .8);--color-text-muted: rgba(255, 255, 255, .5);--color-accent-purple: var(--color-brand);--color-accent-blue: var(--color-brand-secondary);--color-accent-pink: var(--color-brand-accent);--color-accent-green: #22c55e;--color-accent-orange: #fb923c;--color-shadow: rgba(0, 0, 0, .3);--color-overlay: rgba(0, 0, 0, .8);--color-tag-bg: var(--color-brand-tag-bg);--gradient-hero: linear-gradient(135deg, #0f0f23 0%, #1a1a3e 50%, #0f0f23 100%);--gradient-section: linear-gradient(180deg, #0f0f23 0%, #1a1a3e 50%, #0f0f23 100%);--gradient-section-alt: linear-gradient(180deg, #1a1a3e 0%, #0f0f23 100%);--gradient-footer: linear-gradient(180deg, #0f0f23 0%, #080814 100%);--gradient-brand: linear-gradient( 135deg, var(--color-accent-purple) 0%, var(--color-accent-blue) 100% );--gradient-btn-primary: linear-gradient( 135deg, var(--color-accent-pink) 0%, var(--color-accent-purple) 100% );--gradient-progress: linear-gradient( 90deg, var(--color-accent-purple) 0%, var(--color-accent-blue) 50%, var(--color-accent-green) 100% );--gradient-divider: linear-gradient( 90deg, transparent 0%, rgba(255, 255, 255, .1) 50%, transparent 100% );--gradient-card-placeholder: linear-gradient(135deg, #1a1a3e 0%, #2d2d5a 100%);--color-progress-track: rgba(255, 255, 255, .1);--skill-expert-color: #34d399;--skill-expert-bg: rgba(52, 211, 153, .15);--skill-expert-gradient: linear-gradient(90deg, #059669 0%, #34d399 50%, #6ee7b7 100%);--skill-expert-shadow: rgba(52, 211, 153, .4);--skill-advanced-color: #38bdf8;--skill-advanced-bg: rgba(56, 189, 248, .15);--skill-advanced-gradient: linear-gradient(90deg, #0284c7 0%, #38bdf8 50%, #7dd3fc 100%);--skill-advanced-shadow: rgba(56, 189, 248, .4);--skill-intermediate-color: #a78bfa;--skill-intermediate-bg: rgba(167, 139, 250, .15);--skill-intermediate-gradient: linear-gradient(90deg, #7c3aed 0%, #a78bfa 50%, #c4b5fd 100%);--skill-intermediate-shadow: rgba(167, 139, 250, .4);--skill-beginner-color: #fbbf24;--skill-beginner-bg: rgba(251, 191, 36, .15);--skill-beginner-gradient: linear-gradient(90deg, #d97706 0%, #fbbf24 50%, #fde68a 100%);--skill-beginner-shadow: rgba(251, 191, 36, .4);--toggle-track-bg: rgba(255, 255, 255, .15);--font-family-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif}.light-theme{--color-bg-primary: #f8fafc;--color-bg-secondary: #e2e8f0;--color-bg-card: rgba(255, 255, 255, .9);--color-bg-card-hover: rgba(255, 255, 255, 1);--color-bg-input: rgba(0, 0, 0, .03);--color-bg-input-focus: rgba(0, 0, 0, .05);--color-border: rgba(0, 0, 0, .1);--color-border-hover: rgba(0, 0, 0, .2);--color-border-strong: rgba(0, 0, 0, .2);--color-text-primary: #1e293b;--color-text-secondary: rgba(30, 41, 59, .85);--color-text-muted: rgba(30, 41, 59, .6);--color-accent-purple: var(--color-brand-deep);--color-accent-blue: var(--color-brand-secondary-deep);--color-accent-pink: var(--color-brand-accent-deep);--color-accent-green: #16a34a;--color-accent-orange: #ea580c;--color-shadow: rgba(0, 0, 0, .1);--color-overlay: rgba(255, 255, 255, .9);--color-tag-bg: var(--color-brand-tag-bg-alt);--gradient-hero: linear-gradient( 135deg, var(--color-brand-tint-light) 0%, var(--color-brand-tint-medium) 50%, var(--color-brand-tint-light) 100% );--gradient-section: linear-gradient(180deg, #f8fafc 0%, #e2e8f0 50%, #f8fafc 100%);--gradient-section-alt: linear-gradient(180deg, #e2e8f0 0%, #f8fafc 100%);--gradient-footer: linear-gradient(180deg, #f8fafc 0%, #e2e8f0 100%);--gradient-divider: linear-gradient( 90deg, transparent 0%, rgba(0, 0, 0, .1) 50%, transparent 100% );--gradient-card-placeholder: linear-gradient(135deg, #e2e8f0 0%, #cbd5e1 100%);--color-progress-track: rgba(0, 0, 0, .08);--skill-expert-color: #059669;--skill-expert-bg: rgba(5, 150, 105, .12);--skill-expert-gradient: linear-gradient(90deg, #047857 0%, #10b981 50%, #34d399 100%);--skill-expert-shadow: rgba(5, 150, 105, .35);--skill-advanced-color: #0284c7;--skill-advanced-bg: rgba(2, 132, 199, .12);--skill-advanced-gradient: linear-gradient(90deg, #0369a1 0%, #0ea5e9 50%, #38bdf8 100%);--skill-advanced-shadow: rgba(2, 132, 199, .35);--skill-intermediate-color: #7c3aed;--skill-intermediate-bg: rgba(124, 58, 237, .12);--skill-intermediate-gradient: linear-gradient(90deg, #6d28d9 0%, #8b5cf6 50%, #a78bfa 100%);--skill-intermediate-shadow: rgba(124, 58, 237, .35);--skill-beginner-color: #d97706;--skill-beginner-bg: rgba(217, 119, 6, .12);--skill-beginner-gradient: linear-gradient(90deg, #b45309 0%, #f59e0b 50%, #fbbf24 100%);--skill-beginner-shadow: rgba(217, 119, 6, .35);--toggle-track-bg: rgba(0, 0, 0, .1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:5rem;font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family-primary);background-color:var(--color-bg-primary);color:var(--color-text-primary);line-height:1.6;overflow-x:hidden}::selection{background:var(--color-accent-purple);color:var(--color-text-primary)}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--color-bg-primary)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--color-accent-purple),var(--color-accent-blue));border-radius:5px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--color-accent-blue),var(--color-accent-purple))}:focus-visible{outline:2px solid var(--color-accent-purple);outline-offset:2px}.skip-link{position:absolute;top:-100%;left:16px;background:linear-gradient(135deg,var(--color-accent-purple),var(--color-accent-blue));color:#fff;padding:12px 24px;border-radius:0 0 8px 8px;z-index:10000;font-weight:600;font-size:.875rem;text-decoration:none;transition:top .3s ease;box-shadow:0 4px 12px #0000004d}.skip-link:focus{top:0;outline:2px solid #fff;outline-offset:-4px}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}button{font-family:inherit;cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.app-tooltip{position:absolute;z-index:10000;max-width:260px;padding:.5rem .875rem;border-radius:8px;font-size:.8125rem;font-weight:500;line-height:1.4;white-space:nowrap;pointer-events:none;background:var(--color-bg-primary);color:var(--color-text-primary);border:1px solid var(--color-border-strong);box-shadow:0 4px 16px #0006;animation:tooltipFadeIn .15s ease}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.prevent-copy-flash{position:fixed;top:1.5rem;left:50%;transform:translate(-50%);z-index:99999;padding:.75rem 1.5rem;border-radius:12px;font-size:.875rem;font-weight:600;letter-spacing:.3px;white-space:nowrap;pointer-events:none;background:var(--color-bg-primary);color:var(--color-text-primary);border:1px solid var(--color-border-strong);box-shadow:0 8px 32px #00000059,0 0 0 1px var(--color-brand-shadow);animation:flashSlideIn .3s cubic-bezier(.16,1,.3,1)}.prevent-copy-flash--exit{animation:flashSlideOut .3s ease forwards}@keyframes flashSlideIn{0%{opacity:0;transform:translate(-50%) translateY(-1rem)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes flashSlideOut{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-1rem)}}
