:root {
  --bg: #eef2f7;
  --card: #ffffff;
  --text: #0f172a;
  --muted: #64748b;
  --primary: #2563eb;
  --primary-dark: #1d4ed8;
  --accent: #f59e0b;
  --success: #16a34a;
  --danger: #dc2626;
  --warning: #d97706;
  --border: #dbe3ef;
  --dark: #243041;
  --soft: #f8fafc;
  --shadow: 0 18px 50px rgba(15, 23, 42, .08);
}
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; font-family: Inter, Arial, sans-serif; background: var(--bg); color: var(--text); }
a { color: var(--primary); text-decoration: none; }
a:hover { color: var(--primary-dark); }
img { max-width: 100%; display: block; }
body { min-height: 100vh; }
.container{width:min(1180px,calc(100% - 24px));margin:0 auto;}
.topbar { background: #fff; border-bottom: 1px solid var(--border); position: sticky; top: 0; z-index: 10; }
.topbar-inner { display: flex; justify-content: space-between; align-items: center; gap: 16px; min-height: 60px; }
.logo { color: var(--accent); font-size: 1.35rem; font-weight: 700; letter-spacing: -.02em; }
.nav { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.nav a { padding: 7px 10px; border-radius: 8px; color: var(--text); }
.nav a:hover, .nav a.active { background: #eff6ff; color: var(--primary); }
.content-wrap { padding: 16px 0 24px; }
.hero { background: linear-gradient(135deg, #facc15 0%, #f59e0b 100%); border-radius: 28px; padding: 30px; box-shadow: var(--shadow); min-height: 240px; }
.hero h1, .hero h2 { margin-top: 0; }
.card { background: var(--card); border: 1px solid var(--border); border-radius: 12px; box-shadow: var(--shadow); padding: 14px; }
.sidebar-card { min-width: 280px; }
.grid { display: grid; gap: 20px; }
.grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.flex { display: flex; }
.between { justify-content: space-between; }
.center { align-items: center; }
.gap { gap: 14px; }
.stack { display: flex; flex-direction: column; gap: 10px; }
.search-grid { display: grid; grid-template-columns: 2fr 1.3fr 1fr auto; gap: 12px; background: #d6dae0; padding: 14px; border-radius: 0 0 16px 16px; }
input, select, textarea, button { font: inherit; }
input, select, textarea { width: 100%; background: #fff; border: 1px solid var(--border); border-radius: 8px; padding: 9px 10px; color: var(--text); }
textarea { min-height: 110px; resize: vertical; }
.btn { display: inline-flex; justify-content: center; align-items: center; gap: 8px; border: 0; border-radius: 9px; padding: 9px 14px; cursor: pointer; background: var(--primary); color: #fff; font-weight: 700; }
.btn:hover { background: var(--primary-dark); color: #fff; }
.btn.secondary { background: var(--dark); }
.btn.success { background: var(--success); }
.btn.warn { background: var(--warning); }
.btn.danger { background: var(--danger); }
.btn.light { background: #eff6ff; color: var(--primary); }
.muted { color: var(--muted); }
.section-title { font-size: 1.5rem; margin: 0; }
.stat { background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%); border: 1px solid var(--border); border-radius: 22px; padding: 20px; box-shadow: var(--shadow); }
.stat .value { font-size: 2.1rem; font-weight: 800; margin-top: 8px; }
.ads-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.ad-card { background: #fff; border: 1px solid var(--border); border-radius: 20px; overflow: hidden; box-shadow: var(--shadow); }
.ad-card .thumb { aspect-ratio: 16/10; overflow: hidden; background: #f1f5f9; }
.ad-card .thumb img { width: 100%; height: 100%; object-fit: cover; }
.ad-card .body { padding: 18px; }
.price { font-size: 1.35rem; font-weight: 800; }
.table-wrap {  background: #fff; border-radius: 12px; box-shadow: var(--shadow); border: 1px solid var(--border);  overflow-x:auto; overflow-y:visible;}
.table { width: 100%; border-collapse: collapse; min-width: 0; table-layout: auto; }
.table th, .table td { padding: 10px 10px; text-align: left; border-bottom: 1px solid var(--border); vertical-align: middle; }
.table th { background: #f8fafc; color: #325277; font-size: .95rem; }
.table .row-dark td { background: #253141; color: #fff; }
.table .thumb-mini { width: 44px; height: 44px; border-radius: 10px; object-fit: cover; background: #e2e8f0; }
.badge { display: inline-flex; align-items: center; justify-content: center; min-width: 84px; padding: 7px 12px; border-radius: 999px; font-size: .8rem; font-weight: 800; }
.badge.active, .badge.verified { background: #dcfce7; color: #166534; }
.badge.paused, .badge.expired, .badge.ended { background: #fef3c7; color: #92400e; }
.badge.pending { background: #dbeafe; color: #1d4ed8; }
.badge.blocked, .badge.rejected, .badge.unconfirmed, .badge.deleted { background: #fee2e2; color: #991b1b; }
.badge.approved { background: #dcfce7; color: #166534; }
.flash { padding: 14px 16px; border-radius: 14px; margin-bottom: 18px; }
.flash.success { background: #dcfce7; color: #166534; }
.flash.error { background: #fee2e2; color: #991b1b; }
.flash.info { background: #dbeafe; color: #1d4ed8; }
.footer { background: #fff; border-top: 1px solid var(--border); margin-top: 44px; }
.footer-inner { display: flex; justify-content: space-between; align-items: center; gap: 20px; min-height: 140px; }
.category-tree { list-style: none; margin: 0; padding: 0; }
.category-tree li { margin: 8px 0; }
.category-tree .level-2 { padding-left: 16px; }
.category-tree .level-3 { padding-left: 32px; }
.category-tree .level-4 { padding-left: 48px; }
.meta { font-size: .92rem; color: var(--muted); }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.form-grid .full { grid-column: 1 / -1; }
.action-links { display: flex; flex-wrap: wrap; gap: 8px; }
.action-links a { display: inline-flex; padding: 8px 12px; border-radius: 10px; background: #eff6ff; color: var(--primary); }
.action-links a.danger { background: #fee2e2; color: #991b1b; }
.action-links a.warn { background: #fef3c7; color: #92400e; }
.action-links a.success { background: #dcfce7; color: #166534; }
.empty-state { padding: 30px; border-radius: 20px; background: #fff; border: 1px dashed var(--border); text-align: center; }
.small { font-size: .88rem; }
.toolbar { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.kpi-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 18px; }

label{display:flex;gap:8px;align-items:center;} .table form{min-width:260px;} .badge.draft{background:#e2e8f0;color:#334155;} .badge.paid{background:#dcfce7;color:#166534;} .badge.failed,.badge.refunded{background:#fee2e2;color:#991b1b;} .badge.none{background:#e2e8f0;color:#334155;}

.premium-panel{background:linear-gradient(135deg,#0f172a 0%,#1e293b 50%,#111827 100%);color:#fff;border:1px solid rgba(255,255,255,.08)}
.premium-panel .muted{color:#cbd5e1}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.gallery-grid img{border-radius:16px;aspect-ratio:1/1;object-fit:cover;background:#e2e8f0}.thumb-strip{display:flex;gap:10px;flex-wrap:wrap}.thumb-strip img{width:88px;height:88px;object-fit:cover;border-radius:14px;border:2px solid var(--border)}.seo-chip{display:inline-flex;padding:6px 10px;border-radius:999px;background:#e2e8f0;color:#334155;font-size:.8rem;font-weight:700}.danger-zone{border:1px dashed #fecaca;background:#fff5f5;padding:16px;border-radius:18px}.sidebar-card .category-tree a{display:block;padding:8px 10px;border-radius:10px}.sidebar-card .category-tree a:hover{background:#eff6ff}.table td .action-links form{display:inline}.icon-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:12px;background:#111827;color:#fff}.kpi-grid .stat{position:relative;overflow:hidden}.kpi-grid .stat:before{content:"";position:absolute;inset:auto -20px -20px auto;width:80px;height:80px;border-radius:999px;background:rgba(37,99,235,.09)}

.notif-wrap{position:relative}.notif-bell{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border-radius:10px;background:#eff6ff;color:var(--primary)}.notif-count{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#dc2626;color:#fff;font-size:.75rem;align-items:center;justify-content:center}.notif-panel{display:none;position:absolute;right:0;top:42px;width:320px;max-height:420px;overflow:auto;background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);z-index:20}.notif-panel.open{display:block}.notif-list{display:flex;flex-direction:column}.notif-item{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border-bottom:1px solid var(--border);color:var(--text)}.notif-item.unread{background:rgba(37,99,235,.08)}.notif-item small{color:var(--muted)}.notif-row{display:flex;align-items:stretch;border-bottom:1px solid var(--border)}.notif-row .notif-item{flex:1;border-bottom:0}.notif-delete{border:0;background:transparent;color:var(--muted);padding:0 12px;cursor:pointer;font-size:20px}.notif-delete:hover{color:#dc2626}.notif-footer{padding:12px 14px;background:var(--card)}.notif-footer a{color:var(--primary);font-weight:600}.notif-page-list{display:flex;flex-direction:column;gap:12px}.notif-page-item{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:14px 16px;border:1px solid var(--border);border-radius:16px;background:#fff}.notif-page-item.unread{background:rgba(37,99,235,.08)}.notif-page-main{display:flex;flex-direction:column;gap:6px}.notif-delete-form{flex-shrink:0}

.customer-layout{display:grid;grid-template-columns:280px 1fr;gap:24px;align-items:start}.customer-sidebar{position:sticky;top:18px}.customer-menu-dropdown{background:#fff;border:1px solid #d9e0e7;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px rgba(15,23,42,.06)}.customer-menu-trigger{list-style:none;cursor:pointer;font-weight:800;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#10243e}.customer-menu-trigger::-webkit-details-marker{display:none}.customer-menu-trigger::after{content:'▾';font-size:14px;transition:transform .2s ease}.customer-menu-dropdown[open] .customer-menu-trigger::after{transform:rotate(180deg)}.customer-menu-dropdown-panel{padding:0 16px 16px}.customer-menu-section{border-top:1px solid #eef2f6;padding-top:12px;margin-top:12px}.customer-menu-section:first-child{margin-top:0}.customer-menu-section-title{font-weight:700;color:#4b5b70;margin-bottom:10px}.customer-submenu{display:flex;flex-direction:column;gap:8px}.customer-submenu a{padding:10px 12px;border-radius:10px;text-decoration:none;color:#234}.customer-submenu a.active,.customer-submenu a:hover{background:#1976d2;color:#fff}.customer-content .section-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.folder-chip{display:inline-block;padding:4px 10px;border-radius:999px;background:#eef3f8;margin-right:6px;font-size:12px}.hero-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.hero-gallery .ad-card .thumb img{height:150px;object-fit:cover}.toolbar-inline{display:flex;gap:8px;align-items:center;flex-wrap:wrap}@media (max-width: 900px){.customer-layout{grid-template-columns:1fr}.customer-sidebar{position:static}}

.footer-dropdowns{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:12px}
.footer-dropdown-form{display:flex;align-items:center;gap:8px}
.footer-dropdown-form label{font-size:13px;opacity:.8}
.footer-dropdown-form select{padding:8px 12px;border:1px solid #cbd5e1;border-radius:12px;background:#fff}

/* V28 marketplace UI */
.site-header{backdrop-filter:saturate(180%) blur(10px);background:rgba(255,255,255,.92)}
.site-nav{gap:12px}
.nav-cta{padding:10px 16px}
.user-menu-dropdown{position:relative}
.user-menu-trigger{display:flex;align-items:center;gap:10px;border:1px solid var(--border);background:#fff;border-radius:14px;padding:9px 14px;cursor:pointer}
.user-menu-avatar{width:28px;height:28px;border-radius:999px;background:var(--primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:800}
.user-menu-panel{position:absolute;right:0;top:calc(100% + 12px);min-width:240px;background:#fff;border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);padding:10px;display:none;z-index:30}
.user-menu-dropdown:hover .user-menu-panel,.user-menu-dropdown:focus-within .user-menu-panel{display:flex;flex-direction:column}
.user-menu-panel a{padding:12px 14px;border-radius:12px}
.user-menu-panel a:hover{background:#eff6ff}

.marketplace-search-shell{margin-top:6px}
.improved-search-grid{background:#e2e8f0;border-radius:20px;padding:14px}
.marketplace-layout{grid-template-columns:300px 1fr;align-items:start}
.marketplace-filter-card{position:sticky;top:100px}
.marketplace-filter-card h3{margin:0 0 12px}
.marketplace-category-links{display:flex;flex-direction:column;gap:10px;padding-top:12px;border-top:1px solid var(--border)}
.marketplace-category-links a{color:var(--muted)}
.improved-hero-banner{background:linear-gradient(135deg,#10203f 0%,#1c2f57 100%);color:#fff}
.improved-hero-banner .muted{color:#d7deea}
.marketplace-results-head{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;flex-wrap:wrap}
.breadcrumbs{font-size:.92rem;color:var(--muted);margin-bottom:8px}
.results-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.results-actions form{margin:0}
.results-actions select{min-width:220px}
.results-list{display:flex;flex-direction:column;gap:16px}
.result-card{display:grid;grid-template-columns:220px 1fr;gap:18px;background:#fff;border:1px solid var(--border);border-radius:22px;padding:16px;box-shadow:var(--shadow)}
.result-thumb{display:block;border-radius:16px;overflow:hidden;background:#f1f5f9}
.result-thumb img{width:100%;height:100%;min-height:168px;object-fit:cover}
.result-content{display:flex;flex-direction:column;gap:12px}
.result-content h3{margin:0;font-size:1.35rem}
.result-content h3 a{color:var(--text)}
.result-meta-top{display:flex;justify-content:space-between;gap:14px;align-items:center}
.result-footer{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-top:auto}

.marketplace-form-wrap{width:min(1180px,calc(100% - 24px));max-width:none;margin:0 auto}
.marketplace-form-card{padding:16px}
.marketplace-form .form-section{border:1px solid var(--border);border-radius:12px;padding:14px;background:#fff}
.form-section-head{margin-bottom:10px}
.form-section-head h2{margin:0 0 4px;font-size:1.05rem}
.form-section-head p{margin:0;color:var(--muted)}
.form-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.form-grid-2 .full{grid-column:1/-1}
.upload-box{background:#f8fafc;border:1px dashed #b8c4d6;border-radius:10px;padding:12px}
.checkbox-card{display:flex;flex-direction:column;gap:12px;background:#f8fafc;border:1px solid var(--border);border-radius:16px;padding:14px}
.improved-gallery-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:14px}
.gallery-thumb{border-radius:10px;overflow:hidden;background:#f1f5f9}
.gallery-thumb img{width:100%;height:120px;object-fit:cover}
.form-actions.bar{justify-content:flex-end}

@media (max-width: 980px){
  .marketplace-layout{grid-template-columns:1fr}
  .marketplace-filter-card{position:static}
  .result-card{grid-template-columns:1fr}
  .form-grid-2{grid-template-columns:1fr}
}

/* V28.3 layout tweaks */
.no-customer-sidebar .customer-content{grid-column:1/-1;width:min(1080px,100%);margin:0 auto}
.field-stack label,.marketplace-filter-card label,.form-grid label,.form-section label{display:block;font-weight:700;margin-bottom:5px;color:var(--text)}
.small-label{font-size:.92rem}
.renewal-card{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}
.renewal-toggle{display:flex;align-items:center;gap:10px}
.home-categories-only{padding:28px}
.home-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.home-category-card{display:flex;flex-direction:column;gap:8px;padding:20px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);box-shadow:var(--shadow);transition:transform .15s ease, box-shadow .15s ease}
.home-category-card:hover{transform:translateY(-2px);box-shadow:0 22px 55px rgba(15,23,42,.12)}
.home-category-title{font-size:1.08rem;font-weight:800;color:var(--text)}
@media (max-width: 980px){
  .renewal-card{grid-template-columns:1fr}
  .home-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 640px){
  .home-category-grid{grid-template-columns:1fr}
}

/* V28.4 category page */
.category-lockbox{padding:13px 14px;border:1px solid var(--border);border-radius:14px;background:#f8fafc;font-weight:700}
.marketplace-category-links a.active{color:var(--primary);font-weight:800}

/* V28.5 favorites pages */
.large-empty{min-height:420px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:42px}
.large-empty h3{font-size:2rem;margin:0 0 12px}
.large-empty p{font-size:1.08rem;color:var(--muted)}
.users-follow-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:2px solid #d7e3c3}
.users-follow-tab{padding:14px 18px;text-align:center;font-weight:700;color:#6b7d3d;background:#fff}
.users-follow-tab.active{border-bottom:3px solid #7ca23a}
.simple-result-card{grid-template-columns:1fr}

/* V28.6 search alerts and category filter layout */
.category-links-top{padding-bottom:6px}
.filter-divider{height:1px;background:var(--border);margin:8px 0 12px}
.site-nav .user-menu-trigger{color:var(--text)}

/* V28.7 ads and menu restore */
.choice-pills{display:flex;gap:12px;flex-wrap:wrap}
.choice-pill{display:flex;align-items:center;gap:8px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:#fff}
.category-select-box{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:#f8fafc}
.selected-category-label{font-weight:700}
.category-picker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.category-picker-item{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border:1px solid var(--border);border-radius:16px;background:#fff}
@media (max-width: 760px){.category-picker-grid{grid-template-columns:1fr}.category-select-box{flex-direction:column;align-items:stretch}}

/* V28.7D homepage layout + safe state filter */
.homepage-market-layout{grid-template-columns:280px 1fr;align-items:start}
.homepage-category-sidebar{position:sticky;top:100px}
.homepage-category-links{display:flex;flex-direction:column;gap:12px}
.homepage-category-links a{padding:4px 0;color:var(--muted)}
@media (max-width: 980px){
  .homepage-market-layout{grid-template-columns:1fr}
  .homepage-category-sidebar{position:static}
}

/* V28.8 professional ad detail page */
.ad-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}
.ad-breadcrumbs{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:.92rem;margin:0 0 14px}
.ad-main-gallery{padding:16px}
.ad-main-image-wrap{background:#eef2f7;border-radius:22px;overflow:hidden}
.ad-main-image{width:100%;height:min(66vh,720px);object-fit:cover}
.ad-thumb-strip{display:flex;gap:12px;overflow:auto;padding-top:14px}
.ad-thumb{width:88px;height:72px;border-radius:14px;overflow:hidden;border:2px solid transparent;background:#f8fafc;flex:0 0 auto;cursor:pointer;padding:0;appearance:none}
.ad-thumb.active{border-color:var(--primary)}
.ad-thumb img{width:100%;height:100%;object-fit:cover}
.ad-summary-card h1{margin:0 0 6px;font-size:2rem}
.ad-price-row{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}
.ad-id-chip,.ad-id-box{padding:10px 14px;border:1px solid var(--border);border-radius:14px;background:#f8fafc;font-weight:700}
.ad-meta-inline{font-size:1.7rem;font-weight:800}
.ad-location-line{color:var(--muted)}
.ad-highlight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:8px}
.ad-sidebar-card{position:sticky;top:96px;display:flex;flex-direction:column;gap:12px}
.full-btn{width:100%}
.share-button-mock{padding:12px 14px;border:1px solid var(--border);border-radius:14px;text-align:center;font-weight:700;background:#fff;cursor:pointer;font:inherit}
.share-modal-card{width:min(430px,calc(100% - 24px));padding:0;overflow:hidden}
.share-modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid var(--border)}
.share-modal-head h3{margin:0;font-size:1.9rem}
.share-modal-close{font-size:2rem;color:#6b7280;line-height:1}
.share-modal-list{display:flex;flex-direction:column;padding:0 22px 10px}
.share-modal-item{display:flex;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--border);color:var(--text);text-decoration:none;font-size:1.05rem}
.share-modal-item:last-child{border-bottom:0}
.share-modal-icon{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 28px;color:#111827}
.share-modal-icon svg{width:24px;height:24px;display:block}
.seller-profile-box{display:flex;gap:14px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:18px;background:#fff}
.seller-avatar{width:48px;height:48px;border-radius:999px;background:#e2e8f0;display:flex;align-items:center;justify-content:center;font-weight:800}
.seller-stats-box{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px solid var(--border);border-radius:18px;background:#fff}
.seller-badge-row{display:flex;flex-wrap:wrap;gap:8px}
.secure-box{padding:14px;border:1px solid #cfe6cf;border-radius:16px;background:#f2fbf2;color:#2f6b2f;font-weight:700}
.report-link{color:#d97706;font-weight:700;text-align:center;padding-top:6px}
.ad-description-card h2,.ad-message-card h2{margin:0}
@media (max-width: 980px){
  .ad-detail-layout{grid-template-columns:1fr}
  .ad-sidebar-card{position:static}
  .ad-highlight-grid{grid-template-columns:1fr}
}

/* V28.9 favicon, copyright, report modal */
.footer-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center}
.footer-center-copy{text-align:center;font-weight:700;color:var(--muted)}
.footer-links{display:flex;justify-content:flex-end;gap:18px;flex-wrap:wrap}
.button-link{background:none;border:0;padding:0;color:var(--primary);font-weight:700;cursor:pointer}
.report-modal{position:fixed;inset:0;background:rgba(15,23,42,.55);align-items:center;justify-content:center;z-index:1000}
.report-modal-box{width:min(560px,calc(100% - 24px));background:#fff;border-radius:22px;padding:22px;box-shadow:var(--shadow)}
.report-modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.report-close{border:0;background:none;font-size:28px;cursor:pointer;color:#3f6212}
@media (max-width: 980px){.footer-grid{grid-template-columns:1fr}.footer-center-copy{text-align:left}.footer-links{justify-content:flex-start}}

/* V29.1 social settings + footer socials */
.footer-right-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.footer-socials{display:flex;gap:10px;align-items:center}
.footer-socials a{width:34px;height:34px;border-radius:999px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;background:#fff;color:var(--text);font-weight:800}
.footer-socials a:hover{background:var(--primary);color:#fff}
@media (max-width: 980px){.footer-right-wrap{align-items:flex-start}}

/* V29.5 footer/social restore */
.site-footer{margin-top:40px;padding:28px 0;background:#fff;border-top:1px solid var(--border)}
.footer-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center}
.footer-center-copy{text-align:center;font-weight:700;color:var(--muted)}
.footer-right-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.footer-links{display:flex;justify-content:flex-end;gap:18px;flex-wrap:wrap}
.footer-socials{display:flex;gap:10px;align-items:center}
.footer-socials a{width:34px;height:34px;border-radius:999px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;background:#fff;color:var(--text);font-weight:800}
.footer-socials a:hover{background:var(--primary);color:#fff}
@media (max-width: 980px){.footer-grid{grid-template-columns:1fr}.footer-center-copy{text-align:left}.footer-right-wrap{align-items:flex-start}.footer-links{justify-content:flex-start}}

/* V30.3 profile + newsletter + footer social */
.settings-shell{margin:0 auto}
.settings-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:20px}
.settings-panel{background:#fff;border:1px solid var(--border);border-radius:22px;padding:22px;box-shadow:var(--shadow)}
.settings-panel h2{margin:0 0 10px}
.settings-list{display:flex;flex-direction:column;gap:10px}
.settings-row{display:grid;grid-template-columns:220px 1fr 120px;gap:18px;align-items:center;padding:14px 0;border-bottom:1px solid var(--border)}
.settings-row:last-child{border-bottom:0}
.switch-row{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid var(--border);border-radius:18px;padding:14px 16px;background:#fbfdff}
.checkbox-inline-row{padding-top:2px}
.checkbox-inline{display:inline-flex;align-items:center;gap:10px;margin:0;font-weight:400;color:var(--text);cursor:pointer}
.checkbox-inline span{margin:0}
.checkbox-inline input[type="checkbox"]{width:15px;height:15px;margin:0;accent-color:#2f6f11;cursor:pointer;flex:0 0 auto}
.toggle-row{display:flex;gap:12px;align-items:flex-start}
.footer-links-social-inline{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap}
.footer-links{display:flex;justify-content:flex-end;gap:18px;flex-wrap:wrap}
.footer-socials{display:flex;gap:8px;align-items:center}
.footer-socials a{width:32px;height:32px;border-radius:999px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;background:#fff;color:var(--text);font-weight:800}
@media (max-width: 980px){
  .settings-grid{grid-template-columns:1fr}
  .settings-row{grid-template-columns:1fr}
  .footer-links-social-inline,.footer-links{justify-content:flex-start}
}

/* V30.5 account modals + extensions */
.modal-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.48);display:none;align-items:center;justify-content:center;padding:20px;z-index:9999}
.modal-backdrop.is-open{display:flex}
.modal-card{width:min(560px,100%);background:#fff;border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow);padding:24px}
.modal-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}
.modal-head h3{margin:0;font-size:1.4rem}
.modal-close{background:transparent;border:0;font-size:1.7rem;cursor:pointer;color:var(--muted)}

/* V30.6 admin security suite */

/* V31 admin control center pro */

/* ChatGPT fix: header/footer same boxed width as content cards */
.site-header,
.site-footer{
  width:min(1240px, calc(100% - 32px));
  margin-left:auto;
  margin-right:auto;
}
.site-header{
  margin-top:8px;
  border:1px solid var(--border);
  border-radius:24px;
  overflow:hidden;
}
.site-header .container,
.site-footer .container{
  width:100%;
  max-width:none;
}
.site-footer{
  border:1px solid var(--border);
  border-radius:24px;
  overflow:hidden;
}
@media (max-width: 980px){
  .site-header,
  .site-footer{
    width:min(100% - 20px, 1240px);
  }
}

/* Remove header and footer borders */
header, .site-header {
  border: none !important;
  box-shadow: none !important;
}
footer, .site-footer {
  border: none !important;
  box-shadow: none !important;
}
.topbar {
  border-bottom: none !important;
}

/* Straight alignment for header/footer/content */
.container,
header .container,
footer .container,
.site-header .container,
.site-footer .container,
.topbar .container,
.navbar .container,
.main-header .container {
  width: min(1240px, calc(100% - 32px)) !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

/* Fix account navigation dropdown */
.site-header,
.topbar,
.site-header .topbar-inner,
.user-menu-dropdown {
  overflow: visible !important;
}

.user-menu-panel {
  z-index: 9999 !important;
}

.

/* Final fix: header same width as content + account menu works */
.site-header,
.topbar {
  overflow: visible !important;
}

.site-header .container,
.topbar .container,
header .container,
.navbar .container,
.main-header .container {
  width: min(1240px, calc(100% - 32px)) !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

.user-menu-dropdown,
.user-menu-panel,
.dropdown-menu {
  overflow: visible !important;
  z-index: 9999 !important;
}

/* Admin full width fix */
.inline-form{display:inline-block;margin:0 6px 0 0}
.category-inline-check{display:inline-flex !important;align-items:center;gap:8px;padding-top:0 !important}
.mt-6{margin-top:6px}
@media (max-width:980px){.category-form-grid{grid-template-columns:1fr}.category-form-grid label,.category-form-grid .hint{padding-top:0}.category-form-grid .span-2,.category-form-grid .full{grid-column:auto}}

/* Header account + cart cleanup */
.header-account-actions{
  display:inline-flex;
  align-items:center;
  gap:10px;
}

.user-menu-dropdown,
.feature-cart-wrap{
  position:relative;
  display:flex;
  align-items:center;
}

.user-menu-trigger,
.feature-cart-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  border-radius:14px;
  background:#fff;
  color:var(--text);
  cursor:pointer;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
}

.user-menu-trigger{
  gap:10px;
  padding:8px 14px;
  border:0;
  box-shadow:none;
}

.user-menu-trigger:hover,
.feature-cart-toggle:hover{
  transform:translateY(-1px);
}

.user-menu-icon{
  width:22px;
  height:22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--primary);
}

.user-menu-icon svg{
  width:22px;
  height:22px;
  display:block;
}

.user-menu-label{
  font-weight:600;
}

.feature-cart-toggle{
  position:relative;
  width:42px;
  min-width:42px;
  padding:0;
  border:1px solid var(--border);
  box-shadow:none;
}

.feature-cart-icon{
  font-size:17px;
  line-height:1;
}

.feature-cart-count{
  position:absolute;
  top:-6px;
  right:-6px;
  display:grid;
  place-items:center;
  min-width:18px;
  height:18px;
  padding:0 5px;
  border-radius:999px;
  background:#ef4444;
  color:#fff;
  font-size:11px;
  font-weight:700;
  box-shadow:0 4px 10px rgba(239,68,68,.28);
}

.feature-cart-count.is-hidden{
  display:none;
}

.user-menu-avatar{
  display:none !important;
}

.price-input-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.price-input-row input{flex:0 1 140px;max-width:140px}
.price-input-row .price-currency{white-space:nowrap;color:var(--muted);font-weight:600}
.price-input-row select{flex:0 1 200px;min-width:180px;max-width:330px}

/* radio layout fix */
.radio-pill{
display:flex;
align-items:center;
gap:10px;
padding:14px 18px;
border-radius:18px;
cursor:pointer;
}

.radio-pill input{
width:18px;
height:18px;
margin-right:6px;
}

.radio-pill-text{
font-weight:600;
}

/* publish section professional */
.publish-section{
  margin-top:16px;
  padding-top:14px;
  border-top:1px solid var(--border);
}

.publish-section-head h2{
  margin:0 0 10px;
  font-size:18px;
  line-height:1.2;
  font-weight:800;
  color:var(--text);
}

.publish-section-note{
  margin-bottom:12px;
  color:var(--muted);
  font-size:13px;
  line-height:1.45;
}

.publish-section-note a{
  color:#4d7c0f;
  text-decoration:underline;
  text-underline-offset:2px;
  font-weight:600;
}

.publish-section-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.publish-section-actions .btn{
  min-height:36px;
  padding:0 14px;
  border-radius:8px;
  font-weight:700;
  font-size:14px;
  box-shadow:none;
}

.btn-preview{
  background:#fff;
  color:var(--text);
  border:1px solid var(--border);
}

.btn-draft{
  background:#fff;
  color:var(--text);
  border:1px solid #a3a3a3;
}

.btn-publish{
  background:#a3d232;
  color:#1f2937;
  border:1px solid #a3d232;
}

.btn-preview:hover,
.btn-draft:hover,
.btn-publish:hover{
  transform:translateY(-1px);
}

@media (max-width: 640px){
  .publish-section-actions{
    flex-direction:column;
    align-items:stretch;
  }
  .publish-section-actions .btn{
    width:100%;
    justify-content:center;
  }
}

/* preview page */
.preview-shell{
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:22px;
  align-items:start;
}

.preview-main-card,
.preview-side-card,
.preview-description-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:22px;
  box-shadow:0 10px 30px rgba(15,23,42,.06);
}

.preview-main-card{
  padding:28px;
}

.preview-main-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  margin-bottom:18px;
}

.preview-title{
  margin:0 0 10px;
  font-size:40px;
  line-height:1.05;
  font-weight:800;
}

.preview-price{
  font-size:22px;
  font-weight:800;
  color:#0f172a;
}

.preview-id-badge{
  padding:10px 16px;
  border-radius:999px;
  border:1px solid var(--border);
  background:#f8fafc;
  font-weight:700;
  white-space:nowrap;
}

.preview-meta-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px 24px;
  margin-bottom:22px;
  color:var(--text);
}

.preview-description-card{
  padding:22px;
}

.preview-description-card h3,
.preview-side-card h3{
  margin:0 0 14px;
  font-size:20px;
  font-weight:800;
}

.preview-side-card{
  padding:22px;
  position:sticky;
  top:110px;
}

.preview-seller-name{
  font-size:18px;
  font-weight:700;
  margin-bottom:12px;
}

.preview-side-row{
  margin-bottom:14px;
  line-height:1.6;
}

.preview-legal{
  margin-top:6px;
  color:var(--muted);
}

@media (max-width: 900px){
  .preview-shell{
    grid-template-columns:1fr;
  }
  .preview-main-head{
    flex-direction:column;
  }
  .preview-meta-grid{
    grid-template-columns:1fr;
  }
  .preview-title{
    font-size:32px;
  }
}

/* compact ui reset */
.container{width:min(1180px,calc(100% - 24px));}
.gap{gap:10px;}
.grid{gap:12px;}
.form-grid{gap:10px;}
.search-grid{gap:8px;padding:10px;border-radius:10px;}
.ad-card{border-radius:12px;}
.ad-card .body{padding:12px;}
.sidebar-card{min-width:240px;}
.checkbox-inline{gap:8px;font-size:14px;}
.checkbox-inline-row{padding-top:0;}
.publish-section-actions .btn:hover{transform:none;}
body.admin-body .table th, body.admin-body .table td{padding:10px 10px;}
body.admin-body .btn, body.admin-body a.btn{padding:8px 12px;border-radius:8px;}

/* fixed account/dashboard layout */
.content-wrap{
  padding:16px 0 24px;
}

.page-wrap,
.dashboard-wrap,
.main-wrap{
  width:min(1180px,calc(100% - 24px));
  margin:0 auto;
  display:flex;
  gap:24px;
  align-items:flex-start;
}

.page-wrap aside,
.dashboard-wrap aside,
.main-wrap aside,
.page-wrap .sidebar,
.dashboard-wrap .sidebar,
.main-wrap .sidebar{
  width:280px;
  flex:0 0 280px;
  min-width:280px;
}

.page-wrap main,
.dashboard-wrap main,
.main-wrap main,
.page-wrap .content,
.dashboard-wrap .content,
.main-wrap .content{
  flex:1 1 auto;
  min-width:0;
  width:auto;
}

.page-wrap .card,
.dashboard-wrap .card,
.main-wrap .card,
.page-wrap .table-wrap,
.dashboard-wrap .table-wrap,
.main-wrap .table-wrap{
  width:100%;
  max-width:100%;
}

.marketplace-form-wrap{
  width:min(1180px,calc(100% - 24px));
  max-width:none;
  margin:0 auto;
}

.marketplace-form-card{
  width:100%;
  max-width:100%;
}

@media (max-width: 980px){
  .page-wrap,
  .dashboard-wrap,
  .main-wrap{
    display:block;
  }

  .page-wrap aside,
  .dashboard-wrap aside,
  .main-wrap aside,
  .page-wrap .sidebar,
  .dashboard-wrap .sidebar,
  .main-wrap .sidebar{
    width:100%;
    min-width:0;
    flex:0 0 auto;
    margin-bottom:16px;
  }
}

/* right-aligned admin action dropdown */
.admin-actions-col{width:1%;white-space:nowrap;text-align:right;}
.admin-actions-cell{text-align:right;white-space:nowrap;}
.admin-action-dropdown-wrap{display:flex;justify-content:flex-end;position:relative;}
.admin-action-dropdown{position:relative;display:inline-block;}
.admin-action-dropdown[open]{z-index:30;}
.admin-action-dropdown-toggle{
  min-height:34px;
  padding:7px 12px;
  border-radius:4px;
  background:#0b3f63;
  color:#fff;
  border:1px solid #092f4a;
  box-shadow:none;
}
.admin-action-dropdown-toggle.secondary{background:#0b3f63;color:#fff;border-color:#092f4a;}
.admin-action-dropdown-toggle .caret{font-size:11px;opacity:.9}
.admin-action-dropdown summary{list-style:none;cursor:pointer}
.admin-action-dropdown summary::-webkit-details-marker{display:none}
.admin-action-dropdown-menu{
  position:absolute;
  right:0;
  top:calc(100% + 2px);
  min-width:220px;
  background:#0b3f63;
  border:1px solid #092f4a;
  border-radius:0 0 4px 4px;
  overflow:hidden;
  box-shadow:0 8px 20px rgba(0,0,0,.15);
}
.admin-action-dropdown-item{
  display:block;
  width:100%;
  padding:10px 14px;
  text-align:left;
  background:transparent;
  color:#fff;
  text-decoration:none;
  border:0;
  border-top:1px solid rgba(255,255,255,.08);
  cursor:pointer;
}
.admin-action-dropdown-item:hover{background:#11527e;color:#fff;}
.admin-action-dropdown-form{margin:0}
.admin-action-dropdown-item.is-danger{color:#ffd3d3;}
.admin-action-dropdown-item.is-danger:hover{background:#b3261e;color:#fff;}
.admin-action-dropdown-item.is-success{color:#d6ffe5;}
.admin-action-dropdown-item.is-success:hover{background:#1f7a3f;color:#fff;}

/* overflow dropdown fix */
.admin-action-dropdown-wrap{position:relative;overflow:visible;}
.admin-action-dropdown{position:relative;}
.admin-action-dropdown[open]{z-index:1000;}
.admin-action-dropdown-menu{z-index:1000;}
.table{overflow:visible;}
.table td,.table th{overflow:visible;}

/* universal action dropdowns */
.table td.actions-cell,
.table th.actions-col{white-space:nowrap;}
.table td.actions-cell{text-align:right;}
.action-dropdown-wrap{position:relative;display:flex;justify-content:flex-end;align-items:center;overflow:visible;}
.action-dropdown{position:relative;display:inline-block;}
.action-dropdown[open]{z-index:1000;}
.action-dropdown summary{list-style:none;cursor:pointer}
.action-dropdown summary::-webkit-details-marker{display:none}
.action-dropdown-toggle{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:34px;
  padding:7px 12px;
  border-radius:4px;
  background:#0b3f63;
  color:#fff;
  border:1px solid #092f4a;
  text-decoration:none;
  font-weight:700;
}
.action-dropdown-toggle .caret{font-size:11px;opacity:.9}
.action-dropdown-menu{
  position:absolute;
  right:0;
  top:calc(100% + 2px);
  min-width:220px;
  background:#0b3f63;
  border:1px solid #092f4a;
  border-radius:0 0 4px 4px;
  overflow:hidden;
  box-shadow:0 8px 20px rgba(0,0,0,.15);
}
.action-dropdown-menu a,
.action-dropdown-menu button,
.action-dropdown-menu input[type="submit"]{
  display:block;
  width:100%;
  padding:10px 14px;
  text-align:left;
  background:transparent;
  color:#fff;
  text-decoration:none;
  border:0;
  border-top:1px solid rgba(255,255,255,.08);
  cursor:pointer;
  border-radius:0;
  box-shadow:none;
}
.action-dropdown-menu form{display:block;margin:0}
.action-dropdown-menu a:hover,
.action-dropdown-menu button:hover,
.action-dropdown-menu input[type="submit"]:hover{background:#11527e;color:#fff;}
.action-dropdown-menu .btn,
.action-dropdown-menu .folder-chip,
.action-dropdown-menu .badge{
  background:transparent !important;
  color:#fff !important;
  border:0 !important;
  padding:10px 14px !important;
  min-height:0 !important;
  border-radius:0 !important;
  width:100% !important;
  justify-content:flex-start !important;
  font-weight:600 !important;
}
.action-dropdown-menu .danger,
.action-dropdown-menu .btn.danger,
.action-dropdown-menu .is-danger{color:#ffd3d3 !important;}
.action-dropdown-menu .danger:hover,
.action-dropdown-menu .btn.danger:hover,
.action-dropdown-menu .is-danger:hover{background:#b3261e !important;color:#fff !important;}
.action-dropdown-menu .success,
.action-dropdown-menu .btn.success,
.action-dropdown-menu .is-success{color:#d6ffe5 !important;}
.action-dropdown-menu .success:hover,
.action-dropdown-menu .btn.success:hover,
.action-dropdown-menu .is-success:hover{background:#1f7a3f !important;color:#fff !important;}

/* dropdown portal fix */
.action-dropdown-menu.is-portal{
  position:fixed;
  top:0;
  left:0;
  right:auto;
  min-width:220px;
  max-width:min(320px, calc(100vw - 16px));
  max-height:min(70vh, 420px);
  overflow:auto;
  z-index:3000;
  border-radius:4px;
}
.action-dropdown.is-open > .action-dropdown-toggle{
  background:#11527e;
}

/* actions header right align */
.table th.actions-col,
.table td.actions-cell{
  text-align:right;
}

/* admin action cell cleanup */
body.admin-body .table td.actions-cell{
  padding-left:10px;
  padding-right:10px;
}
body.admin-body .table td.actions-cell > .action-links,
body.admin-body .table td.actions-cell > .toolbar-inline,
body.admin-body .table td.actions-cell > .admin-actions-menu{
  display:none !important;
}
body.admin-body .table td.actions-cell > .action-dropdown-wrap,
body.admin-body .table td.actions-cell > .admin-action-dropdown-wrap{
  display:flex !important;
  justify-content:flex-end !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
body.admin-body .table td.actions-cell > .action-dropdown-wrap::before,
body.admin-body .table td.actions-cell > .admin-action-dropdown-wrap::before{
  content:none !important;
}
body.admin-body .table td.actions-cell .action-dropdown,
body.admin-body .table td.actions-cell .admin-action-dropdown{
  margin-left:auto !important;
}
body.admin-body .table td.actions-cell .action-dropdown-toggle,
body.admin-body .table td.actions-cell .admin-action-dropdown-toggle{
  margin-left:auto !important;
}

/* header width alignment fix */
:root{
  --site-shell-width:min(1180px, calc(100% - 24px));
}

.topbar .container,
.site-header .container,
header .container,
.container{
  width:var(--site-shell-width);
  margin-left:auto;
  margin-right:auto;
}

.content-wrap{
  width:var(--site-shell-width);
  margin-left:auto;
  margin-right:auto;
}

.customer-layout,
.admin-layout,
.page-wrap,
.main-wrap,
.dashboard-wrap,
.marketplace-form-wrap{
  width:100%;
  max-width:100%;
}

.customer-content,
.admin-content,
.marketplace-form-card,
.card,
.table-wrap{
  min-width:0;
  max-width:100%;
}

@media (max-width: 640px){
  :root{
    --site-shell-width:min(1180px, calc(100% - 14px));
  }
}

/* customer table width fix */
body:not(.admin-body) .customer-content .table-wrap{
  overflow-x:hidden !important;
}

body:not(.admin-body) .customer-content .table{
  width:100% !important;
  min-width:0 !important;
  table-layout:auto !important;
}

body:not(.admin-body) .customer-content .table th,
body:not(.admin-body) .customer-content .table td{
  white-space:normal;
}

body:not(.admin-body) .customer-content .table th.actions-col,
body:not(.admin-body) .customer-content .table td.actions-cell{
  white-space:nowrap;
}

/* ui alignment and no-scroll fixes */
:root{
  --site-shell-width:min(1180px, calc(100% - 24px));
  --panel-radius:16px;
  --panel-border:#d9e0e7;
  --panel-shadow:0 10px 30px rgba(15,23,42,.06);
  --sidebar-width:280px;
}

/* same outer width as header */
.container,
.content-wrap{
  width:var(--site-shell-width);
  margin-left:auto;
  margin-right:auto;
}

/* unify admin + customer shell */
.customer-layout,
.admin-layout{
  gap:24px;
  align-items:start;
}

.customer-layout{
  display:grid;
  grid-template-columns:var(--sidebar-width) minmax(0,1fr);
}

.admin-layout{
  display:grid;
  grid-template-columns:290px minmax(0,1fr);
}

.customer-sidebar,
.admin-sidebar{
  border-radius:var(--panel-radius);
  box-shadow:var(--panel-shadow);
}

.customer-menu-dropdown,
.card,
.table-wrap,
.marketplace-form .form-section{
  border-radius:var(--panel-radius);
  box-shadow:var(--panel-shadow);
}

/* bring title + right buttons a bit closer on customer pages */
.customer-content .section-head{
  display:flex;
  justify-content:flex-start;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.customer-content .section-head > :first-child{
  margin-right:8px;
}
.customer-content .section-head .btn,
.customer-content .section-head .toolbar-inline,
.customer-content .section-head .folder-chip{
  margin-left:0;
}

/* tables without forced bottom scrollbar */
.table-wrap{
  overflow-x:visible;
  overflow-y:visible;
}
.customer-content .table-wrap,
.admin-content .table-wrap{
  overflow-x:visible;
  overflow-y:visible;
}
.customer-content .table,
.admin-content .table{
  width:100%;
  min-width:0;
  table-layout:auto;
}
.customer-content .table th,
.customer-content .table td,
.admin-content .table th,
.admin-content .table td{
  white-space:normal;
  word-break:break-word;
}
.customer-content .table th.actions-col,
.customer-content .table td.actions-cell,
.admin-content .table th.actions-col,
.admin-content .table td.actions-cell{
  white-space:nowrap;
  width:1%;
  text-align:right;
}

/* perfectly aligned dropdowns */
.action-dropdown-wrap,
.admin-action-dropdown-wrap{
  width:100%;
  display:flex;
  justify-content:flex-end;
  align-items:center;
  overflow:visible;
}
.action-dropdown,
.admin-action-dropdown{
  position:relative;
  display:inline-block;
  margin-left:auto;
}
.action-dropdown-toggle,
.admin-action-dropdown-toggle{
  min-width:auto;
  white-space:nowrap;
}
.action-dropdown-menu,
.admin-action-dropdown-menu{
  right:0;
  left:auto;
  min-width:220px;
  max-width:min(320px, calc(100vw - 16px));
  z-index:3000;
}

/* compact admin action buttons */
body.admin-body .table td.actions-cell{
  padding-top:6px !important;
  padding-bottom:6px !important;
}
body.admin-body .table td.actions-cell .action-dropdown-toggle,
body.admin-body .table td.actions-cell .admin-action-dropdown-toggle{
  min-height:24px !important;
  height:24px !important;
  padding:0 10px !important;
  border-radius:2px !important;
  font-size:12px !important;
  line-height:24px !important;
  gap:6px !important;
}

/* smaller tables on narrower screens */
@media (max-width: 1100px){
  .customer-content .table th,
  .customer-content .table td,
  .admin-content .table th,
  .admin-content .table td{
    padding:8px 8px;
    font-size:13px;
  }
}
@media (max-width: 900px){
  .customer-layout,
  .admin-layout{
    grid-template-columns:1fr;
  }
  .customer-sidebar,
  .admin-sidebar{
    position:static;
    top:auto;
  }
  .container,
  .content-wrap{
    width:min(1180px, calc(100% - 18px));
  }
}
@media (max-width: 640px){
  .container,
  .content-wrap{
    width:min(1180px, calc(100% - 14px));
  }
}

/* Split width controls for admin and customer area */
body.admin-body.content-wide .admin-topbar,
body.admin-body.content-wide .admin-footer,
body.admin-body.content-wide main.container.admin-main-wrap{
  width:calc(100% - 32px) !important;
  max-width:none !important;
}

body.admin-body.content-boxed .admin-topbar,
body.admin-body.content-boxed .admin-footer,
body.admin-body.content-boxed main.container.admin-main-wrap{
  width:min(1440px, calc(100% - 32px)) !important;
  max-width:none !important;
}

body.admin-body.content-compact .admin-topbar,
body.admin-body.content-compact .admin-footer,
body.admin-body.content-compact main.container.admin-main-wrap{
  width:min(1100px, calc(100% - 32px)) !important;
  max-width:none !important;
}

body:not(.admin-body).content-wide .site-header .container,
body:not(.admin-body).content-wide > main.container.content-wrap,
body:not(.admin-body).content-wide .site-footer .container{
  width:calc(100% - 32px) !important;
  max-width:none !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body:not(.admin-body).content-boxed .site-header .container,
body:not(.admin-body).content-boxed > main.container.content-wrap,
body:not(.admin-body).content-boxed .site-footer .container{
  width:min(1440px, calc(100% - 32px)) !important;
  max-width:1440px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

body:not(.admin-body).content-compact .site-header .container,
body:not(.admin-body).content-compact > main.container.content-wrap,
body:not(.admin-body).content-compact .site-footer .container{
  width:min(1100px, calc(100% - 32px)) !important;
  max-width:1100px !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

@media (max-width: 900px){
  body.admin-body.content-wide .admin-topbar,
  body.admin-body.content-wide .admin-footer,
  body.admin-body.content-wide main.container.admin-main-wrap,
  body.admin-body.content-boxed .admin-topbar,
  body.admin-body.content-boxed .admin-footer,
  body.admin-body.content-boxed main.container.admin-main-wrap,
  body.admin-body.content-compact .admin-topbar,
  body.admin-body.content-compact .admin-footer,
  body.admin-body.content-compact main.container.admin-main-wrap,
  body:not(.admin-body).content-wide .site-header .container,
  body:not(.admin-body).content-wide > main.container.content-wrap,
  body:not(.admin-body).content-wide .site-footer .container,
  body:not(.admin-body).content-boxed .site-header .container,
  body:not(.admin-body).content-boxed > main.container.content-wrap,
  body:not(.admin-body).content-boxed .site-footer .container,
  body:not(.admin-body).content-compact .site-header .container,
  body:not(.admin-body).content-compact > main.container.content-wrap,
  body:not(.admin-body).content-compact .site-footer .container{
    width:calc(100% - 20px) !important;
    max-width:none !important;
  }
}

/* V32 final customer shell reset: borderless header/footer + proper wide/boxed/compact */
.site-header,
.site-footer{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
}

.site-header{
  background:#fff;
  border-bottom:1px solid transparent !important;
}

.site-footer{
  background:#fff;
  border-top:1px solid transparent !important;
}

body:not(.admin-body) .site-header .container,
body:not(.admin-body) .site-footer .container,
body:not(.admin-body) > main.container.content-wrap{
  box-sizing:border-box !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:0 !important;
  padding-right:0 !important;
}

body:not(.admin-body).content-wide .site-header .container,
body:not(.admin-body).content-wide .site-footer .container,
body:not(.admin-body).content-wide > main.container.content-wrap{
  width:calc(100% - 32px) !important;
  max-width:none !important;
}

body:not(.admin-body).content-boxed .site-header .container,
body:not(.admin-body).content-boxed .site-footer .container,
body:not(.admin-body).content-boxed > main.container.content-wrap{
  width:min(1440px, calc(100% - 32px)) !important;
  max-width:1440px !important;
}

body:not(.admin-body).content-compact .site-header .container,
body:not(.admin-body).content-compact .site-footer .container,
body:not(.admin-body).content-compact > main.container.content-wrap{
  width:min(1100px, calc(100% - 32px)) !important;
  max-width:1100px !important;
}

.no-customer-sidebar .customer-content,
.no-customer-sidebar .marketplace-form-wrap,
.customer-content .marketplace-form-wrap{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

@media (max-width: 900px){
  body:not(.admin-body) .site-header .container,
  body:not(.admin-body) .site-footer .container,
  body:not(.admin-body) > main.container.content-wrap{
    width:calc(100% - 20px) !important;
    max-width:none !important;
  }
}

/* V33 customer shell cleanup: header/footer flush without white bars and with shared width logic */
body:not(.admin-body) .site-header,
body:not(.admin-body) .site-footer{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

body:not(.admin-body) .site-header .container,
body:not(.admin-body) .site-footer .container{
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

body:not(.admin-body) .site-header{
  padding:10px 0 6px !important;
}

body:not(.admin-body) .site-footer{
  padding:18px 0 26px !important;
  margin-top:24px !important;
}

body:not(.admin-body).content-wide .site-header .container,
body:not(.admin-body).content-wide .site-footer .container,
body:not(.admin-body).content-wide > main.container.content-wrap{
  width:calc(100% - 32px) !important;
  max-width:none !important;
}

body:not(.admin-body).content-boxed .site-header .container,
body:not(.admin-body).content-boxed .site-footer .container,
body:not(.admin-body).content-boxed > main.container.content-wrap{
  width:min(1360px, calc(100% - 32px)) !important;
  max-width:1360px !important;
}

body:not(.admin-body).content-compact .site-header .container,
body:not(.admin-body).content-compact .site-footer .container,
body:not(.admin-body).content-compact > main.container.content-wrap{
  width:min(1100px, calc(100% - 32px)) !important;
  max-width:1100px !important;
}

body:not(.admin-body) .customer-layout.no-customer-sidebar,
body:not(.admin-body) .customer-layout.no-customer-sidebar .customer-content,
body:not(.admin-body) .marketplace-form-wrap,
body:not(.admin-body) .ad-form-shell,
body:not(.admin-body) .ad-create-shell{
  width:100% !important;
  max-width:none !important;
}

@media (max-width: 900px){
  body:not(.admin-body).content-wide .site-header .container,
  body:not(.admin-body).content-wide .site-footer .container,
  body:not(.admin-body).content-wide > main.container.content-wrap,
  body:not(.admin-body).content-boxed .site-header .container,
  body:not(.admin-body).content-boxed .site-footer .container,
  body:not(.admin-body).content-boxed > main.container.content-wrap,
  body:not(.admin-body).content-compact .site-header .container,
  body:not(.admin-body).content-compact .site-footer .container,
  body:not(.admin-body).content-compact > main.container.content-wrap{
    width:calc(100% - 20px) !important;
    max-width:none !important;
  }
}

.site-banner-slot{margin:20px 0 4px;display:flex;justify-content:center}
.site-banner-slot__inner{width:100%;max-width:970px;display:flex;justify-content:center}
.site-banner-slot__link{display:block;width:100%;text-align:center;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.08)}
.site-banner-slot__image{display:block;width:100%;height:auto;margin:0 auto}
.site-banner-slot__html,.site-banner-slot__fallback{display:block;padding:20px}
.site-banner-slot--homepage,.site-banner-slot--category{align-self:center}
@media (max-width: 767px){.site-banner-slot{margin:16px 0 0}.site-banner-slot__inner{max-width:100%}}

/* Admin responsive header/footer fix */
body.admin-body .admin-topbar,
body.admin-body .admin-footer{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  border-radius:0 !important;
}

body.admin-body .admin-topbar{
  position:fixed !important;
  top:0;
  left:0;
  right:0;
  z-index:1000;
  padding:0 24px;
}

body.admin-body .admin-topbar .topbar-inner,
body.admin-body .admin-footer .footer-inner{
  width:100%;
  max-width:none;
}

body.admin-body main.container.admin-main-wrap{
  width:calc(100% - 32px) !important;
  max-width:none !important;
  padding-top:110px !important;
}

body.admin-body .admin-footer{
  padding:18px 24px;
}

@media (max-width: 900px){
  body.admin-body .admin-topbar,
  body.admin-body .admin-footer{
    padding-left:10px;
    padding-right:10px;
  }

  body.admin-body main.container.admin-main-wrap{
    width:calc(100% - 20px) !important;
    padding-top:100px !important;
  }
}

/* Admin user dropdown click fix */
body.admin-body .admin-dropdown{
  position:relative;
}
body.admin-body .admin-user-menu-toggle{
  cursor:pointer;
}
body.admin-body .admin-user-menu{
  top:100% !important;
  margin-top:0 !important;
}
body.admin-body .admin-dropdown:hover .admin-user-menu,
body.admin-body .admin-dropdown:focus-within .admin-user-menu,
body.admin-body .admin-dropdown.is-open .admin-user-menu{
  display:block !important;
}

.logo-wrap{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.logo-tagline{font-size:14px;color:#666;line-height:1.2}
.footer-grid{display:grid;grid-template-columns:1fr;justify-items:center;text-align:center;gap:16px}
.footer-right-wrap,.footer-links-social-inline{display:flex;flex-direction:column;align-items:center}
.footer-links{justify-content:center}
.footer-center-copy{margin-top:18px}

/* Email settings redesign */
.email-settings-shell{
  width:100%;
  gap:20px;
}
.email-settings-hero,
.email-settings-panel{
  width:100%;
  max-width:none;
  margin:0;
  border-radius:28px;
}
.email-settings-hero{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  padding:28px;
}
.email-settings-hero-copy{
  display:flex;
  flex-direction:column;
  gap:12px;
}
.email-settings-badge{
  display:inline-flex;
  align-items:center;
  align-self:flex-start;
  padding:7px 12px;
  border-radius:999px;
  background:#dfe8ff;
  color:#2455d8;
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.email-settings-hero .section-title{
  font-size:2rem;
  line-height:1.1;
}
.email-settings-hero .muted{
  max-width:620px;
  font-size:1.05rem;
  line-height:1.55;
}
.email-settings-status{
  min-width:122px;
  padding:18px 16px;
  border:1px solid #cfd8e3;
  border-radius:24px;
  background:#fff;
  text-align:center;
  color:#10243e;
  box-shadow:0 12px 24px rgba(15,23,42,.04);
}
.email-settings-status strong{
  display:block;
  font-size:1.25rem;
  font-weight:800;
}
.email-settings-status span{
  display:block;
  margin-top:4px;
  color:#5f7087;
  font-size:.95rem;
}
.email-settings-panel{
  padding:22px;
}
.email-settings-panel-head{
  margin-bottom:10px;
}
.email-settings-panel-head h2{
  margin:0 0 6px;
  font-size:1.75rem;
}
.email-settings-form{
  gap:14px;
}
.email-setting-row{
  display:flex;
  align-items:center;
  gap:16px;
  width:100%;
  padding:20px 18px;
  border:1px solid #d7dfeb;
  border-radius:20px;
  background:#fff;
  cursor:pointer;
}
.email-setting-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  border-radius:14px;
  border:1px solid #cfe0ff;
  background:#eef4ff;
  font-size:21px;
  flex:0 0 46px;
}
.email-setting-copy{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
  flex:1 1 auto;
}
.email-setting-copy strong{
  color:#162236;
  font-size:1.02rem;
}
.email-setting-copy small{
  color:#667790;
  font-size:.97rem;
  line-height:1.45;
}
.email-settings-actions{
  padding-top:6px;
}
@media (max-width: 760px){
  .email-settings-hero{
    flex-direction:column;
    align-items:flex-start;
  }
  .email-settings-status{
    min-width:0;
  }
  .email-setting-row{
    align-items:flex-start;
  }
}

/* Maintenance admin page */
.maintenance-admin-page{padding:4px 0 14px}
.maintenance-admin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.maintenance-page-title{margin:0 0 8px;font-size:2.15rem;font-weight:700;color:#23374d}
.maintenance-save-btn{min-width:110px;border-radius:2px}
.maintenance-note{background:#f8edc6;border:1px solid #efd88d;border-radius:4px;padding:16px 18px;color:#7b5d12}
.maintenance-card{background:#fff;border:1px solid #dfe5eb;border-radius:6px;padding:22px 20px;box-shadow:0 1px 2px rgba(15,23,42,.03)}
.maintenance-label,.maintenance-field-title{display:block;font-size:14px;font-weight:700;color:#2a3b4d;margin:0 0 10px}
.maintenance-status-toggle{margin-bottom:22px}
.maintenance-switch{position:relative;display:flex;align-items:center;width:268px;height:36px;border-radius:2px;overflow:hidden;background:#d90d0d;color:#fff;font-weight:700;cursor:pointer}
.maintenance-switch input{position:absolute;opacity:0;inset:0;cursor:pointer}
.maintenance-switch.is-enabled{background:#4caf50}
.maintenance-switch-knob{position:absolute;left:0;top:0;width:14px;height:36px;background:#111}
.maintenance-switch-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding-left:14px}
.maintenance-switch-text-enabled{display:none}
.maintenance-switch.is-enabled .maintenance-switch-text-enabled{display:flex}
.maintenance-switch.is-enabled .maintenance-switch-text-disabled{display:none}
.maintenance-inner-box{border:1px solid #d9e0e7;border-radius:6px;padding:20px 20px 24px;margin-bottom:22px}
.maintenance-upload-box{display:grid;gap:14px}
.maintenance-media-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.maintenance-icon-preview{width:245px;height:56px;border:1px solid #d7dde4;background:#f7f7f7;display:flex;align-items:center;justify-content:center;color:#909090;font-weight:700;overflow:hidden}
.maintenance-icon-preview img{max-width:100%;max-height:100%;object-fit:contain}
.maintenance-delete-btn{min-width:150px;background:var(--danger)!important;color:#fff!important}
.maintenance-delete-btn:hover{background:#b91c1c!important}
.maintenance-upload-row{display:flex;align-items:stretch;width:min(100%,680px)}
.maintenance-file-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;border:1px solid #cfd6df;background:#fff;color:#23374d;min-width:132px;cursor:pointer}
.maintenance-file-btn input{position:absolute;inset:0;opacity:0;cursor:pointer}
.maintenance-file-name{flex:1;border:1px solid #cfd6df;border-left:0;background:#fff;padding:10px 14px;color:#536273}
.maintenance-hint{font-size:13px;color:#5e6d7d}
.maintenance-text-input,.maintenance-textarea{width:100%;border:1px solid #cfd6df;border-radius:2px;padding:10px 12px;background:#fff}
.maintenance-textarea{min-height:172px;resize:vertical}
@media (max-width:900px){.maintenance-admin-head{flex-direction:column}.maintenance-upload-row{width:100%}.maintenance-switch{width:100%}}

/* Extracted from customer/favorite_users.php */
.follow-users-wrap{display:grid;gap:18px}
.follow-users-tabs{display:grid;grid-template-columns:1fr 1fr;background:#fff;border-radius:0;overflow:hidden}
.follow-users-tab{padding:12px 16px;text-align:center;border-bottom:2px solid #ececec;color:#557300;font-weight:500}
.follow-users-tab.active{border-bottom-color:#4d7c0f}
.follow-users-note{display:flex;align-items:center;gap:8px;color:#1f2937}
.follow-users-list{display:grid;gap:18px}
.follow-user-card{background:#fff;border:1px solid #ddd7cc;border-radius:12px;padding:18px;max-width:310px;min-height:250px}
.follow-user-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.follow-user-avatar{width:46px;height:46px;border-radius:50%;background:#efe8db;color:#2b2b2b;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:28px;line-height:1}
.follow-user-name{font-weight:700;text-decoration:underline;color:#111827;margin:0 0 10px}
.follow-user-meta{display:grid;gap:8px;color:#6b7280;font-size:15px}
.follow-user-meta-item{display:flex;align-items:center;gap:6px}
.follow-user-actions{display:flex;justify-content:flex-end}
.follow-btn{display:inline-flex;align-items:center;gap:8px;border:2px solid #a6a28f;background:#fff;color:#4d7c0f;border-radius:999px;padding:10px 18px;font-weight:700}
.follow-empty{background:#fff;border:1px solid #ddd7cc;border-radius:12px;padding:24px}
@media (max-width: 700px){.follow-user-card{max-width:none}}

/* Extracted from maintenance.php */
.maintenance-public-wrap{min-height:62vh;display:flex;align-items:center;justify-content:center;padding:42px 0}
.maintenance-public-card{max-width:760px;width:100%;background:#fff;border:1px solid #dfe5eb;border-radius:18px;padding:40px 32px;text-align:center;box-shadow:0 18px 50px rgba(15,23,42,.08)}
.maintenance-public-icon{margin:0 auto 22px;max-width:320px}
.maintenance-public-icon img{max-width:100%;max-height:220px;object-fit:contain}
.maintenance-public-card h1{margin:0 0 14px;font-size:2.1rem}
.maintenance-public-body{color:#556476;font-size:1.05rem;line-height:1.7}

/* Feature cart header */
.feature-cart-wrap{position:relative}
.feature-cart-toggle{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer}
.feature-cart-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--primary);color:#fff;font-size:12px;font-weight:700}
.feature-cart-mini{position:absolute;right:0;top:calc(100% + 10px);width:340px;max-width:min(92vw,340px);background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:0 20px 50px rgba(0,0,0,.12);padding:14px;display:none;z-index:30}
.feature-cart-wrap.open .feature-cart-mini{display:block}
.feature-cart-mini-head{margin-bottom:10px}
.feature-cart-mini-body{max-height:320px;overflow:auto}
.feature-cart-mini-foot{margin-top:12px;display:flex;justify-content:flex-end}
.mini-cart-item{padding:10px 0;border-bottom:1px solid var(--border);display:grid;gap:4px}
.mini-cart-total{padding-top:10px}

.seller-stats-grid .stat-card .value{font-size:2.4rem;font-weight:800;margin-top:8px}
.seller-chart{
  display:flex;
  align-items:flex-end;
  gap:18px;
  min-height:170px;
  padding:10px 0 4px;
}
.seller-bar-col{
  flex:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
}
.seller-bar{
  width:100%;
  
  background:#0b4268;
  border-radius:8px 8px 0 0;
}
.seller-bar-alt{ background:#1c7ed6; }
.seller-bar-third{ background:#2f9e44; }
.seller-bar-value{
  font-weight:700;
  color:var(--admin-text-strong);
}

.settings-grid-single{grid-template-columns:1fr}
.settings-panel-compact{max-width:720px}
.settings-wide-card{max-width:none}
.settings-toggle-card{display:flex;justify-content:space-between;align-items:center;gap:20px;border:1px solid var(--border);border-radius:14px;padding:14px 16px;background:#fff;width:100%}
.settings-toggle-copy{flex:1;line-height:1.4}
.settings-toggle-switch{position:relative;display:inline-flex;flex:0 0 auto}
.settings-toggle-switch input{position:absolute;opacity:0;pointer-events:none}
.settings-toggle-slider{position:relative;display:inline-block;width:54px;height:32px;border-radius:999px;background:#d1d5db;transition:background .2s ease;cursor:pointer}
.settings-toggle-slider::after{content:'';position:absolute;top:4px;left:4px;width:24px;height:24px;border-radius:999px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.18);transition:transform .2s ease}
.settings-toggle-switch input:checked + .settings-toggle-slider{background:#2f6f11}
.settings-toggle-switch input:checked + .settings-toggle-slider::after{transform:translateX(22px)}
.auto-submit-form{width:100%}
@media (max-width: 680px){.settings-toggle-card{align-items:flex-start}.settings-toggle-switch{margin-top:4px}}


/* PWA install banner */
.pwa-install-banner {
  position: fixed;
  left: 16px;
  right: 16px;
  bottom: 16px;
  z-index: 10000;
  display: none;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px;
  border-radius: 16px;
  background: #0f172a;
  color: #fff;
  box-shadow: 0 20px 50px rgba(15, 23, 42, 0.35);
}
.pwa-install-banner.is-visible { display: flex; }
.pwa-install-banner__content { display: flex; flex-direction: column; gap: 4px; }
.pwa-install-banner__text { color: rgba(255,255,255,0.82); font-size: 14px; }
.pwa-install-banner__actions { display: flex; align-items: center; gap: 10px; }
.pwa-install-banner .btn { white-space: nowrap; }
.pwa-install-banner .btn.secondary { background: rgba(255,255,255,0.12); color: #fff; border-color: rgba(255,255,255,0.18); }
.pwa-install-banner .ios-only,
.pwa-install-banner .android-only,
.pwa-install-banner .help-only,
.pwa-install-banner .native-only { display: none; }
.pwa-install-banner.show-ios .ios-only,
.pwa-install-banner.show-android .android-only,
.pwa-install-banner.show-android .native-only,
.pwa-install-banner.show-android-help .android-only,
.pwa-install-banner.show-android-help .help-only { display: inline; }
.pwa-install-banner.show-ios .pwa-install-banner__install,
.pwa-install-banner.show-android-help .pwa-install-banner__install { display: none; }
@media (max-width: 640px) {
  .pwa-install-banner { flex-direction: column; align-items: stretch; }
  .pwa-install-banner__actions { justify-content: stretch; }
  .pwa-install-banner__actions .btn { flex: 1; }
}
