.esg-tool{--esg-on:color-mix(in srgb,var(--ftk-accent) 14%,var(--ftk-surface));display:grid;grid-template-columns:minmax(0,1fr);gap:20px;min-width:0;font-family:var(--ftk-font);color:var(--ftk-ink)}.esg-editor,.esg-info,.esg-side{display:grid;gap:14px;min-width:0;align-content:start}@media (min-width:960px){.esg-tool{grid-template-columns:minmax(0,46fr) minmax(0,54fr);grid-template-rows:auto 1fr;align-items:start}.esg-editor{grid-column:1;grid-row:1/span 2}.esg-side{grid-column:2;grid-row:1}.esg-info{grid-column:2;grid-row:2}}@media (max-width:959px){.esg-actions .ftk-btn:not(.esg-copy){min-height:40px;padding-inline:12px;font-size:.875rem}.esg-copy{flex:1 1 100%;justify-content:center}.esg-empty{padding:18px 14px}}.esg-h2,.esg-h3{margin:0;font-size:1rem;font-weight:650;color:var(--ftk-ink)}.esg-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.esg-stage{display:grid;gap:10px;padding:14px;border-radius:var(--ftk-radius);background:var(--ftk-soft);min-width:0}.esg-stage__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.esg-grounds,.esg-install__apps{display:flex;flex-wrap:wrap;gap:6px}.esg-chip-btn{min-height:32px;padding:0 12px;border:0;border-radius:999px;background:var(--ftk-surface);color:var(--ftk-ink);font:inherit;font-size:.875rem;font-weight:600;cursor:pointer}.esg-chip-btn[aria-pressed=true]{background:var(--esg-on);color:var(--ftk-accent-ink)}.esg-chip-btn:focus-visible,.esg-icon-btn:focus-visible,.esg-panel:focus-visible,.esg-tab:focus-visible{outline:2px solid var(--ftk-accent);outline-offset:2px}.esg-preview{min-width:0;border-radius:10px;overflow:hidden;background:var(--ftk-surface)}.esg-preview iframe{display:block;width:100%;border:0}.esg-empty{margin:0;padding:28px 16px;border-radius:10px;background:var(--ftk-surface);color:var(--ftk-ink-2);font-size:.9375rem;text-align:center}.esg-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.esg-actions .ftk-btn{min-height:44px}.esg-copy{min-height:48px;font-size:1rem}.esg-sample{background:var(--ftk-copper-soft);color:var(--ftk-copper)}.esg-status{margin:0;font-size:.875rem;color:var(--ftk-ink-2);overflow-wrap:anywhere}.esg-status:empty{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.esg-install,.esg-review{display:grid;gap:10px;padding:14px 16px;border-radius:var(--ftk-radius);background:var(--ftk-soft);min-width:0}.esg-review__sum{margin:0;font-weight:600;font-size:.9375rem}.esg-review__sum[data-level=heavy]{color:var(--ftk-copper)}.esg-size{display:grid;gap:6px}.esg-size__label{font-size:.875rem;color:var(--ftk-ink-2)}.esg-size__bar{height:8px;background:var(--ftk-surface);overflow:hidden}.esg-size__bar,.esg-size__fill{display:block;border-radius:999px}.esg-size__fill{height:100%;background:var(--ftk-accent)}.esg-size__fill[data-over=true]{background:var(--ftk-error)}.esg-findings{display:grid;gap:6px;margin:0;padding:0;list-style:none}.esg-finding{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:start;font-size:.875rem;line-height:1.5;color:var(--ftk-ink);overflow-wrap:anywhere}.esg-finding svg{width:18px;height:18px;margin-top:1px}.esg-finding[data-level=ok] svg{color:var(--ftk-ok)}.esg-finding[data-level=warn] svg{color:var(--ftk-copper)}.esg-finding[data-level=fail] svg{color:var(--ftk-error)}.esg-install__steps{margin:0;padding-left:22px;display:grid;gap:4px;font-size:.9375rem;line-height:1.5;overflow-wrap:anywhere}.esg-ai{display:grid;gap:10px;min-width:0}.esg-ai__review{margin:0;font-size:.9375rem;line-height:1.55;overflow-wrap:anywhere}.esg-ai__group{display:grid;gap:6px}.esg-ai__group .ftk-label{margin:0}.esg-presets{display:flex;flex-wrap:wrap;gap:6px}.esg-chip{min-height:36px;white-space:normal;text-align:left;overflow-wrap:anywhere}.esg-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:6px;border-radius:var(--ftk-radius);background:var(--ftk-soft)}.esg-tab{flex:1 1 auto;min-height:40px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--ftk-ink);font:inherit;font-size:.9375rem;font-weight:600;cursor:pointer}.esg-tab[aria-selected=true]{background:var(--ftk-surface);color:var(--ftk-accent-ink)}.esg-panel{min-width:0;border-radius:var(--ftk-radius)}.esg-pair,.esg-panel-grid{display:grid;gap:12px;min-width:0}.esg-pair{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));align-items:end}.esg-field{min-width:0}.esg-tool .ftk-input,.esg-tool .ftk-select,.esg-tool .ftk-textarea{min-height:44px;min-width:0;width:100%}.esg-textarea{field-sizing:content;overflow:hidden;resize:none;overflow-wrap:anywhere}.esg-error{font-size:.8125rem;color:var(--ftk-error)}.esg-error,.esg-note{overflow-wrap:anywhere}.esg-note{margin:0;padding:10px 14px;border-radius:10px;background:var(--ftk-copper-soft);color:var(--ftk-copper);font-size:.875rem}.esg-rows{display:grid;gap:12px;min-width:0}.esg-cta,.esg-image,.esg-row{display:grid;gap:10px;padding:12px;border-radius:12px;background:var(--ftk-soft);min-width:0}.esg-row__head{display:flex;flex-wrap:wrap;align-items:end;gap:10px}.esg-row__head .esg-field{flex:1 1 160px}.esg-rowtools{display:flex;gap:4px}.esg-icon-btn{display:inline-grid;place-items:center;width:40px;height:40px;border:0;border-radius:10px;background:var(--ftk-surface);color:var(--ftk-ink);cursor:pointer}.esg-icon-btn svg{width:18px;height:18px}.esg-icon-btn:disabled{opacity:.45;cursor:default}.esg-add{justify-self:start;min-height:44px}.esg-check{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:.9375rem;cursor:pointer}.esg-check input{width:18px;height:18px;margin:0;accent-color:var(--ftk-accent)}.esg-check input:focus-visible{outline:2px solid var(--ftk-accent);outline-offset:2px}.esg-image__acts{display:flex;flex-wrap:wrap;gap:8px}.esg-image__acts .ftk-btn{min-height:44px}.esg-upload{cursor:pointer}.esg-image__acts input[type=file]:focus-visible+.esg-upload,.esg-upload:has(+input:focus-visible){outline:2px solid var(--ftk-accent);outline-offset:2px}.esg-range{width:100%;min-height:32px;accent-color:var(--ftk-accent)}.esg-social{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:10px;align-items:end;padding:10px 12px;border-radius:12px;background:var(--ftk-soft)}.esg-mark{width:24px;height:24px;margin-bottom:10px;object-fit:contain}.esg-social__field{min-width:0}.esg-add-social{display:flex;flex-wrap:wrap;align-items:end;gap:10px}.esg-add-social .esg-field{flex:1 1 200px}.esg-seg{display:grid;gap:6px;margin:0;padding:0;border:0;min-width:0}.esg-seg legend{padding:0;margin-bottom:6px}.esg-seg__row{display:flex;flex-wrap:wrap;gap:6px}.esg-seg__o{position:relative;display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:10px;background:var(--ftk-soft);font-weight:600;font-size:.875rem;color:var(--ftk-ink);cursor:pointer}.esg-seg__o[data-on=true]{background:var(--esg-on);color:var(--ftk-accent-ink)}.esg-seg__o input{position:absolute;inset:0;margin:0;opacity:0;cursor:pointer}.esg-seg__o:has(input:focus-visible){outline:2px solid var(--ftk-accent);outline-offset:2px}.esg-colors{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:12px}.esg-color__row{display:flex;gap:8px;align-items:center;min-width:0}.esg-color__pick{flex:none;width:44px;height:44px;padding:0;border:0;border-radius:10px;background:transparent;cursor:pointer}.esg-color__pick:focus-visible{outline:2px solid var(--ftk-accent);outline-offset:2px}.esg-color__hex{font-family:var(--ftk-mono)}.esg-templates{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:10px;margin:0;padding:0;border:0}.esg-template{position:relative;display:grid;gap:4px;padding:12px 14px;border-radius:12px;background:var(--ftk-soft);cursor:pointer}.esg-template[data-on=true]{background:var(--esg-on)}.esg-template input{position:absolute;inset:0;margin:0;opacity:0;cursor:pointer}.esg-template:has(input:focus-visible){outline:2px solid var(--ftk-accent);outline-offset:2px}.esg-template__name{display:inline-flex;align-items:center;gap:6px;font-weight:650;font-size:.9375rem}.esg-template[data-on=true] .esg-template__name{color:var(--ftk-accent-ink)}.esg-template__name svg{width:16px;height:16px}.esg-template__body{font-size:.875rem;line-height:1.45;color:var(--ftk-ink-2)}@media (prefers-reduced-motion:reduce){.esg-tool *,.esg-tool :after,.esg-tool :before{transition:none!important;animation:none!important;scroll-behavior:auto!important}}