*{box-sizing:border-box}
:root{--purple:#5b2194;--purple2:#21083d;--orange:#ff7900;--cyan:#05c7f2;--dark:#0a0615;--ink:#0d0820;--muted:#766887;--panel:#ffffff;--line:#ded1ef}
body{margin:0;font-family:Inter,Arial,sans-serif;background:radial-gradient(circle at top left,#1b0633 0,#09050f 270px,#f7f3fb 271px);color:var(--ink)}
.hero{color:white;padding:2rem;display:flex;justify-content:space-between;gap:1rem;align-items:center;border-bottom:5px solid var(--orange);position:relative;overflow:hidden}
.hero-v7{min-height:330px;background:linear-gradient(90deg,rgba(10,6,21,.86),rgba(32,8,61,.74)),url('/assets/realfit-orderhub-v7-hero.png') center/cover no-repeat;box-shadow:0 12px 30px #0004}
.hero-v7:after{content:"";position:absolute;inset:auto 0 0 0;height:5px;background:linear-gradient(90deg,var(--purple),var(--orange),var(--cyan));box-shadow:0 0 18px var(--cyan)}
.hero-copy{position:relative;z-index:1;max-width:760px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.8rem}.hero h1{font-size:clamp(2.4rem,7vw,5.2rem);margin:.2rem 0;text-transform:uppercase;letter-spacing:-.05em;text-shadow:0 0 20px #000}.hero p{font-size:1.1rem;max-width:760px}.hero-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:1rem}.hero-cta{border:1px solid #ffffff55;background:linear-gradient(135deg,var(--orange),#ff9d2e);color:white;border-radius:999px;padding:.85rem 1.2rem;font-weight:900;box-shadow:0 0 18px #ff790066}.hero-cta.alt{background:rgba(255,255,255,.08);backdrop-filter:blur(6px)}
.cart-pill{position:relative;z-index:2;border:0;background:var(--orange);color:white;border-radius:999px;padding:.9rem 1.2rem;font-weight:900;box-shadow:0 0 24px #ff790099}.cart-pill span{background:white;color:var(--purple);border-radius:50%;padding:.2rem .55rem;margin-left:.35rem}
.tabs{position:sticky;top:0;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);padding:1rem;display:flex;gap:.5rem;z-index:5;box-shadow:0 2px 12px #00000010}.tab{border:1px solid var(--line);background:white;border-radius:999px;padding:.7rem 1rem;font-weight:800}.tab.active{background:var(--purple);color:white;box-shadow:0 0 0 2px #ffffff,0 0 16px #5b219466}
main{max-width:1240px;margin:0 auto;padding:1.2rem}.view{display:none}.view.active{display:block}.landing-image-panel{border-radius:26px;overflow:hidden;background:#09050f;border:1px solid #5b219455;box-shadow:0 18px 45px #0005;margin:0 0 1rem}.landing-image-panel img{display:block;width:100%;height:auto}.feature-row{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin:1rem 0}.feature-card{background:linear-gradient(180deg,#160828,#0c0714);color:white;border:1px solid #6d42a555;border-radius:18px;padding:1rem;box-shadow:0 8px 20px #0002}.feature-card span{font-size:1.6rem;display:block;color:var(--cyan)}.feature-card strong{display:block;color:white;margin:.3rem 0}.feature-card p{margin:.2rem 0 0;color:#cfc5df;font-size:.9rem}
.retailer-panel,.panel{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:1rem;margin-bottom:1rem;box-shadow:0 12px 28px #1608280f}.retailer-panel{display:flex;justify-content:space-between;gap:1rem;align-items:center}.retailer-access{display:flex;gap:.5rem;flex-wrap:wrap}.retailer-access input,.toolbar input,.toolbar select,input,textarea,select.product-option{border:1px solid #d8cbea;border-radius:14px;padding:.9rem;font:inherit;background:white}.retailer-access button,.admin-head button,.saved-actions button{border:0;border-radius:12px;padding:.9rem 1rem;font-weight:900;background:var(--purple);color:white}.retailer-access button:last-child,.saved-actions button{background:#160828}.saved-actions button:nth-child(2){background:var(--orange)}.saved-actions button:nth-child(3){background:#6c607d}.toolbar{display:grid;grid-template-columns:1fr 260px;gap:.75rem;margin:1rem 0}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:1rem}.card{background:white;border:1px solid var(--line);border-radius:20px;padding:1rem;display:flex;flex-direction:column;transition:.18s ease;box-shadow:0 8px 22px #15071f10}.card:hover{transform:translateY(-3px);box-shadow:0 16px 36px #15071f22;border-color:#c8a5f2}.card h3{margin:.7rem 0 .2rem}.badge{display:inline-block;background:#f1e5ff;color:var(--purple);border-radius:999px;padding:.25rem .55rem;font-size:.75rem;font-weight:900;margin:.1rem}.restricted{background:#fff1e3;color:#aa4b00}.wholesale-badge{background:#e8fbef;color:#087638}.muted{color:var(--muted)}.price{font-size:1.45rem;color:var(--purple);font-weight:950;margin:auto 0 1rem}.add,.primary{border:0;background:linear-gradient(135deg,var(--orange),#ff941f);color:white;border-radius:999px;padding:.9rem 1rem;font-weight:950;width:100%;box-shadow:0 8px 18px #ff790033}.product-option-label{font-size:.9rem;color:var(--purple);margin-top:auto}.product-option{width:100%;margin:.35rem 0 .8rem;background:#fbf8ff!important;font-weight:700}.checkout-layout{display:grid;grid-template-columns:1fr 1.55fr;gap:1rem}.cart-item{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid #eee;padding:.75rem 0}.cart-option{color:var(--purple);font-size:.92rem;margin:.15rem 0}.qty{white-space:nowrap}.qty button{width:32px;height:32px;border:1px solid var(--line);border-radius:50%;background:white}.subtotal{display:flex;justify-content:space-between;font-size:1.2rem}.notice{border-left:4px solid var(--orange);background:#fbf6ff;border-radius:10px;padding:.8rem;color:var(--muted)}.two{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}label{display:block;font-weight:800;margin:.75rem 0}label input,label textarea{width:100%;margin-top:.35rem}textarea{min-height:90px}.checkbox{display:flex;gap:.5rem;align-items:flex-start;font-weight:500}.checkbox input{width:auto}.hidden{display:none}.admin-head{display:flex;justify-content:space-between}.order-card{border:1px solid var(--line);border-radius:16px;padding:1rem;margin:.8rem 0;background:#fff}.admin-pin{max-width:280px}.form-heading-row{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.saved-actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.saved-status{font-size:.9rem;color:var(--muted);margin:.4rem 0}.saved-status.active{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0;border-radius:12px;padding:.65rem}.optional{font-weight:600;color:var(--muted);font-size:.9rem}.add.added{background:#16a34a;color:white;transform:scale(1.02);transition:all .15s ease}.cart-bump{animation:cartBump .45s ease}@keyframes cartBump{0%{transform:scale(1)}40%{transform:scale(1.12)}100%{transform:scale(1)}}.primary.submitting{background:#6c607d;cursor:wait;opacity:.85}.primary.success{background:#16a34a;color:#fff;transform:scale(1.01);transition:all .15s ease}.success-panel{border-color:#86efac;background:#f0fdf4}.pending{border-color:#fed7aa;background:#fff7ed}.error-panel{border-color:#fecaca;background:#fef2f2}.email-status.ok{color:#166534}.email-status.warn{color:#9a3412;background:#fff7ed;border-left:4px solid #f97316;padding:.6rem;border-radius:.5rem}footer{text-align:center;color:#6c607d;padding:2rem}
@media(max-width:900px){.feature-row{grid-template-columns:1fr 1fr}.checkout-layout,.toolbar,.two{grid-template-columns:1fr}.form-heading-row{display:block}.saved-actions{justify-content:flex-start}.hero-v7{min-height:280px;background-position:center}.retailer-panel{display:block}}
@media(max-width:560px){.feature-row{grid-template-columns:1fr}.hero{align-items:flex-start;flex-direction:column;padding:1.4rem}.hero h1{font-size:2.4rem}.hero-v7{min-height:240px}.tabs{overflow:auto}.cart-pill{align-self:flex-start}}

/* v8 wholesale section */
.wholesale-section {
  background: radial-gradient(circle at top left, rgba(255,122,0,.13), transparent 38%), radial-gradient(circle at bottom right, rgba(0,216,255,.12), transparent 40%), #fff;
}
.wholesale-section h2 { margin-top: 0; font-size: clamp(2rem, 4vw, 3.4rem); }
.wholesale-access-large { display: grid; grid-template-columns: 1fr auto auto; gap: 12px; align-items: end; margin: 22px 0; }
.wholesale-access-large label { display: grid; gap: 8px; font-weight: 800; }
.wholesale-access-large input { min-width: 260px; }
.wholesale-info-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 20px; }
.wholesale-info-grid > div { border: 1px solid #e4d6f7; background: #fbf7ff; border-radius: 18px; padding: 16px; }
.wholesale-info-grid strong { color: #3d176d; }
.code-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 10px; margin: 14px 0 22px; }
.code-card { border: 1px solid #d8c8ee; border-radius: 14px; padding: 12px; background: #fbf8ff; display: grid; gap: 4px; }
.code-card strong { color: #511b88; letter-spacing: .03em; }
.code-card span { font-weight: 700; }
.code-card small { color: #6d5d7c; }
.code-card em { color: #0d7a35; font-style: normal; font-weight: 800; }
.code-card.inactive { opacity: .55; }
.saved-status.warn { color: #a64b00; background: #fff4e5; border-color: #ffcf91; }
@media (max-width: 850px) { .wholesale-access-large, .wholesale-info-grid { grid-template-columns: 1fr; } }

/* v9 delivery rules */
.delivery-panel{margin:1rem 0;padding:1rem;border:1px solid #e6d7f8;border-radius:18px;background:linear-gradient(135deg,#fff9f2,#f8fbff)}
.delivery-panel h3{margin:.1rem 0 .35rem;color:var(--purple)}
.delivery-option{display:grid;grid-template-columns:auto 1fr auto;gap:.7rem;align-items:center;border:1px solid #e2d1f3;background:white;border-radius:16px;padding:.8rem;margin:.55rem 0;cursor:pointer;transition:.15s ease}
.delivery-option:hover,.delivery-option.selected{border-color:var(--orange);box-shadow:0 8px 18px #ff790022;transform:translateY(-1px)}
.delivery-option input{width:auto;margin:0}.delivery-option span{display:grid;gap:.15rem}.delivery-option small{color:var(--muted);font-weight:500}.delivery-option b{color:var(--purple);font-size:1.05rem}.delivery-totals{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid #eadff5;padding-top:.65rem;margin-top:.65rem}.delivery-totals.grand{font-size:1.15rem;color:var(--ink)}


/* v10 product more info modals */
.card-top{display:flex;justify-content:space-between;gap:.6rem;align-items:flex-start;min-height:34px}
.more-info{border:1px solid #d8cbea;background:linear-gradient(135deg,#fff,#fbf7ff);color:var(--purple);border-radius:999px;padding:.38rem .68rem;font-size:.76rem;font-weight:950;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;box-shadow:0 4px 12px #2a0b3f12}
.more-info:hover{border-color:var(--orange);color:#c25b00;box-shadow:0 6px 16px #ff79002b;transform:translateY(-1px)}
.modal-overlay{position:fixed;inset:0;background:rgba(8,4,18,.72);backdrop-filter:blur(8px);z-index:50;display:flex;align-items:center;justify-content:center;padding:1.2rem}
.modal-overlay.hidden{display:none}.modal-open{overflow:hidden}
.product-modal{width:min(520px,96vw);max-height:88vh;overflow:auto;background:radial-gradient(circle at top right,#f5faff,#fff 38%,#fbf7ff);border:1px solid #d7c1f0;border-radius:24px;padding:1.2rem;box-shadow:0 28px 70px #0009;position:relative}
.modal-close{position:absolute;right:14px;top:12px;width:34px;height:34px;border:0;border-radius:50%;background:#160828;color:white;font-size:1.35rem;line-height:1;font-weight:800}.modal-close:hover{background:var(--orange)}
.product-modal h2{margin:.6rem 2.2rem .1rem 0;font-size:1.45rem;color:#12051f}.product-modal h3{margin:1rem 0 .35rem;color:var(--purple);font-size:1rem}.modal-brand{color:var(--muted);margin:.25rem 0 1rem}.modal-badges{padding-right:2.5rem}.spec-grid{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin:.9rem 0}.spec-grid div{border:1px solid #eadff5;background:#fff;border-radius:14px;padding:.75rem;display:grid;gap:.3rem}.spec-grid strong{color:#3b1768;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.spec-grid span{font-weight:800;color:#0d0820}.info-list{margin:.4rem 0 .8rem;padding-left:1.2rem}.info-list li{margin:.32rem 0}.modal-warning{border-left:4px solid var(--orange);background:#fff7ed;border-radius:12px;padding:.75rem}.modal-handling{border-left:4px solid var(--cyan);background:#eefbff;border-radius:12px;padding:.75rem}
@media(max-width:560px){.card-top{display:block}.more-info{margin-top:.45rem}.spec-grid{grid-template-columns:1fr}.product-modal{padding:1rem}}

/* v11 retailer / wholesaler admin manager */
.admin-actions-row{display:flex;gap:.7rem;flex-wrap:wrap;margin:.75rem 0 1rem}.admin-actions-row button{border:0;border-radius:12px;padding:.8rem 1rem;font-weight:900;background:var(--purple);color:#fff}.admin-actions-row button:nth-child(2){background:var(--orange)}
.account-admin-layout{display:grid;grid-template-columns:minmax(320px,480px) 1fr;gap:1rem;align-items:start}.account-form-panel,.account-list-panel{border:1px solid #e1d2f4;background:#fff;border-radius:18px;padding:1rem}.account-form-panel h4,.account-list-panel h4{margin:.2rem 0 1rem;color:var(--purple)}
.custom-price-details{border:1px solid #eadff5;border-radius:14px;padding:.8rem;background:#fbf8ff;margin:.8rem 0}.custom-price-details summary{font-weight:900;color:var(--purple);cursor:pointer}.custom-price-row{display:grid;grid-template-columns:1fr 130px;gap:.7rem;align-items:center;border-bottom:1px solid #eadff5;padding:.55rem 0;margin:0}.custom-price-row span{display:grid;gap:.15rem}.custom-price-row small{font-weight:500;color:var(--muted)}.custom-price-row input{padding:.55rem;border-radius:10px}
.account-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.account-card{min-height:170px}.account-card-actions{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:.5rem}.account-card-actions button{border:0;border-radius:10px;padding:.55rem .7rem;background:#160828;color:white;font-weight:800}.account-card-actions button:nth-child(2){background:#6d5d7c}.account-card.inactive em{color:#8a1f11}.account-card.inactive .account-card-actions button:nth-child(2){background:#16a34a}
@media(max-width:1000px){.account-admin-layout{grid-template-columns:1fr}.custom-price-row{grid-template-columns:1fr}}


/* v12 Specials & Promotions */
.specials-section{margin:1.2rem auto 1.7rem;max-width:1220px;padding:1.15rem;border:1px solid #e6d3fb;border-radius:28px;background:radial-gradient(circle at 7% 5%,#fff6e8,transparent 30%),radial-gradient(circle at 96% 10%,#eefbff,transparent 31%),linear-gradient(145deg,#fff,#faf6ff);box-shadow:0 16px 38px #2e0b5010}.specials-heading{display:flex;justify-content:space-between;gap:1.5rem;align-items:flex-start;margin:.2rem .25rem 1rem}.specials-heading h2{margin:.15rem 0 .45rem;font-size:clamp(1.8rem,4vw,3.1rem);color:#1b0833}.specials-heading p{margin:.1rem 0;color:#645575;max-width:760px}.specials-delivery-note{max-width:290px;border:1px solid #ffc67b;border-radius:16px;padding:.75rem;background:#fffaf2;display:grid;gap:.3rem;color:#6d4717;font-size:.88rem}.specials-delivery-note strong{color:#bd5900}.specials-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;align-items:stretch}.special-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #dbc9f1;border-radius:22px;background:#fff;box-shadow:0 12px 28px #2d094214;transition:.18s ease}.special-card:hover{transform:translateY(-4px);border-color:#ffb05b;box-shadow:0 20px 36px #2d09422a}.special-image-wrap{aspect-ratio:3 / 4;overflow:hidden;background:#180829}.special-image-wrap img{width:100%;height:100%;object-fit:cover;display:block}.special-card-body{display:flex;flex-direction:column;flex:1;padding:.9rem}.special-card h3{font-size:1.05rem;line-height:1.2;margin:.45rem 0}.special-card .muted{font-size:.88rem;line-height:1.35}.special-badge{background:linear-gradient(135deg,#ff7a00,#ffb11f);color:#fff}.special-price{display:flex;justify-content:space-between;align-items:end;gap:.5rem;margin:auto 0 .75rem;padding-top:.6rem;border-top:1px solid #eee0f8}.special-price span{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:#725c85;font-weight:900}.special-price strong{font-size:1.4rem;color:var(--purple)}.special-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:.5rem;align-items:stretch}.special-actions .more-info{font-size:.7rem;display:flex;align-items:center;justify-content:center}.special-actions .add{padding:.75rem .55rem;font-size:.84rem}.special-card .product-option-label{margin:.4rem 0 .75rem}.special-card .product-option{font-size:.83rem}.product-modal .modal-promo-image{width:100%;max-height:280px;object-fit:cover;border-radius:16px;border:1px solid #e6d3fb;margin:.25rem 0 .85rem}
@media(max-width:1100px){.specials-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.specials-heading{display:block}.specials-delivery-note{max-width:none;margin-top:.8rem}}
@media(max-width:560px){.specials-section{margin:.7rem .55rem 1.1rem;padding:.8rem;border-radius:20px}.specials-grid{grid-template-columns:1fr}.special-image-wrap{aspect-ratio:4 / 5}.special-card h3{font-size:1.15rem}.special-actions{grid-template-columns:1fr 1.3fr}}

.address-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:4px 0 -4px}.address-heading strong{font-size:1rem}.address-heading span{font-size:.84rem;color:#744d92}@media(max-width:650px){.address-heading{display:block}.address-heading span{display:block;margin-top:3px}}


/* V14 Lite Retailer Portal */
.retailer-portal-section h2{font-size:44px;margin:8px 0 14px;color:#170024;}
.retailer-dashboard{margin-top:24px;}
.portal-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:18px 0;}
.portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0;}
.portal-card{background:#fff;border:1px solid #eadcf7;border-radius:18px;padding:18px;box-shadow:0 12px 30px rgba(75,27,120,.06);}
.portal-card h4{margin:0 0 14px;color:#4f168d;font-size:22px;}
.portal-card.full{margin-top:18px;}
.button-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.portal-list{display:grid;gap:12px;}
.mini-record{display:flex;justify-content:space-between;gap:14px;border:1px solid #eadcf7;border-radius:14px;padding:14px;background:#fbf8ff;}
.mini-record p{margin:5px 0;}
.mini-actions{display:flex;gap:8px;align-items:flex-start;}
.mini-actions button,.portal-head button,.button-row button{border:1px solid #d8c5ed;border-radius:10px;background:#fff;padding:9px 12px;font-weight:700;color:#4f168d;cursor:pointer;}
.status-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;}
.status-pill{display:inline-block;border-radius:999px;background:#efe5ff;color:#4f168d;border:1px solid #d8c5ed;padding:5px 9px;font-size:12px;font-weight:800;}
@media(max-width:900px){.portal-grid{grid-template-columns:1fr}.portal-head,.mini-record{flex-direction:column}.retailer-portal-section h2{font-size:34px}}
