.energy-diagram{--energy-text: #d9e8e4;display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:.9rem .65rem;min-width:0;padding:clamp(1rem,2.5vw,1.85rem);border:1px solid #417573;border-radius:13px;color:var(--energy-text);background:linear-gradient(135deg,#173e3d96,#08282be8 74%),radial-gradient(circle,#b5e8d448 1px,transparent 1.1px) 0 0 / 18px 18px,#08282b}.energy-caption{display:inline-flex;align-items:center;gap:.36rem;font:700 var(--text-small)/1.25 var(--mono);letter-spacing:.07em;text-transform:uppercase}.energy-caption svg{color:#ffcf66}.energy-modes{display:inline-flex;flex-wrap:wrap;justify-self:start;gap:.42rem;max-width:100%;padding:.32rem;border:1px solid #577e7e;border-radius:7px;background:#071f21}.energy-modes button{min-height:44px;padding:.38rem .65rem;border:0;border-radius:5px;color:#dbece6;background:transparent;font-size:var(--text-small);font-weight:700;line-height:1.15;cursor:pointer;transition:color .18s ease,background-color .18s ease}.energy-modes button:hover{background:#275450;color:#fff}.energy-modes button[aria-pressed=true]{background:#f7cf76;color:#152c36}.energy-modes button:focus-visible{outline-color:#f7cf76;outline-offset:3px}.energy-content{display:grid;grid-column:1 / -1;gap:1rem;min-width:0}.energy-mode-title{margin-bottom:.45rem;color:#f7cf76;font-size:var(--text-small);font-weight:730}[data-energy-diagram][data-ready] .energy-mode-title{display:none}.energy-path{--path-gap: clamp(.78rem, 2.4vw, 2.05rem);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--path-gap);margin:0;padding:0;list-style:none}.energy-node{position:relative;display:grid;justify-items:start;align-content:start;gap:.3rem;min-height:122px;padding:.72rem clamp(.46rem,1.3vw,.92rem);border:1px solid #507776;border-radius:8px;background:#102f32;line-height:1.22}.energy-icon{display:grid;place-items:center;width:39px;height:39px;margin-bottom:.08rem;border:1px solid #51968a;border-radius:6px;color:#b3f2d7;background:#163c3c}.energy-node:first-child .energy-icon{border-color:#ad894c;background:#342e25;color:#ffcf66}.energy-node strong{color:#fff;font-size:1rem;font-weight:740}.energy-node small{color:#ccdfda;font-size:var(--text-small)}.energy-arrow{position:absolute;top:50%;left:100%;display:flex;align-items:center;justify-content:end;width:calc(var(--path-gap) + 1px);height:14px;color:#9ce2c4;transform:translateY(-50%);pointer-events:none}.energy-arrow>span{position:absolute;inset:6px 5px 6px 0;overflow:hidden;background:#588b83}.energy-arrow>span:after{position:absolute;top:0;bottom:0;left:-55%;width:55%;content:"";background:linear-gradient(90deg,transparent,#ffdc86)}.energy-diagram.is-visible .energy-mode:not([hidden]) .energy-arrow>span:after{animation:energy-pulse 1.3s .13s ease-out 2}.energy-diagram.is-visible .energy-mode:not([hidden]) .energy-node:nth-child(2) .energy-arrow>span:after{animation-delay:.36s}.energy-note{margin-top:.85rem;color:#d3e5de;font-size:1rem;line-height:1.48}.energy-diagram-compact{grid-template-columns:1fr;gap:.58rem;padding:.82rem clamp(.72rem,1.45vw,1.25rem);border-color:#558481;border-radius:9px;background:linear-gradient(105deg,#1b4443,#102f32),#102f32}.energy-diagram-compact .energy-node{grid-template-columns:auto minmax(0,1fr);align-content:center;align-items:center;gap:.13rem .68rem;min-height:59px;padding:.45rem .6rem;background:#0a272a}.energy-diagram-compact .energy-icon{grid-row:span 2;width:34px;height:34px;margin:0}.energy-diagram-compact .energy-icon svg{width:21px;height:21px}.energy-diagram-compact .energy-note{margin-top:.7rem}@keyframes energy-pulse{0%{left:-55%}64%,to{left:104%}}@media(max-width:600px){.energy-path{--path-gap: 1.15rem;grid-template-columns:minmax(0,1fr)}.energy-node,.energy-diagram-compact .energy-node{grid-template-columns:auto minmax(0,1fr);align-content:center;align-items:center;gap:.22rem .7rem;min-height:68px;padding:.62rem .7rem}.energy-icon{grid-row:span 2}.energy-arrow{top:100%;left:50%;transform:translate(-50%,calc(var(--path-gap) / 2 - 6px)) rotate(90deg)}}.tool-section{padding-block:clamp(2rem,4vw,3.4rem)}.tool-panel{display:grid;gap:1.1rem;margin-top:1rem}.tool-card{padding:clamp(1rem,2.6vw,1.6rem);border:1px solid var(--border);border-radius:var(--radius);background:var(--white)}.tool-card h3{font-size:1.15rem;margin-bottom:.35rem}.tool-card>p,.tool-hint{color:var(--muted);font-size:var(--text-small);line-height:1.45}.tool-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:.85rem;margin-top:.9rem}.tool-field{display:grid;gap:.3rem;align-content:start;min-width:0}.tool-field>span{font-size:.88rem;font-weight:700}.tool-field small{color:var(--muted);font-size:.8rem;line-height:1.35}.tool-field input,.tool-field select{width:100%;min-height:44px;padding:.55rem .7rem;border:1px solid var(--control);border-radius:8px;background:var(--white);color:var(--ink);font:inherit}.tool-field input:focus-visible,.tool-field select:focus-visible{outline:3px solid var(--teal);outline-offset:1px}.tool-rows{display:grid;gap:.8rem;margin-top:.9rem}.tool-row{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(4,minmax(0,1fr)) auto;gap:.6rem;align-items:end;padding:.8rem;border:1px solid var(--border);border-radius:12px;background:var(--paper)}.tool-row.tool-row-eq{grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto}.tool-row .tool-field>span{font-size:.8rem}.tool-remove{min-height:44px;padding:0 .8rem;border:1px solid var(--control);border-radius:8px;background:var(--white);color:var(--ink);font:inherit;cursor:pointer}.tool-remove:hover{background:var(--mint)}.tool-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1rem}.tool-actions button{cursor:pointer;border:1px solid var(--teal);font:inherit}.tool-result{display:grid;gap:.9rem}.tool-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:.8rem}.tool-kpi{padding:.9rem 1rem;border-radius:12px;background:var(--mint)}.tool-kpi small{display:block;color:var(--muted);font-size:.8rem}.tool-kpi strong{display:block;margin-top:.2rem;font-family:var(--heading);font-size:1.45rem;letter-spacing:-.03em;overflow-wrap:anywhere}.tool-table-wrap{overflow-x:auto}.tool-table{width:100%;border-collapse:collapse;font-size:.92rem}.tool-table th,.tool-table td{padding:.55rem .6rem;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.tool-table th{font-size:.8rem;color:var(--muted);font-weight:700}.tool-table td.num,.tool-table th.num{text-align:right;white-space:nowrap}.tool-bar{display:block;height:8px;margin-top:.3rem;border-radius:4px;background:var(--teal);min-width:2px}.tool-note{padding:.8rem 1rem;border-left:4px solid var(--yellow);background:#fdf6e0;color:var(--ink);font-size:var(--text-small);line-height:1.45}.tool-sources{font-size:var(--text-small);color:var(--muted);line-height:1.5}.tool-sources a{overflow-wrap:anywhere}.tool-class{display:grid;gap:.6rem}.tool-class-item{padding:.8rem 1rem;border:1px solid var(--border);border-radius:12px}.tool-class-item[data-fit=sim]{border-color:var(--teal);background:var(--mint)}.tool-class-item strong{display:block}.tool-class-item p{margin-top:.2rem;color:var(--muted);font-size:var(--text-small)}.tool-class-item a{font-weight:700}.article-body{padding-block:clamp(2rem,4vw,3.4rem)}.article-body .wrap{max-width:860px}.article-body h2{margin:2rem 0 .7rem;font-size:clamp(1.4rem,2.6vw,1.9rem)}.article-body h2:first-child{margin-top:0}.article-body p,.article-body li{font-size:var(--text-body);line-height:1.62}.article-body p+p{margin-top:.8rem}.article-body ul,.article-body ol{padding-left:1.3rem;margin:.7rem 0;display:grid;gap:.4rem}.article-body .formula{margin:.9rem 0;padding:.85rem 1rem;border-radius:10px;background:var(--mint);font-family:var(--mono);font-size:.98rem;overflow-wrap:anywhere}.article-body .tool-table-wrap{margin:1rem 0}.article-cta{margin-top:2rem;padding:1.1rem 1.2rem;border:1px solid var(--teal);border-radius:var(--radius);background:var(--mint)}.article-cta p{margin-bottom:.8rem}.list-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1rem}@media(max-width:900px){.tool-row{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-row .tool-field:first-child{grid-column:1 / -1}.tool-row.tool-row-eq{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.tool-remove{grid-column:1 / -1}}
