:root{--blue:#0876c7;--blue-dark:#07548c;--ink:#10212f;--muted:#64748b;--line:#dce6ee;--wash:#f4f8fb;--card:#fff;--green:#00856e;--red:#c9302c}*{box-sizing:border-box}body{margin:0;background:var(--wash);color:var(--ink);font-family:Tahoma,Arial,sans-serif}.topbar{min-height:100px;background:linear-gradient(115deg,#086db8,#0a8ad9);color:#fff;padding:22px clamp(18px,4vw,58px);display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:0 2px 10px #0c406340}.topbar h1{margin:2px 0 0;font-family:Arial,sans-serif;font-size:28px;letter-spacing:.2px}.eyebrow{margin:0;color:var(--muted);font:700 11px/1.3 Arial,sans-serif;text-transform:uppercase;letter-spacing:1px}.topbar .eyebrow{color:#d9efff}.catalogue-status{background:#ffffff20;border:1px solid #ffffff55;border-radius:999px;padding:9px 14px;font-size:13px}main{max-width:1540px;margin:auto;padding:26px clamp(16px,3vw,42px) 64px}.control-card,.results-card,.detail-panel,.kpis>div{background:var(--card);border:1px solid #e3ebf1;border-radius:14px;box-shadow:0 3px 15px #102a3f0c}.control-card{padding:20px}.input-grid{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:14px}.input-grid label,.search{font-size:12px;font-weight:700;color:#30485b}.input-grid label span{color:var(--muted);font-weight:400}.input-grid input,.input-grid select,.search input{display:block;width:100%;height:41px;margin-top:6px;border:1px solid #cbd8e2;border-radius:8px;background:#fff;padding:0 11px;font:15px Arial,sans-serif;color:var(--ink)}.material-row{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:20px;border-top:1px solid #e5edf2;padding-top:16px;font-size:13px;font-weight:700}.check{display:flex;align-items:center;gap:6px;font-weight:400}.check input{accent-color:var(--blue);inline-size:16px;block-size:16px}.material-row button{margin-inline-start:auto;background:var(--blue);border:0;border-radius:8px;color:#fff;font-weight:700;font-size:14px;padding:12px 24px;cursor:pointer}.material-row button:hover{background:var(--blue-dark)}.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}.kpis>div{padding:14px 18px}.kpis strong{display:block;color:var(--blue-dark);font:700 20px/1.3 Arial,sans-serif;overflow-wrap:anywhere}.kpis span{color:var(--muted);font-size:12px}.results-card{padding:20px}.section-head,.detail-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}.section-head h2,.detail-head h2{margin:0;font-size:20px}.section-head p{color:var(--muted);font-size:13px;margin:5px 0 0}.search{min-width:230px}.search input{height:36px}.table-scroll{overflow:auto;border:1px solid var(--line);border-radius:10px;max-height:520px}table{border-collapse:collapse;width:100%;min-width:1040px;font-size:13px}th,td{padding:12px 10px;border-bottom:1px solid #e8eef3;text-align:center;white-space:nowrap}th{position:sticky;top:0;background:#eaf4fc;color:#155c91;font-size:11px;z-index:1}tbody tr{cursor:pointer;transition:background .15s}tbody tr:hover,tbody tr.active{background:#e3f2fd}.model-link{background:none;border:0;padding:0;color:#0876c7;font-weight:700;text-decoration:underline;cursor:pointer;font:inherit}.row-dot{color:#0a8ad9;font-size:16px}.empty{padding:36px;color:var(--muted);cursor:default}.detail-panel{margin-top:20px;padding:22px}.hidden{display:none}.detail-head{align-items:center}.icon-button{background:#eef4f8;border:0;border-radius:50%;width:35px;height:35px;font-size:22px;color:#476275;cursor:pointer}.detail-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,.85fr);gap:20px;align-items:start}.charts{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fbfdff}.drag-note{font-size:12px;color:var(--muted);margin:0 0 10px}.charts canvas{width:100%;height:auto;display:block;touch-action:none}.spec-panel{display:grid;gap:12px}.spec-block{background:#f7fafc;border:1px solid #e2eaf0;border-radius:10px;padding:13px}.spec-block h3{font-size:14px;margin:0 0 10px;color:#155c91}.spec-row{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid #e4edf2;font-size:13px}.spec-row:last-child{border-bottom:0}.spec-row span{color:var(--muted)}.warning{color:var(--red);font-size:12px;margin:0}@media(max-width:1100px){.input-grid{grid-template-columns:repeat(3,1fr)}.detail-layout{grid-template-columns:1fr}.spec-panel{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.topbar{min-height:unset}.topbar h1{font-size:22px}.catalogue-status{font-size:11px}.input-grid{grid-template-columns:repeat(2,1fr)}.material-row button{width:100%;margin-inline-start:0}.kpis{grid-template-columns:1fr}.section-head{align-items:stretch;flex-direction:column}.search{min-width:0}.spec-panel{grid-template-columns:1fr}main{padding:17px 12px 44px}}
:root{--detail-blue:#1976d2}.detail-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.back-button{border:0;border-radius:50%;width:38px;height:38px;background:#eef4f8;color:#263f50;font-size:25px;cursor:pointer}.detail-actions{display:flex;gap:10px}.action-button{border:0;border-radius:5px;background:var(--detail-blue);color:#fff;padding:10px 18px;font-weight:700;font-size:13px;cursor:pointer}.action-button:hover{background:#07548c}.detail-layout{grid-template-columns:minmax(0,1.65fr) minmax(310px,.85fr)}
:root{--table-blue:#0b67a8}.section-head h2 span{font-size:12px;color:var(--muted);font-weight:400;margin-inline-start:8px}.table-scroll{max-height:620px}.pagination{display:flex;justify-content:flex-start;align-items:center;gap:12px;color:var(--muted);font-size:12px;margin-top:12px}.pagination label{display:flex;align-items:center;gap:7px}.pagination select{border:0;border-bottom:1px solid #9ea9b2;background:transparent;color:#475569;padding:5px 10px}.pagination button{border:0;background:transparent;font-size:23px;color:#9aa6af;cursor:pointer}.pagination button:not(:disabled):hover{color:var(--table-blue)}.pagination button:disabled{opacity:.35;cursor:default}
 .formula-note{margin-top:18px;padding:16px 20px;border:1px solid #d9e5ee;border-radius:12px;background:#f7fbfe;color:#29485f;line-height:1.7}.formula-note h3{margin:0 0 8px;color:#075a93}.formula-note p{margin:3px 0}.formula-note strong{color:#073f6b}

/* Responsive layout refinements */
html{overflow-x:hidden}body{overflow-x:hidden}.topbar{min-width:0}.detail-layout{grid-template-columns:minmax(0,1.65fr) minmax(310px,.85fr)}.charts{min-width:0}.charts canvas{max-width:100%}.table-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}.detail-head>div:first-child{min-width:0}.detail-head h2{overflow-wrap:anywhere}
@media (max-width:1100px){
  main{padding-inline:20px}
  .detail-layout{grid-template-columns:1fr}
  .spec-panel{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .topbar{padding:18px 16px;flex-direction:column;align-items:stretch;text-align:center;gap:10px}
  .topbar h1{font-size:24px}
  .catalogue-status{align-self:center;font-size:12px}
  main{padding:16px 12px 42px}
  .control-card,.results-card,.detail-panel{padding:14px}
  .input-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .input-grid label{min-width:0;font-size:11px}
  .input-grid input,.input-grid select{height:40px;padding-inline:8px}
  .kpis{gap:10px;margin-block:12px}
  .kpis>div{padding:12px 14px}
  .section-head{gap:10px}
  .search{min-width:0;width:100%}
  .detail-toolbar{flex-wrap:wrap;gap:10px}
  .detail-actions{flex:1;min-width:0;justify-content:flex-end}
  .action-button{padding:10px 12px;font-size:12px}
  .detail-head h2{font-size:17px}
  .charts{padding:8px}
  .formula-note{padding:12px 14px;font-size:12px}
}
@media (max-width:520px){
  .topbar h1{font-size:21px}
  .eyebrow{font-size:10px}
  .input-grid{grid-template-columns:1fr}
  .material-row{gap:10px;margin-top:14px;padding-top:12px}
  .material-row button{width:100%;margin-inline-start:0}
  .kpis{grid-template-columns:1fr}
  .kpis strong{font-size:18px}
  .detail-toolbar{align-items:stretch}
  .back-button{flex:0 0 38px}
  .detail-actions{width:100%;flex:1}
  .action-button{flex:1}
  .detail-head{align-items:flex-start}
  .detail-head .eyebrow{margin-top:2px}
  .detail-head h2{font-size:15px}
  .spec-panel{grid-template-columns:1fr}
  .spec-row{font-size:12px}
  .formula-note h3{font-size:13px}
}

.dimensions-figure{overflow:hidden}.dimension-svg-wrap{display:flex;justify-content:center;align-items:center;min-height:370px;padding:6px;background:#fff;border:1px solid #e2eaf0;border-radius:8px}.dimension-svg{display:block;width:min(100%,260px);height:auto}.dimension-stroke{fill:none;stroke:#495762;stroke-width:1.2}.dimension-stroke line,.dimension-stroke rect{vector-effect:non-scaling-stroke}.dimension-stroke marker path{fill:#495762;stroke:none}.dimension-holes{fill:#65737c;stroke:none}.dimension-label{font:12px Arial,sans-serif;fill:#253743}.dimension-label text:nth-child(even){display:none}.dimensions-table{margin-top:0}.dimensions-table .spec-row{font-size:12px}.dimensions-table .spec-row span{color:#303b43}
@media (max-width:520px){.dimension-svg-wrap{min-height:330px}.dimension-svg{width:min(100%,230px)}.dimensions-table .spec-row{font-size:11px}}
.dimension-image-wrap{display:flex;justify-content:center;align-items:center;padding:8px;background:#fff;border:1px solid #e2eaf0;border-radius:8px}.dimension-image{display:block;width:auto;height:min(520px,60vh);max-width:100%;image-rendering:auto}
@media (max-width:520px){.dimension-image{height:min(460px,58vh)}}
.dimension-canvas{position:relative;width:min(100%,320px);height:min(560px,65vh);flex:0 0 auto}.dimension-canvas .dimension-image{position:absolute;inset:0;width:auto;height:100%;max-width:none;margin:auto}.dimension-overlay{position:absolute;inset:0;width:100%;height:100%;z-index:2;pointer-events:none;overflow:visible}.dimension-overlay-line{fill:none;stroke:#3f4c55;stroke-width:1.15}.dimension-overlay-line line{vector-effect:non-scaling-stroke}.dimension-overlay-line marker path{fill:#3f4c55;stroke:none}.dimension-overlay-text{font:700 10px Arial,sans-serif;fill:#1c2e3a}.dimension-overlay-text text{paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round}
@media (max-width:520px){.dimension-canvas{height:min(480px,58vh)}.dimension-overlay-text{font-size:9px}}
.dimension-overlay-text{direction:ltr;unicode-bidi:bidi-override}

/* Flow and head unit selectors */
.unit-field{min-width:0}.unit-input-row{display:flex;direction:ltr;align-items:stretch;width:100%;margin-top:6px}.unit-input-row input{flex:1;min-width:0;margin-top:0!important;border-radius:11px 0 0 11px!important;border-inline-end:0!important}.unit-input-row select{flex:0 0 94px;min-width:0;margin-top:0!important;border-radius:0 11px 11px 0!important;background:#eef8fc;color:#0c6592;font:600 12px Arial,sans-serif;padding:0 7px;border-inline-start:1px solid #cbdbe5}.unit-input-row input:focus{position:relative;z-index:1}.unit-input-row select:focus{outline:0;border-color:#34aee0;box-shadow:0 0 0 4px #34aee01f;position:relative;z-index:1}
@media(max-width:520px){.unit-input-row select{flex-basis:88px;font-size:11px}}

/* Local database manager */
.topbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.header-action{border:1px solid #b8f3ff66;border-radius:10px;padding:10px 14px;background:#ffffff14;color:#fff;font:700 12px "Segoe UI",Tahoma,Arial,sans-serif;cursor:pointer;box-shadow:inset 0 1px #ffffff16,0 8px 18px #00182720;transition:.2s}.header-action:hover{background:#ffffff26;transform:translateY(-1px)}
.tolerance-disabled{opacity:.52}.tolerance-disabled input:disabled{cursor:not-allowed;background:#edf3f6;color:#69808e}
.data-manager{margin-top:20px}.manager-card{padding:22px;border:1px solid #dce8ef;border-radius:22px;background:linear-gradient(145deg,#fff,#f8fcfd);box-shadow:0 12px 30px #14334b0d}.manager-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.manager-head h2{margin:2px 0 5px;color:#112d42;font-size:23px}.manager-head p:not(.eyebrow){margin:0;color:#718898;font-size:13px}.manager-summary{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:18px 0 14px}.manager-summary>span:not(.manager-feedback){padding:8px 11px;border:1px solid #d8e7ee;border-radius:10px;background:#f5fafc;color:#5d7889;font-size:12px}.manager-summary strong{color:#0a6fae;font-size:16px}.manager-feedback{margin-inline-start:auto;font-size:12px;color:#6b8191}.manager-feedback.success{color:#00856e}.manager-feedback.error{color:#bd3835}.manager-feedback.loading{color:#0b75ae}.manager-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 0;border-top:1px solid #e0ebf0;border-bottom:1px solid #e0ebf0}.manager-tabs,.manager-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.manager-tab,.manager-actions button,.manager-actions a,.manager-import select,.manager-import input[type=file],.manager-editor button{height:38px;border:1px solid #d2e2ea;border-radius:9px;padding:0 12px;background:#fff;color:#486678;font:600 12px "Segoe UI",Tahoma,Arial,sans-serif;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.manager-tab.active{border-color:#78cddd;background:#e5f8fb;color:#076a86;box-shadow:0 4px 12px #0aa4b51a}.manager-primary{border-color:#0b82d1!important;background:linear-gradient(135deg,#0b8bd3,#096db5)!important;color:#fff!important;box-shadow:0 6px 14px #086eb52b}.manager-actions button:hover,.manager-actions a:hover,.manager-editor button:hover{border-color:#91cfe0;background:#f0fbfd}.manager-actions .manager-primary:hover{background:linear-gradient(135deg,#0b95df,#0865aa)!important}.manager-import{display:grid;grid-template-columns:minmax(190px,1.3fr) 210px 160px minmax(180px,1fr) auto;align-items:center;gap:10px;margin:15px 0;padding:14px;border:1px solid #d4e9ef;border-radius:14px;background:linear-gradient(135deg,#f1fbfd,#f8fcfe)}.manager-import strong{display:block;color:#155c91;font-size:13px}.manager-import p{margin:4px 0 0;color:#77909e;font-size:11px}.manager-import select,.manager-import input[type=file]{width:100%;height:40px}.manager-import input[type=file]{padding:8px;font-weight:400}.manager-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:14px;align-items:start}.manager-list,.manager-editor{min-width:0;border:1px solid #dbe7ed;border-radius:15px;background:#fbfdfe;overflow:hidden}.manager-list-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding:15px;border-bottom:1px solid #e1ebf0}.manager-list-head h3,.editor-head h3{margin:0;color:#0d6194;font-size:15px}.manager-list-head p{margin:4px 0 0;color:#7b909c;font-size:11px}.manager-list-head label{min-width:220px;color:#557284;font-size:11px}.manager-list-head input{display:block;width:100%;height:34px;margin-top:4px;border:1px solid #cbdde6;border-radius:8px;padding:0 8px;background:#fff}.manager-table{min-width:760px;font-size:12px}.manager-table th{position:sticky;top:0;background:#eaf6fa;color:#156080}.manager-table td{padding:9px 8px}.manager-table tr small{display:block;margin-top:3px;color:#91a2aa;font-size:9px;direction:ltr}.manager-table .price-check{accent-color:#0b82d1}.manager-price{width:100px;height:31px;border:1px solid #cadde5;border-radius:7px;padding:0 7px;text-align:center;color:#15364a;background:#fff}.manager-edit{border:0;background:transparent;color:#0879c6;font:700 12px "Segoe UI",Tahoma,Arial,sans-serif;text-decoration:underline;cursor:pointer}.manager-edit-small{padding:5px 8px;border:1px solid #d1e1e8;border-radius:7px;text-decoration:none}.manager-editor{padding:16px;min-height:260px}.editor-empty{text-align:center;padding:30px 16px;color:#7a919e}.editor-empty span{display:inline-flex;width:38px;height:38px;align-items:center;justify-content:center;border-radius:12px;background:#e5f8fb;color:#0b91a6;font-size:20px}.editor-empty h3{margin:12px 0 5px;color:#315568;font-size:15px}.editor-empty p{margin:0 0 15px;font-size:12px;line-height:1.6}.editor-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding-bottom:12px;border-bottom:1px solid #e0ebf0}.editor-head p{margin:4px 0 0;color:#7c919c;font-size:11px;direction:ltr;text-align:right}.editor-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:13px}.editor-form label{display:block;color:#557284;font-size:11px}.editor-form input,.editor-form select,.editor-form textarea{display:block;width:100%;margin-top:4px;border:1px solid #cbdde6;border-radius:8px;background:#fff;color:#18384b;padding:8px;font:12px "Segoe UI",Tahoma,Arial,sans-serif}.editor-form input,.editor-form select{height:36px}.editor-form textarea{min-height:92px;resize:vertical;direction:ltr;text-align:left;font-family:Consolas,monospace;font-size:10px}.editor-wide{grid-column:1/-1}.editor-footer{display:flex;align-items:center;gap:12px;margin-top:14px;padding-top:12px;border-top:1px solid #e0ebf0}.editor-footer span{font-size:11px;color:#bd3835}.manager-import .manager-primary{height:40px}
@media(max-width:1000px){.manager-grid{grid-template-columns:1fr}.manager-import{grid-template-columns:repeat(2,minmax(0,1fr))}.manager-import>div:first-child{grid-column:1/-1}.manager-import .manager-primary{width:100%}}
@media(max-width:650px){.topbar-actions{width:100%;justify-content:center}.header-action{flex:1}.manager-card{padding:14px;border-radius:17px}.manager-head h2{font-size:18px}.manager-summary{gap:6px}.manager-feedback{width:100%;margin-inline-start:0}.manager-toolbar{align-items:stretch}.manager-tabs,.manager-actions{width:100%}.manager-tab,.manager-actions button,.manager-actions a{flex:1}.manager-import{grid-template-columns:1fr;padding:11px}.manager-list-head{align-items:stretch;flex-direction:column}.manager-list-head label{min-width:0}.editor-form{grid-template-columns:1fr}.editor-wide{grid-column:auto}}

/* A4 technical PDF - a fixed, print-only report rather than a browser print
   of the responsive application. `print-preview` is only used for QA and is
   never set by the application itself. */
.print-report{display:none;direction:ltr;color:#111;font-family:Arial,Helvetica,sans-serif;background:#fff}.report-page{width:210mm;height:297mm;box-sizing:border-box;padding:8mm 10mm;background:#fff;overflow:hidden;page-break-after:always;break-after:page}.report-page:last-child{page-break-after:auto;break-after:auto}.report-header{height:27mm;display:grid;grid-template-columns:1fr 1.22fr .88fr;align-items:center;gap:5mm;border-top:.45mm solid #bfc1c3;border-bottom:.45mm solid #bfc1c3;padding:2.3mm 2mm}.report-model{font-size:29pt;font-weight:800;line-height:.96;letter-spacing:-.6px}.report-family{align-self:stretch;display:flex;justify-content:center;flex-direction:column;font-family:Georgia,"Times New Roman",serif;font-size:13pt;line-height:1.25}.report-family strong{font-size:15pt}.report-brand{align-self:center;justify-self:end;text-align:center;color:#1268b2;font-style:italic;letter-spacing:-.5px;line-height:.78}.report-brand strong{display:block;font-size:23pt;font-weight:800}.report-brand small{display:block;margin-top:3mm;color:#366e9c;font:700 6.5pt/1 Arial,sans-serif;letter-spacing:1.1px}.report-band{min-height:11mm;margin-top:6mm;padding:2.2mm 3mm;display:flex;align-items:center;justify-content:space-between;background:#d8d8d8;color:#111;font-size:10pt;line-height:1.2}.report-band strong{font-size:11pt}.report-band span{text-align:left;font-weight:700}.report-chart-image{display:block;width:100%;height:228mm;margin:3mm auto 0;object-fit:contain;object-position:top center}.report-fact-columns{display:grid;grid-template-columns:1fr 1fr;gap:8mm;margin-top:6mm;align-items:start}.report-table-section{margin:0 0 4mm;border:.25mm solid #111}.report-table-section h3{margin:0;padding:1.35mm 0 1.2mm;text-align:center;background:#e6e6e6;border-bottom:.25mm solid #111;font-size:8.3pt;font-weight:700;letter-spacing:.15px}.report-facts{width:100%;border-collapse:collapse;font-size:8.1pt}.report-facts th,.report-facts td{padding:1.05mm 1.5mm;border-bottom:.18mm solid #111;line-height:1.05}.report-facts tr:last-child th,.report-facts tr:last-child td{border-bottom:0}.report-facts th{width:50%;font-weight:400;text-align:left;border-right:.18mm solid #111}.report-facts td{font-weight:700;text-align:center;white-space:nowrap}.report-dimension-layout{display:grid;grid-template-columns:46% 54%;gap:2mm;margin-top:7mm;align-items:start}.report-dimension-figure{height:210mm;display:flex;align-items:flex-start;justify-content:center;padding-top:2mm}.report-dimension-figure img{display:block;max-width:100%;max-height:202mm;object-fit:contain}.report-dimension-layout h2{margin:5mm 0 5mm;font-size:13pt;text-align:center}.report-scales{width:100%;border-collapse:collapse;font-size:9pt;border:.25mm solid #111}.report-scales th,.report-scales td{padding:2.1mm 2mm;border:.18mm solid #111;line-height:1.05}.report-scales th{font-weight:700;text-align:left;background:#e6e6e6}.report-scales th:nth-child(2),.report-scales td:nth-child(2){width:16%;text-align:center}.report-scales th:last-child,.report-scales td:last-child{text-align:right;white-space:nowrap}.report-footer{display:flex;justify-content:space-between;margin-top:-1.5mm;padding-top:2.2mm;border-top:.25mm solid #aeb2b4;color:#555;font-size:7.5pt}.report-footer span:last-child{font-weight:700}
body.print-preview{margin:0;background:#c7cbd0!important}.print-preview> :not(#printReport){display:none!important}.print-preview #printReport{display:block!important;margin:0 auto;box-shadow:0 5px 18px #0003}.print-preview .report-page{margin:0 auto 8mm;box-shadow:0 1px 3px #0002}
@media print{@page{size:A4 portrait;margin:0}html,body{width:210mm!important;margin:0!important;padding:0!important;background:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}body> :not(#printReport){display:none!important}#printReport{display:block!important}.report-page{margin:0!important;box-shadow:none!important}}

/* Creative technical UI refresh */
:root{--blue:#0b82d1;--blue-dark:#0b3555;--ink:#102536;--muted:#6b8191;--line:#d8e5ed;--wash:#f1f6f9;--card:#ffffff;--teal:#14b8ad;--violet:#6258d9}
html{background:var(--wash)}body{font-family:"Segoe UI",Tahoma,Arial,sans-serif;background:radial-gradient(circle at 8% 0%,#e3f4ff 0,transparent 30%),linear-gradient(145deg,#f7fafc 0%,#eef5f8 100%);color:var(--ink)}
.topbar{position:relative;isolation:isolate;min-height:132px;padding:28px clamp(20px,5vw,72px);background:linear-gradient(125deg,#071c30 0%,#0b3e62 58%,#0d8cae 125%);border-bottom:1px solid #7de6ec55;box-shadow:0 14px 32px #08243b25;overflow:hidden}.topbar::before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#ffffff0b 1px,transparent 1px),linear-gradient(90deg,#ffffff0b 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(90deg,#000,transparent 86%);opacity:.65}.topbar>div{position:relative;z-index:1}.topbar h1{font-size:clamp(27px,3.4vw,43px);font-weight:700;letter-spacing:-1.1px;text-shadow:0 3px 14px #0003}.topbar .eyebrow{font-size:12px;letter-spacing:1.8px;color:#a8e8ff}.catalogue-status{border-color:#b8f3ff66;background:#ffffff12;box-shadow:inset 0 1px #ffffff16,0 8px 18px #00182720;backdrop-filter:blur(8px)}
main{max-width:1500px;padding:28px clamp(16px,3.6vw,52px) 72px}.control-card,.results-card,.detail-panel,.kpis>div{border-color:#dce8ef;box-shadow:0 12px 30px #14334b0d}.control-card{position:relative;padding:24px;border-radius:22px;overflow:hidden}.control-card::before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--teal),var(--blue),var(--violet))}.selection-mode{margin:-2px 0 18px;padding:7px 9px;border:1px solid #d8e7ef;border-radius:14px;background:#f4f9fc;gap:7px}.selection-mode>span{padding:0 8px;color:#345367}.selection-mode label{padding:9px 13px;border-radius:10px;color:#456375;transition:.2s ease}.selection-mode label:has(input:checked){background:#dff2fe;color:#07598f;box-shadow:0 4px 12px #0a70b81a}.input-grid{gap:15px}.input-grid label,.search{color:#345367;font-size:12px;letter-spacing:.05px}.input-grid input,.input-grid select,.search input,.pump-search-wrap input{height:46px;border-radius:11px;border-color:#cadbe5;background:#fbfdfe;box-shadow:inset 0 1px 2px #0f2d3e0a;transition:border-color .2s,box-shadow .2s,background .2s}.input-grid input:focus,.input-grid select:focus,.search input:focus,.pump-search-wrap input:focus{outline:0;border-color:#34aee0;background:#fff;box-shadow:0 0 0 4px #34aee01f}.material-row{margin-top:22px;padding-top:18px;border-color:#dce8ef;gap:11px}.check{padding:7px 10px;border:1px solid #d8e5ec;border-radius:9px;background:#fbfdfe}.material-row button{border-radius:11px;padding:13px 27px;background:linear-gradient(135deg,#0b8bd3,#096db5);box-shadow:0 8px 16px #086eb52e;letter-spacing:.1px}.material-row button:hover{transform:translateY(-1px);box-shadow:0 11px 20px #086eb53b}
.kpis{gap:16px;margin:20px 0}.kpis>div{position:relative;min-height:92px;padding:18px 20px;border-radius:18px;overflow:hidden;background:linear-gradient(135deg,#fff,#f7fbfd)}.kpis>div::after{content:"";position:absolute;inset:auto 0 0;height:4px;background:var(--blue)}.kpis>div:nth-child(2)::after{background:var(--teal)}.kpis>div:nth-child(3)::after{background:var(--violet)}.kpis strong{font-size:21px;color:#123d5d}.kpis span{font-size:12px;color:#738a9a}
.results-card{padding:22px;border-radius:22px}.section-head h2,.detail-head h2{font-size:22px;letter-spacing:-.3px;color:#112d42}.section-head p{color:#728997}.search{min-width:250px}.search input{height:42px}.table-scroll{border-color:#dbe8ef;border-radius:13px;box-shadow:0 5px 15px #173b5208}table{font-size:12.5px}th{padding:13px 10px;background:linear-gradient(180deg,#e9f5fb,#e2f0f8);color:#14557e;font-size:11px;letter-spacing:.1px}td{padding:13px 10px}tbody tr{transition:background .18s,box-shadow .18s}tbody tr:hover,tbody tr.active{background:#e9f7fd;box-shadow:inset 3px 0 var(--blue)}.model-link{color:#0879c6}.pagination{padding-top:2px}
.detail-panel{padding:24px;border-radius:22px;background:linear-gradient(145deg,#ffffff,#f9fcfd)}.detail-toolbar{margin-bottom:18px}.back-button,.icon-button{box-shadow:0 5px 14px #15384d16;transition:.2s}.back-button:hover,.icon-button:hover{background:#dff1f9;transform:translateY(-1px)}.detail-actions{gap:9px}.action-button{border-radius:10px;background:linear-gradient(135deg,#168bd2,#096eb5);box-shadow:0 7px 14px #086eb52b}.action-button:hover{transform:translateY(-1px)}.detail-head{margin-bottom:18px}.detail-head .eyebrow{color:#1381bd}.charts{border-color:#d8e6ed;border-radius:16px;padding:15px;background:linear-gradient(180deg,#ffffff,#fbfdff);box-shadow:0 8px 22px #18384b0b}.drag-note{padding:8px 11px;border-radius:9px;background:#f0f8fc;color:#597789}.spec-panel{gap:14px}.spec-block{border-color:#dbe7ed;border-radius:14px;padding:16px;background:linear-gradient(145deg,#fbfdfe,#f5fafc);box-shadow:0 6px 16px #173b5208}.spec-block h3{margin-bottom:12px;font-size:15px;color:#0d6194}.spec-row{padding:8px 0;font-size:13px}.spec-row strong{color:#15364a}.motor-choice-block{border-color:#8dd8e3;background:linear-gradient(145deg,#f5feff,#effafd);box-shadow:0 8px 18px #0aa4b51a}.motor-choice-label select{height:42px;border-radius:10px;border-color:#b7dbe3}.operating-slider-wrap{border-color:#b9dce7;border-radius:12px;background:linear-gradient(135deg,#f1fbfd,#f7fbfe);box-shadow:inset 0 1px #fff}.formula-note{border-color:#d7e7ee;border-radius:14px;background:#f5fafc;box-shadow:0 6px 18px #173b5208}.formula-note h3{color:#0b5f91}
.dimensions-figure,.dimensions-table{background:linear-gradient(145deg,#fbfdfe,#f4fafc)}.dimension-image-wrap{border-color:#d7e7ee;border-radius:12px;box-shadow:inset 0 1px #fff}.selection-mode+ .pump-search-wrap{padding:2px 0}.pump-search-wrap label{color:#345367}
@media(max-width:760px){.topbar{min-height:120px;padding:22px 16px}.topbar h1{font-size:25px}.control-card,.results-card,.detail-panel{border-radius:17px;padding:16px}.selection-mode{align-items:stretch;flex-direction:column}.selection-mode>span{padding:3px 6px}.selection-mode label{justify-content:center}.kpis>div{min-height:78px;padding:15px 16px}.results-card{padding:16px}.detail-panel{padding:16px}.section-head h2{font-size:19px}.search{min-width:0}.charts{padding:9px}.spec-block{padding:14px}}
.operating-slider-wrap{margin-top:12px;padding:10px 12px;border:1px solid #dce6ee;border-radius:9px;background:#f7fbfe}.operating-slider-head,.operating-slider-range{display:flex;justify-content:space-between;align-items:center;gap:10px;color:#506a7e;font:12px Arial,sans-serif}.operating-slider-head strong{color:#155c91}.operating-slider{display:block;width:100%;margin:10px 0 4px;accent-color:#1d242b;cursor:ew-resize;touch-action:pan-y}.operating-slider-range{font-size:10px;color:#7a8c99}.charts canvas{cursor:grab}
.motor-choice-label{display:block;color:#506a7e;font-size:12px}.motor-choice-label span{display:block;margin-bottom:6px}.motor-choice-label select{display:block;width:100%;height:38px;border:1px solid #cbd8e2;border-radius:7px;background:#fff;padding:0 9px;color:#1d3443;font:13px Arial,sans-serif}.motor-choice-note{margin:8px 0 0;color:#7a8c99;font-size:11px;line-height:1.5}
.selection-mode{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-bottom:14px;padding-bottom:13px;border-bottom:1px solid #e5edf2;color:#30485b;font-size:13px;font-weight:700}.selection-mode label{display:flex;align-items:center;gap:6px;font-weight:400;cursor:pointer}.selection-mode input{accent-color:var(--blue)}.pump-search-wrap{margin-bottom:14px}.pump-search-wrap label{display:block;max-width:520px;color:#30485b;font-size:12px;font-weight:700}.pump-search-wrap input{display:block;width:100%;height:41px;margin-top:6px;border:1px solid #cbd8e2;border-radius:8px;padding:0 11px;background:#fff;color:var(--ink);font:15px Arial,sans-serif}.duty-field.hidden{display:none}
.language-picker{display:inline-flex;align-items:center;gap:6px;color:#e7f7ff;font-size:11px;font-weight:700;white-space:nowrap}.language-picker select{height:34px;border:1px solid #ffffff55;border-radius:8px;padding:0 8px;background:#ffffff18;color:#fff;font:600 12px Arial,sans-serif}.language-picker option{color:#10212f;background:#fff}.material-row .check:has(#castedStainless){border-color:#7dd8e7;background:#f0fcfe}.material-row .check:has(#castedStainless) span{color:#075d79;font-weight:700}.language-picker select:focus{outline:2px solid #b7efff;outline-offset:2px}

/* Authentication and access management */
body.auth-pending .topbar,body.auth-pending main{visibility:hidden}body.authenticated .login-screen{display:none}.login-screen{position:fixed;z-index:1000;inset:0;display:grid;place-items:center;min-height:100dvh;padding:clamp(14px,4vw,42px);overflow:auto;background:radial-gradient(circle at 12% 15%,#1979a8 0,transparent 25%),radial-gradient(circle at 85% 90%,#13b7ad55 0,transparent 28%),linear-gradient(125deg,#061827,#0b3858 57%,#097795)}.login-shell{width:min(980px,100%);display:grid;grid-template-columns:minmax(0,1.16fr) minmax(340px,.84fr);overflow:hidden;border:1px solid #ffffff2e;border-radius:28px;background:#ffffff0d;box-shadow:0 30px 70px #00000055;backdrop-filter:blur(14px)}.login-brand{position:relative;isolation:isolate;min-height:530px;padding:clamp(34px,5vw,68px);overflow:hidden;color:#fff;background:linear-gradient(145deg,#063253,#0b5b80 57%,#0e99a2)}.login-brand::after{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#fff1 1px,transparent 1px),linear-gradient(90deg,#fff1 1px,transparent 1px);background-size:31px 31px;mask-image:linear-gradient(135deg,#000,transparent 75%)}.login-orbit{position:absolute;z-index:-1;border:1px solid #b7f7ff44;border-radius:50%;transform:translate(25%,-33%)}.login-orbit-one{width:430px;height:430px;inset-inline-end:0;top:0}.login-orbit-two{width:600px;height:600px;inset-inline-end:-220px;top:-105px}.login-brand-content{position:relative;max-width:410px}.login-mark{display:flex;align-items:center;gap:7px;font:800 18px/1 "Segoe UI",Arial,sans-serif;letter-spacing:.5px}.login-mark span{display:grid;place-items:center;width:44px;height:44px;border:1px solid #b6f5ff9e;border-radius:13px;background:#ffffff1c;box-shadow:inset 0 1px #fff6}.login-mark i{width:42px;height:11px;border-top:3px solid #36e0d0;border-radius:50%;transform:skewX(-25deg)}.login-kicker{margin:50px 0 10px;color:#b8f8ff;font-size:12px;font-weight:800;letter-spacing:2px}.login-brand h1{margin:0;max-width:390px;color:#fff;font-size:clamp(31px,4vw,47px);line-height:1.08;letter-spacing:-1px}.login-brand p:not(.login-kicker){margin:18px 0 0;color:#d5f0fa;font-size:15px;line-height:1.8}.login-points{display:grid;gap:10px;margin-top:42px}.login-points span{display:flex;align-items:center;gap:9px;color:#e6fbff;font-size:13px}.login-points span::before{content:"";width:8px;height:8px;border-radius:50%;background:#3ae3cf;box-shadow:0 0 0 5px #3ae3cf22}.login-card{align-self:center;padding:clamp(28px,4vw,48px);margin:20px;background:#fff;border:1px solid #fff;border-radius:20px;box-shadow:0 14px 30px #001a2b28}.login-card-head{margin-bottom:28px}.login-card .eyebrow{margin:0 0 6px;color:#0685ae;font-size:11px;letter-spacing:1.5px}.login-card h2{margin:0;color:#112e43;font-size:28px;letter-spacing:-.6px}.login-card-head>p:not(.eyebrow){margin:8px 0 0;color:#718898;font-size:13px;line-height:1.6}.login-card label,.password-card label{display:block;margin-top:15px;color:#38566a;font-size:12px;font-weight:700}.login-card input,.password-card input{display:block;box-sizing:border-box;width:100%;height:47px;margin-top:7px;border:1px solid #cbdde6;border-radius:10px;padding:0 13px;background:#fbfdfe;color:#18384b;font:15px "Segoe UI",Arial,sans-serif;transition:.2s}.login-card input:focus,.password-card input:focus{outline:0;border-color:#25a9d8;box-shadow:0 0 0 4px #24afe020;background:#fff}.login-feedback{min-height:18px;margin:14px 0 0;color:#bd3835;font-size:12px;line-height:1.4}.login-feedback.success{color:#00856e}.login-submit{width:100%;height:48px;border:0;border-radius:11px;background:linear-gradient(135deg,#0b8bd3,#0866ab);color:#fff;font:800 14px "Segoe UI",Arial,sans-serif;box-shadow:0 9px 18px #086eb535;cursor:pointer;transition:.2s}.login-submit:hover{transform:translateY(-1px);box-shadow:0 12px 22px #086eb542}.login-submit:disabled{cursor:wait;opacity:.65;transform:none}.login-local-note{margin:16px 0 0;color:#8496a3;font-size:10px;line-height:1.55;text-align:center}.account-controls{display:flex;align-items:center;gap:8px}.account-chip,.logout-button{height:37px;border:1px solid #b8f3ff66;border-radius:10px;background:#ffffff13;color:#fff;cursor:pointer}.account-chip{display:grid;padding:4px 11px;text-align:start;font-family:"Segoe UI",Arial,sans-serif;line-height:1.15}.account-chip span{font-size:12px;font-weight:800}.account-chip small{margin-top:2px;color:#b9eaf8;font-size:9px}.logout-button{padding:0 12px;font:700 12px "Segoe UI",Arial,sans-serif}.account-chip:hover,.logout-button:hover{background:#ffffff25}.role-guide{display:flex;gap:9px;flex-wrap:wrap;margin:16px 0;padding:11px;border:1px solid #dbe9ef;border-radius:12px;background:#f7fbfd}.role-guide span{display:flex;align-items:center;gap:6px;color:#617989;font-size:11px}.role-guide em{font-style:normal}.role-badge{display:inline-flex;align-items:center;justify-content:center;min-width:55px;border-radius:999px;padding:4px 8px;font:800 10px "Segoe UI",Arial,sans-serif;letter-spacing:.25px}.role-badge.admin{background:#fce6e6;color:#a32727}.role-badge.editor{background:#e0f4fb;color:#08719d}.role-badge.viewer{background:#ebeff4;color:#586c7a}.user-manager-grid{grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr)}.user-table{min-width:650px}.user-table .user-active{color:#00856e;font-weight:700}.user-table .user-inactive{color:#a36423;font-weight:700}.password-modal{position:fixed;z-index:1200;inset:0;display:grid;place-items:center;padding:18px;background:#071b2cb0;backdrop-filter:blur(4px)}.password-card{width:min(440px,100%);padding:26px;border:1px solid #d9e7ed;border-radius:20px;background:#fff;box-shadow:0 20px 50px #0004}.password-card .manager-head{margin-bottom:6px}.password-card h2{margin:0;color:#112e43;font-size:22px}.password-optional-note{margin:4px 0 14px;color:#637d8e;font-size:12px;line-height:1.6}.password-actions{display:flex;gap:10px;align-items:center;margin-top:16px}.password-actions .login-submit{width:auto;flex:1;margin-top:0}.password-skip{height:48px;border:1px solid #c9dbe5;border-radius:11px;padding:0 17px;background:#fff;color:#517087;font:700 13px "Segoe UI",Arial,sans-serif;cursor:pointer}.password-skip:hover{background:#f1f7fa;border-color:#9cc9db}.hidden{display:none!important}
@media(max-width:920px){.login-shell{grid-template-columns:1fr}.login-brand{min-height:0;padding:30px}.login-kicker{margin-top:26px}.login-points{display:flex;flex-wrap:wrap;margin-top:22px}.login-card{margin:0;border-radius:0}.user-manager-grid{grid-template-columns:1fr}.account-controls{width:100%;justify-content:center}.topbar{height:auto}.login-brand h1{font-size:31px}}
@media(max-width:570px){.login-screen{padding:0}.login-shell{min-height:100dvh;border:0;border-radius:0}.login-brand{padding:28px 23px}.login-brand p:not(.login-kicker){font-size:13px}.login-points{display:none}.login-card{padding:28px 22px}.login-card h2{font-size:24px}.topbar-actions{gap:7px}.account-controls{gap:6px}.account-chip{flex:1}.logout-button{padding:0 9px}.role-guide{display:grid;grid-template-columns:1fr}.role-guide span{align-items:flex-start}.password-modal{padding:12px}.password-card{padding:20px;border-radius:16px}}

/* Selection results: concise desktop grid and full mobile cards */
.results-card{position:relative;overflow:hidden}.results-card::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--blue),var(--teal),var(--violet))}.results-card .section-head{position:relative;align-items:center;padding:3px 2px 1px}.results-card .section-head>div{min-width:0}.results-card .section-head h2{display:flex;align-items:baseline;gap:7px}.results-card .section-head p{max-width:820px;line-height:1.6}.results-card .search{position:relative}.results-card .table-scroll{background:linear-gradient(180deg,#fbfdff,#fff);scrollbar-color:#93a3ae #eef4f7;scrollbar-width:thin}.results-card table{font-variant-numeric:tabular-nums}.results-card tbody tr{background:#fff}.results-card tbody tr:nth-child(even){background:#fbfdfe}.results-card tbody tr:hover,.results-card tbody tr.active{background:#edf9fd;box-shadow:inset -3px 0 var(--teal)}.results-card td:first-child{width:58px}.results-card .model-link{font-weight:800;text-decoration:none}.results-card .model-link:hover{text-decoration:underline}.results-card .cart-radio{inline-size:17px;block-size:17px;accent-color:#0b82d1;cursor:pointer}.results-card .pagination{justify-content:space-between;padding:6px 3px 0}.results-card .pagination>span{margin-inline-start:auto}
@media(max-width:760px){.results-card .section-head{align-items:stretch}.results-card .section-head h2{flex-wrap:wrap}.results-card .section-head p{font-size:11px}.results-card .table-scroll{max-height:none;overflow:visible;border:0;box-shadow:none;background:transparent}.results-card table,.results-card tbody{display:block;min-width:0}.results-card thead{display:none}.results-card tbody{display:grid;gap:11px}.results-card tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:1px solid #d7e5ed;border-radius:14px;background:#fff!important;box-shadow:0 7px 17px #193c520d;overflow:hidden}.results-card tbody tr:hover,.results-card tbody tr.active{box-shadow:inset -3px 0 var(--teal),0 8px 18px #193c5212}.results-card td{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;padding:9px 11px!important;border-bottom:1px solid #e8eff3;text-align:end;white-space:normal;font-size:12px}.results-card td::before{content:attr(data-label);flex:0 1 50%;color:#6e8594;font-size:10px;font-weight:700;text-align:start}.results-card td:nth-child(1){grid-column:1/-1;justify-content:flex-start;min-height:36px;padding:7px 11px!important;background:#f0f9fc}.results-card td:nth-child(1)::before{flex:0 0 auto}.results-card td:nth-child(2){grid-column:1/-1;background:#f8fcfe;font-size:14px}.results-card td:nth-child(2) .model-link{font-size:14px}.results-card td:nth-child(2)::before{color:#1a6187}.results-card td:nth-child(15){grid-column:1/-1}.results-card td:nth-child(19){grid-column:1/-1;background:#f1fbf8;border-bottom:0;color:#075d54;font-size:14px;font-weight:800}.results-card td:nth-child(19)::before{color:#087c6f}.results-card .pagination{flex-wrap:wrap;gap:8px;padding-top:12px}.results-card .pagination>span{order:3;width:100%;margin-inline-start:0;text-align:center}.results-card .pagination label{margin-inline-end:auto}.results-card .pagination button{padding:0 5px}}
@media(max-width:390px){.results-card td{grid-column:1/-1!important}.results-card td::before{flex-basis:46%}.results-card .pagination label{width:100%;justify-content:space-between}}

.login-password-field{position:relative;margin-top:7px}.login-password-field input{margin-top:0;padding-inline-end:76px}.login-password-toggle{position:absolute;inset-inline-end:6px;top:50%;height:33px;transform:translateY(-50%);border:0;border-radius:7px;padding:0 10px;background:#eaf5fa;color:#0875a8;font:800 11px "Segoe UI",Arial,sans-serif;cursor:pointer}.login-password-toggle:hover{background:#d9eff8}.login-password-toggle:focus-visible{outline:2px solid #25a9d8;outline-offset:2px}

/* Header hierarchy and responsive account controls */
.topbar{display:grid;grid-template-columns:minmax(420px,1fr) auto;grid-template-areas:"brand tools" "brand account";align-items:center;column-gap:clamp(18px,3vw,48px);row-gap:10px;min-height:154px}.topbar>div:first-child{grid-area:brand;min-width:0}.topbar .topbar-actions{grid-area:tools;display:flex;justify-content:flex-end;gap:10px;max-width:900px}.topbar .account-controls{grid-area:account;display:flex;justify-content:flex-end;gap:9px}.topbar h1{max-width:700px;font-size:clamp(30px,3vw,43px);line-height:1.06}.topbar .eyebrow{margin-bottom:8px}.topbar .catalogue-status{white-space:nowrap;font-size:12px}.topbar .language-picker{height:38px;padding:0 2px}.topbar .language-picker select{height:38px}.topbar .header-action{min-height:38px;display:inline-flex;align-items:center;justify-content:center;text-align:center}.topbar .account-chip{min-width:170px;max-width:250px;height:40px;grid-template-columns:minmax(0,1fr);overflow:hidden}.topbar .account-chip span,.topbar .account-chip small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar .logout-button{height:40px}.topbar .account-controls .header-action{height:40px}
@media(max-width:1250px){.topbar{grid-template-columns:minmax(300px,1fr) auto;column-gap:22px}.topbar h1{font-size:clamp(29px,3.2vw,39px)}.topbar .topbar-actions{gap:8px}.topbar .catalogue-status{padding:8px 10px}.topbar .account-chip{min-width:145px}.topbar .header-action{padding-inline:11px}}
@media(max-width:1040px){.topbar{grid-template-columns:1fr auto;grid-template-areas:"brand brand" "tools account";min-height:0;padding-block:24px}.topbar h1{max-width:none;font-size:clamp(29px,4vw,42px)}.topbar .topbar-actions{justify-content:flex-start}.topbar .account-controls{justify-content:flex-end}.topbar .catalogue-status{max-width:240px;overflow:hidden;text-overflow:ellipsis}}
@media(max-width:760px){.topbar{grid-template-columns:1fr;grid-template-areas:"brand" "tools" "account";padding:20px 16px;gap:12px;text-align:initial}.topbar .topbar-actions,.topbar .account-controls{width:100%;justify-content:flex-start}.topbar h1{font-size:clamp(27px,8vw,36px);letter-spacing:-.7px}.topbar .catalogue-status{max-width:none;flex:1}.topbar .account-chip{flex:1;max-width:none}.topbar .header-action{flex:0 1 auto}.topbar .account-controls .header-action{flex:1}}
@media(max-width:520px){.topbar{padding:18px 13px;gap:10px}.topbar .eyebrow{font-size:10px;letter-spacing:1.5px}.topbar h1{font-size:29px;line-height:1.08}.topbar .topbar-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.topbar .catalogue-status{grid-column:1/-1;width:100%;text-align:center;white-space:normal}.topbar .language-picker{justify-content:space-between;padding-inline:10px;border:1px solid #b8f3ff55;border-radius:10px;background:#ffffff12}.topbar .language-picker select{min-width:100px}.topbar .topbar-actions>.header-action{width:100%;padding-inline:8px}.topbar .account-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.topbar .account-controls>.header-action{grid-column:1/-1;width:100%}.topbar .account-chip{min-width:0;width:100%;height:44px}.topbar .logout-button{height:44px;padding-inline:13px}}

/* Language is available before authentication as well. */
.login-language-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.login-language-row .eyebrow{margin:0}.login-language-picker{display:inline-flex;align-items:center;gap:7px;color:#597487;font-size:11px;font-weight:700}.login-language-picker select{height:34px;min-width:105px;border:1px solid #c8dbe5;border-radius:9px;padding:0 9px;background:#f7fbfd;color:#16435e;font:700 12px "Segoe UI",Arial,sans-serif;cursor:pointer}.login-language-picker select:focus{outline:0;border-color:#2aa5d5;box-shadow:0 0 0 3px #2aa5d520}@media(max-width:390px){.login-language-row{gap:8px}.login-language-picker span{display:none}.login-language-picker select{min-width:96px}}

.manager-import small{display:block;margin-top:6px;color:#4d778c;font-size:10px;line-height:1.5}

/* Catalogue map and guided pump configuration editor */
.pump-map{margin:14px 0;padding:15px;border:1px solid #cce8ee;border-radius:16px;background:linear-gradient(135deg,#effbfc,#f8fcff)}.pump-map-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.pump-map-intro .eyebrow{margin:0 0 3px;color:#07839c;font-size:10px;letter-spacing:.9px}.pump-map-intro h3{margin:0;color:#114d70;font-size:16px}.pump-map-intro p:not(.eyebrow){margin:4px 0 0;max-width:720px;color:#638091;font-size:11px;line-height:1.55}.map-clear{flex:0 0 auto;height:32px;border:1px solid #abd9e4;border-radius:8px;padding:0 10px;background:#fff;color:#08779a;font:700 11px "Segoe UI",Tahoma,Arial,sans-serif;cursor:pointer}.pump-map-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:10px}.pump-map-card{min-width:0;padding:10px;border:1px solid #d6e8ee;border-radius:11px;background:#fff;box-shadow:0 3px 9px #12394b0a;transition:.18s}.pump-map-card.selected{border-color:#24a9c2;background:#f2fcfd;box-shadow:0 5px 14px #0b9bab17}.pump-map-material{display:block;width:100%;border:0;padding:0;background:transparent;color:#11445f;text-align:start;cursor:pointer}.pump-map-material strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:800 13px "Segoe UI",Tahoma,Arial,sans-serif}.pump-map-material span{display:block;margin-top:4px;color:#6a899a;font-size:10px}.pump-map-card label{display:block;margin-top:10px;color:#638090;font-size:10px;font-weight:700}.map-model-select{display:block;box-sizing:border-box;width:100%;height:34px;margin-top:4px;border:1px solid #cfdee6;border-radius:7px;padding:0 8px;background:#fbfdfe;color:#294b5e;font:600 11px "Segoe UI",Tahoma,Arial,sans-serif}.pump-map-empty{padding:13px;border:1px dashed #bcd8e1;border-radius:10px;color:#6e8796;font-size:12px}.quick-builder-head .eyebrow{margin:0 0 3px;color:#08879e;font-size:10px;letter-spacing:1px}.quick-builder-head>div>p:last-child{max-width:390px;line-height:1.55}.catalogue-steps{display:flex;align-items:center;gap:8px;margin:15px 0 14px;color:#5c7b8c;font-size:10px;font-weight:700}.catalogue-steps span{display:flex;align-items:center;gap:5px;white-space:nowrap}.catalogue-steps b{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#0d8cc6;color:#fff;font-size:10px}.catalogue-steps i{width:100%;height:1px;background:linear-gradient(90deg,#87d5e2,#c9e4ea)}.quick-pump-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.quick-section{min-width:0;padding:12px;border:1px solid #dce9ee;border-radius:12px;background:#fbfdfe}.quick-section-wide{grid-column:1/-1}.quick-section h4{margin:0 0 10px;color:#145f87;font-size:12px}.quick-section>label,.quick-grid>label,.quick-curve{display:block;color:#567585;font-size:10px;font-weight:700}.quick-section input,.quick-section select,.quick-section textarea,.quick-advanced input{display:block;box-sizing:border-box;width:100%;margin-top:5px;border:1px solid #c9dce5;border-radius:8px;padding:8px;background:#fff;color:#17384b;font:12px "Segoe UI",Tahoma,Arial,sans-serif}.quick-section input,.quick-section select,.quick-advanced input{height:36px}.quick-section textarea{min-height:74px;resize:vertical;direction:ltr;text-align:left;font-family:Consolas,"Courier New",monospace;font-size:10px;line-height:1.45}.quick-id-note{margin:8px 0 0;color:#7a929d;font-size:10px;line-height:1.5}.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.curve-section>p{margin:-3px 0 10px;color:#758e9d;font-size:10px;line-height:1.55}.quick-curves{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.quick-curve.required{color:#0d6f95}.quick-curve.required::after{content:"*";margin-inline-start:3px;color:#bf3434}.quick-advanced{grid-column:1/-1;border:1px dashed #bdd6e0;border-radius:10px;padding:0 11px;background:#f8fcfd}.quick-advanced summary{padding:10px 0;color:#477286;font-size:11px;font-weight:800;cursor:pointer}.quick-advanced .quick-grid{padding:0 0 11px}.quick-advanced label{display:block;color:#567585;font-size:10px;font-weight:700}.quick-pump-form .editor-footer{grid-column:1/-1;margin-top:0}.manager-editor:has(.quick-pump-form){background:linear-gradient(155deg,#fff,#f8fcfd)}
@media(max-width:1000px){.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.pump-map{padding:12px}.pump-map-intro{align-items:stretch;flex-direction:column}.map-clear{align-self:flex-start}.pump-map-cards{grid-template-columns:1fr}.catalogue-steps{gap:4px;font-size:9px}.catalogue-steps i{min-width:8px}.catalogue-steps span{gap:3px}.catalogue-steps b{width:18px;height:18px}.quick-pump-form{grid-template-columns:1fr}.quick-section-wide{grid-column:auto}.quick-grid,.quick-curves{grid-template-columns:1fr}.quick-advanced{grid-column:auto}.quick-pump-form .editor-footer{grid-column:auto}.quick-builder-head{flex-direction:column}.quick-builder-head>button{align-self:flex-end}.manager-editor:has(.quick-pump-form){padding:12px}}
.impeller-material-detail{align-items:center}.impeller-material-detail select{flex:0 1 190px;min-width:145px;height:32px;border:1px solid #b9d4e2;border-radius:8px;background:#fff;color:#143c54;padding:0 9px;font:700 12px "Segoe UI",Tahoma,Arial,sans-serif;cursor:pointer}.impeller-material-detail select:focus{outline:0;border-color:#148bc4;box-shadow:0 0 0 3px #168bd220}.impeller-material-detail select:hover{border-color:#77b9d5;background:#fafdff}@media(max-width:520px){.impeller-material-detail{align-items:flex-start;flex-direction:column}.impeller-material-detail select{width:100%;min-width:0}}

/* Well configuration entry flow */
.well-setup-page{position:relative;overflow:hidden;border:1px solid #d7e7ef;border-radius:24px;background:linear-gradient(145deg,#fff 0%,#f4fbfd 58%,#eef7fc 100%);box-shadow:0 16px 38px #173c5114}.well-setup-page::before{content:"";position:absolute;z-index:0;inset:0 0 auto;height:5px;background:linear-gradient(90deg,#0a8bd0,#16a7b7,#6553be)}.well-hero,.well-setup-form{position:relative;z-index:1}.well-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:30px clamp(20px,4vw,42px) 25px;color:#fff;background:radial-gradient(circle at 88% 5%,#39c9d24d,transparent 26%),linear-gradient(118deg,#0b456b,#086fa8 56%,#158aa6)}.well-hero .eyebrow{margin:0 0 7px;color:#bdf5fc;font-size:11px;letter-spacing:2px}.well-hero h2{margin:0;color:#fff;font:800 clamp(25px,3.5vw,38px)/1.15 "Segoe UI",Tahoma,Arial,sans-serif;letter-spacing:-.5px}.well-hero p:not(.eyebrow){max-width:690px;margin:10px 0 0;color:#e5f7fb;font-size:14px;line-height:1.75}.well-hero-badge{display:flex;align-items:center;gap:9px;flex:0 0 auto;margin-top:4px;padding:9px 12px;border:1px solid #c4f5f955;border-radius:12px;background:#ffffff17;color:#ecfcff;font-size:12px}.well-hero-badge span{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#42d3c5;color:#073b50;font:800 12px Arial,sans-serif}.well-hero-badge strong{font:700 12px "Segoe UI",Tahoma,Arial,sans-serif}.well-setup-form{display:grid;gap:16px;padding:clamp(17px,3.3vw,35px)}.well-form-section{padding:18px;border:1px solid #dbe8ee;border-radius:16px;background:#fff;box-shadow:0 5px 12px #17394c08}.well-demand-section{border-color:#bfe3e9;background:linear-gradient(135deg,#fff,#f2fcfc)}.well-section-title{display:flex;align-items:flex-start;gap:10px;margin-bottom:15px}.well-section-title>span{display:grid;place-items:center;flex:0 0 auto;width:27px;height:27px;border-radius:50%;background:linear-gradient(135deg,#0b88c9,#119eae);color:#fff;font:800 12px Arial,sans-serif;box-shadow:0 4px 9px #0a7cb72e}.well-section-title h3{margin:1px 0 0;color:#164b6a;font:800 15px "Segoe UI",Tahoma,Arial,sans-serif}.well-section-title p{margin:3px 0 0;color:#748c9b;font-size:11px;line-height:1.5}.well-demand-grid{display:grid;grid-template-columns:minmax(260px,1.35fr) minmax(180px,.65fr);gap:14px;align-items:end}.well-demand-mode{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;border:0}.well-demand-mode legend{width:100%;margin-bottom:6px;color:#547385;font-size:11px;font-weight:800}.well-demand-mode label{display:flex;align-items:center;gap:7px;padding:10px 12px;border:1px solid #c9e0e8;border-radius:10px;background:#fff;color:#36586b;font-size:12px;font-weight:700;cursor:pointer}.well-demand-mode label:has(input:checked){border-color:#1aa2b5;background:#e7faf9;color:#086478;box-shadow:0 3px 9px #0e9cab16}.well-demand-mode input{accent-color:#088bb4}.well-field-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.well-field{display:block;min-width:0;color:#4f6f81;font-size:11px;font-weight:800}.well-field>span{display:block;margin:0 0 6px}.well-field input,.well-field select{box-sizing:border-box;width:100%;height:42px;border:1px solid #c9dce5;border-radius:10px;padding:0 11px;background:#fbfdfe;color:#163b52;font:700 14px "Segoe UI",Tahoma,Arial,sans-serif;transition:.2s}.well-field input:focus,.well-field select:focus{outline:0;border-color:#22a5ce;background:#fff;box-shadow:0 0 0 4px #20a6d51d}.well-field small{display:block;margin-top:5px;color:#7d94a1;font-size:10px;font-weight:500;line-height:1.4}.well-input-unit{display:grid;grid-template-columns:minmax(0,1fr) auto;overflow:hidden;border:1px solid #c9dce5;border-radius:10px;background:#fbfdfe;transition:.2s}.well-input-unit:focus-within{border-color:#22a5ce;background:#fff;box-shadow:0 0 0 4px #20a6d51d}.well-input-unit input{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}.well-input-unit b{display:grid;place-items:center;min-width:47px;padding:0 8px;border-inline-start:1px solid #d8e5eb;background:#f0f7fa;color:#3f7087;font:800 11px Arial,sans-serif}.well-calculation{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:15px;border:1px solid #cfe6ec;border-radius:16px;background:linear-gradient(125deg,#eafafa,#f8fcff)}.well-calculation>div{min-width:0;padding:8px 10px;border-inline-start:2px solid #53bcc9}.well-calculation>div:nth-child(2){border-color:#268fd0}.well-calculation .well-total-head{border-color:#087aaf}.well-calculation span,.well-calculation small{display:block;color:#5e7b8d;font-size:10px;font-weight:700}.well-calculation strong{display:block;margin:4px 0;color:#094f77;font:800 23px/1.2 "Segoe UI",Tahoma,Arial,sans-serif;letter-spacing:-.5px}.well-calculation small{color:#78929f;font-weight:500}.well-form-feedback{min-height:18px;margin:0;color:#b52e2e;font-size:12px;font-weight:700}.well-actions{display:flex;justify-content:flex-start}.well-primary{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;border:0;border-radius:12px;padding:0 20px;background:linear-gradient(135deg,#0b8bd3,#0866aa);color:#fff;font:800 14px "Segoe UI",Tahoma,Arial,sans-serif;box-shadow:0 10px 18px #086eb533;cursor:pointer;transition:.2s}.well-primary:hover{transform:translateY(-1px);box-shadow:0 13px 22px #086eb545}.well-back-button{display:inline-flex;align-items:center;gap:7px;height:32px;margin-bottom:13px;border:1px solid #c6dde7;border-radius:9px;padding:0 10px;background:#f6fbfd;color:#37677f;font:700 11px "Segoe UI",Tahoma,Arial,sans-serif;cursor:pointer}.well-back-button:hover{border-color:#78b9d3;background:#edf8fc;color:#08618c}.well-summary-block{border-color:#bae1e6;background:#f3fcfc}.well-summary-block h3{color:#087a8b}
@media(max-width:900px){.well-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.well-demand-grid{grid-template-columns:1fr}.well-hero{padding:26px}.well-hero h2{font-size:30px}}
@media(max-width:600px){.well-setup-page{border-radius:17px}.well-hero{flex-direction:column;padding:23px 18px 21px}.well-hero h2{font-size:25px}.well-hero p:not(.eyebrow){font-size:12px}.well-setup-form{gap:12px;padding:12px}.well-form-section{padding:14px;border-radius:13px}.well-field-grid,.well-calculation{grid-template-columns:1fr}.well-demand-mode label{flex:1;justify-content:center}.well-calculation strong{font-size:21px}.well-primary{width:100%}.well-back-button{margin-bottom:10px}}

/* Editable duty point: both values remain tied to the same Q-H curve. */
.duty-point-block{border-color:#b9dce9;background:linear-gradient(145deg,#f8fcff,#f2faff)}.duty-point-edit-note{margin:-3px 0 10px;color:#668395;font-size:11px;line-height:1.55}.spec-row-editable{align-items:center;min-height:43px}.spec-row-editable>span{font-weight:700}.detail-operating-input{display:grid;grid-template-columns:minmax(0,1fr) auto;inline-size:min(188px,58%);height:34px;overflow:hidden;border:1px solid #a9cfdf;border-radius:8px;background:#fff;box-shadow:0 2px 6px #0c658312}.detail-operating-input:focus-within{border-color:#1388bd;box-shadow:0 0 0 3px #1b97c51c}.detail-operating-input input{min-width:0;border:0!important;outline:0;background:transparent!important;padding:0 8px;color:#123b53;font:800 15px/1 "Segoe UI",Tahoma,Arial,sans-serif;text-align:end;direction:ltr;font-variant-numeric:tabular-nums}.detail-operating-input b{display:grid;place-items:center;min-width:48px;padding:0 7px;border-inline-start:1px solid #cfe0e8;background:#eaf6fa;color:#176f96;font:800 10px Arial,sans-serif;white-space:nowrap}@media(max-width:520px){.duty-point-edit-note{font-size:10px}.spec-row-editable{gap:8px}.detail-operating-input{inline-size:56%;min-width:142px}.detail-operating-input input{font-size:14px}.detail-operating-input b{min-width:44px;padding-inline:5px}}

/* User management feedback: green confirms persistence, red reports a failure. */
.editor-footer .user-editor-message{font-size:11px;font-weight:700;color:#6b8191}.editor-footer .user-editor-message.success{color:#00856e}.editor-footer .user-editor-message.error{color:#bd3835}
.permission-field{display:flex!important;align-items:flex-start;gap:9px;grid-column:1/-1;padding:10px 11px;border:1px solid #d5e6ec;border-radius:10px;background:#f7fbfd;cursor:pointer}.permission-field input{flex:0 0 auto;width:17px!important;height:17px!important;margin:1px 0 0!important;accent-color:#078bc2}.permission-field input:disabled{opacity:.65;cursor:not-allowed}.permission-field span{display:grid;gap:3px}.permission-field strong{color:#174e6e;font-size:12px}.permission-field small{color:#718997;font-size:10px;font-weight:500;line-height:1.45}.permission-status{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:4px 8px;font:700 10px "Segoe UI",Arial,sans-serif;white-space:nowrap}.permission-status.enabled{background:#def7ed;color:#087b5e}.permission-status.disabled{background:#fce8e8;color:#a93737}
.header-brand{display:flex;align-items:center;width:min(274px,58vw);padding:5px 12px;border:1px solid #ffffff99;border-radius:11px;background:#fff;box-shadow:0 6px 16px #00182735}.header-brand img{display:block;width:100%;height:auto}.topbar .header-brand + h1{margin-top:10px}.topbar{background:linear-gradient(125deg,#070d62 0%,#101b7f 52%,#087f98 100%);border-bottom-color:#8ab53f99}.topbar::after{content:"";position:absolute;z-index:-1;inset:auto 0 0;height:4px;background:linear-gradient(90deg,#8ab53f,#c5dd69,#8ab53f);opacity:.95}.topbar .header-action{border-color:#b9d77b66;background:#ffffff14}.topbar .header-action:hover{border-color:#b7d85e;background:#ffffff29}.topbar .catalogue-status{border-color:#b9d77b66}.topbar .eyebrow{color:#e1f0ad}.topbar .language-picker{border-color:#b9d77b66}.dashboard-page::before,.well-setup-page::before{background:linear-gradient(90deg,#101b83,#8ab53f,#5e902d)}.control-card::before{background:linear-gradient(90deg,#101b83,#8ab53f,#5e902d)}.dashboard-card-icon{background:linear-gradient(135deg,#101b83,#2947a3)}.dashboard-card-primary{border-color:#bbd67d}.dashboard-card-button:hover{border-color:#98bc43;background:#f4fae9}.well-primary,.material-row button,.action-button,.login-submit,.manager-primary{background:linear-gradient(135deg,#111d86,#2947a3)!important}.well-primary:hover,.material-row button:hover,.action-button:hover,.login-submit:hover,.manager-actions .manager-primary:hover{background:linear-gradient(135deg,#19278f,#3656b1)!important}.well-demand-mode label:has(input:checked){border-color:#9abb43;background:#f3f9e7;color:#405f11}.well-demand-mode input,.check input{accent-color:#8ab53f}.workflow-step.active{color:#567b15}.workflow-step.active b{background:#8ab53f;box-shadow:0 4px 9px #8ab53f55}.workflow-steps i{background:#c8dba0}
@media(max-width:560px){.header-brand{width:min(245px,72vw);padding:4px 9px}.topbar .header-brand + h1{margin-top:8px}}
.dashboard-page{position:relative;overflow:hidden;border:1px solid #d7e7ef;border-radius:24px;background:linear-gradient(145deg,#fff,#f3f9fc 68%,#edf7fb);box-shadow:0 16px 38px #173c5114}.dashboard-page::before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,#0a8bd0,#16a7b7,#6553be)}.dashboard-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:clamp(28px,5vw,52px) clamp(22px,5vw,56px) 34px;color:#fff;background:radial-gradient(circle at 88% 10%,#38d5d34d,transparent 24%),linear-gradient(122deg,#082f4c,#086ea3 57%,#108da3)}.dashboard-hero .eyebrow{margin-bottom:9px;color:#bdf5fc}.dashboard-hero h2{max-width:700px;margin:0;color:#fff;font:800 clamp(28px,4vw,48px)/1.08 "Segoe UI",Tahoma,Arial,sans-serif;letter-spacing:-.7px}.dashboard-hero p:not(.eyebrow){max-width:700px;margin:13px 0 0;color:#e4f7fb;font-size:14px;line-height:1.8}.dashboard-hero-stats{display:flex;gap:10px;flex:0 0 auto}.dashboard-hero-stats div{min-width:96px;padding:12px;border:1px solid #b9f3fc55;border-radius:14px;background:#ffffff14;text-align:center;backdrop-filter:blur(8px)}.dashboard-hero-stats strong{display:block;color:#fff;font:800 25px/1.1 Arial,sans-serif}.dashboard-hero-stats span{display:block;margin-top:5px;color:#cceef5;font-size:10px}.dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:clamp(18px,3vw,32px)}.dashboard-card{position:relative;display:flex;min-height:244px;flex-direction:column;align-items:flex-start;padding:22px;border:1px solid #d8e8ef;border-radius:18px;background:#fff;box-shadow:0 8px 20px #173b520b;transition:transform .2s,box-shadow .2s,border-color .2s}.dashboard-card:hover{transform:translateY(-3px);border-color:#8ccede;box-shadow:0 14px 26px #173b5216}.dashboard-card-primary{border-color:#a9dde5;background:linear-gradient(145deg,#f8ffff,#effafb)}.dashboard-card-muted{background:#f8fbfc}.dashboard-card-icon{display:grid;place-items:center;width:46px;height:46px;margin-bottom:21px;border-radius:14px;background:linear-gradient(135deg,#0c8dcd,#15abb0);color:#fff;font:800 25px/1 Arial,sans-serif;box-shadow:0 7px 15px #0b84b52e}.dashboard-card .eyebrow{margin:0 0 5px;color:#1480ad;font-size:10px;letter-spacing:1.2px}.dashboard-card h3{margin:0;color:#123e59;font:800 20px/1.2 "Segoe UI",Tahoma,Arial,sans-serif}.dashboard-card p:not(.eyebrow){margin:9px 0 0;color:#718b9a;font-size:12px;line-height:1.7}.dashboard-card-button{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;height:42px;margin-top:auto;border:1px solid #b8dbe5;border-radius:10px;padding:0 12px;background:#f6fcfd;color:#086d91;font:800 12px "Segoe UI",Tahoma,Arial,sans-serif;cursor:pointer}.dashboard-card-button:hover{border-color:#43b7c8;background:#e9f9fb}.dashboard-card-button span:last-child{font-size:17px}.workflow-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px;padding:10px 12px;border:1px solid #d7e8ef;border-radius:13px;background:#f6fbfd}.workflow-back{display:inline-flex;align-items:center;gap:7px;height:34px;border:1px solid #c7dfe8;border-radius:9px;padding:0 11px;background:#fff;color:#3a6880;font:700 11px "Segoe UI",Arial,sans-serif;cursor:pointer}.workflow-back:hover{border-color:#74c3d2;background:#edfafd}.workflow-steps{display:flex;align-items:center;justify-content:flex-end;gap:8px;color:#78909c;font-size:10px;font-weight:700}.workflow-step{display:flex;align-items:center;gap:5px;white-space:nowrap}.workflow-step b{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#e4edf1;color:#6d8490;font:800 10px Arial,sans-serif}.workflow-step.active{color:#08779d}.workflow-step.active b{background:#0b8cc4;color:#fff;box-shadow:0 4px 9px #0b8cc42e}.workflow-steps i{width:22px;height:1px;background:#bfd7df}
@media(max-width:820px){.dashboard-hero{align-items:stretch;flex-direction:column}.dashboard-hero-stats{justify-content:flex-start}.dashboard-grid{grid-template-columns:1fr 1fr}.dashboard-card-muted{grid-column:1/-1}.workflow-bar{align-items:stretch;flex-direction:column}.workflow-steps{justify-content:space-between}.workflow-steps i{flex:1;width:auto}}
@media(max-width:560px){.dashboard-page{border-radius:17px}.dashboard-hero{padding:25px 18px 23px}.dashboard-hero h2{font-size:29px}.dashboard-hero p:not(.eyebrow){font-size:12px}.dashboard-grid{grid-template-columns:1fr;padding:12px}.dashboard-card,.dashboard-card-muted{grid-column:auto;min-height:210px}.workflow-bar{padding:9px}.workflow-back{width:100%;justify-content:center}.workflow-steps{gap:4px;font-size:9px}.workflow-step{gap:3px}.workflow-step b{width:19px;height:19px}.workflow-steps i{min-width:5px}}
.password-policy-hint{margin:6px 0 0;color:#58768a;font-size:11px;line-height:1.5}.user-default-password{padding:11px 12px;border:1px solid #bfe5d5;border-radius:9px;background:#f1fbf6;color:#176747}.user-default-password strong{display:block;font-size:13px}.user-default-password small{display:block;margin-top:5px;color:#4f7a69;font-size:10px;line-height:1.5}
.dashboard-page::before,.well-setup-page::before{background:linear-gradient(90deg,#101b83,#8ab53f,#5e902d)}.control-card::before{background:linear-gradient(90deg,#101b83,#8ab53f,#5e902d)}.dashboard-card-icon{background:linear-gradient(135deg,#101b83,#2947a3)}.dashboard-card-primary{border-color:#bbd67d}.dashboard-card-button:hover{border-color:#98bc43;background:#f4fae9}.well-demand-mode label:has(input:checked){border-color:#9abb43;background:#f3f9e7;color:#405f11}.well-demand-mode input,.check input{accent-color:#8ab53f}.workflow-step.active{color:#567b15}.workflow-step.active b{background:#8ab53f;box-shadow:0 4px 9px #8ab53f55}.workflow-steps i{background:#c8dba0}
.pm-theme{--pm-navy:#0b147e;--pm-deep:#071044;--pm-blue:#2a51a4;--pm-green:#8ab53f;--pm-green-dark:#668c25;--pm-ink:#17324a;--pm-muted:#688092;--pm-line:#d8e3eb;--pm-soft:#eef5fb;--pm-green-soft:#f2f8e8}
:root{--blue:#0b147e;--blue-dark:#071044;--ink:#17324a;--muted:#688092;--line:#d8e3eb;--wash:#f3f7fa;--card:#fff;--green:#668c25;--red:#bd3835}
body{background:linear-gradient(145deg,#f5f8fb 0%,#edf4f8 100%);color:#17324a}
.topbar{background:linear-gradient(118deg,#071044 0%,#0b147e 54%,#24549c 100%);border-bottom-color:#8ab53f99}
.topbar::after{background:linear-gradient(90deg,#668c25,#8ab53f,#c4dc79,#8ab53f,#668c25)}
.topbar .eyebrow{color:#d7e8a4}.catalogue-status,.topbar .language-picker,.topbar .header-action,.account-chip,.logout-button{border-color:#b9d77b66;background:#ffffff14}.topbar .header-action:hover,.account-chip:hover,.logout-button:hover{border-color:#c4dc79;background:#ffffff2a}
.header-brand{border-color:#fff;box-shadow:0 7px 18px #03082d44}
.header-brand{font:inherit;cursor:pointer;text-align:start;appearance:none;-webkit-appearance:none;transition:transform .18s ease,box-shadow .18s ease}.header-brand:hover{transform:translateY(-2px);box-shadow:0 10px 22px #03082d55}.header-brand:focus-visible{outline:3px solid #c5dd69;outline-offset:3px}
.dashboard-greeting{display:inline-flex;align-items:center;min-height:18px;max-width:100%;color:#c7f5f6!important;font-size:clamp(12px,1.35vw,15px)!important;letter-spacing:.55px!important;text-transform:none!important;direction:inherit;unicode-bidi:plaintext;white-space:nowrap}.dashboard-greeting.is-typing::after{content:"";display:inline-block;width:2px;height:1.15em;margin-inline-start:7px;border-radius:2px;background:#8ab53f;box-shadow:0 0 10px #c5dd69;animation:dashboardCaret .78s steps(1,end) infinite}.dashboard-greeting.is-complete{color:#e0fbf6!important}@keyframes dashboardCaret{0%,49%{opacity:1}50%,100%{opacity:0}}
@media(max-width:560px){.dashboard-greeting{font-size:11px!important;letter-spacing:.35px!important}.dashboard-greeting.is-typing::after{margin-inline-start:5px}}
.login-kicker{font-size:14px;letter-spacing:2.5px}.login-brand .login-kicker{color:#c8fbff;text-shadow:0 0 14px #52d9e866}@media(max-width:570px){.login-kicker{font-size:13px;letter-spacing:2px}}
main{color:var(--ink)}
.control-card,.results-card,.detail-panel,.kpis>div,.manager-card,.dashboard-page,.well-setup-page{border-color:var(--pm-line);box-shadow:0 14px 32px #102c4512}
.control-card,.results-card,.detail-panel,.manager-card{background:linear-gradient(145deg,#fff 0%,#fbfdfe 100%)}
.selection-mode,.workflow-bar{border-color:#d5e3eb;background:#f5f9fc}
.selection-mode label:has(input:checked){background:#e9f0ff;color:#0b147e;box-shadow:0 5px 14px #244ea61c}
.input-grid label,.search,.manager-list-head label,.well-field{color:#47677d}.input-grid input,.input-grid select,.search input,.pump-search-wrap input,.well-field input,.well-field select,.manager-list-head input{border-color:#cbdbe5;background:#fcfdfe;color:var(--pm-ink)}
.input-grid input:focus,.input-grid select:focus,.search input:focus,.pump-search-wrap input:focus,.well-field input:focus,.well-field select:focus,.manager-list-head input:focus{border-color:#779bd8;box-shadow:0 0 0 4px #2a51a41c}
.material-row,.manager-toolbar{border-color:#dce6ed}.check{border-color:#d3e0e7;background:#fbfdfe}.check:has(input:checked){border-color:#b6d27b;background:var(--pm-green-soft);color:#4e7020}
.material-row button,.well-primary,.action-button,.login-submit,.manager-primary{background:linear-gradient(135deg,#0b147e,#2a51a4)!important;box-shadow:0 8px 17px #0b147e2e}.material-row button:hover,.well-primary:hover,.action-button:hover,.login-submit:hover,.manager-actions .manager-primary:hover{background:linear-gradient(135deg,#111d8d,#3861b4)!important}
.dashboard-hero,.well-hero{background:radial-gradient(circle at 88% 8%,#8ab53f38,transparent 24%),linear-gradient(120deg,#071044,#0b147e 56%,#2a51a4)}
.dashboard-card,.well-form-section,.spec-block,.manager-list,.manager-editor{border-color:#d8e4eb;background:#fff}.dashboard-card:hover{border-color:#abc96d;box-shadow:0 14px 28px #18375018}.dashboard-card-primary{border-color:#b9d477;background:linear-gradient(145deg,#fff,#f4f9ec)}.dashboard-card-muted{background:#f8fafc}.dashboard-card-icon{background:linear-gradient(135deg,#0b147e,#2a51a4);box-shadow:0 7px 15px #0b147e30}.dashboard-card .eyebrow,.well-section-title h3,.spec-block h3,.manager-list-head h3,.editor-head h3{color:#0e568c}.dashboard-card-button{border-color:#c4d8e3;background:#f7fbfd;color:#0b5b8b}.dashboard-card-button:hover{border-color:#9fbe5e;background:var(--pm-green-soft)}
.well-demand-section,.well-summary-block,.duty-point-block{border-color:#b9d47b;background:linear-gradient(145deg,#fff,#f4f9ec)}.well-section-title>span{background:linear-gradient(135deg,#0b147e,#2a51a4)}.well-demand-mode label:has(input:checked){border-color:#9fbe5e;background:var(--pm-green-soft);color:#4d6e1d}.well-demand-mode input,.check input{accent-color:var(--pm-green)}.well-calculation{border-color:#c9dca4;background:linear-gradient(125deg,#f1f8e6,#f7fbff)}.well-calculation>div{border-color:#8ab53f}.well-calculation>div:nth-child(2){border-color:#2a51a4}.well-calculation .well-total-head{border-color:#0b147e}
.workflow-step.active{color:#567b15}.workflow-step.active b{background:#8ab53f;box-shadow:0 4px 9px #8ab53f55}.workflow-steps i{background:#c8dba0}.workflow-back,.well-back-button{border-color:#cbdde6;background:#fff;color:#45687c}.workflow-back:hover,.well-back-button:hover{border-color:#9fbe5e;background:var(--pm-green-soft);color:#567b15}
th{background:#edf3ff;color:#214a94;border-bottom-color:#d5e1f1}tbody tr:hover,tbody tr.active{background:#f1f7e8}.model-link{color:#0b5f9b}.pagination button{border-color:#c8dbe5;background:#fff;color:#0b5f9b}.pagination button:hover{border-color:#9fbe5e;background:var(--pm-green-soft)}
.detail-toolbar,.detail-actions{border-color:#dce6ed}.charts{border-color:#d4e0ea;background:linear-gradient(180deg,#fff,#f9fbfd)}.spec-block{background:linear-gradient(145deg,#fff,#f6fafc)}.spec-row{border-color:#e0e9ef}.spec-row strong{color:#17324a}.detail-operating-input{border-color:#a8bedc}.detail-operating-input:focus-within{border-color:#2a51a4;box-shadow:0 0 0 3px #2a51a41c}.detail-operating-input b{background:#edf3ff;color:#214a94}
.manager-tab.active{border-color:#a9c86d;background:var(--pm-green-soft);color:#567b15}.manager-table th{background:#edf3ff;color:#214a94}.manager-edit{color:#0b63a0}.editor-footer{border-color:#dce6ed}.editor-footer .user-editor-message.success{color:#5d861d}.permission-field{border-color:#cbdca7;background:#f6faee}.permission-field strong{color:#4e7020}.permission-status.enabled{background:#e8f4d4;color:#5d861d}
.login-screen{background:radial-gradient(circle at 12% 15%,#2a51a4 0,transparent 25%),radial-gradient(circle at 85% 90%,#8ab53f55 0,transparent 28%),linear-gradient(125deg,#050b37,#0b147e 57%,#24549c)}.login-brand{background:linear-gradient(145deg,#071044,#0b147e 57%,#2a51a4)}.login-mark i{border-color:#8ab53f}.login-card .eyebrow{color:#0e568c}.login-card input,.password-card input{border-color:#cbdbe5}.login-card input:focus,.password-card input:focus{border-color:#779bd8;box-shadow:0 0 0 4px #2a51a41c}.password-card{border-color:#d8e4eb}.password-skip{border-color:#cbdbe5}.password-skip:hover{border-color:#9fbe5e;background:var(--pm-green-soft)}
.manager-feedback.success,.login-feedback.success,.user-active{color:#5d861d!important}.manager-feedback.error,.login-feedback.error,.user-inactive{color:#bd3835!important}.formula-note{border-color:#d7e3eb;background:#f5f9fc}.formula-note h3{color:#0e568c}

/* Password-change feedback and low-latency save states. */
.password-input-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;overflow:hidden;margin-top:7px;border:1px solid #cbdde6;border-radius:10px;background:#fbfdfe;transition:.2s}
.password-input-wrap:focus-within{border-color:#25a9d8;box-shadow:0 0 0 4px #24afe020;background:#fff}
.password-input-wrap input{margin-top:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.password-toggle{min-width:62px;border:0;border-inline-start:1px solid #d8e5eb;background:#edf7fb;color:#086a92;font:700 11px "Segoe UI",Tahoma,Arial,sans-serif;cursor:pointer}
.password-toggle:hover{background:#e1f3f8}
.password-current-hint{margin:6px 0 0;color:#6d8794;font-size:11px;line-height:1.45}
.password-requirements{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:10px 0 2px;padding:10px;border:1px solid #dbe8ee;border-radius:10px;background:#f8fbfc}
.password-requirement{display:flex;align-items:center;gap:6px;margin:0;color:#6c8390;font-size:10px;line-height:1.35}
.password-requirement b{display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#e7eef2;color:#78909b;font:800 11px Arial,sans-serif}
.password-requirement.is-valid{color:#5d861d}.password-requirement.is-valid b{background:#e7f4cf;color:#5d861d}
.password-requirement.is-invalid{color:#bd3835}.password-requirement.is-invalid b{background:#fde8e7;color:#bd3835}
.password-match-status{min-height:17px;margin:7px 0 0;font-size:11px;font-weight:700}
.password-match-status.is-valid{color:#5d861d}.password-match-status.is-invalid{color:#bd3835}
.login-submit:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
.app-toast{position:fixed;z-index:1600;inset-inline-end:24px;bottom:24px;max-width:min(360px,calc(100vw - 32px));padding:13px 17px;border:1px solid #b9d477;border-radius:12px;background:#f3f9e7;color:#5d861d;box-shadow:0 12px 28px #17375022;font:800 12px "Segoe UI",Tahoma,Arial,sans-serif;opacity:0;transform:translateY(12px);pointer-events:none;transition:.22s ease}
.app-toast.visible{opacity:1;transform:translateY(0)}
.app-toast.error{border-color:#f0b7b3;background:#fff2f1;color:#bd3835}
@media(max-width:570px){.password-requirements{grid-template-columns:1fr}.password-toggle{min-width:56px}.app-toast{inset-inline:16px;bottom:16px;max-width:none;text-align:center}}

/* The dashboard cards themselves are the navigation controls. */
.dashboard-card{cursor:pointer}
.dashboard-card:focus-visible{outline:3px solid #8ab53f;outline-offset:3px}
.user-table tbody tr.user-row{cursor:pointer;transition:background .15s,box-shadow .15s}
.user-table tbody tr.user-row:hover{background:#f1f7e8;box-shadow:inset 3px 0 #8ab53f}
.user-table tbody tr.user-row:focus-visible{outline:2px solid #8ab53f;outline-offset:-2px}
.user-password-actions{display:grid;gap:5px;padding:10px 11px;border:1px solid #d5e6ec;border-radius:10px;background:#f7fbfd}
.user-password-actions small{color:#718997;font-size:10px;font-weight:500;line-height:1.45}
.manager-secondary{justify-self:start;min-height:34px;border-color:#b9d77b!important;background:#f3f9e7!important;color:#567b15!important;font-weight:800!important}
.manager-secondary:hover{border-color:#8ab53f!important;background:#eaf4d8!important}
.suspend-field{border-color:#efc5c2;background:#fff7f6}
.suspend-field input{accent-color:#bd3835!important}
.suspend-field strong{color:#a83b38!important}

/* Print fallback hardening: keep the browser-generated report inside A4 when
   the Python PDF service is unavailable. */
.report-header{grid-template-columns:38mm minmax(0,1fr) 38mm;gap:3mm;min-width:0}
.report-logo-cell{display:flex;align-items:center;min-width:0}
.report-logo-left{justify-content:flex-start}
.report-logo-right{justify-content:flex-end}
.report-logo-cell img{display:block;width:100%;max-width:38mm;max-height:17mm;height:auto;object-fit:contain}
.report-family{min-width:0;text-align:center;overflow:hidden;font-family:Arial,Helvetica,sans-serif;font-size:10pt;line-height:1.2}
.report-family .report-model{display:block;font-family:Arial,Helvetica,sans-serif;font-size:23pt;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.report-family span{display:block;font-family:Arial,Helvetica,sans-serif;font-size:8.4pt;white-space:nowrap;overflow:visible;text-overflow:clip}
.report-page{width:100%;max-width:210mm;min-width:0;margin-left:auto;margin-right:auto}
.report-fact-columns,.report-fact-columns>div,.report-table-section{min-width:0;width:100%}
.report-facts{table-layout:fixed;min-width:0}
.report-facts th,.report-facts td{min-width:0;overflow-wrap:anywhere;word-break:normal}
.report-facts td{white-space:normal}
.print-report .report-facts th,.print-report .report-facts td,.print-report .report-scales th,.print-report .report-scales td{color:#111}
.print-report .report-facts th{background:#fff}
.report-dimension-layout{grid-template-columns:minmax(0,44%) minmax(0,1fr);min-width:0}
.report-dimension-layout>div{min-width:0}
.report-scales{table-layout:fixed;min-width:0}
.report-scales th,.report-scales td{overflow-wrap:anywhere;word-break:normal}
.report-identity{margin:12mm 0 0;padding-top:5mm;border-top:.25mm solid #aeb2b4;color:#3e4b54;text-align:center;font-size:9pt;font-weight:700}
.report-engineer{margin:5mm 8mm 0;padding-top:4mm;border-top:.25mm solid #aeb2b4;color:#111;font-size:8.6pt}
@media print{html,body{width:210mm!important;overflow-x:hidden!important}#printReport{width:100%!important;max-width:210mm!important}.report-page{width:100%!important;max-width:none!important;overflow:hidden!important}.report-dimension-layout{grid-template-columns:minmax(0,44%) minmax(0,1fr)!important}}

/* Final report table polish: match the boxed Ferat datasheet hierarchy. */
.print-report .report-table-section h3{padding:1.8mm 0 1.6mm;font-size:10pt}
.print-report .report-facts{font-size:8.2pt}
.print-report .report-facts th,.print-report .report-facts td{padding:1.35mm 1.5mm;line-height:1.1}
.print-report .report-facts td{font-weight:400}
.print-report .report-scales{border-top:0}
.print-report .report-scales caption{caption-side:top;margin:0;padding:2.7mm 2mm 2.5mm;border:.25mm solid #111;border-bottom:0;background:#e6e6e6;color:#111;font-size:12pt;font-weight:700;line-height:1.1;text-align:center;white-space:nowrap}

/* Datasheet table scale: match the larger, clearer reference layout. */
.print-report .report-table-section{border-width:.3mm;margin-bottom:5mm}
.print-report .report-table-section h3{padding:2mm 0 1.8mm;font-size:11pt}
.print-report .report-facts{font-size:9pt}
.print-report .report-facts th,.print-report .report-facts td{padding:1.65mm 2mm;border-bottom:.25mm solid #111;line-height:1.12}
.print-report .report-facts th{border-right:.25mm solid #111}
.print-report .report-scales th,.print-report .report-scales td{border-width:.25mm}
