/* Artisans Showroom V48 — Compact Fluid Responsiveness Pass
   Purpose: reduce wasted dashboard/public spacing, restore compact navigation, improve fluid cards/forms.
   Load this AFTER all older V43–V47 CSS files. */

:root{
  --ash-green:#073f2a;
  --ash-green-2:#0f5137;
  --ash-green-3:#164c36;
  --ash-ink:#082f21;
  --ash-cream:#fff7e8;
  --ash-cream-2:#f8ecd5;
  --ash-card:#fffaf0;
  --ash-gold:#f4c84a;
  --ash-clay:#cf6d43;
  --ash-border:rgba(8,47,33,.14);
  --ash-shadow:0 22px 60px rgba(22,55,38,.14);
  --ash-shadow-soft:0 14px 36px rgba(22,55,38,.10);
  --ash-sidebar:232px;
  --ash-radius-xl:30px;
  --ash-radius-lg:22px;
  --ash-radius-md:16px;
}

html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{overflow-x:hidden;background:linear-gradient(135deg,#fff9ee 0%,#f6ead4 100%)!important;color:var(--ash-ink);}
body *{box-sizing:border-box;}
img,video,iframe{max-width:100%;}
a{text-decoration:none;}

/* ------------------------------------------------------------
   1) PUBLIC HEADER: compact, predictable, no vertical menu drift
------------------------------------------------------------- */
body:not(.admin-body) > header,
.site-header,.public-header,.ash-header,.v47-header,.v46-header,.top-header,.main-header{
  min-height:78px!important;
  height:auto!important;
  padding:0!important;
  background:linear-gradient(90deg,#063a27,#0d4c34)!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.12)!important;
  position:sticky!important;
  top:0!important;
  z-index:999!important;
}

.header-inner,.public-header-inner,.ash-header-inner,.v47-header-inner,.nav-shell,.topbar-inner,.main-header .container,header .container{
  width:min(100%,1760px)!important;
  margin-inline:auto!important;
  min-height:78px!important;
  padding:0 clamp(18px,3vw,42px)!important;
  display:grid!important;
  grid-template-columns:minmax(130px,190px) minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:clamp(14px,1.6vw,28px)!important;
}

.logo,.brand,.site-logo,.public-logo,.ash-logo,header .logo,header .brand{
  display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important;
}
.logo img,.brand img,.site-logo img,.public-logo img,.ash-logo img,header img.logo,header .logo img,header .brand img{
  display:block!important;max-width:170px!important;width:auto!important;height:auto!important;max-height:58px!important;object-fit:contain!important;
}

.nav,.site-nav,.public-nav,.main-nav,.ash-nav,.v47-nav,header nav,header .menu,header .nav-menu{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:clamp(10px,1.1vw,18px)!important;
  flex-wrap:nowrap!important;
  white-space:nowrap!important;
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  opacity:1!important;
  visibility:visible!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
}
.nav a,.site-nav a,.public-nav a,.main-nav a,.ash-nav a,.v47-nav a,header nav a,header .menu a,header .nav-menu a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:38px!important;
  padding:8px 3px!important;
  color:#fff!important;
  font-size:clamp(13px,.86vw,16px)!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:-.02em!important;
  text-shadow:none!important;
}
.nav a.active,.site-nav a.active,.public-nav a.active,.main-nav a.active,header nav a.active,
.nav a:hover,.site-nav a:hover,.public-nav a:hover,.main-nav a:hover,header nav a:hover{color:var(--ash-gold)!important;}

.header-actions,.public-actions,.ash-actions,.v47-actions,header .actions,header .nav-actions{
  display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;min-width:max-content!important;
}
.header-actions .btn,.public-actions .btn,.ash-actions .btn,header .actions .btn,header .nav-actions .btn,
header a[href*="login"],header a[href*="logout"],header a[href*="register"],header a[href*="dashboard"]{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:44px!important;border-radius:999px!important;padding:0 20px!important;font-weight:900!important;
}
header a[href*="register"],header .join-btn,header .btn-join{background:var(--ash-gold)!important;color:#201812!important;box-shadow:0 12px 34px rgba(244,200,74,.24)!important;}
header a[href*="logout"],header .logout-btn{background:var(--ash-gold)!important;color:#201812!important;}
header a[href*="login"],header a[href*="dashboard"]{color:#fff!important;background:transparent!important;}
header .icon-btn,.header-actions .icon-btn,.public-actions .icon-btn,.ash-actions .icon-btn{
  width:46px!important;height:46px!important;min-width:46px!important;border-radius:16px!important;padding:0!important;
  border:1px solid rgba(255,255,255,.18)!important;background:rgba(255,255,255,.06)!important;color:#fff!important;
}

/* More dropdown readable and anchored */
.more-menu,.more-dropdown,.dropdown-menu,.nav-more-menu,.ash-more-menu{
  position:absolute!important;top:calc(100% + 12px)!important;right:0!important;left:auto!important;z-index:1002!important;
  min-width:230px!important;padding:12px!important;border-radius:22px!important;
  background:#fffaf0!important;border:1px solid var(--ash-border)!important;box-shadow:var(--ash-shadow)!important;
  color:var(--ash-ink)!important;opacity:0;visibility:hidden;transform:translateY(8px)!important;pointer-events:none!important;
}
.more:hover .more-menu,.more:focus-within .more-menu,
.nav-more:hover .nav-more-menu,.nav-more:focus-within .nav-more-menu,
.dropdown:hover .dropdown-menu,.dropdown:focus-within .dropdown-menu,
.has-dropdown:hover .dropdown-menu,.has-dropdown:focus-within .dropdown-menu{
  opacity:1!important;visibility:visible!important;transform:translateY(0)!important;pointer-events:auto!important;
}
.more-menu a,.more-dropdown a,.dropdown-menu a,.nav-more-menu a,.ash-more-menu a{
  display:flex!important;width:100%!important;color:var(--ash-ink)!important;justify-content:flex-start!important;padding:12px 14px!important;border-radius:14px!important;font-size:15px!important;
}
.more-menu a:hover,.more-dropdown a:hover,.dropdown-menu a:hover,.nav-more-menu a:hover,.ash-more-menu a:hover{background:#f2e3c9!important;color:var(--ash-ink)!important;}

/* Hide nav before it wraps badly; drawer takes over */
.menu-toggle,.mobile-menu-toggle,.hamburger,.nav-toggle,.ash-menu-toggle{
  display:none!important;align-items:center!important;justify-content:center!important;
  width:48px!important;height:48px!important;border-radius:16px!important;border:1px solid rgba(255,255,255,.18)!important;
  background:rgba(255,255,255,.07)!important;color:#fff!important;font-size:24px!important;
}

@media (max-width:1280px){
  .header-inner,.public-header-inner,.ash-header-inner,.v47-header-inner,.nav-shell,.topbar-inner,.main-header .container,header .container{
    grid-template-columns:150px 1fr auto!important;padding-inline:22px!important;gap:14px!important;
  }
  .nav,.site-nav,.public-nav,.main-nav,.ash-nav,.v47-nav,header nav,header .menu,header .nav-menu{gap:10px!important;}
  .nav a,.site-nav a,.public-nav a,.main-nav a,.ash-nav a,.v47-nav a,header nav a{font-size:13px!important;}
  header .icon-btn,.header-actions .icon-btn,.public-actions .icon-btn,.ash-actions .icon-btn{width:42px!important;height:42px!important;min-width:42px!important;}
  header a[href*="register"],header a[href*="logout"],header .join-btn{padding-inline:16px!important;}
}
@media (max-width:1080px){
  .nav,.site-nav,.public-nav,.main-nav,.ash-nav,.v47-nav,header nav,header .menu,header .nav-menu{display:none!important;}
  .menu-toggle,.mobile-menu-toggle,.hamburger,.nav-toggle,.ash-menu-toggle{display:inline-flex!important;}
  .header-inner,.public-header-inner,.ash-header-inner,.v47-header-inner,.nav-shell,.topbar-inner,.main-header .container,header .container{
    grid-template-columns:1fr auto!important;min-height:76px!important;
  }
  header .logo,header .brand{justify-self:start!important;}
}
@media (max-width:680px){
  body:not(.admin-body)>header,.site-header,.public-header,.ash-header,.v47-header,.v46-header,.top-header,.main-header{min-height:70px!important;}
  .header-inner,.public-header-inner,.ash-header-inner,.v47-header-inner,.nav-shell,.topbar-inner,.main-header .container,header .container{min-height:70px!important;padding-inline:14px!important;}
  .logo img,.brand img,.site-logo img,.public-logo img,.ash-logo img,header .logo img,header .brand img{max-width:145px!important;max-height:48px!important;}
  header a[href*="login"],header a[href*="dashboard"]{display:none!important;}
  header a[href*="register"],header a[href*="logout"],header .join-btn{min-height:42px!important;padding-inline:14px!important;font-size:14px!important;}
  header .icon-btn,.header-actions .icon-btn,.public-actions .icon-btn,.ash-actions .icon-btn{width:40px!important;height:40px!important;min-width:40px!important;}
}

/* Mobile drawer created/controlled by v48 JS, and supports existing nav when class toggled */
.v48-drawer{
  position:fixed;inset:0 0 0 auto;width:min(88vw,390px);height:100vh;z-index:5000;
  background:linear-gradient(155deg,#063a27,#0f5137);box-shadow:-22px 0 70px rgba(0,0,0,.32);
  transform:translateX(110%);transition:transform .28s ease;padding:22px;overflow-y:auto;color:#fff;
}
body.v48-menu-open .v48-drawer{transform:translateX(0);}
.v48-drawer a{display:flex;color:#fff!important;padding:15px 12px;border-bottom:1px solid rgba(255,255,255,.11);font-weight:900;font-size:16px;}
.v48-drawer a:hover{color:var(--ash-gold)!important;background:rgba(255,255,255,.06);border-radius:12px;}
.v48-drawer-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;font-weight:900;color:var(--ash-gold);}
.v48-drawer-close{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;border-radius:14px;width:44px;height:44px;font-size:24px;}
.v48-overlay{position:fixed;inset:0;z-index:4999;background:rgba(0,0,0,.38);opacity:0;visibility:hidden;transition:.25s ease;}
body.v48-menu-open .v48-overlay{opacity:1;visibility:visible;}
body.v48-menu-open{overflow:hidden;}

/* ------------------------------------------------------------
   2) PUBLIC PAGES: reduce vertical gaps, keep hero premium
------------------------------------------------------------- */
.hero,.home-hero,.public-hero,.ash-hero,.page-hero,.market-hero,.v43-hero,.v44-hero,.v45-hero,.v46-hero,.v47-hero{
  min-height:auto!important;
  padding:clamp(46px,6vw,90px) clamp(18px,5vw,70px)!important;
  margin:0!important;
}
.hero h1,.home-hero h1,.public-hero h1,.ash-hero h1,.page-hero h1,.market-hero h1{
  font-size:clamp(48px,7.1vw,112px)!important;line-height:.88!important;letter-spacing:-.07em!important;max-width:980px!important;margin:0 0 22px!important;
}
.hero p,.home-hero p,.public-hero p,.page-hero p,.lead,.subtitle{
  font-size:clamp(17px,1.55vw,25px)!important;line-height:1.45!important;max-width:850px!important;margin-top:0!important;
}
.section,.public-section,.ash-section,section{padding-top:clamp(42px,5vw,76px)!important;padding-bottom:clamp(42px,5vw,76px)!important;}
.section-title,h2{line-height:.95!important;letter-spacing:-.055em!important;}
.container,.wrap,.page-wrap,.public-wrap,.ash-container{width:min(100% - 36px,1640px)!important;margin-inline:auto!important;}

/* Compact cards and grids */
.card,.ash-card,.glass-card,.story-card,.metric-card,.stat-card,.feature-card,.product-card,.artisan-card,.portfolio-card{
  border:1px solid var(--ash-border)!important;border-radius:var(--ash-radius-lg)!important;box-shadow:var(--ash-shadow-soft)!important;background:rgba(255,250,240,.94)!important;overflow:hidden!important;
}
.grid,.cards-grid,.product-grid,.artisan-grid,.portfolio-grid,.metrics-grid,.stats-grid{
  display:grid!important;gap:clamp(16px,2vw,28px)!important;align-items:stretch!important;
}
.product-grid,.products-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))!important;}
.artisan-grid,.artisans-grid,.portfolio-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))!important;}
.metrics-grid,.stats-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;}
.product-card{min-height:0!important;display:flex!important;flex-direction:column!important;}
.product-card img,.product-card .product-image img,.product-card .image img,.piece-card img,.catalogue-card img{
  width:100%!important;height:clamp(190px,18vw,280px)!important;object-fit:cover!important;object-position:center!important;display:block!important;
}
.product-card .content,.product-card .body,.piece-card .content,.catalogue-card .content{padding:18px 20px!important;display:flex!important;flex-direction:column!important;gap:10px!important;}
.product-card h3,.piece-card h3,.catalogue-card h3{font-size:clamp(20px,1.6vw,27px)!important;line-height:1.02!important;margin:0!important;letter-spacing:-.04em!important;}
.product-card .price,.piece-card .price{font-size:clamp(24px,2vw,34px)!important;line-height:1!important;margin:8px 0!important;}
.product-card .actions,.piece-card .actions,.card-actions{margin-top:auto!important;display:flex!important;gap:8px!important;align-items:center!important;}
.product-card .actions a,.product-card .actions button,.piece-card .actions a,.piece-card .actions button,.card-actions a,.card-actions button{flex:1!important;min-height:42px!important;border-radius:999px!important;}

/* Fix loose text when classes are missing */
button,.btn,input[type="submit"],.button,a.button,.primary-btn,.secondary-btn,.outline-btn{
  min-height:44px;border-radius:999px;font-weight:900;border:1px solid var(--ash-border);padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1;
}
.btn-primary,.primary-btn,button[type="submit"],input[type="submit"]{background:var(--ash-green)!important;color:#fff!important;border-color:transparent!important;}
.btn-gold,.accent-btn,.join-btn{background:var(--ash-gold)!important;color:#251a10!important;border-color:transparent!important;}
.btn-clay{background:var(--ash-clay)!important;color:#fff!important;border-color:transparent!important;}

form{max-width:100%;}
input,select,textarea{
  max-width:100%!important;border:1px solid var(--ash-border)!important;border-radius:16px!important;background:#fffdf7!important;
  min-height:48px!important;padding:12px 16px!important;font:inherit!important;color:#201812!important;
}
textarea{min-height:120px!important;}
label{font-weight:900!important;color:var(--ash-ink)!important;display:block!important;margin-bottom:8px!important;}
.form-grid,.fields-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;align-items:start!important;}
@media(max-width:760px){.form-grid,.fields-grid{grid-template-columns:1fr!important;}}

/* ------------------------------------------------------------
   3) DASHBOARD / ADMIN / CLIENT: compact working area
------------------------------------------------------------- */
body:has(.dashboard-sidebar),body:has(.admin-sidebar),body:has(.client-sidebar),body.dashboard-body,body.admin-body,body.client-body{
  background:linear-gradient(120deg,#fff8ed,#f6ead4)!important;
}
.dashboard-layout,.dash-layout,.admin-layout,.client-layout,.portal-layout,.app-shell,.dashboard-shell{
  display:grid!important;grid-template-columns:var(--ash-sidebar) minmax(0,1fr)!important;align-items:start!important;min-height:100vh!important;
}
.sidebar,.dashboard-sidebar,.admin-sidebar,.client-sidebar,.portal-sidebar,aside.sidebar,aside.dashboard-sidebar,aside.admin-sidebar{
  width:var(--ash-sidebar)!important;min-width:var(--ash-sidebar)!important;max-width:var(--ash-sidebar)!important;
  padding:20px 14px!important;position:sticky!important;top:0!important;height:100vh!important;overflow-y:auto!important;z-index:50!important;
  background:linear-gradient(180deg,#063a27 0%,#06371f 100%)!important;
}
.sidebar .logo,.dashboard-sidebar .logo,.admin-sidebar .logo,.client-sidebar .logo{margin-bottom:28px!important;}
.sidebar .logo img,.dashboard-sidebar .logo img,.admin-sidebar .logo img,.client-sidebar .logo img{max-width:150px!important;}
.sidebar h4,.dashboard-sidebar h4,.admin-sidebar h4,.client-sidebar h4,.menu-section-title{
  font-size:12px!important;letter-spacing:.24em!important;color:var(--ash-gold)!important;margin:24px 12px 10px!important;text-transform:uppercase!important;
}
.sidebar a,.dashboard-sidebar a,.admin-sidebar a,.client-sidebar a,.portal-sidebar a{
  min-height:40px!important;padding:10px 12px!important;margin:3px 0!important;border-radius:14px!important;
  font-size:15px!important;line-height:1.1!important;font-weight:900!important;color:#fff!important;display:flex!important;align-items:center!important;gap:8px!important;
}
.sidebar a.active,.dashboard-sidebar a.active,.admin-sidebar a.active,.client-sidebar a.active,
.sidebar a:hover,.dashboard-sidebar a:hover,.admin-sidebar a:hover,.client-sidebar a:hover{
  background:rgba(255,255,255,.13)!important;color:var(--ash-gold)!important;
}
.sidebar .promo,.dashboard-sidebar .promo,.admin-sidebar .promo{display:none!important;}

.main,.dashboard-main,.dash-main,.admin-main,.client-main,.portal-main,main.dashboard-main,main.admin-main{
  min-width:0!important;width:100%!important;max-width:none!important;margin:0!important;padding:clamp(22px,2.6vw,40px)!important;
}
.main > .container,.dashboard-main > .container,.dash-main > .container,.admin-main > .container,.client-main > .container,.portal-main > .container{
  width:min(100%,1480px)!important;margin-inline:auto!important;padding:0!important;
}

.dashboard-hero,.studio-hero,.creator-hero,.portal-hero,.admin-hero,.client-hero,.dash-hero,.welcome-card,.hero-card{
  min-height:0!important;margin:0 0 24px!important;padding:clamp(26px,3.2vw,52px)!important;border-radius:28px!important;
  display:grid!important;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr)!important;gap:clamp(20px,3vw,46px)!important;align-items:center!important;
  background:rgba(255,250,240,.92)!important;border:1px solid var(--ash-border)!important;box-shadow:var(--ash-shadow-soft)!important;
}
.dashboard-hero h1,.studio-hero h1,.creator-hero h1,.portal-hero h1,.admin-hero h1,.client-hero h1,.dash-hero h1,.welcome-card h1,.hero-card h1{
  font-size:clamp(48px,5.2vw,84px)!important;line-height:.9!important;letter-spacing:-.07em!important;margin:0 0 16px!important;
}
.dashboard-hero p,.studio-hero p,.creator-hero p,.portal-hero p,.admin-hero p,.client-hero p,.dash-hero p,.welcome-card p,.hero-card p{
  font-size:clamp(17px,1.4vw,22px)!important;line-height:1.42!important;margin:0 0 20px!important;max-width:760px!important;
}
.dashboard-hero .actions,.studio-hero .actions,.creator-hero .actions,.portal-hero .actions,.admin-hero .actions,.hero-actions{
  display:flex!important;flex-wrap:wrap!important;gap:12px!important;margin-top:10px!important;
}
.readiness-card,.strength-card,.score-card,.profile-score,.hero-score{
  min-height:220px!important;border-radius:26px!important;background:linear-gradient(135deg,#063f2a,#09633f)!important;color:#fff!important;padding:26px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;
}
.readiness-card strong,.strength-card strong,.score-card strong,.profile-score strong,.hero-score strong{font-size:clamp(54px,5vw,80px)!important;line-height:1!important;color:var(--ash-gold)!important;}

.dashboard-cards,.dash-cards,.summary-cards,.kpi-grid,.quick-stats,.stats-row{
  display:grid!important;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;gap:16px!important;margin:0 0 22px!important;
}
.dashboard-cards .card,.dash-cards .card,.summary-cards .card,.kpi-grid .card,.quick-stats .card,.stat-card,.metric-card{
  min-height:132px!important;padding:22px!important;border-radius:22px!important;
}
.dashboard-cards h3,.dash-cards h3,.summary-cards h3,.metric-card h3,.stat-card h3{font-size:16px!important;line-height:1.1!important;margin:0 0 12px!important;color:rgba(8,47,33,.72)!important;letter-spacing:0!important;}
.dashboard-cards .num,.dash-cards .num,.summary-cards .num,.metric-card .num,.stat-card .num,.metric-value{
  font-size:clamp(32px,3vw,46px)!important;line-height:1!important;font-weight:900!important;color:var(--ash-green)!important;
}

.quick-actions,.action-strip,.action-grid,.studio-actions{
  display:grid!important;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;gap:14px!important;margin:0 0 24px!important;
}
.quick-actions a,.action-strip a,.action-grid a,.studio-actions a{
  min-height:76px!important;border-radius:24px!important;padding:18px!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;font-size:18px!important;font-weight:900!important;
}

.dashboard-section,.dash-section,.admin-section,.client-section,.panel,.module-card,.table-card,.form-card{
  margin:0 0 24px!important;padding:clamp(22px,2.6vw,34px)!important;border-radius:26px!important;background:rgba(255,250,240,.94)!important;border:1px solid var(--ash-border)!important;box-shadow:var(--ash-shadow-soft)!important;
}
.dashboard-section h2,.dash-section h2,.admin-section h2,.client-section h2,.panel h2,.module-card h2,.table-card h2,.form-card h2{
  font-size:clamp(34px,3.4vw,58px)!important;margin:0 0 18px!important;
}

/* Dashboard product cards should not create long empty scroll */
.dashboard-main .product-grid,.dash-main .product-grid,.portal-main .product-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;}
.dashboard-main .product-card img,.dash-main .product-card img,.portal-main .product-card img{height:210px!important;}
.dashboard-main .product-card,.dash-main .product-card{min-height:0!important;}

/* Tables compact and scrollable */
table{width:100%!important;border-collapse:separate!important;border-spacing:0 8px!important;}
th,td{padding:12px 14px!important;text-align:left!important;vertical-align:middle!important;}
th{font-size:12px!important;text-transform:uppercase!important;letter-spacing:.12em!important;color:rgba(8,47,33,.65)!important;}
td{background:rgba(255,255,255,.65)!important;border-top:1px solid var(--ash-border)!important;border-bottom:1px solid var(--ash-border)!important;}
td:first-child{border-left:1px solid var(--ash-border)!important;border-radius:14px 0 0 14px!important;}
td:last-child{border-right:1px solid var(--ash-border)!important;border-radius:0 14px 14px 0!important;}
.table-responsive,.table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;}

/* Older pages with naked text/forms get contained */
.auth-page main,.login-page main,.register-page main,
main:has(form[action*="login"]),main:has(form[action*="register"]){
  width:min(100% - 36px,1280px)!important;margin-inline:auto!important;padding:clamp(42px,6vw,84px) 0!important;
}
.auth-card,.login-card,.register-card,main:has(form[action*="login"]) form,main:has(form[action*="register"]) form{
  background:rgba(255,250,240,.94)!important;border:1px solid var(--ash-border)!important;border-radius:28px!important;box-shadow:var(--ash-shadow)!important;padding:clamp(22px,3vw,42px)!important;
}

/* ------------------------------------------------------------
   4) RESPONSIVE PORTAL BEHAVIOUR
------------------------------------------------------------- */
@media (max-width:1180px){
  :root{--ash-sidebar:214px;}
  .main,.dashboard-main,.dash-main,.admin-main,.client-main,.portal-main,main.dashboard-main,main.admin-main{padding:24px!important;}
  .dashboard-hero,.studio-hero,.creator-hero,.portal-hero,.admin-hero,.client-hero,.dash-hero,.welcome-card,.hero-card{grid-template-columns:1fr!important;}
  .readiness-card,.strength-card,.score-card,.profile-score,.hero-score{min-height:170px!important;}
}
@media (max-width:900px){
  .dashboard-layout,.dash-layout,.admin-layout,.client-layout,.portal-layout,.app-shell,.dashboard-shell{display:block!important;}
  .sidebar,.dashboard-sidebar,.admin-sidebar,.client-sidebar,.portal-sidebar,aside.sidebar,aside.dashboard-sidebar,aside.admin-sidebar{
    position:relative!important;width:100%!important;max-width:none!important;min-width:0!important;height:auto!important;max-height:none!important;
    padding:14px!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;overflow:visible!important;
  }
  .sidebar .logo,.dashboard-sidebar .logo,.admin-sidebar .logo,.client-sidebar .logo{grid-column:1/-1!important;margin:0 0 10px!important;}
  .sidebar h4,.dashboard-sidebar h4,.admin-sidebar h4,.client-sidebar h4,.menu-section-title{grid-column:1/-1!important;margin:14px 6px 4px!important;}
  .sidebar a,.dashboard-sidebar a,.admin-sidebar a,.client-sidebar a,.portal-sidebar a{font-size:14px!important;min-height:42px!important;margin:0!important;padding:10px!important;}
  .main,.dashboard-main,.dash-main,.admin-main,.client-main,.portal-main,main.dashboard-main,main.admin-main{padding:18px!important;}
  .dashboard-hero h1,.studio-hero h1,.creator-hero h1,.portal-hero h1,.admin-hero h1,.client-hero h1,.dash-hero h1,.welcome-card h1,.hero-card h1{font-size:clamp(42px,12vw,64px)!important;}
}
@media (max-width:560px){
  .hero,.home-hero,.public-hero,.ash-hero,.page-hero,.market-hero,.v43-hero,.v44-hero,.v45-hero,.v46-hero,.v47-hero{padding:36px 16px!important;}
  .hero h1,.home-hero h1,.public-hero h1,.ash-hero h1,.page-hero h1,.market-hero h1{font-size:clamp(40px,15vw,64px)!important;}
  .hero-card,.dashboard-hero,.studio-hero,.creator-hero,.portal-hero,.admin-hero,.client-hero,.dash-hero,.welcome-card{padding:22px!important;border-radius:24px!important;margin-bottom:18px!important;}
  .dashboard-cards,.dash-cards,.summary-cards,.kpi-grid,.quick-stats,.stats-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;}
  .dashboard-cards .card,.dash-cards .card,.summary-cards .card,.kpi-grid .card,.quick-stats .card,.stat-card,.metric-card{min-height:116px!important;padding:16px!important;}
  .quick-actions,.action-strip,.action-grid,.studio-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
  .quick-actions a,.action-strip a,.action-grid a,.studio-actions a{min-height:64px!important;font-size:15px!important;border-radius:18px!important;}
  .sidebar,.dashboard-sidebar,.admin-sidebar,.client-sidebar,.portal-sidebar,aside.sidebar,aside.dashboard-sidebar,aside.admin-sidebar{grid-template-columns:1fr 1fr!important;}
  .product-grid,.products-grid,.artisan-grid,.artisans-grid,.portfolio-grid{grid-template-columns:1fr!important;}
  .product-card img,.piece-card img,.catalogue-card img{height:230px!important;}
  .section,.public-section,.ash-section,section{padding-top:34px!important;padding-bottom:34px!important;}
}

/* ------------------------------------------------------------
   5) MICRO FIXES FOR CLASSES SEEN IN CURRENT BUILD
------------------------------------------------------------- */
.catalogue-preview,.catalog-preview,.my-pieces,.pieces-preview{margin-top:24px!important;}
.catalogue-preview h2,.catalog-preview h2,.my-pieces h2,.pieces-preview h2{margin-bottom:18px!important;}
.share-link-box,.portfolio-link-box,.copy-link-box{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:12px!important;align-items:center!important;}
.share-link-box input,.portfolio-link-box input,.copy-link-box input{width:100%!important;min-width:0!important;}
.badge,.pill,.tag{border-radius:999px!important;padding:8px 12px!important;display:inline-flex!important;align-items:center!important;gap:6px!important;font-weight:900!important;line-height:1!important;}
.empty-state{padding:28px!important;border-radius:24px!important;background:rgba(255,255,255,.55)!important;border:1px dashed var(--ash-border)!important;text-align:center!important;}

/* Make icons/logos never create huge blank blocks */
.icon,.card-icon,.metric-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:42px!important;height:42px!important;border-radius:14px!important;background:#f3ead8!important;}

/* Prevent old absolute elements from floating into content */
.floating-menu,.orphan-menu,.ghost-menu{display:none!important;}
