:root{font:16px/1.65 system-ui,"Microsoft YaHei",sans-serif;color:#24364c;background:#f1f5fa;color-scheme:light}
*{box-sizing:border-box}body{margin:0}main{max-width:940px;margin:36px auto;padding:0 24px 48px}header{padding:12px 0 24px}.label{font-size:13px;letter-spacing:.12em;color:#47688d}h1{font-size:30px;margin:8px 0}h2{font-size:21px;margin:0 0 8px}p{color:#52657b;margin:8px 0 18px}section{background:white;border:1px solid #dae3ee;border-radius:15px;padding:26px;margin:0 0 22px;box-shadow:0 4px 20px #223b5c06}form{display:grid;grid-template-columns:150px 1fr;gap:14px;align-items:center}input{font:inherit;padding:10px 12px;border:1px solid #c3cfdf;border-radius:7px;width:100%}button{font:inherit;background:#1553b7;color:white;border:0;border-radius:7px;padding:11px 18px;cursor:pointer}button:disabled{background:#8799b3;cursor:wait}form button{grid-column:2}.small{font-size:13px;margin-top:18px}.secondary{background:#e9eff8;color:#2b4f80}.actions{display:flex;gap:12px;flex-wrap:wrap}iframe{border:1px solid #e3e9f2;width:100%;height:365px;border-radius:9px;margin-top:8px}#status{padding:12px;background:#f2f6fc;border-radius:6px;color:#214d82}pre{overflow:auto;white-space:pre-wrap;word-break:break-word;font-size:12px;max-height:390px;background:#f7f9fc;padding:14px;border-radius:7px}.scores{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.scores div{padding:14px;border:1px solid #dce5f2;border-radius:9px}.scores span{display:block;font-size:13px;color:#586f8d}.scores strong{font-size:28px;color:#174f9c}@media(max-width:620px){main{padding:0 12px}section{padding:18px}form{grid-template-columns:1fr;gap:6px}form button{grid-column:1;margin-top:12px}}
/* DD maintenance portal */
:root{color:#27272a;background:#faf9f7}button{background:#c94a08}button:hover:not(:disabled){background:#ad3d06}button:disabled{background:#c9b8ae}input{border-color:#dedbd7}input:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #fb923c;outline-offset:3px}.label{color:#a14d20}.secondary{background:#fff2e8;color:#9b410d}.secondary:hover:not(:disabled){background:#ffe5d1}p{color:#71717a}section{border-color:#e7e3df;box-shadow:0 3px 16px #44301c04}#status{background:#fff5ec;color:#8e410e}.scores strong{color:#c94a08}.scores div{border-color:#f3d6bf}.scores span{color:#71717a}pre{background:#faf8f5}[hidden]{display:none!important}.maintenance-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.maintenance-header>button{margin-top:16px;white-space:nowrap;font-size:13px}.access-main{max-width:460px;min-height:100svh;display:flex;flex-direction:column;justify-content:center;margin:0 auto;padding:45px 22px}.access-brand{display:flex;align-items:center;gap:11px;width:fit-content;text-decoration:none;color:#27272a;font-size:21px;font-weight:700;margin-bottom:28px}.access-brand small{display:block;font-size:11px;color:#8b8580;font-weight:400;letter-spacing:.12em;margin-top:1px}.brand-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:linear-gradient(135deg,#ffac37,#fa6d36);color:#fff;font-weight:800;font-size:18px;letter-spacing:-2px;padding-right:2px}.access-card{padding:32px;margin:0;border-radius:16px;background:white;box-shadow:0 8px 40px #7d40110a}.access-card h1{font-size:27px;margin-top:7px;letter-spacing:-.5px}.access-card>p{font-size:13px;margin-top:10px}.access-form{display:grid;grid-template-columns:1fr;gap:9px;margin-top:25px}.access-form label{font-size:13px;color:#45413d}.access-form input{font-size:14px;min-height:46px;background:#fff}.access-form button{grid-column:1;font-size:14px;margin-top:8px;min-height:46px;display:flex;justify-content:center;gap:15px;align-items:center}#access-status:empty{display:none}#access-status{font-size:12px;color:#a13d0d;margin:13px 0 0;overflow-wrap:anywhere}.access-hint{margin-top:26px;padding-top:20px;border-top:1px solid #f1eeeb;font-size:12px}.access-hint strong{font-weight:500;color:#6f635a}.access-hint p{font-size:12px;margin:5px 0 0;line-height:1.8}.access-footer{font-size:11px;text-align:center;color:#9b938d;margin:24px 0 0}.setup-note{font-size:13px;line-height:1.8;padding:15px;background:#fff6ed;border:1px solid #fed7aa;border-radius:8px;overflow-wrap:anywhere}@media(max-width:620px){.maintenance-header{display:block}.maintenance-header>button{margin-top:0}.access-main{padding:30px 18px}.access-card{padding:26px 22px}.access-card h1{font-size:25px}}
