*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #1a1a2e;--bg-secondary: #16213e;--bg-card: #0f3460;--text-primary: #eee;--text-secondary: #aaa;--accent: #e94560;--success: #4caf50;--warning: #ff9800;--error: #f44336;--border: #333}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.app{display:flex;min-height:100vh}.sidebar{width:220px;background:var(--bg-secondary);padding:20px;border-right:1px solid var(--border)}.sidebar h1{font-size:1.2rem;margin-bottom:30px;color:var(--accent)}.sidebar nav{display:flex;flex-direction:column;gap:8px}.sidebar nav a{padding:10px 15px;border-radius:6px;color:var(--text-secondary);transition:all .2s}.sidebar nav a:hover,.sidebar nav a.active{background:var(--bg-card);color:var(--text-primary);text-decoration:none}.main-content{flex:1;padding:30px;overflow-y:auto}.card{background:var(--bg-secondary);border-radius:8px;padding:20px;margin-bottom:20px}.card h2{font-size:1rem;color:var(--text-secondary);margin-bottom:15px;text-transform:uppercase;letter-spacing:1px}table{width:100%;border-collapse:collapse}th,td{padding:12px;text-align:left;border-bottom:1px solid var(--border)}th{color:var(--text-secondary);font-weight:500;font-size:.85rem;text-transform:uppercase}tr:hover{background:#ffffff05}.btn{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{opacity:.9}.btn-secondary{background:var(--bg-card);color:var(--text-primary)}.btn-secondary:hover{background:var(--border)}input,select,textarea{width:100%;padding:10px;border:1px solid var(--border);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-size:.9rem}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent)}label{display:block;margin-bottom:5px;color:var(--text-secondary);font-size:.85rem}.form-group{margin-bottom:15px}.badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:500}.badge-success{background:#4caf5033;color:var(--success)}.badge-warning{background:#ff980033;color:var(--warning)}.badge-error{background:#f4433633;color:var(--error)}.badge-long{background:#4caf5033;color:var(--success)}.badge-short{background:#f4433633;color:var(--error)}.grid{display:grid;gap:20px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1200px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.sidebar{display:none}}.stat-value{font-size:2rem;font-weight:700;color:var(--text-primary)}.stat-label{font-size:.85rem;color:var(--text-secondary)}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:var(--bg-primary)}.login-box{background:var(--bg-secondary);padding:40px;border-radius:12px;width:100%;max-width:400px}.login-box h1{text-align:center;margin-bottom:30px;color:var(--accent)}.error-message{background:#f443361a;border:1px solid var(--error);color:var(--error);padding:10px;border-radius:6px;margin-bottom:15px}.filters{display:flex;gap:15px;margin-bottom:20px;flex-wrap:wrap}.filters select,.filters input{width:auto;min-width:150px}.toggle-container{display:flex;align-items:center;gap:10px}.toggle{position:relative;width:50px;height:26px}.toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:var(--border);border-radius:26px;transition:.3s}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.3s}.toggle input:checked+.toggle-slider{background:var(--success)}.toggle input:checked+.toggle-slider:before{transform:translate(24px)}.config-section{margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid var(--border)}.config-section h3{color:var(--accent);margin-bottom:15px;font-size:.95rem}.config-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px}.loading{text-align:center;padding:40px;color:var(--text-secondary)}.timestamp{font-family:monospace;font-size:.85rem;color:var(--text-secondary)}
