/* DD Compliance — identity v1.0. Copper uses navy text for accessible contrast. */
:root{--dd-navy:#151F6D;--dd-copper:#C58B68;--dd-white:#FFFFFF;--dd-beige:#E0C6AD;--ink:#252A3D;--muted:#606579;--line:#D8DBE3;--surface:#F5F6F9;--danger:#8C253A;--radius:8px;--space:1rem;--font-body:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-heading:Georgia,"Times New Roman",serif}
*{box-sizing:border-box}body{margin:0;font:1rem/1.6 var(--font-body);color:var(--ink);background:var(--surface)}a{color:var(--dd-navy);text-underline-offset:4px}h1,h2,h3{color:var(--dd-navy);line-height:1.2}h1{font:400 clamp(2rem,3vw,3rem)/1.2 var(--font-heading);margin:.5rem 0 1rem}h2{font-size:1.35rem;margin:0 0 1rem}p{margin:.5rem 0 1rem}small,.muted{color:var(--muted);font-size:.875rem}small{display:block}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.875rem;font-weight:650;margin-top:1.5rem}.intro{color:var(--muted);margin-bottom:2rem}.shell{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--dd-navy);color:white;padding:1.5rem;display:flex;flex-direction:column}.brand{height:110px;overflow:hidden;position:relative}.brand img{position:absolute;width:130%;max-width:none;left:-15%;top:50%;transform:translateY(-50%)}.sidebar .eyebrow{color:var(--dd-beige);font-size:.75rem;margin:0 0 2rem}.sidebar nav{display:grid;gap:.5rem}.sidebar nav a{color:white;text-decoration:none;padding:.8rem 1rem;border-radius:4px;border-left:3px solid transparent}.sidebar nav a[aria-current]{background:rgba(255,255,255,.1);border-left-color:var(--dd-copper)}.sidebar-bottom{margin-top:auto;padding-top:3rem}.sidebar-bottom small{color:var(--dd-beige)}.workspace{min-width:0}.topbar{display:flex;justify-content:space-between;gap:1rem;background:white;border-bottom:1px solid var(--line);padding:1rem 2.5rem;font-size:.875rem;color:var(--muted)}.topbar span{color:var(--dd-navy);font-weight:600}main:not(.guest){max-width:1280px;padding:2.5rem;margin:auto}footer{padding:1.5rem 2.5rem;color:var(--muted);font-size:.875rem}.card{display:block;background:white;border:1px solid var(--line);border-radius:var(--radius);padding:1.75rem;margin:1.5rem 0}.company-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:1.5rem}.company-card{margin:0 0 1.5rem;text-decoration:none;border-top:3px solid var(--dd-copper)}.company-card h2{margin-top:1.5rem}.company-card p{color:var(--muted)}.card-link{font-size:.875rem;font-weight:600}.badge{display:inline-block;background:var(--dd-beige);color:var(--dd-navy);padding:.3rem .75rem;border-radius:4px;font-size:.875rem}.empty{padding:2rem 0;color:var(--muted)}.list-row{display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:1rem 0;border-bottom:1px solid var(--line);text-decoration:none}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 1.5rem}label{display:block;font-size:.875rem;font-weight:600;margin:1rem 0 .4rem}input,textarea,select{font:inherit;width:100%;padding:.7rem .85rem;border:1px solid #9097AC;border-radius:5px;color:var(--ink);background:white;min-height:46px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:3px solid var(--dd-navy);outline-offset:3px}.button{display:inline-block;padding:.75rem 1.2rem;border:1px solid transparent;border-radius:5px;font:600 .9375rem/1.5 var(--font-body);cursor:pointer;margin-top:1.5rem;text-decoration:none;min-height:46px}.primary{background:var(--dd-copper);color:var(--dd-navy)}.primary:hover{background:var(--dd-beige)}.secondary{background:white;color:var(--dd-navy);border-color:var(--dd-navy)}.on-dark{background:transparent;color:white;border-color:var(--dd-beige)}.button:disabled{background:#E3E5EA;color:#656B7A;cursor:not-allowed}.button:focus-visible,a:focus-visible{outline:3px solid var(--dd-copper);outline-offset:4px}.full{width:100%}.notice{border-left:4px solid var(--dd-navy);padding:1rem 1.25rem;background:var(--surface);margin:1rem 0}.error{border-left-color:var(--danger);color:var(--danger)}.notice ul{margin:.5rem 0;padding-left:1.25rem}.guest{min-height:100vh;display:grid;place-items:center;padding:2rem}.login{width:min(1080px,100%);display:grid;grid-template-columns:1fr 1fr;background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden;min-height:740px}.login-brand{background:var(--dd-navy);padding:3rem;color:white;display:flex;flex-direction:column;justify-content:space-between}.login-brand .brand{height:160px;margin:-2rem -1rem 1rem}.login-brand h1{color:white;font-size:2.8rem}.login-brand .eyebrow{color:var(--dd-beige)}.login-brand p{max-width:350px}.brand-foot{color:var(--dd-beige);font-size:.875rem;padding-top:3rem}.login-form{padding:3rem}.login-form h2{font:400 2.1rem/1.2 var(--font-heading)}.login-form>p{color:var(--muted)}.help{font-size:.875rem;margin-top:1.5rem}.privacy-note{border-top:1px solid var(--line);padding-top:1.25rem;font-size:.875rem;color:var(--muted);margin-top:1.75rem}.swatches{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.swatch{padding:2rem 1rem;border:1px solid var(--line);border-radius:5px;font-size:.875rem}.navy{background:var(--dd-navy);color:white}.copper{background:var(--dd-copper);color:var(--dd-navy)}.white{background:white;color:var(--dd-navy)}.beige{background:var(--dd-beige);color:var(--dd-navy)}.actions{display:flex;gap:1rem;flex-wrap:wrap;align-items:baseline}.skip-link{position:fixed;top:-100px;left:1rem;background:white;padding:1rem;z-index:100}.skip-link:focus{top:1rem}
@media(max-width:800px){.shell{grid-template-columns:1fr}.sidebar{padding:1rem 1.5rem}.sidebar .brand{height:75px;width:220px}.sidebar .eyebrow{display:none}.sidebar nav{display:flex;flex-wrap:wrap;gap:.25rem}.sidebar-bottom{margin:0;padding-top:1rem;display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.sidebar-bottom p{margin:0}.sidebar-bottom .button{margin:0}.topbar{padding:1rem 1.5rem}main:not(.guest){padding:1.5rem}.login{grid-template-columns:1fr;min-height:0}.login-brand{padding:1.5rem}.login-brand .brand{height:110px;width:280px;margin:-1rem 0}.login-brand h1{font-size:2rem}.brand-foot{display:none}.login-form{padding:1.5rem}.guest{padding:1rem}.swatches{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.list-row{flex-wrap:wrap}.card{padding:1.25rem}footer{padding:1.5rem}}
@media print{.sidebar,.topbar,.button{display:none}.shell{display:block}body{background:white}.card{break-inside:avoid}h1,h2{color:var(--dd-navy)}}

.review-confirmation{display:flex;align-items:flex-start;gap:.75rem}.review-confirmation input{width:1.25rem;min-height:1.25rem;flex-shrink:0;margin-top:.25rem}

main.survey-page{max-width:900px;margin:auto;padding:32px 20px}.survey-question{border:0;border-top:1px solid #E0C6AD;padding:24px 0;margin:16px 0;min-width:0}.survey-question legend{font-weight:600;padding:0 0 12px}.survey-option{display:flex;align-items:center;gap:12px;margin:8px 0;padding:8px}.survey-option input{width:20px;height:20px;flex-shrink:0}.survey-page textarea{width:100%;box-sizing:border-box}
.survey-progress{font-weight:700;color:var(--dd-navy);margin:1.5rem 0 0}.survey-navigation{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin:1.5rem 0}.survey-navigation .button{margin-top:0}.survey-navigation [data-survey-next],.survey-navigation [data-survey-submit]{margin-left:auto}.survey-step[hidden],.survey-navigation [hidden]{display:none!important}@media(max-width:800px){.survey-navigation{align-items:stretch;flex-wrap:wrap}.survey-navigation .button{flex:1}.survey-navigation [data-survey-next],.survey-navigation [data-survey-submit]{margin-left:0}}
.survey-confidentiality{border-left:4px solid var(--dd-copper);background:var(--dd-white);padding:1rem 1.25rem;color:var(--ink);font-size:.9rem}

.result-metrics,.result-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.result-metrics .card,.result-highlights .card{margin:1rem 0}.result-number{font:400 3rem/1.2 var(--font-heading);color:var(--dd-navy)}.result-number small{display:inline;font:1rem var(--font-body)}.axis-row{display:grid;grid-template-columns:minmax(160px,1fr) minmax(0,1.4fr);gap:1.5rem;padding:1rem 0;border-bottom:1px solid var(--line)}.axis-title{display:block;font-size:.875rem;color:var(--muted)}.axis-bar{display:block;width:100%;height:18px}.chart-track{fill:var(--dd-beige)}.chart-value{fill:var(--dd-navy)}.axis-value{margin:.5rem 0}.result-filter select{max-width:100%}.result-question{padding:1.5rem 0;border-top:1px solid var(--line);overflow-wrap:anywhere}.response-distribution{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin:1rem 0}.response-distribution p{margin:0;background:var(--surface);padding:.75rem;border-top:3px solid var(--dd-copper)}.response-distribution span,.response-distribution strong{display:block}.option-percentages{display:flex;gap:1.5rem;flex-wrap:wrap}.option-percentages dd{margin:0;font-weight:600}summary{cursor:pointer;color:var(--dd-navy)}@media(max-width:800px){.result-metrics,.result-highlights{grid-template-columns:1fr;gap:0}.axis-row{grid-template-columns:1fr;gap:.5rem}.result-number{font-size:2.5rem}}
.comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.comparison-grid article{padding:1rem;background:var(--surface);border-top:3px solid var(--dd-copper)}.table-wrap{overflow-x:auto}.table-wrap table{width:100%;border-collapse:collapse;min-width:720px}.table-wrap th,.table-wrap td{text-align:left;vertical-align:top;padding:.75rem;border-bottom:1px solid var(--line)}.trend{display:inline-block;padding:.2rem .55rem;border-radius:4px;font-size:.875rem;font-weight:600}.trend.improved{background:#DCEFE1;color:#1F6234}.trend.stable{background:var(--dd-beige);color:var(--dd-navy)}.trend.worsened{background:#F5DDE1;color:var(--danger)}@media(max-width:800px){.comparison-grid{grid-template-columns:1fr}}
.client-logo-preview{display:block;max-width:220px;max-height:100px;object-fit:contain;margin:1rem 0}.report-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.report-toolbar .button{margin:0}.report-cover{min-height:72vh;background:var(--dd-navy);color:white;padding:3rem;display:flex;flex-direction:column}.report-logos{display:flex;align-items:center;justify-content:space-between;gap:2rem}.report-logos img{width:155px;height:80px;object-fit:contain}.report-logos .report-client-logo{background:white;border-radius:6px;padding:.35rem}.report-client-logo-placeholder{width:155px;height:62px;display:grid;place-items:center;border:1px solid var(--dd-beige);border-radius:6px;color:var(--dd-beige);font-size:.75rem;text-align:center;text-transform:uppercase}.report-cover-content{margin:auto 0;text-align:center}.report-cover h1,.report-cover h2{color:white;max-width:900px;margin-left:auto;margin-right:auto}.report-cover h1{font-size:clamp(2.4rem,5vw,4.3rem)}.report-cover h2{font:400 1.4rem/1.4 var(--font-body);color:var(--dd-beige)}.report-client{font:400 2rem/1.2 var(--font-heading);color:var(--dd-beige);margin-top:4rem}.report-cover-content>p:last-child{margin-bottom:1.5rem}.report-action{padding:1rem 0;border-top:1px solid var(--line)}.report-action:first-of-type{border-top:0}.report-action h3{margin:.25rem 0 1rem}.report-action dl{display:grid;grid-template-columns:130px 1fr;gap:.55rem 1rem;margin:0}.report-action dt{font-weight:700;color:var(--dd-navy)}.report-action dd{margin:0}@media print{.report-toolbar{display:none}.report-cover{break-after:page;min-height:245mm;padding:25mm}.report-document .card{break-inside:avoid;box-shadow:none}.report-document h2{break-after:avoid}.table-wrap table{min-width:0;font-size:8pt}}@media(max-width:800px){.report-toolbar{align-items:flex-start;flex-direction:column}.report-logos{gap:1rem}.report-logos img,.report-client-logo-placeholder{width:125px}.report-action dl{grid-template-columns:1fr}.report-action dt{margin-top:.65rem}}
.client-logo-preview{display:block;max-width:220px;max-height:100px;object-fit:contain;margin:1rem 0}.report-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.report-toolbar .button{margin:0}.report-cover{min-height:72vh;background:var(--dd-navy);color:white;padding:3rem;display:flex;flex-direction:column}.report-logos{display:flex;align-items:center;justify-content:space-between;gap:2rem}.report-logos img{width:155px;height:80px;object-fit:contain}.report-logos .report-client-logo{background:white;border-radius:6px;padding:.35rem}.report-client-logo-placeholder{width:155px;height:62px;display:grid;place-items:center;border:1px solid var(--dd-beige);border-radius:6px;color:var(--dd-beige);font-size:.75rem;text-align:center;text-transform:uppercase}.report-cover-content{margin:auto 0;text-align:center}.report-cover h1,.report-cover h2{color:white;max-width:900px;margin-left:auto;margin-right:auto}.report-cover h1{font-size:clamp(2.4rem,5vw,4.3rem)}.report-cover h2{font:400 1.4rem/1.4 var(--font-body);color:var(--dd-beige)}.report-client{font:400 2rem/1.2 var(--font-heading);color:var(--dd-beige);margin-top:4rem}.report-cover-content>p:last-child{margin-bottom:1.5rem}.report-chart{break-inside:avoid}.report-axis-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(0,2fr);gap:1.25rem;padding:1rem 0;border-bottom:1px solid var(--line)}.report-axis-row:last-child{border-bottom:0}.report-axis-row span{display:block;color:var(--muted);font-size:.875rem}.report-axis-row svg{display:block;width:100%;height:22px}.report-axis-row p{margin:.35rem 0 0;font-weight:700}.report-highlights{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.report-highlights article{padding:.75rem 0;border-top:1px solid var(--line)}.report-highlights article p{margin:.2rem 0 .45rem}.report-action{padding:1rem 0;border-top:1px solid var(--line)}.report-action:first-of-type{border-top:0}.report-action h3{margin:.25rem 0 1rem}.report-action dl{display:grid;grid-template-columns:130px 1fr;gap:.55rem 1rem;margin:0}.report-action dt{font-weight:700;color:var(--dd-navy)}.report-action dd{margin:0}@media print{.report-toolbar{display:none}.report-cover{break-after:page;min-height:245mm;padding:25mm}.report-document .card{break-inside:avoid;box-shadow:none}.report-document h2{break-after:avoid}.table-wrap table{min-width:0;font-size:8pt}}@media(max-width:800px){.report-toolbar{align-items:flex-start;flex-direction:column}.report-logos{gap:1rem}.report-logos img,.report-client-logo-placeholder{width:125px}.report-axis-row,.report-action dl,.report-highlights{grid-template-columns:1fr}.report-action dt{margin-top:.65rem}}
