:root{--bg:#f6f8fc;--paper:#fff;--ink:#18233b;--sub:#7c879e;--line:#e8edf4;--primary:#525ad9;--primary2:#404bc4;--nav:#131e36;--green:#12a878;--amber:#d48c24;--red:#d55158;--radius:15px}*{box-sizing:border-box}html{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}body{margin:0;background:var(--bg);color:var(--ink);font-size:14px}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}input{min-width:0}h1,h2,h3,p{margin-top:0}.app-shell{display:flex;min-height:100vh}.sidebar{width:242px;flex-shrink:0;background:var(--nav);color:#c1cbe1;padding:30px 15px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;color:#fff;padding:4px 12px;margin-bottom:57px}.brand-symbol{display:inline-flex;align-items:center;justify-content:center;border-radius:11px;width:40px;height:40px;font-size:23px;font-weight:900;background:linear-gradient(145deg,#8d8ffa,#4e54db);box-shadow:0 5px 19px #6471e54d;color:#fff}.brand strong{display:block;font-size:19px;letter-spacing:-.5px}.brand small{display:block;color:#8496b8;font-size:10px;margin-top:3px;letter-spacing:1.1px}.nav-title{padding:0 18px 16px;text-transform:uppercase;letter-spacing:2px;font-size:10px;color:#7183a4}.nav{display:grid;gap:7px}.nav a{padding:14px 17px;border-radius:10px;font-size:13px;display:flex;align-items:center;gap:13px;color:#a8b7d0;transition:.15s}.nav a:hover{background:#243450;color:white}.nav a.current{color:#fff;background:#323f64;box-shadow:inset 3px 0 #979aff}.nav-icon{font-size:20px;width:22px;display:inline-block;text-align:center}.sidebar-bottom{margin:auto 10px 0;padding:22px 8px 0;font-size:12px;border-top:1px solid #2a3854}.sidebar-bottom small{display:block;color:#6e829f;margin:8px 0 0 17px;font-size:11px}.state-dot{display:inline-block;width:8px;height:8px;background:#30cf98;border-radius:50%;margin-right:7px}.main-area{min-width:0;flex:1}.topbar{height:74px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 35px}.crumb{font-size:13px;color:#98a3b5}.crumb strong{color:#25324c;font-weight:650}.chev{padding:0 11px;color:#bbc4d2}.topbar-right{display:flex;align-items:center;gap:10px}.account-icon{width:30px;height:30px;border-radius:9px;background:#ecedff;color:#5659bb;display:grid;place-items:center;font-weight:700}.account-name{font-weight:650}.logout-btn{background:transparent;border:0;color:#8792aa;font-size:12px;margin-left:12px}.logout-btn:hover{color:#e0495b}.content{padding:37px 38px 65px;max-width:1600px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:28px}.page-heading h1{font-size:28px;letter-spacing:-.7px;margin:6px 0 9px;font-weight:760}.page-heading p:not(.eyebrow){color:var(--sub);margin:0;font-size:13px}.eyebrow{font-size:10px;letter-spacing:2.6px;font-weight:750;margin-bottom:11px}.accent{color:#6466d4}.primary-btn{background:var(--primary);border:1px solid var(--primary);color:#fff;padding:13px 18px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;gap:12px;font-weight:680;font-size:13px;box-shadow:0 5px 14px #4c5de41a;white-space:nowrap}.primary-btn:hover{background:var(--primary2)}.primary-btn span{font-size:19px}.full{width:100%}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:25px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px 23px;box-shadow:0 4px 24px #1d2d4710;display:flex;align-items:flex-start;flex-direction:column;min-height:176px}.stat-icon{border-radius:10px;width:37px;height:37px;display:grid;place-items:center;font-size:20px;margin-bottom:14px}.indigo{background:#eeeefe;color:#6364ce}.blue{background:#eaf4ff;color:#3f8dd7}.amber{background:#fff4e4;color:#c68d32}.green{background:#e8f8f1;color:#21a27a}.red{background:#ffeded;color:#c65b60}.stat-card span{font-size:12px;color:#8791a5}.stat-card strong{font-size:30px;line-height:1.5;letter-spacing:-1px;font-weight:780}.stat-card small{font-size:11px;color:#a5aec0}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 4px 25px #1d2d4709;margin-bottom:24px;overflow:hidden}.panel-title{display:flex;align-items:center;justify-content:space-between;padding:24px 25px 22px;gap:16px}.panel-title h2{font-size:16px;margin-bottom:7px;letter-spacing:-.3px}.panel-title p{margin:0;color:var(--sub);font-size:12px}.text-link{color:#525ed0;font-weight:650;font-size:12px;white-space:nowrap}.text-link:hover{text-decoration:underline}.table-scroll{width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap;min-width:720px;text-align:left}thead{background:#f9faff}th{font-size:11px;letter-spacing:.2px;color:#909cb0;font-weight:650;padding:15px 24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}td{padding:16px 24px;border-bottom:1px solid #f1f3f8;font-size:12px;color:#56647b}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfcff}td.strong{font-weight:700;color:#2d3a54}.filename{font-weight:660;color:#30405e;max-width:210px;overflow:hidden;text-overflow:ellipsis}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,"Liberation Mono",monospace;font-size:12px}.text-green{color:var(--green);font-weight:700}.empty{text-align:center;padding:56px 20px;color:#a6afbe}.upload-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:20px}.drop-zone{text-align:center;background:#fafaff;border:1.6px dashed #bdc4e7;border-radius:12px;padding:35px 12px 24px}.upload-icon{width:58px;height:58px;border-radius:15px;background:#e8eafa;color:#6267d2;font-size:33px;display:grid;place-items:center;margin:auto auto 13px}.file-label{color:#384364;font-size:15px;font-weight:700;display:block;margin-bottom:9px}.drop-zone p{font-size:12px;color:#9099ac}.drop-zone input{max-width:260px;font-size:12px;margin-top:8px;color:#8792ab}.upload-form{padding:0 24px 24px}.upload-form>.primary-btn{margin-top:18px}.guide-panel .panel-title{padding-bottom:16px}.sample-table{display:grid;grid-template-columns:1fr 1fr;margin:0 24px 14px;border:1px solid #e9edf4;border-radius:8px;overflow:hidden}.sample-table>*{padding:11px 15px;border-bottom:1px solid #edf0f5}.sample-table>div{background:#f5f7fb;color:#65728c;font-size:12px;font-weight:700}.sample-table>span{font-family:ui-monospace,Consolas,monospace;font-size:12px}.guide-list{list-style:none;padding:0 25px 19px;margin:0;display:grid;gap:13px}.guide-list li{font-size:12px;color:#79869b;line-height:1.6;display:flex;gap:10px}.guide-list li span{font-weight:800;color:#868ade;font-size:10px}.label-pill{border:1px solid #e8eaf7;border-radius:20px;padding:7px 11px;color:#7884a8;font-size:11px;white-space:nowrap}.alert{padding:15px 18px;border-radius:10px;font-size:13px;margin-bottom:22px}.alert.error{background:#fff0f0;border:1px solid #f6cfd0;color:#a7434e}.alert.success{background:#eaf9f1;border:1px solid #c4eed9;color:#23845a}.status{display:inline-block;border-radius:5px;padding:6px 9px;font-size:11px;font-weight:650}.status-new{background:#e5f8ee;color:#129469}.status-duplicate_db,.status-duplicate_file{background:#fff4e2;color:#a57827}.status-invalid{background:#ffeeef;color:#c34e60}.status-download{background:#eaf0ff;color:#4c68bc}.note{max-width:350px;white-space:normal;color:#8490a4}.muted-link{color:#7783b5}.search{display:flex;gap:8px}.search input,.form-stack input{background:#fff;border:1px solid #dde3ec;border-radius:9px;padding:11px 13px;outline:none}.search input:focus,.form-stack input:focus{border-color:#7e80e8;box-shadow:0 0 0 3px #777be51a}.search button{border:0;border-radius:8px;padding:10px 15px;color:#fff;background:#5961d3}.pagination{display:flex;align-items:center;justify-content:space-between;padding:18px 25px;border-top:1px solid var(--line);color:#9ba7b9;font-size:12px}.pagination div{display:flex;gap:15px}.pagination a{color:#575ecb;font-weight:650}.log-detail{white-space:normal;min-width:235px;max-width:430px;line-height:1.65}.small{font-size:11px}.auth-layout{min-height:100vh;display:grid;grid-template-columns:minmax(0,48%) minmax(0,52%)}.auth-intro{background:radial-gradient(circle at 10% 80%,#313c77 0,transparent 40%),linear-gradient(145deg,#161f40,#252c59 78%,#3a3b85);padding:48px 12%;display:flex;flex-direction:column;justify-content:space-between;color:white}.auth-logo{display:flex;align-items:center;gap:12px;font-size:25px;font-weight:800;letter-spacing:-.5px}.auth-intro h1{font-size:clamp(31px,3.35vw,53px);line-height:1.23;letter-spacing:-1.9px;margin:0 0 26px}.auth-intro p:not(.eyebrow){font-size:15px;line-height:1.9;max-width:400px;color:#b3bbd5}.auth-intro .eyebrow{color:#969cf9;margin-bottom:28px}.auth-foot{color:#6573a1;font-size:10px;letter-spacing:2px}.auth-foot span{margin:0 9px}.auth-side{display:flex;align-items:center;justify-content:center;padding:40px}.auth-card{width:min(100%,420px)}.auth-card h2{font-size:31px;letter-spacing:-.8px;margin-bottom:11px}.subtext{color:#8995aa;font-size:13px;margin-bottom:37px}.form-stack{display:flex;flex-direction:column;gap:12px}.form-stack label{font-weight:650;font-size:12px;color:#5d6b83;margin-top:5px}.form-stack input{padding:14px 15px;border-radius:10px;font-size:14px}.form-stack .primary-btn{margin-top:22px;padding:15px}.auth-note{border-top:1px solid var(--line);padding-top:24px;margin-top:40px;color:#9ba5b8;font-size:11px;line-height:1.75}.auth-note span{color:#5c67d6;font-size:17px;padding-right:6px}.step-chip{display:inline-block;color:#6269c5;background:#eef0ff;border-radius:20px;padding:7px 12px;font-size:11px;font-weight:700;margin-bottom:25px}.otp-input{font-family:ui-monospace,Consolas,monospace!important;font-size:25px!important;letter-spacing:8px;text-align:center}.helper{font-size:11px;color:#9aa5b5;margin:0 0 3px}@media(max-width:1050px){.sidebar{width:204px}.content{padding:26px 20px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.upload-layout{grid-template-columns:1fr}.auth-layout{grid-template-columns:42% 58%}.auth-intro{padding:45px 10%}}@media(max-width:650px){.app-shell{display:block}.sidebar{width:auto;padding:12px;display:block}.brand{margin-bottom:10px}.nav-title,.sidebar-bottom{display:none}.nav{display:flex;overflow-x:auto;gap:1px}.nav a{white-space:nowrap;padding:10px 12px;font-size:12px}.nav-icon{font-size:16px;width:auto}.topbar{padding:0 15px;height:60px}.content{padding:24px 14px}.page-heading{align-items:flex-start;flex-direction:column}.page-heading h1{font-size:25px}.stats-grid{gap:10px}.stat-card{padding:15px;min-height:152px}.panel-title{padding:19px 15px}.search{width:100%}.search input{width:100%}.panel-title:has(.search){align-items:stretch;flex-direction:column}th,td{padding:13px 15px}.auth-layout{display:block}.auth-intro{padding:24px;min-height:190px;display:block}.auth-intro h1,.auth-intro p:not(.eyebrow),.auth-foot{display:none}.auth-side{padding:42px 22px}.account-name{max-width:85px;overflow:hidden;text-overflow:ellipsis}}

.filter-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:0 24px 20px}.filter-tabs a{font-size:11px;color:#7a86a1;padding:9px 13px;border:1px solid #e7eaf3;border-radius:7px}.filter-tabs a.selected{background:#efefff;border-color:#c9caf7;color:#5059be;font-weight:700}
