/* Customer-only theme; no invoice, staff or financial logic. */
.customer-surface{background:#f2f6fa;color:#132a42;font:16px/1.65 'Segoe UI',Arial,sans-serif}
.customer-surface .portal-header{background:#fff;border-bottom:1px solid #d7e2eb;position:relative;z-index:12}
.portal-top{max-width:1240px;padding:22px 28px 14px;margin:auto;display:flex;align-items:center;gap:26px}
.portal-brand{display:flex;align-items:center;gap:12px;color:#11283f;font-weight:800;letter-spacing:1px;font-size:20px}
.portal-brand img{border:1px solid #e1e9ef;border-radius:10px;object-fit:contain;background:white}
.portal-brand small{display:block;letter-spacing:5px;font-size:10px;color:#c51c3c}
.portal-context{font-size:12px;letter-spacing:1.3px;color:#63788d;border-left:1px solid #d7e2eb;padding-left:24px}
.portal-actions{display:flex;align-items:center;gap:14px;margin-left:auto;font-size:14px;font-weight:600}
.portal-cart{padding:10px 16px;background:#123653;color:#fff;border-radius:8px;white-space:nowrap}
.portal-switch{position:relative;border:0;padding:0}
.portal-switch summary{padding:10px 12px;border:1px solid #ccdae5;border-radius:8px;cursor:pointer;white-space:nowrap}
.portal-switch>div{position:absolute;right:0;top:100%;margin-top:8px;width:230px;background:#fff;border:1px solid #d7e2eb;box-shadow:0 15px 36px #122b4526;border-radius:10px;padding:8px;display:grid;z-index:30}
.portal-switch a{padding:11px;border-radius:6px}
.portal-switch a:hover{background:#eaf5f9}
.portal-tabs{max-width:1240px;display:flex;gap:4px 14px;flex-wrap:wrap;padding:0 28px;margin:auto}
.portal-tabs a{font-size:14px;padding:12px 3px;color:#52677d;border-bottom:3px solid transparent}
.portal-tabs a:hover,.portal-tabs a[aria-current]{color:#102e49;border-bottom-color:#1b8297}
.customer-surface>main.enquiry-shell,.customer-surface>main.admin-shell{max-width:1184px;margin:auto;padding:38px 28px 70px;min-height:60vh}
.customer-surface main>h1{font:700 clamp(28px,4vw,42px)/1.2 'Segoe UI',Arial,sans-serif;letter-spacing:-1px;margin:12px 0 18px}
.customer-surface main>p{color:#52677d;max-width:780px;line-height:1.7}
.customer-surface .eyebrow{font-size:12px;font-weight:700;letter-spacing:1.5px;color:#186b81}
.customer-surface .admin-card{border:1px solid #d8e3ed;border-radius:16px;box-shadow:0 4px 18px #143a5506;padding:28px;margin:24px 0;scroll-margin-top:24px}
.customer-surface .admin-card h2{font-size:22px;line-height:1.35;color:#132a42}
.customer-surface .admin-card>p,.customer-surface .form-note,.customer-surface .field-grid small{font-size:14px;line-height:1.75;color:#52677d}
.customer-surface .field-grid{gap:20px;min-width:0}
.customer-surface .field-grid>*{min-width:0}
.customer-surface label{font-size:14px;line-height:1.65}
.customer-surface input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.customer-surface select,.customer-surface textarea{font:inherit;font-size:16px;min-height:46px;max-width:100%;border:1px solid #bfcfdd;border-radius:8px;padding:11px;background:#fff;color:#142e47}
.customer-surface input[type=file]{white-space:normal;width:100%}
.customer-surface input[type=file]::file-selector-button{border:0;border-radius:5px;background:#e8f1f7;padding:8px;color:#173c58;margin-right:10px}
.customer-surface textarea{width:100%;min-height:110px}
.customer-surface button,.customer-surface a.button{font:600 14px/1.5 'Segoe UI',Arial,sans-serif;min-height:44px;padding:11px 20px;border:0;border-radius:8px;background:#153d5c;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.customer-surface button:hover,.customer-surface a.button:hover{background:#0d2a43}
.customer-surface button:disabled{background:#d3dfe8;color:#4c6073;cursor:not-allowed}
.customer-surface .notice{max-width:none;margin:22px 0;padding:20px 24px;font-size:14px;line-height:1.75;border-radius:10px;background:#fff8e9;border:1px solid #eed19a;border-left:4px solid #bc8629}
.customer-surface .notice.error{background:#fff1f1;border-color:#e6b2b2;border-left-color:#b52f40;color:#852532}
.customer-surface table{font-size:14px}
.customer-surface th{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#52677d;background:#f0f5f9}
.customer-surface th,.customer-surface td{padding:16px 12px}
.customer-surface .table-scroll{overflow-x:auto}
.customer-surface .qty-box{min-width:84px}
.customer-surface .cart-total{background:#f0f6fa;border-radius:12px;padding:20px 24px;max-width:460px}
.customer-surface .cart-total h2{font-size:21px;border-top:1px solid #d4e2ec;padding-top:15px;flex-wrap:wrap}
.customer-surface .cart-total p{font-size:14px}
.portal-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:28px 0;gap:12px}
.portal-steps li{display:flex;align-items:center;gap:10px;padding:14px;border:1px solid #d6e3ec;border-radius:10px;color:#607487;font-size:13px;background:#fff}
.portal-steps li[aria-current]{background:#e8f6fa;border-color:#2d879c;color:#133e50}
.portal-steps span{font-weight:800;color:#187a91;flex-shrink:0}
.portal-quicklinks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}
.portal-quicklinks a{display:block;padding:22px;background:#fff;border:1px solid #d6e3ec;border-radius:12px;box-shadow:0 3px 12px #15344d05}
.portal-quicklinks a:hover{border-color:#23869c}
.portal-quicklinks strong{display:block;color:#153d5c;font-size:18px}
.portal-quicklinks small{display:block;margin-top:8px;color:#52677d;font-size:14px;line-height:1.65}
.customer-surface .royalty-summary{background:#12334e;color:white;border-color:#12334e;border-top:5px solid #68cfe0}
.customer-surface .royalty-summary h2,.customer-surface .royalty-summary>p{color:white}
.customer-surface .b2b-stats strong{font-size:26px;overflow-wrap:anywhere}
.customer-surface .b2b-stats small{font-size:13px}
.customer-surface .target-card{background:#eaf6fa;border-color:#b8dbe6}
.customer-surface .portal-footer{background:#fff;border-top:1px solid #d7e2eb;color:#52677d;padding:24px max(24px,calc((100vw - 1128px)/2));display:flex;gap:18px;flex-wrap:wrap;align-items:center;font-size:13px}
.portal-footer span{margin-right:auto}
.portal-skip{position:absolute;left:20px;top:-90px;padding:12px;background:#fff;color:#16334c;z-index:60}
.portal-skip:focus{top:8px}
.customer-surface :focus-visible{outline:3px solid #16829b;outline-offset:3px}
/* Public catalogue: retain brand/media, prioritize products after a selection. */
.storefront-surface{font-family:'Segoe UI',Arial,sans-serif}
.storefront-surface.catalog-view>.hero{min-height:0;padding-bottom:8px;background:#112a42}
.storefront-surface.catalog-view .hero-copy,.storefront-surface.catalog-view .hero-controls,.storefront-surface.catalog-view #heroMedia,.storefront-surface.catalog-view .shade{display:none}
.storefront-surface .catalog h2,.storefront-surface .product-detail h1{font-family:'Segoe UI',Arial,sans-serif;font-weight:700;letter-spacing:-1px}
.storefront-surface .category-row a{font-size:14px;padding:10px 17px}
.storefront-surface .catalog,.storefront-surface .product-detail{padding-top:44px;padding-bottom:48px}
.storefront-surface .product-card{background:#fff;border:1px solid #dbe5ed;border-radius:16px;overflow:hidden}
.storefront-surface .product-card>a{display:block;padding:16px;height:100%}
.storefront-surface .product-card figure{border:0;border-radius:10px}
.storefront-surface .product-card>a>span{font-size:12px}
.storefront-surface .product-card p,.storefront-surface .product-card>a>div,.storefront-surface .spec p,.storefront-surface .product-actions span{font-size:14px}
.storefront-surface .product-card>a>div{flex-wrap:wrap;border-top:1px solid #e0e8ef;padding-top:12px}
.storefront-surface .category-row{flex-wrap:wrap}
.storefront-surface .catalog-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:22px clamp(20px,4vw,70px);border-bottom:1px solid #dce5ed;background:#f0f7fb}
.storefront-surface .catalog-tools a{font-size:14px;padding:11px 16px;border:1px solid #c3d6e4;border-radius:8px;background:#fff;color:#173d59}
.storefront-surface .catalog-tools a:first-child{background:#173d59;color:#fff;border-color:#173d59}
.storefront-surface .catalog-tools span{font-size:13px;color:#52677d}
.storefront-surface .actions>a[aria-label="Open shopping cart"]{display:flex!important}
@media(max-width:760px){.portal-top{padding:16px;gap:12px;flex-wrap:wrap}.portal-brand{font-size:17px}.portal-context{display:none}.portal-tabs{padding:0 16px;gap:0 16px}.portal-tabs a{font-size:13px}.portal-actions{gap:8px;font-size:13px}.portal-cart{padding:10px 12px}.portal-switch summary{padding:10px}.customer-surface>main.enquiry-shell,.customer-surface>main.admin-shell{padding:26px 16px 46px}.portal-steps{grid-template-columns:1fr;gap:8px}.portal-steps li{padding:10px 14px}.portal-quicklinks{grid-template-columns:1fr}.portal-quicklinks a{padding:18px}.customer-surface .admin-card{padding:20px}.customer-surface .field-grid{grid-template-columns:minmax(0,1fr)}.customer-surface .cart-total{max-width:none;padding:18px}.customer-surface .portal-footer{padding:24px 16px}.storefront-surface .product-detail>div{gap:24px}.storefront-surface .catalog-tools span{flex-basis:100%}}
@media(max-width:420px){.portal-brand span{font-size:14px}.portal-brand img{width:38px;height:38px}.portal-top{gap:8px}.portal-switch summary{font-size:12px}.portal-actions{margin-left:auto}.portal-cart{font-size:12px;padding:10px}.portal-brand{gap:7px}.customer-surface .admin-card{padding:17px}}
@media print{.portal-header,.portal-footer,.portal-skip,.portal-steps,.portal-quicklinks{display:none!important}.customer-surface>main.enquiry-shell,.customer-surface>main.admin-shell{padding:0;max-width:none}.customer-surface .royalty-summary{background:#fff;color:#000}.customer-surface .royalty-summary h2,.customer-surface .royalty-summary>p{color:#000}}
