@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";
:root{--primary:#4f46e5;--primary-hover:#4338ca;--background:#0f1117;--surface:#1e212b;--surface-hover:#262a36;--text-main:#f8fafc;--text-muted:#94a3b8;--border:#334155;--success:#10b981;--danger:#ef4444;--warning:#f59e0b}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--background);color:var(--text-main);flex-direction:column;min-height:100vh;font-family:Outfit,sans-serif;display:flex}.glass-panel{-webkit-backdrop-filter:blur(12px);background:#1e212bb3;border:1px solid #ffffff14;border-radius:16px;padding:24px;box-shadow:0 8px 32px #0000005e}.btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--primary);color:#fff;box-shadow:0 4px 14px #4f46e563}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-1px);box-shadow:0 6px 20px #4f46e53b}.btn-outline{color:var(--text-main);border:1px solid var(--border);background:0 0}.btn-outline:hover{background:var(--surface-hover)}.navbar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background:#0f1117cc;border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:20px 40px;display:flex;position:sticky;top:0}.nav-links{gap:24px;display:flex}.nav-link{color:var(--text-muted);font-weight:500;text-decoration:none;transition:color .2s}.nav-link:hover,.nav-link.active{color:var(--text-main)}.container{width:100%;max-width:1200px;margin:0 auto;padding:40px 20px}h1,h2,h3{letter-spacing:-.02em;font-weight:600}.page-title{background:linear-gradient(90deg,#fff,#94a3b8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:8px;font-size:32px}.page-description{color:var(--text-muted);margin-bottom:32px;font-size:16px}.table-container{background:var(--surface);border:1px solid #ffffff14;border-radius:12px;overflow-x:auto;transform:rotateX(180deg)}.table-container>table{transform:rotateX(180deg)}.table-container::-webkit-scrollbar{height:12px}.table-container::-webkit-scrollbar-track{background:#ffffff05;border-radius:12px}.table-container::-webkit-scrollbar-thumb{background:var(--border);border:3px solid var(--surface);border-radius:12px}.table-container::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}table{border-collapse:collapse;text-align:left;width:100%}th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;background:#ffffff08;border-bottom:1px solid #ffffff14;padding:16px 20px;font-size:13px;font-weight:500}td{color:var(--text-main);border-bottom:1px solid #ffffff0a;padding:16px 20px;font-size:14px}tr:hover td{background:#ffffff05}.badge{border-radius:20px;align-items:center;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.badge.success{color:#34d399;background:#10b98126;border:1px solid #10b9814d}.badge.danger{color:#f87171;background:#ef444426;border:1px solid #ef44444d}.badge.warning{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d}.badge.neutral{color:#cbd5e1;background:#94a3b826;border:1px solid #94a3b84d}.dropzone{text-align:center;cursor:pointer;background:#ffffff05;border:2px dashed #ffffff26;border-radius:16px;padding:40px;transition:all .3s;position:relative;overflow:hidden}.dropzone:hover,.dropzone.active{border-color:var(--primary);background:#4f46e50d}.dropzone-icon{color:var(--primary);margin-bottom:16px;font-size:40px}.dropzone-title{margin-bottom:8px;font-size:18px;font-weight:500}.dropzone-desc{color:var(--text-muted);font-size:14px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px;display:grid}.filter-select{appearance:none;background-color:var(--primary);color:#fff;border:1px solid var(--primary-hover);cursor:pointer;text-overflow:ellipsis;border-radius:4px;outline:none;max-width:160px;padding:4px 20px 4px 8px;font-size:11px;transition:all .2s}.filter-select:hover{background-color:var(--primary-hover)}.filter-select option{background-color:var(--surface);color:var(--text-main)}
