:root{--ink:#19352f;--muted:#75817d;--green:#216b52;--line:#e2e7e2;--bg:#f5f7f3;--orange:#ac632d}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button,a,select{cursor:pointer}a{color:inherit;text-decoration:none}aside{position:fixed;width:238px;inset:0 auto 0 0;background:#102f28;color:#d9e6df;padding:34px 22px;display:flex;flex-direction:column}.brand{font-size:27px;font-weight:700;display:flex;align-items:center;letter-spacing:-1px}.brand>span:last-child{color:#98c7a5}.logo{display:inline-grid;place-items:center;width:34px;height:36px;margin-right:10px;background:#a5c8a2;border-radius:9px;color:#102f28;font-size:32px}.workspace{font-size:10px;letter-spacing:1.7px;color:#8ea89d;margin:54px 12px 18px}nav a{display:flex;gap:14px;padding:13px 14px;border-radius:6px;margin-bottom:6px;color:#adc2b8}nav a.active{background:#2b4c40;color:white}nav a:hover{background:#24483b}nav b{font-weight:400;width:16px}.aside-bottom{margin-top:auto;font-size:12px}.aside-bottom div{font-size:10px;color:#8ea89d;margin-top:10px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:100%;background:#a9cd83;margin-right:6px}.shell{margin-left:238px}header{height:82px;border-bottom:1px solid var(--line);padding:0 42px;display:flex;align-items:center;justify-content:space-between;background:white;font-size:12px}.muted{color:var(--muted);padding:0 12px}.role{display:flex;align-items:center;gap:10px;color:var(--muted)}select{padding:9px;border:1px solid var(--line);border-radius:5px;background:white;color:var(--ink)}.notice{padding:13px 42px;background:#eef1e5;color:#6f7557;font-size:11px}.notice span{font-size:9px;letter-spacing:1px;font-weight:bold;margin-right:16px}main{max-width:1500px;margin:auto;padding:40px 42px;min-height:calc(100vh - 170px)}.eyebrow{font-size:10px;letter-spacing:1.7px;color:var(--green);font-weight:bold;margin-bottom:10px}h1{font-size:32px;letter-spacing:-1px;font-weight:500;margin:0 0 12px}h2{font-size:18px;font-weight:500;margin:0}h3{font-size:14px;margin:0 0 8px}p{color:var(--muted);line-height:1.6}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.heading p{margin:0;font-size:12px}.primary,.secondary,.ghost{border-radius:5px;padding:11px 17px;border:1px solid var(--line);background:white;color:var(--ink)}.primary{background:var(--green);color:white;border-color:var(--green)}.ghost{border:0;background:transparent;padding:6px 10px}.secondary:hover,.ghost:hover{background:#edf3ed}.primary:hover{background:#19543f}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:28px}.stat,.panel{border:1px solid var(--line);background:#fff;border-radius:8px}.stat{padding:23px}.stat label{font-size:12px;color:var(--muted)}.stat strong{font-size:33px;display:block;font-weight:500;margin:16px 0 9px}.stat small{font-size:11px;color:var(--muted)}.panel{margin-bottom:22px;overflow:hidden}.panel-head{padding:23px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.panel-head p{margin:7px 0 0;font-size:12px}.panel-body{padding:23px}.columns{display:grid;grid-template-columns:1.7fr 1fr;gap:22px}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:10px;letter-spacing:.6px;color:var(--muted);text-transform:uppercase;background:#fafbf8;font-weight:500}td,th{padding:17px 22px;border-bottom:1px solid #edf0ea}td{font-size:12px;line-height:1.5}tr:last-child td{border-bottom:0}td small{display:block;color:var(--muted);margin-top:5px}td button{font-size:11px!important}.badge{display:inline-block;padding:5px 8px;font-size:10px;border-radius:4px;background:#edf3ed;color:#3f6c50;white-space:nowrap}.badge.warn{background:#fbefdf;color:#9a6834}.badge.red{background:#f8e8e3;color:#ac5e4e}.badge.neutral{background:#eef0ed;color:#768178}.progress{height:5px;background:#e9eee8;border-radius:9px;overflow:hidden;margin:9px 0}.progress i{display:block;height:100%;background:#629273}.issue{padding:17px 0;border-bottom:1px solid var(--line)}.issue:last-child{border:0}.issue p{font-size:12px;margin:6px 0}.issue small{font-size:10px;color:var(--muted)}.toolbar{display:flex;gap:12px;margin-bottom:20px;align-items:center;flex-wrap:wrap}input,textarea{border:1px solid var(--line);padding:11px;border-radius:5px;background:white;color:var(--ink)}input[type=search]{min-width:280px}.table-wrap{overflow:auto}.item-name{max-width:320px}.step{padding:20px 23px;border-bottom:1px solid var(--line);display:flex;gap:18px;align-items:flex-start}.step-content{flex:1}.step p{font-size:12px;margin:8px 0}.step small{font-size:10px;color:var(--muted)}.step-buttons{display:flex;gap:6px}.count{color:var(--muted);font-size:12px}.export-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.export-grid .panel-body{min-height:220px;display:flex;flex-direction:column}.export-grid a{margin-top:auto;align-self:flex-start}footer{padding:18px 42px;border-top:1px solid var(--line);color:var(--muted);font-size:10px;display:flex;justify-content:space-between}dialog{width:530px;max-width:90vw;border:0;border-radius:10px;padding:28px;box-shadow:0 25px 100px #102f2840}dialog::backdrop{background:#102f2860}.dialog-top{display:flex;justify-content:space-between;align-items:center}dialog label{display:block;font-size:12px;margin:20px 0}dialog textarea,dialog select{width:100%;margin-top:9px}.confirm-dialog h2{margin-bottom:6px}.confirm-dialog p{margin:10px 0}.confirm-warn{color:#8a5426;background:#fbefdf;padding:10px 12px;border-radius:5px}.confirm-actions{justify-content:flex-end;margin:22px 0 0}#form-error{color:#a34733}#toast{position:fixed;bottom:30px;right:30px;background:var(--ink);color:white;padding:16px 22px;border-radius:6px;display:none}button:disabled{opacity:.45;cursor:default}:focus-visible{outline:3px solid #c19845;outline-offset:3px}@media(max-width:1100px){aside{width:200px}.shell{margin-left:200px}main{padding:28px 24px}.columns{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}header{padding:0 24px}.export-grid{grid-template-columns:1fr}}@media(max-width:720px){aside{position:static;width:100%;padding:18px}.workspace,.aside-bottom{display:none}nav{display:flex;overflow:auto;margin-top:16px}nav a{white-space:nowrap;margin:0;padding:10px;font-size:12px}nav b{display:none}.shell{margin:0}header{height:auto;padding:16px;gap:15px;flex-wrap:wrap}.notice{padding:12px 20px}.heading{gap:20px;align-items:flex-start}h1{font-size:26px}.stats{gap:10px}.stat{padding:17px}.step{flex-wrap:wrap}.step-buttons{width:100%}main{padding:25px 18px}footer span{display:none}}

progress{display:block;width:100%;height:5px;border:0;margin:12px 0;accent-color:#629273}progress::-webkit-progress-bar{background:#e9eee8}progress::-webkit-progress-value{background:#629273}

[hidden]{display:none!important}

.upload-grid{display:grid;grid-template-columns:1fr 1.5fr auto;gap:18px;align-items:end}.upload-grid label,.review-grid label,.commit-box>label{display:flex;flex-direction:column;gap:8px;font-size:12px;text-transform:capitalize}.upload-grid input{width:100%}.review-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.review-grid input{width:100%;min-width:0}.review-row{border:1px solid var(--line);border-radius:6px;padding:20px;margin:16px 0;background:#fafbf8}.check{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;text-transform:none!important}.commit-box{background:#eef3eb;padding:24px;margin-top:24px;border-radius:6px}.commit-box label{margin:18px 0}.commit-box input:not([type=checkbox]){max-width:450px}.import-warning{color:#936530}pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:300px;overflow:auto;background:#f3f5f0;padding:16px;font-size:12px}details{margin-bottom:24px}summary{cursor:pointer;color:var(--green)}.section-title{margin:26px 0 18px}#commit-error{color:#a34733}@media(max-width:1000px){.upload-grid{grid-template-columns:1fr}.review-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:550px){.review-grid{grid-template-columns:1fr}}

.ai-panel{max-width:950px}.ai-label{display:flex;flex-direction:column;gap:10px;font-size:12px;margin-bottom:12px}.key-line{display:flex;gap:10px;flex-wrap:wrap}.key-line input{flex:1;min-width:200px}.ai-test,.ai-upload{border-top:1px solid var(--line);padding-top:22px;margin:22px 0}.ai-upload{border-top:0;padding-top:0}.ai-test .toolbar{margin-top:18px}.ai-upload select{max-width:370px}.ai-panel p a,.ai-upload p a{text-decoration:underline;color:var(--green)}.ai-summary,.source-quote{background:#eef3eb;padding:12px;border-radius:5px}.source-quote:empty{display:none}#ai-status{color:var(--ink)}aside{overflow-y:auto}

.processing-options{margin:20px 0}.processing-options .review-grid{margin-top:18px}.job-card{padding:24px;border-bottom:1px solid var(--line)}.job-card h3{margin:0}.job-card details{margin-bottom:0}.job-card p{overflow-wrap:anywhere}.batch-row{padding:12px;border-bottom:1px solid var(--line)}.batch-row p{margin:4px 0}.job-card .toolbar{margin-bottom:12px}#jobs-error{color:#a34733;margin:12px 24px}#review-save-status{margin:0 0 16px}

/* Help centre */
.help-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px}.help-tabs a{margin:0;color:var(--ink);border:1px solid var(--line);background:white}.help-tabs a[aria-current]{background:var(--green);color:white}.help-intro{background:#eaf2e9}.help-intro h2{font-size:28px;max-width:600px}.help-intro p{max-width:680px}.help-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.help-cards a:hover{border-color:var(--green)}.help-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;align-items:start}.help-contents{position:sticky;top:16px}.help-contents a{color:var(--ink);padding:10px 0;margin:0;line-height:1.5}.help-article{scroll-margin-top:24px}.help-article p,.help-intro p,.help-cards p,.help-faq p{line-height:1.75}.help-note{padding:16px;background:#f2f5ef;border-left:3px solid #91b594;margin:18px 0;line-height:1.65}.help-search{display:grid;grid-template-columns:2fr 1fr;gap:18px}.help-faq{border-top:1px solid var(--line);padding:18px 0;scroll-margin-top:24px}.help-faq summary{cursor:pointer;font-weight:600;line-height:1.6}.help-faq>div{padding:18px 8px 0}.help-faq a,.context-help a,.help-checklist a{color:var(--green);text-decoration:underline;text-underline-offset:3px}.help-checklist ol{display:flex;flex-wrap:wrap;gap:12px 32px;padding-left:22px;line-height:1.8}.help-checklist h2{margin:0}.help-tabs a:focus-visible,.help-contents a:focus-visible,.help-faq summary:focus-visible,.help-cards a:focus-visible{outline:3px solid #ac632d;outline-offset:3px}aside nav#nav{overflow-y:auto;min-height:0}.context-help{line-height:1.6}@media(max-width:900px){.help-layout{grid-template-columns:1fr}.help-contents{position:static}.help-cards{grid-template-columns:1fr}}@media(max-width:600px){.help-search{grid-template-columns:1fr}.help-intro h2{font-size:23px}.help-tabs a{padding:10px}.help-checklist ol{display:block}}

.help-search label{display:flex;flex-direction:column;align-items:stretch;gap:8px}.help-search input,.help-search select{width:100%;min-width:0}.header-help{color:var(--green);text-decoration:underline;margin-left:auto;margin-right:20px}
td:first-child{min-width:150px;overflow-wrap:anywhere}

/* GT dark theme. Overrides the base rules above; colours follow the redesign concept (GT purple #4F2D7F). */
:root{--ink:#FFFFFF;--muted:#C4B8D6;--green:#4F2D7F;--line:#3A2A5A;--bg:#140B22;--orange:#FFC23D;--surface:#1F1433;--surface2:#24183A;--deep:#2E1A4C;--edge:#5A4785;--amber:#FFC23D;--lilac:#B79BE6;--teal:#3FC6D1;--coral:#FF8A65}
body{background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:15px}
a:hover{color:#E7DDF5}
aside{background:#0F0819;color:var(--muted)}
.brand{color:#FFFFFF}.brand>span:last-child{color:var(--lilac)}
.logo{background:var(--green);color:#FFFFFF;font-weight:800}
.workspace,.aside-bottom div{color:#9A8DB2}
nav a{color:var(--muted)}nav a.active{background:var(--deep);color:#FFFFFF;font-weight:700}nav a:hover{background:#24183A;color:#FFFFFF}
.status-dot{background:var(--teal)}
header{background:var(--bg);border-bottom-color:#2A1C45;font-size:13px}
.notice{background:#2E1F12;color:#FFE2A8}
footer{border-top-color:#2A1C45}
h1{font-weight:800}h2{font-weight:700}p{color:var(--muted)}
.eyebrow{color:var(--lilac)}
select,input,textarea{background:var(--bg);color:#FFFFFF;border-color:var(--edge)}
select{min-height:44px}
.primary,.secondary,.ghost{color:#FFFFFF;border-color:var(--edge);background:transparent;font-weight:600;min-height:44px}
.primary{background:#FFFFFF;color:#2E1A4C;border-color:#FFFFFF;font-weight:700}
.primary:hover{background:#EDE6F7;color:#2E1A4C}
.secondary:hover,.ghost:hover{background:var(--surface2)}
a.primary,a.secondary{display:inline-flex;align-items:center;justify-content:center}
.stat,.panel{background:var(--surface);border-color:transparent;border-radius:14px}
.panel-head{border-bottom-color:var(--line)}
th{background:var(--surface2);color:var(--muted)}
td,th{border-bottom-color:#2A1C45}
.badge{background:var(--teal);color:#062A2E;font-weight:700;letter-spacing:.3px}
.badge.warn{background:var(--amber);color:#3A2600}
.badge.red{background:var(--coral);color:#3D1205}
.badge.neutral{background:var(--line);color:#FFFFFF}
.progress{background:var(--line)}.progress i{background:var(--lilac)}
progress{accent-color:var(--lilac);height:6px}
progress::-webkit-progress-bar{background:var(--line);border-radius:3px}
progress::-webkit-progress-value{background:var(--lilac);border-radius:3px}
.step,.issue{border-bottom-color:#2A1C45}
dialog{background:var(--surface);color:#FFFFFF;border:1px solid var(--line);box-shadow:0 30px 90px #000000}
dialog::backdrop{background:#0A0512cc}
.confirm-warn{color:#FFE2A8;background:#2E1F12}
#form-error,#commit-error,#jobs-error{color:#FFB59E}
#toast{background:#FFFFFF;color:#2E1A4C;font-weight:600}
:focus-visible{outline-color:var(--amber)}
.review-row{background:var(--surface2);border-color:var(--line)}
.commit-box,.ai-summary,.source-quote{background:var(--surface2);color:#FFFFFF}
.import-warning{color:#FFE2A8}
pre{background:var(--bg);color:#DCD0EC}
.help-tabs a{color:#FFFFFF;border-color:var(--edge);background:transparent}
.help-tabs a[aria-current]{background:#FFFFFF;color:#2E1A4C}
.help-intro{background:var(--deep)}
.help-note{background:var(--surface2);border-left:0;border-radius:8px}
.help-tabs a:focus-visible,.help-contents a:focus-visible,.help-faq summary:focus-visible,.help-cards a:focus-visible{outline-color:var(--amber)}
.job-card{background:var(--surface2);border-radius:12px}

/* Home page: hero, card rows and ranked attention list. */
.hero{background:var(--green);border-radius:16px;padding:48px;display:flex;flex-wrap:wrap;gap:32px 40px;align-items:center;justify-content:space-between;margin-bottom:44px}
.hero-copy{flex:1 1 480px;min-width:0;display:flex;flex-direction:column;gap:16px}
.hero h1{font-size:48px;line-height:1.05;letter-spacing:-1.5px;margin:0}
.hero p{color:#EDE6F7;font-size:18px;margin:0;max-width:560px}
.tags{display:flex;flex-wrap:wrap;gap:8px}
.tag{font-size:12px;font-weight:700;padding:6px 10px;border-radius:4px;background:var(--deep);color:#FFFFFF;letter-spacing:.3px}
.tag.light{background:#FFFFFF;color:#2E1A4C}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}
.hero-actions a{min-height:52px;padding:0 24px;font-size:16px}
.hero-actions .secondary{background:var(--deep);border-color:var(--deep)}
.hero-stats{flex:0 1 360px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.hero-stats div{background:var(--deep);border-radius:10px;padding:18px}
.hero-stats strong{display:block;font-size:36px;font-weight:800}
.hero-stats span{font-size:13px;color:#DCD0EC}
.section-row{margin-bottom:44px}
.section-row>h2{font-size:24px;margin:0 0 18px}
.card-row{display:flex;gap:18px;overflow-x:auto;padding-bottom:8px}
.item-card{flex:0 0 260px;background:var(--surface);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.item-tile{height:130px;padding:16px;display:flex;flex-direction:column;justify-content:space-between}
.tile-framework{font-size:12px;font-weight:700;letter-spacing:.6px;text-transform:uppercase}
.tile-attribute{font-size:30px;font-weight:800;letter-spacing:-.5px;line-height:1.05}
.tile-0{background:var(--amber);color:#3A2600}.tile-1{background:var(--lilac);color:#24123F}.tile-2{background:var(--teal);color:#062A2E}.tile-3{background:var(--coral);color:#3D1205}.tile-4{background:var(--line);color:#FFFFFF}
.item-body{padding:14px 16px 18px;display:flex;flex-direction:column;gap:6px}
.item-body h3{margin:0;font-size:16px}.item-body small{color:var(--muted);font-size:13px}
.rank-row{display:flex;gap:24px;overflow-x:auto;padding-bottom:8px}
.rank-card{flex:0 0 340px;display:flex;align-items:flex-end}
.rank{font-size:140px;font-weight:800;line-height:.8;color:var(--bg);-webkit-text-stroke:3px #8C6BC8;letter-spacing:-8px}
.rank-body{flex:1;margin-left:-16px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:8px;min-height:160px}
.rank-body b{font-size:16px}.rank-body p{margin:0;font-size:14px}
.rank-body .secondary{margin-top:auto;align-self:flex-start}
.rank-body .badge,.item-body .badge{align-self:flex-start}
.card-row,.rank-row{scrollbar-color:var(--edge) transparent}
/* The base rules use --green for link text; it now holds GT purple, so links get a light tint instead. */
summary,.ai-panel p a,.ai-upload p a,.help-faq a,.context-help a,.help-checklist a,.header-help{color:#D9CBF0}
.completion-strip{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between;background:var(--surface);border-radius:14px;padding:22px 24px}
.completion-strip p{margin:0}
.blocker-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:24px}
.blocker-grid a{background:var(--surface);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:6px;min-height:130px}
.blocker-grid strong{font-size:40px;font-weight:800;line-height:1}
.blocker-grid span{font-weight:700}.blocker-grid small{color:var(--muted)}

/* Five-step menu and the next-step card. */
.nav-step{margin:14px 0 4px}
.nav-step .step-link{font-weight:700;color:#FFFFFF;margin-bottom:2px}
.step-num{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--line);font-size:11px;font-weight:800;margin-right:-4px}
.nav-step.current .step-num{background:var(--lilac);color:#24123F}
.nav-sub a{padding:9px 14px 9px 44px;margin-bottom:2px;font-size:13px}
.next-card{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center;justify-content:space-between;background:var(--deep);border:1px solid var(--edge);border-radius:14px;padding:20px 24px;margin-bottom:28px}
.next-card.done{background:#10302F;border-color:#2C6E72}
.next-copy{flex:1 1 420px;min-width:0}
.next-copy h2{font-size:20px;margin:0 0 6px}
.next-copy p{margin:0;font-size:14px}
.next-card .eyebrow{margin-bottom:6px}
.next-card .primary{min-height:48px;padding:0 22px}
.sub-tabs{display:none}
@media(max-width:720px){
 body{padding-bottom:84px}
 aside{position:fixed;inset:auto 0 0 0;width:auto;height:auto;padding:6px 6px 10px;z-index:20;border-top:1px solid #2A1C45}
 aside .brand,aside .workspace,aside .aside-bottom{display:none}
 nav{margin:0;gap:2px}
 nav a{flex:0 0 auto;flex-direction:column;align-items:center;gap:4px;min-width:72px;min-height:56px;justify-content:center;padding:6px 8px;font-size:11px;white-space:nowrap}
 nav b{display:block;font-size:16px;width:auto}
 nav{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));overflow:visible}
 .nav-step{margin:0}.nav-sub,.step-num{display:none}
 nav a{min-width:0}
 .nav-step.current .step-link{background:var(--deep);color:#FFFFFF}
 .sub-tabs{display:flex;gap:8px;overflow-x:auto;margin-bottom:18px}
 .sub-tabs a{flex:none;min-height:44px;display:inline-flex;align-items:center;padding:0 16px;border-radius:22px;border:1px solid var(--edge);font-size:14px}
 .sub-tabs a[aria-current]{background:#FFFFFF;color:#2E1A4C;border-color:#FFFFFF;font-weight:700}
 .hero{padding:24px 20px}.hero h1{font-size:30px;letter-spacing:-.5px}.hero p{font-size:15px}
 .hero-actions a{flex:1 1 100%}
 .hero-stats{flex:1 1 100%}
 .item-card{flex-basis:200px}.item-tile{height:100px}.tile-attribute{font-size:24px}
 .rank-row{flex-direction:column;overflow:visible}
 .rank-card{flex:1 1 auto;align-items:center}.rank{font-size:56px;-webkit-text-stroke-width:2px;letter-spacing:0;width:40px;text-align:center}.rank-body{margin-left:8px;min-height:0}
}

/* Review of extracted disclosures: search, summary for source checking, and links to rows with problems. */
.review-tools input[type=search]{flex:1 1 320px}
.view-switch{display:inline-flex;gap:6px}
.review-entity{margin-bottom:18px}
.review-summary td,.review-summary th{vertical-align:top;padding:12px 10px}
.review-summary td:nth-child(-n+3),.review-summary th:nth-child(-n+3){width:1%;white-space:nowrap}
.review-summary td:nth-child(5){min-width:220px}
.review-summary .quote{font-style:italic;max-width:440px}
.source-link{text-decoration:underline;color:#D9CBF0}
.review-summary tr.focused td,.review-row.focused{outline:2px solid var(--amber);outline-offset:-2px}
.problem-list{background:var(--surface2);border-radius:8px;padding:14px 18px;margin-top:12px}
.problem-list p{margin:0 0 8px}
.problem-list ul{margin:0;padding-left:18px;max-height:260px;overflow:auto}
.problem-list a{color:#FFB59E;text-decoration:underline}

/* Info buttons beside field labels and the tip they open. */
.info-tip{display:inline-grid;place-items:center;width:20px;height:20px;min-width:20px;padding:0;margin-left:6px;border-radius:50%;border:1px solid var(--edge);background:transparent;color:var(--muted);font:italic 700 12px Georgia,serif;line-height:1;vertical-align:middle;text-transform:none;cursor:help;position:relative}
.info-tip::after{content:'';position:absolute;inset:-8px}
.info-tip:hover,.info-tip[aria-expanded=true]{color:#FFFFFF;border-color:var(--lilac);background:var(--deep)}
.label-text{display:inline}
.field-tip{position:fixed;inset:auto;margin:0;width:min(320px,calc(100vw - 16px));background:var(--surface);color:#FFFFFF;border:1px solid var(--edge);border-radius:10px;padding:14px 16px;font-size:13px;line-height:1.55;text-align:left;text-transform:none;letter-spacing:0;box-shadow:0 18px 50px #00000080;z-index:1000;overflow:visible}
.field-tip h3{font-size:14px;margin:0 0 6px}
.field-tip p{margin:0 0 6px;color:#DCD0EC;font-size:13px}
.field-tip b{color:#FFFFFF}
.tip-tag{display:inline-block;font-size:11px;font-weight:700;padding:2px 8px;border-radius:4px;background:#2E1F12;color:#FFE2A8;margin-bottom:8px}
.tip-foot{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:8px;font-size:12px;color:var(--muted)}
.tip-foot a{color:#D9CBF0;text-decoration:underline}
th .info-tip{margin-left:4px}

/* Engagement setup, step 3: coverage cards, topic checklist, echoes and warnings. */
.choice-group{border:0;padding:0;margin:8px 0 20px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.choice-group legend{padding:0;margin-bottom:10px;font-size:12px;color:var(--muted)}
.choice-card{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px;margin:0!important;padding:16px;border:1px solid var(--edge);border-radius:10px;background:var(--surface2);text-transform:none!important;cursor:pointer}
.choice-card:has(input:checked){border-color:var(--lilac);background:var(--deep)}
.choice-card input{margin-top:3px;accent-color:var(--lilac)}
.choice-card strong{display:block;color:#FFFFFF;font-size:14px;margin-bottom:4px}
.choice-card small{color:var(--muted);font-size:12px;line-height:1.45}
.topic-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px 16px;margin:8px 0}
.topic-grid .check{margin:6px 0;font-size:13px;color:#FFFFFF}
.scope-subhead{margin:28px 0 0;font-size:16px}
.scope-grid{grid-template-columns:1fr 3fr}
.scope-echo{margin:0 0 8px;color:var(--lilac);font-size:13px}
.report-facts{margin:24px 0 8px;padding:16px 20px;border-radius:10px;background:var(--surface2)}
.report-facts h3{margin:0 0 8px;font-size:14px}
.fact-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.fact-row p{margin:6px 0;color:#FFFFFF;overflow-wrap:anywhere}
.report-facts .hint{font-size:12px;margin:8px 0 0}
.scope-warning{margin:20px 0 8px;padding:16px 20px;border-radius:10px;background:#2E1F12}
.scope-warning h3{margin:0 0 4px;font-size:14px;color:#FFE2A8}
.scope-warning .check{align-items:flex-start;margin:10px 0;color:#FFE2A8;font-size:13px}
.scope-warning .check input{margin-top:3px}
#setup-error{color:#FFB59E}
[data-stage="2"]>label,#cov-part label,#cov-topics>label,#boundary-other-wrap label,#period-custom label,.scope-grid label{display:flex;flex-direction:column;gap:8px;margin:16px 0;text-transform:none}
[data-stage="2"]>label input,[data-stage="2"]>label select,#cov-part input,#cov-topics textarea,#boundary-other-wrap input,.scope-grid input,.scope-grid select{width:100%;max-width:720px}
.coverage-check{border-left:4px solid var(--amber)}
.coverage-check h3{font-size:14px;margin:16px 0 4px}
.coverage-check li:has(>details){list-style:none;margin-left:-18px}.coverage-check details{margin:4px 0}.coverage-check details ul{margin:6px 0 10px;color:var(--muted);font-size:13px}
@media(max-width:900px){.choice-group,.topic-grid{grid-template-columns:1fr}.scope-grid{grid-template-columns:1fr}}
/* Reports & data: the review heading clears the sticky header when scrolled to; older reports sit in a closed list. */
#review-heading,#confirm-import-box{scroll-margin-top:96px}#review-heading:focus{outline:none}
.history>summary{padding:18px 24px;cursor:pointer}.history>summary .count{margin-left:10px}.history[open]>summary{border-bottom:1px solid var(--line)}
/* Header engagement switch, step 1 order, review status bar. */
.ws-switch{display:flex;align-items:center;gap:10px;color:var(--muted)}.ws-switch select{max-width:min(360px,60vw)}
.upload-grid.upload-first{grid-template-columns:1fr 1.5fr;margin-bottom:18px}.upload-go{margin-top:8px;gap:16px}
.setup-banner{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center}
.review-panel{overflow:visible}
.review-bar{position:sticky;bottom:12px;z-index:5;display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;justify-content:space-between;margin:20px 0;padding:12px 16px;border:1px solid var(--edge,#3b2a5c);border-radius:12px;background:var(--deep,#1b1130);box-shadow:0 10px 30px #00000060}
.warn-text{color:var(--amber,#e0a040)}
@media(max-width:720px){.upload-grid.upload-first{grid-template-columns:1fr}.review-bar{bottom:84px}.review-bar button{width:100%}}
.upload-go a{color:#D9CBF0;text-decoration:underline}
.setup-summary{margin:14px 0;padding:12px 14px;border:1px solid var(--line, #4B3A73);border-radius:10px}.setup-summary p{margin:0 0 6px}
.review-summary th .select-all{margin-right:6px;vertical-align:middle}
.setup-summary a{text-decoration:underline}
.new-engagement-note a{text-decoration:underline}
/* Notes the reviewer has confirmed by ticking Checked, and the import check's result at step 3. */
.confirmed-note{color:var(--muted,#b9b0d0);display:block}
.problem-list.ready{border-left:3px solid #7fd6a3}
.problem-list details{margin:8px 0}
.problem-list details .toolbar{margin:8px 0}
.problem-list .hint{font-size:13px;margin:4px 0 8px}
/* Setup step 3: start from the report, fields filled from it, and the checklist groups. */
.start-report{margin:0 0 24px;padding:16px 20px;border:1px dashed var(--edge);border-radius:10px;background:var(--surface2)}
.start-report h3{margin:0 0 6px;font-size:14px}.start-report p{margin:6px 0}
.from-report{font-size:12px;color:var(--teal,#3FC6D1);margin:4px 0 12px}.from-report a{text-decoration:underline}
.topic-group{border:1px solid var(--line);border-radius:10px;padding:10px 16px;margin:10px 0}
.topic-group summary{color:#FFFFFF}.topic-group .topic-list{margin-top:10px}
/* Reports & data: a report that is already uploaded comes first and the upload form is tucked away. */
#upload-panel.tucked form{display:none}
#upload-panel.tucked .panel-head p{display:none}
.ready-report{border-color:var(--lilac)}
