/* FitsCalc FeC R2 standalone design: flat industrial native layout (Sortament reference).
   Presentation is isolated, no shared CSS rewrite or external font dependency. */
#fec-app{font-family:"Segoe UI",Arial,sans-serif;color:#000;font-size:13px;line-height:1.48;min-width:0}
#fec-app,#fec-app *{box-sizing:border-box}#fec-app :is(button,input){font:inherit}#fec-app button{cursor:pointer}
#fec-app{width:100%;max-width:none;padding:0 0 24px}
.fec-workspace{min-width:0}.fec-controls{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:end;background:#fff;border:1px solid #cbd4da;border-radius:3px;padding:12px 14px}
.fec-field{display:flex;flex-direction:column;gap:4px;min-width:128px;color:#334b59;font-weight:600}.fec-field input[type=text]{min-height:36px;border:1px solid #b9c4cd;border-radius:3px;background:#fff;padding:6px 9px;width:142px;font-variant-numeric:tabular-nums;color:#202c35}.fec-field-slider{flex:1 1 135px;min-width:110px}.fec-field-slider>label{font-weight:600}.fec-field-slider input{accent-color:#2c6994;width:100%;height:36px;margin:0}
.fec-control-actions{display:flex;gap:7px;align-items:center;margin-left:auto}.fec-btn,.fec-chip,.fec-segment{min-height:36px;padding:7px 12px;border-radius:3px;border:1px solid #b9c4cd;background:#fff;color:#273e4d;font-weight:600}.fec-btn:hover,.fec-chip:hover,.fec-segment:hover{background:#f0f4f7}.fec-btn-primary{background:#296c9e;border-color:#296c9e;color:#fff}.fec-btn-primary:hover{background:#235b87;color:#fff}.fec-btn:focus-visible,.fec-chip:focus-visible,.fec-segment:focus-visible,input:focus-visible,svg:focus-visible{outline:2px solid #d88b19;outline-offset:2px}
.fec-preset-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:11px 1px;color:#62727d}.fec-chip{min-height:28px;font-size:12px;padding:3px 9px}.fec-chip[aria-pressed=true]{background:#e5eff6;border-color:#2c6994;color:#185d8d}.fec-help{font-size:12px;color:#657681;margin:7px 0;line-height:1.5}.fec-preset-row .fec-help{margin-left:auto}.fec-error{padding:9px 12px;border:1px solid #d6ae83;background:#fff7ed;color:#8a401d;margin:9px 0}
.fec-main-grid{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(320px,.9fr);gap:12px;align-items:start}.fec-bottom-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,1fr);gap:12px;margin-top:12px;align-items:start}
.fec-panel{background:#fff;border:1px solid #cbd4da;border-radius:3px;padding:14px;min-width:0}.fec-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 11px}.fec-panel-head h2{font-weight:650;font-size:16px;color:#253c4c;margin:0;line-height:1.4}.fec-model-label{font-size:11px;color:#657681;white-space:nowrap}.fec-view-switch{display:flex;flex-wrap:wrap;gap:4px}.fec-segment{padding:5px 9px;min-height:30px;font-size:12px}.fec-segment[aria-pressed=true]{color:#fff;background:#2c6994;border-color:#2c6994}
.fec-figure-wrap{border:1px solid #d6dce2;background:#fff;overflow-x:auto;overscroll-behavior-x:contain}.fec-figure-wrap svg{display:block;width:100%;min-width:720px;height:auto;user-select:none;touch-action:auto}.fec-figure-wrap svg.is-dragging{touch-action:none;cursor:crosshair}
.fec-mobile-hint{display:none;font-size:12px;color:#5d7180;margin:8px 0 0}.fec-legend{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:9px;font-size:11px;color:#506574}.fec-legend span{display:inline-flex;gap:5px;align-items:center}.fec-legend i{width:12px;height:12px;display:inline-block;border:1px solid #b9c6cf}.fec-legend .fec-legend-line{height:0;border:none;border-top:2px dashed #376d97;width:17px}.fec-chart-footer .fec-help{margin:8px 0}.fec-readout{color:#354e5e;background:#f6f8fa;border-top:1px solid #e1e6e9;font-variant-numeric:tabular-nums;margin:0;padding:7px 8px}
.fec-result-state{padding:10px;background:#f4f7f9;border:1px solid #d7e0e5;margin-bottom:10px;font-weight:650;color:#234b67}.fec-result-state.is-warning{background:#fff7ed;border-color:#e7c49e;color:#7c4a26}.fec-result-state.is-error{background:#fff2f2;border-color:#e6b5b5;color:#993c3c}
.fec-data-table{border-collapse:collapse;width:100%;font-size:12px;table-layout:auto}.fec-data-table th,.fec-data-table td{padding:8px 9px;text-align:left;border:1px solid #d5dde3;vertical-align:top}.fec-data-table th{background:#f3f5f7;color:#374e5d;font-weight:650}.fec-data-table td:nth-child(2){font-variant-numeric:tabular-nums;white-space:nowrap}.fec-data-table tbody tr:nth-child(even) td{background:#fafcfd}
.fec-balance{padding:8px 10px;margin:10px 0;border:1px solid #d4dfe5;background:#f7fafc;font-size:12px}.fec-balance.ok{border-color:#b8d2c0;background:#f5faf6}.fec-balance.fail{border-color:#d8bba3;background:#fff6ef}
.fec-subpanel{margin-top:8px}.fec-subpanel h3{margin:0 0 6px;font-size:13px;color:#334e60}.fec-formulas{font-family:Consolas,"Courier New",monospace;font-size:12px;background:#f6f8f9;border:1px solid #e0e6ea;min-height:40px;padding:9px;white-space:pre-wrap;word-break:break-word;line-height:1.55}.fec-caveat{color:#687985;font-size:12px;margin-top:10px;line-height:1.5}
.fec-timeline{border:1px solid #d5dde3;margin:10px 0 8px;background:#fafcfd;overflow-x:auto}.fec-timeline svg{display:block;min-width:600px;width:100%;height:auto}.fec-structure-bars{display:flex;height:16px;overflow:hidden;border:1px solid #cad3d9;margin-top:12px}.fec-structure-bars span{height:100%;display:block}.fec-method{margin-top:12px;background:#fff;border:1px solid #cbd4da}.fec-method summary{font-weight:650;cursor:pointer;padding:10px 14px;color:#344f60}.fec-method-body{border-top:1px solid #e2e6e9;padding:10px 14px}.fec-method-body p{margin:5px 0 11px}.fec-method-body a{color:#246f9d}.fec-method-body ul{margin:0 0 12px;padding-left:18px}.fec-footer{font-size:11px;color:#77858e;padding:12px 2px 0}
@media(max-width:1140px){.fec-main-grid,.fec-bottom-grid{grid-template-columns:minmax(0,1fr)}.fec-results{order:2}}
@media(max-width:650px){#fec-app{padding:0 0 18px}.fec-panel{padding:10px}.fec-controls{padding:10px;gap:8px}.fec-field{min-width:calc(50% - 10px)}.fec-field input[type=text]{width:100%}.fec-field-slider{min-width:calc(50% - 10px);flex:1 1 calc(50% - 10px)}.fec-control-actions{margin-left:0;width:100%}.fec-control-actions button{flex:1}.fec-preset-row .fec-help{margin-left:0;flex:1 1 100%}.fec-panel-head{align-items:start;flex-wrap:wrap}.fec-figure-wrap svg{min-width:760px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

@media(max-width:650px){.fec-mobile-hint{display:block}}
