/* Test Builder uses the site's Ultra/Geist font and shared answer glow. */
.tb-shell{max-width:1040px;margin:auto;padding:48px 24px 72px;color: var(--bb-text,var(--theme-component-ink-1));font:500 17px/1.65 Geist,sans-serif}.tb-shell h1,.tb-shell h2{font-family:Ultra,serif;font-weight:400;font-synthesis:none;line-height:1.25;overflow-wrap:anywhere}.tb-shell h1{font-size:clamp(30px,4.5vw,48px);margin:12px 0 20px}.tb-shell h2{font-size:25px}.tb-intro{max-width:810px}.tb-intro p{font-size:18.9px;color: var(--bb-text-dim,var(--theme-component-muted-1))}.tb-kicker{font:500 14px/1.5 'JetBrains Mono',monospace;text-transform:uppercase;color: var(--bb-kelly,var(--theme-component-primary-1));letter-spacing:.1em}.tb-shell button,.tb-shell select,.tb-shell input{font:700 17px/1.5 Geist,sans-serif}.tb-shell button,.tb-shell select,.tb-shell input[type=number]{border: 1px solid var(--bb-border,var(--theme-component-border-11));border-radius: 9px;background: var(--bb-panel-bg,var(--theme-component-surface-42));color: inherit;padding:12px 16px;min-height:48px;max-width:100%}.tb-shell button{cursor:pointer}.tb-shell button:hover{border-color: var(--theme-component-primary-1)}.tb-shell :focus-visible{outline: 3px solid var(--theme-component-primary-72);outline-offset: 3px}.tb-presets{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:28px 0 20px}.tb-presets button{text-align:left;border-color: var(--theme-component-primary-73);padding:20px}.tb-presets span{display:block;font-size:15px;font-weight:500;color: var(--bb-text-dim,var(--theme-component-muted-1));margin-top:7px}.tb-plan{padding:16px;border-left: 3px solid var(--theme-component-primary-1);background: var(--bb-panel-bg,var(--theme-component-surface-42));margin-bottom:24px}.tb-plan a,.tb-shell a{color: var(--bb-kelly,var(--theme-component-primary-74))}.tb-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.tb-grid>label{display:flex;flex-direction:column;gap:8px}.tb-grid .tb-timer{flex-direction:row;align-items:center;flex-wrap:wrap;align-self:end;min-height:48px}.tb-shell input[type=checkbox]{width:20px;height:20px;accent-color: var(--theme-component-primary-1);flex:none}.tb-pro{font-size:14px;font-weight:700;border: 1px solid var(--theme-component-muted-12);border-radius: 4px;padding:0 6px;color: var(--bb-text,var(--theme-component-ink-33))}.tb-filters{margin:28px 0;padding:18px;border: 1px solid var(--bb-border,var(--theme-component-border-11));border-radius: 10px}.tb-filters summary{cursor:pointer;font-weight:700}.tb-filters p,.tb-note{font-size:15px;color: var(--bb-text-dim,var(--theme-component-muted-1))}.tb-domain{border-top: 1px solid var(--bb-border,var(--theme-component-border-11));margin-top:20px;padding-top:14px}.tb-domain label{display:flex;align-items:flex-start;gap:12px;margin:12px 0;font-size:15px}.tb-domain>label{font-size:17px;font-weight:700}.tb-domain details{margin-left:32px}.tb-domain small{font-size:15px}.tb-shell .tb-primary{background: var(--theme-component-primary-1);color: var(--theme-component-on-primary-7);min-width:200px}.tb-shell [hidden]{display:none!important}.tb-shell :disabled{opacity:.6;cursor:not-allowed}.tb-runbar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;border-bottom: 1px solid var(--bb-border,var(--theme-component-border-11));padding-bottom:20px;margin-bottom:24px}.tb-runbar h2{width:100%;margin:0}.tb-runbar strong{font:700 20px 'JetBrains Mono',monospace}.tb-question{background: var(--bb-panel-bg,var(--theme-component-surface-43));border: 1px solid var(--bb-border,var(--theme-component-border-11));border-radius: 12px;padding:24px;margin:24px 0}.tb-question h3{font:700 18px/1.65 Geist,sans-serif;margin:14px 0 20px}.tb-meta{font-size:14px;color: var(--bb-text-dim,var(--theme-component-muted-1))}.tb-options{display:grid;gap:12px}.tb-options button{font-weight:500;text-align:left;width:100%;background: transparent}.tb-options button[aria-pressed=true]{outline: 2px solid var(--theme-component-info-14);border-color: var(--theme-component-info-14)}.tb-options button.is-correct{border-color: var(--theme-component-primary-1);background: var(--theme-component-primary-75)}.tb-options button.is-wrong{border-color: var(--theme-component-error-1);background: var(--theme-component-error-20)}.tb-breakdown{overflow-wrap:anywhere;font-size:17px;line-height:1.75}.tb-feedback{margin-top:22px;border-top: 1px solid var(--bb-border,var(--theme-component-border-11));padding-top:20px}.tb-feedback summary{font-weight:700;cursor:pointer}.tb-feedback p{font-size:17px}.tb-score{border: 1px solid var(--theme-component-primary-73);border-radius: 12px;padding:24px;margin-top:24px}.tb-score table{width:100%;border-collapse: collapse}.tb-score th,.tb-score td{text-align:left;padding:10px 8px;border-bottom: 1px solid var(--bb-border,var(--theme-component-border-11));font-size:15px}.tb-score h2{margin-top:0}.tb-score button{margin:12px 12px 0 0}.tb-score .tb-percent{font-size:36px;color: var(--bb-kelly,var(--theme-component-primary-74));font-weight:700}.tb-shell [role=status]{min-height:28px}.tb-shell #tbStatus:empty{display:none}@media(max-width:700px){.tb-shell{padding:28px 16px 48px}.tb-grid,.tb-presets{grid-template-columns:1fr}.tb-question{padding:18px}.tb-domain details{margin-left:12px}.tb-shell h1{font-size:30px}.tb-runbar button{flex:1 1 140px}}
/* The hub has fixed navigation. Its menu already carries the weekly points link. */
body:has(#testBuilder) .nav-inner>.bb-points-chip{display:none}
.tb-shell{margin-top:80px}

/* Keep native popup options readable independently of the page root scale. */
.tb-shell select.bb-field, .tb-shell select option, .tb-shell input.bb-field {font-family:Geist,sans-serif;font-size:17px;font-weight:500;min-height:48px;}
.tb-shell select.bb-field {width:100%;padding:12px 40px 12px 14px;}
.tb-shell .tb-setup-message {margin:16px 0;color: var(--bb-text,var(--theme-component-ink-1));font-size:17px;}
.tb-setup-message:empty {display:none;}
.tb-shell #tbRetry {margin:0 12px 12px 0;}
.tb-shell .tb-domain label,.tb-shell .tb-filters summary {min-height:44px;}

/* Keep the score heading visible below fixed navigation when submitting. */
#tbReport{scroll-margin-top:160px}

/* BB-icon bullets for explanations (Brett 10/18) */
.tb-breakdown p{margin:0 0 6px}.tb-breakdown p.tb-gap{margin:0;height:14px}
.bb-list{list-style:none;margin:4px 0 10px;padding:0}
.bb-list li{position:relative;padding-left:32px;margin:0 0 8px}
.bb-list li::before{content:"";position:absolute;left:0;top:.2em;width:22px;height:22px;border-radius: 5px;background:url("/logo/logo-bb-bullet.png") center/contain no-repeat}
