:root{--paper: oklch(.985 .008 78);--paper-2: oklch(.965 .012 78);--paper-3: oklch(.945 .014 78);--card: oklch(.998 .004 78);--rule: oklch(.86 .014 78);--rule-strong: oklch(.74 .018 78);--ink: oklch(.2 .04 248);--ink-2: oklch(.36 .035 248);--ink-3: oklch(.54 .025 248);--ink-4: oklch(.68 .018 248);--navy: oklch(.28 .075 248);--navy-2: oklch(.22 .07 248);--navy-deep: oklch(.16 .06 248);--red: oklch(.5 .19 26);--red-2: oklch(.42 .18 26);--gold: oklch(.72 .13 78);--gold-deep: oklch(.58 .12 78);--ok: oklch(.45 .12 152);--ok-bg: oklch(.95 .04 152);--warn: oklch(.58 .13 70);--warn-bg: oklch(.95 .04 78);--bad: oklch(.48 .18 26);--bad-bg: oklch(.94 .04 26);--serif: "Source Serif 4", "Source Serif Pro", Georgia, "Times New Roman", serif;--sans: "Public Sans", -apple-system, "Segoe UI", system-ui, sans-serif;--mono: "JetBrains Mono", "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--pad-x: 2rem;--pad-y: 1.75rem;--row-h: 3rem;--shadow-card: 0 1px 0 oklch(.86 .014 78), 0 1px 2px -1px oklch(.2 .04 248 / .06);--shadow-pop: 0 12px 40px -16px oklch(.2 .04 248 / .18), 0 2px 6px -2px oklch(.2 .04 248 / .1);--radius: 4px;--radius-lg: 6px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--sans);font-size:14.5px;line-height:1.5;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button{font:inherit;cursor:pointer;border:0;background:none;color:inherit;padding:0}input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}table{border-collapse:collapse}h1,h2,h3,h4{font-family:var(--serif);font-weight:500;letter-spacing:-.012em;margin:0;color:var(--ink)}h1{font-size:2.25rem;line-height:1.15;letter-spacing:-.02em}h2{font-size:1.75rem;line-height:1.2}h3{font-size:1.25rem;line-height:1.3;font-weight:600}h4{font-size:1rem;line-height:1.4;font-weight:600}.eyebrow{font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.serif{font-family:var(--serif)}.mono{font-family:var(--mono)}.muted{color:var(--ink-3)}.shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.shell>main{background:var(--paper);min-width:0}.page{max-width:1180px;margin:0 auto;padding:var(--pad-y) var(--pad-x)}.page-narrow{max-width:760px;margin:0 auto;padding:var(--pad-y) var(--pad-x)}.page-header{display:flex;justify-content:space-between;align-items:flex-end;gap:1.5rem;padding-bottom:1.25rem;margin-bottom:1.75rem;border-bottom:1px solid var(--rule)}.page-header h1{font-size:1.875rem}.page-header .crumb{font-family:var(--sans);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-bottom:.4rem}.page-header .meta{font-size:13px;color:var(--ink-3);margin-top:6px}.sidebar{background:var(--paper-2);border-right:1px solid var(--rule);display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.sidebar-mast{padding:1.25rem 1.25rem 1.1rem;border-bottom:1px solid var(--rule);display:flex;align-items:center;gap:.75rem}.sidebar-mast .seal{width:36px;height:36px;flex-shrink:0}.sidebar-mast .titles{line-height:1.15}.sidebar-mast .org{font-family:var(--serif);font-weight:600;font-size:13px;color:var(--ink)}.sidebar-mast .sub{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-top:1px}.sidebar-nav{flex:1;overflow-y:auto;padding:.75rem .6rem}.nav-section{margin-top:.75rem}.nav-section:first-child{margin-top:0}.nav-section-label{font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);padding:.5rem .75rem .4rem}.nav-item{display:flex;align-items:center;gap:.65rem;padding:.5rem .75rem;border-radius:var(--radius);font-size:13.5px;color:var(--ink-2);cursor:pointer;transition:background .12s,color .12s;text-decoration:none}.nav-item:hover{background:#f4eee4;color:var(--ink)}.nav-item.active,.nav-item[aria-current=page]{background:var(--card);color:var(--ink);font-weight:500;box-shadow:inset 2px 0 0 var(--red)}.nav-glyph{width:14px;height:14px;opacity:.7;flex-shrink:0;display:inline-flex;align-items:center}.sidebar-foot{padding:.85rem 1rem 1.1rem;border-top:1px solid var(--rule);font-size:11.5px;color:var(--ink-3)}.sidebar-foot button{width:100%;text-align:left;padding:.5rem .75rem;border-radius:var(--radius);color:var(--ink-2);font-size:13px;display:flex;align-items:center;gap:.5rem}.sidebar-foot button:hover{background:#f4eee4;color:var(--ink)}.sidebar-foot .session{padding:0 .25rem .5rem}.sidebar-foot .session b{display:block;color:var(--ink-2);font-weight:500;font-size:12px}.nav-section-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);padding:.5rem .75rem .4rem;background:none;border:none;cursor:pointer;transition:color .12s}.nav-section-toggle:hover{color:var(--ink-2)}.public-mast{background:var(--navy-deep);color:#e8e4dd}.public-mast .strip{border-bottom:1px solid oklch(.3 .05 248);padding:.4rem 0}.public-mast .strip-inner{max-width:1180px;margin:0 auto;padding:0 var(--pad-x);display:flex;justify-content:space-between;align-items:center;font-size:11.5px;letter-spacing:.04em;color:#bfb6aa}.public-mast .head{max-width:1180px;margin:0 auto;padding:1.5rem var(--pad-x);display:flex;align-items:center;gap:1.25rem}.public-mast .head .seal{width:64px;height:64px;flex-shrink:0}.public-mast .head .titles h1{color:var(--paper);font-size:1.5rem;font-weight:500}.public-mast .head .titles .pt{color:#d5ccc0;font-size:13px;font-style:italic;margin-top:2px;font-family:var(--serif)}.public-mast .head .titles .tet{color:#a59d91;font-size:11px;letter-spacing:.08em;text-transform:uppercase;margin-top:4px}.public-mast .head .right{margin-left:auto}.public-foot{background:var(--paper-2);color:var(--ink-3);margin-top:0;padding:2.5rem 0 1.25rem;font-size:12.5px;border-top:1px solid var(--rule)}.public-foot-inner{max-width:1180px;margin:0 auto;padding:0 var(--pad-x)}.public-foot .seal-block{display:flex;gap:.85rem;align-items:flex-start}.public-foot .seal-block .seal{width:44px;height:44px;flex-shrink:0}.public-foot .seal-block b{color:var(--ink);font-family:var(--serif);font-size:14px;font-weight:500;display:block;line-height:1.3}.public-foot .legal{max-width:1180px;margin:2rem auto 0;padding:1rem var(--pad-x) 0;border-top:1px solid var(--rule);font-size:11px;color:var(--ink-3)}.hero{background:var(--navy-deep);color:var(--paper);padding:3.5rem 0 4rem;position:relative;overflow:hidden;border-bottom:4px solid var(--red)}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(135deg,transparent 0,transparent 28px,oklch(.3 .06 248 / .35) 28px,oklch(.3 .06 248 / .35) 29px);opacity:.5;pointer-events:none}.hero-inner{max-width:1180px;margin:0 auto;padding:0 var(--pad-x);position:relative;display:grid;grid-template-columns:1.4fr 1fr;gap:3rem;align-items:center}.hero h1{color:var(--paper);font-size:2.6rem;line-height:1.12;max-width:22ch;font-weight:400}.hero .pt-h1{color:#cbc3b6;font-family:var(--serif);font-style:italic;font-size:1.25rem;margin-top:.6rem}.hero .lead{color:#d5ccc0;font-size:15px;max-width:56ch;margin-top:1.5rem;line-height:1.55}.hero-card{background:var(--paper);color:var(--ink);border:1px solid oklch(.3 .06 248);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:0 24px 60px -20px #00040b80;box-shadow:0 24px 60px -20px oklch(.1 .05 248 / .5)}.hero-card h3{font-size:1.05rem;margin-bottom:.4rem}.card{background:var(--card);border:1px solid var(--rule);border-radius:var(--radius-lg)}.card-pad{padding:1.5rem}.card-head{padding:1rem 1.5rem;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center;gap:1rem}.card-head h3{font-family:var(--serif);font-weight:500;font-size:1.1rem}.tile{background:var(--card);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:1.1rem 1.25rem;position:relative;overflow:hidden}.tile-rule{position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--rule)}.tile-label{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-weight:600}.tile-value{font-family:var(--serif);font-size:2.25rem;line-height:1.05;font-weight:500;color:var(--ink);margin-top:.5rem;letter-spacing:-.025em}.tile-foot{font-size:11.5px;color:var(--ink-3);margin-top:.4rem}.tile.is-good .tile-rule{background:var(--ok)}.tile.is-bad .tile-rule{background:var(--red)}.tile.is-warn .tile-rule{background:var(--gold-deep)}.tile.is-info .tile-rule{background:var(--navy)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.55rem 1rem;border-radius:var(--radius);font-size:13.5px;font-weight:500;letter-spacing:.005em;border:1px solid transparent;transition:background .12s,border-color .12s,color .12s;white-space:nowrap;text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--navy);color:var(--paper)}.btn-primary:hover:not(:disabled){background:var(--navy-2)}.btn-accent{background:var(--red);color:var(--paper)}.btn-accent:hover:not(:disabled){background:var(--red-2)}.btn-ghost{background:var(--card);border-color:var(--rule-strong);color:var(--ink)}.btn-ghost:hover:not(:disabled){background:var(--paper-2);border-color:var(--ink-3)}.btn-soft{background:var(--paper-2);color:var(--ink-2);border-color:var(--rule)}.btn-soft:hover:not(:disabled){background:var(--paper-3);color:var(--ink)}.btn-link{color:var(--navy);padding:0;background:none;border:none}.btn-link:hover{color:var(--red);text-decoration:underline;text-underline-offset:3px}.btn-lg{padding:.75rem 1.4rem;font-size:14.5px}.btn-sm{padding:.35rem .7rem;font-size:12.5px}.field{display:block;margin-bottom:.75rem}.field-label{display:block;font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3);font-weight:600;margin-bottom:.35rem}.field-label .req{color:var(--red);margin-left:.15rem}.field-label .opt{color:var(--ink-4);font-weight:400;text-transform:none;letter-spacing:0;margin-left:.4rem}.field-hint{font-size:11.5px;color:var(--ink-3);margin-top:.3rem}.input,.select,.textarea{width:100%;padding:.55rem .7rem;background:var(--card);border:1px solid var(--rule-strong);border-radius:var(--radius);font-size:13.5px;color:var(--ink);transition:border-color .12s,box-shadow .12s}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px #002a4c1f}.input::placeholder,.textarea::placeholder{color:var(--ink-4)}.textarea{resize:vertical;min-height:90px;font-family:var(--sans)}.textarea.code{font-family:var(--mono);font-size:12.5px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}@media(max-width:800px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.tbl{width:100%;font-size:13.5px}.tbl thead th{text-align:left;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);padding:.85rem 1.5rem;background:var(--paper-3);border-bottom:1px solid var(--rule);font-weight:600}.tbl tbody td{padding:.95rem 1.5rem;border-bottom:1px solid var(--rule);vertical-align:middle;color:var(--ink)}.tbl tbody tr:last-child td{border-bottom:0}.tbl tbody tr:hover td{background:var(--paper-2)}.tbl .actions{text-align:right}.tbl .actions a,.tbl .actions button{color:var(--navy);font-weight:500;font-size:12.5px;margin-left:1rem;cursor:pointer;background:none;border:none;text-decoration:none}.tbl .actions a.danger,.tbl .actions button.danger{color:var(--red)}.tbl .actions a:hover,.tbl .actions button:hover{text-decoration:underline;text-underline-offset:3px}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.18rem .55rem;font-size:11px;letter-spacing:.04em;font-weight:600;border-radius:999px;text-transform:uppercase}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.85}.badge.b-active{background:var(--ok-bg);color:var(--ok)}.badge.b-revoked{background:var(--bad-bg);color:var(--bad)}.badge.b-suspended{background:var(--warn-bg);color:var(--warn)}.badge.b-expired{background:#ffe5d8;background:oklch(.94 .04 50);color:#9b4805}.badge.b-loading{background:var(--paper-3);color:var(--ink-3)}.badge.b-coo{background:#dceeff;color:var(--navy)}.badge.b-vc{background:#fee8c6;color:var(--gold-deep)}.tag{display:inline-block;padding:.15rem .5rem;border-radius:2px;background:var(--paper-3);border:1px solid var(--rule);color:var(--ink-2);font-size:11.5px}.banner{border-radius:var(--radius-lg);padding:1.25rem 1.5rem;display:flex;gap:1rem;align-items:center;border:1px solid}.banner.b-good{background:var(--ok-bg);border-color:#a3d2ae;color:var(--ok)}.banner.b-bad{background:var(--bad-bg);border-color:#fbb7af;color:var(--bad)}.banner.b-warn{background:var(--warn-bg);border-color:#e0c69f;color:var(--warn)}.stamp{width:130px;height:130px;display:inline-flex;align-items:center;justify-content:center;filter:drop-shadow(0 1px 0 oklch(.985 .008 78))}.stamp svg{width:100%;height:100%}.result-head{display:flex;gap:1rem;align-items:center;padding:1rem 1.1rem;border-radius:var(--radius-lg);border:1px solid var(--rule)}.result-head.result-good{background:#e2fde8;border-color:#a7ddb4}.result-head.result-bad{background:#fff1ef;background:oklch(.97 .025 25);border-color:#f9bdb7}.result-head.result-warn{background:#fff5e7;background:oklch(.975 .04 78);border-color:#f2c681}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--card);overflow:hidden}.step{padding:1rem 1.25rem;border-right:1px solid var(--rule);display:flex;align-items:center;gap:.85rem}.step:last-child{border-right:0}.step-num{width:26px;height:26px;border:1px solid var(--rule-strong);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:13px;color:var(--ink-3);flex-shrink:0}.step-label{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);font-weight:600}.step-sub{font-family:var(--serif);font-size:14px;color:var(--ink);margin-top:1px}.step.is-active{background:#e8f3ff}.step.is-active .step-num{background:var(--navy);color:var(--paper);border-color:var(--navy)}.step.is-active .step-label{color:var(--navy)}.step.is-done .step-num{background:var(--ink);color:var(--paper);border-color:var(--ink);font-size:0}.step.is-done .step-num:before{content:"✓";font-size:12px}.drop{border:1.5px dashed var(--rule-strong);border-radius:var(--radius-lg);padding:3.5rem 1.5rem;text-align:center;background:var(--card);transition:border-color .15s,background .15s}.drop.over{border-color:var(--navy);background:#e8f3ff}.drop-glyph{width:44px;height:44px;margin:0 auto .85rem;border:1.5px solid var(--rule-strong);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--ink-3)}.drop-title{font-family:var(--serif);font-size:1.05rem;color:var(--ink)}.drop-sub{font-size:12.5px;color:var(--ink-3);margin-top:.25rem}.drop .or{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-4);margin:.85rem 0}.login-page{min-height:100vh;background:var(--paper);display:grid;grid-template-columns:1.05fr 1fr}.login-left{background:var(--navy-deep);color:var(--paper);padding:3rem 3.5rem;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.login-left:after{content:"";position:absolute;top:-100px;right:-120px;width:480px;height:480px;background:radial-gradient(circle,oklch(.32 .08 248 / .6) 0%,transparent 60%);pointer-events:none}.login-left .seal{width:84px;height:84px}.login-left h1{color:var(--paper);font-size:2.4rem;font-weight:400;line-height:1.15;max-width:26ch}.login-left .pt{color:#d5ccc0;font-style:italic;margin-top:.75rem;font-family:var(--serif);font-size:1.1rem}.login-left .meta{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:#aca397}.login-right{display:flex;align-items:center;justify-content:center;padding:3rem 2rem}.login-right .form-card{width:100%;max-width:380px}.login-right .crumb{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:.4rem}.login-right h2{font-size:1.65rem;margin-bottom:.3rem}.login-right p.lead{color:var(--ink-3);font-size:13.5px;margin:0 0 2rem}@media(max-width:900px){.login-page{grid-template-columns:1fr}.login-left{padding:2rem}.shell{grid-template-columns:1fr}}.cert{background:var(--card);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:2.25rem 2.5rem 2.5rem;position:relative;overflow:hidden}.cert:before{content:"";position:absolute;top:14px;right:14px;bottom:14px;left:14px;border:1px solid var(--rule);border-radius:var(--radius);pointer-events:none}.cert .cert-mast{display:flex;align-items:center;gap:1.25rem;padding-bottom:1.25rem;border-bottom:2px solid var(--ink)}.cert .cert-mast .seal{width:64px;height:64px;flex-shrink:0}.cert .cert-mast h2{font-size:1.2rem;font-weight:500;line-height:1.15}.cert .cert-mast .right{margin-left:auto;text-align:right;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.cert .cert-title{text-align:center;padding:1.5rem 0 .5rem}.cert .cert-title .eyebrow{color:var(--red);letter-spacing:.3em}.cert .cert-title h1{font-family:var(--serif);font-size:1.85rem;font-weight:500;margin-top:.4rem}.cert .cert-pair{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem 2rem;margin-top:1.75rem}.cert .cert-block .lbl{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);font-weight:600}.cert .cert-block .val{margin-top:.4rem;font-family:var(--serif);font-size:14.5px;color:var(--ink);line-height:1.4}.cert .cert-foot{display:grid;grid-template-columns:1fr auto 1fr;gap:2rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--rule);align-items:end}.cert .cert-foot .sig{border-top:1px solid var(--ink);padding-top:.5rem}.cert .cert-foot .name{font-family:var(--serif);font-size:14px;color:var(--ink)}.cert .cert-foot .role{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-top:2px}.hr-soft{height:1px;background:var(--rule);border:0;margin:1.5rem 0}.kv{display:grid;grid-template-columns:180px 1fr;gap:.5rem 1.25rem;font-size:13.5px}.kv dt{color:var(--ink-3);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;padding-top:4px;font-weight:600}.kv dd{margin:0;color:var(--ink);word-break:break-all}.tabs{display:inline-flex;border-bottom:1px solid var(--rule);margin-bottom:1.25rem;gap:.25rem}.tabs button{padding:.65rem 1rem;font-size:13px;color:var(--ink-3);position:relative;font-weight:500}.tabs button.active,.tabs button[aria-pressed=true]{color:var(--ink)}.tabs button.active:after,.tabs button[aria-pressed=true]:after{content:"";position:absolute;left:.5rem;right:.5rem;bottom:-1px;height:2px;background:var(--red)}.toggle-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;background:var(--paper-2);border:1px solid var(--rule);border-radius:var(--radius-lg)}.toggle-row .ts{font-size:13.5px;color:var(--ink)}.toggle-row .ts b{font-weight:600}.toggle-row .ts span{display:block;color:var(--ink-3);font-size:12px;margin-top:2px}.switch{width:38px;height:22px;background:var(--rule-strong);border-radius:99px;position:relative;transition:background .15s;flex-shrink:0}.switch:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background:var(--paper);border-radius:50%;transition:left .15s}.switch.on{background:var(--navy)}.switch.on:after{left:18px}@keyframes spin{to{transform:rotate(360deg)}}.spinner{display:inline-block;width:36px;height:36px;border:3px solid var(--rule);border-top-color:var(--navy);border-radius:50%;animation:spin .8s linear infinite}.progress-bar{height:4px;background:var(--paper-3);border-radius:2px;overflow:hidden;margin:1.5rem 0}.progress-bar-fill{height:100%;background:var(--navy);transition:width .4s}.action-option{padding:1rem;border:1px solid var(--rule);border-radius:var(--radius-lg);cursor:pointer;background:var(--card);transition:border-color .12s,background .12s}.action-option.selected{border-color:var(--navy);background:#e8f3ff}.action-option-title{font-family:var(--serif);font-size:14px;font-weight:500}.action-option-desc{font-size:11.5px;color:var(--ink-3);margin-top:4px;line-height:1.5}
