:root{font-family:"Segoe UI","Microsoft YaHei",sans-serif;color:#173448;background:#f1f5f7;font-size:16px;color-scheme:light}*{box-sizing:border-box}body{margin:0}header{height:76px;background:#0b2538;color:white;display:flex;align-items:center;gap:32px;padding:0 5vw;border-bottom:4px solid #58dbc1}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#58dbc1;font-size:24px;font-weight:800}.brand span{color:white;font-size:20px}.section{border-left:1px solid #456073;padding-left:28px;font-size:15px}header button{margin-left:auto}main{max-width:1440px;margin:auto;padding:40px 5vw}.card{background:white;border:1px solid #d6e1e8;border-radius:12px;padding:28px;box-shadow:0 3px 12px #17344805}h1{font-size:30px;letter-spacing:-.5px;margin:10px 0 16px}h2{font-size:19px;margin:0 0 24px}p{line-height:1.7;color:#566f7f}.eyebrow{font-size:14px;font-weight:700;color:#0e8875;letter-spacing:1px}.login{max-width:470px;margin:40px auto}.login p{margin-bottom:28px}label{display:block;font-size:14px;font-weight:600;margin:0 0 18px}input{display:block;width:100%;font:inherit;font-weight:400;padding:12px 13px;border:1px solid #b7c9d6;border-radius:6px;margin-top:8px;background:#fff;color:#173448}input:focus{outline:2px solid #0d9883;outline-offset:2px}button{font:inherit;font-size:14px;padding:11px 18px;border:1px solid #bbccd7;background:#fff;border-radius:6px;color:#173448;cursor:pointer;font-weight:600}button:hover{background:#eaf3f6}button:disabled{opacity:.5;cursor:wait}.primary{background:#087d6b;color:#fff;border-color:#087d6b}.primary:hover{background:#056656}.login .primary,.create .primary{width:100%;margin-top:8px}.page-title{display:flex;align-items:center;justify-content:space-between;margin:0 0 18px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:26px}.stats>div{border-left:3px solid #0e8875;background:white;padding:18px 24px;border-radius:4px}.stats span{display:block;font-size:14px;color:#566f7f}.stats strong{display:block;font-size:30px;margin-top:8px}.columns{display:grid;grid-template-columns:310px minmax(0,1fr);gap:24px;align-items:start}.hint{font-size:14px;margin:4px 0 18px}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.search-label{width:220px;margin:0 0 20px}.search-label input{margin:0}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px;text-align:left}th{color:#617686;font-weight:600;background:#f6f9fb;padding:13px 10px}td{padding:18px 10px;border-bottom:1px solid #e5edf2;vertical-align:top}td strong{display:block;overflow-wrap:anywhere}td small{display:block;color:#566f7f;font-size:13px;margin-top:7px;white-space:nowrap}td code{font-size:13px;display:block;max-width:150px;overflow-wrap:anywhere;line-height:1.6}.badge{display:inline-block;font-size:13px;border-radius:20px;padding:4px 10px;white-space:nowrap;background:#e2f5ed;color:#066655}.badge.expired,.badge.disabled{color:#9d3434;background:#feecec}.row-actions{display:flex;flex-wrap:wrap;gap:6px;min-width:135px}.row-actions button{font-size:13px;padding:6px 9px}.empty{padding:22px;text-align:center}.security{margin-top:24px}.security form{display:flex;gap:18px;align-items:end}.security label{margin:0;max-width:420px;flex:1}.security button{height:44px}#message{min-height:26px;color:#087d6b;font-size:15px}#message.error{color:#b52e2e}dialog{border:1px solid #b7c9d6;border-radius:12px;padding:28px;width:min(440px,90vw);color:#173448}dialog::backdrop{background:#0b253877}.check{display:flex;gap:12px;align-items:center}.check input{width:18px;height:18px;margin:0}.actions{display:flex;justify-content:end;gap:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}@media(max-width:1050px){.columns{grid-template-columns:1fr}.create form{max-width:600px}.stats{gap:10px}.users{padding:18px}}@media(max-width:600px){header{gap:18px;padding:0 20px}.section{display:none}main{padding:24px 16px}.card{padding:22px}.stats>div{padding:15px 12px}.stats strong{font-size:26px}.card-heading{display:block}.search-label{width:100%}.security form{display:block}.security button{margin-top:16px}.page-title h1{font-size:25px}td{padding:13px 8px}}
