:root{--bg:#f6f7f9;--surface:#ffffff;--text:#1a1d21;--muted:#6b7280;--border:#e2e5e9;--accent:#2563eb;--accent-hover:#1d4ed8;--danger:#dc2626;--ok:#16a34a;--warn:#d97706}@media (prefers-color-scheme:dark){:root{--bg:#111418;--surface:#1a1f26;--text:#e8eaed;--muted:#9aa2ad;--border:#2a313b;--accent:#3b82f6;--accent-hover:#60a5fa;--danger:#ef4444;--ok:#22c55e;--warn:#f59e0b}}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Apple SD Gothic Neo,Noto Sans KR,sans-serif;line-height:1.5}main{max-width:960px;margin:0 auto;padding:2rem 1.25rem 4rem}.auth-card{max-width:380px;margin:12vh auto 0;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:2rem}.auth-card h1{font-size:1.35rem;margin-bottom:1.25rem}form.stack{gap:.75rem}form.stack,label{display:flex;flex-direction:column}label{font-size:.85rem;color:var(--muted);gap:.3rem}input,select{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:.55rem .75rem;font-size:.95rem}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:-1px}button{cursor:pointer;border:none;border-radius:8px;padding:.55rem 1rem;font-size:.9rem;font-weight:600;background:var(--accent);color:#fff}button:hover{background:var(--accent-hover)}button:disabled{opacity:.5;cursor:default}button.ghost{background:transparent;color:var(--text);border:1px solid var(--border)}button.danger{background:transparent;color:var(--danger);border:1px solid var(--danger)}.msg{font-size:.85rem;padding:.6rem .8rem;border-radius:8px;background:var(--bg);border:1px solid var(--border)}.msg.error{color:var(--danger);border-color:var(--danger)}.msg.ok{color:var(--ok);border-color:var(--ok)}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.75rem}.topbar h1{font-size:1.25rem}.topbar .who{font-size:.85rem;color:var(--muted);margin-right:.75rem}section.panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.25rem;margin-bottom:1.5rem}section.panel h2{font-size:1rem;margin-bottom:1rem}.issue-form{display:flex;gap:.75rem;align-items:flex-end;flex-wrap:wrap}.issue-form label{flex:0 0 auto}.token-box{margin-top:1rem;padding:.75rem;background:var(--bg);border:1px dashed var(--accent);border-radius:8px;font-size:.8rem}.token-box code{display:block;word-break:break-all;margin:.5rem 0;font-size:.75rem}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.85rem}td,th{text-align:left;padding:.55rem .6rem;border-bottom:1px solid var(--border);white-space:nowrap}th{color:var(--muted);font-size:.78rem}.badge,th{font-weight:600}.badge{display:inline-block;padding:.1rem .5rem;border-radius:999px;font-size:.72rem}.badge.active{color:var(--ok);border:1px solid var(--ok)}.badge.revoked{color:var(--danger);border:1px solid var(--danger)}.badge.superseded{color:var(--warn);border:1px solid var(--warn)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem}.muted{color:var(--muted)}.actions{display:flex;gap:.4rem}.actions button{padding:.3rem .7rem;font-size:.78rem}.footnote{font-size:.78rem;color:var(--muted);margin-top:.75rem}a{color:var(--accent)}.duration-inputs{display:flex;gap:.4rem;align-items:center}.duration-inputs input{width:4.2rem}main.wide{max-width:1200px}.topbar h1 a{color:inherit;text-decoration:none}.navlink{font-size:.85rem;margin-right:.75rem;color:var(--accent);text-decoration:none}.navlink:hover{text-decoration:underline}.badge.warn{color:var(--warn);border:1px solid var(--warn)}a.badge{text-decoration:none}ol.steps{margin:0 0 .5rem 1.25rem;display:grid;grid-gap:.35rem;gap:.35rem;font-size:.9rem}.meter-cell{display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap}.meter{display:inline-block;width:64px;height:6px;border-radius:3px;background:var(--border);overflow:hidden}.meter-fill{display:block;height:100%;background:var(--ok)}.meter-fill.high{background:var(--warn)}.meter-fill.full{background:var(--danger)}section.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:1rem;gap:1rem;margin-bottom:1.5rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1rem 1.25rem}.card h3{font-size:.8rem;font-weight:600;color:var(--muted);margin-bottom:.35rem}.card .big{font-size:1.75rem;font-weight:700;line-height:1.2}.card .big.bad{color:var(--danger)}ul.kv{list-style:none;margin-top:.5rem;font-size:.85rem}ul.kv li{display:flex;justify-content:space-between;gap:1rem}.spark{display:flex;align-items:flex-end;gap:2px;height:36px;margin-top:.6rem}.spark span{flex:1 1;min-height:2px;background:var(--accent);border-radius:1px;opacity:.8}.search-form{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:1rem}.search-form input{flex:1 1 280px}dl.facts{display:grid;grid-template-columns:max-content 1fr;grid-gap:.4rem 1.25rem;gap:.4rem 1.25rem;font-size:.9rem}dl.facts dt{color:var(--muted)}.error-text{color:var(--danger);font-size:.8rem}label.inline{display:inline-flex;flex-direction:row;margin:0;align-items:center;gap:.35rem;font-size:.85rem}.nowrap,td.email,td.nowrap{white-space:nowrap}td.email{max-width:240px;overflow:hidden;text-overflow:ellipsis}