/* VIRENIX Dalga 2 (N, O, P, Q, R) page components. Uses the tokens and base components of B_SECURITY_EXPLORER/dist/style.css,
   shared/v24.css and C_PORTFOLIO/dist/style.css (same purple-silver identity; no new logo). Mobile first: works from 320 px. */
.w2-form{display:grid;gap:4px 18px;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));align-items:start}
.w2-form label{margin:12px 0 6px}
.w2-form .w2-wide{grid-column:1/-1}
textarea.text-input{min-height:132px;resize:vertical;font:13px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre}
.w2-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:14px}
.w2-actions .button{min-height:44px;min-width:0;max-width:100%;white-space:normal;text-align:center;overflow-wrap:anywhere}
.w2-scope{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
.w2-scope span{font-size:10px;letter-spacing:1px;border:1px solid var(--line);border-radius:30px;padding:5px 10px;color:var(--muted);background:var(--surface)}
.w2-scope span.on{color:var(--green);border-color:#2c5042}
.w2-scope span.off{color:var(--amber);border-color:#59422d}
.w2-big{font-size:clamp(22px,3.4vw,32px);font-weight:600;letter-spacing:-.6px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;margin:6px 0}
.w2-raw{font:11px/1.6 ui-monospace,monospace;color:var(--muted);overflow-wrap:anywhere}
.w2-kvlist{margin:10px 0;font-size:12px}
.w2-kvlist>div{display:grid;grid-template-columns:minmax(120px,220px) 1fr;gap:6px 16px;padding:9px 0;border-bottom:1px solid #2b2535}
.w2-kvlist dt{color:#a295b0}
.w2-kvlist dd{margin:0;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.w2-kvlist dd small{display:block;color:var(--muted);font-size:10px;margin-top:2px}
.w2-state{display:inline-block;font-size:9px;letter-spacing:1px;border-radius:4px;padding:2px 6px;border:1px solid #3b3348;margin-right:6px;vertical-align:1px}
.w2-state.OK{color:var(--green);border-color:#2c5042;background:#142922}
.w2-state.NOT_SUPPORTED,.w2-state.UNKNOWN,.w2-state.MALFORMED{color:var(--amber);border-color:#59422d;background:#31271d}
.w2-checks{list-style:none;padding:0;margin:10px 0;display:grid;gap:6px}
.w2-checks li{font-size:12px}.w2-checks li.ok::before{content:"✓ ";color:var(--green)}.w2-checks li.fail::before{content:"✕ ";color:#ff8fa3}
.w2-prices{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:14px;margin:12px 0}
.w2-price{background:var(--surface2);border:1px solid var(--line);border-radius:10px;padding:16px;min-width:0}
.w2-price span{display:block;font-size:10px;letter-spacing:1.2px;color:var(--muted)}
.w2-price strong{display:block;font-size:24px;margin:6px 0;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.w2-price small{display:block;font-size:10px;color:var(--muted)}
.w2-price.stale{border-color:#59422d}.w2-price.stale strong{color:var(--amber)}
.w2-alarm{border:2px solid #ff8fa3;background:#3a1a22;color:#ffd6dd;border-radius:10px;padding:14px 16px;margin:0 0 20px;font-size:14px}
.w2-alarm strong{display:block;font-size:16px;margin-bottom:4px}
.w2-alarm.pulse{animation:w2pulse 1s ease-in-out 3}
@keyframes w2pulse{50%{box-shadow:0 0 0 6px #ff8fa355}}
.w2-alert-row td{vertical-align:middle}
.w2-inline{display:flex;flex-wrap:wrap;gap:10px;align-items:end}
.w2-inline>div{flex:1 1 140px;min-width:0}
.w2-inline label{margin-top:0}
.w2-inline .button{min-height:44px}
.w2-note{font-size:11px;color:var(--muted);margin:8px 0}
.w2-ok{color:var(--green)}.w2-warn{color:var(--amber)}.w2-bad{color:#ffb3c0}
@media(prefers-reduced-motion:reduce){.w2-alarm.pulse{animation:none}}
@media(max-width:700px){.w2-kvlist>div{grid-template-columns:1fr}.w2-big{font-size:22px}}
