:root{color:#202623;font-synthesis:none;background:#f3f5f4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}input,textarea,select{color:#202623;background:#fff;border:1px solid #cfd6d2;border-radius:6px;width:100%;padding:11px 12px;transition:border-color .16s,box-shadow .16s}input:focus,textarea:focus,select:focus{border-color:#17624a;outline:none;box-shadow:0 0 0 3px #17624a1f}textarea{resize:vertical}label{color:#4e5a55;gap:7px;font-size:14px;font-weight:600;display:grid}h1,h2,h3,p{margin-top:0}h1{letter-spacing:0;margin-bottom:0;font-size:27px;line-height:1.1}h2{letter-spacing:0;margin-bottom:10px;font-size:21px;line-height:1.25}h3{letter-spacing:0;margin:0;font-size:16px}p:last-child{margin-bottom:0}.shell{width:min(1180px,100% - 32px);margin:0 auto;padding:24px 0 64px}.topbar,.panelHeader,.primaryActionRow,.matchHeader,.modalHeader{justify-content:space-between;align-items:center;gap:18px;display:flex}.topbar{margin-bottom:18px}.brandBlock{align-items:center;gap:12px;display:flex}.brandBlock p{color:#65716c;margin:3px 0 0;font-size:14px}.brandMark{color:#fff;background:#17624a;border-radius:8px;place-items:center;width:44px;height:44px;display:grid}.topbarActions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.button{border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 17px;font-weight:700;text-decoration:none;display:inline-flex}.button.primary{color:#fff;background:#17624a}.button.primary:hover:not(:disabled){background:#104f3c}.button.secondary{color:#26332e;background:#fff;border-color:#cbd4d0}.button.quiet{color:#245343;background:#e9eeeb}.button.compact{min-height:38px;padding:0 12px}.button.errorButton{color:#842c2c;background:#fff;border-color:#d6a5a5;margin-left:auto}.iconButton{color:#44514c;background:#fff;border:1px solid #d2d9d5;border-radius:6px;flex:0 0 40px;place-items:center;width:40px;height:40px;display:inline-grid}.iconButton:hover{background:#f5f7f6;border-color:#9ea9a4}.iconButton.dangerIcon{color:#9a3838;align-self:end}.status{color:#48554f;white-space:nowrap;background:#fff;border:1px solid #cfd6d2;border-radius:999px;align-items:center;gap:8px;padding:8px 13px;font-size:14px;display:flex}.status span{background:#27805f;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 3px #ddefe7}.progressSteps{background:#fff;border:1px solid #d9dfdc;border-radius:8px;grid-template-columns:repeat(3,1fr);margin-bottom:18px;display:grid;overflow:hidden}.progressSteps>div{color:#7b8580;justify-content:center;align-items:center;gap:9px;min-height:58px;font-size:14px;display:flex;position:relative}.progressSteps>div+div{border-left:1px solid #e2e6e4}.progressSteps span{background:#fff;border:1px solid #cfd6d2;border-radius:50%;place-items:center;width:26px;height:26px;font-size:12px;display:grid}.progressSteps .current{color:#174f3d;background:#f0f7f4}.progressSteps .current span{color:#fff;background:#17624a;border-color:#17624a}.progressSteps .completed{color:#40504a}.progressSteps .completed span{color:#17624a;background:#e4f2ec;border-color:#c8dfd6}.panel,.resultSummary,.feedback{background:#fff;border:1px solid #d9dfdc;border-radius:8px;padding:20px}.panel{margin-bottom:16px}.panelHeader{align-items:flex-start;margin-bottom:18px}.panelHeader h2{margin-bottom:6px}.sectionLabel{color:#17624a;text-transform:uppercase;margin-bottom:5px;font-size:12px;font-weight:800}.muted{color:#67736e}.feedback{align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.feedback strong{margin-bottom:2px;display:block}.feedback p{color:inherit;margin:0}.feedback.error{color:#812c2c;background:#fff5f5;border-color:#e1b7b7}.feedback.processing{color:#1c5945;background:#f0f8f5;border-color:#b6d1c7}.spinner{flex:none;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.inputColumns{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;display:grid}.inputSection{align-content:start;gap:16px;min-width:0;display:grid}.inputSection+.inputSection{border-left:1px solid #e1e6e3;padding-left:36px}.inputSectionHeader{color:#17624a;align-items:flex-start;gap:10px;display:flex}.inputSectionHeader p{color:#72807a;margin:2px 0 0;font-size:13px}.segmented{background:#f0f3f1;border:1px solid #cfd6d2;border-radius:7px;grid-template-columns:repeat(2,1fr);padding:3px;display:grid}.segmented button{color:#64706b;background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;gap:7px;min-height:38px;font-weight:700;display:inline-flex}.segmented button.active{color:#174f3d;background:#fff;box-shadow:0 1px 3px #1926201f}.filePicker{text-align:center;cursor:pointer;background:#fafcfb;border:1px dashed #9eaaa4;border-radius:7px;align-content:center;place-items:center;min-height:150px;padding:24px}.filePicker:hover{background:#f4f9f7;border-color:#17624a}.filePicker span{color:#78837e;font-size:13px;font-weight:400}.filePicker input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.privacyNotice{color:#69542f;background:#fff9ed;border-left:3px solid #c58b2f;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.privacyNotice svg{flex:none;margin-top:1px}.privacyNotice p{margin:0;font-size:13px}.primaryActionRow{border-top:1px solid #e1e6e3;margin-top:20px;padding-top:18px}.primaryActionRow p{color:#68746e;align-items:center;gap:7px;margin:0;font-size:13px;display:flex}.contactCta{background:#eaf2ef;border:1px solid #cad7d2;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;margin-top:24px;padding:20px;display:grid}.contactCtaIcon{color:#fff;background:#17624a;border-radius:8px;place-items:center;width:44px;height:44px;display:grid}.contactCtaCopy h2{margin-bottom:4px;font-size:18px}.contactCtaCopy p{color:#4f5f59;max-width:650px;margin:0;font-size:14px}.contactCtaActions{justify-content:flex-end;align-items:center;gap:9px;display:flex}.contactAction{justify-content:flex-start;min-height:56px;padding:7px 13px}.contactAction>span{text-align:left;gap:0;min-width:0;display:grid}.contactAction small{opacity:.78;font-size:11px;font-weight:600;line-height:1.2}.contactAction strong{overflow-wrap:anywhere;font-size:14px;line-height:1.25}.brandSignature{justify-content:flex-end;padding:11px 4px 0;display:flex}.brandSignature a{color:#79847f;font-size:12px;font-weight:750;text-decoration:none}.brandSignature a:hover{color:#17624a}.metricPill{color:#17624a;white-space:nowrap;background:#f0f7f4;border:1px solid #cad7d2;border-radius:999px;padding:7px 11px;font-size:13px;font-weight:700}.requirements{gap:10px;display:grid}.requirement{border-top:1px solid #e2e7e4;grid-template-columns:minmax(180px,1.1fr) minmax(120px,.65fr) 150px minmax(220px,1.25fr) auto;align-items:start;gap:10px;padding-top:13px;display:grid}.requirement:first-child{border-top:0;padding-top:0}.result{gap:16px;display:grid}.resultHeading h2{margin-bottom:0}.resultSummary{grid-template-columns:230px minmax(0,1fr);gap:26px;padding:0;display:grid;overflow:hidden}.scoreBlock{color:#fff;background:#174f3d;align-content:center;padding:24px;display:grid}.scoreBlock>span{color:#d4e7df;font-size:13px}.scoreBlock>strong{margin:8px 0;font-size:64px;line-height:1}.scoreBlock small{font-size:26px}.scoreBlock p{margin:0;font-weight:700}.summaryContent{align-content:center;gap:16px;padding:24px 24px 24px 0;display:grid}.summaryMeta{color:#54645e;flex-wrap:wrap;gap:18px;font-size:13px;display:flex}.summaryMeta span{align-items:center;gap:6px;display:inline-flex}.resultText{margin:0;font-size:17px;line-height:1.55}.recommendation{color:#234c6b;background:#f2f7fb;border-left:3px solid #3273a8;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.recommendation svg{flex:none;margin-top:2px}.recommendation span{text-transform:uppercase;margin-bottom:3px;font-size:12px;font-weight:800;display:block}.recommendation p{color:#263e50;margin:0}.decisionPanel{grid-template-columns:.8fr 1.2fr;gap:28px;display:grid}.decisionIntro{align-items:flex-start;gap:12px;display:flex}.decisionIntro svg{color:#17624a;flex:none}.decisionControls{gap:12px;display:grid}.decisionControls .button{justify-self:start}.savedDecision{color:#17624a;align-items:center;gap:6px;margin:0;font-size:13px;font-weight:700;display:flex}.compactHeader{margin-bottom:14px}.matrix{gap:0;display:grid}.match{border-top:1px solid #e1e6e3;gap:10px;padding:16px 4px 16px 14px;display:grid}.match:first-child{border-top:0}.match.full_match{border-left:4px solid #2a7c5d}.match.partial_match,.match.unclear{border-left:4px solid #c08a32}.match.no_match{border-left:4px solid #b84b4b}.matchHeader>div{gap:2px;display:grid}.matchHeader span{color:#68746f;font-size:13px}.matchHeader b{color:#44524c;font-size:13px}.match p{margin:0}blockquote{color:#53615c;border-left:3px solid #cbd4d0;margin:0;padding:8px 0 8px 12px;font-size:14px}.insightGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.insightPanel{margin-bottom:0}ul{margin:0;padding-left:20px}li+li{margin-top:7px}.technicalDetails{padding:0}.technicalDetails summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:0 20px;font-weight:750;list-style:none;display:flex}.technicalDetails summary::-webkit-details-marker{display:none}.technicalDetails summary span{align-items:center;gap:8px;display:inline-flex}.technicalDetails[open] summary{border-bottom:1px solid #e1e6e3}.technicalDetails[open] summary>svg{transform:rotate(180deg)}.metricsGrid{grid-template-columns:repeat(3,minmax(0,1fr));padding:6px 20px 20px;display:grid}.metric{border-bottom:1px solid #e2e7e4;align-content:center;gap:4px;min-height:76px;padding:12px 14px 10px 0;display:grid}.metric span{color:#68746f;font-size:12px}.metric strong{overflow-wrap:anywhere;color:#25302c;font-size:14px}.modalOverlay{z-index:20;background:#141c19a3;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modalPanel{color:#202623;background:#fff;border:1px solid #cfd6d2;border-radius:8px;width:min(1000px,100%);max-height:min(880px,100vh - 40px);padding:24px;overflow:auto;box-shadow:0 24px 70px #101b174d}.modalHeader{align-items:flex-start;margin-bottom:10px}.modalHeader>div{min-width:0}.modalLead{color:#52615b;max-width:820px;font-size:16px}.workflowSteps{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:22px 0;display:grid}.workflowStep{background:#f8faf9;border:1px solid #d9dfdc;border-radius:7px;align-content:start;gap:7px;min-height:112px;padding:11px;display:grid;position:relative}.workflowStep:not(:last-child):after{content:"";z-index:2;border-top:2px solid #8da49b;width:9px;position:absolute;top:27px;right:-9px}.workflowStep span{color:#fff;background:#17624a;border-radius:50%;place-items:center;width:27px;height:27px;font-size:12px;font-weight:800;display:grid}.workflowStep small{color:#31745c;text-transform:uppercase;font-size:11px;font-weight:800}.workflowStep strong{overflow-wrap:anywhere;font-size:13px}.roleGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:18px;display:grid}.roleCard{border:1px solid #e0e5e2;border-radius:7px;gap:6px;min-height:116px;padding:13px;display:grid}.roleCard p{color:#5d6964;margin:0;font-size:13px}.modalColumns{border-top:1px solid #e0e5e2;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding-top:18px;display:grid}.modalColumns h3{margin-bottom:10px}@media (width<=1040px){.workflowSteps{grid-template-columns:repeat(3,minmax(0,1fr))}.workflowStep:after{display:none}.roleGrid,.metricsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.requirement{grid-template-columns:repeat(2,minmax(0,1fr)) auto}.requirementName,.requirementEvidence{grid-column:span 1}}@media (width<=820px){.shell{width:min(100% - 24px,680px);padding-top:16px}.topbar,.panelHeader,.primaryActionRow{flex-direction:column;align-items:stretch}.topbarActions{justify-content:flex-start}.inputColumns,.decisionPanel,.insightGrid{grid-template-columns:1fr}.contactCta{grid-template-columns:auto minmax(0,1fr)}.contactCtaActions{grid-column:1/-1;justify-content:flex-start}.inputSection+.inputSection{border-top:1px solid #e1e6e3;border-left:0;padding-top:24px;padding-left:0}.resultSummary{grid-template-columns:1fr}.scoreBlock{min-height:180px}.summaryContent{padding:20px}.primaryActionRow .button{width:100%}.requirement{grid-template-columns:1fr auto}.requirement>label{grid-column:1/-1}.requirement .dangerIcon{grid-column:2}.roleGrid,.modalColumns{grid-template-columns:1fr}.modalOverlay{align-items:start;padding:12px}.modalPanel{max-height:calc(100vh - 24px);padding:17px}}@media (width<=520px){.panel,.resultSummary,.feedback{padding:16px}.resultSummary{padding:0}.topbarActions,.topbarActions .button,.topbarActions .status{width:100%}.progressSteps>div{gap:6px;min-height:52px}.progressSteps strong{font-size:12px}.progressSteps span{width:23px;height:23px}.summaryMeta{gap:8px;display:grid}.matchHeader{flex-direction:column;align-items:flex-start}.workflowSteps,.roleGrid,.metricsGrid{grid-template-columns:1fr}.workflowStep{min-height:92px}.feedback{flex-wrap:wrap}.button.errorButton{width:100%;margin-left:0}.contactCta{grid-template-columns:1fr}.contactCtaIcon{display:none}.contactCtaActions{grid-column:auto;display:grid}.contactCtaActions .button{width:100%}.brandSignature{justify-content:center}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
