.tq-app { --tq-ink:#233653; --tq-accent:#315789; --tq-gold:#bacee9; color:var(--tq-ink); background:#edf3fb; border:1px solid #8da7cc; border-radius:16px; padding:22px; margin:0 8px 18px 0; font:14px/1.55 Arial,Helvetica,sans-serif; text-align:left; box-shadow:0 8px 24px #10253e24 }
.tq-app *, .tq-app *:before, .tq-app *:after { box-sizing:border-box }
.tq-app p,.tq-app td,.tq-app a,.tq-app label,.tq-app input,.tq-app button { font:inherit; color:inherit }
.tq-app p { margin:10px 0 }
.tq-app a { color:#294e7d }
.tq-app h1 { margin:8px 0 12px; font-size:29px; line-height:1.15; color:#213b61 }
.tq-app h2 { margin:12px 0 8px; font-size:21px; line-height:1.25; color:#213b61 }
.tq-hero { padding-bottom:14px; border-bottom:2px solid #a5bada }
.tq-eyebrow { font-size:11px; letter-spacing:1.5px; font-weight:bold; color:#466b9a }
.tq-notice { background:#d8e5f6; border-left:4px solid #6685b6; padding:12px 14px; margin:16px 0; border-radius:0 8px 8px 0 }
.tq-search { display:block; margin-top:20px; font-weight:bold!important }
.tq-search input { display:block; width:100%; padding:11px 13px; margin-top:6px; border:1px solid #9baece; border-radius:8px; background:#fafdff }
.tq-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:14px 0 }
.tq-card { background:#fafdff; border:1px solid #b9cbe3; border-radius:12px; padding:16px; display:flex; flex-direction:column; min-width:0; transition:box-shadow .15s,transform .15s }
.tq-card:hover { box-shadow:0 5px 14px #16345a20; transform:translateY(-2px) }
.tq-card h2 { font-size:18px; overflow-wrap:anywhere }
.tq-card p { overflow-wrap:anywhere }
.tq-badge { display:inline-block; align-self:flex-start; padding:3px 8px; border-radius:20px; font-size:11px; font-weight:bold; background:#d7e3f6; color:#213b61 }
.tq-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin-top:16px }
.tq-card .tq-actions { margin-top:auto; padding-top:14px }
.tq-inline { display:inline-block; margin:0 }
.tq-app .tq-button { display:inline-block; cursor:pointer; border:1px solid #2a4770; border-radius:8px; background:#35588a; color:#f8fcff; padding:10px 13px; font-weight:bold; text-decoration:none; line-height:1.3 }
.tq-app .tq-button:hover { background:#24446f; color:white }
.tq-app .tq-secondary { background:#e1ebf8; color:#294e7d; border-color:#92abd0 }
.tq-app .tq-secondary:hover { background:#cbdcf1; color:#1f3d66 }
.tq-app .tq-button:disabled { cursor:wait; opacity:.65 }
.tq-link { font-size:12px!important }
.tq-back { display:inline-block; margin-bottom:8px }
.tq-mode { background:#d7e3f6; display:inline-block; padding:4px 9px; border-radius:5px; font-weight:bold!important }
.tq-progress-label { display:flex; justify-content:space-between; margin-top:16px }
.tq-app progress { display:block; width:100%; height:10px; margin:8px 0 24px; border:0; border-radius:10px; overflow:hidden; accent-color:#456ba5; background:#d2dff0 }
.tq-app progress::-webkit-progress-bar { background:#d2dff0 }
.tq-app progress::-webkit-progress-value { background:#456ba5 }
.tq-app progress::-moz-progress-bar { background:#456ba5 }
.tq-app fieldset { border:0; padding:0; margin:0; min-width:0 }
.tq-app legend { font-size:21px; font-weight:bold; line-height:1.4; padding:0; width:100%; overflow-wrap:anywhere }
.tq-help { font-size:12px!important; color:#506680!important }
.tq-options { display:grid; gap:9px; margin-top:15px }
.tq-option { display:flex; align-items:center; gap:12px; padding:13px; border:1px solid #b2c4dd; border-radius:9px; background:#fafdff; cursor:pointer; transition:background .15s,border-color .15s }
.tq-option:hover { border-color:#6284b3; background:#e8f0fc }
.tq-option.is-selected { border-color:#35588a; box-shadow:0 0 0 1px #35588a; background:#d1e1f8 }
.tq-option input { width:18px; height:18px; flex-shrink:0; accent-color:#35588a; margin:0 }
.tq-skip { background:#e4eaf3; font-style:italic!important }
.tq-app :focus-visible { outline:3px solid #426ba4; outline-offset:3px }
.tq-result { text-align:center; padding:24px 10px; margin-top:18px; background:#d8e5f6; border-radius:12px }
.tq-result strong { display:block; font-size:56px; line-height:1.3; color:#294c7d }
.tq-result small { font-size:24px; font-weight:normal }
.tq-correction { border:1px solid #afc3df; border-radius:9px; background:#fafdff; padding:13px; margin:12px 0 }
.tq-correction summary { cursor:pointer; font-weight:bold; font-size:15px }
.tq-correction ul { margin:6px 0; padding-left:22px }
.tq-table-wrap { overflow-x:auto; margin:18px 0 }
.tq-table { width:100%; border-collapse:collapse; background:#fafdff; color:#233653 }
.tq-app .tq-table td, .tq-app .tq-table td * { color:#233653 }
.tq-app .tq-table th { background:#35588a; color:#ffffff; text-align:left }
.tq-table td,.tq-table th { padding:10px; border-bottom:1px solid #c5d4e9 }
.tq-table .tq-me td { background:#d1e2fa; font-weight:bold }
.tq-app [hidden] { display:none!important }
@media (max-width:600px) { .tq-grid { grid-template-columns:1fr } .tq-app { padding:15px } }
@media (prefers-reduced-motion:reduce) { .tq-app * { transition:none!important } }
