:root{font-family:Inter,Microsoft YaHei,Arial,sans-serif;color:#dce6ed;background:#10151e;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #334656;background:#202d3b;color:#e9f0f6;border-radius:8px;padding:9px 16px}button:hover{background:#304152}button:disabled{opacity:.5;cursor:wait}input,select,textarea{border:1px solid #3a4d5e;border-radius:7px;background:#111c28;color:#edf3f8;padding:10px;width:100%}input[type=checkbox]{width:auto}input:focus,textarea:focus{outline:2px solid #e4b75e}textarea{font:14px/1.6 Consolas,monospace;min-height:320px;resize:vertical}a{color:#edc880}h1,h2,p{margin-top:0}.shell{display:grid;grid-template-columns:230px 1fr;min-height:100vh}.sidebar{border-right:1px solid #273746;background:#131d29;padding:30px 18px;position:sticky;top:0;height:100vh}.brand{font-size:26px;color:#ffdc8f;font-weight:800;margin:0 12px 6px}.brand-sub{font-size:12px;color:#8197aa;margin:0 12px 32px}.nav{display:flex;flex-direction:column;gap:6px}.nav button{text-align:left;background:none;border:0;padding:13px 16px;color:#95a9bc}.nav button.active{background:#2b3440;color:#ffda8b;border-left:3px solid #f0ba51}.main{padding:36px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.topbar h1{font-size:25px;margin:0}.topbar small{display:block;color:#8598aa;font-size:13px;margin-top:9px}.actions{display:flex;gap:10px;flex-wrap:wrap}.cards{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:16px;margin-bottom:28px}.card,.panel{border:1px solid #2a3949;background:#16212e;border-radius:13px;padding:23px}.card label{color:#8fa3b4;font-size:13px}.card strong{display:block;font-size:29px;font-weight:600;margin-top:15px;color:#ffe0a0}.panel h2{font-size:18px}.panel p{color:#91a7b9;line-height:1.8;font-size:14px}.table-wrap{overflow:auto;border:1px solid #293a4b;border-radius:10px;max-height:75vh}table{border-collapse:collapse;width:100%;font-size:13px;white-space:nowrap}th{text-align:left;color:#819bb0;background:#192735;position:sticky;top:0;z-index:1;font-weight:500}th,td{padding:14px 16px;border-bottom:1px solid #243545}td{max-width:400px;overflow:hidden;text-overflow:ellipsis}tr:hover td{background:#1d2c3b}.status{padding:4px 8px;border-radius:5px;background:#28443c;color:#a6e4c8}.status.unknown,.status.rejected{background:#543735;color:#ffc0a6}.notice{border-left:3px solid #e0ad54;background:#252a2d;padding:15px 18px;margin:18px 0;color:#e5cf9e;font-size:14px;line-height:1.7}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:9px;margin-bottom:17px}.field label{font-size:14px;color:#adc0ce}.primary{background:#dfb060;color:#21190c;border-color:#ecc67b;font-weight:700}.primary:hover{background:#f2c879}.login{width:min(430px,calc(100vw - 40px));margin:17vh auto;background:#16212e;border:1px solid #344354;padding:38px;border-radius:18px;box-shadow:0 20px 80px #0005}.login h1{color:#ffe0a0}.login p{color:#849bae;font-size:14px}.login button{width:100%;margin-top:8px}.error{color:#ff9d8c;white-space:pre-wrap;font-size:14px;margin-top:18px}.toast{position:fixed;right:30px;bottom:25px;background:#254334;border:1px solid #659f76;padding:15px 25px;border-radius:10px;z-index:10;max-width:500px}.form-footer{margin-top:20px;display:flex;align-items:center;gap:20px}.code{font-family:Consolas,monospace;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}.muted{color:#92a6b8}.confirm-dialog{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;z-index:20;display:flex;justify-content:center;align-items:center}.confirm-dialog>section{width:min(600px,90vw);background:#182431;border:1px solid #52606d;border-radius:14px;padding:28px}.confirm-dialog textarea{min-height:120px}.filters{display:flex;gap:12px;margin:16px 0}.filters input{max-width:360px}.badge{font-size:11px;border:1px solid #665132;border-radius:10px;padding:3px 8px;color:#e9c180;margin-left:8px}@media(max-width:900px){.shell{grid-template-columns:170px 1fr}.sidebar{padding:24px 8px}.main{padding:22px 16px}.cards{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr}.brand{font-size:22px}.topbar{gap:12px;flex-wrap:wrap}}@media(max-width:580px){.shell{display:block}.sidebar{position:static;height:auto;padding:18px}.brand-sub{margin-bottom:16px}.nav{flex-direction:row;overflow:auto}.nav button{white-space:nowrap}.main{padding:20px 12px}.cards{gap:9px}.card{padding:16px}.card strong{font-size:23px}}
