/* iePlanet LP tool v0.3.0. Local fonts, no CDN. */
.lp-header .lp-nav{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:11px}.lp-nav strong{color:var(--ink)}
.lp-page{min-height:75vh;padding-bottom:75px}.lp-intro{background:radial-gradient(circle at 14% 40%,rgba(42,152,139,.22),transparent 27%),linear-gradient(125deg,#112f3a,#184a4b);color:#f1f9f6;overflow:hidden}.lp-intro-inner{padding-block:52px 48px}.lp-kicker{display:flex;gap:12px;align-items:center;flex-wrap:wrap;color:#b7e9da;font-size:12px}.lp-beta{border:1px solid #d9ca8359;background:#efd99117;color:#ffe19f;padding:3px 10px;border-radius:99px;font-size:9px}.lp-intro h1{font-size:clamp(27px,3.5vw,43px);line-height:1.6;margin:15px 0 8px}.lp-intro h1 em{font-style:normal;color:var(--lime)}.lp-intro p{font-size:13px;color:#bfd9d4;max-width:740px;line-height:2.2;margin:0}.lp-scope{font-size:10px;color:#c4dad1;margin-top:16px;border-right:3px solid var(--lime);padding-right:14px}.lp-workspace{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);align-items:start;gap:18px;padding-top:30px}.lp-panel,.lp-method{border:1px solid var(--line);border-radius:23px;background:var(--paper);padding:25px;min-width:0}.lp-panel-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.lp-panel-head h2{font-size:19px;line-height:1.65;margin:4px 0 0}.lp-overline{font-family:Arial,sans-serif;font-size:10px;font-weight:700;letter-spacing:1.2px;color:var(--teal)}.lp-step-badge{border:1px solid var(--line);border-radius:99px;padding:5px 11px;font-size:9px;color:var(--muted);white-space:nowrap}.lp-presets{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:19px}.lp-preset{border:1px solid var(--line);border-radius:10px;background:var(--paper-soft);padding:7px 10px;font-size:10px;cursor:pointer;color:var(--ink-2)}.lp-preset:hover,.lp-preset:focus-visible{border-color:var(--teal)}.lp-field-label{font-size:12px;font-weight:700;color:var(--ink)}.lp-objective{display:flex;align-items:end;gap:7px;flex-wrap:wrap;direction:rtl;margin:10px 0 25px}.lp-objective label,.lp-constraint-row label{display:flex;flex-direction:column;gap:5px;min-width:0}.lp-objective label span,.lp-constraint-row label span{font-size:9px;color:var(--muted)}.lp-objective input,.lp-objective select,.lp-constraint-row input,.lp-constraint-row select{height:43px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);padding:6px 9px;font:500 12px Arial,Tahoma,sans-serif;max-width:100%;min-width:0}.lp-objective input{width:75px;direction:ltr;text-align:center}.lp-objective select{min-width:122px;font-family:var(--font-fa);font-size:10px}.lp-objective :is(input,select):focus,.lp-constraint-row :is(input,select):focus{outline:2px solid var(--teal);outline-offset:1px}.lp-math{font:600 15px Arial,sans-serif;color:var(--ink);align-self:end;padding-bottom:12px}.lp-constraints-head{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:8px}.lp-help{font-size:9px;color:var(--muted)}.lp-constraint-list{display:grid;gap:8px}.lp-constraint-row{border:1px solid var(--line);border-radius:12px;padding:10px;display:flex;align-items:end;gap:7px;min-width:0;background:var(--bg)}.lp-constraint-row label{flex:1}.lp-constraint-row input{width:100%;text-align:center;direction:ltr}.lp-constraint-row select{width:70px}.lp-constraint-row .lp-operator{flex:0 0 70px}.lp-constraint-row .lp-constant{flex:1}.lp-constraint-row .lp-math{font-size:13px;padding-bottom:10px}.lp-remove{width:34px;height:43px;flex:none;border-radius:9px;border:1px solid var(--line);background:var(--paper);cursor:pointer;font-size:17px;color:#b45b5b}.lp-add{margin-top:11px;border:1px dashed var(--teal);color:var(--teal);background:transparent;border-radius:11px;padding:9px 15px;font-size:11px;cursor:pointer;width:100%}.lp-submit-row{display:flex;gap:9px;margin-top:24px}.lp-primary,.lp-secondary{min-height:47px;padding:10px 16px;border-radius:12px;cursor:pointer;font-size:11px;font-weight:700}.lp-primary{background:var(--teal);color:#fff;border:0;flex:1}.lp-secondary{background:var(--paper);color:var(--muted);border:1px solid var(--line)}.lp-error{border-radius:11px;background:#fff1e9;color:#a33a2f;border:1px solid #eecbb4;padding:10px 12px;margin:14px 0 0;font-size:11px}.lp-error[hidden]{display:none}.lp-chart-key{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:10px;margin-bottom:6px}.lp-chart-key span{display:inline-flex;align-items:center;gap:5px}.lp-chart-key i{display:inline-block;width:13px;height:13px;flex:none}.lp-key-line{border-top:3px solid #1f9c9f;margin-top:6px}.lp-key-fill{background:#8de0cc88;border-radius:3px;border:1px solid #43a4a4}.lp-key-dot{border-radius:50%;background:#e29c40}.lp-graph-wrap{width:100%;border:1px solid var(--line);border-radius:16px;background:var(--bg);overflow:hidden}.lp-graph-wrap svg{display:block;width:100%;height:auto;min-height:290px;direction:ltr}.lp-graph-note{color:var(--muted);font-size:10px;line-height:2;margin:8px 0 17px}.lp-result{padding:16px;border:1px solid var(--line);background:var(--paper-soft);border-radius:14px}.lp-result-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.lp-result-label{font-size:10px;color:var(--muted)}.lp-result strong{font-size:14px;color:var(--teal)}.lp-result p{font-size:11px;color:var(--ink-2);margin:7px 0 0}.lp-answer{display:flex;flex-wrap:wrap;gap:11px;margin-top:10px}.lp-answer:empty{display:none}.lp-answer span{background:var(--paper);border:1px solid var(--line);border-radius:9px;padding:5px 10px;font:600 12px Arial,Tahoma,sans-serif;color:var(--ink);direction:ltr}.lp-method{margin-top:20px}.lp-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;list-style:none;margin:0 0 24px;padding:0;counter-reset:lpstep}.lp-steps li{counter-increment:lpstep;border:1px solid var(--line);border-radius:12px;padding:12px 45px 12px 12px;position:relative;font-size:11px;line-height:2;color:var(--ink-2)}.lp-steps li:before{content:counter(lpstep,decimal-leading-zero);position:absolute;right:11px;top:12px;color:var(--teal);font:700 14px Arial,sans-serif}.lp-table-wrap{overflow-x:auto;max-width:100%;border:1px solid var(--line);border-radius:13px}.lp-table{width:100%;border-collapse:collapse;min-width:380px;font-size:11px;font-variant-numeric:tabular-nums}.lp-table caption{text-align:right;font-weight:700;padding:12px;background:var(--paper-soft)}.lp-table th,.lp-table td{padding:10px 13px;text-align:center;border-top:1px solid var(--line);white-space:nowrap}.lp-table th{background:var(--paper-soft)}.lp-caution{font-size:10px;color:var(--muted);line-height:2.2;margin-top:18px;border-right:3px solid var(--gold);padding-right:13px}.lp-footer{background:#102b34;color:#d7ebe0}.lp-footer .container{padding-block:25px;display:flex;gap:12px;justify-content:space-between;font-size:10px}.lp-grid-line{stroke:var(--line);stroke-width:1}.lp-axis{stroke:#6d9290;stroke-width:2}.lp-constraint-line{stroke:#159c9f;stroke-width:2.5;fill:none}.lp-feasible{fill:#75ccb5;fill-opacity:.35;stroke:#2eae98;stroke-width:1.5}.lp-point{fill:#cf9c42;stroke:#fff;stroke-width:2}.lp-optimal{fill:#f7b344;stroke:#795118;stroke-width:2.2}.lp-axis-label,.lp-tick{fill:var(--muted);font:12px Arial,sans-serif}.lp-grid-outline{stroke:var(--line);fill:none;stroke-width:1}.lp-plot-empty{fill:var(--muted);font:15px var(--font-fa)}.lp-constraint-label{fill:#137f80;font:12px Arial,sans-serif}.lp-arrow{stroke:#ba8232;stroke-width:3;fill:none}
@media(max-width:980px){.lp-workspace{grid-template-columns:1fr}.lp-editor{order:1}.lp-visual{order:2}}
@media(max-width:660px){.lp-header .lp-nav{display:none}.lp-intro-inner{padding-block:35px}.lp-intro h1{font-size:27px}.lp-intro p{font-size:11px}.lp-scope{font-size:9px}.lp-workspace{padding-top:14px;gap:12px}.lp-panel,.lp-method{padding:15px;border-radius:18px}.lp-panel-head h2{font-size:16px}.lp-step-badge{font-size:8px;padding:4px 8px}.lp-objective{gap:5px}.lp-objective select{min-width:96px;width:100px;font-size:9px}.lp-objective input{width:62px;font-size:12px}.lp-objective .lp-math{font-size:12px}.lp-constraint-row{gap:4px;padding:8px 5px}.lp-constraint-row .lp-operator{flex:0 0 53px}.lp-constraint-row select{width:53px;padding:4px}.lp-constraint-row :is(input,select){padding:5px 3px;height:39px}.lp-constraint-row .lp-math{font-size:11px}.lp-remove{height:39px;width:29px}.lp-steps{grid-template-columns:1fr}.lp-footer .container{display:block;line-height:2}.lp-chart-key{gap:8px;font-size:9px}.lp-graph-wrap svg{min-height:240px}.lp-result strong{font-size:12px}}
@media(max-width:360px){.lp-objective input{width:56px}.lp-objective select{width:92px;min-width:92px}.lp-constraint-row .lp-operator{flex:0 0 45px}.lp-constraint-row select{width:45px}.lp-constraint-row .lp-math{font-size:10px}}
@media(prefers-reduced-motion:reduce){.lp-preset,.lp-primary,.lp-secondary{transition:none}}


/* V4 integration: use the approved live iePlanet shell, logo and Estedad typography. */
.lp-breadcrumb{display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:#c4d9d4;font-size:10px;margin:0 0 18px}
.lp-breadcrumb a{color:#d5ece4;text-decoration:none}
.lp-breadcrumb a:hover{text-decoration:underline}
.lp-breadcrumb [aria-current="page"]{color:#fff;font-weight:700}
.lp-source-section{padding-block:0 52px}
.lp-source-panel{background:var(--paper-soft);border:1px solid var(--line);border-radius:20px;padding:22px 25px}
.lp-source-panel h2{font-size:16px;margin:5px 0 8px;color:var(--ink)}
.lp-source-panel p{font-size:11px;line-height:2.2;color:var(--muted);margin:0 0 9px}
.lp-source-links{display:flex;flex-wrap:wrap;gap:10px 18px;margin:0;padding:0;list-style:none}
.lp-source-links a{font-size:11px;color:var(--teal);overflow-wrap:anywhere}
.lp-privacy{font-size:10px;color:var(--muted);margin:17px 0 0;line-height:2}
.lp-privacy strong{color:var(--teal)}
.tools-grid a.tool-card{display:block;color:inherit;text-decoration:none;cursor:pointer}
.tools-grid a.tool-card:hover{border-color:var(--teal);transform:translateY(-3px)}
.tools-grid a.tool-card:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
.tool-card-cta{display:block;margin-top:12px;color:var(--teal);font-size:10px;font-weight:700}
.or-next-steps small a{color:var(--teal);font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.lp-source-section{padding-bottom:30px}.lp-source-panel{padding:18px}.lp-breadcrumb{font-size:9px}}
