@charset "UTF-8";:root{--primary-color: #2563eb;--primary-hover: #1d4ed8;--secondary-color: #6b7280;--background-color: #f9fafb;--surface-color: #ffffff;--text-primary: #111827;--text-secondary: #6b7280;--border-color: #e5e7eb;--shadow: 0 1px 3px rgba(0, 0, 0, .1);--shadow-hover: 0 4px 12px rgba(0, 0, 0, .15);--success-color: #10b981;--error-color: #ef4444;--warning-color: #f59e0b}[data-theme=dark]{--primary-color: #3b82f6;--primary-hover: #2563eb;--secondary-color: #9ca3af;--background-color: #111827;--surface-color: #1f2937;--text-primary: #f9fafb;--text-secondary: #9ca3af;--border-color: #374151;--shadow: 0 1px 3px rgba(0, 0, 0, .3);--shadow-hover: 0 4px 12px rgba(0, 0, 0, .4);--success-color: #34d399;--error-color: #f87171;--warning-color: #fbbf24}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background-color:var(--background-color);color:var(--text-primary);line-height:1.6;transition:background-color .3s ease,color .3s ease;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.container{max-width:1200px;margin:0 auto;padding:0 1rem}@media (max-width: 768px){.container{padding:0 .5rem}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.875rem 2rem;border:none;border-radius:10px;font-size:1rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all .2s ease;min-height:48px;gap:.5rem}.btn-primary{background-color:var(--primary-color);color:#fff;box-shadow:0 2px 8px #2563eb33}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 12px #2563eb4d}.btn-primary:active{transform:translateY(0)}.btn-secondary{background-color:var(--surface-color);color:var(--text-secondary);border:1px solid var(--border-color)}.btn-secondary:hover{background-color:var(--background-color);border-color:var(--text-secondary);color:var(--text-primary)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 480px){.btn{padding:.625rem 1.25rem;font-size:.9rem}}.btn:focus,button:focus,[tabindex]:focus{outline:2px solid var(--primary-color);outline-offset:2px}html{scroll-behavior:smooth}
