:root {
    --ez-navy: #071729;
    --ez-blue: #0f335f;
    --ez-gold: #d8a94a;
    --ez-soft: #f4f7fb;
    --ez-text: #162033;
    --ez-muted: #6b7280;
    --ez-line: #e7edf5;
}
* { box-sizing: border-box; }
body { background: var(--ez-soft); color: var(--ez-text); font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.ez-navbar { background: rgba(7,23,41,.96); backdrop-filter: blur(10px); border-bottom: 1px solid rgba(255,255,255,.08); }
.ez-navbar .navbar-brand, .ez-navbar .nav-link { color: #fff; }
.ez-navbar .nav-link:hover { color: var(--ez-gold); }
.navbar-toggler { background: #fff; }
.brand-mark { color: var(--ez-gold); }
.btn-gold { background: var(--ez-gold); border-color: var(--ez-gold); color: #101827; font-weight: 700; }
.btn-gold:hover { background: #c99838; border-color: #c99838; }
.btn-navy { background: var(--ez-navy); border-color: var(--ez-navy); color: #fff; }
.btn-navy:hover { background: var(--ez-blue); border-color: var(--ez-blue); color: #fff; }
.hero { background: radial-gradient(circle at 20% 10%, rgba(216,169,74,.22), transparent 24%), linear-gradient(135deg, #071729 0%, #0f335f 100%); color: #fff; border-radius: 0 0 32px 32px; }
.hero-card { background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.15); border-radius: 26px; backdrop-filter: blur(12px); }
.ez-card { border: 0; border-radius: 22px; box-shadow: 0 16px 40px rgba(20,36,64,.08); }
.metric { background: #fff; border-radius: 20px; border: 1px solid var(--ez-line); padding: 20px; box-shadow: 0 12px 32px rgba(20,36,64,.06); }
.metric .label { color: var(--ez-muted); font-size: .86rem; }
.metric .value { font-size: 1.5rem; font-weight: 800; }
.side-link { display: block; padding: 11px 14px; border-radius: 14px; color: var(--ez-text); text-decoration: none; font-weight: 650; margin-bottom: 4px; }
.side-link:hover, .side-link.active { background: #eef4ff; color: #0f335f; }
.status-pill { display: inline-flex; align-items: center; gap: 6px; border-radius: 999px; padding: 6px 10px; font-size: .78rem; font-weight: 800; background: #eef4ff; color: #0f335f; }
.table > :not(caption) > * > * { padding: 1rem .8rem; }
.form-control, .form-select { border-radius: 13px; border-color: #dbe5f0; padding: .72rem .9rem; }
.form-control:focus, .form-select:focus { border-color: var(--ez-gold); box-shadow: 0 0 0 .2rem rgba(216,169,74,.16); }
.ez-footer { background: var(--ez-navy); color: #fff; }
.catalog-card img { height: 190px; object-fit: cover; border-radius: 18px 18px 0 0; background: #e9eef6; }
.timeline { position: relative; padding-left: 24px; }
.timeline:before { content: ''; position: absolute; top: 6px; bottom: 6px; left: 7px; width: 2px; background: #dbe5f0; }
.timeline-item { position: relative; padding-bottom: 18px; }
.timeline-item:before { content: ''; position: absolute; left: -22px; top: 4px; width: 12px; height: 12px; border-radius: 50%; background: var(--ez-gold); box-shadow: 0 0 0 4px #fff; }
.badge-soft { background: #f8f0dd; color: #8a641c; }
@media (max-width: 767px) {
    .hero { border-radius: 0 0 22px 22px; }
    .display-4 { font-size: 2.15rem; }
}


.status-pill.status-pending { background: #fff7ed; color: #9a3412; }
.status-pill.status-quoted { background: #ecfeff; color: #155e75; }
.status-pill.status-paid { background: #ecfdf5; color: #166534; }
.status-pill.status-shipping { background: #eef2ff; color: #3730a3; }
.status-pill.status-arrived { background: #fef9c3; color: #854d0e; }
.status-pill.status-delivered { background: #f0fdf4; color: #14532d; }
.status-pill.status-issue { background: #fef2f2; color: #991b1b; }
.payment-box { background: linear-gradient(135deg, #071729, #0f335f); color: #fff; border-radius: 22px; padding: 22px; box-shadow: 0 18px 44px rgba(7,23,41,.18); }
.payment-box .muted { color: rgba(255,255,255,.68); }
.payment-box .amount { font-size: 2rem; font-weight: 850; letter-spacing: -.03em; }
.secure-note { border: 1px solid var(--ez-line); background: #fff; border-radius: 18px; padding: 14px 16px; }

/* v0.4 catalog premium */
.catalog-hero { background: radial-gradient(circle at 15% 20%, rgba(216,169,74,.28), transparent 26%), linear-gradient(135deg, #071729 0%, #0f335f 100%); color:#fff; }
.eyebrow { display:inline-flex; border:1px solid rgba(255,255,255,.18); color:#f9d98c; border-radius:999px; padding:7px 12px; font-size:.78rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; margin-bottom:12px; }
.product-image-link { position:relative; display:block; background:#edf2f7; overflow:hidden; }
.product-card-img { width:100%; height:230px; object-fit:cover; display:block; transition:transform .25s ease; }
.catalog-card:hover .product-card-img { transform:scale(1.035); }
.product-card-placeholder, .product-main-placeholder, .placeholder-premium { min-height:230px; display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,#071729,#0f335f); color:#d8a94a; font-size:2.2rem; font-weight:900; letter-spacing:-.05em; }
.product-ribbon { position:absolute; top:12px; left:12px; background:var(--ez-gold); color:#111827; border-radius:999px; padding:6px 10px; font-size:.75rem; font-weight:850; box-shadow:0 10px 28px rgba(0,0,0,.16); }
.product-main-card { min-height:420px; background:#eef4ff; }
.product-main-img { width:100%; height:520px; object-fit:cover; display:block; }
.product-thumb { border-radius:16px; overflow:hidden; background:#fff; border:1px solid var(--ez-line); height:110px; }
.product-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.cart-thumb, .admin-thumb { width:58px; height:58px; border-radius:16px; background:linear-gradient(135deg,#071729,#0f335f); display:flex; align-items:center; justify-content:center; overflow:hidden; color:#d8a94a; font-weight:900; flex:0 0 58px; }
.cart-thumb img, .admin-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.admin-thumb { width:50px; height:50px; flex-basis:50px; border-radius:14px; }
.product-preview-box { border-radius:22px; overflow:hidden; background:#eef4ff; border:1px solid var(--ez-line); min-height:260px; display:flex; align-items:center; justify-content:center; }
.product-preview-box img { width:100%; height:310px; object-fit:cover; display:block; }
.gallery-admin-card { border:1px solid var(--ez-line); background:#fff; border-radius:18px; padding:10px; }
.gallery-admin-card img { width:100%; height:130px; object-fit:cover; border-radius:14px; display:block; }
.success-icon { width:72px; height:72px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; background:#ecfdf5; color:#166534; font-size:2.5rem; font-weight:900; }
.cart-table td, .cart-table th { vertical-align:middle; }
@media (max-width: 767px) {
    .product-card-img { height:210px; }
    .product-main-img { height:360px; }
    .product-main-card { min-height:320px; }
}
