:root{--ink:#12211a;--muted:#66736c;--line:#dfe7e2;--paper:#f5f8f6;--white:#ffffff;--accent:#143e2c;--soft:#e8f1ec}*{box-sizing:border-box}html{background:var(--paper)}body{margin:0;color:var(--ink);background:radial-gradient(circle at 7% 3%,rgba(37,149,95,.08),transparent 25rem),var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.topbar{min-height:72px;max-width:1180px;margin:0 auto;padding:0 24px;justify-content:space-between}.brand,.topbar{display:flex;align-items:center}.brand{gap:12px;font-weight:760;letter-spacing:-.02em}.brand-mark{display:inline-grid;place-items:center;width:36px;height:36px;color:white;background:var(--accent);border-radius:10px;font-size:13px}.nav-link{color:var(--muted);font-size:14px;font-weight:650}.home-shell{min-height:100vh}.hero{max-width:940px;margin:70px auto 0;padding:0 24px 80px;text-align:center}.eyebrow,.section-kicker{color:#357657;font-size:12px;font-weight:800;letter-spacing:.14em}.hero h1,.not-found h1,.report-header h1{max-width:850px;margin:18px auto;font-size:clamp(42px,6vw,76px);line-height:.98;letter-spacing:-.055em}.hero-copy{max-width:650px;margin:0 auto;color:var(--muted);font-size:18px;line-height:1.65}.launch-card{margin:48px auto 0;max-width:760px;display:grid;grid-template-columns:74px 1fr auto;grid-gap:22px;gap:22px;align-items:center;padding:28px;text-align:left;background:rgba(255,255,255,.9);border:1px solid var(--line);border-radius:24px;box-shadow:0 22px 60px rgba(30,54,42,.07)}.launch-mark{width:64px;height:64px;display:grid;place-items:center;border-radius:18px;background:var(--accent);color:white;font-size:22px;font-weight:850}.launch-copy h2{margin:5px 0 7px;font-size:22px;letter-spacing:-.03em}.launch-copy p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}.primary-link{display:inline-flex;justify-content:center;align-items:center;padding:12px 18px;border-radius:11px;background:var(--accent);color:white;font-weight:730}.feature-strip{margin:52px auto 0;display:grid;grid-template-columns:repeat(3,1fr);text-align:left;border-top:1px solid var(--line)}.feature-strip div{padding:25px 18px}.feature-strip span,.feature-strip strong{display:block}.feature-strip strong{font-size:14px}.feature-strip span{margin-top:5px;color:var(--muted);font-size:13px;line-height:1.45}.dashboard-shell{max-width:1180px;margin:0 auto;padding:0 24px 80px}.dashboard-nav{padding:0}.report-header{padding:58px 0 32px}.report-header h1{max-width:850px;margin:12px 0 13px;font-size:clamp(42px,5vw,70px)}.report-header p{margin:0;color:var(--muted)}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin:18px 0 28px}.stat-card{padding:24px;background:var(--white);border:1px solid var(--line);border-radius:18px}.stat-card span,.stat-card strong{display:block}.stat-card strong{font-size:35px;letter-spacing:-.05em}.stat-card span{margin-top:6px;color:var(--muted);font-size:13px}.panel{margin-top:18px;padding:28px;background:var(--white);border:1px solid var(--line);border-radius:22px}.panel-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px}.panel h2{margin:5px 0 0;font-size:28px;letter-spacing:-.035em}.threshold{min-width:270px;display:grid;grid-template-columns:1fr auto;grid-gap:4px 10px;gap:4px 10px;align-items:center}.threshold label{color:var(--muted);font-size:12px}.threshold strong{font-size:14px}.threshold input{grid-column:1/-1;width:100%;accent-color:#357657}.bar-chart{margin-top:32px;display:grid;grid-gap:17px;gap:17px}.bar-row{display:grid;grid-template-columns:44px 1fr;grid-gap:13px;gap:13px;align-items:center}.goal-badge,.goal-number{color:white;display:grid;place-items:center;font-weight:850}.goal-number{width:42px;height:42px;border-radius:10px}.bar-label{display:flex;justify-content:space-between;gap:20px;margin-bottom:7px;font-size:13px}.bar-label span{color:#33463c}.bar-track{height:9px;overflow:hidden;border-radius:999px;background:#edf1ee}.bar-fill{height:100%;border-radius:inherit}.goal-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:14px;gap:14px;margin-top:18px}.goal-card{width:100%;display:grid;grid-template-columns:58px 1fr;grid-gap:16px;gap:16px;padding:20px;text-align:left;border:1px solid var(--line);background:var(--white);border-radius:18px;cursor:pointer;transition:.16s ease}.goal-card.active,.goal-card:hover{transform:translateY(-2px);border-color:#8baa99;box-shadow:0 13px 35px rgba(30,54,42,.07)}.goal-badge{width:58px;height:58px;border-radius:14px;font-size:20px}.goal-small{color:var(--muted);font-size:11px;font-weight:800}.goal-card h3{margin:3px 0;font-size:15px;line-height:1.25}.goal-card p{margin:7px 0 0;color:var(--muted);font-size:12px}.paragraph-heading{align-items:center}.filters{display:flex;gap:10px}.filters input,.filters select{min-height:40px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--ink)}.paragraph-list{margin-top:24px;display:grid;grid-gap:12px;gap:12px}.paragraph-card{padding:19px;border:1px solid var(--line);border-radius:14px;background:#fbfcfb}.paragraph-card p{margin:12px 0 0;color:#34463d;line-height:1.65}.paragraph-meta{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:11px;font-weight:720}.paragraph-sdg{color:white;border-radius:999px;padding:4px 8px}.empty-note{padding:25px;border-radius:13px;background:#f6f8f7}.empty-note,.footer{color:var(--muted);text-align:center}.footer{padding:35px 0 0;font-size:12px}.footer code{color:var(--ink)}.not-found{max-width:800px;margin:90px auto;padding:0 24px;text-align:center}.not-found p{color:var(--muted);margin-bottom:30px}@media (max-width:850px){.goal-grid,.stat-grid{grid-template-columns:repeat(2,1fr)}.panel-heading,.paragraph-heading{align-items:stretch;flex-direction:column}.threshold{min-width:0}}@media (max-width:700px){.launch-card{grid-template-columns:1fr}.launch-mark{margin:0 auto}.launch-copy{text-align:center}.launch-card .primary-link{width:100%}}@media (max-width:620px){.hero{margin-top:35px}.hero h1,.report-header h1{font-size:42px}.feature-strip,.goal-grid,.stat-grid{grid-template-columns:1fr}.filters{flex-direction:column}.filters input,.filters select{width:100%}.paragraph-meta{flex-wrap:wrap}}