:root{--orange:#347a65;--orange-light:#e7efdf;--green:#347a65;--paper:#f6f6f1;--ink:#273b35;--muted:#79877e;--line:#e1e6dc}
.job-queue{width:100%}.queued-operation{padding:12px 0;border-top:1px solid #ccd9c2}.queued-operation .hint{overflow-wrap:anywhere}.job-progress-heading b{font-size:12px}.job-progress-heading button{flex-shrink:0}#annex-workflow{margin:18px 0;overflow-wrap:anywhere}#annex-workflow .check{margin-top:16px}.annex-files{max-height:220px;overflow:auto;padding-left:20px}.annex-files li{margin:8px 0;font-size:12px}.annex-files code{overflow-wrap:anywhere}
.work-title{display:block;font-weight:600}.work-indicators{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.work-indicator{display:inline-block;font-size:9px;padding:2px 5px;border-radius:4px;background:#edf0eb;color:#61736a}.work-indicator.seeded,.work-indicator.verified{background:#e0eedf;color:#286440}.work-indicator.warning{background:#f7ead7;color:#8c632b}.work-indicator.busy{background:#e4edf6;color:#36658d}.work-link{width:100%;padding:9px 7px;border-bottom:1px solid var(--line)}.release-size{font-size:12px;color:var(--ink);margin:8px 0 14px;font-variant-numeric:tabular-nums}.release-size b{font-weight:600}
dialog.detail-dialog{padding-top:0}.detail-toolbar{position:sticky;top:0;z-index:4;display:flex;justify-content:flex-end;align-items:center;min-height:54px;background:#fff;padding:10px 0;border-bottom:1px solid var(--line)}.detail-toolbar .close{position:static;flex-shrink:0;min-width:36px;min-height:34px}dialog.detail-dialog .candidate-job{top:54px}#seed-workflow{margin:18px 0;overflow-wrap:anywhere}#seed-workflow .check{margin-top:16px}#seed-workflow details{margin-top:20px}
.candidate-job{position:sticky;top:-1px;z-index:2;padding:16px;margin:15px 0 22px;background:#edf2e7;border:1px solid #ccd9c2;border-radius:9px;box-shadow:0 4px 14px #273b3510}.job-progress-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.candidate-job .hint{margin:8px 0 0}.piece-progress{display:block;width:100%;height:9px;margin:12px 0;accent-color:var(--green)}.job-panel>div{flex:1;min-width:0}#toast[popover]{position:fixed;inset:auto 20px 20px auto;margin:0;border:0;max-width:calc(100vw - 40px);font:inherit;color:#fff;background:var(--ink);border-radius:8px;padding:14px 20px;box-shadow:0 8px 30px #0003}
main{max-width:1660px}.brand span,.brandmark span{color:var(--green)}.page-heading h1{font-size:clamp(32px,3vw,49px);letter-spacing:-1.8px}.page-heading{margin-top:46px}.primary{background:var(--green)}.primary:hover{background:#245b4a}.seed-stats{grid-template-columns:repeat(4,1fr);gap:14px}.seed-stats .stat{padding:20px;display:block}.seed-stats b{display:block;margin-bottom:12px;font-variant-numeric:tabular-nums}.sidebar-section{margin:34px 13px 20px;overflow:auto}.sidebar-section .eyebrow{font-size:9px;color:var(--muted)}#work-nav{display:grid;gap:4px}.work-link{background:none;border-radius:5px;text-align:left;padding:8px 0;font-size:11px;color:var(--muted);overflow-wrap:anywhere}.work-link:hover,.work-link.active{color:var(--ink);background:var(--paper)}.filters{display:flex;align-items:center;gap:12px}.filters label{margin:0}.filters label:first-child{flex:1}.filters select{max-width:245px}.filters .hide-seeded{display:flex;flex-direction:row;align-items:center;font-weight:400;font-size:11px;white-space:nowrap}.hide-seeded input{width:15px}.legend{margin:15px 0 28px;font-size:11px;display:flex;gap:8px;align-items:center}.dot{display:inline-block;width:6px;height:6px;background:#8da385;border-radius:50%;flex-shrink:0}.work-group{margin-bottom:36px}.work-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:13px;margin:28px 0 16px}.work-heading h3{font-size:20px;margin:0;letter-spacing:-.5px}.work-heading p{font-size:10px;margin:4px 0 0;color:var(--muted)}.scope-heading{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin:23px 0 13px;font-weight:600}.release-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.release-card{padding:21px 23px;background:#fff;border:1px solid var(--line);border-radius:10px;min-width:0}.release-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.release-card h3{font-size:13px;line-height:1.7;margin:15px 0 17px;overflow-wrap:anywhere;font-weight:600}.qb-state{font-size:9px;color:var(--muted);text-align:right}.qb-state.seeding{color:var(--green)}.badge.probable,.badge.verified{background:#e6efdf;color:#46683b}.badge.partial{background:#f5ead8;color:#98713a}.badge.incompatible,.badge.unsupported{background:#f8e7e1;color:#a65d46}.badge.uncertain,.badge.unexamined,.badge.stale{background:#edf0ed;color:#6d7d75}.metrics{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:14px}.metric-label{font-size:10px;color:var(--muted);display:flex;justify-content:space-between;gap:5px}.metric-label b{font-size:11px;color:var(--ink);font-weight:500}.meter{height:4px;background:#edf0e9;border-radius:2px;margin-top:8px;overflow:hidden}.meter-fill{height:100%;background:#94ad82;width:0}.meter-fill.potential{background:#c6b382}.file-counts{font-size:10px;color:var(--muted);margin:13px 0}.release-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:15px;padding-top:14px;border-top:1px solid #eff1eb}.release-bottom a{font-size:10px;color:var(--muted)}.release-bottom button{font-size:10px;padding:8px 12px}.binary-note{font-size:10px;color:var(--muted);margin:6px 0}.reason-short{font-size:11px;color:var(--muted);margin:10px 0 0}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:30px;font-size:11px}.pagination button{padding:8px 12px}.job-panel{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#edf2e7}.job-panel .eyebrow{font-size:9px;margin-bottom:6px}.job-panel .hint{margin-bottom:0}.diagnostic{margin-top:35px}.diagnostic p{font-size:11px}.scan-library{max-height:290px;overflow:auto;margin-bottom:20px;border-top:1px solid var(--line);min-height:60px}.scan-row{padding:12px 5px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);font-weight:400;margin:0}.scan-row input{width:16px;flex-shrink:0}.scan-row small{margin-left:auto;color:var(--muted)}.dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px}.detail-dialog{max-width:1100px}.detail-title{overflow-wrap:anywhere;font-size:20px;line-height:1.6;letter-spacing:-.5px;padding-right:25px}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:25px 0}.detail-grid .panel{padding:18px;margin:0}.detail-grid b{font-size:28px;font-weight:500;display:block}.detail-grid span{font-size:10px;color:var(--muted)}.detail-actions{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.table-scroll{overflow:auto;max-height:450px}.file-table{border-collapse:collapse;width:100%;font-size:11px;min-width:650px}.file-table th{text-align:left;color:var(--muted);font-size:9px;letter-spacing:1px;text-transform:uppercase;background:var(--paper);position:sticky;top:0}.file-table th,.file-table td{padding:12px;border-bottom:1px solid var(--line);vertical-align:top}.file-table td:nth-child(2){min-width:180px}.file-table code{font-size:10px;overflow-wrap:anywhere;word-break:break-word}.file-table small{display:block;color:var(--muted);margin-top:5px}.local-files{max-height:250px;overflow:auto}.local-files p{font-size:11px;margin:10px 0;padding:8px 0;border-bottom:1px solid var(--line)}.local-files code{font-size:10px;overflow-wrap:anywhere}.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.notice{color:#5e714a}#demo-banner{margin:20px 0 -20px}#login-error{color:#a65d46}.empty h2{font-size:22px}.resume-button{margin-left:10px}.work-meta{font-size:11px;color:var(--muted)}.metric-title{font-size:10px;color:var(--muted)}.selected-heading{display:flex;justify-content:space-between;align-items:center}.selected-heading h2{margin:0}.selected-heading button{font-size:11px}.work-notice{font-size:11px;color:var(--muted);margin:12px 0 0}.result-empty{padding:45px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:9px}.detail-reasons{font-size:12px;line-height:1.9}.table-filter{max-width:260px;margin-bottom:15px}.state-label{white-space:nowrap;font-size:10px}.stat-note{margin-top:8px;color:var(--muted);font-size:10px}.file-table ul{margin:4px 0;padding-left:14px;font-size:10px;color:var(--muted)}
@media(max-width:1150px){.filters{flex-wrap:wrap}.release-list{grid-template-columns:1fr}.seed-stats{grid-template-columns:repeat(2,1fr)}.sidebar-section{margin-left:8px;margin-right:8px}.metrics{gap:25px}}
@media(max-width:700px){.sidebar-section{display:none}.page-heading h1{font-size:34px}.page-heading p br{display:none}.seed-stats .stat{padding:16px}.seed-stats b{margin-bottom:8px}.filters label:first-child{flex-basis:100%}.filters select{max-width:100%}.filters label:nth-child(2){flex:1}.hide-seeded{white-space:normal!important}.release-card{padding:19px}.job-panel{align-items:flex-start;flex-direction:column}.detail-grid{gap:8px}.detail-grid .panel{padding:12px}.detail-grid b{font-size:23px}.detail-grid span{font-size:9px}.detail-title{font-size:15px}.legend{align-items:flex-start}.dot{margin-top:6px}.connection{font-size:9px}header .eyebrow{font-size:8px}.work-heading h3{font-size:18px}.results-heading{flex-wrap:wrap;gap:10px}.pagination{gap:10px}.dialog-actions{flex-wrap:wrap}nav .nav span{font-size:10px}.stats{margin-bottom:30px}}
progress.metric-progress{display:block;width:100%;height:4px;border:0;border-radius:2px;margin-top:8px;appearance:none;background:#edf0e9}progress.metric-progress::-webkit-progress-bar{background:#edf0e9;border-radius:2px}progress.metric-progress::-webkit-progress-value{background:#94ad82;border-radius:2px}progress.metric-progress::-moz-progress-bar{background:#94ad82;border-radius:2px}
/* Navigation and match states: labels carry meaning independently of colour. */
.work-sort{font-size:10px;margin:12px 0 8px}.work-sort select{font-size:11px;padding:8px;width:100%}#work-count{font-size:10px;margin:0 0 10px}.ranked-release{min-width:0;display:flex;flex-direction:column}.release-work{align-self:flex-start;text-align:left;margin:0 0 7px;overflow-wrap:anywhere}.ranked-release .release-card{flex:1}.release-scope{font-size:10px;color:#52665b;margin:13px 0 0}.release-card h3{margin-top:8px}.match-evidence{font-size:11px;font-weight:600;color:#3e594c}.release-card{border-left-width:5px}.release-card.status-verified{background:#eaf5ed;border-color:#85b895}.release-card.status-probable{background:#f1f7e9;border-color:#a9bc7d}.release-card.status-partial{background:#fff5e5;border-color:#d7b369}.release-card.status-uncertain{background:#f1f5fa;border-color:#aabdd2}.release-card.status-unexamined{background:#fff;border-color:#d4ddd5}.release-card.status-incompatible,.release-card.status-unsupported{background:#fff0ec;border-color:#dca18e}.release-card.status-stale{background:#f2eff8;border-color:#b7a5ce}.badge.stale{background:#e7dff3;color:#695080}.badge.uncertain{background:#dfeaf5;color:#3f6185}.filters{flex-wrap:wrap}.filters label:first-child{min-width:200px}.filters select{font-size:12px}.qb-state{color:#596c62}.qb-state.seeding{font-weight:700}.qb-state.checking,.qb-state.queued{color:#3f6185}
/* Every scroll container stops wheel/touch chaining; fixed body also covers iOS. */
html.modal-open{overflow:hidden;overscroll-behavior:none;scroll-behavior:auto}dialog,dialog .table-scroll,dialog .scan-library,dialog .annex-files,dialog pre{overscroll-behavior:contain}dialog{overflow:auto}.sidebar-section,.local-files{overscroll-behavior:contain}.modal-open body{scroll-behavior:auto}
@media(max-width:700px){.sidebar-section{display:block;margin:15px 0 0;max-height:230px;overflow:auto;padding:0 2px}.sidebar-section .eyebrow{margin-bottom:5px}.work-sort{display:flex;flex-direction:row;align-items:center;gap:10px;margin:6px 0}.work-sort select{max-width:210px}#work-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.work-link{font-size:11px}.work-indicator{font-size:9px}.release-list{grid-template-columns:1fr}.release-top{align-items:flex-start}.detail-actions .primary,.detail-actions .secondary{white-space:normal}dialog{max-height:90dvh}.filters label:first-child{min-width:0}.sidebar-section .hint{margin-top:5px}}
/* Completion history keeps the result readable without relying on colour. */
.notification-entry{padding:12px 14px;border-left:3px solid var(--line);background:#f5f7f3;overflow-wrap:anywhere}.notification-error{border-color:#b05237;background:#fff0ec}.notification-paused,.notification-interrupted,.notification-cancelled{border-color:#ba9754;background:#fff5e5}#notification-dialog{width:min(760px,calc(100vw - 32px))}#toast[popover]{max-width:min(620px,calc(100vw - 40px));max-height:50dvh;overflow:auto}#toast .text-button{display:block;margin-top:10px;color:#fff;text-decoration:underline}

/* Coverage remains distinct from release counts and can be explained by keyboard. */
.work-entry{min-width:0}.work-entry .work-link{width:100%}.coverage-badge{display:block;width:100%;text-align:left;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:#f2f6ee;color:#425947;margin:3px 0 10px;font-size:10px}.coverage-badge span,.coverage-badge strong{display:block;margin:3px 0;overflow-wrap:anywhere}.coverage-badge:focus-visible{outline:2px solid #46683b;outline-offset:2px}.coverage-filter{display:flex;align-items:flex-start;gap:7px;font-size:11px;margin:10px 0}.coverage-filter input{width:14px;flex-shrink:0;margin-top:2px}#coverage-dialog{width:min(800px,calc(100vw - 32px))}.coverage-list{font-size:12px;overflow-wrap:anywhere;max-height:250px;overflow:auto;overscroll-behavior:contain}#coverage-content p{overflow-wrap:anywhere}

#seasons-dialog{width:min(950px,calc(100vw - 32px))}.season-option{min-width:0;border:1px solid var(--line);padding:14px;margin:15px 0}.season-option legend label{display:flex;gap:8px;align-items:center;margin:0}.season-option input,.season-candidate input{width:16px;flex-shrink:0}.season-candidate{display:flex;gap:10px;font-weight:400;padding:12px 0;border-top:1px solid var(--line);overflow-wrap:anywhere}.season-candidate small{display:block;margin-top:5px;font-size:11px;color:var(--muted)}.batch-items{padding-left:22px;font-size:12px;overflow-wrap:anywhere}.batch-items li{padding:8px 0}.batch-parent{padding:16px 0;border-top:1px solid var(--line)}.batch-parent h4{margin-bottom:8px}#batch-preview{margin:20px 0}#batch-preview:not(:empty){padding:18px;background:#f3f6ef;border:1px solid var(--line);border-radius:8px}#batch-action{max-width:350px}.batch-parent .text-button{font-size:11px}

#verify-prepare-dialog{width:min(820px,calc(100vw - 32px))}#verify-prepare-content code{overflow-wrap:anywhere}#chain-status:empty{display:none}

.read-scope{margin:14px 0}.read-scope summary{cursor:pointer;font-size:12px}.read-scope .table-scroll{margin-top:10px;max-height:300px}#refresh-inventories{font-size:11px;text-align:left}
/* Exact fingerprints and staging paths must wrap on narrow screens. Tables scroll locally. */
#verify-prepare-dialog{box-sizing:border-box;max-width:calc(100vw - 20px)}#verify-prepare-content,#verify-prepare-content p,#verify-prepare-content details,#verify-prepare-content summary,#verify-prepare-content label{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:break-word}#verify-prepare-content code{white-space:normal;overflow-wrap:anywhere;word-break:break-word}.read-scope,.read-scope .table-scroll{min-width:0;max-width:100%}.read-scope summary{white-space:normal;overflow-wrap:anywhere}.read-scope .table-scroll{width:100%;box-sizing:border-box}

/* The sidebar has one compact title and one large status control per work. */
#work-nav .work-entry{display:flex;align-items:center;gap:5px;min-width:0;border-bottom:1px solid var(--line);padding:3px 0}#work-nav .work-link{flex:1;min-width:0;width:auto;padding:8px 6px;margin:0;font-size:12px;line-height:1.4;border:0;background:transparent}#work-nav .work-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}#work-nav .work-link.active{background:#e8eee2;border-radius:6px}#work-nav .work-status{--status-ink:#64748b;--status-wash:#e2e8f0;position:relative;display:flex;align-items:center;justify-content:center;flex:0 0 32px;width:32px;height:32px;padding:0;border:0;border-radius:10px;color:var(--status-ink);background:transparent}#work-nav .work-status::before{content:"";position:absolute;left:50%;top:50%;width:28px;height:28px;transform:translate(-50%,-50%);border-radius:9px;background:var(--status-wash);transition:filter .15s}#work-nav .work-status svg{position:relative;display:block;width:18px;height:18px}#work-nav .work-status:hover::before{filter:brightness(.96)}.work-status:focus-visible{outline:2px solid currentColor;outline-offset:1px}#work-nav .work-status-covered{--status-ink:#15803d;--status-wash:#dcfce7}#work-nav .work-status-busy{--status-ink:#2563eb;--status-wash:#dbeafe}#work-nav .work-status-partial{--status-ink:#b45309;--status-wash:#fef3c7}#work-nav .work-status-stale{--status-ink:#c2410c;--status-wash:#ffedd5}#work-nav .work-status-ready{--status-ink:#7c3aed;--status-wash:#ede9fe}#work-nav .work-status-queued{--status-ink:#9333ea;--status-wash:#f3e8ff}#work-nav .work-status-checking{--status-ink:#0891b2;--status-wash:#cffafe}#work-nav .work-status-unknown{--status-ink:#64748b;--status-wash:#e2e8f0}.work-status-tooltip{position:fixed;z-index:1000;box-sizing:border-box;width:370px;padding:15px 17px;background:#fff;color:var(--ink);border:1px solid #bcc8b8;border-radius:9px;box-shadow:0 8px 28px #182c2226;font-size:12px;line-height:1.6;overflow:auto;overscroll-behavior:contain;overflow-wrap:anywhere;pointer-events:auto}.work-status-tooltip[hidden]{display:none}.work-status-tooltip p{margin:7px 0}.work-status-tooltip ul{padding-left:18px;margin:7px 0}.work-status-tooltip .hint{font-size:11px;margin-bottom:0}.work-status-tooltip .work-indicator{font-size:10px}
@media(max-width:700px){#work-nav{grid-template-columns:minmax(0,1fr)}#work-nav .work-link{font-size:12px}.work-status-tooltip{font-size:12px}}

#work-nav .work-visibility{display:flex;align-items:center;justify-content:center;flex:0 0 28px;width:28px;height:32px;padding:0;border:0;border-radius:8px;color:#64748b;background:transparent}#work-nav .work-visibility svg{width:16px;height:16px}#work-nav .work-visibility[data-visible="true"]{color:#7c3aed}#work-nav .work-visibility:hover{color:#a14932;background:#f7eee8}#work-nav .work-visibility:focus-visible{outline:2px solid currentColor;outline-offset:1px}#work-nav .work-removed .work-title{color:#748078;font-style:italic}#visibility-dialog{width:min(620px,calc(100vw - 32px))}#visibility-description{overflow-wrap:anywhere}
/* Keep readable titles beside the two controls on desktop. */
@media(min-width:701px){.shell{grid-template-columns:300px minmax(0,1fr)}.sidebar-section{margin-left:0;margin-right:0}}
@media(min-width:701px) and (max-width:1150px){.shell{grid-template-columns:270px minmax(0,1fr)}}

/* Visual badges stay small while touch targets remain comfortable. */
@media(pointer:coarse),(max-width:700px){#work-nav .work-status,#work-nav .work-visibility{flex-basis:40px;width:40px;height:40px}}

/* Only work rows scroll; navigation, search and pagination keep their place. */
.shell>aside{padding:20px 18px;min-height:0;overflow:hidden;box-sizing:border-box}.shell>aside>.brand{flex:none;padding:0 8px;margin-bottom:12px;font-size:32px;line-height:1.1}.shell>aside>.brand small{margin-top:5px}.shell>aside>nav{flex:none;margin:0 0 14px}.shell>aside>nav .nav{padding:9px 10px;margin:1px 0}.shell>aside>.sidebar-section{display:flex;flex-direction:column;flex:1;min-height:0;max-height:none;overflow:visible;margin:0;padding:0}.work-controls{flex:none;min-width:0}.work-controls .eyebrow{margin-bottom:8px}.work-search-label{font-size:11px;margin:0 0 5px}.work-controls #work-search{padding:8px 10px;font-size:12px}#work-options-toggle{display:block;font-size:11px;padding:5px 0;margin:2px 0 0}#work-count{font-size:10px;line-height:1.4;margin:5px 0 8px}.shell>aside #work-nav{display:block;flex:1;min-height:140px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable}.work-pagination{display:flex;align-items:center;justify-content:space-between;flex:none;gap:6px;margin:8px 0 0!important;border-top:1px solid var(--line);padding-top:6px}.work-pagination button{font-size:15px;padding:4px 10px;min-height:32px}.work-pagination span{font-size:11px;white-space:nowrap}.shell>aside>.aside-bottom{flex:none;margin-top:12px;padding:0 4px}.aside-bottom>.eyebrow,.aside-bottom>p{display:none}.aside-bottom>a{display:block;font-size:11px;margin-bottom:3px}.aside-bottom>.text-button{display:inline-block;margin:0;padding:3px 0;font-size:10px}.aside-bottom>#logout{margin-left:12px}#work-options-dialog{width:min(580px,calc(100vw - 32px));max-height:85dvh;overflow:auto}#work-options-dialog .work-sort{display:flex;flex-direction:column;align-items:stretch;margin:12px 0}#work-options-dialog .work-sort select{max-width:none;width:100%}#work-options-dialog .coverage-filter{font-size:12px;margin:15px 0}#work-options-dialog .hint{font-size:11px}
.work-suggestions{position:fixed;z-index:1100;box-sizing:border-box;overflow:auto;overscroll-behavior:contain;background:#fff;border:1px solid #bdcbbf;border-radius:8px;box-shadow:0 8px 25px #182c2226;padding:4px;color:var(--ink)}.work-suggestions[hidden]{display:none}.work-suggestions [role=option]{padding:9px 10px;cursor:pointer;overflow-wrap:anywhere;border-radius:5px;font-size:12px;line-height:1.4}.work-suggestions [role=option] span,.work-suggestions [role=option] small{display:block}.work-suggestions [role=option] small{font-size:10px;color:var(--muted);margin-top:2px}.work-suggestions [role=option]:hover,.work-suggestions [aria-selected=true]{background:#e7efdf}
@media(min-width:701px){.shell>aside{height:100dvh}.shell>aside .sidebar-section{min-height:0}}
@media(max-width:700px){.shell>aside{height:auto;overflow:visible;padding:18px 16px}.shell>aside>.brand{font-size:30px;margin-bottom:12px}.shell>aside>nav{margin-bottom:12px}.shell>aside>nav .nav{padding:9px 7px}.shell>aside>.sidebar-section{flex:none;height:clamp(340px,60dvh,540px);margin:0}.shell>aside>.aside-bottom{margin-top:10px}.work-pagination button{min-height:36px}}

#work-nav .work-status-client-seed{--status-ink:#15803d;--status-wash:#dcfce7}
#work-nav .work-status-client-stale{--status-ink:#b45309;--status-wash:#fef3c7}
/* Global pending seeds: source state is inspected only after opening one preparation. */
main > header { flex-wrap: wrap; gap: .7rem; }
#open-pending-seeds { margin-left: auto; font-size: .8rem; padding: .5rem .8rem; }
#pending-seed-count { display: inline-block; min-width: 1.5em; margin-left: .35rem; border-radius: 1em; background: #d7f4ed; color: #11604d; text-align: center; }
.pending-seeds-dialog { width: min(760px, calc(100vw - 2rem)); }
.pending-seed-item { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid #e3e8df; }
.pending-seed-item > div { min-width: 0; }
.pending-seed-name { overflow-wrap: anywhere; margin: .3rem 0; font-size: .8rem; color: #667569; }
.pending-seed-item button { flex-shrink: 0; font-size: .8rem; }
.pending-seed-phase { font-size: .75rem; color: #795d14; }
.phase-start_queued, .phase-starting { color: #166990; }
.pending-seed-pages { display: flex; justify-content: space-between; align-items: center; gap: .5rem; margin-top: 1rem; font-size: .8rem; }
.resource-queue > h3 { margin: 1rem 0 .4rem; font-size: .9rem; }
@media (max-width: 600px) { .pending-seed-item { align-items: flex-start; flex-direction: column; gap: .6rem; } }
.pending-seed-actions { display: flex; flex-direction: column; align-items: flex-end; gap: .4rem; flex-shrink: 0; }
.pending-start-dialog { width: min(540px, calc(100vw - 2rem)); }
.pending-start-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem; margin-top: 1rem; }
.pending-start-dialog h3 { margin-bottom: .4rem; }
@media (max-width: 600px) { .pending-seed-actions { align-items: flex-start; } }
.reuse-file-list { padding-left: 1.2rem; }
.reuse-file-list li { margin: .7rem 0; overflow-wrap: anywhere; }
.reuse-file-list code { overflow-wrap: anywhere; white-space: normal; }
.reuse-summary { display: flex; flex-wrap: wrap; gap: .4rem 1.2rem; padding: .75rem 0; }
.reuse-summary b { color: #166990; }
.reuse-summary span { color: #765811; }
.reuse-sources, .reuse-diagnostics { margin: .8rem 0; }
.reuse-guidance { margin: .75rem 0; }
.reuse-copy-summary { color: #765811; margin: .4rem 0; }
.reuse-copy-tag { display: inline-block; border-radius: .35rem; padding: .15rem .35rem; background: #fff0cc; color: #72550f; font-size: .75rem; }
.reuse-copy-consent { margin: .9rem 0; }
/* Theme controls remain reachable before login and at the top of the mobile sidebar. */
.seed-theme-control { display: flex; flex-direction: row; align-items: center; justify-content: space-between; gap: .8rem; margin: 0 0 12px; font-size: 11px; color: var(--muted); }
.seed-theme-control select { width: auto; min-width: 116px; min-height: 36px; padding: 6px 9px; font-size: 12px; }
.shell > aside > .seed-theme-control { flex: none; padding: 0 8px; }
#login.login-wrap { position: relative; padding: 76px 16px 24px; box-sizing: border-box; }
.login-theme-control { position: absolute; top: 18px; right: 24px; margin: 0; }
@media(pointer: coarse), (max-width: 700px) { .seed-theme-control select { min-height: 44px; } .login-theme-control { right: 16px; } }

/* Seed-specific surfaces and status colours; the shared theme supplies form/dialog tokens. */
html[data-theme="dark"] .detail-toolbar { background: var(--surface); }
html[data-theme="dark"] .candidate-job,
html[data-theme="dark"] .job-panel { background: var(--success-soft); border-color: var(--line); }
html[data-theme="dark"] .queued-operation,
html[data-theme="dark"] .release-bottom,
html[data-theme="dark"] .pending-seed-item { border-color: var(--line); }
html[data-theme="dark"] .release-card.status-verified { background: var(--success-soft); border-color: #3d7553; }
html[data-theme="dark"] .release-card.status-probable { background: #263221; border-color: #718a4d; }
html[data-theme="dark"] .release-card.status-partial { background: var(--warning-soft); border-color: #8e6f32; }
html[data-theme="dark"] .release-card.status-uncertain { background: var(--info-soft); border-color: #44698b; }
html[data-theme="dark"] .release-card.status-unexamined { background: var(--surface); border-color: var(--line); }
html[data-theme="dark"] .release-card.status-incompatible,
html[data-theme="dark"] .release-card.status-unsupported { background: var(--danger-soft); border-color: #a66452; }
html[data-theme="dark"] .release-card.status-stale { background: #2c2539; border-color: #7b639a; }
html[data-theme="dark"] .badge.verified,
html[data-theme="dark"] .badge.probable { background: #2f4426; color: #c6e6b2; }
html[data-theme="dark"] .badge.partial { background: var(--warning-soft); color: var(--warning); }
html[data-theme="dark"] .badge.uncertain { background: var(--info-soft); color: var(--info); }
html[data-theme="dark"] .badge.unexamined { background: var(--surface-hover); color: var(--muted); }
html[data-theme="dark"] .badge.incompatible,
html[data-theme="dark"] .badge.unsupported { background: var(--danger-soft); color: var(--danger); }
html[data-theme="dark"] .badge.stale { background: #3d2c52; color: #d4baff; }
html[data-theme="dark"] .work-indicator { background: var(--surface-hover); color: var(--muted); }
html[data-theme="dark"] .work-indicator.seeded,
html[data-theme="dark"] .work-indicator.verified { background: var(--success-soft); color: var(--green); }
html[data-theme="dark"] .work-indicator.warning { background: var(--warning-soft); color: var(--warning); }
html[data-theme="dark"] .work-indicator.busy { background: var(--info-soft); color: var(--info); }
html[data-theme="dark"] .release-scope,
html[data-theme="dark"] .qb-state,
html[data-theme="dark"] .pending-seed-name { color: var(--muted); }
html[data-theme="dark"] .match-evidence,
html[data-theme="dark"] .qb-state.seeding { color: var(--green); }
html[data-theme="dark"] .qb-state.checking,
html[data-theme="dark"] .qb-state.queued { color: var(--info); }
html[data-theme="dark"] .notice { color: var(--ink); }
html[data-theme="dark"] #login-error { color: var(--danger); }
html[data-theme="dark"] .notification-entry { background: var(--surface-soft); }
html[data-theme="dark"] .notification-error { background: var(--danger-soft); border-color: var(--danger); }
html[data-theme="dark"] .notification-paused,
html[data-theme="dark"] .notification-interrupted,
html[data-theme="dark"] .notification-cancelled { background: var(--warning-soft); border-color: var(--warning); }
html[data-theme="dark"] .coverage-badge { background: var(--success-soft); color: var(--ink); }
html[data-theme="dark"] #batch-preview:not(:empty) { background: var(--surface-soft); }
html[data-theme="dark"] .work-status-tooltip,
html[data-theme="dark"] .work-suggestions { background: var(--surface); color: var(--ink); border-color: var(--field-line); box-shadow: 0 8px 28px #0005; }
html[data-theme="dark"] .work-suggestions [role=option]:hover,
html[data-theme="dark"] .work-suggestions [aria-selected=true],
html[data-theme="dark"] #work-nav .work-link.active { background: var(--surface-hover); }
html[data-theme="dark"] #work-nav .work-status-covered,
html[data-theme="dark"] #work-nav .work-status-client-seed { --status-ink: #76df9c; --status-wash: #153a2a; }
html[data-theme="dark"] #work-nav .work-status-busy { --status-ink: #8dbdff; --status-wash: #1b304b; }
html[data-theme="dark"] #work-nav .work-status-partial,
html[data-theme="dark"] #work-nav .work-status-client-stale { --status-ink: #f2c871; --status-wash: #3e321a; }
html[data-theme="dark"] #work-nav .work-status-stale { --status-ink: #ffb28c; --status-wash: #432b22; }
html[data-theme="dark"] #work-nav .work-status-ready,
html[data-theme="dark"] #work-nav .work-status-queued { --status-ink: #d0aeff; --status-wash: #342546; }
html[data-theme="dark"] #work-nav .work-status-checking { --status-ink: #73ddec; --status-wash: #163a43; }
html[data-theme="dark"] #work-nav .work-status-unknown { --status-ink: #bdcbd9; --status-wash: #293745; }
html[data-theme="dark"] #work-nav .work-visibility { color: var(--muted); }
html[data-theme="dark"] #work-nav .work-visibility[data-visible="true"] { color: #d0aeff; }
html[data-theme="dark"] #work-nav .work-visibility:hover { color: var(--danger); background: var(--danger-soft); }
html[data-theme="dark"] #work-nav .work-removed .work-title { color: var(--muted); }
html[data-theme="dark"] #pending-seed-count { background: var(--success-soft); color: var(--green); }
html[data-theme="dark"] .pending-seed-phase,
html[data-theme="dark"] .reuse-summary span,
html[data-theme="dark"] .reuse-copy-summary { color: var(--warning); }
html[data-theme="dark"] .phase-start_queued,
html[data-theme="dark"] .phase-starting,
html[data-theme="dark"] .reuse-summary b { color: var(--info); }
html[data-theme="dark"] .reuse-copy-tag { background: var(--warning-soft); color: var(--warning); }
html[data-theme="dark"] #toast[popover] { background: var(--toast-bg); color: var(--toast-ink); }
html[data-theme="dark"] #toast .text-button { color: var(--toast-ink); }
html[data-theme="dark"] progress.metric-progress,
html[data-theme="dark"] progress.metric-progress::-webkit-progress-bar { background: var(--surface-hover); }
html[data-theme="dark"] progress.metric-progress::-webkit-progress-value { background: var(--green); }
html[data-theme="dark"] progress.metric-progress::-moz-progress-bar { background: var(--green); }
html[data-theme="dark"] .meter { background: var(--surface-hover); }
html[data-theme="dark"] .meter-fill { background: var(--green); }
html[data-theme="dark"] .meter-fill.potential { background: var(--warning); }
html[data-theme="dark"] .primary:hover { background: #8ae4bd; }
html[data-theme="dark"] .coverage-badge:focus-visible { outline-color: var(--green); }

/* Situation first;
   advanced actions remain available without competing with the next step. */
.human-situation{
  border:1px solid var(--line,#dce2de);
  border-left:4px solid #3d80c0;
  border-radius:12px;
  padding:16px 18px;
  margin:16px 0;
  background:var(--paper,#fff)}

.human-situation p{
  margin:0 0 10px;
  line-height:1.5}
.human-situation .human-state{
  font-weight:700;
  display:flex;
  align-items:center;
  gap:9px}
.human-state-dot{
  width:10px;
  height:10px;
  flex:0 0 10px;
  background:#3d80c0;
  border-radius:50%}
.tone-success{
  border-left-color:#209874}
.tone-success .human-state-dot{
  background:#209874}
.tone-warning{
  border-left-color:#ce8730}
.tone-warning .human-state-dot{
  background:#ce8730}
.tone-waiting{
  border-left-color:#8a75ce}
.tone-waiting .human-state-dot{
  background:#8a75ce}
.human-situation .human-effect{
  font-size:.84rem;
  margin:10px 0 0;
  color:var(--muted,#64736b)}

.human-release-name{
  font-size:.83rem;
  overflow-wrap:anywhere;
  color:var(--muted,#64736b);
  margin:10px 0}
.human-advanced{
  border-top:1px solid var(--line,#dce2de);
  padding-top:14px;
  margin:16px 0}
.human-advanced>summary{
  cursor:pointer;
  font-weight:600;
  padding:8px 0}
.human-advanced .detail-actions{
  margin-top:12px}
.human-advanced .detail-actions .primary{
  background:transparent;
  color:inherit;
  border:1px solid var(--line,#dce2de)}

.human-heading-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:8px 0;
  color:var(--muted,#64736b)}
.human-heading-meta span{
  padding:4px 9px;
  border-radius:6px;
  background:var(--surface-soft,#f1f4f1)}

.live-connection{
  font-size:.8rem;
  max-width:300px;
  line-height:1.4;
  padding:6px 10px;
  border-radius:8px;
  background:var(--surface-soft,#f1f4f1)}
.live-connection[data-mode="connected"]{
  color:var(--green,#16805e)}
.live-connection[data-mode="degraded"],.live-connection[data-mode="reconnecting"]{
  color:var(--warning,#b37418)}
.candidate-update-note{
  margin:12px 0}
.release-card .human-situation{
  padding:12px;
  margin:12px 0}
.release-card .human-effect{
  display:none}
.release-card h3{
  margin-bottom:6px}
.goal-shortcuts{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:12px 0 20px}
.goal-shortcuts a{
  font-size:.88rem;
  color:inherit}
.job-work-title{
  font-weight:600;
  margin:6px 0}

@media(max-width:600px){
  .human-situation{
  padding:14px}
.human-situation button{
  width:100%}
.human-heading-meta{
  font-size:.85rem}
.detail-title{
  overflow-wrap:anywhere}
.goal-shortcuts{
  gap:12px}
.live-connection{
  max-width:100%}
.human-advanced .detail-actions>*{
  max-width:100%;
  white-space:normal}
.human-advanced .table-scroll{
  max-width:100%}
}

/* Foreground feedback keeps the previous content readable and keyboard focus intact. */
.results-loading {
  position: sticky;
  top: 10px;
  z-index: 5;
  display: flex;
  align-items: flex-start;
  gap: 9px;
  padding: 10px 12px;
  margin: 12px 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--muted);
  background: var(--surface-soft);
  font-size: 12px;
  line-height: 1.5;
}
.results-loading[hidden] { display: none; }
.results-spinner {
  flex: 0 0 14px;
  width: 14px;
  height: 14px;
  margin-top: 2px;
  border: 2px solid var(--line);
  border-top-color: var(--green);
  border-radius: 50%;
  animation: results-spin .8s linear infinite;
}
.results-loading:not([data-mode="loading"]) .results-spinner { display: none; }
.results-loading[data-mode="error"] { color: var(--danger); background: var(--danger-soft); }
@keyframes results-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .results-spinner { animation: none; } }
.work-load-status { font-size: 11px; line-height: 1.5; color: var(--green); margin: 8px 0 0; overflow-wrap: anywhere; }
.work-load-status[data-mode="error"] { color: var(--danger); }

/* An empty retry notice must not look like a progress bar. */
#batch-retry-notice:empty { display: none; }
