*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #0a0a0f;--bg-secondary: #12121a;--bg-card: #1a1a24;--accent: #00ff88;--accent-dim: #00ff8833;--danger: #ff3366;--warning: #ffaa00;--text-primary: #ffffff;--text-secondary: #888899;--border: #2a2a3a}body{background:var(--bg-primary);color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;min-height:100vh;line-height:1.6}.app{min-height:100vh}.navbar{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:var(--bg-secondary);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100}.nav-brand .brand-link{font-size:1.5rem;font-weight:800;color:var(--accent);text-decoration:none;letter-spacing:2px}.nav-links{display:flex;gap:1.5rem;align-items:center}.nav-link{color:var(--text-secondary);text-decoration:none;font-weight:500;transition:color .2s;background:none;border:none;cursor:pointer;font-size:1rem;font-family:inherit}.nav-link:hover,.nav-link.router-link-active{color:var(--accent)}.admin-link,.admin-link:hover{color:var(--warning)}.logout-btn{color:var(--danger)}.logout-btn:hover{color:#f68}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}.fade-enter-from,.fade-leave-to{opacity:0}.container{max-width:1200px;margin:0 auto;padding:2rem}.btn{padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;border:none;font-size:1rem}.btn-primary{background:var(--accent);color:var(--bg-primary)}.btn-primary:hover{background:#00cc6e;transform:translateY(-1px)}.btn-primary:disabled{background:var(--text-secondary);cursor:not-allowed;transform:none}.btn-secondary{background:transparent;color:var(--accent);border:1px solid var(--accent)}.btn-secondary:hover{background:var(--accent-dim)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#f47}.input{width:100%;padding:.875rem 1rem;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;color:var(--text-primary);font-size:1rem;transition:border-color .2s}.input:focus{outline:none;border-color:var(--accent)}.input::placeholder{color:var(--text-secondary)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:1.5rem}.card-title{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.page-header{margin-bottom:2rem}.page-title{font-size:2rem;font-weight:800;margin-bottom:.5rem}.page-subtitle{color:var(--text-secondary)}@media (max-width: 768px){.navbar{padding:1rem}.nav-links{gap:1rem}.nav-link{font-size:.875rem}.container{padding:1rem}}
