#sq-app { color: #0F2447; min-width: 0; }
#sq-app [hidden] { display: none !important; }
#sq-app .card { border-radius: 14px; min-width: 0; }
#sq-app h1, #sq-app h2, #sq-plan { overflow-wrap: anywhere; }
#sq-app .sq-steps { padding-left: 24px; }
#sq-app .sq-steps li { margin-bottom: 12px; }
#sq-app label, #sq-app .sq-label { display: block; font-weight: 700; margin: 0; }
#sq-app .sq-start-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; margin-top: 8px; max-width: 600px; }
#sq-app .sq-facts, #sq-app .sq-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
#sq-app .sq-facts dt { font-size: 14px; color: #52627A; }
#sq-app .sq-facts dd { margin: 4px 0 0; font-weight: 700; overflow-wrap: anywhere; }
#sq-app .sq-fields { margin-bottom: 24px; }
#sq-app .sq-field { min-width: 0; }
#sq-app .sq-hint { font-size: 14px; color: #52627A; margin: 6px 0 10px; }
#sq-app .sq-money { position: relative; }
#sq-app .sq-money > span { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); pointer-events: none; }
#sq-app .sq-money input { padding-left: 32px; }
#sq-app input { min-width: 0; font-size: 16px; }
#sq-app .sq-csr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
#sq-app .sq-csr button { border: 1px solid #C5CFDD; border-radius: 8px; min-height: 48px; padding: 10px 4px; background: #fff; color: #0F2447; font: inherit; font-weight: 700; cursor: pointer; }
#sq-app .sq-csr button[aria-checked="true"] { background: #EAF2FC; border: 2px solid #1F54AC; color: #1F54AC; }
#sq-app .sq-csr button:disabled { cursor: default; opacity: .65; }
#sq-app button:focus-visible, #sq-app a:focus-visible, #sq-app .table-scroll:focus-visible { outline: 2px solid #2A6BD6; outline-offset: 3px; }
#sq-app h2[tabindex="-1"]:focus { outline: none; }
#sq-app .card > h2:first-child, #sq-app .card > h1:first-child { margin-top: 0; }
#sq-app .sq-error { color: #0F2447; font-weight: 600; }
#sq-app .sq-instructions { padding-left: 24px; }
#sq-app .sq-instructions li { margin-bottom: 8px; }
#sq-app .sq-field-error { margin: 8px 0 0; }
#sq-app .sq-error:empty { margin: 0; }
#sq-app .table-scroll { max-width: 100%; overflow-x: auto; }
#sq-app table { min-width: 440px; }
#sq-app th, #sq-app td { padding: 12px; text-align: left; vertical-align: top; }
#sq-app #sq-result table { min-width: 580px; }
#sq-app #sq-verdict { font-size: clamp(28px, 5vw, 40px); margin-bottom: 8px; }
#sq-app .sq-pass { color: #067647; }
#sq-app .sq-retry { color: #0F2447; }
#sq-app #sq-score { font-size: 24px; font-weight: 700; margin-top: 0; }
#sq-app .sq-mark { display: inline-block; position: relative; width: 22px; height: 22px; }
#sq-app .sq-right::after { content: ''; position: absolute; left: 7px; top: 2px; width: 7px; height: 14px; border: solid #067647; border-width: 0 3px 3px 0; transform: rotate(45deg); }
#sq-app .sq-wrong::before, #sq-app .sq-wrong::after { content: ''; position: absolute; left: 10px; top: 2px; width: 3px; height: 19px; background: #0F2447; transform: rotate(45deg); }
#sq-app .sq-wrong::after { transform: rotate(-45deg); }
@media (max-width: 600px) {
  #sq-app .sq-fields, #sq-app .sq-start-row { grid-template-columns: minmax(0, 1fr); }
  #sq-app .sq-facts { gap: 16px; }
  #sq-app .btn { width: 100%; text-align: center; }
  #sq-app .card { padding: 16px; }
  #sq-app table, #sq-app #sq-result table { min-width: 0; width: 100%; font-size: 14px; }
  #sq-app th, #sq-app td { padding: 8px 6px; }
}
