:root{--primary-color:#667eea;--secondary-color:#764ba2;--text-color:#2d3748;--bg-color:#f8f9fa;--border-radius:12px;--box-shadow:0 4px 6px rgba(0,0,0,0.1);--primary-50:#f5f7ff;--primary-100:#e0e7ff;--primary-500:#667eea;--primary-600:#2563eb;--neutral-50:#fafafa;--neutral-50-rgb:250,250,250;--neutral-100:#e5e7eb;--neutral-200:#d1d5db;--neutral-300:#9ca3af;--neutral-600:#4b5563;--neutral-800:#1f2937;--neutral-900:#111827;--neutral-900-rgb:17,24,39;--success:#10b981;--warning:#f59e0b;--error:#ef4444;--info:#3b82f6}[data-theme=dark]{--primary-color:#8b7df7;--secondary-color:#a78bfa;--text-color:#e5e7eb;--bg-color:#111827;--box-shadow:0 4px 6px rgba(0,0,0,0.4);--primary-50:#1e1b4b;--primary-100:#312e81;--primary-500:#8b7df7;--primary-600:#a78bfa;--neutral-50:#1f2937;--neutral-50-rgb:31,41,55;--neutral-100:#374151;--neutral-200:#4b5563;--neutral-300:#6b7280;--neutral-600:#d1d5db;--neutral-800:#e5e7eb;--neutral-900:#f9fafb;--neutral-900-rgb:249,250,251;--success:#34d399;--warning:#fbbf24;--error:#f87171;--info:#60a5fa}kbd{display:inline-flex;align-items:center;padding:2px 6px;font-size:.75rem;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;background-color:var(--neutral-100);border:1px solid var(--neutral-300);border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.05);color:var(--neutral-900)}*{box-sizing:border-box;padding:0;margin:0}body,html{max-width:100vw;overflow-x:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{color:var(--text-color);background-color:var(--bg-color);font-size:clamp(.875rem,2vw,1rem)}a{color:inherit;text-decoration:none}.display-1,h1{font-size:clamp(2rem,5vw,3rem)}.display-2,h2{font-size:clamp(1.75rem,4.5vw,2.5rem)}h3{font-size:clamp(1.5rem,4vw,2rem)}h4{font-size:clamp(1.25rem,3.5vw,1.75rem)}h5{font-size:clamp(1.1rem,3vw,1.5rem)}.lead{font-size:clamp(1rem,2.5vw,1.25rem)!important}.gradient-bg{background:linear-gradient(135deg,var(--primary-color) 0,var(--secondary-color) 100%)}.card-hover{transition:all .3s ease;will-change:transform,box-shadow}.card-hover:hover{transform:translateY(-5px);box-shadow:0 8px 16px rgba(0,0,0,.15)}.card-hover:active{transform:translateY(-2px) scale(.98);box-shadow:0 4px 8px rgba(0,0,0,.1)}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.float-animation{animation:float 3s ease-in-out infinite}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.animate-fade-in{animation:fadeIn .6s ease-out forwards}.animate-slide-in-up{animation:slideInUp .6s ease-out forwards}.animate-slide-in-left{animation:slideInLeft .6s ease-out forwards}.animate-slide-in-right{animation:slideInRight .6s ease-out forwards}.animate-scale-in{animation:scaleIn .6s ease-out forwards}.animate-delay-100{animation-delay:.1s}.animate-delay-200{animation-delay:.2s}.animate-delay-300{animation-delay:.3s}.animate-delay-400{animation-delay:.4s}.animate-delay-500{animation-delay:.5s}.animate-delay-600{animation-delay:.6s}.animate-delay-700{animation-delay:.7s}.animate-delay-800{animation-delay:.8s}.animate-on-scroll{opacity:0}.animate-on-scroll.animated{opacity:1}@media (prefers-reduced-motion:reduce){.animate-fade-in,.animate-scale-in,.animate-slide-in-left,.animate-slide-in-right,.animate-slide-in-up,.float-animation{animation:none!important;opacity:1!important;transform:none!important}}.spinner{border:3px solid #f3f3f3;border-top:3px solid var(--primary-color);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.btn-primary{background-color:var(--primary-color);border-color:var(--primary-color)}.btn-primary:hover{background-color:var(--secondary-color);border-color:var(--secondary-color)}.text-primary{color:var(--primary-color)!important}.bg-primary{background-color:var(--primary-500)!important}.bg-success{background-color:var(--success)!important}.bg-info{background-color:var(--info)!important}.bg-warning{background-color:var(--warning)!important}.bg-danger{background-color:var(--error)!important}.bg-secondary{background-color:var(--neutral-600)!important}.bg-dark{background-color:var(--neutral-900)!important}.bg-light{background-color:var(--neutral-50)!important}.bg-white{background-color:white!important}[data-theme=dark] .bg-white{background-color:var(--neutral-900)!important}.text-white{color:var(--neutral-50)!important}.text-dark,[data-theme=dark] .text-white{color:var(--neutral-900)!important}[data-theme=dark] .text-dark{color:var(--neutral-50)!important}.text-muted{color:var(--neutral-600)!important}.text-white-50{color:rgba(var(--neutral-50-rgb),.5)!important}[data-theme=dark] .text-white-50{color:rgba(var(--neutral-900-rgb),.5)!important}.badge.bg-white{background-color:white!important;color:var(--neutral-900)!important}[data-theme=dark] .badge.bg-white{background-color:var(--neutral-800)!important;color:var(--neutral-50)!important}.badge.bg-success{background-color:var(--success)!important;color:white!important}.badge.bg-info{background-color:var(--info)!important;color:white!important}.badge.bg-warning{background-color:var(--warning)!important;color:white!important}.badge.bg-danger{background-color:var(--error)!important;color:white!important}.markdown-content{line-height:1.6}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin-top:1rem;margin-bottom:.5rem;font-weight:600}.markdown-content h1{font-size:1.5rem}.markdown-content h2{font-size:1.3rem}.markdown-content h3{font-size:1.1rem}.markdown-content p{margin-bottom:.75rem}.markdown-content ol,.markdown-content ul{margin-left:1.5rem;margin-bottom:.75rem}.markdown-content li{margin-bottom:.25rem}.markdown-content blockquote{border-left:4px solid var(--primary-color);padding-left:1rem;margin:1rem 0;color:#6c757d}.markdown-content a{color:var(--primary-color);text-decoration:underline}.markdown-content a:hover{color:var(--secondary-color)}.markdown-content table{width:100%;border-collapse:collapse;margin:1rem 0}.markdown-content table td,.markdown-content table th{border:1px solid #dee2e6;padding:.5rem}.markdown-content table th{background-color:#f8f9fa;font-weight:600}.markdown-content hr{margin:1rem 0;border:0;border-top:1px solid #dee2e6}@media (max-width:991.98px){.btn,.list-group-item,.nav-link{min-height:44px;display:flex;align-items:center}.card-body{padding:1rem}h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.25rem}.card-hover:hover{transform:none;box-shadow:0 4px 6px rgba(0,0,0,.1)}}@media (hover:none) and (pointer:coarse){.card-hover:hover{transform:none}.btn:active,.list-group-item:active,.nav-link:active{opacity:.7;transform:scale(.98);transition:all .1s ease}a{padding:4px;margin:-4px}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}@media (max-width:575.98px){.container-fluid{padding-left:1rem;padding-right:1rem}.btn-lg{padding:.75rem 1rem;font-size:1rem}.modal-dialog{margin:.5rem}.navbar{padding:.5rem 1rem}}.modal-body,.overflow-auto{-webkit-overflow-scrolling:touch}.badge,.btn,.navbar-toggler{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:4px}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.btn,.card-hover,.modal,.skeleton{will-change:transform,opacity}img{content-visibility:auto}@media (prefers-color-scheme:dark){.skeleton{background:linear-gradient(90deg,#2a2a2a 25%,#1a1a1a 50%,#2a2a2a 75%);background-size:200% 100%}}@media (max-width:360px){.btn-group,.d-flex.gap-3{flex-direction:column!important;gap:.5rem!important}.btn{width:100%;padding:.5rem 1rem;font-size:.875rem}.card-body{padding:1rem!important}.container,.container-fluid{padding-left:.75rem;padding-right:.75rem}.navbar{padding:.5rem .75rem!important}.navbar-brand{font-size:1rem!important}.display-4{font-size:1.75rem!important}.modal-dialog{margin:.5rem}.modal-body{padding:1rem}.form-control,.form-select{font-size:.875rem;padding:.5rem .75rem}.badge{font-size:.7rem;padding:.25rem .5rem}}.btn:focus-visible,.form-control:focus-visible,.form-select:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px;box-shadow:0 0 0 4px rgba(102,126,234,.1)}.nav-link:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.card-hover:focus-within{transform:translateY(-4px);box-shadow:0 8px 20px rgba(0,0,0,.15);transition:all .3s ease}.skip-to-content{position:absolute;top:-40px;left:0;background:var(--primary-color);color:white;padding:8px 16px;text-decoration:none;z-index:100;border-radius:0 0 4px 0}.skip-to-content:focus{top:0}