/* Public "Create a purchase order" form (/order) — mirrors the PO review page sections; loaded on top of site.css */
.order-form .hide{display:none!important}
.order-form .is-off .input{opacity:.55}
.order-form .input.is-static{background:var(--bg,#f4f6f8);color:var(--muted);display:flex;align-items:center}
.osteps{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0;counter-reset:os}
.osteps li{counter-increment:os}
.osteps a{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;font-weight:600;font-size:.9rem;color:var(--strong);text-decoration:none;background:#fff}
.osteps a::before{content:counter(os);width:22px;height:22px;border-radius:50%;background:var(--navy);color:#fff;font-size:.75rem;display:inline-flex;align-items:center;justify-content:center}
.osteps a:hover{border-color:var(--teal);color:var(--teal-2)}
.oline{margin:0 0 14px;padding:14px 16px 10px;border-left:4px solid var(--teal)}
.oline-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:4px}
.oline-del{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--line);border-radius:10px;padding:6px 10px;font:inherit;font-size:.85rem;font-weight:600;color:var(--muted);cursor:pointer;min-height:36px}
.oline-del:hover{color:var(--red);border-color:var(--red)}
.oline-del svg{width:16px;height:16px}
[data-lines] .oline:only-child .oline-del{display:none}
.oseg{margin-top:10px;padding:10px 12px 2px;border:1px solid var(--line);border-radius:12px;background:rgba(245,247,250,.6)}
.oseg-t{font-weight:800;font-size:.76rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.oseg .field{margin-bottom:10px}
.oseg .field label,.oseg .field .lbl{font-size:.86rem}
.oseg .input,.oseg select,.oseg textarea{min-height:42px;padding:8px 10px;font-size:.97rem}
.oseg textarea{min-height:64px}
.ocols-3{grid-template-columns:repeat(3,1fr)}
.ocols-4{grid-template-columns:repeat(4,1fr)}
.odims{grid-template-columns:repeat(6,1fr)}
.span-2{grid-column:span 2}
@media (max-width:1000px){.odims{grid-template-columns:repeat(3,1fr)}.ocols-4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:700px){.ocols-3{grid-template-columns:repeat(2,1fr)}.span-2{grid-column:span 2}}
@media (max-width:520px){.odims,.ocols-3,.ocols-4{grid-template-columns:1fr 1fr}.span-2{grid-column:span 2}}
.oseg .seg{display:flex}
.oseg .seg label{flex:1;text-align:center;padding:9px 8px;font-size:.88rem}
.ocalc{margin-top:10px;padding:10px 12px;border-radius:12px;background:rgba(14,139,130,.07);border:1px dashed rgba(14,139,130,.4)}
.ocalc-t{display:flex;align-items:center;gap:6px;font-weight:800;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;color:var(--teal-2);margin-bottom:6px}
.ocalc-t svg{width:16px;height:16px}
.ocalc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px 14px}
.ocalc-item{display:flex;flex-direction:column}
.ocalc-item b{color:var(--strong);font-size:1.05rem}
.ocalc-item small{font-weight:500;color:var(--muted);font-size:.78rem}
.ocalc-note{margin-top:6px;font-size:.8rem;color:var(--muted)}
.order-form .form-summary:not([hidden]){margin-top:0}
.order-form .banner.is-busy{opacity:.7}
