:root{--color-primary: #6366f1;--color-secondary: #8b5cf6;--color-bg: #1a1a2e;--color-bg-light: #16213e;--color-bg-card: #0f3460;--color-text: #eee;--color-text-muted: #a0a0a0;--color-border: #2a2a4a;--color-success: #10b981;--color-warning: #f59e0b;--color-danger: #ef4444;--radius: 8px;--shadow: 0 4px 6px rgba(0, 0, 0, .3)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Microsoft YaHei,PingFang SC,sans-serif;background:var(--color-bg);color:var(--color-text);min-height:100vh}#app{min-height:100vh}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;border:none;border-radius:var(--radius);padding:.5rem 1rem;font-size:1rem;font-family:inherit;transition:all .2s}button.primary{background:var(--color-primary);color:#fff}button.primary:hover{background:#5558e3}button.secondary{background:var(--color-bg-card);color:var(--color-text)}button.secondary:hover{background:#1a4a7a}input,select{padding:.5rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg-light);color:var(--color-text);font-size:1rem;font-family:inherit}input:focus,select:focus{outline:none;border-color:var(--color-primary)}.card{background:var(--color-bg-card);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow)}.container{max-width:1200px;margin:0 auto;padding:1rem}.page{min-height:100vh;display:flex;flex-direction:column}
