:root{color-scheme:dark;--bg:#07111f;--card:#101d2d;--card2:#0a1724;--line:#20354a;--muted:#8ca1b5;--text:#f3f8fc;--accent:#22b8a7;--accent2:#0c766d;--danger:#ff7b89}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 110% -10%,#0e5557 0,transparent 38%),var(--bg);color:var(--text);font-family:"Microsoft YaHei UI",system-ui,sans-serif}.hidden{display:none!important}button,input{font:inherit}button{cursor:pointer}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(100%,420px);background:rgba(16,29,45,.95);border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:0 28px 90px #0008}.brand{display:flex;align-items:center;gap:10px;color:#c4fff6;font-weight:800}.brand img{width:40px;height:40px}.login-card h1{font-size:34px;margin:28px 0 8px}.login-card p,.intro p{color:var(--muted);line-height:1.7}.login-card label,.card label{display:grid;gap:8px;color:#bcd0df;font-size:13px}.login-card input,.card input{width:100%;border:1px solid var(--line);background:#081522;color:#fff;border-radius:13px;padding:14px;outline:none}.login-card input:focus,.card input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #22b8a722}.primary,.secondary,.small,.chips button,.status button,nav button{border:0;color:var(--text)}.primary{background:linear-gradient(135deg,var(--accent),var(--accent2));border-radius:13px;padding:14px 18px;font-weight:800}.wide{width:100%;margin-top:18px}.app{max-width:720px;margin:auto;padding:calc(18px + env(safe-area-inset-top)) 16px calc(94px + env(safe-area-inset-bottom))}header,.title-row,.status{display:flex;align-items:center;justify-content:space-between}header{padding:8px 2px 17px}.eyebrow{font-size:11px;letter-spacing:.14em;color:#71d6ca;font-weight:800}h1,h2,h3{margin:4px 0 0}header h1{font-size:24px}.head-actions{display:flex;gap:7px}.small,.secondary{background:#14283a;border:1px solid #29445b;border-radius:10px;padding:9px 12px;font-size:12px;font-weight:700}.ghost{color:#9eb1c2}.edition-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.edition-switch button{border:1px solid var(--line);background:#0b1826;color:#7f95a8;border-radius:14px;padding:11px 12px;text-align:left;display:grid;gap:2px}.edition-switch button b{font-size:13px}.edition-switch button span{font-size:11px}.edition-switch button.active{border-color:#289c91;background:linear-gradient(135deg,#12443f,#102738);color:#d9fff9;box-shadow:0 0 0 2px #22b8a716}.status{background:#0d1a28;border:1px solid var(--line);border-radius:15px;padding:12px 14px;margin-bottom:15px;font-size:13px}.status i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#73869a;margin-right:8px}.status i.ok{background:#49da91;box-shadow:0 0 10px #49da9199}.status i.bad{background:#ff7b89}.status button{background:none;color:#75dcd0}.page{display:none}.page.active{display:block}.intro{padding:20px 3px 18px}.intro h2{font-size:26px}.card{background:rgba(16,29,45,.94);border:1px solid var(--line);border-radius:20px;padding:17px;margin-bottom:15px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.note-wrap{margin-top:13px}.chips{display:flex;gap:8px;overflow:auto;margin-top:13px;padding-bottom:2px}.chips button{white-space:nowrap;background:#15293b;color:#91a7ba;border-radius:10px;padding:8px 12px;font-size:12px}.chips button.active{background:#145d58;color:#dcfff9}.title-row{margin:13px 2px 15px}.code-list,.list{display:grid;gap:9px}.code-item,.item{background:var(--card2);border:1px solid #1b3447;border-radius:14px;padding:12px}.code-line{display:flex;align-items:center;gap:8px}.code-line code{font:12px Consolas,monospace;word-break:break-all;flex:1}.copy,.danger{border:0;border-radius:8px;padding:7px 10px;font-size:11px;font-weight:700}.copy{background:#123f43;color:#aafff3}.danger{background:#48242d;color:#ffabb3}.search{margin-bottom:3px}.filters{margin-top:10px}.summary{color:#71879b;font-size:12px;margin:15px 2px 10px}.item-head{display:flex;gap:8px;align-items:center}.item-head code{font:12px Consolas,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.tag{border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800}.tag.active{background:#143f39;color:#75edbc}.tag.unused{background:#193b4e;color:#83dcff}.tag.expired{background:#443723;color:#ffd38a}.tag.revoked{background:#49242d;color:#ffabb3}.meta{display:flex;justify-content:space-between;color:#72879a;font-size:11px;margin-top:10px}.note{color:#8da3b7;font-size:11px;margin-top:8px;word-break:break-all}.actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.empty{text-align:center;color:#74899d;padding:34px 10px}.modal{position:fixed;z-index:30;inset:0;background:#02070dcc;display:grid;place-items:center;padding:22px}.modal-card{width:min(100%,410px);background:#111f2f;border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:0 24px 80px #000}.modal-card p{color:#b9c9d7;line-height:1.75}.modal-card ol{color:#b9c9d7;line-height:1.9;padding-left:22px}nav{position:fixed;z-index:10;left:50%;bottom:0;transform:translateX(-50%);width:min(720px,100%);display:grid;grid-template-columns:1fr 1fr;background:#091521ee;border-top:1px solid #20354a;backdrop-filter:blur(16px);padding:9px 12px calc(9px + env(safe-area-inset-bottom))}nav button{background:none;color:#71869a;display:grid;place-items:center;gap:3px;font-size:11px}nav button b{font-size:20px}nav button.active{color:#79e3d7}#toast{position:fixed;z-index:50;left:50%;top:calc(18px + env(safe-area-inset-top));transform:translate(-50%,-130%);opacity:0;background:#e9fff9;color:#07312c;border-radius:12px;padding:11px 16px;font-weight:800;font-size:13px;box-shadow:0 12px 36px #0008;transition:.25s;max-width:90%;text-align:center}#toast.show{transform:translate(-50%,0);opacity:1}#toast.error{background:#ffe8eb;color:#701923}@media(max-width:360px){.grid{grid-template-columns:1fr}header h1{font-size:21px}}