:root{--bg-primary: #0a0e27;--bg-secondary: #151932;--bg-tertiary: #1e2139;--accent-cyan: #00f0ff;--accent-purple: #b026ff;--accent-green: #00ff88;--text-primary: #e0e0e0;--text-secondary: #a0a0a0;--border: #2a2f4a}*{margin:0;padding:0;box-sizing:border-box}body{background:var(--bg-primary);color:var(--text-primary);font-family:Courier New,monospace;line-height:1.6}.dashboard{padding:20px;max-width:1800px;margin:0 auto}header{margin-bottom:20px}header h1{color:var(--accent-cyan);text-transform:uppercase;font-size:32px;letter-spacing:4px;text-shadow:0 0 10px var(--accent-cyan);margin-bottom:20px}.grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;margin-top:20px}.panel{background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;padding:20px;box-shadow:0 0 20px #00f0ff1a}.panel h2{color:var(--accent-cyan);text-transform:uppercase;font-size:14px;letter-spacing:2px;margin-bottom:15px;border-bottom:1px solid var(--border);padding-bottom:10px}table{width:100%;border-collapse:collapse}table th{text-align:left;padding:10px;color:var(--accent-purple);font-size:12px;text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid var(--border)}table td{padding:10px;border-bottom:1px solid var(--border);font-size:14px}table tr:hover{background:var(--bg-tertiary)}.activity-item{padding:12px;margin-bottom:8px;background:var(--bg-tertiary);border-left:3px solid var(--border);border-radius:4px;font-size:13px}.activity-item.new{animation:slideIn .3s ease-out;border-left:3px solid var(--accent-green)}.activity-item.success{border-left-color:var(--accent-green)}.activity-item.failure{border-left-color:#f44}.activity-item .timestamp{color:var(--text-secondary);font-size:11px;margin-top:4px}.leaderboard-item{display:flex;justify-content:space-between;padding:10px;margin-bottom:8px;background:var(--bg-tertiary);border-radius:4px}.leaderboard-item .rank{color:var(--accent-purple);font-weight:700;margin-right:10px}.leaderboard-item .value{color:var(--accent-green);font-weight:700}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.stat-card{background:var(--bg-tertiary);padding:15px;border-radius:8px;border:1px solid var(--border)}.stat-card .label{color:var(--text-secondary);font-size:12px;text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.stat-card .value{color:var(--accent-cyan);font-size:24px;font-weight:700}.loading{text-align:center;padding:40px;color:var(--text-secondary)}.error{background:#ff44441a;border:1px solid #ff4444;color:#f44;padding:15px;border-radius:8px;margin-bottom:20px}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.pulse{animation:pulse 2s ease-in-out infinite}.drama-feed{grid-column:span 2;max-height:400px}.drama-feed h2{color:var(--accent-purple);text-shadow:0 0 10px var(--accent-purple)}.drama-list{max-height:350px;overflow-y:auto}.drama-event{display:flex;align-items:flex-start;gap:12px;padding:12px;margin-bottom:8px;background:#8b008b1a;border-left:3px solid var(--accent-purple);border-radius:4px;transition:all .3s ease}.drama-event:hover{background:#8b008b33;transform:translate(4px)}.drama-event.severity-critical{border-left-color:#f06;background:#ff00661a;animation:pulse-red 2s infinite}.drama-event.severity-high{border-left-color:#f60;background:#ff66001a}.drama-event.severity-medium{border-left-color:var(--accent-purple)}.drama-event.severity-low{border-left-color:var(--accent-cyan);background:#00ffff0d}.drama-icon{font-size:24px;flex-shrink:0}.drama-content{flex:1}.drama-description{color:var(--text-primary);font-weight:500;margin-bottom:4px;line-height:1.4}.drama-meta{display:flex;justify-content:space-between;font-size:.85rem;color:var(--text-secondary)}.drama-type{text-transform:uppercase;font-weight:600;letter-spacing:.5px}.drama-time{opacity:.7}.shadow-stat{background:linear-gradient(135deg,#8b008b33,#4b008233);border:1px solid var(--accent-purple)}.shadow-stat .label{color:var(--accent-purple)}.shadow-stat .value{color:var(--accent-purple);text-shadow:0 0 10px var(--accent-purple)}@keyframes pulse-red{0%,to{box-shadow:0 0 5px #ff006680}50%{box-shadow:0 0 20px #f06c}}@keyframes fade-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fade-in .5s ease-out}.drama-list .empty{text-align:center;padding:40px 20px;color:var(--text-secondary);font-style:italic}
