/* v39 design system: one type scale, one pill, one surface language. Loaded last. */
:root{--ds-ink:#202022;--ds-ink-2:#656570;--ds-ink-3:#8a8a93;--ds-line:#eceef1;--ds-sub:#f5f6f8;--ds-red:#ef3124;
 --ds-ok-bg:#e5f5eb;--ds-ok:#0a6b35;--ds-warn-bg:#fff1dc;--ds-warn:#8a4b00;--ds-bad-bg:#ffe9ea;--ds-bad:#a31d24;--ds-mid-bg:#f1f2f4;--ds-mid:#3c3c43;--ds-info-bg:#e6f0ff;--ds-info:#1f5bd0}

/* type scale: page 30 · block 20 · sub-block 16 · body 15 · secondary 13 · caption 12 */
h1{font-size:30px!important;font-weight:700!important;letter-spacing:-.6px;line-height:1.2}
main h2,.panel h2,.form-panel>h2,.test-body h2,.decision-main h2,.report-title h2,.abd h2,.ab-stat-panel h2{font-size:20px!important;font-weight:600!important;line-height:1.3!important;letter-spacing:-.2px;margin-top:0}
h3,.form-panel>h3,.panel h3{font-size:16px!important;font-weight:600!important;line-height:1.35!important}
summary{font-size:14px;font-weight:600}
.hint,.help-text{font-size:13px!important;line-height:1.5!important;color:var(--ds-ink-2)!important}
.page-heading p:not(.eyebrow),.calendar-subtitle{font-size:13px!important;color:var(--ds-ink-2)!important}
.numeric,.numeric-strong,td{font-variant-numeric:tabular-nums}

/* one pill for statuses, tags and results */
.status,.team-tag,.abd-pill{border-radius:999px!important;font-weight:600!important;line-height:1.3}
.status,.team-tag{font-size:12px!important;padding:3px 10px!important}
.status.done{background:var(--ds-ok-bg)!important;color:var(--ds-ok)!important}.status.draft{background:var(--ds-warn-bg)!important;color:var(--ds-warn)!important}.status.active{background:var(--ds-info-bg)!important;color:var(--ds-info)!important}
.abd-pill{font-size:14px!important;padding:4px 12px!important}.abd-pill.sm{font-size:12px!important;padding:3px 10px!important;gap:3px}

/* surfaces: white blocks 24, inner sub-blocks 16 without heavy borders */
.panel{border-radius:24px}
.abd-verdict,.abd-stage,.abv{border:1px solid var(--ds-line)!important;border-radius:16px!important}
.abv-item,.abd-same,.abd-tile{border-radius:12px!important}
.abd-banner{border-radius:16px!important}
.abd-hint.warn{color:var(--ds-warn)!important;font-size:13px!important;margin-top:8px}
.abd-caption{display:flex;align-items:center;gap:4px}
.abv-head b{display:inline-flex;align-items:center;gap:4px}
.abd-stage header>div{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.report-detail-grid{grid-template-columns:1fr!important}
.ab-heading-info{display:flex;align-items:center;gap:6px}

/* home cards: compact, whole card is the link */
.test-grid{gap:14px!important}
.test-tile{gap:8px!important;padding:16px 18px!important;border-radius:20px!important;border:1px solid var(--ds-line);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease!important}
.test-tile:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(32,32,34,.08)!important}
.test-tile:focus-visible{outline:2px solid var(--ds-red);outline-offset:2px}
.test-tile-title{font-size:16px!important;font-weight:600!important;min-height:0!important;line-height:1.3!important;margin:2px 0 0!important}
.test-tile-line{margin:0;font-size:13px;color:var(--ds-ink-2);line-height:1.45}
.test-tile-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:10px;border-top:1px solid var(--ds-line)}
.test-tile-kpi{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--ds-ink-2);font-variant-numeric:tabular-nums}
.test-tile-kpi svg{color:var(--ds-ink-3);transition:transform .15s}.test-tile:hover .test-tile-kpi svg{transform:translateX(2px);color:var(--ds-red)}
.test-tile .overdue{font-size:12px}
.test-tile-delete{opacity:.55}.test-tile-delete:hover{opacity:1}

/* month calendar with test bars */
.abc{padding:12px 14px 6px!important}
.abc-weekdays{display:grid;grid-template-columns:repeat(7,1fr);padding:0 0 8px;font-size:12px;color:var(--ds-ink-3);font-weight:500}
.abc-weekdays span{padding-left:8px}
.abc-week{position:relative;display:grid;grid-template-columns:repeat(7,1fr);border-top:1px solid var(--ds-line)}
.abc-day{padding:6px 8px;font-size:12px;color:var(--ds-ink-2);border-left:1px solid #f3f4f6}.abc-day:first-child{border-left:0}
.abc-day.we{background:#fafafb}.abc-day.out{color:#c4c5cb}
.abc-day.today span{display:inline-block;min-width:20px;text-align:center;background:var(--ds-red);color:#fff;border-radius:999px;padding:1px 6px;font-weight:600}
.abc-bar{position:absolute;height:20px;border:0;border-radius:6px;padding:0 8px;font-size:12px;line-height:20px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;transition:filter .15s}
.abc-bar:hover{filter:brightness(.96)}.abc-bar:focus-visible{outline:2px solid var(--ds-red);outline-offset:1px}
.abc-bar b{font-weight:700;margin-right:2px}.abc-bar span{font-weight:500}
.abc-bar.completed{background:var(--ds-ok-bg);color:var(--ds-ok);box-shadow:inset 3px 0 0 #1baf7a}
.abc-bar.running{background:var(--ds-info-bg);color:var(--ds-info);box-shadow:inset 3px 0 0 #3a78f2}
.abc-bar.draft{background:var(--ds-warn-bg);color:var(--ds-warn);box-shadow:inset 3px 0 0 #e08a00}
.abc-bar.cont{border-top-left-radius:0;border-bottom-left-radius:0;box-shadow:none}.abc-bar.more{border-top-right-radius:0;border-bottom-right-radius:0}

/* test period picker */
.abr-wrap{grid-column:1/-1;position:relative}
.abr{position:relative}
.abr-label{display:flex;align-items:center;gap:6px;margin-bottom:8px;font-size:14px;font-weight:500}
.abr-field{width:100%;min-height:46px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;border:1px solid var(--input,#d8dae0);border-radius:12px;background:#fff;font-size:15px;text-align:left;cursor:pointer}
.abr-field small{color:var(--ds-ink-2);font-size:13px;white-space:nowrap}.abr-field.open,.abr-field:focus-visible{border-color:var(--ds-red);outline:none}
.abr-pop{position:absolute;z-index:60;top:84px;left:0;width:min(340px,100%);padding:12px;background:#fff;border:1px solid var(--ds-line);border-radius:16px;box-shadow:0 12px 32px rgba(32,32,34,.14)}
.abr-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.abr-head b{font-size:14px}
.abr-head button{width:32px;height:32px;border:0;border-radius:8px;background:var(--ds-sub);font-size:16px;cursor:pointer}
.abr-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px 0;text-align:center}
.abr-grid i{font-style:normal;font-size:11px;color:var(--ds-ink-3);padding:4px 0}
.abr-day{position:relative;height:34px;border:0;background:none;font-size:13px;border-radius:8px;cursor:pointer;font-variant-numeric:tabular-nums}
.abr-day:hover{background:var(--ds-sub)}.abr-day.we{color:var(--ds-bad)}.abr-day.today{font-weight:700}
.abr-day.busy:after{content:'';position:absolute;left:50%;bottom:3px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:#3a78f2}
.abr-day.in{background:#fdeceb;border-radius:0}.abr-day.s,.abr-day.e{background:var(--ds-red);color:#fff;font-weight:600}
.abr-day.s{border-radius:8px 0 0 8px}.abr-day.e{border-radius:0 8px 8px 0}.abr-day.s.e{border-radius:8px}
.abr-presets{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:10px}
.abr-presets button{padding:5px 12px;border:1px solid #d8dae0;border-radius:999px;background:#fff;font-size:12px;cursor:pointer}.abr-presets button:hover{border-color:var(--ds-red);color:var(--ds-red)}
.abr-hint{font-size:11px;color:var(--ds-ink-3);margin-left:auto}
.abr-note{margin:6px 0 0;font-size:13px}.abr-note.ok{color:var(--ds-ok)}.abr-note.warn{color:var(--ds-warn)}.abr-note.mid{color:var(--ds-ink-2)}
.abr-manual-toggle{margin-top:6px;padding:0;border:0;background:none;color:var(--ds-ink-2);font-size:12px;text-decoration:underline;cursor:pointer}
.abr-manual .field{margin-top:8px}
@media(max-width:700px){.abc-bar span{display:none}.abr-pop{width:100%}}
.panel:has(.abr-pop),.form-panel:has(.abr-pop){overflow:visible!important;position:relative;z-index:5}
.abd-verdicts{align-items:start}
