:root{font-family:Inter,"Microsoft YaHei",system-ui,sans-serif;color:#172337;background:#f4f6fa;font-size:14px}*{box-sizing:border-box}body{margin:0}a{color:#2459bd;text-decoration:none}a:hover{text-decoration:underline}header{background:#122641;color:#fff;padding:20px 32px;display:flex;align-items:center;gap:28px}header strong{font-size:20px}header a{color:#d8e5fa}header .spacer{flex:1}main{max-width:1440px;margin:28px auto;padding:0 24px}h1{font-size:25px;margin-bottom:8px}h2{font-size:18px}p,.muted{color:#64748b;line-height:1.7}.card{background:white;border:1px solid #e0e6ee;border-radius:10px;padding:22px;margin:18px 0;overflow:auto;box-shadow:0 2px 4px #17233704}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}.metric strong{display:block;font-size:27px;margin:8px 0;color:#153d72}.metric{margin:0}.row{display:flex;flex-wrap:wrap;gap:12px;align-items:end}label{display:block;font-size:13px;color:#526176}input,select,textarea{font:inherit;border:1px solid #cbd5e1;border-radius:5px;padding:10px;margin:6px 0;width:100%;background:#fff;color:#172337}input[type=checkbox]{width:auto}button,.button{display:inline-block;border:0;border-radius:5px;background:#225bc4;color:white;padding:10px 16px;font:inherit;cursor:pointer;white-space:nowrap}.secondary{background:#e8eef8;color:#23456f}.danger{background:#b63838}table{border-collapse:collapse;width:100%;white-space:nowrap}th{text-align:left;color:#65758a;background:#f7f9fc;font-weight:500}td,th{padding:13px 12px;border-bottom:1px solid #e7ecf3}td form input,td form select{min-width:100px}.badge{background:#e8effa;color:#234c87;border-radius:20px;padding:4px 10px}.notice{padding:15px 18px;background:#e8f4ef;border:1px solid #bee1d0;border-radius:6px;margin:16px 0}.error{background:#fff0ee;border-color:#efc7c0;color:#9c3426}.auth{max-width:480px;margin:55px auto}.auth .card{padding:30px}.mono{font-family:Consolas,monospace;word-break:break-all}.rates{display:grid;grid-template-columns:repeat(6,minmax(80px,1fr));gap:12px}.pagination{display:flex;justify-content:space-between;margin:20px 0}details{margin:12px 0}summary{cursor:pointer}.small{font-size:12px}.nowrap{white-space:nowrap}@media(max-width:800px){header{padding:16px;gap:12px;flex-wrap:wrap}main{padding:0 12px}.rates{grid-template-columns:repeat(3,1fr)}.row>*{flex:1 1 150px}}
