/* FireCipher Interactive — shared simulator styles */
.fc-panel{position:relative;background:rgba(19,17,26,.85);border:1px solid rgba(199,125,255,.25);border-radius:22px;padding:clamp(18px,3vw,32px);box-shadow:0 40px 120px -30px rgba(123,31,162,.6);max-width:100%}
.fc-sim{max-width:100%}
.fc-sim svg{display:block;width:100%;height:auto}
.fci-noscript{color:#A9A2B8;font-family:'IBM Plex Mono',monospace;font-size:14px;margin:0}
.fci-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;align-items:start}
.fci-col{display:flex;flex-direction:column;gap:22px}
.fci-label{font-family:'IBM Plex Mono',monospace;font-size:13px;color:#A9A2B8}
.fci-chips{display:flex;flex-wrap:wrap;gap:8px}
.fc-chip{min-height:44px;padding:0 16px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.03);color:#C9C2D8;font-family:'IBM Plex Mono',monospace;font-size:13px;cursor:pointer;transition:border-color .2s,color .2s,background .2s,box-shadow .2s}
.fc-chip:hover{border-color:rgba(199,125,255,.5);color:#fff}
.fc-chip.on{background:#7B1FA2;border-color:#C77DFF;color:#fff;box-shadow:0 0 24px -4px rgba(199,125,255,.8)}
.fc-chip.cut{background:rgba(127,29,29,.5);border-color:#F87171;color:#FECACA}
.fci-msg{border-radius:16px;padding:18px 20px;display:flex;flex-direction:column;gap:8px;transition:background .4s,border-color .4s}
.fci-msg-title{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:600;color:#fff}
.fci-msg-title .ic{font-family:'IBM Plex Mono',monospace}
.fci-msg-text{font-size:15px;line-height:1.55;color:#C9C2D8}
.fci-net{font-family:'IBM Plex Mono',monospace;font-size:13px}
.fci-legend{display:flex;gap:18px;flex-wrap:wrap;font-family:'IBM Plex Mono',monospace;font-size:12px;color:#8C85A0;padding:6px 4px 0}
.fci-legend i{display:inline-block;width:18px;height:3px;vertical-align:middle;margin-right:6px;border-radius:2px}
.fci-actions{display:flex;gap:10px;flex-wrap:wrap}
.fci-btn{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 22px;border-radius:999px;font-weight:600;font-size:15px;font-family:inherit;cursor:pointer;border:0;text-decoration:none;transition:transform .25s,box-shadow .25s,background .25s}
.fci-btn-p{background:#7B1FA2;color:#fff;box-shadow:0 0 0 1px rgba(199,125,255,.4),0 10px 40px -10px rgba(199,125,255,.7)}
.fci-btn-p:hover{color:#fff;transform:translateY(-2px)}
.fci-btn-g{color:#EEEBF4;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.03)}
.fci-btn-g:hover{color:#fff;border-color:rgba(199,125,255,.5)}
.fci-note{margin:0;font-family:'IBM Plex Mono',monospace;font-size:12px;color:#6F6883}
.fci-head{display:flex;justify-content:space-between;gap:12px;font-family:'IBM Plex Mono',monospace;font-size:12px;color:#8C85A0;padding:2px 4px 14px;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:14px}
.fci-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#4ADE80;box-shadow:0 0 12px #4ADE80}
.fc-sim .fc-line{transition:stroke .3s}
.fc-sim .fc-node-c{transition:fill .4s,stroke .4s}
body.motion .fc-sim .fc-flow{animation:fc-flowmove 1.2s linear infinite}
body.motion .fc-sim .fc-ndot{animation:fc-pulse 2s ease-in-out infinite}
body.motion .fc-sim .fc-ndot.off{animation:fc-pulse .6s ease-in-out infinite}
@keyframes fc-flowmove{to{stroke-dashoffset:-20}}
@keyframes fc-pulse{0%,100%{opacity:1}50%{opacity:.35}}
@media (prefers-reduced-motion:reduce){.fc-sim *{animation:none!important}}
/* backup sims */
.fci-range{width:100%;accent-color:#C77DFF;height:28px;cursor:pointer}
.fci-timeline{position:relative;height:56px;border-radius:12px;background:#13111A;border:1px solid rgba(255,255,255,.08);overflow:hidden;margin-top:6px}
.fci-tick{position:absolute;top:12px;bottom:12px;width:2px;background:#C77DFF;border-radius:1px;box-shadow:0 0 6px #C77DFF}
.fci-lost{position:absolute;top:0;bottom:0;right:0;background:repeating-linear-gradient(135deg,rgba(248,113,113,.28) 0,rgba(248,113,113,.28) 6px,rgba(248,113,113,.12) 6px,rgba(248,113,113,.12) 12px);border-left:2px solid #F87171;transition:width .5s cubic-bezier(.2,.8,.2,1)}
.fci-store{border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:10px;transition:background .5s,border-color .5s,box-shadow .5s}
.fci-btn-danger{background:#7F1D1D;color:#fff;box-shadow:0 0 0 1px rgba(248,113,113,.5),0 10px 40px -12px rgba(248,113,113,.7)}
.fci-btn-danger:hover{background:#991B1B;transform:translateY(-2px)}
.fc-sim .three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:820px){.fci-grid{grid-template-columns:minmax(0,1fr);gap:28px}.fc-sim .three{grid-template-columns:minmax(0,1fr)}}
