/* ============================================================================
   PQCAT — post-quantum readiness scanner. Layers on system.css (slate/indigo
   accent, paper/ink, IBM Plex). Adds the radar-scan signature figure, the
   risk-classification data colors (red/amber/green — data encoding, not
   decoration, kept desaturated to stay austere), framework badges + editions.
   ============================================================================ */

/* risk classification (cryptographic asset zones) */
:root{ --risk-red:#B14A3E; --risk-amber:#B5862F; --risk-green:#3C7A57; }
[data-theme="dark"]{ --risk-red:#D08378; --risk-amber:#D4A85A; --risk-green:#5FA98A; }

/* ---- radar-scan signature figure ---- */
.pq-fig{margin:0 auto}
.pq-fig svg{display:block;width:100%;max-width:400px;height:auto;margin-inline:auto}
.pq-ring{stroke:var(--rule);stroke-width:1;fill:none}
.pq-axis{stroke:var(--rule);stroke-width:1}
.pq-hub{stroke:var(--ink);stroke-width:1.5;fill:var(--paper)}
.pq-wedge{fill:var(--accent);opacity:.10}
.pq-sweep{stroke:var(--accent);stroke-width:1.5}
.pq-sweep-wrap,.pq-wedge-wrap{transform-box:view-box;transform-origin:200px 200px}
.pq-dot--red{fill:var(--risk-red)} .pq-dot--amber{fill:var(--risk-amber)} .pq-dot--green{fill:var(--risk-green)}
.pq-t{font-family:var(--mono);font-size:9px;letter-spacing:.05em;fill:var(--muted)}
@media(prefers-reduced-motion:no-preference){
  .pq-sweep-wrap,.pq-wedge-wrap{animation:pqSpin 7s linear infinite}
}
@keyframes pqSpin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

/* ---- compliance framework badges ---- */
.frameworks{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}
.fw-badge{font-family:var(--mono);font-size:.72rem;letter-spacing:.04em;color:var(--ink);border:1px solid var(--rule);padding:.34rem .7rem;white-space:nowrap}

/* ---- editions ---- */
.editions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1.25rem;margin-top:1.5rem;align-items:start}
.edition{border:1px solid var(--rule);padding:1.25rem 1.35rem;display:flex;flex-direction:column;gap:.5rem}
.edition--pro{border-color:var(--accent)}
.edition-badge{font-family:var(--mono);font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.edition h3{font-family:var(--serif);font-size:1.5rem;font-weight:500;line-height:1.1}
.edition .tagline{font-family:var(--mono);font-size:.68rem;letter-spacing:.04em;color:var(--muted)}
.edition ul{list-style:none;margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.4rem}
.edition li{font-size:.86rem;color:var(--muted);line-height:1.4;padding-left:1rem;position:relative}
.edition li::before{content:"\2014";position:absolute;left:0;color:var(--accent)}

/* ---- risk legend ---- */
.risk-legend{display:flex;gap:1.2rem;flex-wrap:wrap;font-family:var(--mono);font-size:.66rem;letter-spacing:.04em;color:var(--muted);margin-top:.75rem}
.risk-legend span{display:inline-flex;align-items:center;gap:.4rem}
.risk-legend i{width:9px;height:9px;display:inline-block}
.risk-legend .r{background:var(--risk-red)} .risk-legend .a{background:var(--risk-amber)} .risk-legend .g{background:var(--risk-green)}
