/* AMC Jets — commerce.css (Phase 4): quote basket, request form, accept page, customer account, basket/checkout,
   plus the admin quote editor and customer tabs. Brand: primary #0088cc, dark #222529, light blue #87b5eb. */
:root{--cm-primary:#0088cc;--cm-dark:#222529;--cm-light:#87b5eb;--cm-border:#dfe3e8;--cm-bg:#f1f4f7;--cm-muted:#6b7280;--cm-ok:#1f8a4c;--cm-warn:#b7791f;--cm-danger:#c0392b}

/* ---- shared public pieces ---- */
.commerce-page{padding:24px 0 48px}.commerce-page h1{font-family:Poppins,sans-serif;font-size:1.9rem;margin:8px 0 16px}
.commerce-page h2{font-family:Poppins,sans-serif;font-size:1.15rem;margin:22px 0 10px}.commerce-narrow{max-width:680px}
.commerce-page .lead{font-size:1.1rem}.commerce-intro{max-width:760px;color:#333}.commerce-empty{background:var(--cm-bg);border-radius:10px;padding:28px;max-width:760px}
.commerce-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:32px;align-items:start}
.commerce-side{background:var(--cm-bg);border-radius:10px;padding:18px 20px}.commerce-side h2{margin-top:0;font-size:1rem}.commerce-side address{font-style:normal;line-height:1.5}
.commerce-form fieldset{border:0;padding:0;margin:0 0 18px}.commerce-form legend{font-family:Poppins,sans-serif;font-weight:600;font-size:1.05rem;margin-bottom:10px}.commerce-form legend small{font-weight:400;color:var(--cm-muted);font-size:.85rem}
.commerce-form .form-check{display:flex;gap:8px;align-items:flex-start;margin:12px 0}.commerce-form .form-check input{margin-top:4px}
.mono{font-family:Consolas,Menlo,monospace}.text-danger{color:var(--cm-danger)}
.btn-link{background:none;border:0;padding:0;color:var(--cm-primary);cursor:pointer;font:inherit;text-decoration:underline}.btn-link:hover{color:var(--cm-dark)}
.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.commerce-table{width:100%;border-collapse:collapse;font-size:.95rem}.commerce-table th,.commerce-table td{padding:10px 10px;border-bottom:1px solid var(--cm-border);text-align:left;vertical-align:middle}
.commerce-table th{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--cm-muted);background:var(--cm-bg)}.commerce-table .num{text-align:right;white-space:nowrap}
.commerce-table tfoot td{border-bottom:0;font-weight:600}.commerce-table tfoot .grand td{font-size:1.1rem;border-top:2px solid var(--cm-dark)}
.basket-table .col-img{width:72px}.basket-table .col-img img{display:block;border-radius:6px;background:#fff;border:1px solid var(--cm-border)}
.basket-table .col-qty{width:110px}.basket-table .col-note{min-width:220px}.basket-table .col-actions{width:80px;text-align:right}
.basket-table .line-name{font-weight:600;display:block}.basket-table .line-sku{display:block;font-family:Consolas,Menlo,monospace;color:var(--cm-muted);font-size:.85rem}.basket-table .stock{font-size:.8rem}
.qty-input{width:90px;text-align:center}.basket-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:20px}.basket-actions .btn-lg{margin-left:auto}
.mini-lines{list-style:none;margin:0;padding:0}.mini-lines li{display:flex;gap:10px;padding:8px 0;border-bottom:1px solid var(--cm-border);font-size:.92rem}.mini-lines .mini-qty{min-width:40px;font-weight:700;color:var(--cm-primary)}
.totals{display:grid;grid-template-columns:1fr auto;gap:6px 16px;margin:14px 0}.totals dt{color:var(--cm-muted)}.totals dd{margin:0;text-align:right}.totals .grand{font-weight:700;font-size:1.1rem;color:var(--cm-dark)}
.steps{padding-left:20px}.steps li{margin-bottom:8px}
.doc-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;flex-wrap:wrap;margin-bottom:16px}.doc-head h1{margin:0 0 4px}.doc-actions{display:flex;gap:10px;align-items:center}
.badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:.78rem;font-weight:600;background:#e9eef4;color:#334;white-space:nowrap}
.badge-success{background:#e3f5ea;color:var(--cm-ok)}.badge-info{background:#e3f0fb;color:#1c5d99}.badge-warning{background:#fdf1dc;color:var(--cm-warn)}.badge-danger{background:#fbe4e1;color:var(--cm-danger)}.badge-gold{background:#fff3cd;color:#8a6d1b}.badge-muted{background:#eceff3;color:#556}
.accept-box{background:#eef7fc;border:1px solid #cfe5f4;border-radius:10px;padding:20px 22px;margin:22px 0}.accept-box h2{margin-top:0}
.decline-box{margin:12px 0 24px}.decline-box summary{cursor:pointer;color:var(--cm-muted)}.decline-box form{margin-top:12px;max-width:480px}
.timeline{list-style:none;padding:0;margin:0}.timeline li{padding:6px 0 6px 14px;border-left:2px solid var(--cm-light);margin-left:4px;font-size:.92rem}.timeline small{color:var(--cm-muted);display:block}
.prose-small{font-size:.95rem}.alert-warning{background:#fdf1dc;color:#7a5a12;border-radius:8px;padding:12px 16px}.alert-info{background:#e3f0fb;color:#1c5d99;border-radius:8px;padding:12px 16px}

/* ---- status tabs (account) ---- */
.status-tabs{display:flex;flex-wrap:wrap;gap:4px;border-bottom:2px solid var(--cm-border);margin-bottom:18px}.status-tabs a{padding:8px 14px;font-weight:600;color:var(--cm-muted);text-decoration:none;border-bottom:2px solid transparent;margin-bottom:-2px}
.status-tabs a.active,.status-tabs a:hover{color:var(--cm-primary);border-bottom-color:var(--cm-primary)}

/* ---- account layout ---- */
.account-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:32px;align-items:start}
.account-nav{background:var(--cm-bg);border-radius:10px;padding:16px;position:sticky;top:16px}.account-nav ul{list-style:none;margin:0;padding:0}.account-nav li{margin:0}
.account-nav a,.account-nav .btn-link{display:block;padding:9px 12px;border-radius:6px;color:var(--cm-dark);text-decoration:none;font-weight:600;width:100%;text-align:left}.account-nav a.active{background:var(--cm-primary);color:#fff}.account-nav a:hover{background:#e2eaf2}
.account-who{padding:4px 12px 12px;border-bottom:1px solid var(--cm-border);margin-bottom:10px}.account-who strong{display:block}.account-who small{color:var(--cm-muted)}
.account-machines{margin:16px 12px 0;font-size:.85rem;color:var(--cm-muted)}.account-main h1{margin-top:0}
.account-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}
.account-card{background:#fff;border:1px solid var(--cm-border);border-radius:10px;padding:18px 20px}.account-card h2{margin-top:0;font-size:1.05rem}.account-card h2 small{color:var(--cm-muted);font-weight:400}
.account-card--wide{grid-column:1/-1;margin-top:18px}.account-card--soon{background:var(--cm-bg);border-style:dashed}
.account-list{list-style:none;padding:0;margin:0}.account-list li{padding:7px 0;border-bottom:1px solid var(--cm-border);display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.dl-inline{display:grid;grid-template-columns:auto 1fr;gap:6px 16px}.dl-inline dt{color:var(--cm-muted)}.dl-inline dd{margin:0}
.address-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin-bottom:20px}
.address-card{border:1px solid var(--cm-border);border-radius:10px;padding:14px 16px;background:#fff}.address-card.is-default{border-color:var(--cm-primary)}.address-card address{font-style:normal;line-height:1.5;margin:6px 0}
.address-type{font-weight:600;font-size:.9rem}.address-actions{display:flex;gap:14px;font-size:.9rem}.address-actions form{display:inline}
.address-card--option{display:flex;gap:10px;cursor:pointer;align-items:flex-start}.address-card--option input{margin-top:4px}
.inline-add{margin-top:12px}.inline-add summary{cursor:pointer;color:var(--cm-primary)}
.order-progress{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0 0 20px;counter-reset:step}
.order-progress li{flex:1 1 100px;text-align:center;padding:8px 6px;background:var(--cm-bg);border-radius:6px;font-size:.85rem;color:var(--cm-muted);position:relative}
.order-progress li.done{background:#e3f5ea;color:var(--cm-ok)}.order-progress li.current{background:var(--cm-primary);color:#fff;font-weight:700}

/* ---- header fragments (rendered by account_nav_html()) ---- */
.account-link,.basket-link{font-weight:600}.basket-count{display:inline-block;min-width:20px;padding:0 6px;margin-left:4px;border-radius:10px;background:var(--cm-primary);color:#fff;font-size:.78rem;text-align:center}
.price{font-weight:700;color:var(--cm-dark)}.price small{font-weight:400;color:var(--cm-muted)}

/* ---- admin: quote editor and customer tabs ---- */
.lines-edit input.num{text-align:right}.lines-edit .form-control--sm{padding:5px 8px;font-size:.88rem}.lines-edit td{vertical-align:middle}
.picker-wrap{position:relative}.picker-results{position:absolute;z-index:30;left:0;right:0;top:100%;background:#fff;border:1px solid var(--cm-border);border-radius:0 0 8px 8px;box-shadow:0 10px 24px rgba(0,0,0,.12);list-style:none;margin:0;padding:4px 0;max-height:280px;overflow:auto}
.picker-results li{padding:8px 12px;cursor:pointer;display:flex;justify-content:space-between;gap:10px;font-size:.9rem}.picker-results li:hover,.picker-results li.hover{background:var(--cm-bg)}
.picker-results .pk-sku{font-family:Consolas,Menlo,monospace;font-weight:600}.picker-results .pk-price{color:var(--cm-muted);white-space:nowrap}.picker-results .pk-empty{color:var(--cm-muted);cursor:default}
.add-line h3{margin:0 0 10px;font-size:1rem}

@media (max-width:900px){.commerce-grid,.account-layout{grid-template-columns:1fr}.account-nav{position:static}.basket-actions .btn-lg{margin-left:0;width:100%;text-align:center}}
@media print{.account-nav,.basket-actions,.status-tabs,.decline-box{display:none}}
