/* SIGPT.AI — RISC-V firmware generation shared styles */
.fw-art{border:1px solid var(--line-2);background:radial-gradient(ellipse 70% 90% at 50% 45%,#14161a,#08090b);margin:0}
.fw-art svg{display:block;width:100%;height:auto}
.fw-wide{padding:28px 22px 16px;overflow-x:auto}
.fw-wide svg{min-width:900px}
.fw-flow{animation:fwFlow 1.3s linear infinite}
@keyframes fwFlow{to{stroke-dashoffset:-18}}
.fw-blink{animation:fwBlink 1.1s steps(1) infinite}
@keyframes fwBlink{50%{opacity:0}}
@media (prefers-reduced-motion:reduce){.fw-flow,.fw-blink{animation:none}}

.fw-pts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-2);border:1px solid var(--line-2);margin-top:1px}
.fw-pts>div{background:var(--ink);padding:22px 22px 24px}
.fw-pts .n{font-size:13px;font-weight:600;color:var(--copper-l);letter-spacing:.04em}
.fw-pts b{display:block;font-size:17px;font-weight:600;letter-spacing:-.01em;margin:8px 0 6px}
.fw-pts p{font-size:14.5px;line-height:1.55;color:var(--muted);text-wrap:pretty}
@media (max-width:1020px){.fw-pts{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.fw-pts{grid-template-columns:1fr}}

.fw-2{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:center}
.fw-2 .fw-art{padding:20px 18px}
.fw-2 h3{font-size:clamp(24px,2.4vw,34px);font-weight:600;letter-spacing:-.025em;line-height:1.1;margin:12px 0 14px}
.fw-2 h3 em{font-style:normal;color:var(--copper-l)}
.fw-2>div>p{color:var(--muted);font-size:16px;line-height:1.6}
@media (max-width:1020px){.fw-2{grid-template-columns:1fr;gap:32px}}

.fw-list{list-style:none;margin-top:20px;border-top:1px solid var(--line-2)}
.fw-list li{display:grid;grid-template-columns:150px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);font-size:15px;line-height:1.45;color:#d4d6da}
.fw-list li b{font-size:13px;font-weight:600;color:var(--copper-l);letter-spacing:.03em;padding-top:1px}
@media (max-width:560px){.fw-list li{grid-template-columns:1fr;gap:4px}}

/* implicit firmware: standard vs from prompt */
.fw-def{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-2);border:1px solid var(--line-2)}
.fw-def>div{background:var(--ink);padding:26px 28px 28px}
.fw-def .h{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--copper-l);margin-bottom:6px}
.fw-def .h i{width:10px;height:10px;flex:none}
.fw-def .std .h i{border:1.5px solid var(--silver)}
.fw-def .spec .h i{background:var(--copper-l)}
.fw-def h3{font-size:21px;font-weight:600;letter-spacing:-.015em;margin-bottom:14px}
.fw-def ul{list-style:none;border-top:1px solid var(--line)}
.fw-def li{padding:10px 0;border-bottom:1px solid var(--line);font-size:14.5px;line-height:1.45;color:#d4d6da}
.fw-def li small{display:block;color:var(--muted);font-size:13px;margin-top:2px}
.fw-def li q{color:var(--copper-l)}
.fw-def .spec{background:linear-gradient(135deg,rgba(217,149,101,.06),transparent 60%),var(--ink)}
@media (max-width:860px){.fw-def{grid-template-columns:1fr}}
.fw-tip{margin-top:22px;padding:18px 22px;border:1px dashed var(--line-2);font-size:14.5px;color:var(--muted);line-height:1.55}
.fw-tip q{color:#e6e7ea}
