:root{--serif:Georgia,"Times New Roman",ui-serif,serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--mono:var(--font-mono),ui-monospace,"SF Mono",Menlo,Consolas,monospace;--radius:12px;--ease:cubic-bezier(0.22,0.61,0.36,1);--aurora-1:#6b6fff;--aurora-2:#34c9d6;--aurora-3:#e08cd0;--bg:#f5f7fb;--panel:#ffffff;--panel-2:#f7f9fc;--sidebar:#ffffff;--ink:#1b2330;--ink-2:#55617a;--ink-3:#99a2b6;--line:#e6e9f0;--line-2:#d6dbe6;--accent:#2a3757;--accent-ink:#2a3757;--active:#2f7a52;--pending:#a9791f;--revoked:#c0403c;--edge:#c9d0dc;--aurora-op:0.20;--shadow:0 1px 2px rgba(20,30,60,.05),0 12px 30px rgba(20,30,60,.07);--shadow-lg:0 20px 60px rgba(20,30,60,.14);--node-ring-fill:#ffffff}:root[data-theme=dark]{--bg:#0a0e17;--panel:#131a29;--panel-2:#18202f;--sidebar:#0c111c;--ink:#e9edf6;--ink-2:#98a3ba;--ink-3:#5a6580;--line:#212b3f;--line-2:#2b374f;--accent:#7c78ff;--accent-ink:#aeabff;--active:#34e29c;--pending:#f3c24e;--revoked:#ff7b73;--edge:#2f3b57;--aurora-1:#7c78ff;--aurora-2:#33d6cf;--aurora-3:#e771c8;--aurora-op:0.42;--shadow:0 1px 0 rgba(255,255,255,.02),0 18px 40px rgba(0,0,0,.35);--shadow-lg:0 30px 80px rgba(0,0,0,.55);--node-ring-fill:#131a29}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;min-height:100vh}a{color:inherit;text-decoration:none}::selection{background:color-mix(in srgb,var(--accent) 30%,transparent)}.app{display:grid;grid-template-columns:244px 1fr;min-height:100vh}@media (max-width:820px){.app{grid-template-columns:1fr}.sidebar{display:none}}.sidebar{background:color-mix(in srgb,var(--sidebar) 88%,transparent);border-right:1px solid var(--line);padding:24px 18px;display:flex;flex-direction:column;gap:28px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:40px;height:40px;border-radius:11px;color:#fff;font-family:var(--mono);font-size:14px;font-weight:700;letter-spacing:.02em;display:grid;place-items:center;background:linear-gradient(145deg,var(--accent),color-mix(in srgb,var(--accent) 55%,var(--aurora-3)));box-shadow:0 0 0 1px rgba(255,255,255,.08)}.brand-name{font-family:var(--serif);font-size:18px;font-weight:500;letter-spacing:-.01em;color:var(--ink);line-height:1.1}.brand-sub{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-3);margin-top:3px}.nav{display:flex;flex-direction:column;gap:3px}.nav-item{padding:9px 12px;border-radius:8px;font-size:14px;color:var(--ink-2);font-weight:500;transition:background .16s var(--ease),color .16s var(--ease)}.nav-item:hover{background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--ink)}.nav-item.active{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent-ink);font-weight:600;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 26%,transparent)}.nav-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.side-foot{margin-top:auto;font-family:var(--mono);font-size:10.5px;color:var(--ink-3);letter-spacing:.02em}.content{display:flex;flex-direction:column;min-width:0}.topbar{height:62px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 70%,transparent);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,36px);position:-webkit-sticky;position:sticky;top:0;z-index:5}.crumb{font-family:var(--mono);font-size:12px;color:var(--ink-2);letter-spacing:.01em}.topbar-right{gap:16px}.admin-chip,.topbar-right{display:inline-flex;align-items:center}.admin-chip{gap:12px;font-size:13px;color:var(--ink-2);font-weight:500}.avatar{width:26px;height:26px;border-radius:50%;background:linear-gradient(145deg,var(--accent),var(--aurora-3));display:inline-block}.main{padding:clamp(22px,4vw,44px);max-width:1140px;width:100%}.theme-toggle{width:32px;height:32px;border-radius:8px;border:1px solid var(--line-2);background:var(--panel);color:var(--ink-2);cursor:pointer;font-size:15px;line-height:1;display:grid;place-items:center;transition:color .15s var(--ease),border-color .15s var(--ease)}.theme-toggle:hover{color:var(--accent-ink);border-color:var(--accent)}.eyebrow{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-ink);margin:0 0 10px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;padding-bottom:22px;border-bottom:1px solid var(--line);margin-bottom:26px}.page-head h1{font-family:var(--serif);font-weight:500;font-size:clamp(28px,4.5vw,42px);letter-spacing:-.01em;margin:0;color:var(--ink);text-wrap:balance}.sub{margin:10px 0 0;font-size:15.5px;max-width:60ch}.meta,.sub{color:var(--ink-2)}.meta{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-size:11.5px;white-space:nowrap}.meta .dot{width:7px;height:7px;border-radius:50%;background:var(--active);box-shadow:0 0 10px var(--active)}.stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin-bottom:28px}@media (max-width:620px){.stats{grid-template-columns:repeat(2,1fr)}}.stat{padding:18px 20px 20px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);position:relative;overflow:hidden;box-shadow:var(--shadow);transition:border-color .16s var(--ease),transform .16s var(--ease)}.stat:before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:var(--c,var(--accent));box-shadow:0 0 14px var(--c,var(--accent))}.stat:hover{border-color:var(--line-2);transform:translateY(-1px)}.stat .n{font-family:var(--mono);font-size:30px;font-weight:700;letter-spacing:-.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink);line-height:1.15}.stat .l{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--ink-2);margin-top:7px;letter-spacing:.05em;text-transform:uppercase;font-weight:600}.stat .l .d{width:8px;height:8px;border-radius:50%;background:var(--c,var(--accent));box-shadow:0 0 8px var(--c,var(--accent))}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 24px;border-bottom:1px solid var(--line);flex-wrap:wrap}.panel-head h2{font-family:var(--serif);font-size:19px;font-weight:500;margin:0;color:var(--ink)}.legend{display:flex;gap:18px;flex-wrap:wrap;font-family:var(--mono);font-size:11.5px;color:var(--ink-2)}.legend span{display:inline-flex;align-items:center;gap:7px}.legend i{width:9px;height:9px;border-radius:50%;display:inline-block;box-shadow:0 0 8px currentColor}.stage{position:relative;padding:10px}svg{display:block;width:100%;height:auto}.guide{fill:none;stroke:var(--line);stroke-width:1;opacity:.7}.edge{stroke:var(--edge);stroke-width:1;fill:none;transition:stroke .18s var(--ease),opacity .18s var(--ease),stroke-width .18s var(--ease)}.edge.s-pending{stroke:var(--pending);stroke-dasharray:4 5;opacity:.55}.edge.s-revoked{stroke:var(--revoked);stroke-dasharray:2 6;opacity:.3}.edge.hot{stroke:var(--accent);stroke-width:1.75;opacity:1}.node{cursor:pointer}.node .ring{fill:var(--node-ring-fill);stroke-width:1.75;transition:r .18s var(--ease)}.node.s-active .ring{stroke:var(--active)}.node.s-pending .ring{stroke:var(--pending)}.node.s-revoked .ring{stroke:var(--revoked);opacity:.55}.node .core{transition:r .18s var(--ease)}.node.s-active .core{fill:var(--active);filter:drop-shadow(0 0 5px var(--active))}.node.s-pending .core{fill:var(--pending);filter:drop-shadow(0 0 5px var(--pending))}.node.s-revoked .core{fill:var(--revoked);opacity:.55}.node:focus-visible .ring,.node:hover .ring{r:13}.node:focus-visible .core,.node:hover .core{r:5.5}.node:focus-visible{outline:none}.node:focus-visible .ring{stroke-width:2.5}.node .lbl{font-family:var(--mono);font-size:11px;fill:var(--ink-2);letter-spacing:-.01em}.node.s-revoked .lbl{fill:var(--ink-3);text-decoration:line-through}.node:focus-visible .lbl,.node:hover .lbl{fill:var(--ink)}.hub .ringo{fill:none;stroke:var(--accent);stroke-width:1;opacity:.35}.hub .disc{fill:var(--accent);filter:drop-shadow(0 0 14px color-mix(in srgb,var(--accent) 75%,transparent))}.hub .inner{fill:none;stroke:rgba(255,255,255,.6);stroke-width:1.25}.hub .cap{fill:var(--accent-ink);font-family:var(--mono);font-size:12px;letter-spacing:.16em}.detail{position:absolute;right:18px;top:18px;width:232px;background:var(--panel-2);border:1px solid var(--line-2);border-radius:10px;padding:16px 17px;font-size:13px;pointer-events:none;box-shadow:var(--shadow)}.detail .dh{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);margin-bottom:10px}.detail .dh,.detail .dom{font-family:var(--mono);font-weight:600}.detail .dom{font-size:15px;color:var(--accent-ink);word-break:break-all}.detail .row{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-top:9px;color:var(--ink-2);border-top:1px solid var(--line);padding-top:9px}.detail .row:first-of-type{border-top:none;padding-top:0}.detail .row>span{font-size:12px}.detail .row b{color:var(--ink);font-size:12px}.detail .row b,.pill{font-weight:600;font-family:var(--mono)}.pill{display:inline-flex;align-items:center;gap:6px;font-size:11px}.pill i{width:8px;height:8px;border-radius:50%;box-shadow:0 0 8px currentColor}.pill.active{color:var(--active)}.pill.active i{background:var(--active)}.pill.pending{color:var(--pending)}.pill.pending i{background:var(--pending)}.pill.revoked{color:var(--revoked)}.pill.revoked i{background:var(--revoked)}.reg-note{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);color:var(--ink-2);font-size:13.5px;max-width:76ch}.reg-note b{color:var(--ink);font-weight:600}.reg-note .k{color:var(--accent-ink);font-weight:600}.field{display:flex;flex-direction:column;gap:6px}.field>span{font-size:12px;font-weight:600;color:var(--ink-2)}.field input{font-family:var(--sans);font-size:14px;color:var(--ink);padding:10px 12px;border:1px solid var(--line-2);border-radius:9px;background:var(--panel-2);transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}.field input:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.field input::placeholder{color:var(--ink-3)}.btn{font-family:var(--sans);font-size:14px;font-weight:600;cursor:pointer;padding:10px 16px;border-radius:9px;border:1px solid transparent;transition:background .15s var(--ease),box-shadow .15s var(--ease),opacity .15s var(--ease)}.btn:disabled{opacity:.55;cursor:default}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 88%,#fff)}.btn-ghost{background:var(--panel-2);color:var(--ink);border-color:var(--line-2)}.btn-ghost:hover:not(:disabled){border-color:var(--accent);color:var(--accent-ink)}.btn-danger{background:transparent;color:var(--revoked);border-color:color-mix(in srgb,var(--revoked) 45%,var(--line))}.btn-danger:hover:not(:disabled){background:color-mix(in srgb,var(--revoked) 12%,transparent)}.btn-sm{padding:6px 12px;font-size:12.5px}.link-btn{background:none;border:none;color:var(--ink-3);font-size:12.5px;cursor:pointer;padding:0;font-family:var(--sans)}.link-btn:hover{color:var(--ink);text-decoration:underline}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:16px;gap:16px;margin-bottom:16px}@media (max-width:620px){.form-grid{grid-template-columns:1fr}}.issue-form,.panel-body{padding:20px 24px}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:13.5px}.table th{text-align:left;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-weight:600;padding:11px 16px;white-space:nowrap}.table td,.table th{border-bottom:1px solid var(--line)}.table td{padding:12px 16px;color:var(--ink);vertical-align:middle}.table tr:last-child td{border-bottom:none}.table tbody tr{transition:background .12s var(--ease)}.table tbody tr:hover{background:color-mix(in srgb,var(--accent) 5%,transparent)}.table td.mono{font-family:var(--mono);font-size:12.5px;color:var(--accent-ink)}.table td.dim{color:var(--ink-2)}.table td.right{text-align:right}.table td.empty{text-align:center;color:var(--ink-3);padding:28px 16px;font-style:italic}.row-actions{gap:8px;justify-content:flex-end}.row-actions,.tag{display:inline-flex}.tag{align-items:center;gap:6px;font-family:var(--mono);font-size:11.5px;font-weight:600;text-transform:capitalize}.tag i{width:8px;height:8px;border-radius:50%;box-shadow:0 0 8px currentColor}.tag-active{color:var(--active)}.tag-active i{background:var(--active)}.tag-pending{color:var(--pending)}.tag-pending i{background:var(--pending)}.tag-revoked{color:var(--revoked)}.tag-revoked i{background:var(--revoked)}.tag-issued{color:var(--ink-2)}.tag-issued i{background:var(--ink-3)}.token-box{padding:20px 24px}.token-head{font-family:var(--serif);font-size:16px;font-weight:500;color:var(--ink);margin-bottom:4px}.token-note{font-size:13px;color:var(--pending);margin:0 0 12px}.token-value{display:block;font-family:var(--mono);font-size:12px;word-break:break-all;background:var(--panel-2);border:1px solid var(--line-2);border-radius:9px;padding:12px 14px;color:var(--accent-ink);margin-bottom:14px}.setup-block{white-space:pre-wrap;word-break:break-word;-webkit-user-select:all;-moz-user-select:all;user-select:all}.token-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px;position:relative}.login-toggle{position:absolute;top:20px;right:20px}.login-card{width:100%;max-width:388px;background:var(--panel);border:1px solid var(--line-2);border-radius:18px;padding:34px 32px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow-lg)}.login-mark{width:46px;height:46px}.login-title{font-family:var(--serif);font-weight:500;font-size:28px;letter-spacing:-.01em;color:var(--ink);margin:8px 0 0}.login-sub{font-size:13.5px;color:var(--ink-2);margin:0 0 6px}.login-error{background:color-mix(in srgb,var(--revoked) 12%,transparent);color:var(--revoked);font-size:13px;padding:9px 12px;border-radius:9px;border:1px solid color-mix(in srgb,var(--revoked) 32%,transparent)}.field textarea{font-family:var(--mono);font-size:12px;color:var(--ink);padding:10px 12px;border:1px solid var(--line-2);border-radius:9px;background:var(--panel-2);resize:vertical;line-height:1.5;transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}.field textarea:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.field textarea::placeholder{color:var(--ink-3)}.gg-ok{background:color-mix(in srgb,var(--active) 12%,transparent);color:var(--active);font-size:13px;padding:11px 13px;border-radius:9px;border:1px solid color-mix(in srgb,var(--active) 30%,transparent)}.login-link{font-size:12.5px;color:var(--ink-3);text-align:center;margin-top:4px}.login-link:hover{color:var(--accent-ink)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.list-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.list-tools input,.list-tools select{font-family:var(--sans);font-size:13px;color:var(--ink);padding:7px 10px;border:1px solid var(--line-2);border-radius:8px;background:var(--panel-2)}.list-tools input{min-width:0;width:220px;max-width:100%}.pager{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 24px;border-top:1px solid var(--line);flex-wrap:wrap;font-size:12.5px}.pager-links{display:inline-flex;gap:8px}.domain-warn{display:block;margin-top:4px;font-size:11.5px;font-weight:600}.domain-warn.mismatch{color:var(--revoked)}.domain-warn.unknown{color:var(--pending)}.domain-warn.match{color:var(--active)}.detail-grid{display:grid;grid-template-columns:max-content 1fr;grid-gap:10px 24px;gap:10px 24px;padding:20px 24px;font-size:14px}.detail-grid dt{color:var(--ink-2);font-size:12.5px;font-weight:600}.detail-grid dd{margin:0;overflow-wrap:anywhere}.customer-message{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12.5px;line-height:1.55;max-height:420px;overflow-y:auto}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/886030b0b59bc5a7-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/0aa834ed78bf6d07-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/67957d42bae0796d-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/f911b923c6adde36-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/939c4f875ee75fbb-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/bb3ef058b751a6ad-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_4dc837{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_4dc837{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}