:root{--ink:#201b1e;--muted:#72686d;--rose:#9e4d65;--blush:#fcf5f5;--cream:#fffdf9;--line:#eee5e4;--gold:#be8b45;--success:#31795a}*{box-sizing:border-box}body{font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--cream);min-height:100vh;display:flex;flex-direction:column}a{text-decoration:none}.storefront-nav{background:rgba(255,253,249,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.navbar-brand,.footer-brand{font-family:'Playfair Display',serif;font-size:1.75rem;font-weight:700;color:var(--ink)}.navbar-brand span,.footer-brand span{color:var(--rose)}.brand-logo-link{display:inline-flex!important;align-items:center;margin:0!important;padding:0!important;line-height:0}.brand-logo{display:block;width:10.8rem;height:auto;max-height:2.65rem}.brand-logo-footer{width:10.35rem;max-height:2.55rem}.storefront-nav .nav-link{color:var(--ink);font-size:.94rem;font-weight:600}.storefront-nav .nav-link:hover,.nav-account{color:var(--rose)}.navbar-toggler{border:0;font-size:1.5rem}.btn{border-radius:.6rem;font-weight:700;padding:.7rem 1rem}.btn-primary{background:var(--rose);border-color:var(--rose)}.btn-primary:hover{background:#813b51;border-color:#813b51}.btn-warning{background:var(--gold);border-color:var(--gold);color:#fff}.btn-warning:hover{background:#a87535;border-color:#a87535;color:#fff}.cart-badge{position:absolute;top:-7px;right:-7px;background:var(--rose);color:#fff;width:18px;height:18px;border-radius:50%;font-size:.67rem;line-height:18px}.hero{padding:6rem 0;background:linear-gradient(115deg,#fcf5f5 0%,#fcf5f5 52%,#f0dede 52%)}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-weight:700;color:var(--rose);font-size:.75rem}.display-title{font-family:'Playfair Display',serif;font-size:clamp(2.8rem,6vw,5.2rem);line-height:1.02}.hero-image{height:520px;width:100%;object-fit:cover;border-radius:1rem;box-shadow:18px 18px 0 #e9c8cd}.section-space{padding:5.5rem 0}.section-title{font-family:'Playfair Display',serif;font-size:clamp(2rem,4vw,3.2rem)}.product-card{border:0;background:#fff;border-radius:.85rem;overflow:hidden;height:100%;box-shadow:0 5px 24px rgba(61,39,46,.07);transition:transform .2s,box-shadow .2s}.product-card:hover{transform:translateY(-5px);box-shadow:0 14px 34px rgba(61,39,46,.13)}.product-card img{width:100%;height:330px;object-fit:cover}.product-card .card-body{padding:1.2rem}.product-meta{font-size:.78rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.price{font-size:1.15rem;font-weight:700}.feature-card{height:100%;padding:2rem;background:#fff;border:1px solid var(--line);border-radius:.85rem}.feature-card i{font-size:1.65rem;color:var(--rose)}.page-hero{background:var(--blush);padding:4rem 0}.page-hero p{color:var(--muted);max-width:620px}.storefront-footer{background:#201b1e;color:#f8f1f1}.storefront-footer a{display:block;color:#ddd0d4;margin:.4rem 0}.storefront-footer a:hover{color:#fff}.storefront-footer h6{color:#fff;font-weight:700}.storefront-footer hr{border-color:#4e4246;margin:2rem 0}.storefront-footer .footer-brand{color:#fff}.storefront-footer p{color:#ddd0d4}.form-control,.form-select{border-radius:.55rem;border-color:#ded5d4;padding:.7rem .85rem}.form-control:focus,.form-select:focus{border-color:var(--rose);box-shadow:0 0 0 .2rem rgba(158,77,101,.14)}.auth-card,.checkout-card{border:0;border-radius:1rem;box-shadow:0 10px 35px rgba(61,39,46,.1)}.auth-card .card-body,.checkout-card .card-body{padding:2rem}.empty-state{padding:4rem 1.5rem;text-align:center;background:#fff;border:1px dashed #d9c9cb;border-radius:1rem}.status-pill{font-size:.75rem;font-weight:700;border-radius:50rem;padding:.35rem .65rem}.status-pending{background:#fff3cd;color:#765a16}.status-completed,.status-paid{background:#dff3e8;color:#246342}.status-processing{background:#e2efff;color:#245a9c}@media(max-width:991px){.hero{padding:4rem 0}.hero-image{height:380px;margin-top:2rem}.storefront-nav .navbar-collapse{padding:1rem 0}.product-card img{height:280px}}@media(max-width:576px){.section-space{padding:3.5rem 0}.hero-image{height:320px}.auth-card .card-body,.checkout-card .card-body{padding:1.35rem}.brand-logo{width:9.4rem;max-height:2.3rem}}
/* Private MBMS portal design system */
.portal-shell{min-height:100vh;background:#f7f7f9;display:flex}.portal-sidebar{width:272px;background:#19171b;color:#fff;padding:1.5rem 1rem;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:1040}.portal-logo{font-family:'Playfair Display',serif;font-size:1.55rem;font-weight:700;color:#fff;padding:.3rem .65rem 1.5rem}.portal-logo span{color:#df8da5}.portal-logo small{font-family:'DM Sans',sans-serif;display:block;font-size:.62rem;letter-spacing:.13em;margin-top:.2rem;color:#9f969c}.portal-user{border-top:1px solid #39343a;border-bottom:1px solid #39343a;padding:1.1rem .55rem;display:flex;align-items:center;gap:.7rem}.portal-user strong,.portal-user small{display:block}.portal-user small{font-size:.75rem;color:#ada5aa}.portal-avatar{background:#9e4d65;width:35px;height:35px;border-radius:50%;display:grid;place-items:center;font-weight:700}.portal-nav{padding-top:1.35rem;overflow:auto}.portal-nav p{font-size:.65rem;letter-spacing:.12em;color:#887f85;font-weight:700;margin:1.2rem .7rem .5rem}.portal-nav a{color:#c9c2c6;display:flex;gap:.75rem;align-items:center;padding:.68rem .7rem;border-radius:.5rem;font-size:.9rem;font-weight:600;margin:.12rem 0}.portal-nav a:hover,.portal-nav a.active{background:#332a30;color:#fff}.portal-nav a.active{box-shadow:inset 3px 0 #df8da5}.portal-logout{margin-top:auto;color:#ecb2c1;padding:.8rem .7rem;font-weight:700}.portal-main{margin-left:272px;min-width:0;flex:1;display:flex;flex-direction:column}.portal-topbar{height:82px;background:#fff;border-bottom:1px solid #e9e5e8;padding:0 2rem;display:flex;align-items:center;gap:1rem}.portal-page-title{font-size:1.1rem;font-weight:700}.portal-menu{border:0;background:transparent;display:none;font-size:1.6rem}.portal-content{padding:2rem;flex:1}.portal-footer{border-top:1px solid #e9e5e8;background:#fff;color:#847b81;font-size:.78rem;padding:1rem 2rem;display:flex;justify-content:space-between;gap:1rem}.portal-hero{background:linear-gradient(105deg,#251d22,#523344);color:#fff;border-radius:1rem;padding:2rem}.portal-kpi{background:#fff;border:1px solid #eee8eb;border-radius:.85rem;padding:1.25rem;height:100%;box-shadow:0 4px 15px rgba(40,24,32,.04)}.portal-kpi .label{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#7f757a;font-weight:700}.portal-kpi .value{font-size:1.65rem;font-weight:700;margin-top:.45rem}.portal-card{background:#fff;border:1px solid #eee8eb;border-radius:.85rem;box-shadow:0 4px 15px rgba(40,24,32,.04)}.portal-card-header{padding:1.15rem 1.25rem;border-bottom:1px solid #eee8eb;display:flex;align-items:center;justify-content:space-between}.portal-table th{color:#7f757a;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;border-top:0}.portal-table td{padding:1rem .75rem}.portal-quick{display:flex;align-items:center;gap:.8rem;border:1px solid #eee8eb;border-radius:.7rem;padding:1rem;color:var(--ink);font-weight:700;background:#fff}.portal-quick:hover{border-color:#c993a3;color:#813b51}.portal-quick i{font-size:1.25rem;color:#9e4d65}@media(max-width:991px){.portal-sidebar{transform:translateX(-100%);transition:transform .2s}.portal-sidebar.is-open{transform:translateX(0)}.portal-main{margin-left:0}.portal-menu{display:block}.portal-content{padding:1.25rem}.portal-topbar{padding:0 1.25rem}.portal-footer{padding:1rem 1.25rem}}@media(max-width:575px){.portal-footer{display:block}.portal-footer span+span{display:block;margin-top:.25rem}.portal-hero{padding:1.4rem}.portal-content{padding:1rem}}

/* ========================= MBMS DARK MODE ========================= */ body.dark-mode { background: #111827; color: #f3f4f6; } body.dark-mode .portal-main, body.dark-mode .portal-content { background: #111827; } body.dark-mode .portal-topbar { background: #1f2937; border-bottom: 1px solid #374151; } body.dark-mode .portal-footer { background: #1f2937; border-top: 1px solid #374151; color: #d1d5db; } body.dark-mode .portal-card, body.dark-mode .portal-kpi { background: #1f2937; border-color: #374151; color: #f9fafb; } body.dark-mode .card, body.dark-mode .card-header, body.dark-mode .card-body { background: #1f2937 !important; color: #f9fafb !important; } body.dark-mode .table { color: #f9fafb; } body.dark-mode .table th, body.dark-mode .table td { border-color: #374151; } body.dark-mode .form-control, body.dark-mode .form-select { background: #111827; border-color: #374151; color: #f9fafb; } body.dark-mode .form-control:focus, body.dark-mode .form-select:focus { background: #111827; color: #ffffff; } body.dark-mode .text-dark { color: #ffffff !important; } body.dark-mode .text-muted { color: #9ca3af !important; } body.dark-mode .bg-white { background: #1f2937 !important; } body.dark-mode .shadow, body.dark-mode .shadow-sm { box-shadow: none !important; }
