/* BusTop v2.2.1 — Launch Release UI/UX hardening
   Final layer: brand consistency, all-screen responsiveness and onboarding polish. */
:root{
  --bt-launch-blue:#165DFF;
  --bt-launch-blue-dark:#0B45C6;
  --bt-launch-sky:#0EA5E9;
  --bt-launch-navy:#0B1730;
  --bt-launch-canvas:#F5F8FC;
  --bt-launch-surface:#FFFFFF;
  --bt-launch-line:#DCE5F1;
  --bt-launch-copy:#53627A;
  --bt-launch-radius:18px;
  --bt-launch-radius-lg:26px;
  --bt-launch-shadow:0 12px 34px rgba(16,36,75,.08);
  --bt-launch-shadow-hover:0 18px 48px rgba(16,36,75,.13);
}
*{box-sizing:border-box;}
html{scroll-padding-top:90px;}
body{background:var(--bg,var(--bt-launch-canvas));font-feature-settings:"cv02","cv03","cv04","cv11";text-rendering:optimizeLegibility;}
h1,h2,h3,.brand-wordmark,.ig-sidebar-wordmark,.login-wordmark,.bt-page-title{font-family:var(--font-display,'Outfit','Inter',sans-serif);}
h1,h2,h3{color:var(--text,var(--bt-launch-navy));}
p{color:var(--text-2,var(--bt-launch-copy));}
::selection{background:rgba(22,93,255,.2);color:var(--text);}
.is-touching{transform:scale(.98)!important;}

/* Accessibility and stable viewport */
.skip-link{position:fixed;left:12px;top:-80px;z-index:99999;background:var(--primary);color:#fff;padding:10px 14px;border-radius:10px;}
.skip-link:focus{top:12px;}
[hidden]{display:none!important;}
button:disabled,.btn:disabled,[aria-disabled="true"]{opacity:.55;cursor:not-allowed;pointer-events:none;}
:where(a,button,input,select,textarea):focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 35%,transparent);outline-offset:2px;}

/* Brand */
.brand,.ig-sidebar-logo{gap:10px;}
.brand img,.ig-sidebar-logo img,.login-logo-row img{background:#fff;padding:2px;}
.brand-wordmark,.ig-sidebar-wordmark,.login-wordmark{font-weight:800;color:var(--text);}
.brand-wordmark::after,.ig-sidebar-wordmark::after{content:"";display:inline-block;width:6px;height:6px;margin-left:3px;border-radius:50%;background:var(--bt-launch-sky);vertical-align:top;margin-top:4px;}

/* App chrome */
.app-shell{min-height:100dvh;}
.app-main{min-width:0;padding-bottom:40px;}
.global-search-bar-wrap{max-width:660px;margin:14px auto 8px;padding-inline:12px;}
.global-search-form-top{border-radius:16px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);}
.global-search-input{min-height:46px;border:0!important;box-shadow:none!important;background:transparent!important;}
.global-search-btn{width:44px;height:44px;border-radius:13px;margin:1px;background:var(--primary);color:#fff;border:0;}

/* Sidebar */
.ig-sidebar{border-right:1px solid var(--border);}
.ig-sidebar-inner{padding:18px 12px 14px;}
.ig-sidebar-logo{min-height:56px;margin:0 4px 12px;padding:8px 10px;border-radius:16px;}
.ig-nav-item{min-height:48px;border-radius:14px;margin:2px 0;padding:10px 12px;}
.ig-nav-item:hover{background:var(--primary-light);}
.ig-nav-item.active{background:var(--primary-light);color:var(--primary);}
.ig-nav-item.active::after{content:"";width:4px;height:22px;border-radius:99px;background:var(--primary);position:absolute;right:6px;}
.ig-nav-icon,.ig-nav-avatar{display:grid;place-items:center;min-width:28px;}
.ig-nav-badge{min-width:20px;height:20px;padding:0 5px;display:grid;place-items:center;border-radius:99px;background:#E11D48;color:#fff;font-size:11px;font-weight:800;}
.ig-create-btn{color:var(--primary);font-weight:800;}

/* Public header/footer */
.topbar{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--surface) 88%,transparent);border-bottom:1px solid color-mix(in srgb,var(--border) 76%,transparent);}
.nav-wrap{min-height:72px;}
.topnav-public{gap:4px;}
.topnav-link{padding:9px 11px;border-radius:11px;font-weight:650;}
.topnav-link:hover,.topnav-link.active{background:var(--primary-light);color:var(--primary);text-decoration:none;}
.footer{border-top:1px solid var(--border);background:var(--surface);}
.footer-inner{min-height:76px;gap:18px;}
.footer-links{display:flex;gap:16px;flex-wrap:wrap;}
.footer-links a{color:var(--text-2);font-size:13px;}

/* Home / launch landing */
.premium-hero{position:relative;overflow:hidden;padding:76px 0 64px;background:
  radial-gradient(circle at 10% 0%,rgba(22,93,255,.12),transparent 35%),
  radial-gradient(circle at 90% 20%,rgba(14,165,233,.12),transparent 32%),
  linear-gradient(180deg,#fff,var(--bt-launch-canvas));}
.premium-hero::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(22,93,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(22,93,255,.035) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(to bottom,#000,transparent 88%);}
.hero-grid{position:relative;z-index:1;align-items:center;gap:52px;}
.hero-copy h1{font-size:clamp(38px,5.2vw,68px);line-height:1.02;letter-spacing:-.055em;max-width:780px;}
.hero-copy .lead{font-size:clamp(17px,2vw,21px);line-height:1.6;max-width:690px;}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--primary);font-weight:800;letter-spacing:.04em;text-transform:uppercase;font-size:12px;}
.eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--bt-launch-sky);box-shadow:0 0 0 5px rgba(14,165,233,.12);}
.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;}
.trust-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;}
.trust-row span{background:#fff;border:1px solid var(--bt-launch-line);border-radius:999px;padding:8px 12px;color:var(--bt-launch-copy);font-size:12px;font-weight:700;box-shadow:0 6px 18px rgba(15,23,42,.04);}
.dashboard-mockup{border-radius:28px;border:1px solid rgba(22,93,255,.16);box-shadow:0 30px 90px rgba(15,45,100,.2);overflow:hidden;background:#fff;transform:perspective(1000px) rotateY(-3deg) rotateX(1deg);}
.section{padding-block:64px;}
.section-head{max-width:780px;margin:0 auto 34px;text-align:center;}
.section-head h2{font-size:clamp(29px,4vw,44px);letter-spacing:-.04em;line-height:1.1;}
.feature-grid,.role-grid,.new-roles-grid,.pricing-preview-grid,.home-preview-grid{gap:18px;}
.feature-card,.role-card,.new-role-card,.pricing-preview-card,.preview-card,.profile-preview-card{border-radius:22px;border:1px solid var(--border);box-shadow:var(--shadow-sm);}
.feature-card:hover,.role-card:hover,.new-role-card:hover,.preview-card:hover{transform:translateY(-4px);box-shadow:var(--bt-launch-shadow-hover);border-color:var(--primary-mid);}
.icon-pill{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--primary-light);color:var(--primary);font-weight:800;}
.cta-card{border-radius:28px;background:linear-gradient(135deg,var(--bt-launch-blue),var(--bt-launch-sky));box-shadow:0 24px 70px rgba(22,93,255,.25);}

/* Authentication and onboarding */
.login-page-wrap,.auth-section{min-height:calc(100dvh - 74px);padding:28px 16px 52px;background:
  radial-gradient(circle at 12% 12%,rgba(22,93,255,.11),transparent 34%),
  radial-gradient(circle at 90% 88%,rgba(14,165,233,.11),transparent 34%),var(--bg);}
.login-split{width:min(1080px,100%);margin:auto;min-height:min(700px,calc(100dvh - 120px));border:1px solid var(--border);border-radius:30px;overflow:hidden;box-shadow:0 30px 80px rgba(15,35,70,.12);background:var(--surface);}
.login-brand-panel{background:linear-gradient(145deg,#0A2147,#0B5BD3 70%,#0EA5E9);position:relative;overflow:hidden;}
.login-brand-panel::before,.login-brand-panel::after{content:"";position:absolute;border:1px solid rgba(255,255,255,.14);border-radius:50%;}
.login-brand-panel::before{width:320px;height:320px;right:-130px;top:-80px;}
.login-brand-panel::after{width:220px;height:220px;left:-110px;bottom:-70px;}
.login-brand-inner{position:relative;z-index:1;}
.login-tagline{font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-.045em;}
.login-card,.auth-card{border:1px solid var(--border);border-radius:24px;box-shadow:var(--bt-launch-shadow);background:var(--surface);}
.auth-card.wide{width:min(900px,100%);padding:30px;}
.auth-card h1,.login-card h1{letter-spacing:-.035em;}
.login-field input,.auth-card input,.auth-card select,.auth-card textarea{min-height:48px;border-radius:14px;background:var(--surface);}
.auth-notice{border-radius:16px;border:1px solid var(--primary-mid);background:var(--primary-light);padding:14px;}
.gsi-wrap{margin-top:14px;}
.gsi-divider{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px;margin:14px 0;}
.gsi-divider::before,.gsi-divider::after{content:"";height:1px;background:var(--border);flex:1;}
.checkline{align-items:flex-start;line-height:1.5;}
.checkline input{width:18px;height:18px;flex:0 0 18px;margin-top:2px;}

/* Generic page headers, forms, tables */
.app-section{padding:22px 16px 44px;}
.page-head,.admin-header-row,.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:20px;}
.page-head h1,.section-heading h1{margin:2px 0 0;font-size:clamp(28px,4vw,42px);letter-spacing:-.04em;}
.form-actions,.btn-group{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.grid-form,.role-aware-form{gap:16px;}
.grid-form>label,.role-aware-form>label{display:grid;gap:7px;color:var(--text);font-weight:650;min-width:0;}
.grid-form small,.role-aware-form small{color:var(--muted);font-weight:450;}
.alert,.flash{border-radius:14px;border:1px solid var(--border);}
.table-wrap,.admin-table-wrap,.data-table-wrap{width:100%;overflow:auto;border:1px solid var(--border);border-radius:18px;background:var(--surface);}
table,.admin-table,.data-table{width:100%;border-collapse:collapse;min-width:720px;}
th{position:sticky;top:0;background:var(--bg);color:var(--text-2);font-size:12px;text-transform:uppercase;letter-spacing:.04em;z-index:1;}
th,td{padding:13px 14px;border-bottom:1px solid var(--border);text-align:left;vertical-align:middle;}
tbody tr:hover{background:var(--primary-light);}
.admin-section{display:grid;gap:16px;}
.admin-quick-card{min-height:126px;display:block;text-decoration:none;}
.admin-quick-card:hover{text-decoration:none;transform:translateY(-2px);}
.am-tabs,.tabs,.profile-tabs{display:flex;gap:6px;overflow:auto;padding:4px;border-radius:14px;background:var(--bg);scrollbar-width:none;}
.am-tabs::-webkit-scrollbar,.tabs::-webkit-scrollbar,.profile-tabs::-webkit-scrollbar{display:none;}
.am-tabs a,.tabs a,.profile-tabs a{white-space:nowrap;border-radius:11px;padding:9px 13px;text-decoration:none;font-weight:700;color:var(--text-2);}
.am-tabs a.active,.tabs a.active,.profile-tabs a.active{background:var(--surface);color:var(--primary);box-shadow:var(--shadow-sm);}

/* Marketplace and job boards */
.mk-wrap,.market-page{padding:22px 16px 50px;}
.mk-sec{display:grid;gap:18px;}
.mk-toolbar,.market-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.mk-search{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:6px;box-shadow:var(--shadow-sm);}
.mk-search input{border:0!important;box-shadow:none!important;}
.mk-chip-row,.mk-filters{display:flex;gap:8px;overflow:auto;padding-bottom:5px;}
.mk-card,.job-card,.listing-card{position:relative;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
.mk-card:hover,.job-card:hover,.listing-card:hover{transform:translateY(-3px);box-shadow:var(--bt-launch-shadow-hover);border-color:var(--primary-mid);}
.mk-card-img,.mk-noimg{width:100%;aspect-ratio:4/3;background:linear-gradient(135deg,var(--primary-light),#edf7ff);display:grid;place-items:center;overflow:hidden;}
.mk-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .28s ease;}
.mk-card:hover .mk-card-img img{transform:scale(1.025);}
.mk-card-title,.job-card h3{font-family:var(--font-display);font-size:19px;letter-spacing:-.025em;}
.mk-price{font-size:22px;font-weight:800;color:var(--text);}
.mk-tags,.job-tags{display:flex;gap:6px;flex-wrap:wrap;}
.mk-tags span,.job-tags span,.mk-status{padding:6px 9px;border-radius:999px;background:var(--bg);border:1px solid var(--border);font-size:11px;font-weight:700;color:var(--text-2);}
.mk-seller-name{font-weight:800;}
.mk-seller-type,.listing-city,.listing-date{font-size:12px;color:var(--muted);}
.mk-pager,.pagination{display:flex;gap:7px;align-items:center;justify-content:center;flex-wrap:wrap;margin-top:22px;}
.mk-page{width:auto;padding:0 13px;}
.job-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;}
.job-company-lg{display:flex;align-items:center;gap:12px;}
.job-emp{display:inline-flex;padding:6px 10px;border-radius:999px;background:var(--primary-light);color:var(--primary);font-size:12px;font-weight:800;}
.listing-card-contact,.mk-action{display:flex;gap:8px;flex-wrap:wrap;}
.mk-owner-note{padding:12px;border-radius:13px;background:var(--primary-light);color:var(--primary-dark);}


.mk-wrap{max-width:1120px;}
.mk-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:18px;}
.mk-h1{margin:0 0 4px;font-size:clamp(29px,4vw,42px);letter-spacing:-.04em;}
.mk-chips{display:flex;gap:8px;overflow:auto;padding-bottom:12px;margin-bottom:16px;scrollbar-width:none;}
.mk-chips::-webkit-scrollbar{display:none;}
.mk-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.job-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
.mk-cat,.mk-corp{position:absolute;top:10px;padding:5px 9px;border-radius:999px;color:#fff;font-size:10px;font-weight:800;z-index:2;backdrop-filter:blur(8px);}
.mk-cat{left:10px;background:rgba(3,15,37,.72);}
.mk-corp{right:10px;background:rgba(22,93,255,.88);}
.mk-card-body{padding:15px;}
.mk-meta,.mk-city{font-size:12px;color:var(--muted);margin-top:5px;}
.mk-empty{grid-column:1/-1;text-align:center;padding:60px 20px;color:var(--muted);border:1px dashed var(--border);border-radius:20px;background:var(--surface);}
.mk-empty-emoji{font-size:48px;margin-bottom:12px;}
.mk-detail{max-width:940px;}
.mk-back{display:inline-flex;margin-bottom:14px;color:var(--primary);text-decoration:none;font-weight:750;}
.mk-gallery{display:flex;gap:9px;overflow:auto;border-radius:20px;margin-bottom:12px;scrollbar-width:none;}
.mk-gallery::-webkit-scrollbar{display:none;}
.mk-gallery img{height:min(520px,62dvh);max-width:90%;border-radius:18px;object-fit:contain;background:#eef2f7;flex:0 0 auto;}
.mk-gallery-empty{height:280px;background:linear-gradient(135deg,var(--primary-light),var(--bg));border-radius:20px;display:grid;place-items:center;font-size:58px;}
.mk-detail-body{margin-top:10px;}
.mk-detail-title{font-size:clamp(27px,4vw,42px);letter-spacing:-.04em;margin:8px 0;}
.mk-detail-price{font-size:clamp(27px,4vw,38px);font-weight:900;color:var(--primary);margin:8px 0;}
.mk-tag{background:var(--primary-light);color:var(--primary);font-size:12px;font-weight:750;padding:6px 10px;border-radius:999px;}
.mk-tag.vip{background:#FEF3C7;color:#92400E;}
.mk-seller{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:14px;margin:18px 0;}
.mk-seller-av{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--bt-launch-sky));color:#fff;display:grid;place-items:center;font-weight:850;}
.mk-specs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;}
.mk-spec{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:12px;}
.mk-spec-k{display:block;font-size:11px;color:var(--muted);}
.mk-spec-v{display:block;font-size:14px;font-weight:700;margin-top:3px;color:var(--text);}
.mk-desc{font-size:15px;line-height:1.7;color:var(--text-2);}
.job-pos{display:inline-flex;background:var(--primary-light);color:var(--primary);font-size:11px;font-weight:800;padding:6px 9px;border-radius:999px;}
.job-title{font-size:19px;margin:10px 0 5px;letter-spacing:-.025em;}
.job-company{color:var(--text-2);font-size:14px;font-weight:650;}
.job-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;font-size:13px;color:var(--muted);}
.job-salary{font-weight:850;color:var(--success);text-align:right;}
.job-tag{background:var(--bg);border:1px solid var(--border);color:var(--text-2);font-size:11px;font-weight:650;padding:5px 8px;border-radius:999px;}

/* Detail pages and media galleries */
.mk-detail,.listing-detail,.profile-page{min-width:0;}
.mk-detail-grid,.vehicle-detail-grid,.part-detail-grid,.job-detail-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:24px;align-items:start;}
.mk-gallery-main{border-radius:22px;overflow:hidden;background:#eaf0f8;}
.mk-gallery-main img{width:100%;max-height:680px;object-fit:contain;display:block;}
.mk-gallery-thumbs{display:flex;gap:8px;overflow:auto;margin-top:10px;scrollbar-width:none;}
.mk-gallery-thumbs::-webkit-scrollbar{display:none;}
.mk-gallery-thumbs button{width:82px;height:64px;border-radius:12px;overflow:hidden;padding:0;border:2px solid transparent;background:var(--bg);flex:0 0 auto;}
.mk-gallery-thumbs button.active{border-color:var(--primary);}
.mk-gallery-thumbs img{width:100%;height:100%;object-fit:cover;}
.mk-sticky,.mk-seller-card,.job-apply-card{position:sticky;top:20px;}

/* Upload and creation studios */
.bt-studio,.vf-layout,.story-studio,.clip-studio{width:min(1180px,calc(100% - 24px));margin-inline:auto;}
.bt-dropzone,.bt-upload-zone,.vf-upload,.media-studio-dropzone{border:2px dashed var(--primary-mid);border-radius:22px;background:linear-gradient(180deg,var(--primary-light),var(--surface));min-height:180px;transition:border-color .18s ease,transform .18s ease,background .18s ease;}
.bt-dropzone:hover,.bt-upload-zone:hover,.vf-upload:hover,.media-studio-dropzone:hover{border-color:var(--primary);transform:translateY(-1px);}
.bt-upload-grid,.bt-media-grid,.vf-media-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.bt-media-item,.vf-media-item{position:relative;border-radius:16px;overflow:hidden;background:var(--bg);aspect-ratio:1/1;border:1px solid var(--border);}
.bt-media-item img,.vf-media-item img{width:100%;height:100%;object-fit:cover;}
.bt-upload-progress{height:9px;border-radius:999px;overflow:hidden;background:var(--border);}
.bt-upload-progress>span{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--bt-launch-sky));}

/* Vitrin final polish */
.bt-social-page{padding-bottom:56px;}
.bt-social-layout{width:min(1120px,calc(100% - 24px));margin-inline:auto;}
.bt-social-main{min-width:0;}
.bt-social-card{border-radius:22px;border:1px solid var(--border);box-shadow:var(--shadow-sm);overflow:hidden;}
.bt-social-card__header{gap:12px;}
.bt-social-card__media{background:#EDF2F8;}
.bt-social-carousel img,.bt-social-card__media img{width:100%;max-height:min(760px,78dvh);object-fit:contain;background:#eef2f7;}
.bt-social-card__actions button{min-width:42px;min-height:42px;border-radius:12px;}
.bt-social-card__actions button:hover{background:var(--primary-light);}
.bt-social-comments{border-top:1px solid var(--border);}
.bt-inline-comment{grid-template-columns:30px minmax(0,1fr);}
.bt-inline-comment p{min-width:0;overflow-wrap:anywhere;}
.bt-inline-comment-form{grid-template-columns:30px minmax(0,1fr) auto;gap:8px;}
.bt-inline-comment-form textarea{font-size:16px;min-height:40px;max-height:120px;}
.bt-inline-comment-form button{min-height:40px;}
.bt-share-sheet{border-radius:22px 22px 0 0;}

/* Reels final polish */
.bt-reels-page{position:relative;min-height:calc(100dvh - 20px);padding:12px 12px calc(90px + env(safe-area-inset-bottom,0px));}
.bt-reels-header{width:min(520px,100%);margin:0 auto 10px;}
.bt-reels-feed{width:min(520px,100%);margin:auto;scroll-snap-type:y mandatory;}
.bt-reel-card{height:min(860px,calc(100dvh - 100px));min-height:560px;border-radius:24px;scroll-snap-align:start;overflow:hidden;background:#020617;box-shadow:0 24px 70px rgba(2,6,23,.25);}
.bt-reel-video{width:100%;height:100%;object-fit:cover;background:#000;}
.bt-reel-info{max-width:calc(100% - 78px);}
.bt-reel-actions{right:12px;bottom:82px;}
.bt-reel-action{width:52px;min-height:52px;border-radius:18px;background:rgba(2,6,23,.42);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(14px);}
.bt-reel-action b{font-size:11px;}
.bt-reel-sound{top:14px;right:14px;border-radius:999px;}
.bt-reel-comments-panel{border-radius:24px 24px 0 0;}

/* Messages */
.dm-page{padding:14px 16px calc(86px + env(safe-area-inset-bottom,0px));}
.dm-layout{width:min(1180px,100%);}
.dm-conv-header h3{margin:0;font-size:22px;}
.dm-conv-item:hover{background:var(--primary-light);}
.dm-chat-header{display:flex;align-items:center;gap:10px;}
.dm-chat-header-info{min-width:0;flex:1;}
.dm-chat-header-info strong,.dm-chat-header-info small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.dm-bubble-time{font-size:10px;opacity:.7;margin-top:4px;text-align:right;}
.dm-attach-btn{transition:background .18s ease,border-color .18s ease,transform .12s ease;}
.dm-attach-btn:hover{background:var(--primary-light)!important;border-color:var(--primary)!important;}

/* Profile/discover/search */
.profile-cover,.prof-cover{border-radius:0 0 24px 24px;overflow:hidden;background:linear-gradient(135deg,var(--primary),var(--bt-launch-sky));}
.profile-card-body,.prof-main-card{padding:20px;}
.prof-badges-row{display:flex;gap:7px;flex-wrap:wrap;}
.search-results,.discover-main{display:grid;gap:16px;}
.discover-empty,.popular-spotters-empty{padding:38px 20px;text-align:center;border:1px dashed var(--border);border-radius:20px;background:var(--surface);}
.dc-profile-link{text-decoration:none;color:inherit;}

/* Create modal */
.create-modal-overlay{padding:18px;backdrop-filter:blur(10px);}
.create-modal{width:min(720px,100%);max-height:min(820px,90dvh);overflow:auto;border-radius:28px;padding:20px;background:var(--surface);box-shadow:0 30px 90px rgba(2,6,23,.28);}
.create-modal-title{font-family:var(--font-display);font-size:24px;font-weight:800;letter-spacing:-.03em;margin:4px 0 16px;}
.create-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.create-option-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;padding:14px;border:1px solid var(--border);border-radius:17px;text-decoration:none;color:inherit;background:var(--surface);}
.create-option-card:hover{background:var(--primary-light);border-color:var(--primary-mid);transform:translateY(-2px);text-decoration:none;}
.create-option-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;color:var(--primary);background:var(--primary-light);}
.create-option-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.create-option-info,.create-option-label,.create-option-desc{display:block;min-width:0;}
.create-option-label{font-weight:800;color:var(--text);}
.create-option-desc{font-size:12px;line-height:1.45;color:var(--muted);margin-top:2px;}
.create-modal-close{min-height:46px;border-radius:14px;margin-top:12px;}

/* Runtime media fallback */
.bt-media-fallback{display:grid!important;place-items:center!important;min-height:140px!important;background:linear-gradient(135deg,var(--primary-light),var(--bg))!important;color:var(--primary)!important;font-weight:800!important;object-fit:contain!important;}

/* Dark theme */
[data-theme="dark"] .premium-hero{background:radial-gradient(circle at 10% 0%,rgba(59,130,246,.14),transparent 35%),radial-gradient(circle at 90% 20%,rgba(14,165,233,.1),transparent 32%),linear-gradient(180deg,#0B1020,#0B1020);}
[data-theme="dark"] .dashboard-mockup,[data-theme="dark"] .trust-row span{background:var(--surface);}
[data-theme="dark"] .login-brand-panel{background:linear-gradient(145deg,#07152F,#0B3D91 70%,#075985);}
[data-theme="dark"] .bt-social-card__media,[data-theme="dark"] .bt-social-carousel img,[data-theme="dark"] .bt-social-card__media img{background:#050A14;}
[data-theme="dark"] th{background:#121B2D;}
[data-theme="dark"] .create-option-card{background:var(--surface);}

/* Tablet */
@media (max-width:1100px){
  .hero-grid{grid-template-columns:1fr;}
  .hero-copy{text-align:center;margin:auto;}
  .hero-copy .lead{margin-inline:auto;}
  .hero-actions,.trust-row{justify-content:center;}
  .hero-visual{width:min(760px,100%);margin:auto;}
  .dashboard-mockup{transform:none;}
  .mk-detail-grid,.vehicle-detail-grid,.part-detail-grid,.job-detail-grid{grid-template-columns:minmax(0,1fr);}
  .mk-sticky,.mk-seller-card,.job-apply-card{position:static;}
}

/* Mobile */
@media (max-width:768px){
  html{scroll-padding-top:70px;}
  body.is-app{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px));}
  .mobile-topbar{height:60px;padding-inline:12px;}
  .mobile-bottom-nav{height:calc(66px + env(safe-area-inset-bottom,0px));display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));padding:5px 4px max(5px,env(safe-area-inset-bottom,0px));background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(18px);border-top:1px solid var(--border);}
  .mbn-item{min-width:0;gap:3px;font-size:10px;padding:2px;border-radius:12px;}
  .mbn-item svg{width:22px;height:22px;}
  .mbn-create-btn{width:44px;height:44px;margin-top:-21px;border:4px solid var(--surface);box-shadow:0 8px 24px rgba(22,93,255,.3);}
  .global-search-bar-wrap{display:none;}
  .section{padding-block:44px;}
  .premium-hero{padding:46px 0 40px;}
  .hero-copy h1{font-size:clamp(34px,11vw,48px);}
  .hero-actions{display:grid;grid-template-columns:1fr;}
  .hero-actions .btn{width:100%;}
  .trust-row{gap:6px;}
  .trust-row span{font-size:10px;padding:7px 9px;}
  .dashboard-mockup{border-radius:20px;}
  .feature-grid,.role-grid,.new-roles-grid,.pricing-preview-grid,.home-preview-grid{grid-template-columns:minmax(0,1fr)!important;}
  .section-head{text-align:left;margin-bottom:24px;}
  .section-head h2{font-size:31px;}
  .cta-card{padding:24px;border-radius:22px;display:grid;gap:18px;}
  .footer-inner{align-items:flex-start;flex-direction:column;padding-block:20px;}
  .footer-links{gap:10px 14px;}
  .login-page-wrap,.auth-section{padding:10px 8px 28px;min-height:auto;}
  .login-split{border-radius:22px;min-height:auto;}
  .login-brand-panel{display:none;}
  .login-form-panel{padding:22px 14px;}
  .login-card,.auth-card,.auth-card.wide{padding:20px 16px;border-radius:20px;width:100%;}
  .grid-form,.role-aware-form{grid-template-columns:minmax(0,1fr)!important;}
  .grid-form .span-2,.role-aware-form .span-2{grid-column:auto!important;}
  .page-head,.admin-header-row,.section-heading{align-items:flex-start;flex-direction:column;}
  .page-head>.btn,.page-head>.form-actions{width:100%;}
  .form-actions,.btn-group{display:grid;grid-template-columns:1fr;width:100%;}
  .form-actions .btn,.btn-group .btn{width:100%;}
  .table-wrap,.admin-table-wrap,.data-table-wrap{border-radius:14px;}
  th,td{padding:11px 12px;}
  .mk-wrap,.market-page,.app-section{padding:14px 8px 36px;}
  .mk-toolbar,.market-toolbar{align-items:stretch;flex-direction:column;}
  .mk-grid,.job-grid{grid-template-columns:minmax(0,1fr);}
  .mk-head{align-items:stretch;flex-direction:column;}
  .mk-head>.btn{width:100%;}
  .mk-search{grid-template-columns:minmax(0,1fr);}
  .mk-specs{grid-template-columns:repeat(2,minmax(0,1fr));}
  .mk-gallery img{height:auto;max-width:96%;max-height:62dvh;}

  .mk-toolbar .btn,.market-toolbar .btn{width:100%;}
  .mk-gallery-main{border-radius:16px;}
  .bt-studio,.vf-layout,.story-studio,.clip-studio{width:calc(100% - 12px);}
  .bt-upload-grid,.bt-media-grid,.vf-media-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .bt-social-layout{width:100%;}
  .bt-social-card{border-left:0;border-right:0;border-radius:0;box-shadow:none;}
  .bt-social-card__header,.bt-social-card__body,.bt-social-comments{padding-left:12px!important;padding-right:12px!important;}
  .bt-social-carousel img,.bt-social-card__media img{max-height:72dvh;}
  .bt-inline-comment-form{grid-template-columns:28px minmax(0,1fr) auto;}
  .bt-reels-page{padding:0 0 calc(66px + env(safe-area-inset-bottom,0px));background:#000;}
  .bt-reels-header{position:absolute;z-index:8;background:transparent!important;top:max(8px,env(safe-area-inset-top,0px));left:12px;right:12px;width:auto;margin:0;color:#fff;pointer-events:none;}
  .bt-reels-header h1,.bt-reels-header span{color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.45);}
  .bt-reels-header>a{pointer-events:auto;background:rgba(0,0,0,.35);color:#fff;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(12px);}
  .bt-reels-feed{width:100%;height:calc(100dvh - 60px - 66px - env(safe-area-inset-bottom,0px));overflow-y:auto;scroll-snap-type:y mandatory;}
  .bt-reel-card{height:calc(100dvh - 60px - 66px - env(safe-area-inset-bottom,0px));min-height:0;border-radius:0;box-shadow:none;}
  .bt-reel-info{bottom:20px;padding-left:14px;}
  .bt-reel-actions{bottom:92px;right:9px;}
  .bt-reel-comments-panel{height:min(72dvh,700px);}
  .dm-page{padding:6px 6px calc(72px + env(safe-area-inset-bottom,0px));}
  .dm-conv-list,.dm-chat-area{border-radius:16px;}
  .dm-chat-area{height:calc(100dvh - 138px - env(safe-area-inset-bottom,0px));}
  .dm-chat-messages{padding:12px;}
  .dm-chat-form{padding:8px 8px max(8px,env(safe-area-inset-bottom,0px));}
  .dm-form-inner{gap:7px;}
  .dm-attach-btn{width:42px!important;height:42px!important;}
  .dm-send-btn{width:44px;height:44px;border-radius:14px;}
  .dm-bubble{max-width:90%;}
  .profile-cover,.prof-cover{border-radius:0 0 18px 18px;}
  .create-modal-overlay{align-items:flex-end;padding:0;}
  .create-modal{width:100%;max-height:88dvh;border-radius:24px 24px 0 0;padding:16px 12px calc(16px + env(safe-area-inset-bottom,0px));}
  .create-options{grid-template-columns:minmax(0,1fr);gap:7px;}
  .create-option-card{grid-template-columns:44px minmax(0,1fr);padding:11px 12px;border-radius:15px;}
  .create-option-icon{width:44px;height:44px;border-radius:13px;}
  .create-option-desc{font-size:11px;}
}

@media (max-width:390px){
  .mobile-bottom-nav{padding-inline:1px;}
  .mbn-item{font-size:9px;}
  .mbn-item svg{width:21px;height:21px;}
  .hero-copy h1{font-size:33px;}
  .bt-inline-comment-form{grid-template-columns:minmax(0,1fr) auto;}
  .bt-inline-comment-form>.avatar{display:none;}
  .bt-reel-action{width:48px;min-height:48px;}
  .bt-upload-grid,.bt-media-grid,.vf-media-grid{gap:8px;}
}

/* v2.2.1 final touch target pass */
.mob-topbar-icon,.topnav-icon,.hamburger-btn{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;}
.bt-reel-follow{min-height:40px;padding:8px 14px;border-radius:999px;}
