:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#273443;background:#eef2f4}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}.shell{min-height:100vh;padding:42px 20px;display:flex;justify-content:center}.panel{width:min(900px,100%);background:#fff;border-radius:18px;padding:34px;box-shadow:0 14px 38px #25384a18}.logoRow{display:flex;align-items:center;gap:7px;color:#0874b8}.logoRow .bars{display:flex;gap:2px;height:29px}.bars i{display:block;width:6px}.bars i:nth-child(1){background:#0b83c6}.bars i:nth-child(2){background:#f4d400}.bars i:nth-child(3){background:#159148}.logoRow strong{font-size:24px;line-height:1}.logoRow small{display:inline-block;font-size:6px;line-height:8px;margin-left:3px;vertical-align:middle;color:#4382a8}h1{font-size:30px;margin:28px 0 8px}.lead{color:#607080;line-height:1.6;max-width:700px}.uploadBox{border:1px dashed #9bb3c3;background:#f8fbfc;padding:20px;border-radius:12px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}.uploadBox button,.primary,.ghost{border:0;background:#0878b8;color:#fff;border-radius:8px;padding:11px 16px;cursor:pointer}.uploadBox button:disabled,.primary:disabled,.ghost:disabled{opacity:.5;cursor:not-allowed}.uploadBox button.ghost,button.ghost{background:#fff;color:#0878b8;border:1px solid #0878b8}.serialLine{display:flex;gap:8px}.serialLine input{flex:1;min-width:0;border:1px solid #ccd8df;border-radius:8px;padding:11px;background:#f3f6f8}.ghost.small{padding:10px 12px;white-space:nowrap}.editor{margin-top:26px}.editor h2{font-size:20px}.hint{color:#6d7a86}.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field,.readOnly{display:flex;flex-direction:column;gap:7px}.field span,.readOnly span{font-size:13px;color:#607080}.field input{border:1px solid #ccd8df;border-radius:8px;padding:11px}.readOnly code{background:#f3f6f8;padding:11px;border-radius:8px;word-break:break-all}.primary{margin-top:20px}.error{margin-top:18px;background:#fff0f0;color:#a32020;padding:12px;border-radius:8px}.success{margin-top:22px;display:flex;flex-direction:column;gap:10px;background:#eef9f0;padding:18px;border-radius:10px}.buttonLink,.back{display:inline-block;width:max-content;background:#0878b8;color:#fff;text-decoration:none;border-radius:8px;padding:11px 18px;border:0;cursor:pointer;text-align:center}.success code{word-break:break-all}.verifyBg{min-height:100vh;background:#e7ebea;padding:54px 32px;display:flex;align-items:flex-start;justify-content:center}.verifyCard{width:334px;min-height:432px;background:#fff;border-radius:11px;padding:23px 36px 21px;box-shadow:0 4px 8px #0002}.verifyCard>.logoRow{justify-content:center}.valid{margin-top:46px;text-align:center;color:#44a64c;font-size:17px}.check{display:inline-flex;width:22px;height:22px;border:2px solid #44a64c;border-radius:50%;align-items:center;justify-content:center;margin-left:5px;font-size:13px;font-weight:700}.rule{height:1px;background:#f1f2f3;margin:36px 0 22px}.verifyCard dl{display:grid;grid-template-columns:1fr 1.25fr;gap:16px 10px;margin:0 0 38px;font-size:12px;color:#475565}.verifyCard dt{margin:0}.verifyCard dd{margin:0;color:#36414c}.back{margin:0 auto;display:block;text-align:center;font-size:14px;width:170px;padding:12px}.invalid{color:#b33;text-align:center;margin-top:35px}.loginBg{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 16px;background:radial-gradient(900px 420px at 50% -8%,#d7ebf8,#eef2f4 58%)}.loginCard{width:min(440px,100%);background:#fff;border-radius:18px;padding:34px;box-shadow:0 18px 50px #25384a1f;display:flex;flex-direction:column;gap:14px}.loginCard h1{margin:8px 0 0}.loginCard .lead{margin:0}.loginCard .field input,.loginCard .serialLine input{width:100%;background:#fff}.loginCard .error{margin-top:0}.loginSubmit{width:100%;margin-top:4px}.topBar{display:flex;align-items:center;justify-content:space-between;gap:12px}.topBar .ghost.small{flex:none}@media(max-width:650px){.grid{grid-template-columns:1fr}.panel{padding:24px}.verifyBg{padding:22px 12px}.verifyCard{width:min(334px,100%)}.loginCard{padding:24px}}
