/* OPUS metal purchase request: visually separate from the existing calculator. */
.order-add-wrap{display:flex;align-items:center;gap:8px}
.order-add,.order-save,.order-send{
 display:inline-flex;align-items:center;justify-content:center;gap:12px;cursor:pointer;
 font:800 12px/1.2 "Manrope",Arial,sans-serif;letter-spacing:.01em;
 padding:13px 22px;border:1px solid #178d75;background:#a1f3da;color:#123c36;
 transition:background .15s ease,border-color .15s ease;
}
.order-add:hover,.order-save:hover,.order-send:hover{background:#c7ffe8}
.order-add:focus-visible,.order-save:focus-visible,.order-send:focus-visible,.order-remove:focus-visible{outline:2px solid #26bd9a;outline-offset:3px}
.order-add{white-space:nowrap}
.order-section{max-width:1600px;margin:0 auto;padding:42px max(5vw,28px) 48px;background:#ecf3ef;color:#243d35;border-top:1px solid #cedfd5}
.order-heading{display:flex;justify-content:space-between;align-items:start;gap:18px;margin-bottom:24px}
.order-eyebrow{display:block;font:10px/1.5 "DM Mono",monospace;letter-spacing:.08em;color:#428b78;margin-bottom:7px}
.order-heading h2{font-size:clamp(26px,3vw,40px);line-height:1.13;letter-spacing:-.05em;margin:0 0 10px}
.order-heading h2 em{font-style:normal;color:#17917b}
.order-heading p{font-size:12px;line-height:1.7;color:#6a8477;max-width:675px;margin:0}
.order-count-badge{flex:none;display:flex;align-items:center;gap:10px;color:#527c70;font:10px "DM Mono",monospace;white-space:nowrap;padding:10px 13px;border:1px solid #c1ded1}
.order-count-badge strong{color:#136b58;font-size:22px}
.order-empty{border:1px dashed #a6c8b8;background:#f6faf7;padding:22px;font-size:12px;color:#708b7d;text-align:center}
.order-empty strong{color:#218c70}
.order-table-wrap{background:#fdfefd;border:1px solid #caddd0;overflow-x:auto;-webkit-overflow-scrolling:touch}
.order-table{border-collapse:collapse;width:100%;min-width:790px;text-align:left}
.order-table th{padding:11px 12px;font:10px/1.4 "DM Mono",monospace;text-transform:uppercase;letter-spacing:.03em;color:#688b7d;background:#f1f8f2;border-bottom:1px solid #d6e5d9;white-space:nowrap}
.order-table td{padding:13px 12px;font-size:12px;font-weight:700;color:#284c41;border-bottom:1px solid #e5eee7;vertical-align:middle;white-space:nowrap}
.order-table tr:last-child td{border-bottom:0}
.order-table td:nth-child(2){min-width:210px;max-width:355px;white-space:normal}
.order-table td strong{display:block;font-size:12px;color:#163e34}
.order-table td small{display:block;font-size:10px;line-height:1.55;color:#779286;margin-top:3px;overflow-wrap:anywhere}
.order-table .order-index{color:#9bb5a7;font:10px "DM Mono",monospace}
.order-remove{border:1px solid #d9e7de;background:#fff;color:#779184;width:27px;height:27px;padding:0;cursor:pointer;font-size:20px;line-height:1}
.order-remove:hover{color:#b74949;border-color:#b74949}
.order-totals{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:16px 28px;padding:13px 15px;background:#f5faf6;border-top:1px solid #d6e5d9;font-size:11px;color:#6a8576}
.order-totals strong{color:#166957;font-size:13px;margin-left:4px}
.order-actions{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:10px;margin-top:19px}
.order-save{background:transparent;border-color:#6ba991;color:#246b58}
.order-save:hover{background:#dcf6e8}
.order-send{background:#90efd0}
.order-actions span,.order-dialog-footer button span{font-size:15px}
.order-status{font-size:12px;line-height:1.5;font-weight:700;color:#168066;min-height:18px;margin:12px 0 0}
.order-privacy{font-size:10px;line-height:1.6;color:#819b8d;margin:12px 0 0}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:650px){
 .order-add{font-size:11px;padding:8px 12px;min-height:34px}
 .order-section{padding:23px 12px 28px}
 .order-heading{gap:10px;margin-bottom:12px}
 .order-heading h2{font-size:26px}
 .order-heading p{font-size:11px}
 .order-count-badge{padding:7px;gap:5px;font-size:8px}
 .order-count-badge strong{font-size:17px}
 .order-table-wrap{overflow:visible;border:0;background:transparent}
 .order-table{display:block;min-width:0;width:100%;border:0}
 .order-table thead{display:none}
 .order-table tbody{display:block}
 .order-table tr{display:grid;grid-template-columns:min-content 1fr 1fr;gap:5px 8px;background:#fff;border:1px solid #d5e6db;margin:0 0 7px;padding:9px 10px;align-items:center}
 .order-table td{display:block;border:0;padding:0;font-size:11px;white-space:normal}
 .order-table td:nth-child(1){grid-column:1;grid-row:1;align-self:start;padding-top:3px}
 .order-table td:nth-child(2){grid-column:2/4;grid-row:1;min-width:0}
 .order-table td:nth-child(3){grid-column:2;grid-row:2}
 .order-table td:nth-child(4){grid-column:3;grid-row:2}
 .order-table td:nth-child(5){grid-column:2;grid-row:3;color:#7b9585;font-size:10px}
 .order-table td:nth-child(6){grid-column:3;grid-row:3}
 .order-table td:nth-child(7){grid-column:1;grid-row:2/4;align-self:start}
 .order-table td strong{font-size:12px}
 .order-table td small{font-size:9px}
 .order-totals{justify-content:flex-start;gap:7px;padding:9px 10px;font-size:10px;border:1px solid #d5e6db}
 .order-totals span{display:block;width:100%}
 .order-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:12px}
 .order-actions button{width:100%;font-size:10px;min-width:0;padding:10px 4px;gap:4px}
 .order-actions span{font-size:12px}
 .order-status{font-size:10px}
 .order-privacy{font-size:9px}
}

/* Simple inline request contacts: 3 fields for customer and 3 for supplier. */
.order-party-form{margin-top:18px;background:#f7fbf8;border:1px solid #cbdfd2;padding:17px 20px}
.order-party-grid{display:grid;grid-template-columns:1fr;gap:12px}
.order-party-grid fieldset{margin:0;padding:11px 12px 14px;border:1px solid #d5e5d9;min-width:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 14px;background:#fff}
.order-party-grid legend{font:800 13px "Manrope",Arial,sans-serif;color:#1b6c59;padding:0 6px}
.order-party-grid label{min-width:0;display:block;font-size:11px;font-weight:700;color:#617e70}
.order-party-grid input{display:block;width:100%;min-width:0;height:40px;min-height:40px;padding:9px 10px;margin-top:5px;background:#fff;color:#183a30;border:1px solid #bcd5c4;border-radius:0;font:500 13px "Manrope",Arial,sans-serif}
.order-party-grid input:focus{outline:2px solid #75d9b6;outline-offset:1px}
.order-party-grid input:invalid:not(:focus):not(:placeholder-shown){border-color:#cd7777}
.order-fields-note{margin:10px 0 0;font-size:10px;color:#6c8878;line-height:1.5}
@media(max-width:650px){
 .order-party-form{padding:11px;margin-top:12px}
 .order-party-grid{gap:9px}
 .order-party-grid fieldset{grid-template-columns:repeat(2,minmax(0,1fr));padding:9px;gap:9px}
 .order-party-grid label:first-of-type{grid-column:1/-1}
 .order-party-grid label{font-size:10px}
 .order-party-grid input{height:37px;min-height:37px;padding:7px 9px;font-size:12px}
 .order-fields-note{font-size:9px}
}

/* Add a calculated metal position from the right side of the total price. */
.result-price .result-price-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 126px;
  align-items:center;
  gap:9px;
  width:100%;
  margin-top:6px;
  min-width:0;
}
.result-price .result-price-value{
  display:flex;
  align-items:baseline;
  gap:6px;
  margin-top:0;
  min-width:0;
  grid-column:1;
}
.result-price .result-price-value strong{
  min-width:0;
  font-size:clamp(24px,2.8vw,42px);
  line-height:1.15;
}
.result-price .result-price-value small{flex:none}
.result-price .order-add{
  display:inline-flex;
  grid-column:2;
  justify-self:end;
  width:126px;
  flex:none;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:42px;
  padding:8px;
  border:1px solid #8cebd2;
  background:#8cebd2;
  color:#0d3936;
  font-size:11px;
  line-height:1.25;
  white-space:normal;
  text-align:center;
}
.result-price .order-add span:first-child{font-size:18px;flex:none;line-height:1}
@media(max-width:650px){
  .result-price .result-price-row{grid-template-columns:minmax(0,1fr) 104px;gap:6px}
  .result-price .result-price-value{gap:4px}
  .result-price .result-price-value strong{font-size:clamp(20px,6vw,28px)}
  .result-price .result-price-value small{font-size:11px}
  .result-price .order-add{width:104px;min-height:38px;padding:5px;gap:4px;font-size:10px}
  .result-price .order-add span:first-child{font-size:16px}
}
@media(max-width:360px){
  .result-price .result-price-row{grid-template-columns:minmax(0,1fr) 94px}
  .result-price .order-add{width:94px;font-size:9px}
  .result-price .result-price-value strong{font-size:19px}
}

/* Every request position is one compact table row, including on phones. */
.order-table-wrap{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.order-table{width:100%;min-width:760px;table-layout:auto;border-collapse:collapse}
.order-table th{font-size:10px;line-height:1.3;padding:9px 8px;white-space:nowrap}
.order-table td{padding:9px 8px;font-size:11px;line-height:1.25;white-space:nowrap;border-bottom:1px solid #e2ede6}
.order-table td:nth-child(1){min-width:24px}
.order-table td:nth-child(2){min-width:116px;max-width:none;white-space:nowrap}
.order-table td:nth-child(3){min-width:52px}
.order-table td:nth-child(4){min-width:190px;white-space:nowrap;font:500 10px/1.25 "DM Mono",monospace}
.order-table td:nth-child(5){min-width:86px;white-space:nowrap}
.order-table td:nth-child(6){min-width:106px;white-space:nowrap}
.order-table td:nth-child(7){min-width:108px;white-space:nowrap}
.order-table td:nth-child(8){min-width:32px;text-align:center}
.order-table .order-shape{color:#174639;font-weight:800}
.order-table .order-grade{color:#2f6b54;font-weight:800}
.order-table .order-qty,.order-table .order-mass,.order-table .order-cost{font-variant-numeric:tabular-nums}
.order-table .order-mass,.order-table .order-cost{text-align:right}
.order-table thead th:nth-child(6),.order-table thead th:nth-child(7){text-align:right}
.order-table .order-remove{width:25px;height:25px;font-size:18px}
@media(max-width:650px){
 .order-table-wrap{display:block;overflow-x:auto;overflow-y:hidden;border:1px solid #caddd0;background:#fff}
 .order-table{display:table;width:100%;min-width:730px;table-layout:auto;border:0}
 .order-table thead{display:table-header-group}
 .order-table tbody{display:table-row-group}
 .order-table tr{display:table-row;border:0;margin:0;padding:0;background:transparent}
 .order-table th{display:table-cell;padding:8px 6px;font-size:9px;white-space:nowrap}
 .order-table tbody td,.order-table tbody td:nth-child(n){
   display:table-cell;grid-column:auto;grid-row:auto;max-width:none;
   border:0;border-bottom:1px solid #e2ede6;padding:8px 6px;
   font-size:10px;line-height:1.25;white-space:nowrap;vertical-align:middle
 }
 .order-table tbody td:nth-child(1){min-width:22px;font-size:9px}
 .order-table tbody td:nth-child(2){min-width:100px;font-size:10px}
 .order-table tbody td:nth-child(3){min-width:46px}
 .order-table tbody td:nth-child(4){min-width:172px;font:500 9px/1.25 "DM Mono",monospace}
 .order-table tbody td:nth-child(5){min-width:80px}
 .order-table tbody td:nth-child(6){min-width:102px}
 .order-table tbody td:nth-child(7){min-width:104px}
 .order-table tbody td:nth-child(8){min-width:27px;text-align:center}
 .order-table .order-remove{width:22px;height:22px;font-size:16px}
}

/* Weight / length mode selector in the metal calculator header. */
.workbench-head .calc-mode-switch{
  display:inline-flex;align-items:stretch;flex:none;
  gap:2px;padding:3px;border:1px solid #9fc4b3;
  background:#e1eee6;border-radius:5px;
}
.workbench-head .calc-mode-switch button{
  appearance:none;cursor:pointer;border:0;border-radius:3px;
  background:transparent;color:#476f60;padding:9px 11px;
  font:800 11px/1.25 "Manrope",Arial,sans-serif;
  white-space:nowrap;transition:background .15s ease,color .15s ease;
}
.workbench-head .calc-mode-switch button:hover{background:#d0e6d9;color:#154c3d}
.workbench-head .calc-mode-switch button.is-active{
  background:#163e3b;color:#a8f7db;box-shadow:0 1px 5px #1d4c3328;
}
.workbench-head .calc-mode-switch button:focus-visible{outline:2px solid #148f73;outline-offset:2px}
@media(max-width:650px){
  .workbench-head{flex-wrap:wrap;align-items:center}
  .workbench-head .calc-mode-switch{width:100%;margin-top:3px}
  .workbench-head .calc-mode-switch button{flex:1;min-width:0;font-size:10px;padding:8px 5px}
}

/* One-line metal request: compact widths and right-aligned numeric entries. */
.order-table-wrap{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.order-table{width:626px;min-width:626px;max-width:none;table-layout:fixed;border-collapse:collapse;text-align:left}
.order-table th,.order-table td{box-sizing:border-box}
.order-table th{
 padding:7px 4px;font:500 9px/1.2 "DM Mono",monospace;
 letter-spacing:0;white-space:nowrap;vertical-align:middle;text-transform:none
}
.order-table td{
 padding:7px 4px;font-size:10px;line-height:1.2;
 white-space:nowrap;border-bottom:1px solid #e2ede6;vertical-align:middle
}
/* Eight columns: №, найменування, марка, розміри, к-сть, вага, ціна, видалення. */
.order-table th:nth-child(1),.order-table td:nth-child(1){width:24px}
.order-table th:nth-child(2),.order-table td:nth-child(2){width:118px}
.order-table th:nth-child(3),.order-table td:nth-child(3){width:59px}
.order-table th:nth-child(4),.order-table td:nth-child(4){width:103px}
.order-table th:nth-child(5),.order-table td:nth-child(5){width:75px}
.order-table th:nth-child(6),.order-table td:nth-child(6){width:104px}
.order-table th:nth-child(7),.order-table td:nth-child(7){width:112px}
.order-table th:nth-child(8),.order-table td:nth-child(8){width:31px;text-align:center}
.order-table th:nth-child(1),.order-table td:nth-child(1),
.order-table th:nth-child(4),.order-table td:nth-child(4),
.order-table th:nth-child(5),.order-table td:nth-child(5),
.order-table th:nth-child(6),.order-table td:nth-child(6),
.order-table th:nth-child(7),.order-table td:nth-child(7){text-align:right}
.order-table th:nth-child(6){white-space:nowrap;line-height:1.2}
.order-table td:nth-child(2){
 min-width:0;max-width:none;white-space:nowrap;
 overflow:hidden;text-overflow:ellipsis
}
.order-table td:nth-child(3){min-width:0}
.order-table td:nth-child(4){
 min-width:0;white-space:nowrap;
 font:600 10px/1.2 "Manrope",Arial,sans-serif;letter-spacing:-.02em
}
.order-table td:nth-child(5),.order-table td:nth-child(6),.order-table td:nth-child(7){
 min-width:0;white-space:nowrap;font-variant-numeric:tabular-nums
}
.order-table .order-remove{width:23px;height:23px;font-size:17px}
@media(max-width:650px){
 .order-table-wrap{display:block;overflow-x:auto;overflow-y:hidden;border:1px solid #caddd0;background:#fff}
 .order-table{display:table;width:626px;min-width:626px;max-width:none;table-layout:fixed;border:0}
 .order-table thead{display:table-header-group}
 .order-table tbody{display:table-row-group}
 .order-table tr{display:table-row;border:0;margin:0;padding:0;background:transparent}
 .order-table th,.order-table tbody td,.order-table tbody td:nth-child(n){
  display:table-cell;grid-column:auto;grid-row:auto;box-sizing:border-box;
  min-width:0;max-width:none;padding:6px 3px;
  border:0;border-bottom:1px solid #e2ede6;
  font-size:9px;line-height:1.2;vertical-align:middle;white-space:nowrap
 }
 .order-table th{font-size:8px}
 .order-table th:nth-child(1),.order-table tbody td:nth-child(1),
 .order-table th:nth-child(4),.order-table tbody td:nth-child(4),
 .order-table th:nth-child(5),.order-table tbody td:nth-child(5),
 .order-table th:nth-child(6),.order-table tbody td:nth-child(6),
 .order-table th:nth-child(7),.order-table tbody td:nth-child(7){text-align:right}
 .order-table tbody td:nth-child(2){overflow:hidden;text-overflow:ellipsis}
 .order-table tbody td:nth-child(4){font:600 9px/1.2 "Manrope",Arial,sans-serif;letter-spacing:-.02em}
 .order-table .order-remove{width:21px;height:21px;font-size:16px}
}

/* Four compact material inputs; first row contains steel grade and optional rolling type. */
.fields-two.material-fields{
  grid-template-columns:minmax(0,1.1fr) minmax(0,1.35fr) minmax(0,.85fr) minmax(0,.75fr);
  align-items:end;gap:8px;
}
.material-fields .grade-field,.material-fields .rolling-grade-field{grid-column:auto;min-width:0}
.material-fields select{min-width:0;font-size:12px;padding-left:8px;padding-right:19px;text-overflow:ellipsis}
@media(max-width:1050px){
 .fields-two.material-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .material-fields .grade-field,.material-fields .rolling-grade-field{grid-column:auto}
}
@media(max-width:650px){
 .fields-two.material-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
 .material-fields .grade-field,.material-fields .rolling-grade-field{grid-column:auto}
 .material-fields select{height:34px;min-height:34px;font-size:12px;padding:5px 18px 5px 6px}
}


/* Ukrainian telephone inputs: locked country code, nine user-entered digits. */
.order-party-grid .order-phone-field{
 display:flex;align-items:center;box-sizing:border-box;
 width:100%;height:40px;min-height:40px;margin-top:5px;
 border:1px solid #bcd5c4;background:#fff;
}
.order-party-grid .order-phone-prefix{
 display:flex;align-items:center;align-self:stretch;flex:none;
 padding:0 8px;color:#246f5d;background:#edf6f0;
 border-right:1px solid #c9dfd0;
 font:800 14px/1 "Manrope",Arial,sans-serif;
}
.order-party-grid .order-phone-field input{
 flex:1;min-width:0;width:100%;height:100%;min-height:0;margin:0;
 border:0;outline:0;border-radius:0;background:transparent;
 padding:7px 8px;font-size:16px;letter-spacing:.015em;
}
.order-party-grid .order-phone-field:focus-within{
 outline:2px solid #75d9b6;outline-offset:1px;
}
.order-party-grid .order-phone-field input:focus{outline:0}
.order-party-grid .order-phone-field:has(input:invalid:not(:focus):not(:placeholder-shown)){
 border-color:#cd7777;
}
@media(max-width:650px){
 .order-party-grid .order-phone-field{height:37px;min-height:37px}
 .order-party-grid .order-phone-prefix{padding:0 7px;font-size:13px}
 .order-party-grid .order-phone-field input{font-size:16px;padding:6px}
}

