.field-tools{--ft-line:#c8d6c2;margin-top:26px;padding-top:25px;border-top:1px solid var(--ft-line);color:var(--green,#193f34)}
.field-intro{display:flex;justify-content:space-between;align-items:start;gap:25px;margin-bottom:22px}.field-intro h2{font-size:clamp(26px,3vw,35px);line-height:1.2;margin:10px 0}.field-intro p{font-size:17px;line-height:1.65;max-width:780px}.field-intro>a{flex:none;margin-top:14px;font-size:16px}
.field-workspace{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:22px;align-items:start;scroll-margin-top:115px}.field-input-panel,.field-result-panel{border:1px solid var(--ft-line);border-radius:14px;padding:26px;background:#fff;min-width:0}.field-panel-heading{border-bottom:1px solid var(--ft-line);padding-bottom:19px}.field-step{display:block;text-transform:uppercase;font-size:12px;letter-spacing:1.2px;font-weight:700;color:#54684c;margin-bottom:13px}.field-panel-heading>label{display:grid;gap:7px;font-size:15px;font-weight:700}.field-tools select,.field-tools input{font:inherit;font-size:17px;background:#fcfdf9;color:#153f34;border:1px solid #91a88b;border-radius:7px;width:100%;padding:12px;min-height:48px;min-width:0}.field-tools select{white-space:normal}.field-tools input:focus,.field-tools select:focus,.field-tools button:focus-visible,.field-tools a:focus-visible{outline:3px solid #9dbf63;outline-offset:3px}.field-tools input[aria-invalid=true]{border:2px solid #a14229}.field-model-tag{display:inline-block;font-size:12px;font-weight:700;background:#edf3e4;padding:5px 9px;border-radius:5px;margin-top:20px}#field-description h3{font-size:25px;line-height:1.25;margin:11px 0 8px}#field-description>p{font-size:16px;line-height:1.6;color:#52654b;margin-bottom:21px}.field-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 18px}.field-inputs>label{display:flex;flex-direction:column;align-items:stretch;font-size:16px;font-weight:650;line-height:1.35}.field-inputs>label>span{min-height:43px}.field-inputs small{font-size:13px;min-height:23px;color:#52654b;font-weight:500}.field-inputs em{display:block;font-size:12px;line-height:1.55;font-weight:400;font-style:normal;margin-top:7px;color:#52654b}.field-inputs>label:has(select){grid-column:1/-1}.field-inputs>label:has(select)>span{min-height:0;margin-bottom:6px}.field-form-actions{display:flex;align-items:center;flex-wrap:wrap;gap:17px;margin-top:23px}.field-tools .field-form-actions button,.field-tools .field-export-actions button{font-size:15px;min-height:42px}.field-input-status{font-size:13px;line-height:1.6;color:#60714f;margin-top:17px}
.field-result-panel{background:#f1f6e9}.field-result-top{display:flex;align-items:start;justify-content:space-between;gap:12px}.field-result-top h3{font-size:25px;line-height:1.2}.field-scenario{background:#fff;border:1px solid #b0c29f;font-size:12px;border-radius:6px;padding:6px 9px;max-width:140px}.field-scenario.is-example{background:#eaf2f4;border-color:#bfd3dc;color:#123b4a}.field-result-values{margin-top:17px}.field-result-values>div{display:flex;align-items:baseline;justify-content:space-between;gap:14px;border-bottom:1px solid #cfddc1;padding:13px 0}.field-result-values dt{font-size:15px;line-height:1.45;max-width:66%}.field-result-values dd{font-weight:750;font-size:19px;line-height:1.4;margin:0;text-align:right}.field-result-values dd span{font-size:13px;font-weight:500}.field-result-values .field-primary-result{display:block;border-radius:10px;background:#204c3d;color:white;padding:19px;margin-bottom:5px}.field-primary-result dt{max-width:none;color:#e2edcf;font-size:14px}.field-primary-result dd{font-size:37px;text-align:left;margin-top:8px}.field-primary-result dd span{font-size:18px;color:#e2edcf}.field-interpretation{font-size:15px;line-height:1.65;margin-top:17px}.field-note{border-left:3px solid #176b73;padding:10px 13px;background:#eef4f5;font-size:14px;line-height:1.6;margin-top:12px}.field-error{color:#5a356f;font-size:17px;line-height:1.7;background:#f1edf6;border:1px solid #d4b5a2;border-radius:8px;padding:17px;margin-top:22px}.field-export-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:20px}.field-export-actions>button:disabled{opacity:.45;cursor:not-allowed}.field-export-help{font-size:12px;line-height:1.65;color:#58694e;margin-top:14px}.field-chart{background:#fff;border:1px solid #d4dfc8;border-radius:9px;padding:12px 9px;margin:18px 0 0}.field-chart svg{width:100%;height:auto;display:block;overflow:visible}.field-chart text{font:12px Arial,sans-serif;fill:#34533d}.field-chart rect{fill:#709a57}.field-chart polyline{fill:none;stroke:#356c50;stroke-width:3}.field-chart circle{fill:#176b73;stroke:#fff;stroke-width:2}.field-chart-grid{stroke:#dde6d6;stroke-width:1}.field-chart figcaption{font-size:11px;line-height:1.6;color:#58694e;padding:4px 9px 0}
.field-method{margin:20px 0 27px;border:1px solid var(--ft-line);border-radius:10px;padding:20px 24px;background:#fff}.field-method>summary{font-size:17px;font-weight:700;cursor:pointer}.field-equations{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0}.field-equations p{background:#f0f5e8;border:1px solid #d6e0cb;padding:12px 14px;border-radius:6px;font:15px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}.field-method ol{padding-left:22px;display:grid;gap:12px}.field-method li{font-size:15px;line-height:1.7;padding-left:4px}.field-source{font-size:13px;line-height:1.7;border-top:1px solid #d6e0cb;margin-top:18px;padding-top:15px;overflow-wrap:anywhere}.field-method a,.field-book a{text-decoration:underline}.field-catalog-heading{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:16px}.field-catalog-heading h3{font-size:25px;margin-top:7px}.field-catalog-heading>label{display:grid;gap:7px;font-size:13px;min-width:220px}.field-catalog-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.field-tool-card{font:inherit;background:#fff;border:1px solid var(--ft-line);border-radius:10px;padding:19px;text-align:left;position:relative;display:flex;flex-direction:column;gap:10px;color:#193f34;cursor:pointer;min-width:0}.field-tool-card:hover{border-color:#6b8f56;background:#f2f7eb}.field-tool-card.active{border:2px solid #426c38;padding:18px;background:#edf4df}.field-tool-card>span{font-size:11px;color:#52654b;padding-right:10px}.field-tool-card strong{font-size:19px;line-height:1.35}.field-tool-card small{font-size:14px;line-height:1.6;color:#52654b}.field-tool-card b{position:absolute;top:14px;right:14px;font-size:16px;font-weight:400}.field-book{font-size:13px;line-height:1.75;padding:20px 0 4px;margin-top:14px;max-width:1020px}
@media(min-width:1100px){.field-result-panel{position:sticky;top:115px}}
@media(max-width:1000px){.field-workspace{grid-template-columns:1fr}.field-catalog-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.field-intro{display:block}.field-intro>a{display:inline-block;margin-top:12px}}
@media(max-width:600px){.field-tools{margin-top:20px;padding-top:21px}.field-input-panel,.field-result-panel{padding:21px 17px}.field-inputs{grid-template-columns:1fr;gap:18px}.field-inputs>label>span{min-height:0;margin-bottom:5px}.field-inputs small{min-height:21px}.field-intro h2{font-size:29px}.field-catalog-cards{grid-template-columns:1fr}.field-catalog-heading{display:block}.field-catalog-heading>label{margin-top:17px}.field-method{padding:19px 17px}.field-method li{font-size:14px}.field-primary-result dd{font-size:33px}.field-result-top{flex-wrap:wrap}.field-result-values dt{font-size:14px}.field-result-values dd{font-size:18px}.field-export-actions{gap:12px}.field-chart{padding:7px 2px}.field-workspace{scroll-margin-top:92px}.field-tool-card strong{font-size:20px}}

.field-csv-options{display:flex;align-items:end;gap:13px;flex-wrap:wrap;margin-top:18px;padding-top:17px;border-top:1px solid #cfddc1}.field-csv-options>label{display:grid;gap:6px;flex:1;min-width:180px;font-size:13px;font-weight:700}.field-csv-options>button{font-size:14px;min-height:48px}.field-csv-options>button:disabled{opacity:.45;cursor:not-allowed}

.field-resources{margin-top:20px;border:1px solid #c8d6c2;border-radius:10px;padding:20px}.field-resources>summary{font-size:17px;font-weight:700;cursor:pointer}.field-resources .tool-grid{margin-top:20px}

.scientific-figure{background:#fff;border-color:#c9cfd5;border-radius:3px}.scientific-scroll{overflow-x:auto;max-width:100%}.scientific-scroll svg{display:block;width:100%;height:auto;min-width:540px}.scientific-figure svg text{font-family:var(--graph-font,Arial),Helvetica,sans-serif;fill:var(--graph-text,#202833)}.scientific-figure svg .sg-bg{fill:#fff}.scientific-figure svg .sg-frame{fill:none;stroke:#252a31;stroke-width:1.3}.scientific-figure svg .sg-grid{stroke:#e4e7eb;stroke-width:.8}.scientific-figure svg .sg-tick{stroke:#252a31;stroke-width:1}.scientific-figure svg .sg-value{font-size:var(--graph-size,16px)}.scientific-figure svg .sg-label{font-size:var(--graph-size,18px)}.scientific-figure svg .sg-title{font-size:calc(var(--graph-size,15px) + 4px);font-weight:bold}.scientific-figure svg .sg-note{font-size:var(--graph-size,15px)}.scientific-figure svg .sg-curve{stroke:var(--graph-line,#2166a5);stroke-width:var(--graph-width,2.3);fill:none}.scientific-figure svg .sg-point{fill:var(--graph-point,#2166a5);fill-opacity:.9;stroke:#fff;stroke-width:.8}.scientific-figure svg .sg-selected{fill:#176b73;stroke:#123b4a;stroke-width:1}.scientific-figure svg .sg-bar{fill:var(--graph-line,#5487ae);stroke:#183f60;stroke-width:.8}.scientific-figure svg .sg-reference{stroke:var(--graph-reference,#4d5158);stroke-width:1.5;stroke-dasharray:7 5;fill:none}

/* Result images remain visible; only personal export controls need an account. */
.image-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.image-result-grid figure{margin:0;min-width:0}.image-result-grid canvas{width:100%;height:auto;max-height:420px;object-fit:contain;background:repeating-conic-gradient(#eef1ed 0% 25%,#fff 0% 50%) 50%/16px 16px}.image-result-grid figcaption{font-size:.85rem;margin:6px 0;color:#52635e}.rights-notice{font-size:.8rem;color:#52635e;line-height:1.6;max-width:1100px;margin:20px auto;padding:12px 24px}button:disabled{cursor:not-allowed;opacity:.55}#copyright{max-width:850px;font-size:.8rem;line-height:1.6}
@media(max-width:650px){.image-result-grid{grid-template-columns:1fr}}

#rgb-form{align-content:start;align-self:start}#rgb-form label{align-content:start}#rgb-form input{height:auto;min-height:42px}

@media(max-width:600px){.scientific-scroll svg{min-width:600px}}
