/* CSV Import Doctor, isolated from the other site templates. */
.csvd{--csvd-navy:#142d45;--csvd-teal:#117c78;--csvd-soft:#edf8f7;--csvd-line:#d8e4e9;--csvd-text:#1f3446;--csvd-muted:#506779;--csvd-card:#fff;color:var(--csvd-text);background:#fff;font-size:16px;line-height:1.65}
.csvd *{box-sizing:border-box}.csvd-container{max-width:1140px;margin:auto;padding:20px clamp(16px,3vw,32px) 90px}.csvd-crumb{font-size:.88rem;display:flex;gap:10px;align-items:center;margin:10px 0 30px;color:var(--csvd-muted)}.csvd-crumb a{color:var(--csvd-teal);text-decoration:underline;text-underline-offset:3px}
.csvd-hero{background:linear-gradient(120deg,#e5f5f2,#f6fafc 60%,#e7f2fc);border:1px solid #d5e8e9;border-radius:20px;padding:clamp(22px,4vw,42px);margin-bottom:32px}
.csvd-eyebrow{text-transform:uppercase;letter-spacing:.12em;color:#096b68;font-size:.82rem;font-weight:800;margin:0 0 10px}.csvd h1{color:#14324d;font-weight:800;font-size:clamp(2rem,4vw,3.15rem);line-height:1.15;letter-spacing:-.025em;margin:0 0 16px}.csvd-hero>p:not(.csvd-eyebrow){font-size:1.08rem;max-width:840px;margin:14px 0}.csvd-privacy{padding:12px 16px;border-left:4px solid var(--csvd-teal);background:rgba(255,255,255,.85);border-radius:8px;font-size:.94rem!important}
.csvd-workspace,.csvd-results,.csvd-guidance{border:1px solid var(--csvd-line);border-radius:18px;padding:clamp(18px,3vw,30px);margin:26px 0;background:var(--csvd-card);box-shadow:0 8px 30px rgba(15,45,68,.05)}.csvd-section-head{margin-bottom:18px}.csvd-section-head h2,.csvd-content h2{color:#173b56;line-height:1.25;font-size:clamp(1.35rem,2.4vw,1.8rem);margin:0 0 8px}.csvd-section-head p{margin:0;color:var(--csvd-muted)}.csvd-upload-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:#f4f9fb;border:1px dashed #97bac4;border-radius:13px;padding:16px}
.csvd-upload{display:flex;flex-direction:column;gap:2px;font-weight:750;color:#153c57}.csvd-upload span{font-size:.83rem;color:var(--csvd-muted);font-weight:400}.csvd-upload-row input{min-width:220px;max-width:100%;font:inherit;font-size:.9rem}.csvd-controls{display:grid;grid-template-columns:minmax(160px,1fr) minmax(160px,1fr) minmax(160px,.7fr);gap:16px;margin-top:19px}.csvd-controls label,.csvd-software-label{display:flex;flex-direction:column;gap:6px;font-size:.88rem;font-weight:700;color:#183a55}.csvd select{width:100%;border:1px solid #aac6cf;background:#fff;color:#1c364c;border-radius:9px;padding:10px 12px;font:inherit}.csvd-controls .csvd-check{flex-direction:row;align-items:center;align-self:center;gap:9px;font-weight:600}.csvd input[type=checkbox]{width:19px;height:19px;accent-color:var(--csvd-teal)}
.csvd-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:22px}.csvd-button{border-radius:9px;background:#0b7573;color:#fff;border:1px solid #0b7573;padding:11px 18px;font-size:.94rem;font-weight:750;line-height:1.35;cursor:pointer;transition:transform .15s,background .15s}.csvd-button:hover{background:#095d5c;transform:translateY(-1px)}.csvd-button:focus-visible,.csvd select:focus-visible,.csvd a:focus-visible,.csvd input:focus-visible{outline:3px solid #268dcd;outline-offset:3px}.csvd-outline{background:#fff;color:#0b6c69}.csvd-outline:hover{background:#eef8f6;color:#075957}.csvd-muted{font-size:.85rem;color:var(--csvd-muted)}.csvd a{color:#087674;text-decoration:underline;text-underline-offset:2px}.csvd #csvd-status{font-size:.84rem;color:#315b68}.csvd-results[hidden]{display:none!important}
.csvd-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0 22px}.csvd-metrics>div{border:1px solid #d7e7ea;border-radius:11px;background:#f5fafb;padding:15px;min-width:0}.csvd-metrics span{font-size:.84rem;color:var(--csvd-muted);display:block}.csvd-metrics strong{font-size:1.35rem;color:#133b56;overflow-wrap:anywhere}.csvd-results-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:18px}.csvd-card{border:1px solid var(--csvd-line);padding:20px;border-radius:14px;min-width:0}.csvd-card h3,.csvd-guide-panel h3{color:#153b56;font-size:1.17rem;margin:0 0 12px}.csvd-issue-list{list-style:none;padding:0;margin:12px 0;max-height:440px;overflow:auto}.csvd-issue{display:flex;flex-direction:column;gap:4px;border-left:3px solid #ca7c3e;padding:9px 11px;margin:7px 0;border-radius:4px;background:#fcf8f2;font-size:.82rem}.csvd-issue.csvd-high{border-color:#c34e45;background:#fff4f2}.csvd-issue.csvd-info{border-color:#6f99ad;background:#f6fafc}.csvd-issue-type{text-transform:uppercase;font-weight:750;letter-spacing:.07em;color:#536876;font-size:.68rem}.csvd-table-scroller{overflow:auto;border:1px solid var(--csvd-line);border-radius:9px;max-height:410px}.csvd-table-scroller table{border-collapse:collapse;min-width:400px;width:100%;font-size:.85rem}.csvd-table-scroller th{position:sticky;top:0;background:#eaf3f6;color:#16384f;text-align:left;z-index:1}.csvd-table-scroller td,.csvd-table-scroller th{padding:8px 10px;border-bottom:1px solid #e2ecef;white-space:pre-wrap;overflow-wrap:anywhere;min-width:90px;max-width:230px}.csvd-table-scroller tr:nth-child(even){background:#f9fcfd}
.csvd-guidance{background:#f5f9fc}.csvd-software-label{max-width:370px}.csvd-guide-panel{margin-top:16px;padding:20px;border-radius:12px;border:1px solid #cde3e6;background:#fff}.csvd-guide-panel p{margin:10px 0}.csvd-guide-panel ul{margin:10px 0 18px;padding-left:20px}.csvd-guide-panel li{margin:4px 0}.csvd-content{padding-top:15px;max-width:880px}.csvd-content h2{margin:32px 0 14px}.csvd-content h3{color:#184969;font-size:1.15rem;margin:24px 0 8px;font-weight:750}.csvd-content p{margin:12px 0}.csvd-content a{word-break:break-word}.csvd-content strong{font-weight:750}.csvd-content code{background:#e9f2f5;border-radius:4px;padding:1px 4px;color:#25415a}.csvd-content ul,.csvd-content ol{padding-left:23px}
@media(max-width:800px){.csvd-results-grid{grid-template-columns:1fr}.csvd-controls{grid-template-columns:1fr 1fr}.csvd-controls .csvd-check{grid-column:1/-1}.csvd-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.csvd-controls{grid-template-columns:1fr}.csvd-upload-row{display:block}.csvd-upload-row input{margin:10px 0}.csvd-metrics{grid-template-columns:1fr 1fr}.csvd-actions .csvd-button{width:100%}.csvd-container{padding-left:14px;padding-right:14px}.csvd-metrics strong{font-size:1.08rem}}
@media(prefers-reduced-motion:reduce){.csvd-button{transition:none}.csvd-button:hover{transform:none}}
@media(prefers-color-scheme:dark){.dark .csvd{background:#1a1c22;color:#e6f0f5}.dark .csvd-workspace,.dark .csvd-results,.dark .csvd-guidance,.dark .csvd-guide-panel,.dark .csvd-card{background:#232e38;color:#e6f0f5;border-color:#485966}.dark .csvd h1,.dark .csvd h2,.dark .csvd h3,.dark .csvd strong,.dark .csvd-metrics strong{color:#e9f5fb}.dark .csvd-hero{background:#223848;border-color:#425867}.dark .csvd-privacy,.dark .csvd-metrics>div,.dark .csvd-upload-row,.dark .csvd-table-scroller th,.dark .csvd-issue{background:#2a3c4b;color:#e9f4fb}.dark .csvd select{background:#253a48;color:#fff}.dark .csvd-outline{color:#bdeae7;background:#294148}.dark .csvd-muted,.dark .csvd-issue-type{color:#becdd8}.dark .csvd-table-scroller tr:nth-child(even){background:#263848}.dark .csvd-table-scroller td{color:#e8f4fa}.dark .csvd a{color:#7ee4dc}}
