*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:Inter,system-ui,sans-serif;font-size:14px}body{background:#0f1117;color:#e4e4e7;min-height:100vh}a{color:#60a5fa;text-decoration:none}a:hover{text-decoration:underline}.layout{display:flex;min-height:100vh}.sidebar{width:240px;background:#161820;border-right:1px solid #27272a;padding:20px 0;flex-shrink:0}.sidebar h1{font-size:18px;font-weight:700;padding:0 20px 20px;color:#fff;border-bottom:1px solid #27272a;margin-bottom:10px}.sidebar a{display:block;padding:10px 20px;color:#a1a1aa;font-size:13px;font-weight:500}.sidebar a:hover,.sidebar a.active{background:#1e2030;color:#fff;text-decoration:none}.sidebar .site-switch{padding:10px 20px;border-top:1px solid #27272a;margin-top:auto}.sidebar .site-switch select{width:100%;background:#1e2030;color:#fff;border:1px solid #3f3f46;border-radius:6px;padding:8px;font-size:13px}.main{flex:1;padding:24px 32px;overflow-x:auto}.main h2{font-size:22px;font-weight:600;margin-bottom:20px}.card{background:#161820;border:1px solid #27272a;border-radius:10px;padding:20px}.card h3{font-size:13px;color:#71717a;font-weight:500;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.card .value{font-size:28px;font-weight:700;color:#fff}.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#71717a;padding:10px 12px;border-bottom:1px solid #27272a}td{padding:10px 12px;border-bottom:1px solid #1e2030;font-size:13px}tr:hover td{background:#1a1c28}.badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600}.badge-green{background:#052e16;color:#4ade80}.badge-red{background:#450a0a;color:#f87171}.badge-yellow{background:#422006;color:#fbbf24}.btn{display:inline-block;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;border:none}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover{background:#2563eb}.btn-danger{background:#dc2626;color:#fff}.btn-danger:hover{background:#b91c1c}.btn-sm{padding:4px 10px;font-size:12px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:12px;color:#a1a1aa;margin-bottom:4px;font-weight:500}.form-group input,.form-group select,.form-group textarea{width:100%;background:#1e2030;color:#fff;border:1px solid #3f3f46;border-radius:6px;padding:8px 12px;font-size:13px}.form-group textarea{min-height:80px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:#161820;border:1px solid #27272a;border-radius:12px;padding:24px;width:560px;max-width:95vw;max-height:90vh;overflow-y:auto}.modal h3{font-size:18px;font-weight:600;margin-bottom:20px}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:20px}.empty{text-align:center;padding:40px;color:#71717a}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh}.login-box{background:#161820;border:1px solid #27272a;border-radius:12px;padding:32px;width:360px}.login-box h1{text-align:center;margin-bottom:24px;font-size:22px}.login-box .btn{width:100%;text-align:center;margin-top:8px}.error-msg{color:#f87171;font-size:12px;margin-top:8px}
