/* Calculator, service assessment and printable forms: shared studio surfaces. */
main .calc-card, main .fieldset, main .choice, main .pill-popular,
main .urgent-panel, main .privacy-note, main .triage-question,
main .triage-result, main .triage-contact, main .index-status,
main .table-wrap, main .bias-note, main .final-cta {
  border-radius: 0;
  border-color: var(--line-strong, rgba(233,232,225,.35));
  background: #151718;
  box-shadow: none;
}
main .triage-shell { border-color: var(--line-strong, rgba(233,232,225,.35)); }
main .urgent-panel, main .triage-result { border-left: 3px solid #e9e8e1; }
main .triage-question:focus-within { border-color: #e9e8e1; }
main .choice { padding: .85rem; cursor: pointer; }
main .choice:has(input:checked) { background: #222526; border-color: #e9e8e1; }
main .choice .price { font-family: var(--font-mono, monospace); }
main .pill-popular { font: 10px/1.5 var(--font-mono, monospace); text-transform: uppercase; }
main .pill-popular .dot { border-radius: 0; width: 5px; height: 5px; background: #e9e8e1; }
main .calc-wrap { gap: 1.5rem; }
main .calc-card { padding: 1.5rem; min-width: 0; }
main .summary { top: 135px; }
main .summary-total { font-family: var(--font-mono, monospace); font-weight: 400; }
main .calc-card select, main .calc-card input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]), main .calc-card textarea {
  border-radius: 0; border: 1px solid var(--line-strong, rgba(233,232,225,.35));
  background: #101112; color: #e9e8e1; min-height: 44px; font: 14px/1.5 Arial, sans-serif;
}
main .calc-card select { color-scheme: dark; }
main .calc-card input, main .triage-question input { accent-color: #e9e8e1; }
main .calc-card select:focus-visible, main .calc-card input:focus-visible, main .calc-card textarea:focus-visible {
  outline: 2px solid #e9e8e1; outline-offset: 3px; border-color: #e9e8e1;
}
main .btn-secondary { border-radius: 0; background: transparent; border-color: var(--line-strong); color: #e9e8e1; font: 11px/1.5 var(--font-mono, monospace); text-transform: uppercase; }
main .btn-secondary:hover { background: #e9e8e1; color: #101112; }
main .triage-option span { border-radius: 0; background: #101112; min-height: 44px; }
main .triage-option input:checked + span { background: #e9e8e1; color: #101112; border-color: #e9e8e1; }
main .triage-option input:focus-visible + span { outline-color: #e9e8e1; }
main .triage-result[data-level="urgent"] { border-left-color: #e9e8e1; }
main .triage-error { color: #efb5ac; }
main .classification-table th { background: #202324; }
main .data-flow span:not(.flow-arrow) { border-radius: 0; background: #101112; }
body > .skip-link { border-radius: 0; }
main .withdrawal-form { max-width: 760px; }
.withdrawal-form .form-group { margin: 1.2rem 0; }
.withdrawal-form label { display: block; margin-bottom: .5rem; font: 11px/1.6 var(--font-mono, monospace); }
.withdrawal-form input, .withdrawal-form textarea {
  display: block; width: 100%; border: 1px solid var(--line-strong, rgba(233,232,225,.35));
  border-radius: 0; padding: .8rem; min-height: 44px; background: #101112; color: #e9e8e1; font: 16px/1.5 Arial, sans-serif;
}
.withdrawal-form textarea { resize: vertical; }
@media (max-width: 980px) { main .summary { top: 0; } }
@media (max-width: 600px) { main .calc-card { padding: 1rem; } main .choice .price { float: none; display: block; } }
@media print {
  body:has(.withdrawal-form) { background: #fff !important; color: #000 !important; padding: 0 !important; font-size: 11pt; }
  body:has(.withdrawal-form)::after { display: none !important; }
  body:has(.withdrawal-form) .site-header, body:has(.withdrawal-form) footer,
  body:has(.withdrawal-form) .cookie-banner,
  body:has(.withdrawal-form) .skip-link, .withdrawal-form button, .withdrawal-form .hint { display: none !important; }
  body:has(.withdrawal-form) main { max-width: none; margin: 0; padding: 0; }
  body:has(.withdrawal-form) main section { margin: 0 0 12pt; padding: 0; border: 0; }
  body:has(.withdrawal-form) main p, body:has(.withdrawal-form) main strong,
  body:has(.withdrawal-form) main a, body:has(.withdrawal-form) main h1,
  body:has(.withdrawal-form) main h2, body:has(.withdrawal-form) main h3,
  body:has(.withdrawal-form) main .badge { color: #000 !important; }
  body:has(.withdrawal-form) main h1 { font-size: 24pt; }
  .withdrawal-form .form-group { margin: 8pt 0; break-inside: avoid; }
  .withdrawal-form label { color: #000; font-size: 9pt; }
  .withdrawal-form input, .withdrawal-form textarea { color: #000 !important; background: #fff !important; border: 1px solid #777 !important; padding: 5pt; font-size: 10pt; }
  .withdrawal-form textarea { min-height: 58pt; overflow: visible; resize: none; }
}
