@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

:root{
  --ubx-bg:#f6f8fc;
  --ubx-card:#ffffff;
  --ubx-card-soft:rgba(255,255,255,.88);
  --ubx-text:#1d2636;
  --ubx-strong:#101827;
  --ubx-muted:#667085;
  --ubx-faint:#8a94a6;
  --ubx-line:rgba(16,24,39,.085);
  --ubx-line2:rgba(16,24,39,.14);
  --ubx-blue:#2f6df3;
  --ubx-blue2:#5c91ff;
  --ubx-green:#16a34a;
  --ubx-red:#e11d48;
  --ubx-shadow:0 18px 50px rgba(17,24,39,.10);
  --ubx-shadow-soft:0 10px 32px rgba(17,24,39,.075);
}

html{background:var(--ubx-bg);}
body.ubx-board-page{
  margin:0;
  min-height:100vh;
  color:var(--ubx-text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  background:
    radial-gradient(circle at 8% 0%,rgba(47,109,243,.13),transparent 25rem),
    radial-gradient(circle at 92% 12%,rgba(92,145,255,.11),transparent 22rem),
    linear-gradient(180deg,#f9fbff 0%,#f4f7fc 42%,#fff 100%);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

.ubx-shell{max-width:1120px;margin:0 auto;padding:22px 18px 38px;box-sizing:border-box;}
.ubx-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:4px 0 22px;}
.ubx-logo{display:inline-flex;align-items:baseline;text-decoration:none;color:var(--ubx-strong);font-size:38px;line-height:1;font-weight:800;letter-spacing:-.055em;}
.ubx-logo span{color:var(--ubx-blue);letter-spacing:-.06em;}
.ubx-nav{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;}
.ubx-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 14px;border-radius:999px;background:rgba(255,255,255,.78);border:1px solid var(--ubx-line);box-shadow:0 8px 18px rgba(15,23,42,.035);color:#1d2636;text-decoration:none;font-weight:750;font-size:13px;white-space:nowrap;}
.ubx-nav a.is-active{background:#1d2636;color:#fff;border-color:#1d2636;}

.ubx-hero{margin-bottom:14px;}
.ubx-hero-clean{display:block;}
.ubx-hero-main,.ubx-action-card,.ubx-filter-card,.ubx-compose,.ubx-empty,.ubx-post-card{background:var(--ubx-card-soft);border:1px solid rgba(255,255,255,.92);box-shadow:var(--ubx-shadow-soft);backdrop-filter:blur(18px);}
.ubx-hero-main{border-radius:28px;padding:25px 27px 27px;min-height:142px;box-sizing:border-box;position:relative;overflow:hidden;}
.ubx-hero-main::after{content:"";position:absolute;right:-60px;top:-72px;width:220px;height:220px;border-radius:50%;background:linear-gradient(135deg,rgba(47,109,243,.13),rgba(92,145,255,.04));pointer-events:none;}
.ubx-eyebrow{display:inline-flex;align-items:center;gap:7px;margin-bottom:10px;color:#3762be;font-size:11px;font-weight:800;letter-spacing:.055em;text-transform:uppercase;}
.ubx-eyebrow::before{content:"";width:7px;height:7px;border-radius:99px;background:linear-gradient(135deg,var(--ubx-blue),var(--ubx-blue2));box-shadow:0 0 0 5px rgba(47,109,243,.10);}
.ubx-hero h1{position:relative;margin:0;color:var(--ubx-strong);font-size:50px;line-height:1;font-weight:800;letter-spacing:-.065em;}
.ubx-hero p{position:relative;margin:13px 0 0;max-width:690px;color:#566275;font-size:18px;line-height:1.52;font-weight:450;letter-spacing:-.018em;}
.ubx-hero-side{display:none!important;}

.ubx-action-card{display:flex;align-items:center;justify-content:space-between;gap:18px;border-radius:24px;padding:16px 17px;margin-bottom:12px;}
.ubx-action-card-rich{align-items:flex-start;}
.ubx-action-copy{min-width:0;}
.ubx-action-card h2{margin:0;font-size:17px;line-height:1.2;font-weight:780;letter-spacing:-.03em;color:#1d2636;}
.ubx-action-card p{margin:5px 0 0;color:var(--ubx-muted);font-size:13px;line-height:1.4;font-weight:550;}
.ubx-action-controls{display:flex;flex-direction:column;align-items:flex-end;gap:9px;min-width:360px;}
.ubx-starter-row{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;}
.ubx-start-pill{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 12px;border-radius:999px;background:#f7f9fd;border:1px solid var(--ubx-line);color:#344054;text-decoration:none;font:inherit;font-size:12.5px;font-weight:720;cursor:pointer;white-space:nowrap;}
.ubx-start-pill:active{transform:translateY(1px);}

.ubx-primary,.ubx-secondary,.board-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border-radius:999px;border:0;text-decoration:none;font:inherit;font-size:13.5px;font-weight:760;cursor:pointer;white-space:nowrap;box-sizing:border-box;}
.ubx-primary,.board-btn:not(.board-btn-ghost):not(.board-btn-danger){background:linear-gradient(135deg,#3978ff,#2563eb);color:#fff;box-shadow:0 10px 24px rgba(37,99,235,.22);}
.ubx-secondary,.board-btn-ghost{background:#f6f8fb;color:#263244;border:1px solid var(--ubx-line2);box-shadow:none;}
.board-btn-danger{background:#fff1f2;color:#be123c;border:1px solid rgba(244,63,94,.24);box-shadow:none;}
.ubx-primary:active,.board-btn:active{transform:translateY(1px);}

.ubx-flash{margin:0 0 12px;padding:12px 14px;border-radius:17px;font-size:13px;font-weight:760;}
.ubx-flash.ok{background:#ecfdf5;border:1px solid rgba(22,163,74,.18);color:#166534;}
.ubx-flash.bad{background:#fff1f2;border:1px solid rgba(244,63,94,.22);color:#be123c;}

.ubx-filter-card{display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:22px;padding:11px 12px;margin:0 0 12px;}
.ubx-filter-summary{display:flex;min-width:0;align-items:center;gap:10px;}
.ubx-filter-icon{width:36px;height:36px;border-radius:13px;background:#eff4ff;color:var(--ubx-blue);display:grid;place-items:center;font-weight:900;flex:0 0 auto;}
.ubx-filter-title{font-size:11.5px;color:var(--ubx-muted);font-weight:760;line-height:1.1;}
.ubx-filter-value{font-size:14px;color:#1d2636;font-weight:780;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ubx-filter-open{min-width:106px;}
.ubx-quick-tabs{display:flex;gap:7px;overflow:auto;padding:0 0 3px;margin:0 0 15px;scrollbar-width:none;}
.ubx-quick-tabs::-webkit-scrollbar{display:none;}
.ubx-quick-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:33px;padding:0 13px;border-radius:999px;background:rgba(255,255,255,.78);border:1px solid var(--ubx-line);color:#4f5b6e;text-decoration:none;font-weight:730;font-size:12.5px;white-space:nowrap;}
.ubx-quick-tabs a.is-active{background:#1d2636;color:#fff;border-color:#1d2636;}

.ubx-compose{display:none;border-radius:24px;padding:18px;margin:0 0 18px;}
.ubx-compose.is-open{display:block;}
.ubx-compose-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:14px;}
.ubx-compose h2{margin:0;font-size:23px;line-height:1.08;letter-spacing:-.045em;}
.ubx-compose p{margin:6px 0 0;color:var(--ubx-muted);font-size:13px;font-weight:550;}
.ubx-close{width:38px;height:38px;border-radius:999px;border:1px solid var(--ubx-line2);background:#fff;color:var(--ubx-text);font-weight:900;font-size:20px;cursor:pointer;}
.ubx-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.ubx-form .full{grid-column:1/-1;}
.ubx-form label{display:block;margin:0 0 6px;color:#344054;font-size:12px;font-weight:780;}
.ubx-form input,.ubx-form textarea,.ubx-form select{width:100%;box-sizing:border-box;border:1px solid rgba(16,24,39,.12);border-radius:15px;background:#fff;padding:12px 13px;color:var(--ubx-text);font:inherit;font-size:14px;font-weight:550;outline:none;}
.ubx-form input:focus,.ubx-form textarea:focus,.ubx-form select:focus{border-color:rgba(47,109,243,.55);box-shadow:0 0 0 4px rgba(47,109,243,.10);}
.ubx-form textarea{min-height:126px;resize:vertical;line-height:1.5;}
.ubx-note{margin:7px 0 0;color:var(--ubx-muted);font-size:12px;line-height:1.45;font-weight:550;}
.ubx-file-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.ubx-file-pick{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 13px;border-radius:999px;background:#f6f8fb;border:1px solid var(--ubx-line2);color:var(--ubx-text);font-size:13px;font-weight:740;cursor:pointer;}
.ubx-file-pick input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;}
.ubx-file-name{color:var(--ubx-muted);font-size:12px;font-weight:650;}
.ubx-current-media{display:flex;gap:8px;overflow:auto;margin-top:8px;padding-bottom:4px;}
.ubx-current-media img,.ubx-current-media video{width:88px;height:66px;border-radius:14px;object-fit:cover;border:1px solid var(--ubx-line);background:#e5e7eb;}
.ubx-form-actions{display:flex;gap:9px;flex-wrap:wrap;align-items:center;}

.ubx-feed{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:16px;align-items:start;}
.ubx-post-card{border-radius:24px;overflow:hidden;box-shadow:var(--ubx-shadow);border-color:rgba(255,255,255,.96);position:relative;background:#fff;}
.ubx-post-body{padding:15px 16px 16px;}
.ubx-community-card .ubx-post-body{padding-bottom:13px;}
.ubx-post-kicker{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:9px;}
.ubx-post-kicker-soft{justify-content:flex-start;margin:10px 0 8px;}
.ubx-badge{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#edf4ff;color:#2459c9;font-size:11.5px;font-weight:780;line-height:1;white-space:nowrap;}
.ubx-badge.hiring{background:#fff4e5;color:#b45309;}
.ubx-badge.community{background:#f0fdf4;color:#15803d;}
.ubx-post-meta{color:var(--ubx-muted);font-size:11.5px;font-weight:650;line-height:1.35;text-align:right;}
.ubx-post-tools{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;}
.ubx-post-card h2{margin:0;color:var(--ubx-strong);font-size:22px;line-height:1.13;font-weight:780;letter-spacing:-.045em;overflow-wrap:anywhere;}
.ubx-post-text{margin:9px 0 0;color:#3f4a5d;font-size:14px;line-height:1.52;font-weight:450;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap;}
.ubx-detail-row{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px;}
.ubx-detail{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:0 9px;border-radius:999px;background:#f8fafc;border:1px solid rgba(16,24,39,.07);color:#526075;font-size:11.5px;font-weight:720;}
.ubx-contact-line{margin-top:10px;color:var(--ubx-muted);font-size:12.5px;font-weight:620;}
.ubx-contact-line strong{color:#344054;font-weight:760;}
.ubx-actions,.board-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:12px;}
.ubx-actions-bottom{padding:0 16px 16px;margin-top:0;}
.ubx-actions form,.board-actions form{display:inline-flex;margin:0;}

.ubx-social-head{display:flex;align-items:center;gap:10px;min-width:0;}
.ubx-avatar{width:38px;height:38px;border-radius:15px;background:linear-gradient(135deg,#e8f0ff,#f5f8ff);color:#2459c9;display:grid;place-items:center;font-size:15px;font-weight:800;box-shadow:inset 0 0 0 1px rgba(47,109,243,.10);flex:0 0 auto;}
.ubx-social-meta{min-width:0;display:flex;flex-direction:column;line-height:1.2;}
.ubx-social-meta strong{font-size:13px;color:#1d2636;font-weight:760;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ubx-social-meta span{margin-top:3px;color:var(--ubx-muted);font-size:12px;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

.ubx-card-menu{position:relative;margin-left:auto;flex:0 0 auto;}
.ubx-card-menu summary{list-style:none;width:34px;height:34px;border-radius:999px;background:#f6f8fb;border:1px solid var(--ubx-line);display:grid;place-items:center;cursor:pointer;color:#526075;font-size:15px;font-weight:900;line-height:1;}
.ubx-card-menu summary::-webkit-details-marker{display:none;}
.ubx-card-menu-pop{position:absolute;right:0;top:40px;z-index:25;width:146px;padding:7px;border-radius:16px;background:#fff;border:1px solid var(--ubx-line);box-shadow:0 18px 40px rgba(16,24,39,.16);}
.ubx-card-menu-pop a,.ubx-card-menu-pop button{display:flex;align-items:center;width:100%;min-height:36px;padding:0 10px;box-sizing:border-box;border:0;background:transparent;color:#263244;text-align:left;text-decoration:none;font:inherit;font-size:13px;font-weight:720;border-radius:11px;cursor:pointer;}
.ubx-card-menu-pop button{color:#be123c;}
.ubx-card-menu-pop a:hover,.ubx-card-menu-pop button:hover{background:#f6f8fb;}

.ubx-media-carousel{position:relative;background:#dbe4ef;overflow:hidden;}
.ubx-media-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:none;}
.ubx-media-track::-webkit-scrollbar{display:none;}
.ubx-media-slide{position:relative;flex:0 0 100%;height:0;padding:0 0 54%;margin:0;scroll-snap-align:start;background:#dbe4ef;}
.ubx-community-card .ubx-media-slide{padding-bottom:48%;}
.ubx-media-slide img,.ubx-media-slide video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
.ubx-media-count{position:absolute;left:10px;bottom:10px;z-index:3;display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 9px;border-radius:999px;background:rgba(17,24,39,.70);backdrop-filter:blur(8px);color:#fff;font-size:11.5px;font-weight:760;}
.ubx-media-expand{position:absolute;right:10px;bottom:10px;z-index:3;display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 10px;border-radius:999px;border:1px solid rgba(255,255,255,.58);background:rgba(255,255,255,.88);backdrop-filter:blur(8px);color:#1d2636;font-size:11.5px;font-weight:800;cursor:pointer;}
.ubx-media-dots{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);z-index:4;display:flex;gap:5px;padding:5px 7px;border-radius:999px;background:rgba(17,24,39,.22);backdrop-filter:blur(7px);}
.ubx-media-dot{width:6px;height:6px;border-radius:99px;border:0;padding:0;background:rgba(255,255,255,.56);cursor:pointer;}
.ubx-media-dot.is-active{width:16px;background:#fff;}
.ubx-play{position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-size:36px;text-shadow:0 6px 20px rgba(0,0,0,.35);pointer-events:none;}

.ubx-empty{grid-column:1/-1;border-radius:22px;padding:22px;color:#536174;font-size:18px;font-weight:720;border:1px dashed rgba(16,24,39,.15);}

.ubx-sheet{position:fixed;inset:0;z-index:99998;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(15,23,42,.22);backdrop-filter:blur(8px);}
.ubx-sheet.is-open{display:flex;}
.ubx-sheet-panel{width:min(620px,96vw);max-height:86vh;overflow:auto;background:#fff;border-radius:26px;padding:17px;box-shadow:0 30px 80px rgba(15,23,42,.28);box-sizing:border-box;animation:ubxSheetIn .18s ease-out;}
@keyframes ubxSheetIn{from{transform:translateY(18px);opacity:.8}to{transform:translateY(0);opacity:1}}
.ubx-sheet-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;}
.ubx-sheet h2{margin:0;font-size:23px;line-height:1.1;letter-spacing:-.05em;}
.ubx-sheet p{margin:5px 0 0;color:var(--ubx-muted);font-size:13px;font-weight:560;}
.ubx-filter-group{margin-top:16px;}
.ubx-filter-group h3{margin:0 0 9px;color:#475467;font-size:12px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;}
.ubx-sheet-chips{display:flex;gap:8px;flex-wrap:wrap;}
.ubx-sheet-chips a{display:inline-flex;align-items:center;justify-content:center;min-height:37px;padding:0 14px;border-radius:999px;background:#f7f9fc;border:1px solid rgba(16,24,39,.10);color:var(--ubx-text);font-size:13px;font-weight:730;text-decoration:none;}
.ubx-sheet-chips a.is-active{background:#1d2636;color:#fff;border-color:#1d2636;}

.ubx-lightbox{position:fixed;inset:0;background:rgba(2,6,23,.91);z-index:99999;display:none;align-items:center;justify-content:center;padding:18px;box-sizing:border-box;}
.ubx-lightbox.is-open{display:flex;}
.ubx-lightbox-inner{position:relative;width:min(1080px,96vw);height:min(82vh,760px);display:grid;grid-template-rows:minmax(0,1fr) auto;gap:10px;}
.ubx-lightbox-stage{background:#020617;border-radius:22px;overflow:hidden;display:grid;place-items:center;}
.ubx-lightbox-stage img,.ubx-lightbox-stage video{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;}
.ubx-lightbox-caption{color:#e5e7eb;font-size:13px;font-weight:700;text-align:center;}
.ubx-lightbox-close,.ubx-lightbox-prev,.ubx-lightbox-next{position:absolute;border:0;border-radius:999px;background:rgba(255,255,255,.92);color:#111827;font-weight:900;cursor:pointer;box-shadow:0 10px 22px rgba(0,0,0,.16);}
.ubx-lightbox-close{right:8px;top:8px;width:42px;height:42px;font-size:22px;}
.ubx-lightbox-prev,.ubx-lightbox-next{top:45%;width:44px;height:44px;font-size:26px;}
.ubx-lightbox-prev{left:8px;}.ubx-lightbox-next{right:8px;}

@media(min-width:901px){
  .ubx-nav a:hover,.ubx-quick-tabs a:hover,.ubx-sheet-chips a:hover,.ubx-secondary:hover,.board-btn-ghost:hover,.ubx-start-pill:hover{background:#eef4ff;border-color:rgba(47,109,243,.20);}
  .ubx-post-card{transition:transform .16s ease,box-shadow .16s ease;}
  .ubx-post-card:hover{transform:translateY(-2px);box-shadow:0 24px 70px rgba(31,41,55,.13);}
}

@media(max-width:900px){
  .ubx-shell{padding:18px 14px 30px;}
  .ubx-top{display:block;margin-bottom:16px;}
  .ubx-logo{font-size:44px;margin-bottom:14px;}
  .ubx-nav{justify-content:flex-start;gap:8px;}
  .ubx-nav a{min-height:39px;padding:0 15px;font-size:14px;}
  .ubx-hero{margin-bottom:12px;}
  .ubx-hero-main{border-radius:25px;padding:20px 21px 22px;min-height:auto;}
  .ubx-hero h1{font-size:40px;line-height:1;}
  .ubx-hero p{font-size:17px;line-height:1.48;margin-top:10px;}
  .ubx-action-card{align-items:stretch;flex-direction:column;border-radius:22px;padding:14px;margin-bottom:12px;gap:12px;}
  .ubx-action-card h2{font-size:16px;}
  .ubx-action-card p{font-size:12.5px;}
  .ubx-action-controls{min-width:0;width:100%;align-items:stretch;}
  .ubx-action-controls>.ubx-primary{width:100%;min-height:44px;}
  .ubx-starter-row{justify-content:flex-start;flex-wrap:nowrap;overflow:auto;padding-bottom:2px;scrollbar-width:none;}
  .ubx-starter-row::-webkit-scrollbar{display:none;}
  .ubx-start-pill{flex:0 0 auto;min-height:34px;}
  .ubx-filter-card{border-radius:21px;padding:10px 11px;}
  .ubx-filter-open{min-width:88px;width:auto;}
  .ubx-filter-value{font-size:13.5px;}
  .ubx-quick-tabs{margin-bottom:12px;}
  .ubx-compose{border-radius:22px;padding:15px;}
  .ubx-form{grid-template-columns:1fr;gap:11px;}
  .ubx-feed{grid-template-columns:1fr;gap:14px;}
  .ubx-post-card{border-radius:22px;}
  .ubx-post-body{padding:14px 15px 14px;}
  .ubx-post-card h2{font-size:22px;line-height:1.14;}
  .ubx-post-text{font-size:14px;line-height:1.5;-webkit-line-clamp:2;}
  .ubx-post-kicker{align-items:flex-start;}
  .ubx-post-meta{font-size:11.5px;max-width:160px;}
  .ubx-detail-row{margin-top:9px;}
  .ubx-actions{gap:7px;margin-top:11px;}
  .board-btn{min-height:36px;padding:0 13px;font-size:13px;}
  .ubx-actions-bottom{padding:0 15px 15px;}
  .ubx-media-slide{padding-bottom:52%;}
  .ubx-community-card .ubx-media-slide{padding-bottom:48%;}
  .ubx-media-expand{right:10px;bottom:10px;}
  .ubx-media-count{left:10px;bottom:10px;}
  .ubx-media-dots{bottom:11px;}
  .ubx-sheet{align-items:flex-end;padding:0;background:rgba(15,23,42,.30);}
  .ubx-sheet-panel{width:100%;max-height:80vh;border-radius:26px 26px 0 0;padding:17px 16px 26px;}
  .ubx-lightbox{padding:8px;}
  .ubx-lightbox-inner{width:100vw;height:88vh;}
  .ubx-lightbox-prev,.ubx-lightbox-next{display:none;}
}

@media(max-width:480px){
  .ubx-shell{padding:18px 13px 28px;}
  .ubx-logo{font-size:42px;}
  .ubx-nav a{min-height:38px;padding:0 14px;font-size:13.5px;}
  .ubx-hero-main{padding:19px 20px 21px;}
  .ubx-hero h1{font-size:38px;}
  .ubx-hero p{font-size:16px;}
  .ubx-post-card h2{font-size:21px;}
  .ubx-post-meta{max-width:145px;}
  .ubx-media-slide{padding-bottom:50%;}
  .ubx-community-card .ubx-media-slide{padding-bottom:47%;}
}

/* === Premium boards v3: clearer navigation, richer job intent, cleaner media === */
:root{
  --ubx-bg:#f3f6fb;
  --ubx-text:#243041;
  --ubx-strong:#172033;
  --ubx-muted:#6b7688;
  --ubx-faint:#98a2b3;
  --ubx-blue:#326dff;
  --ubx-blue2:#6ea8ff;
  --ubx-ink:#172033;
  --ubx-shadow:0 16px 44px rgba(26,39,68,.095);
  --ubx-shadow-soft:0 10px 30px rgba(26,39,68,.065);
}
body.ubx-board-page{
  color:var(--ubx-text);
  background:
    radial-gradient(circle at 12% -6%,rgba(50,109,255,.16),transparent 24rem),
    radial-gradient(circle at 88% 6%,rgba(110,168,255,.12),transparent 22rem),
    linear-gradient(180deg,#f8fbff 0%,#f2f6fb 48%,#fff 100%);
}
.ubx-logo{color:#182234;font-weight:820;letter-spacing:-.065em;}
.ubx-logo span{background:linear-gradient(135deg,#2563eb,#60a5fa);-webkit-background-clip:text;background-clip:text;color:transparent;}
.ubx-nav a{background:rgba(255,255,255,.72);color:#263247;border-color:rgba(26,39,68,.08);font-weight:760;box-shadow:0 7px 18px rgba(26,39,68,.045);}
.ubx-nav a.is-active{background:linear-gradient(135deg,#172033,#253147);border-color:#172033;color:#fff;box-shadow:0 12px 26px rgba(23,32,51,.18);}
.ubx-hero-main,.ubx-action-card,.ubx-filter-card,.ubx-compose,.ubx-empty,.ubx-post-card{background:rgba(255,255,255,.90);border-color:rgba(255,255,255,.95);}
.ubx-eyebrow{color:#3567d3;}
.ubx-hero h1,.ubx-action-card h2,.ubx-compose h2,.ubx-sheet h2,.ubx-post-card h2{color:#172033;}
.ubx-hero p,.ubx-action-card p,.ubx-compose p,.ubx-post-text{color:#5d697a;}
.ubx-primary,.board-btn:not(.board-btn-ghost):not(.board-btn-danger){background:linear-gradient(135deg,#2f74ff,#2b5fe8);box-shadow:0 12px 26px rgba(43,95,232,.24);}
.ubx-secondary,.board-btn-ghost{background:#f8fafc;color:#253046;border-color:rgba(26,39,68,.10);}
.ubx-quick-tabs a,.ubx-sheet-chips a,.ubx-start-pill{background:rgba(255,255,255,.76);color:#445166;border-color:rgba(26,39,68,.09);}
.ubx-quick-tabs a.is-active,.ubx-sheet-chips a.is-active{background:linear-gradient(135deg,#172033,#253147);border-color:#172033;color:#fff;}

.ubx-job-intent-card{display:grid;grid-template-columns:minmax(220px,1fr) minmax(320px,1.3fr);align-items:stretch;}
.ubx-intent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;}
.ubx-intent-tile{appearance:none;border:1px solid rgba(26,39,68,.09);border-radius:20px;background:linear-gradient(180deg,#ffffff,#f8fbff);padding:15px;text-align:left;text-decoration:none;color:#172033;box-shadow:0 10px 24px rgba(26,39,68,.06);cursor:pointer;font:inherit;min-height:84px;}
.ubx-intent-tile strong{display:block;font-size:16px;line-height:1.1;font-weight:820;letter-spacing:-.035em;}
.ubx-intent-tile span{display:block;margin-top:7px;color:#667085;font-size:12.5px;line-height:1.35;font-weight:620;}
.ubx-intent-tile.need{background:linear-gradient(135deg,#eef5ff,#ffffff);}
.ubx-intent-tile.offer{background:linear-gradient(135deg,#f0fdf4,#ffffff);}
.ubx-intent-tile:hover{transform:translateY(-1px);box-shadow:0 15px 34px rgba(26,39,68,.10);}
.ubx-action-controls.compact{grid-column:1/-1;min-width:0;width:100%;align-items:stretch;border-top:1px solid rgba(26,39,68,.075);padding-top:12px;}
.ubx-action-controls.compact>.ubx-primary{align-self:flex-start;min-width:210px;}
.ubx-action-controls.compact .ubx-starter-row{justify-content:flex-start;}

.ubx-form select{max-height:46px;}
.ubx-filter-group .ubx-sheet-chips{max-height:42vh;overflow:auto;padding-right:2px;}
.ubx-jobs-page .ubx-filter-group:nth-of-type(2) .ubx-sheet-chips a{min-width:0;}
.ubx-filter-card{background:rgba(255,255,255,.76);}
.ubx-filter-icon{background:linear-gradient(135deg,#eff6ff,#eef2ff);}

.ubx-post-card{box-shadow:0 16px 46px rgba(26,39,68,.09);}
.ubx-post-card h2{font-weight:820;letter-spacing:-.052em;}
.ubx-badge{background:#eef5ff;color:#255bc8;}
.ubx-badge.hiring{background:#fff7ed;color:#c2410c;}
.ubx-badge.community{background:#eefbf3;color:#15803d;}
.board-btn{min-height:34px;padding:0 13px;font-size:12.5px;}
.ubx-actions{gap:6px;}
.ubx-card-menu summary{background:#f8fafc;}

.ubx-media-carousel{background:#eef2f7;cursor:pointer;}
.ubx-media-track{touch-action:pan-x pan-y;}
.ubx-media-slide{background:#eef2f7;padding-bottom:50%;}
.ubx-community-card .ubx-media-slide{padding-bottom:46%;}
.ubx-media-slide img,.ubx-media-slide video{object-fit:contain;background:#eef2f7;}
.ubx-media-expand{display:none!important;}
.ubx-media-count{background:rgba(23,32,51,.72);}
.ubx-media-dots{bottom:10px;background:rgba(23,32,51,.20);}
.ubx-media-dot{width:6px;height:6px;}
.ubx-media-dot.is-active{width:17px;}

@media(min-width:901px){
  .ubx-top{align-items:center;}
  .ubx-nav{flex-wrap:nowrap;}
  .ubx-feed{grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:18px;}
  .ubx-media-slide{padding-bottom:48%;}
  .ubx-community-card .ubx-media-slide{padding-bottom:44%;}
}

@media(max-width:900px){
  .ubx-top{margin-bottom:13px;}
  .ubx-logo{font-size:41px;margin-bottom:13px;}
  .ubx-nav{display:flex;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;gap:7px;padding:0 2px 5px;margin:0 -2px;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
  .ubx-nav::-webkit-scrollbar{display:none;}
  .ubx-nav a{flex:0 0 auto;min-height:35px;padding:0 12px;font-size:12.5px;box-shadow:0 6px 15px rgba(26,39,68,.045);}
  .ubx-hero-main{padding:17px 18px 18px;border-radius:23px;}
  .ubx-hero h1{font-size:34px;letter-spacing:-.06em;}
  .ubx-hero p{font-size:15px;line-height:1.43;margin-top:8px;}
  .ubx-eyebrow{font-size:10px;margin-bottom:8px;}
  .ubx-job-intent-card{display:flex;flex-direction:column;gap:11px;}
  .ubx-intent-grid{grid-template-columns:1fr 1fr;gap:8px;}
  .ubx-intent-tile{min-height:76px;border-radius:18px;padding:12px;}
  .ubx-intent-tile strong{font-size:14.5px;}
  .ubx-intent-tile span{font-size:11.5px;margin-top:5px;}
  .ubx-action-controls.compact{padding-top:10px;}
  .ubx-action-controls.compact>.ubx-primary{width:100%;min-width:0;}
  .ubx-quick-tabs{gap:6px;margin-bottom:11px;}
  .ubx-quick-tabs a{min-height:31px;padding:0 11px;font-size:12px;}
  .ubx-post-card{border-radius:21px;}
  .ubx-post-body{padding:13px 14px 13px;}
  .ubx-post-card h2{font-size:20px;line-height:1.12;}
  .ubx-post-text{font-size:13.5px;line-height:1.46;-webkit-line-clamp:2;}
  .ubx-detail{min-height:25px;font-size:11px;padding:0 8px;}
  .board-btn{min-height:32px;padding:0 11px;font-size:12px;}
  .ubx-media-slide{padding-bottom:48%;}
  .ubx-community-card .ubx-media-slide{padding-bottom:45%;}
  .ubx-media-count{left:9px;bottom:9px;min-height:25px;font-size:10.5px;padding:0 8px;}
  .ubx-media-dots{bottom:9px;}
  .ubx-filter-group .ubx-sheet-chips{max-height:50vh;}
}

@media(max-width:480px){
  .ubx-logo{font-size:39px;}
  .ubx-nav a{min-height:34px;padding:0 11px;font-size:12px;}
  .ubx-intent-grid{grid-template-columns:1fr;}
  .ubx-intent-tile{min-height:68px;}
  .ubx-media-slide{padding-bottom:47%;}
  .ubx-community-card .ubx-media-slide{padding-bottom:44%;}
}

/* === Premium boards v4: mobile Cards/List switch + compact job intent === */
.ubx-view-switch{display:none;}

@media(max-width:900px){
  .ubx-view-switch{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:6px;
    margin:-4px 0 12px;
    padding:7px;
    border-radius:999px;
    background:rgba(255,255,255,.82);
    border:1px solid rgba(26,39,68,.07);
    box-shadow:0 10px 24px rgba(26,39,68,.055);
    width:max-content;
    margin-left:auto;
  }
  .ubx-view-switch span{
    color:#6b7688;
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.06em;
    padding:0 5px 0 3px;
  }
  .ubx-view-switch button{
    appearance:none;
    border:0;
    border-radius:999px;
    min-height:31px;
    padding:0 11px;
    font:inherit;
    font-size:12.5px;
    font-weight:850;
    color:#5d697a;
    background:transparent;
    cursor:pointer;
  }
  .ubx-view-switch button.is-active{
    color:#fff;
    background:linear-gradient(135deg,#172033,#26344d);
    box-shadow:0 8px 17px rgba(23,32,51,.18);
  }

  body.ubx-view-list .ubx-feed{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
  }
  body.ubx-view-list .ubx-post-card{
    display:grid;
    grid-template-columns:124px minmax(0,1fr);
    grid-template-rows:auto auto;
    min-height:128px;
    border-radius:19px;
    overflow:hidden;
    align-items:start;
    box-shadow:0 10px 28px rgba(26,39,68,.07);
  }
  body.ubx-view-list .ubx-post-card:not(:has(.ubx-media-carousel)){
    grid-template-columns:1fr;
  }
  body.ubx-view-list .ubx-job-card .ubx-media-carousel,
  body.ubx-view-list .ubx-community-card .ubx-media-carousel{
    grid-column:1;
    grid-row:1 / span 2;
    width:124px;
    height:100%;
    min-height:128px;
    border-radius:0;
    align-self:stretch;
    order:-1;
  }
  body.ubx-view-list .ubx-media-track{
    height:100%;
  }
  body.ubx-view-list .ubx-media-slide,
  body.ubx-view-list .ubx-community-card .ubx-media-slide{
    height:100%;
    min-height:128px;
    padding:0;
    background:#eaf0f7;
  }
  body.ubx-view-list .ubx-media-slide img,
  body.ubx-view-list .ubx-media-slide video{
    object-fit:cover;
    background:#eaf0f7;
  }
  body.ubx-view-list .ubx-post-body{
    grid-column:2;
    grid-row:1;
    padding:11px 11px 9px;
    min-width:0;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
  }
  body.ubx-view-list .ubx-post-card:not(:has(.ubx-media-carousel)) .ubx-post-body{
    grid-column:1;
  }
  body.ubx-view-list .ubx-community-card .ubx-post-body{
    grid-column:2;
    grid-row:1;
  }
  body.ubx-view-list .ubx-post-kicker{
    margin-bottom:5px;
    gap:6px;
  }
  body.ubx-view-list .ubx-post-tools{
    gap:4px;
  }
  body.ubx-view-list .ubx-badge{
    font-size:10.5px;
    padding:5px 8px;
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  body.ubx-view-list .ubx-post-meta{
    font-size:10.5px;
    max-width:94px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  body.ubx-view-list .ubx-post-card h2{
    font-size:15.5px;
    line-height:1.16;
    letter-spacing:-.035em;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  body.ubx-view-list .ubx-detail-row{
    margin-top:6px;
    gap:4px;
    flex-wrap:nowrap;
    overflow:hidden;
  }
  body.ubx-view-list .ubx-detail{
    font-size:10.5px;
    min-height:24px;
    padding:0 7px;
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  body.ubx-view-list .ubx-post-text{
    margin-top:6px;
    font-size:12.5px;
    line-height:1.35;
    -webkit-line-clamp:2;
  }
  body.ubx-view-list .ubx-contact-line{
    display:none;
  }
  body.ubx-view-list .ubx-actions{
    gap:5px;
    margin-top:8px;
    flex-wrap:nowrap;
    overflow:hidden;
  }
  body.ubx-view-list .board-btn{
    min-height:29px;
    padding:0 9px;
    font-size:11.5px;
    border-radius:999px;
  }
  body.ubx-view-list .ubx-share-btn{
    display:none;
  }
  body.ubx-view-list .ubx-social-head{
    margin-bottom:5px;
    gap:7px;
  }
  body.ubx-view-list .ubx-avatar{
    width:27px;
    height:27px;
    font-size:12px;
    flex:0 0 27px;
  }
  body.ubx-view-list .ubx-social-meta strong{
    font-size:12.5px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    max-width:132px;
  }
  body.ubx-view-list .ubx-social-meta span{
    font-size:10.5px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    max-width:132px;
  }
  body.ubx-view-list .ubx-post-kicker-soft{
    margin-top:0;
    margin-bottom:5px;
  }
  body.ubx-view-list .ubx-actions-bottom{
    grid-column:2;
    grid-row:2;
    align-self:start;
    padding:0 11px 10px;
    margin:0;
    background:transparent;
    display:flex;
    flex-wrap:wrap;
    gap:6px;
  }
  body.ubx-view-list .ubx-actions-bottom .board-btn:not(.ubx-share-btn):nth-of-type(n+3){
    display:none;
  }
  body.ubx-view-list .ubx-media-count{
    left:7px;
    bottom:7px;
    font-size:10.5px;
    padding:5px 7px;
  }
  body.ubx-view-list .ubx-media-dots{
    bottom:7px;
    right:7px;
    left:auto;
    transform:none;
  }
  body.ubx-view-list .ubx-media-dot{
    width:5px;
    height:5px;
  }
}

@media(max-width:480px){
  .ubx-job-intent-card .ubx-intent-grid{
    grid-template-columns:1fr 1fr;
    gap:8px;
    width:100%;
  }
  .ubx-job-intent-card .ubx-intent-tile{
    min-height:72px;
    padding:11px 10px;
    border-radius:17px;
  }
  .ubx-job-intent-card .ubx-intent-tile strong{
    font-size:14px;
  }
  .ubx-job-intent-card .ubx-intent-tile span{
    font-size:10.8px;
    line-height:1.25;
  }
  body.ubx-view-list .ubx-post-card{
    grid-template-columns:112px minmax(0,1fr);
    grid-template-rows:auto auto;
    min-height:120px;
  }
  body.ubx-view-list .ubx-job-card .ubx-media-carousel,
  body.ubx-view-list .ubx-community-card .ubx-media-carousel{
    width:112px;
    min-height:120px;
  }
  body.ubx-view-list .ubx-media-slide,
  body.ubx-view-list .ubx-community-card .ubx-media-slide{
    min-height:120px;
  }
  body.ubx-view-list .ubx-post-body{
    padding:10px 10px 8px;
  }
  body.ubx-view-list .ubx-post-card h2{
    font-size:14.8px;
  }
  body.ubx-view-list .ubx-post-text{
    font-size:12px;
    -webkit-line-clamp:1;
  }
  body.ubx-view-list .ubx-detail:nth-child(n+2){
    display:none;
  }
  body.ubx-view-list .board-btn{
    min-height:28px;
    padding:0 8px;
    font-size:11px;
  }
}


/* === Premium boards v5: List view available on phone, tablet and desktop; List is default === */
.ubx-view-switch{
  display:flex !important;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  margin:4px 0 14px auto;
  padding:7px;
  border-radius:999px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(26,39,68,.07);
  box-shadow:0 10px 24px rgba(26,39,68,.055);
  width:max-content;
  max-width:100%;
}
.ubx-view-switch span{
  color:#6b7688;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
  padding:0 5px 0 3px;
}
.ubx-view-switch button{
  appearance:none;
  border:0;
  border-radius:999px;
  min-height:31px;
  padding:0 11px;
  font:inherit;
  font-size:12.5px;
  font-weight:850;
  color:#5d697a;
  background:transparent;
  cursor:pointer;
  white-space:nowrap;
}
.ubx-view-switch button.is-active{
  color:#fff;
  background:linear-gradient(135deg,#172033,#26344d);
  box-shadow:0 8px 17px rgba(23,32,51,.18);
}

/* Desktop/tablet list layout */
body.ubx-view-list .ubx-feed{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}
body.ubx-view-list .ubx-post-card{
  display:grid;
  grid-template-columns:168px minmax(0,1fr);
  grid-template-rows:auto auto;
  min-height:150px;
  border-radius:22px;
  overflow:hidden;
  align-items:start;
  box-shadow:0 10px 28px rgba(26,39,68,.07);
}
body.ubx-view-list .ubx-post-card:not(:has(.ubx-media-carousel)){
  grid-template-columns:1fr;
}
body.ubx-view-list .ubx-job-card .ubx-media-carousel,
body.ubx-view-list .ubx-community-card .ubx-media-carousel{
  grid-column:1;
  grid-row:1 / span 2;
  width:168px;
  height:100%;
  min-height:150px;
  border-radius:0;
  align-self:stretch;
  order:-1;
}
body.ubx-view-list .ubx-media-track{
  height:100%;
}
body.ubx-view-list .ubx-media-slide,
body.ubx-view-list .ubx-community-card .ubx-media-slide{
  height:100%;
  min-height:150px;
  padding:0;
  background:#eaf0f7;
}
body.ubx-view-list .ubx-media-slide img,
body.ubx-view-list .ubx-media-slide video{
  object-fit:cover;
  background:#eaf0f7;
}
body.ubx-view-list .ubx-post-body{
  grid-column:2;
  grid-row:1;
  padding:14px 16px 7px;
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}
body.ubx-view-list .ubx-post-card:not(:has(.ubx-media-carousel)) .ubx-post-body{
  grid-column:1;
}
body.ubx-view-list .ubx-community-card .ubx-post-body{
  grid-column:2;
  grid-row:1;
}
body.ubx-view-list .ubx-post-kicker{
  margin-bottom:6px;
  gap:7px;
}
body.ubx-view-list .ubx-post-tools{
  gap:5px;
}
body.ubx-view-list .ubx-badge{
  font-size:11px;
  padding:5px 9px;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.ubx-view-list .ubx-post-meta{
  font-size:11px;
  max-width:180px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.ubx-view-list .ubx-post-card h2{
  font-size:18px;
  line-height:1.16;
  letter-spacing:-.035em;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
body.ubx-view-list .ubx-detail-row{
  margin-top:7px;
  gap:5px;
  flex-wrap:nowrap;
  overflow:hidden;
}
body.ubx-view-list .ubx-detail{
  font-size:11px;
  min-height:25px;
  padding:0 8px;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.ubx-view-list .ubx-post-text{
  margin-top:7px;
  font-size:13px;
  line-height:1.36;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
body.ubx-view-list .ubx-contact-line{
  display:none;
}
body.ubx-view-list .ubx-actions,
body.ubx-view-list .ubx-actions-bottom{
  grid-column:2;
  grid-row:2;
  align-self:start;
  padding:0 16px 13px;
  margin:0;
  background:transparent;
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
body.ubx-view-list .ubx-post-card:not(:has(.ubx-media-carousel)) .ubx-actions,
body.ubx-view-list .ubx-post-card:not(:has(.ubx-media-carousel)) .ubx-actions-bottom{
  grid-column:1;
}
body.ubx-view-list .board-btn{
  min-height:30px;
  padding:0 10px;
  font-size:11.5px;
  border-radius:999px;
}
body.ubx-view-list .ubx-share-btn{
  display:none;
}
body.ubx-view-list .ubx-social-head{
  margin-bottom:5px;
  gap:8px;
}
body.ubx-view-list .ubx-avatar{
  width:30px;
  height:30px;
  font-size:13px;
  flex:0 0 30px;
}
body.ubx-view-list .ubx-social-meta strong{
  font-size:13.5px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  max-width:260px;
}
body.ubx-view-list .ubx-social-meta span{
  font-size:11px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  max-width:260px;
}
body.ubx-view-list .ubx-post-kicker-soft{
  margin-top:0;
  margin-bottom:6px;
}
body.ubx-view-list .ubx-actions-bottom .board-btn:not(.ubx-share-btn):nth-of-type(n+3){
  display:none;
}
body.ubx-view-list .ubx-media-count{
  left:8px;
  bottom:8px;
  font-size:10.5px;
  padding:5px 7px;
}
body.ubx-view-list .ubx-media-dots{
  bottom:8px;
  right:8px;
  left:auto;
  transform:none;
}
body.ubx-view-list .ubx-media-dot{
  width:5px;
  height:5px;
}

/* Slightly tighter list on tablets and phones */
@media(max-width:900px){
  .ubx-view-switch{
    margin:-4px 0 12px auto;
  }
  body.ubx-view-list .ubx-post-card{
    grid-template-columns:124px minmax(0,1fr);
    min-height:128px;
    border-radius:19px;
  }
  body.ubx-view-list .ubx-job-card .ubx-media-carousel,
  body.ubx-view-list .ubx-community-card .ubx-media-carousel{
    width:124px;
    min-height:128px;
  }
  body.ubx-view-list .ubx-media-slide,
  body.ubx-view-list .ubx-community-card .ubx-media-slide{
    min-height:128px;
  }
  body.ubx-view-list .ubx-post-body{
    padding:11px 11px 7px;
  }
  body.ubx-view-list .ubx-post-card h2{
    font-size:15.5px;
  }
  body.ubx-view-list .ubx-post-text{
    font-size:12.5px;
  }
  body.ubx-view-list .ubx-actions,
  body.ubx-view-list .ubx-actions-bottom{
    padding:0 11px 10px;
    gap:6px;
  }
}

@media(max-width:480px){
  body.ubx-view-list .ubx-post-card{
    grid-template-columns:112px minmax(0,1fr);
    min-height:120px;
  }
  body.ubx-view-list .ubx-job-card .ubx-media-carousel,
  body.ubx-view-list .ubx-community-card .ubx-media-carousel{
    width:112px;
    min-height:120px;
  }
  body.ubx-view-list .ubx-media-slide,
  body.ubx-view-list .ubx-community-card .ubx-media-slide{
    min-height:120px;
  }
  body.ubx-view-list .ubx-post-body{
    padding:10px 10px 6px;
  }
  body.ubx-view-list .ubx-post-card h2{
    font-size:14.8px;
  }
  body.ubx-view-list .ubx-post-text{
    font-size:12px;
    -webkit-line-clamp:1;
  }
  body.ubx-view-list .ubx-detail:nth-child(n+2){
    display:none;
  }
  body.ubx-view-list .board-btn{
    min-height:28px;
    padding:0 8px;
    font-size:11px;
  }
}


/* === Premium boards v6: cleaner list cards and SVG action icons === */
.ubx-start-pill{
  gap:8px;
  padding:5px 12px 5px 7px;
}
.ubx-start-pill > span:last-child{
  display:inline-block;
  line-height:1.15;
}
.ubx-mini-icon{
  width:26px;
  height:26px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 26px;
  color:#2563eb;
  background:linear-gradient(135deg,#eef5ff,#ffffff);
  box-shadow:inset 0 0 0 1px rgba(37,99,235,.10), 0 4px 10px rgba(36,99,235,.08);
}
.ubx-mini-icon svg{
  width:15px;
  height:15px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.ubx-detail .ubx-mini-icon{
  width:18px;
  height:18px;
  flex-basis:18px;
  color:#526075;
  background:#fff;
  box-shadow:inset 0 0 0 1px rgba(16,24,39,.08);
}
.ubx-detail .ubx-mini-icon svg{
  width:11px;
  height:11px;
  stroke-width:2.2;
}
.ubx-icon-alert{color:#ef4444;background:linear-gradient(135deg,#fff1f2,#fff);}
.ubx-icon-question{color:#7c3aed;background:linear-gradient(135deg,#f5f3ff,#fff);}
.ubx-icon-sparkle{color:#d97706;background:linear-gradient(135deg,#fffbeb,#fff);}
.ubx-icon-tag{color:#059669;background:linear-gradient(135deg,#ecfdf5,#fff);}
.ubx-icon-cleaning{color:#0ea5e9;}
.ubx-icon-bolt{color:#2563eb;}
.ubx-icon-drop{color:#0891b2;}
.ubx-icon-wrench{color:#475569;}
.ubx-icon-leaf{color:#16a34a;}
.ubx-icon-truck{color:#7c3aed;}

/* Jobs list card: keep badge/date readable on mobile */
body.ubx-view-list .ubx-job-card .ubx-post-kicker{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:6px;
}
body.ubx-view-list .ubx-job-card .ubx-post-tools{
  min-width:0;
  justify-content:flex-end;
}
body.ubx-view-list .ubx-job-card .ubx-post-meta{
  max-width:140px;
  text-align:right;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  line-height:1.18;
  font-size:10.5px;
}
body.ubx-view-list .ubx-job-card .ubx-badge{
  justify-self:start;
  max-width:100%;
  font-size:10.5px;
  padding:4px 8px;
  min-height:24px;
}
body.ubx-view-list .ubx-job-card h2{
  margin-top:2px;
}
body.ubx-view-list .ubx-job-card .ubx-detail-row{
  margin-top:5px;
}
body.ubx-view-list .ubx-job-card .ubx-detail{
  min-height:23px;
  font-size:10.5px;
  padding:0 7px;
}
body.ubx-view-list .ubx-job-card .ubx-post-text{
  margin-top:5px;
}

/* In list view, avoid action buttons covering content */
body.ubx-view-list .ubx-post-card{
  grid-template-rows:minmax(0,auto) auto !important;
}
body.ubx-view-list .ubx-actions,
body.ubx-view-list .ubx-actions-bottom{
  position:static !important;
  z-index:1;
}

/* Tight phone layout */
@media(max-width:480px){
  body.ubx-view-list .ubx-post-card{
    grid-template-columns:104px minmax(0,1fr);
    min-height:128px;
  }
  body.ubx-view-list .ubx-job-card .ubx-media-carousel,
  body.ubx-view-list .ubx-community-card .ubx-media-carousel{
    width:104px;
    min-height:128px;
  }
  body.ubx-view-list .ubx-media-slide,
  body.ubx-view-list .ubx-community-card .ubx-media-slide{
    min-height:128px;
  }
  body.ubx-view-list .ubx-post-body{
    padding:9px 9px 5px;
  }
  body.ubx-view-list .ubx-job-card .ubx-post-meta{
    max-width:92px;
    font-size:9.8px;
  }
  body.ubx-view-list .ubx-job-card .ubx-badge{
    font-size:9.8px;
    padding:4px 7px;
  }
  body.ubx-view-list .ubx-post-card h2{
    font-size:14.4px;
    line-height:1.12;
  }
  body.ubx-view-list .ubx-job-card .ubx-detail{
    font-size:9.8px;
    min-height:21px;
    padding:0 6px;
  }
  body.ubx-view-list .ubx-actions,
  body.ubx-view-list .ubx-actions-bottom{
    padding:0 9px 8px;
  }
}


/* === Premium boards v7: compact list composition, fixed thumbnails === */
/* The previous list version allowed tall photos to stretch the whole card. This locks thumbnails to a neat app-list size. */
body.ubx-view-list .ubx-job-card .ubx-media-carousel,
body.ubx-view-list .ubx-community-card .ubx-media-carousel{
  align-self:start !important;
  grid-row:1 !important;
  height:158px !important;
  min-height:158px !important;
  max-height:158px !important;
  overflow:hidden !important;
}
body.ubx-view-list .ubx-job-card .ubx-media-track,
body.ubx-view-list .ubx-community-card .ubx-media-track,
body.ubx-view-list .ubx-job-card .ubx-media-slide,
body.ubx-view-list .ubx-community-card .ubx-media-slide{
  height:158px !important;
  min-height:158px !important;
  max-height:158px !important;
}
body.ubx-view-list .ubx-job-card .ubx-media-slide img,
body.ubx-view-list .ubx-community-card .ubx-media-slide img,
body.ubx-view-list .ubx-job-card .ubx-media-slide video,
body.ubx-view-list .ubx-community-card .ubx-media-slide video{
  width:100%;
  height:100%;
  object-fit:cover;
}

/* On list cards the status is short, so it does not fight with area/date. */
body.ubx-view-list .ubx-job-card .ubx-badge.looking,
body.ubx-view-list .ubx-job-card .ubx-badge.hiring{
  font-size:0 !important;
  max-width:98px !important;
  min-height:23px !important;
  padding:4px 8px !important;
}
body.ubx-view-list .ubx-job-card .ubx-badge.looking::after{
  content:"Available";
  font-size:10.5px;
}
body.ubx-view-list .ubx-job-card .ubx-badge.hiring::after{
  content:"Need help";
  font-size:10.5px;
}

/* Cleaner top line in list mode */
body.ubx-view-list .ubx-job-card .ubx-post-kicker{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr);
  gap:6px !important;
  align-items:center;
}
body.ubx-view-list .ubx-job-card .ubx-post-tools{
  min-width:0;
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:6px !important;
}
body.ubx-view-list .ubx-job-card .ubx-post-meta{
  max-width:132px !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  text-align:right;
  line-height:1.15 !important;
}

/* Phone list: smaller photo, stronger text hierarchy, no giant blank card. */
@media(max-width:480px){
  body.ubx-view-list .ubx-post-card{
    grid-template-columns:96px minmax(0,1fr) !important;
    min-height:0 !important;
    border-radius:18px !important;
  }
  body.ubx-view-list .ubx-job-card .ubx-media-carousel,
  body.ubx-view-list .ubx-community-card .ubx-media-carousel{
    width:96px !important;
    height:132px !important;
    min-height:132px !important;
    max-height:132px !important;
    grid-row:1 !important;
  }
  body.ubx-view-list .ubx-job-card .ubx-media-track,
  body.ubx-view-list .ubx-community-card .ubx-media-track,
  body.ubx-view-list .ubx-job-card .ubx-media-slide,
  body.ubx-view-list .ubx-community-card .ubx-media-slide{
    height:132px !important;
    min-height:132px !important;
    max-height:132px !important;
  }
  body.ubx-view-list .ubx-post-body{
    padding:9px 9px 8px !important;
  }
  body.ubx-view-list .ubx-job-card .ubx-post-kicker{
    margin-bottom:6px !important;
  }
  body.ubx-view-list .ubx-job-card .ubx-post-meta{
    max-width:82px !important;
    font-size:9.7px !important;
  }
  body.ubx-view-list .ubx-job-card .ubx-badge.looking::after,
  body.ubx-view-list .ubx-job-card .ubx-badge.hiring::after{
    font-size:9.8px !important;
  }
  body.ubx-view-list .ubx-job-card .ubx-badge.looking,
  body.ubx-view-list .ubx-job-card .ubx-badge.hiring{
    max-width:74px !important;
    min-height:22px !important;
    padding:4px 7px !important;
  }
  body.ubx-view-list .ubx-post-card h2{
    font-size:14.8px !important;
    line-height:1.12 !important;
    margin-top:1px !important;
  }
  body.ubx-view-list .ubx-job-card .ubx-detail-row{
    margin-top:5px !important;
  }
  body.ubx-view-list .ubx-job-card .ubx-detail{
    min-height:22px !important;
    font-size:10px !important;
    padding:0 7px !important;
  }
  body.ubx-view-list .ubx-post-text{
    margin-top:6px !important;
    font-size:12px !important;
    line-height:1.25 !important;
    -webkit-line-clamp:1 !important;
  }
  body.ubx-view-list .ubx-actions,
  body.ubx-view-list .ubx-actions-bottom{
    margin-top:7px !important;
    padding:0 !important;
    gap:6px !important;
  }
  body.ubx-view-list .board-btn{
    min-height:27px !important;
    padding:0 8px !important;
    font-size:10.8px !important;
  }
  body.ubx-view-list .ubx-media-count{
    font-size:9.8px !important;
    padding:4px 6px !important;
    left:6px !important;
    bottom:6px !important;
  }
  body.ubx-view-list .ubx-media-dots{
    right:6px !important;
    bottom:8px !important;
  }
}


/* === Premium boards v8: map picker + exact location cards === */
.ubx-location-picker{
  background:linear-gradient(135deg,#f8fbff,#ffffff);
  border:1px solid rgba(37,99,235,.10);
  border-radius:20px;
  padding:13px;
}
.ubx-location-picker-row{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.ubx-map-pick-btn,
.ubx-map-clear-btn{
  appearance:none;
  border:0;
  border-radius:999px;
  min-height:38px;
  padding:0 14px;
  font:inherit;
  font-size:13px;
  font-weight:800;
  cursor:pointer;
}
.ubx-map-pick-btn{
  color:#fff;
  background:linear-gradient(135deg,#2563eb,#3b82f6);
  box-shadow:0 10px 22px rgba(37,99,235,.18);
}
.ubx-map-clear-btn{
  color:#526075;
  background:#f6f8fb;
  border:1px solid rgba(16,24,39,.09);
}
.ubx-picked-location{
  margin-top:9px;
  display:flex;
  flex-direction:column;
  gap:2px;
  padding:10px 11px;
  border-radius:16px;
  background:#f8fafc;
  border:1px dashed rgba(16,24,39,.14);
}
.ubx-picked-location strong{font-size:12.5px;color:#1d2636;font-weight:850;}
.ubx-picked-location span{font-size:12px;color:#667085;line-height:1.35;}
.ubx-picked-location.is-selected{
  background:#eff6ff;
  border-style:solid;
  border-color:rgba(37,99,235,.16);
}

.ubx-location-card{
  margin-top:10px;
  display:grid;
  grid-template-columns:48px minmax(0,1fr) auto;
  gap:9px;
  align-items:center;
  padding:9px;
  border-radius:18px;
  background:linear-gradient(135deg,#eff6ff,#ffffff);
  border:1px solid rgba(37,99,235,.12);
}
.ubx-location-preview{
  width:48px;
  height:42px;
  border:0;
  border-radius:14px;
  background:
    radial-gradient(circle at 50% 50%, rgba(37,99,235,.22) 0 9px, transparent 10px),
    linear-gradient(135deg,#dbeafe,#f8fbff);
  box-shadow:inset 0 0 0 1px rgba(37,99,235,.12);
  cursor:pointer;
  display:grid;
  place-items:center;
}
.ubx-location-pin{
  width:22px;
  height:22px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:#2563eb;
  color:#fff;
  font-weight:900;
  font-size:13px;
  box-shadow:0 8px 18px rgba(37,99,235,.25);
}
.ubx-location-copy{min-width:0;display:flex;flex-direction:column;gap:2px;}
.ubx-location-copy strong{font-size:12px;color:#1d2636;font-weight:850;}
.ubx-location-copy span{font-size:11.5px;color:#667085;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ubx-location-open{
  min-height:32px;
  padding:0 11px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  background:#fff;
  color:#2563eb;
  border:1px solid rgba(37,99,235,.16);
  font-size:11.5px;
  font-weight:850;
  white-space:nowrap;
}

.ubx-map-sheet{
  position:fixed;
  inset:0;
  background:rgba(15,23,42,.44);
  z-index:99999;
  display:none;
  align-items:flex-end;
  justify-content:center;
  padding:12px;
}
.ubx-map-sheet.is-open{display:flex;}
.ubx-map-panel{
  width:min(760px,100%);
  max-height:min(92vh,760px);
  overflow:auto;
  background:#fff;
  border-radius:28px;
  padding:16px;
  box-shadow:0 28px 80px rgba(15,23,42,.28);
}
.ubx-map-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.ubx-map-head h2{margin:0;color:#111827;font-size:22px;letter-spacing:-.04em;}
.ubx-map-head p{margin:4px 0 0;color:#667085;font-size:13px;line-height:1.35;}
.ubx-map-search{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  margin-bottom:10px;
}
.ubx-map-search input{
  min-height:42px;
  border-radius:16px;
  border:1px solid rgba(16,24,39,.12);
  padding:0 13px;
  font:inherit;
  font-size:14px;
}
.ubx-map-search button{
  border:0;
  min-height:42px;
  padding:0 14px;
  border-radius:16px;
  background:#111827;
  color:#fff;
  font:inherit;
  font-weight:850;
}
.ubx-map-canvas{
  height:360px;
  border-radius:20px;
  overflow:hidden;
  background:#eef2f7;
  border:1px solid rgba(16,24,39,.10);
}
.ubx-map-status{
  margin:9px 0;
  color:#526075;
  font-size:12.5px;
  font-weight:700;
}
.ubx-map-actions{
  display:flex;
  justify-content:space-between;
  gap:8px;
  flex-wrap:wrap;
}
.ubx-map-actions .ubx-primary,
.ubx-map-actions .ubx-secondary{
  min-height:39px;
}

body.ubx-view-list .ubx-location-card{
  margin-top:6px;
  grid-template-columns:32px minmax(0,1fr) auto;
  padding:6px;
  border-radius:14px;
}
body.ubx-view-list .ubx-location-preview{width:32px;height:30px;border-radius:10px;}
body.ubx-view-list .ubx-location-pin{width:16px;height:16px;font-size:10px;}
body.ubx-view-list .ubx-location-copy strong{display:none;}
body.ubx-view-list .ubx-location-copy span{font-size:10.5px;}
body.ubx-view-list .ubx-location-open{min-height:26px;padding:0 8px;font-size:10.5px;}

@media(max-width:600px){
  .ubx-map-sheet{padding:0;align-items:flex-end;}
  .ubx-map-panel{
    border-radius:26px 26px 0 0;
    max-height:94vh;
    padding:14px;
  }
  .ubx-map-canvas{height:58vh;min-height:330px;}
  .ubx-map-search{grid-template-columns:1fr;}
  .ubx-map-search button{width:100%;}
}


/* === Premium boards v11: full post details modal === */
.ubx-post-card{cursor:pointer;}
.ubx-post-card:focus-visible{outline:3px solid rgba(37,99,235,.28);outline-offset:4px;}
.ubx-modal-open{overflow:hidden;}
.ubx-post-modal{
  position:fixed;
  inset:0;
  z-index:99998;
  background:rgba(15,23,42,.48);
  display:none;
  align-items:flex-end;
  justify-content:center;
  padding:14px;
}
.ubx-post-modal.is-open{display:flex;}
.ubx-post-modal-panel{
  width:min(760px,100%);
  max-height:min(92vh,820px);
  overflow:auto;
  background:#f7f9fc;
  border-radius:30px;
  padding:14px;
  box-shadow:0 28px 80px rgba(15,23,42,.28);
}
.ubx-post-modal-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:4px 4px 12px;
}
.ubx-post-modal-head h2{
  margin:0;
  color:#111827;
  font-size:23px;
  letter-spacing:-.045em;
  font-weight:850;
}
.ubx-post-modal-head p{
  margin:4px 0 0;
  color:#667085;
  font-size:13px;
  line-height:1.35;
}
.ubx-post-modal-body .ubx-post-card,
body.ubx-view-list .ubx-post-modal-body .ubx-post-card{
  display:block !important;
  grid-template-columns:none !important;
  grid-template-rows:none !important;
  min-height:0 !important;
  width:100% !important;
  border-radius:24px !important;
  overflow:hidden;
  cursor:auto;
  background:#fff;
  box-shadow:0 14px 40px rgba(26,39,68,.10);
}
.ubx-post-modal-body .ubx-post-body,
body.ubx-view-list .ubx-post-modal-body .ubx-post-body{
  display:block !important;
  grid-column:auto !important;
  grid-row:auto !important;
  padding:18px !important;
}
.ubx-post-modal-body .ubx-media-carousel,
body.ubx-view-list .ubx-post-modal-body .ubx-media-carousel,
.ubx-post-modal-body .ubx-job-card .ubx-media-carousel,
.ubx-post-modal-body .ubx-community-card .ubx-media-carousel,
body.ubx-view-list .ubx-post-modal-body .ubx-job-card .ubx-media-carousel,
body.ubx-view-list .ubx-post-modal-body .ubx-community-card .ubx-media-carousel{
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  border-radius:0 !important;
  grid-column:auto !important;
  grid-row:auto !important;
}
.ubx-post-modal-body .ubx-media-track{height:auto !important;}
.ubx-post-modal-body .ubx-media-slide,
body.ubx-view-list .ubx-post-modal-body .ubx-media-slide,
body.ubx-view-list .ubx-post-modal-body .ubx-community-card .ubx-media-slide{
  height:auto !important;
  min-height:0 !important;
  padding-bottom:62% !important;
  background:#eaf0f7;
}
.ubx-post-modal-body .ubx-media-slide img,
.ubx-post-modal-body .ubx-media-slide video{
  object-fit:cover;
}
.ubx-post-modal-body .ubx-post-card h2,
body.ubx-view-list .ubx-post-modal-body .ubx-post-card h2{
  font-size:24px !important;
  line-height:1.12 !important;
  -webkit-line-clamp:unset !important;
  overflow:visible !important;
}
.ubx-post-modal-body .ubx-post-text,
.ubx-post-modal-body .ubx-post-text.is-expanded,
body.ubx-view-list .ubx-post-modal-body .ubx-post-text{
  display:block !important;
  -webkit-line-clamp:unset !important;
  -webkit-box-orient:unset !important;
  overflow:visible !important;
  white-space:pre-wrap !important;
  font-size:15px !important;
  line-height:1.55 !important;
  color:#344054;
}
.ubx-post-modal-body .ubx-actions,
.ubx-post-modal-body .ubx-actions-bottom,
body.ubx-view-list .ubx-post-modal-body .ubx-actions,
body.ubx-view-list .ubx-post-modal-body .ubx-actions-bottom{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  padding:0 18px 18px !important;
  margin:0 !important;
  grid-column:auto !important;
  grid-row:auto !important;
}
.ubx-post-modal-body .ubx-location-card,
body.ubx-view-list .ubx-post-modal-body .ubx-location-card{
  margin-top:14px;
  grid-template-columns:54px minmax(0,1fr) auto;
  padding:10px;
  border-radius:18px;
}
.ubx-post-modal-body .ubx-location-preview,
body.ubx-view-list .ubx-post-modal-body .ubx-location-preview{width:54px;height:46px;border-radius:15px;}
.ubx-post-modal-body .ubx-location-pin,
body.ubx-view-list .ubx-post-modal-body .ubx-location-pin{width:24px;height:24px;font-size:13px;}
.ubx-post-modal-body .ubx-location-copy strong,
body.ubx-view-list .ubx-post-modal-body .ubx-location-copy strong{display:block;font-size:12.5px;}
.ubx-post-modal-body .ubx-location-copy span,
body.ubx-view-list .ubx-post-modal-body .ubx-location-copy span{font-size:12px;}
.ubx-post-modal-body .ubx-location-open,
body.ubx-view-list .ubx-post-modal-body .ubx-location-open{min-height:34px;font-size:11.5px;padding:0 12px;}
@media(max-width:600px){
  .ubx-post-modal{padding:0;align-items:flex-end;}
  .ubx-post-modal-panel{border-radius:28px 28px 0 0;max-height:94vh;padding:12px;}
  .ubx-post-modal-head h2{font-size:21px;}
  .ubx-post-modal-body .ubx-media-slide,
  body.ubx-view-list .ubx-post-modal-body .ubx-media-slide{padding-bottom:66% !important;}
  .ubx-post-modal-body .ubx-post-body,
  body.ubx-view-list .ubx-post-modal-body .ubx-post-body{padding:16px !important;}
  .ubx-post-modal-body .ubx-post-card h2,
  body.ubx-view-list .ubx-post-modal-body .ubx-post-card h2{font-size:22px !important;}
}


/* === Premium boards v12: list-only feed === */
.ubx-view-switch{display:none!important;}
body.ubx-board-page:not(.ubx-view-list){
  /* Fallback: PHP adds ubx-view-list, this only keeps old cached markup from showing the switch. */
}

/* === Premium boards v13: details modal starts at top, photo first, photo = about 1/3 screen === */
.ubx-post-modal{
  align-items:flex-start !important;
  justify-content:center !important;
  padding:10px 14px 14px !important;
  background:rgba(15,23,42,.56) !important;
}
.ubx-post-modal-panel{
  position:relative;
  width:min(720px,100%) !important;
  height:calc(100dvh - 24px) !important;
  max-height:860px !important;
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
  padding:0 !important;
  border-radius:28px !important;
  background:#fff !important;
  box-shadow:0 28px 90px rgba(15,23,42,.32) !important;
}
.ubx-post-modal-head{
  position:absolute !important;
  top:10px !important;
  right:10px !important;
  z-index:30 !important;
  padding:0 !important;
  margin:0 !important;
  display:block !important;
}
.ubx-post-modal-head > div{display:none !important;}
.ubx-post-modal-head .ubx-close{
  width:42px !important;
  height:42px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.94) !important;
  color:#111827 !important;
  box-shadow:0 10px 28px rgba(15,23,42,.25) !important;
  backdrop-filter:blur(10px);
}
.ubx-post-modal-body{
  height:100% !important;
  overflow:auto !important;
  -webkit-overflow-scrolling:touch;
  background:#fff;
}
.ubx-post-modal-body .ubx-post-card,
body.ubx-view-list .ubx-post-modal-body .ubx-post-card{
  min-height:100% !important;
  display:flex !important;
  flex-direction:column !important;
  grid-template-columns:none !important;
  grid-template-rows:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:#fff !important;
  overflow:visible !important;
  cursor:auto !important;
}
.ubx-post-modal-body .ubx-media-carousel,
body.ubx-view-list .ubx-post-modal-body .ubx-media-carousel,
.ubx-post-modal-body .ubx-job-card .ubx-media-carousel,
.ubx-post-modal-body .ubx-community-card .ubx-media-carousel,
body.ubx-view-list .ubx-post-modal-body .ubx-job-card .ubx-media-carousel,
body.ubx-view-list .ubx-post-modal-body .ubx-community-card .ubx-media-carousel{
  order:-10 !important;
  flex:0 0 auto !important;
  width:100% !important;
  height:33vh !important;
  max-height:320px !important;
  min-height:220px !important;
  border-radius:0 !important;
  background:#111827 !important;
  grid-column:auto !important;
  grid-row:auto !important;
}
.ubx-post-modal-body .ubx-media-track,
body.ubx-view-list .ubx-post-modal-body .ubx-media-track{height:100% !important;}
.ubx-post-modal-body .ubx-media-slide,
body.ubx-view-list .ubx-post-modal-body .ubx-media-slide,
body.ubx-view-list .ubx-post-modal-body .ubx-community-card .ubx-media-slide{
  height:100% !important;
  min-height:0 !important;
  padding:0 !important;
  background:#111827 !important;
}
.ubx-post-modal-body .ubx-media-slide img,
.ubx-post-modal-body .ubx-media-slide video,
body.ubx-view-list .ubx-post-modal-body .ubx-media-slide img,
body.ubx-view-list .ubx-post-modal-body .ubx-media-slide video{
  object-fit:contain !important;
  background:#111827 !important;
}
.ubx-post-modal-body .ubx-media-count{
  left:12px !important;
  bottom:12px !important;
}
.ubx-post-modal-body .ubx-media-dots{bottom:13px !important;}
.ubx-post-modal-body .ubx-post-body,
body.ubx-view-list .ubx-post-modal-body .ubx-post-body{
  display:block !important;
  grid-column:auto !important;
  grid-row:auto !important;
  padding:18px 18px 12px !important;
  flex:0 0 auto !important;
}
.ubx-post-modal-body .ubx-post-card h2,
body.ubx-view-list .ubx-post-modal-body .ubx-post-card h2{
  font-size:24px !important;
  line-height:1.12 !important;
  -webkit-line-clamp:unset !important;
  overflow:visible !important;
}
.ubx-post-modal-body .ubx-post-text,
.ubx-post-modal-body .ubx-post-text.is-expanded,
body.ubx-view-list .ubx-post-modal-body .ubx-post-text{
  display:block !important;
  -webkit-line-clamp:unset !important;
  -webkit-box-orient:unset !important;
  overflow:visible !important;
  white-space:pre-wrap !important;
  font-size:15px !important;
  line-height:1.55 !important;
  color:#344054 !important;
}
.ubx-post-modal-body .ubx-actions,
.ubx-post-modal-body .ubx-actions-bottom,
body.ubx-view-list .ubx-post-modal-body .ubx-actions,
body.ubx-view-list .ubx-post-modal-body .ubx-actions-bottom{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  padding:0 18px 18px !important;
  margin:0 !important;
  grid-column:auto !important;
  grid-row:auto !important;
}
.ubx-post-modal-body .ubx-location-card,
body.ubx-view-list .ubx-post-modal-body .ubx-location-card{
  margin-top:14px !important;
  grid-template-columns:54px minmax(0,1fr) auto !important;
  padding:10px !important;
  border-radius:18px !important;
}
.ubx-post-modal-body .ubx-location-preview,
body.ubx-view-list .ubx-post-modal-body .ubx-location-preview{
  width:54px !important;
  height:46px !important;
  border-radius:15px !important;
}
.ubx-post-modal-body .ubx-location-pin,
body.ubx-view-list .ubx-post-modal-body .ubx-location-pin{
  width:24px !important;
  height:24px !important;
  font-size:13px !important;
}
.ubx-post-modal-body .ubx-location-copy strong,
body.ubx-view-list .ubx-post-modal-body .ubx-location-copy strong{
  display:block !important;
  font-size:12.5px !important;
}
.ubx-post-modal-body .ubx-location-copy span,
body.ubx-view-list .ubx-post-modal-body .ubx-location-copy span{font-size:12px !important;}
.ubx-post-modal-body .ubx-location-open,
body.ubx-view-list .ubx-post-modal-body .ubx-location-open{
  min-height:34px !important;
  font-size:11.5px !important;
  padding:0 12px !important;
}
@media(max-width:600px){
  .ubx-post-modal{
    align-items:flex-start !important;
    padding:calc(env(safe-area-inset-top, 0px) + 6px) 8px 8px !important;
  }
  .ubx-post-modal-panel{
    width:calc(100vw - 16px) !important;
    height:calc(100dvh - env(safe-area-inset-top, 0px) - 14px) !important;
    max-height:none !important;
    border-radius:24px !important;
  }
  .ubx-post-modal-body .ubx-media-carousel,
  body.ubx-view-list .ubx-post-modal-body .ubx-media-carousel,
  .ubx-post-modal-body .ubx-job-card .ubx-media-carousel,
  .ubx-post-modal-body .ubx-community-card .ubx-media-carousel,
  body.ubx-view-list .ubx-post-modal-body .ubx-job-card .ubx-media-carousel,
  body.ubx-view-list .ubx-post-modal-body .ubx-community-card .ubx-media-carousel{
    height:32vh !important;
    min-height:205px !important;
    max-height:285px !important;
  }
  .ubx-post-modal-body .ubx-post-body,
  body.ubx-view-list .ubx-post-modal-body .ubx-post-body{padding:16px 15px 10px !important;}
  .ubx-post-modal-body .ubx-post-card h2,
  body.ubx-view-list .ubx-post-modal-body .ubx-post-card h2{font-size:22px !important;}
  .ubx-post-modal-body .ubx-post-text,
  body.ubx-view-list .ubx-post-modal-body .ubx-post-text{font-size:14.5px !important;}
  .ubx-post-modal-body .ubx-location-card,
  body.ubx-view-list .ubx-post-modal-body .ubx-location-card{
    grid-template-columns:46px minmax(0,1fr) !important;
  }
  .ubx-post-modal-body .ubx-location-open,
  body.ubx-view-list .ubx-post-modal-body .ubx-location-open{
    grid-column:1/-1;
    width:100%;
  }
}


/* === Premium boards v14: details modal photo fills the top area === */
.ubx-post-modal-body .ubx-media-slide img,
.ubx-post-modal-body .ubx-media-slide video,
body.ubx-view-list .ubx-post-modal-body .ubx-media-slide img,
body.ubx-view-list .ubx-post-modal-body .ubx-media-slide video{
  object-fit:cover !important;
  object-position:center center !important;
}
.ubx-post-modal-body .ubx-media-carousel,
body.ubx-view-list .ubx-post-modal-body .ubx-media-carousel{
  background:#0f172a !important;
}


/* === Premium boards v15: tap opened photo to close === */
.ubx-lightbox-stage,
.ubx-lightbox-stage img{
  cursor:pointer;
}
.ubx-lightbox-stage video{
  cursor:auto;
}


/* === Premium boards v16: better modal photo fit + reliable photo lightbox === */
/* Details modal: show the whole photo in the top third, with a soft blurred fill behind it. */
.ubx-post-modal-body .ubx-media-slide.has-photo-bg{
  background-color:#0f172a !important;
  background-image:linear-gradient(rgba(15,23,42,.32),rgba(15,23,42,.32)),var(--ubx-photo-bg) !important;
  background-size:cover !important;
  background-position:center center !important;
}
.ubx-post-modal-body .ubx-media-slide.has-photo-bg::before{
  content:"";
  position:absolute;
  inset:-18px;
  z-index:0;
  background-image:var(--ubx-photo-bg);
  background-size:cover;
  background-position:center;
  filter:blur(16px);
  opacity:.62;
  transform:scale(1.08);
}
.ubx-post-modal-body .ubx-media-slide.has-photo-bg::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:rgba(15,23,42,.22);
}
.ubx-post-modal-body .ubx-media-slide.has-photo-bg img{
  z-index:1 !important;
  object-fit:contain !important;
  object-position:center center !important;
}
.ubx-post-modal-body .ubx-media-slide.has-photo-bg video{
  z-index:1 !important;
  object-fit:contain !important;
}
.ubx-post-modal-body .ubx-media-count,
.ubx-post-modal-body .ubx-media-dots{
  z-index:5 !important;
}
/* On the list/feed, tapping the photo should feel like a separate action. */
.ubx-media-carousel,
.ubx-media-track,
.ubx-media-slide{
  touch-action:pan-x pan-y;
}
.ubx-lightbox-stage img{
  cursor:pointer;
}


/* === Premium boards v17: photo fit + main photo tap + share button === */
/* Details modal: show full photo shape inside the top third; blurred copy fills the empty space. */
.ubx-post-modal-body .ubx-media-slide.has-photo-bg{
  background-color:#0f172a !important;
  background-image:var(--ubx-photo-bg) !important;
  background-size:cover !important;
  background-position:center center !important;
}
.ubx-post-modal-body .ubx-media-slide.has-photo-bg::before{
  content:"";
  position:absolute;
  inset:-20px;
  z-index:0;
  background-image:var(--ubx-photo-bg);
  background-size:cover;
  background-position:center;
  filter:blur(18px);
  opacity:.65;
  transform:scale(1.1);
}
.ubx-post-modal-body .ubx-media-slide.has-photo-bg::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:rgba(15,23,42,.18);
}
.ubx-post-modal-body .ubx-media-slide.has-photo-bg img,
body.ubx-view-list .ubx-post-modal-body .ubx-media-slide.has-photo-bg img{
  z-index:2 !important;
  object-fit:contain !important;
  object-position:center center !important;
  background:transparent !important;
}
.ubx-post-modal-body .ubx-media-slide.has-photo-bg video,
body.ubx-view-list .ubx-post-modal-body .ubx-media-slide.has-photo-bg video{
  z-index:2 !important;
  object-fit:contain !important;
  background:#0f172a !important;
}
.ubx-post-modal-body .ubx-media-count,
.ubx-post-modal-body .ubx-media-dots{
  z-index:5 !important;
}
.ubx-media-carousel{cursor:zoom-in;}
.ubx-lightbox-stage img{cursor:pointer;}

/* Grey Share button visible on every listing, including list view. */
body.ubx-view-list .ubx-share-btn,
.ubx-share-btn{
  display:inline-flex !important;
  background:#f3f4f6 !important;
  color:#344054 !important;
  border:1px solid rgba(16,24,39,.10) !important;
  box-shadow:none !important;
}
body.ubx-view-list .ubx-share-btn:hover,
.ubx-share-btn:hover{
  background:#e9edf3 !important;
}


/* === Premium boards v18: modal photo uses full top area correctly === */
.ubx-post-modal-body .ubx-media-carousel,
body.ubx-view-list .ubx-post-modal-body .ubx-media-carousel{
  height:32vh !important;
  min-height:220px !important;
  max-height:310px !important;
  overflow:hidden !important;
}
.ubx-post-modal-body .ubx-media-track,
body.ubx-view-list .ubx-post-modal-body .ubx-media-track{
  height:100% !important;
  min-height:100% !important;
  align-items:stretch !important;
}
.ubx-post-modal-body .ubx-media-slide,
body.ubx-view-list .ubx-post-modal-body .ubx-media-slide,
body.ubx-view-list .ubx-post-modal-body .ubx-community-card .ubx-media-slide{
  position:relative !important;
  height:100% !important;
  min-height:100% !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:hidden !important;
  background:#0f172a !important;
}
.ubx-post-modal-body .ubx-media-slide.has-photo-bg img,
body.ubx-view-list .ubx-post-modal-body .ubx-media-slide.has-photo-bg img{
  position:relative !important;
  inset:auto !important;
  z-index:2 !important;
  display:block !important;
  background:transparent !important;
  object-position:center center !important;
}
.ubx-post-modal-body .ubx-media-slide.has-photo-bg.is-portrait img,
body.ubx-view-list .ubx-post-modal-body .ubx-media-slide.has-photo-bg.is-portrait img{
  width:auto !important;
  height:100% !important;
  max-width:100% !important;
  object-fit:contain !important;
}
.ubx-post-modal-body .ubx-media-slide.has-photo-bg.is-landscape img,
body.ubx-view-list .ubx-post-modal-body .ubx-media-slide.has-photo-bg.is-landscape img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}
.ubx-post-modal-body .ubx-media-slide.has-photo-bg:not(.is-portrait):not(.is-landscape) img,
body.ubx-view-list .ubx-post-modal-body .ubx-media-slide.has-photo-bg:not(.is-portrait):not(.is-landscape) img{
  width:auto !important;
  height:100% !important;
  max-width:100% !important;
  object-fit:contain !important;
}
.ubx-post-modal-body .ubx-media-slide.has-photo-bg::before,
body.ubx-view-list .ubx-post-modal-body .ubx-media-slide.has-photo-bg::before{
  content:"";
  position:absolute;
  inset:-22px;
  z-index:0;
  background-image:var(--ubx-photo-bg);
  background-size:cover;
  background-position:center;
  filter:blur(18px);
  opacity:.72;
  transform:scale(1.12);
}
.ubx-post-modal-body .ubx-media-slide.has-photo-bg::after,
body.ubx-view-list .ubx-post-modal-body .ubx-media-slide.has-photo-bg::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:rgba(15,23,42,.20);
}
.ubx-post-modal-body .ubx-media-count,
.ubx-post-modal-body .ubx-media-dots{
  z-index:6 !important;
}
@media(max-width:600px){
  .ubx-post-modal-body .ubx-media-carousel,
  body.ubx-view-list .ubx-post-modal-body .ubx-media-carousel{
    height:32vh !important;
    min-height:230px !important;
    max-height:300px !important;
  }
}


/* === Premium boards v19: desktop lightbox must show the whole original image === */
@media(min-width:901px){
  .ubx-lightbox{
    padding:18px !important;
  }
  .ubx-lightbox-inner{
    width:calc(100vw - 80px) !important;
    height:calc(100vh - 80px) !important;
    max-width:1500px !important;
    max-height:none !important;
    display:grid !important;
    grid-template-rows:minmax(0,1fr) auto !important;
    align-items:center !important;
    justify-items:center !important;
  }
  .ubx-lightbox-stage{
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    border-radius:18px !important;
    overflow:visible !important;
    background:transparent !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
  .ubx-lightbox-stage img,
  .ubx-lightbox-stage video{
    display:block !important;
    position:static !important;
    inset:auto !important;
    width:auto !important;
    height:auto !important;
    max-width:calc(100vw - 160px) !important;
    max-height:calc(100vh - 150px) !important;
    object-fit:contain !important;
    object-position:center center !important;
    border-radius:14px !important;
    background:#020617 !important;
  }
  .ubx-lightbox-close{
    right:22px !important;
    top:18px !important;
    z-index:10 !important;
  }
  .ubx-lightbox-prev{left:0 !important;z-index:10 !important;}
  .ubx-lightbox-next{right:0 !important;z-index:10 !important;}
}


/* === Premium boards v20: cleaner mobile top + clearer quick actions === */
@media(max-width:900px){
  .ubx-shell{padding:14px 12px 28px !important;}
  .ubx-top{display:block !important;margin:0 0 14px !important;}
  .ubx-logo{font-size:38px !important;line-height:.95 !important;margin:0 0 12px !important;letter-spacing:-.06em !important;}
  .ubx-nav{display:flex !important;flex-wrap:nowrap !important;justify-content:flex-start !important;gap:8px !important;overflow-x:auto !important;overflow-y:hidden !important;padding:2px 2px 8px !important;margin:0 -2px !important;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
  .ubx-nav::-webkit-scrollbar{display:none;}
  .ubx-nav a{flex:0 0 auto !important;min-height:40px !important;padding:0 16px !important;font-size:14px !important;font-weight:820 !important;box-shadow:0 8px 20px rgba(15,23,42,.045) !important;}
  .ubx-hero{margin-bottom:12px !important;}
  .ubx-hero-main{border-radius:24px !important;padding:18px 18px 20px !important;min-height:auto !important;}
  .ubx-hero-main::after{right:-78px !important;top:-76px !important;width:205px !important;height:205px !important;}
  .ubx-eyebrow{font-size:10.5px !important;margin-bottom:8px !important;letter-spacing:.06em !important;}
  .ubx-hero h1{font-size:38px !important;line-height:.98 !important;letter-spacing:-.065em !important;}
  .ubx-hero p{margin-top:9px !important;font-size:16px !important;line-height:1.38 !important;max-width:100% !important;}
  .ubx-action-card{border-radius:24px !important;padding:15px !important;gap:12px !important;margin-bottom:12px !important;}
  .ubx-action-card h2{font-size:20px !important;line-height:1.14 !important;letter-spacing:-.045em !important;}
  .ubx-action-card p{font-size:14.2px !important;line-height:1.38 !important;margin-top:6px !important;}
  .ubx-action-controls{width:100% !important;min-width:0 !important;align-items:stretch !important;gap:10px !important;}
  .ubx-action-controls>.ubx-primary{width:100% !important;min-height:48px !important;font-size:15px !important;}

  .ubx-community-page .ubx-action-card{display:block !important;}
  .ubx-community-page .ubx-action-controls{margin-top:12px !important;}
  .ubx-community-page .ubx-starter-row{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:9px !important;overflow:visible !important;justify-content:stretch !important;margin-top:10px !important;}
  .ubx-community-page .ubx-start-pill{width:100% !important;min-height:44px !important;justify-content:flex-start !important;padding:6px 11px !important;font-size:13px !important;box-sizing:border-box !important;}
  .ubx-community-page .ubx-start-pill:nth-child(n+5){display:none !important;}

  .ubx-jobs-page .ubx-action-card{display:block !important;}
  .ubx-jobs-page .ubx-intent-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:9px !important;margin-top:12px !important;}
  .ubx-jobs-page .ubx-intent-tile{min-height:76px !important;border-radius:18px !important;padding:13px 12px !important;}
  .ubx-jobs-page .ubx-intent-tile strong{font-size:15.5px !important;}
  .ubx-jobs-page .ubx-intent-tile span{font-size:12px !important;margin-top:6px !important;}
  .ubx-jobs-page .ubx-action-controls.compact{border-top:1px solid rgba(26,39,68,.075) !important;padding-top:12px !important;margin-top:12px !important;}
  .ubx-jobs-page .ubx-action-controls.compact>.ubx-primary{width:100% !important;min-width:0 !important;}
  .ubx-jobs-page .ubx-action-controls.compact .ubx-starter-row{display:flex !important;flex-wrap:nowrap !important;overflow-x:auto !important;gap:8px !important;padding-bottom:4px !important;justify-content:flex-start !important;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
  .ubx-jobs-page .ubx-action-controls.compact .ubx-starter-row::-webkit-scrollbar{display:none;}
  .ubx-jobs-page .ubx-action-controls.compact .ubx-start-pill{flex:0 0 auto !important;min-height:42px !important;padding:5px 12px 5px 7px !important;}

  .ubx-filter-card{border-radius:22px !important;padding:12px !important;margin-bottom:10px !important;}
  .ubx-filter-title{font-size:12px !important;}
  .ubx-filter-value{font-size:15px !important;}
  .ubx-filter-card .ubx-secondary{min-height:42px !important;min-width:110px !important;}
  .ubx-quick-tabs{gap:8px !important;margin:0 0 10px !important;}
  .ubx-quick-tabs a{min-height:39px !important;padding:0 13px !important;font-size:13px !important;}
}

@media(max-width:420px){
  .ubx-logo{font-size:34px !important;}
  .ubx-nav a{padding:0 13px !important;font-size:13.5px !important;}
  .ubx-hero h1{font-size:35px !important;}
  .ubx-hero p{font-size:15px !important;}
  .ubx-action-card h2{font-size:18.5px !important;}
  .ubx-community-page .ubx-starter-row{grid-template-columns:1fr 1fr !important;}
  .ubx-community-page .ubx-start-pill{font-size:12.5px !important;}
}


/* === Premium boards v22: map picker fit on mobile + centred on desktop === */

/* Desktop/tablet: map modal should sit in the centre, not slide to bottom */
@media(min-width:601px){
  .ubx-map-sheet{
    align-items:center !important;
    justify-content:center !important;
    padding:24px !important;
  }
  .ubx-map-panel{
    width:min(780px,94vw) !important;
    max-height:min(88vh,760px) !important;
    border-radius:28px !important;
    padding:16px !important;
    overflow:auto !important;
  }
  .ubx-map-canvas{
    height:min(48vh,390px) !important;
    min-height:310px !important;
    max-height:430px !important;
  }
}

/* Phone: make the sheet shorter so action buttons are visible without scrolling too much */
@media(max-width:600px){
  .ubx-map-sheet{
    padding:0 !important;
    align-items:flex-end !important;
    justify-content:center !important;
  }
  .ubx-map-panel{
    width:100% !important;
    max-height:calc(100dvh - env(safe-area-inset-top, 0px) - 8px) !important;
    border-radius:24px 24px 0 0 !important;
    padding:12px 12px calc(env(safe-area-inset-bottom, 0px) + 10px) !important;
    overflow:auto !important;
    box-sizing:border-box !important;
  }
  .ubx-map-head{
    margin-bottom:8px !important;
    gap:8px !important;
  }
  .ubx-map-head h2{
    font-size:25px !important;
    line-height:1.05 !important;
    letter-spacing:-.045em !important;
  }
  .ubx-map-head p{
    font-size:14px !important;
    line-height:1.32 !important;
    margin-top:4px !important;
  }
  .ubx-map-search{
    gap:7px !important;
    margin-bottom:8px !important;
  }
  .ubx-map-search input{
    min-height:44px !important;
    border-radius:16px !important;
    font-size:15px !important;
  }
  .ubx-map-search button{
    min-height:44px !important;
    border-radius:16px !important;
    font-size:15px !important;
  }
  .ubx-map-canvas{
    height:34vh !important;
    min-height:235px !important;
    max-height:310px !important;
    border-radius:20px !important;
  }
  .ubx-map-status{
    margin:8px 0 7px !important;
    font-size:13px !important;
    line-height:1.3 !important;
  }
  .ubx-map-actions{
    position:sticky !important;
    bottom:0 !important;
    z-index:5 !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
    padding:8px 0 0 !important;
    background:linear-gradient(180deg,rgba(255,255,255,.78),#fff 35%) !important;
  }
  .ubx-map-actions .ubx-primary,
  .ubx-map-actions .ubx-secondary{
    width:100% !important;
    min-height:43px !important;
    border-radius:999px !important;
    font-size:14px !important;
  }
}
@media(max-width:380px){
  .ubx-map-canvas{
    height:30vh !important;
    min-height:205px !important;
  }
  .ubx-map-head h2{
    font-size:22px !important;
  }
  .ubx-map-head p{
    font-size:13px !important;
  }
}


/* === Premium boards v23: placeholder media slots + question area optional === */
.ubx-media-placeholder{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:linear-gradient(145deg,#edf3ff 0%,#dbe7ff 52%,#f7fbff 100%);
}
.ubx-media-placeholder::before{
  content:"";
  position:absolute;
  inset:-18% auto auto -18%;
  width:74%;
  aspect-ratio:1;
  border-radius:50%;
  background:rgba(255,255,255,.55);
}
.ubx-media-placeholder::after{
  content:"";
  position:absolute;
  inset:auto -18% -14% auto;
  width:72%;
  aspect-ratio:1;
  border-radius:50%;
  background:rgba(255,255,255,.42);
}
.ubx-media-placeholder-inner{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-align:center;
  padding:16px;
}
.ubx-media-placeholder-icon{
  display:grid;
  place-items:center;
  width:56px;
  height:56px;
  border-radius:18px;
  background:rgba(255,255,255,.74);
  box-shadow:0 10px 24px rgba(37,99,235,.12);
}
.ubx-media-placeholder-icon .ubx-mini-icon{
  width:28px;
  height:28px;
  min-width:28px;
  min-height:28px;
  background:transparent;
  border:0;
  box-shadow:none;
}
.ubx-media-placeholder-icon .ubx-mini-icon svg{
  width:24px;
  height:24px;
  stroke:#2a4ea8;
  stroke-width:2.1;
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.ubx-media-placeholder-title{
  font-size:15px;
  line-height:1.1;
  font-weight:800;
  letter-spacing:-.03em;
  color:#18243c;
}
.ubx-media-placeholder-note{
  font-size:12px;
  line-height:1.28;
  color:#56657d;
  max-width:120px;
}
.ubx-placeholder-question{background:linear-gradient(145deg,#efe9ff 0%,#e6dcff 48%,#f8f5ff 100%);}
.ubx-placeholder-question .ubx-media-placeholder-icon .ubx-mini-icon svg{stroke:#6b46c1;}
.ubx-placeholder-alert{background:linear-gradient(145deg,#fff0ea 0%,#ffe5db 52%,#fff8f3 100%);}
.ubx-placeholder-alert .ubx-media-placeholder-icon .ubx-mini-icon svg{stroke:#d96b45;}
.ubx-placeholder-buysell{background:linear-gradient(145deg,#eef7eb 0%,#e3f2df 52%,#f9fdf7 100%);}
.ubx-placeholder-buysell .ubx-media-placeholder-icon .ubx-mini-icon svg{stroke:#2f8f4d;}
.ubx-placeholder-recommend,
.ubx-placeholder-event,
.ubx-placeholder-help,
.ubx-placeholder-lost,
.ubx-placeholder-pets,
.ubx-placeholder-generic,
.ubx-placeholder-looking{background:linear-gradient(145deg,#eef4ff 0%,#dce8ff 52%,#f8fbff 100%);}
.ubx-placeholder-job{background:linear-gradient(145deg,#edf6eb 0%,#dff0da 52%,#f8fcf7 100%);}
.ubx-placeholder-job .ubx-media-placeholder-icon .ubx-mini-icon svg,
.ubx-placeholder-looking .ubx-media-placeholder-icon .ubx-mini-icon svg{stroke:#245d9b;}

body.ubx-view-list .ubx-media-placeholder{
  width:168px;
  min-height:150px;
  height:100%;
}
body.ubx-view-list .ubx-media-placeholder .ubx-media-placeholder-title{
  font-size:16px;
}
body.ubx-view-list .ubx-media-placeholder .ubx-media-placeholder-note{
  font-size:12px;
}
@media(max-width:900px){
  body.ubx-view-list .ubx-media-placeholder{
    width:142px;
    min-height:138px;
  }
  .ubx-media-placeholder-inner{padding:14px 10px;gap:7px;}
  .ubx-media-placeholder-icon{width:50px;height:50px;border-radius:16px;}
  .ubx-media-placeholder-title{font-size:14px;}
  .ubx-media-placeholder-note{font-size:11.5px;max-width:110px;}
}
@media(max-width:600px){
  body.ubx-view-list .ubx-media-placeholder{
    width:122px;
    min-height:128px;
  }
  .ubx-media-placeholder-inner{padding:12px 8px;gap:6px;}
  .ubx-media-placeholder-icon{width:42px;height:42px;border-radius:14px;}
  .ubx-media-placeholder-title{font-size:13px;}
  .ubx-media-placeholder-note{font-size:10.5px;max-width:86px;}
}
.ubx-post-modal-body .ubx-media-placeholder,
body.ubx-view-list .ubx-post-modal-body .ubx-media-placeholder{
  width:100% !important;
  min-height:240px !important;
  height:240px !important;
}


/* === Premium boards v24: community replies / mini chat in full post modal === */
.ubx-reply-summary{
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 12px 12px;
  color:#667085;
  font-size:11.5px;
  font-weight:800;
}
.ubx-reply-open{
  appearance:none;
  border:1px solid rgba(16,24,39,.10);
  border-radius:999px;
  min-height:28px;
  padding:0 10px;
  background:#f3f4f6;
  color:#344054;
  font:inherit;
  font-size:11.5px;
  font-weight:850;
  cursor:pointer;
}
.ubx-thread{
  display:none;
}
.ubx-post-modal-body .ubx-reply-summary,
body.ubx-view-list .ubx-post-modal-body .ubx-reply-summary{
  display:none !important;
}
.ubx-post-modal-body .ubx-thread,
body.ubx-view-list .ubx-post-modal-body .ubx-thread{
  display:flex !important;
  flex-direction:column;
  gap:10px;
  min-height:28vh;
  padding:14px 16px 18px;
  border-top:1px solid rgba(16,24,39,.08);
  background:linear-gradient(180deg,#f8fafc,#ffffff);
}
.ubx-thread-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.ubx-thread-head strong{
  color:#172033;
  font-size:16px;
  font-weight:900;
  letter-spacing:-.03em;
}
.ubx-thread-head span{
  color:#667085;
  font-size:12px;
  font-weight:800;
}
.ubx-reply-list{
  display:flex;
  flex-direction:column;
  gap:9px;
  max-height:230px;
  overflow:auto;
  padding-right:2px;
}
.ubx-reply-item{
  display:grid;
  grid-template-columns:32px minmax(0,1fr);
  gap:8px;
  align-items:start;
}
.ubx-reply-avatar{
  width:32px;
  height:32px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#e8f0ff,#f6f9ff);
  color:#2459c9;
  font-size:13px;
  font-weight:900;
}
.ubx-reply-bubble{
  min-width:0;
  background:#fff;
  border:1px solid rgba(16,24,39,.08);
  border-radius:16px;
  padding:9px 10px;
  box-shadow:0 8px 20px rgba(16,24,39,.05);
}
.ubx-reply-meta{
  display:flex;
  gap:7px;
  align-items:baseline;
  flex-wrap:wrap;
  margin-bottom:3px;
}
.ubx-reply-meta strong{
  color:#1d2636;
  font-size:12.5px;
  font-weight:900;
}
.ubx-reply-meta span{
  color:#98a2b3;
  font-size:11px;
  font-weight:750;
}
.ubx-reply-text{
  color:#344054;
  font-size:13px;
  line-height:1.42;
  white-space:normal;
  overflow-wrap:anywhere;
}
.ubx-no-replies{
  border:1px dashed rgba(16,24,39,.13);
  border-radius:16px;
  padding:12px;
  color:#667085;
  font-size:13px;
  font-weight:700;
  background:#fff;
}
.ubx-reply-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:end;
  margin-top:2px;
}
.ubx-reply-form .ubx-reply-name{
  grid-column:1/-1;
  min-height:38px;
  border-radius:14px;
  border:1px solid rgba(16,24,39,.10);
  background:#fff;
  padding:0 12px;
  font:inherit;
  font-size:13px;
}
.ubx-reply-form textarea{
  min-height:44px;
  max-height:120px;
  resize:vertical;
  border-radius:18px;
  border:1px solid rgba(16,24,39,.10);
  background:#fff;
  padding:12px 13px;
  font:inherit;
  font-size:13.5px;
  line-height:1.35;
}
.ubx-reply-form .ubx-primary{
  min-height:44px;
  padding:0 14px;
}
.ubx-reply-login a{
  display:flex;
  min-height:42px;
  border-radius:999px;
  align-items:center;
  justify-content:center;
  background:#111827;
  color:#fff;
  text-decoration:none;
  font-size:13px;
  font-weight:850;
}
@media(max-width:600px){
  .ubx-post-modal-body .ubx-thread,
  body.ubx-view-list .ubx-post-modal-body .ubx-thread{
    min-height:32vh;
    padding:13px 14px 16px;
  }
  .ubx-reply-list{max-height:190px;}
  .ubx-reply-form{
    grid-template-columns:1fr;
  }
  .ubx-reply-form .ubx-primary{
    width:100%;
  }
}


/* === Premium boards v25: compact replies + category count badges === */
.ubx-quick-tabs a,
.ubx-sheet-chips a{
  gap:7px;
}
.ubx-quick-tabs a span,
.ubx-sheet-chips a span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}
.ubx-count-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:22px;
  height:22px;
  padding:0 7px;
  border-radius:999px;
  background:rgba(17,24,39,.09);
  color:#344054;
  font-size:11px;
  font-weight:900;
  line-height:1;
  flex:0 0 auto;
}
.ubx-quick-tabs a.is-active .ubx-count-badge,
.ubx-sheet-chips a.is-active .ubx-count-badge{
  background:rgba(255,255,255,.20);
  color:#fff;
}
.ubx-reply-summary{
  grid-column:1 / -1;
  display:flex !important;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  padding:0 12px 12px !important;
  min-width:0;
  width:auto;
  clear:both;
  z-index:2;
}
body.ubx-view-list .ubx-reply-summary{
  grid-column:1;
  grid-row:2;
  align-self:end;
  padding:0 8px 10px !important;
  gap:6px;
  flex-wrap:nowrap;
}
body.ubx-view-list .ubx-post-card:has(.ubx-location-card) .ubx-reply-summary{
  grid-column:1;
}
.ubx-reply-open{
  white-space:nowrap;
  flex:0 0 auto;
}
.ubx-reply-count-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:28px;
  height:28px;
  padding:0 9px;
  border-radius:999px;
  background:#eef2f7;
  border:1px solid rgba(16,24,39,.08);
  color:#667085;
  font-size:12px;
  font-weight:900;
  flex:0 0 auto;
}
body.ubx-view-list .ubx-reply-count-pill{
  min-width:28px;
  height:28px;
  padding:0 8px;
  font-size:12px;
}
.ubx-post-modal-body .ubx-thread .ubx-reply-form{
  display:grid !important;
}
@media(max-width:600px){
  body.ubx-view-list .ubx-reply-summary{
    grid-column:1;
    grid-row:2;
    padding:0 6px 9px !important;
  }
  body.ubx-view-list .ubx-reply-open{
    min-height:30px;
    padding:0 11px;
    font-size:12px;
  }
  body.ubx-view-list .ubx-reply-count-pill{
    min-width:30px;
    height:30px;
    font-size:12px;
  }
}


/* === Premium boards v26: reply chat mobile polish === */
.ubx-reply-more-note{
  margin-top:-4px;
  color:#98a2b3;
  font-size:11.5px;
  font-weight:750;
}
.ubx-post-modal-body .ubx-thread,
body.ubx-view-list .ubx-post-modal-body .ubx-thread{
  min-height:0 !important;
  padding:12px 14px 14px !important;
  gap:9px !important;
}
.ubx-reply-list{
  max-height:26vh !important;
  min-height:74px;
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  padding-right:3px;
}
.ubx-reply-list::-webkit-scrollbar{width:4px;}
.ubx-reply-list::-webkit-scrollbar-thumb{background:rgba(102,112,133,.28);border-radius:999px;}
.ubx-reply-item{
  grid-template-columns:30px minmax(0,1fr) !important;
  gap:8px !important;
}
.ubx-reply-avatar{
  width:30px !important;
  height:30px !important;
  border-radius:12px !important;
}
.ubx-reply-bubble{
  border-radius:18px !important;
  padding:9px 11px !important;
}
.ubx-reply-form{
  position:sticky;
  bottom:0;
  z-index:6;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 96px !important;
  gap:8px !important;
  align-items:end !important;
  padding-top:8px;
  background:linear-gradient(180deg,rgba(248,250,252,.72),#fff 42%);
  border-top:1px solid rgba(16,24,39,.06);
}
.ubx-reply-form .ubx-reply-name{
  grid-column:1/-1 !important;
  min-height:34px !important;
  height:34px !important;
  border-radius:999px !important;
  font-size:12.5px !important;
  padding:0 12px !important;
  background:#fff !important;
}
.ubx-reply-form textarea{
  min-height:44px !important;
  height:44px !important;
  max-height:92px !important;
  resize:vertical !important;
  border-radius:22px !important;
  font-size:13.5px !important;
  line-height:1.25 !important;
  padding:12px 13px !important;
  background:#fff !important;
}
.ubx-reply-form .ubx-primary{
  min-height:44px !important;
  height:44px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  font-size:13px !important;
  white-space:nowrap !important;
}
@media(max-width:600px){
  .ubx-post-modal-body .ubx-thread,
  body.ubx-view-list .ubx-post-modal-body .ubx-thread{
    padding:11px 12px 12px !important;
    min-height:30vh !important;
  }
  .ubx-reply-list{
    max-height:21vh !important;
    min-height:70px;
  }
  .ubx-thread-head strong{font-size:15px !important;}
  .ubx-thread-head span{font-size:12px !important;}
  .ubx-reply-form{
    grid-template-columns:minmax(0,1fr) 86px !important;
    gap:7px !important;
  }
  .ubx-reply-form .ubx-reply-name{
    min-height:32px !important;
    height:32px !important;
  }
  .ubx-reply-form textarea{
    min-height:42px !important;
    height:42px !important;
  }
  .ubx-reply-form .ubx-primary{
    min-height:42px !important;
    height:42px !important;
    font-size:12.5px !important;
  }
}
@media(max-width:380px){
  .ubx-reply-form{
    grid-template-columns:1fr !important;
  }
  .ubx-reply-form .ubx-primary{
    width:100% !important;
  }
}


/* === Premium boards v27: reply form stays usable above mobile keyboard === */
.ubx-post-modal-body .ubx-thread,
body.ubx-view-list .ubx-post-modal-body .ubx-thread{
  padding-bottom:calc(env(safe-area-inset-bottom, 0px) + 10px) !important;
}
.ubx-reply-form{
  grid-template-columns:minmax(0,1fr) 78px !important;
  gap:7px !important;
  align-items:end !important;
}
.ubx-reply-form .ubx-primary{
  width:78px !important;
  min-width:78px !important;
  padding:0 8px !important;
  font-size:12.5px !important;
}
.ubx-reply-form textarea{
  min-width:0 !important;
  width:100% !important;
}
.ubx-reply-form:focus-within{
  position:sticky !important;
  bottom:0 !important;
  z-index:20 !important;
  padding:7px 0 calc(env(safe-area-inset-bottom, 0px) + 4px) !important;
}
.ubx-thread:has(.ubx-reply-form:focus-within) .ubx-reply-list{
  max-height:14vh !important;
  min-height:42px !important;
}
.ubx-thread:has(.ubx-reply-form:focus-within) .ubx-reply-name{
  min-height:30px !important;
  height:30px !important;
}
.ubx-thread:has(.ubx-reply-form:focus-within) textarea{
  min-height:42px !important;
  height:42px !important;
  max-height:70px !important;
}
@media(max-width:600px){
  .ubx-reply-form{
    grid-template-columns:minmax(0,1fr) 74px !important;
  }
  .ubx-reply-form .ubx-primary{
    width:74px !important;
    min-width:74px !important;
    font-size:12px !important;
  }
  .ubx-thread:has(.ubx-reply-form:focus-within) .ubx-reply-list{
    max-height:11vh !important;
    min-height:34px !important;
  }
}
@media(max-width:380px){
  .ubx-reply-form{
    grid-template-columns:minmax(0,1fr) 70px !important;
  }
  .ubx-reply-form .ubx-primary{
    width:70px !important;
    min-width:70px !important;
  }
}


/* === Premium boards v28: restore colourful category count badges === */
.ubx-count-badge{
  background:linear-gradient(135deg,#2563eb,#60a5fa) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.74) !important;
  box-shadow:0 8px 18px rgba(37,99,235,.20) !important;
  font-weight:950 !important;
}
.ubx-quick-tabs a:not(.is-active) .ubx-count-badge,
.ubx-sheet-chips a:not(.is-active) .ubx-count-badge{
  background:linear-gradient(135deg,#eaf2ff,#dbeafe) !important;
  color:#1d4ed8 !important;
  border:1px solid rgba(37,99,235,.15) !important;
  box-shadow:0 6px 14px rgba(37,99,235,.10) !important;
}
.ubx-quick-tabs a.is-active .ubx-count-badge,
.ubx-sheet-chips a.is-active .ubx-count-badge{
  background:#fff !important;
  color:#111827 !important;
  border:1px solid rgba(255,255,255,.35) !important;
  box-shadow:0 6px 14px rgba(0,0,0,.16) !important;
}
.ubx-quick-tabs a[href*="Fly-tipping"] .ubx-count-badge,
.ubx-sheet-chips a[href*="Fly-tipping"] .ubx-count-badge{
  background:linear-gradient(135deg,#fee2e2,#fecaca) !important;
  color:#b42318 !important;
  border-color:rgba(180,35,24,.14) !important;
}
.ubx-quick-tabs a[href*="Question"] .ubx-count-badge,
.ubx-sheet-chips a[href*="Question"] .ubx-count-badge{
  background:linear-gradient(135deg,#f3e8ff,#e9d5ff) !important;
  color:#6b21a8 !important;
  border-color:rgba(107,33,168,.14) !important;
}
.ubx-quick-tabs a[href*="Buy"] .ubx-count-badge,
.ubx-sheet-chips a[href*="Buy"] .ubx-count-badge,
.ubx-quick-tabs a[href*="Free"] .ubx-count-badge,
.ubx-sheet-chips a[href*="Free"] .ubx-count-badge{
  background:linear-gradient(135deg,#dcfce7,#bbf7d0) !important;
  color:#166534 !important;
  border-color:rgba(22,101,52,.14) !important;
}
.ubx-quick-tabs a[href*="Recommendation"] .ubx-count-badge,
.ubx-sheet-chips a[href*="Recommendation"] .ubx-count-badge{
  background:linear-gradient(135deg,#fef3c7,#fde68a) !important;
  color:#92400e !important;
  border-color:rgba(146,64,14,.14) !important;
}
.ubx-quick-tabs a.is-active .ubx-count-badge,
.ubx-sheet-chips a.is-active .ubx-count-badge{
  background:#fff !important;
  color:#111827 !important;
}


/* === Premium boards v29: cleaner top section for Community + Jobs === */

/* Make the top navigation feel like an app bar, not a loose group of big buttons. */
.ubx-top{
  align-items:flex-start;
}
.ubx-nav{
  scrollbar-width:none;
}
.ubx-nav::-webkit-scrollbar{
  display:none;
}

@media(max-width:760px){
  .ubx-shell{
    padding-top:18px !important;
  }

  .ubx-top{
    gap:14px !important;
    margin-bottom:14px !important;
  }

  .ubx-logo{
    font-size:48px !important;
    line-height:.95 !important;
    letter-spacing:-.07em !important;
  }

  .ubx-nav{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:8px !important;
    width:100% !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding:0 4px 4px 0 !important;
    scroll-snap-type:x proximity;
  }

  .ubx-nav a{
    flex:0 0 auto !important;
    white-space:nowrap !important;
    min-height:42px !important;
    padding:0 18px !important;
    border-radius:999px !important;
    font-size:15px !important;
    scroll-snap-align:start;
  }

  .ubx-hero{
    margin-top:4px !important;
    margin-bottom:14px !important;
  }

  .ubx-hero-clean,
  .ubx-hero-main{
    border-radius:28px !important;
  }

  .ubx-hero-main{
    padding:24px 26px 26px !important;
    min-height:auto !important;
  }

  .ubx-eyebrow{
    font-size:12px !important;
    letter-spacing:.06em !important;
    margin-bottom:10px !important;
  }

  .ubx-hero h1{
    font-size:43px !important;
    line-height:.98 !important;
    letter-spacing:-.07em !important;
    margin-bottom:12px !important;
  }

  .ubx-hero p{
    font-size:20px !important;
    line-height:1.28 !important;
    max-width:100% !important;
  }

  .ubx-action-card-rich,
  .ubx-action-card{
    border-radius:28px !important;
    padding:20px !important;
    margin-bottom:14px !important;
  }

  .ubx-action-copy h2{
    font-size:24px !important;
    line-height:1.08 !important;
    letter-spacing:-.055em !important;
    margin-bottom:6px !important;
  }

  .ubx-action-copy p{
    font-size:15.5px !important;
    line-height:1.32 !important;
    margin-bottom:14px !important;
  }

  .ubx-action-controls{
    gap:12px !important;
  }

  .ubx-action-card .ubx-primary,
  .ubx-action-card-rich .ubx-primary{
    min-height:54px !important;
    height:54px !important;
    border-radius:999px !important;
    font-size:16px !important;
    box-shadow:0 14px 34px rgba(37,99,235,.22) !important;
  }

  .ubx-starter-row{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:9px !important;
    overflow:visible !important;
    padding:0 !important;
  }

  .ubx-start-pill{
    width:100% !important;
    min-width:0 !important;
    min-height:54px !important;
    padding:8px 10px !important;
    border-radius:20px !important;
    justify-content:flex-start !important;
    gap:9px !important;
    font-size:14px !important;
    line-height:1.1 !important;
  }

  .ubx-start-pill .ubx-mini-icon{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    border-radius:13px !important;
  }

  .ubx-start-pill span:not(.ubx-mini-icon){
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  /* Jobs: keep the two decision tiles but make them compact and clear. */
  .ubx-job-intent-card .ubx-intent-grid{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
    margin-top:12px !important;
  }

  .ubx-intent-tile{
    min-height:92px !important;
    padding:15px 14px !important;
    border-radius:22px !important;
  }

  .ubx-intent-tile strong{
    font-size:19px !important;
    line-height:1.08 !important;
    letter-spacing:-.045em !important;
  }

  .ubx-intent-tile span{
    font-size:13px !important;
    line-height:1.25 !important;
  }

  .ubx-filter-card{
    border-radius:24px !important;
    padding:14px !important;
    margin-bottom:12px !important;
  }

  .ubx-filter-icon{
    width:46px !important;
    height:46px !important;
    border-radius:16px !important;
  }

  .ubx-filter-title{
    font-size:12px !important;
  }

  .ubx-filter-value{
    font-size:18px !important;
    line-height:1.08 !important;
  }

  .ubx-filter-open{
    min-height:48px !important;
    padding:0 22px !important;
    border-radius:999px !important;
  }

  .ubx-quick-tabs{
    gap:8px !important;
    padding-bottom:8px !important;
    margin-bottom:12px !important;
  }

  .ubx-quick-tabs a{
    min-height:40px !important;
    padding:0 14px !important;
    border-radius:999px !important;
    font-size:14px !important;
  }

  .ubx-count-badge{
    min-width:21px !important;
    height:21px !important;
    padding:0 6px !important;
    font-size:10.5px !important;
  }
}

@media(max-width:390px){
  .ubx-logo{
    font-size:43px !important;
  }

  .ubx-nav a{
    min-height:40px !important;
    padding:0 15px !important;
    font-size:14px !important;
  }

  .ubx-hero-main{
    padding:22px 22px 24px !important;
  }

  .ubx-hero h1{
    font-size:39px !important;
  }

  .ubx-hero p{
    font-size:18px !important;
  }

  .ubx-action-card-rich,
  .ubx-action-card{
    padding:18px !important;
  }

  .ubx-start-pill{
    font-size:13px !important;
    min-height:52px !important;
  }

  .ubx-intent-tile{
    min-height:86px !important;
    padding:13px 12px !important;
  }

  .ubx-intent-tile strong{
    font-size:17px !important;
  }

  .ubx-intent-tile span{
    font-size:12.5px !important;
  }
}


/* === Premium boards v30: feed-first mobile layout === */
/* Goal: on phones, users should see real posts around mid-screen, not only intro text. */
@media(max-width:760px){
  .ubx-shell{
    padding-top:14px !important;
  }

  .ubx-top{
    gap:10px !important;
    margin-bottom:10px !important;
  }

  .ubx-logo{
    font-size:40px !important;
    line-height:.95 !important;
    letter-spacing:-.07em !important;
  }

  .ubx-nav{
    gap:7px !important;
    padding-bottom:2px !important;
  }

  .ubx-nav a{
    min-height:36px !important;
    height:36px !important;
    padding:0 14px !important;
    font-size:13.5px !important;
    border-radius:999px !important;
  }

  /* Turn the big hero into a compact title strip. */
  .ubx-hero{
    margin:0 0 8px !important;
  }

  .ubx-hero-clean,
  .ubx-hero-main{
    border-radius:22px !important;
  }

  .ubx-hero-main{
    padding:14px 16px !important;
    min-height:0 !important;
  }

  .ubx-eyebrow{
    display:none !important;
  }

  .ubx-hero h1{
    font-size:30px !important;
    line-height:1 !important;
    letter-spacing:-.06em !important;
    margin:0 0 5px !important;
  }

  .ubx-hero p{
    font-size:13.5px !important;
    line-height:1.24 !important;
    margin:0 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
  }

  /* Compact action area: Add button + quick shortcuts, less explanatory text. */
  .ubx-action-card-rich,
  .ubx-action-card{
    border-radius:22px !important;
    padding:13px !important;
    margin-bottom:9px !important;
  }

  .ubx-action-copy h2{
    font-size:18px !important;
    line-height:1.05 !important;
    margin:0 0 3px !important;
    letter-spacing:-.045em !important;
  }

  .ubx-action-copy p{
    display:none !important;
  }

  .ubx-action-controls{
    gap:8px !important;
  }

  .ubx-action-card .ubx-primary,
  .ubx-action-card-rich .ubx-primary{
    min-height:43px !important;
    height:43px !important;
    border-radius:999px !important;
    font-size:14.5px !important;
    box-shadow:0 10px 24px rgba(37,99,235,.18) !important;
  }

  .ubx-starter-row{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    gap:7px !important;
    padding:0 2px 2px 0 !important;
    scrollbar-width:none;
  }
  .ubx-starter-row::-webkit-scrollbar{display:none;}

  .ubx-start-pill{
    flex:0 0 auto !important;
    width:auto !important;
    min-width:auto !important;
    min-height:38px !important;
    height:38px !important;
    padding:0 12px 0 7px !important;
    border-radius:999px !important;
    gap:7px !important;
    font-size:12.5px !important;
    line-height:1 !important;
  }

  .ubx-start-pill .ubx-mini-icon{
    width:28px !important;
    height:28px !important;
    min-width:28px !important;
    border-radius:999px !important;
  }

  .ubx-start-pill .ubx-mini-icon svg{
    width:17px !important;
    height:17px !important;
  }

  /* Jobs decision tiles: make them small enough that posts still appear quickly. */
  .ubx-job-intent-card .ubx-intent-grid{
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    margin-top:8px !important;
  }

  .ubx-intent-tile{
    min-height:64px !important;
    padding:10px 11px !important;
    border-radius:18px !important;
  }

  .ubx-intent-tile strong{
    font-size:15.5px !important;
    line-height:1.06 !important;
    letter-spacing:-.04em !important;
  }

  .ubx-intent-tile span{
    font-size:11.5px !important;
    line-height:1.18 !important;
  }

  /* Filter and category chips are still available, but no longer dominate the first screen. */
  .ubx-filter-card{
    border-radius:19px !important;
    padding:10px !important;
    margin-bottom:8px !important;
  }

  .ubx-filter-summary{
    gap:9px !important;
  }

  .ubx-filter-icon{
    width:36px !important;
    height:36px !important;
    border-radius:13px !important;
  }

  .ubx-filter-title{
    font-size:10.5px !important;
    line-height:1.05 !important;
  }

  .ubx-filter-value{
    font-size:15px !important;
    line-height:1.05 !important;
  }

  .ubx-filter-open{
    min-height:38px !important;
    height:38px !important;
    padding:0 16px !important;
    border-radius:999px !important;
    font-size:13px !important;
  }

  .ubx-quick-tabs{
    gap:7px !important;
    padding-bottom:6px !important;
    margin-bottom:8px !important;
  }

  .ubx-quick-tabs a{
    min-height:34px !important;
    height:34px !important;
    padding:0 11px !important;
    border-radius:999px !important;
    font-size:12.5px !important;
  }

  .ubx-count-badge{
    min-width:19px !important;
    height:19px !important;
    padding:0 5px !important;
    font-size:10px !important;
  }

  .ubx-feed{
    gap:10px !important;
  }
}

@media(max-width:390px){
  .ubx-logo{
    font-size:37px !important;
  }
  .ubx-nav a{
    min-height:34px !important;
    height:34px !important;
    padding:0 12px !important;
    font-size:13px !important;
  }
  .ubx-hero h1{
    font-size:28px !important;
  }
  .ubx-hero p{
    font-size:13px !important;
  }
  .ubx-action-card-rich,
  .ubx-action-card{
    padding:12px !important;
  }
  .ubx-action-copy h2{
    font-size:17px !important;
  }
}


/* === Premium boards v31: warmer coloured titles + job count badges === */

/* Make the board titles feel less black/flat, without making the page heavy. */
.ubx-community-page .ubx-hero h1{
  background:linear-gradient(135deg,#111827 0%,#2563eb 52%,#60a5fa 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
}
.ubx-jobs-page .ubx-hero h1{
  background:linear-gradient(135deg,#172033 0%,#0ea5e9 45%,#22c55e 100%) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
}
.ubx-community-page .ubx-hero-main::after{
  background:radial-gradient(circle at 70% 25%,rgba(37,99,235,.16),transparent 58%) !important;
}
.ubx-jobs-page .ubx-hero-main::after{
  background:radial-gradient(circle at 70% 25%,rgba(34,197,94,.14),transparent 58%) !important;
}
.ubx-jobs-page .ubx-eyebrow{
  color:#0f8a6a !important;
}
.ubx-jobs-page .ubx-eyebrow::before{
  background:#22c55e !important;
  box-shadow:0 0 0 7px rgba(34,197,94,.12) !important;
}
.ubx-jobs-page .ubx-action-card .ubx-primary,
.ubx-jobs-page .ubx-action-card-rich .ubx-primary{
  background:linear-gradient(135deg,#2563eb,#0ea5e9 52%,#22c55e) !important;
  box-shadow:0 12px 30px rgba(14,165,233,.22) !important;
}
.ubx-community-page .ubx-action-card .ubx-primary,
.ubx-community-page .ubx-action-card-rich .ubx-primary{
  background:linear-gradient(135deg,#2563eb,#4f46e5) !important;
}

/* Job category counters: keep them colourful like Community counters. */
.ubx-job-tabs a[href*="Electrician"] .ubx-count-badge,
.ubx-sheet-chips a[href*="Electrician"] .ubx-count-badge{
  background:linear-gradient(135deg,#fef3c7,#fde68a) !important;
  color:#92400e !important;
  border-color:rgba(146,64,14,.14) !important;
}
.ubx-job-tabs a[href*="Plumber"] .ubx-count-badge,
.ubx-sheet-chips a[href*="Plumber"] .ubx-count-badge{
  background:linear-gradient(135deg,#dbeafe,#bfdbfe) !important;
  color:#1d4ed8 !important;
  border-color:rgba(29,78,216,.14) !important;
}
.ubx-job-tabs a[href*="Cleaning"] .ubx-count-badge,
.ubx-sheet-chips a[href*="Cleaning"] .ubx-count-badge{
  background:linear-gradient(135deg,#cffafe,#a5f3fc) !important;
  color:#0e7490 !important;
  border-color:rgba(14,116,144,.14) !important;
}
.ubx-job-tabs a[href*="Gardening"] .ubx-count-badge,
.ubx-sheet-chips a[href*="Gardening"] .ubx-count-badge{
  background:linear-gradient(135deg,#dcfce7,#bbf7d0) !important;
  color:#166534 !important;
  border-color:rgba(22,101,52,.14) !important;
}
.ubx-job-tabs a[href*="Handyman"] .ubx-count-badge,
.ubx-sheet-chips a[href*="Handyman"] .ubx-count-badge,
.ubx-job-tabs a[href*="Rubbish"] .ubx-count-badge,
.ubx-sheet-chips a[href*="Rubbish"] .ubx-count-badge{
  background:linear-gradient(135deg,#ffedd5,#fed7aa) !important;
  color:#9a3412 !important;
  border-color:rgba(154,52,18,.14) !important;
}
.ubx-job-tabs a[href*="Hiring"] .ubx-count-badge,
.ubx-sheet-chips a[href*="hiring"] .ubx-count-badge{
  background:linear-gradient(135deg,#e0f2fe,#bae6fd) !important;
  color:#0369a1 !important;
}
.ubx-job-tabs a[href*="looking"] .ubx-count-badge,
.ubx-sheet-chips a[href*="looking"] .ubx-count-badge{
  background:linear-gradient(135deg,#f3e8ff,#e9d5ff) !important;
  color:#6b21a8 !important;
}


/* === Premium boards v32: Community shortcuts browse first when posts exist === */
.ubx-start-pill.ubx-start-browse{
  text-decoration:none !important;
  background:linear-gradient(135deg,#ffffff,#f7fbff) !important;
  border-color:rgba(37,99,235,.16) !important;
}
.ubx-start-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:22px;
  height:22px;
  padding:0 7px;
  border-radius:999px;
  background:linear-gradient(135deg,#2563eb,#0ea5e9);
  color:#fff;
  font-size:11px;
  line-height:1;
  font-weight:950;
  box-shadow:0 7px 16px rgba(37,99,235,.20);
  margin-left:auto;
}
.ubx-start-pill.ubx-start-browse:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 24px rgba(15,23,42,.10) !important;
}
@media(max-width:760px){
  .ubx-start-count{
    min-width:20px !important;
    height:20px !important;
    padding:0 6px !important;
    font-size:10px !important;
  }
  .ubx-start-pill.ubx-start-browse span:not(.ubx-mini-icon){
    max-width:120px;
  }
}


/* === Premium boards v33: Community Add post inline with title === */
/* Makes "Post a local update" and "+ Add post" sit in one row to save vertical space. */
.ubx-community-page .ubx-action-card-rich{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  column-gap:12px !important;
  row-gap:10px !important;
}
.ubx-community-page .ubx-action-card-rich .ubx-action-copy{
  grid-column:1 !important;
  grid-row:1 !important;
  min-width:0 !important;
}
.ubx-community-page .ubx-action-card-rich .ubx-action-controls{
  display:contents !important;
}
.ubx-community-page .ubx-action-card-rich .ubx-action-controls > .ubx-primary{
  grid-column:2 !important;
  grid-row:1 !important;
  justify-self:end !important;
  align-self:center !important;
  width:auto !important;
  min-width:0 !important;
  min-height:40px !important;
  height:40px !important;
  padding:0 16px !important;
  border-radius:999px !important;
  font-size:14px !important;
  white-space:nowrap !important;
}
.ubx-community-page .ubx-action-card-rich .ubx-starter-row{
  grid-column:1 / -1 !important;
  grid-row:2 !important;
  width:100% !important;
}
@media(max-width:760px){
  .ubx-community-page .ubx-action-card-rich{
    padding:12px 13px !important;
    column-gap:9px !important;
    row-gap:8px !important;
  }
  .ubx-community-page .ubx-action-card-rich .ubx-action-copy h2{
    margin:0 !important;
    font-size:17px !important;
    line-height:1.05 !important;
  }
  .ubx-community-page .ubx-action-card-rich .ubx-action-controls > .ubx-primary{
    min-height:36px !important;
    height:36px !important;
    padding:0 13px !important;
    font-size:13px !important;
    box-shadow:0 8px 18px rgba(37,99,235,.16) !important;
  }
}
@media(max-width:360px){
  .ubx-community-page .ubx-action-card-rich .ubx-action-copy h2{
    font-size:16px !important;
  }
  .ubx-community-page .ubx-action-card-rich .ubx-action-controls > .ubx-primary{
    padding:0 11px !important;
    font-size:12.5px !important;
  }
}


/* === Premium boards v34: optional smart Buy/Sell fields === */
.ubx-buy-sell-panel{
  display:none;
  border:1px solid rgba(22,101,52,.14);
  border-radius:24px;
  padding:14px;
  background:
    radial-gradient(circle at 18% 0%, rgba(34,197,94,.14), transparent 38%),
    linear-gradient(135deg,#f7fff9,#ffffff 62%);
  box-shadow:0 14px 34px rgba(22,101,52,.07);
}
.ubx-buy-sell-panel.is-visible{
  display:block;
}
.ubx-buy-sell-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.ubx-buy-sell-head strong{
  display:block;
  color:#12321f;
  font-size:18px;
  line-height:1.1;
  font-weight:950;
  letter-spacing:-.035em;
}
.ubx-buy-sell-head span{
  display:block;
  margin-top:3px;
  color:#667085;
  font-size:13px;
  line-height:1.25;
  font-weight:750;
}
.ubx-buy-sell-head small{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:linear-gradient(135deg,#dcfce7,#bbf7d0);
  color:#166534;
  border:1px solid rgba(22,101,52,.12);
  font-size:11px;
  font-weight:950;
  white-space:nowrap;
}
.ubx-buy-sell-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.ubx-buy-sell-grid .full{
  grid-column:1 / -1;
}
.ubx-buy-sell-panel input,
.ubx-buy-sell-panel select{
  background:#fff !important;
}
@media(max-width:700px){
  .ubx-buy-sell-panel{
    padding:12px;
    border-radius:22px;
  }
  .ubx-buy-sell-head{
    margin-bottom:10px;
  }
  .ubx-buy-sell-head strong{
    font-size:17px;
  }
  .ubx-buy-sell-head span{
    font-size:12.5px;
  }
  .ubx-buy-sell-head small{
    min-height:25px;
    padding:0 8px;
    font-size:10.5px;
  }
  .ubx-buy-sell-grid{
    grid-template-columns:1fr;
    gap:9px;
  }
}


/* =========================================================
   Urbiax Boards Modern Rebuild v1 — Community + Jobs polish
   ========================================================= */

.ubx-board-page{
  background:
    radial-gradient(circle at 14% -6%, rgba(37,99,235,.15), transparent 34%),
    radial-gradient(circle at 92% 0%, rgba(34,197,94,.10), transparent 30%),
    linear-gradient(180deg,#f5f9ff,#ffffff 60%) !important;
}
.ubx-shell{
  max-width:980px !important;
}
.ubx-top{
  position:relative;
}
.ubx-logo{
  letter-spacing:-.07em !important;
  background:linear-gradient(135deg,#0f172a,#1d4ed8 62%,#0ea5e9) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
}
.ubx-logo span{
  background:linear-gradient(135deg,#2563eb,#60a5fa) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
}
.ubx-nav{
  background:rgba(255,255,255,.70);
  border:1px solid rgba(15,23,42,.07);
  box-shadow:0 12px 26px rgba(15,23,42,.05);
  border-radius:999px;
  padding:6px;
}
.ubx-nav a{
  border-radius:999px !important;
  min-height:38px !important;
  font-weight:950 !important;
}
.ubx-community-page .ubx-nav a.is-active{
  background:linear-gradient(135deg,#4f46e5,#7c3aed) !important;
  color:#fff !important;
  box-shadow:0 10px 24px rgba(79,70,229,.24);
}
.ubx-jobs-page .ubx-nav a.is-active{
  background:linear-gradient(135deg,#059669,#22c55e) !important;
  color:#fff !important;
  box-shadow:0 10px 24px rgba(34,197,94,.22);
}

/* Hero cards */
.ubx-hero-main{
  position:relative;
  overflow:hidden;
  border-radius:28px !important;
  border:1px solid rgba(255,255,255,.74);
  box-shadow:0 18px 44px rgba(15,23,42,.08);
}
.ubx-community-page .ubx-hero-main{
  background:
    radial-gradient(circle at 80% 35%, rgba(255,255,255,.22), transparent 30%),
    linear-gradient(135deg,#5b6cff,#7c3aed) !important;
  color:#fff !important;
}
.ubx-community-page .ubx-hero h1,
.ubx-community-page .ubx-hero p,
.ubx-community-page .ubx-eyebrow{
  color:#fff !important;
  background:none !important;
  -webkit-text-fill-color:initial !important;
}
.ubx-community-page .ubx-eyebrow::before{
  background:#fff !important;
  box-shadow:0 0 0 7px rgba(255,255,255,.18) !important;
}
.ubx-community-page .ubx-hero-main::after{
  content:"";
  position:absolute;
  right:22px;
  top:28px;
  width:150px;
  height:110px;
  border-radius:32px;
  opacity:.34;
  background:
    radial-gradient(circle at 20% 35%, #fff 0 8px, transparent 9px),
    radial-gradient(circle at 55% 62%, #fff 0 10px, transparent 11px),
    radial-gradient(circle at 78% 25%, #fff 0 6px, transparent 7px),
    linear-gradient(135deg,rgba(255,255,255,.28),rgba(255,255,255,.07));
  transform:rotate(-6deg);
}
.ubx-jobs-page .ubx-hero-main{
  background:
    radial-gradient(circle at 84% 28%, rgba(34,197,94,.22), transparent 32%),
    linear-gradient(135deg,#ecfdf5,#f8fffb) !important;
}
.ubx-jobs-page .ubx-hero h1{
  background:linear-gradient(135deg,#166534,#0ea5e9) !important;
  -webkit-background-clip:text !important;
  background-clip:text !important;
  color:transparent !important;
}
.ubx-jobs-page .ubx-hero-main::after{
  content:"";
  position:absolute;
  right:24px;
  top:22px;
  width:116px;
  height:116px;
  border-radius:30px;
  opacity:.78;
  background:
    radial-gradient(circle at 78% 82%, rgba(14,165,233,.28), transparent 0 16px, transparent 17px),
    linear-gradient(135deg,#16a34a,#22c55e);
  box-shadow:0 18px 34px rgba(34,197,94,.25);
}

/* Action cards / shortcut tiles */
.ubx-action-card-rich,
.ubx-action-card,
.ubx-filter-card,
.ubx-post-card{
  border:1px solid rgba(15,23,42,.07) !important;
  background:rgba(255,255,255,.86) !important;
  box-shadow:0 18px 42px rgba(15,23,42,.07) !important;
  border-radius:26px !important;
}
.ubx-community-page .ubx-action-card-rich{
  grid-template-columns:minmax(0,1fr) auto !important;
}
.ubx-start-pill,
.ubx-intent-tile{
  border-radius:20px !important;
  background:#fff !important;
  border:1px solid rgba(15,23,42,.07) !important;
  box-shadow:0 10px 22px rgba(15,23,42,.045) !important;
}
.ubx-mini-icon{
  box-shadow:0 8px 18px rgba(15,23,42,.06);
}
.ubx-action-card-rich .ubx-primary,
.ubx-action-card .ubx-primary,
.ubx-jobs-page .ubx-primary{
  box-shadow:0 12px 26px rgba(37,99,235,.22) !important;
}
.ubx-jobs-page .ubx-primary{
  background:linear-gradient(135deg,#0ea5e9,#22c55e) !important;
}

/* Category chips */
.ubx-quick-tabs a,
.ubx-sheet-chips a{
  border-radius:999px !important;
  border:1px solid rgba(15,23,42,.07) !important;
  box-shadow:0 8px 18px rgba(15,23,42,.045) !important;
}
.ubx-community-page .ubx-quick-tabs a.is-active{
  background:linear-gradient(135deg,#4f46e5,#7c3aed) !important;
}
.ubx-jobs-page .ubx-quick-tabs a.is-active{
  background:linear-gradient(135deg,#059669,#22c55e) !important;
}

/* Feed cards */
body.ubx-view-list .ubx-post-card{
  overflow:hidden !important;
}
.ubx-post-card .ubx-media-carousel,
.ubx-post-card .ubx-placeholder-card{
  border-radius:22px !important;
  overflow:hidden !important;
}
.ubx-avatar{
  border-radius:16px !important;
}
.ubx-post-title{
  letter-spacing:-.04em !important;
}
.ubx-map-row{
  border-radius:18px !important;
  background:linear-gradient(135deg,#f8fbff,#ffffff) !important;
  border:1px solid rgba(37,99,235,.10) !important;
}
.ubx-pill{
  border-radius:999px !important;
}
.ubx-post-actions .ubx-secondary,
.ubx-card-actions .ubx-secondary{
  border-radius:999px !important;
}

/* Mobile density and mockup feel */
@media(max-width:760px){
  .ubx-shell{
    padding-top:10px !important;
  }
  .ubx-logo{
    font-size:42px !important;
    line-height:.95 !important;
  }
  .ubx-nav{
    width:100%;
    overflow-x:auto;
    justify-content:flex-start !important;
  }
  .ubx-nav::-webkit-scrollbar{display:none;}
  .ubx-nav a{
    flex:0 0 auto;
    min-height:36px !important;
    padding:0 14px !important;
    font-size:13px !important;
  }
  .ubx-hero-main{
    padding:18px 20px !important;
    min-height:0 !important;
  }
  .ubx-hero h1{
    font-size:32px !important;
    line-height:1 !important;
  }
  .ubx-hero p{
    font-size:14px !important;
    line-height:1.25 !important;
    max-width:76%;
    display:-webkit-box;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .ubx-action-card-rich,
  .ubx-action-card{
    padding:13px !important;
  }
  .ubx-community-page .ubx-action-card-rich .ubx-action-copy h2{
    font-size:18px !important;
  }
  .ubx-community-page .ubx-action-card-rich .ubx-action-controls > .ubx-primary{
    min-height:38px !important;
    height:38px !important;
    padding:0 14px !important;
    font-size:13px !important;
  }
  .ubx-starter-row{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:9px !important;
    overflow:visible !important;
  }
  .ubx-start-pill{
    min-height:62px !important;
    padding:10px !important;
    justify-content:flex-start !important;
  }
  .ubx-job-intent-card .ubx-intent-grid{
    grid-template-columns:1fr 1fr !important;
    gap:9px !important;
  }
  .ubx-intent-tile{
    min-height:78px !important;
    padding:12px !important;
  }
  .ubx-filter-card{
    padding:11px !important;
  }
  .ubx-feed{
    gap:12px !important;
  }
  body.ubx-view-list .ubx-post-card{
    grid-template-columns:132px minmax(0,1fr) !important;
    min-height:190px;
  }
  body.ubx-view-list .ubx-post-card .ubx-media-carousel,
  body.ubx-view-list .ubx-post-card .ubx-placeholder-card{
    min-height:190px !important;
  }
}
@media(max-width:390px){
  .ubx-logo{
    font-size:38px !important;
  }
  body.ubx-view-list .ubx-post-card{
    grid-template-columns:116px minmax(0,1fr) !important;
  }
}


/* Modern rebuild v2 board feed polish */
@media(max-width:760px){
  body.ubx-view-list .ubx-post-card{
    grid-template-columns:128px minmax(0,1fr) !important;
  }
  body.ubx-view-list .ubx-post-card .ubx-post-body{
    min-width:0 !important;
  }
  .ubx-post-title{
    font-size:19px !important;
    line-height:1.1 !important;
  }
  .ubx-post-actions{
    display:flex !important;
    gap:7px !important;
    flex-wrap:wrap !important;
  }
  .ubx-post-actions .ubx-secondary,
  .ubx-card-actions .ubx-secondary{
    min-height:36px !important;
    padding:0 12px !important;
  }
}
@media(max-width:390px){
  body.ubx-view-list .ubx-post-card{
    grid-template-columns:116px minmax(0,1fr) !important;
  }
}


/* v9: Hide Local Services nav link on phones/tablets only. Desktop remains untouched. */
@media(max-width:1023px){
  .ubx-board-page .ubx-nav a[href*="local_service_ad.php"]{
    display:none !important;
  }
}


/* =========================================================
   v25 Board post chat: Community / Jobs listing chat
   ========================================================= */
.board-btn-chat{
  color:#fff !important;
  border-color:rgba(37,99,235,.0) !important;
  background:linear-gradient(135deg,#2563eb,#0ea5e9) !important;
  box-shadow:0 10px 22px rgba(37,99,235,.16) !important;
}

.ubx-board-chat-sheet[hidden]{display:none!important;}
.ubx-board-chat-sheet{
  position:fixed;
  inset:0;
  z-index:100060;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
  background:rgba(15,23,42,.48);
  backdrop-filter:blur(8px) saturate(140%);
}
.ubx-board-chat-panel{
  width:min(720px,100%);
  height:min(760px,92dvh);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border-radius:28px;
  background:#efeae2;
  box-shadow:0 28px 80px rgba(15,23,42,.34);
  border:1px solid rgba(255,255,255,.38);
}
.ubx-board-chat-head{
  flex:0 0 auto;
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
  padding:16px 16px 13px;
  background:linear-gradient(135deg,#f8fffb,#eef7ff);
  border-bottom:1px solid rgba(15,23,42,.08);
}
.ubx-board-chat-head h2{
  margin:0;
  color:#0f172a;
  font-size:20px;
  line-height:1.08;
  font-weight:1000;
  letter-spacing:-.04em;
}
.ubx-board-chat-head p{
  margin:6px 0 0;
  color:#64748b;
  font-size:12.5px;
  font-weight:800;
  line-height:1.3;
}
.ubx-board-chat-mount{
  flex:1 1 auto;
  min-height:0;
  display:flex;
}
.ubx-board-chat-mount .publicChatWidget{
  height:100%;
  max-height:none;
  border:0;
  border-radius:0;
  box-shadow:none;
  background:#efeae2;
}
.ubx-board-chat-mount .publicChatWidget .pcw-messages{
  background:
    radial-gradient(circle at 20% 10%, rgba(255,255,255,.48), rgba(255,255,255,0) 36%),
    linear-gradient(180deg,#efeae2,#f5efe8);
}

html.ubx-board-chat-open,
html.ubx-board-chat-open body{
  overflow:hidden!important;
}

@media(max-width:768px){
  .ubx-board-chat-sheet{
    padding:0;
    align-items:stretch;
  }
  .ubx-board-chat-panel{
    width:100%;
    height:100dvh;
    border-radius:0;
  }
  .ubx-board-chat-head{
    padding:calc(env(safe-area-inset-top,0px) + 12px) 12px 12px;
  }
  .ubx-board-chat-head h2{
    font-size:18px;
  }
  .ubx-board-chat-head p{
    font-size:11.5px;
  }
}

/* =========================================================
   2026-05-03 v26: Mobile polish for Community / Jobs cards
   - clearer separation between posts
   - tidier action buttons
   - smaller floating Chat / Back-to-top on board pages
   ========================================================= */
@media (max-width: 820px){
  body.ubx-board-page .ubx-feed{
    display:flex !important;
    flex-direction:column !important;
    gap:18px !important;
    padding-bottom:128px !important;
  }

  body.ubx-board-page .ubx-post-card{
    position:relative !important;
    overflow:hidden !important;
    margin:0 0 18px !important;
    border-radius:28px !important;
    background:rgba(255,255,255,.98) !important;
    border:1px solid rgba(15,23,42,.105) !important;
    box-shadow:
      0 18px 38px rgba(15,23,42,.105),
      0 2px 0 rgba(255,255,255,.9) inset !important;
    isolation:isolate !important;
  }

  body.ubx-board-page .ubx-post-card::before{
    content:'' !important;
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    bottom:0 !important;
    width:5px !important;
    z-index:2 !important;
    background:linear-gradient(180deg,#2563eb,#0ea5e9) !important;
    opacity:.95 !important;
  }
  body.ubx-community-page .ubx-post-card::before{
    background:linear-gradient(180deg,#7c3aed,#0ea5e9) !important;
  }
  body.ubx-jobs-page .ubx-post-card::before{
    background:linear-gradient(180deg,#16a34a,#0ea5e9) !important;
  }

  body.ubx-view-list .ubx-post-card{
    grid-template-columns:minmax(118px,31vw) minmax(0,1fr) !important;
    column-gap:0 !important;
    align-items:stretch !important;
  }

  body.ubx-view-list .ubx-community-card .ubx-media-carousel,
  body.ubx-view-list .ubx-job-card .ubx-media-carousel{
    border-radius:24px 0 0 24px !important;
    background:#f1f5f9 !important;
    border-right:1px solid rgba(15,23,42,.075) !important;
    min-height:178px !important;
    height:100% !important;
  }

  body.ubx-view-list .ubx-community-card .ubx-media-slide,
  body.ubx-view-list .ubx-job-card .ubx-media-slide{
    min-height:178px !important;
    height:100% !important;
  }

  body.ubx-view-list .ubx-community-card .ubx-post-body,
  body.ubx-view-list .ubx-job-card .ubx-post-body{
    padding:16px 16px 12px 17px !important;
    min-width:0 !important;
  }

  body.ubx-board-page .ubx-social-head,
  body.ubx-board-page .ubx-post-kicker{
    margin-bottom:9px !important;
  }

  body.ubx-board-page .ubx-social-meta strong,
  body.ubx-board-page .ubx-post-card h2{
    letter-spacing:-.035em !important;
  }

  body.ubx-board-page .ubx-post-card h2{
    margin-top:7px !important;
    margin-bottom:6px !important;
    line-height:1.12 !important;
    font-size:20px !important;
  }

  body.ubx-board-page .ubx-post-text{
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    color:#64748b !important;
    font-weight:750 !important;
    line-height:1.24 !important;
    margin-bottom:9px !important;
  }

  body.ubx-board-page .ubx-map-card{
    margin-top:9px !important;
    margin-bottom:4px !important;
    min-height:48px !important;
    border-radius:18px !important;
    background:linear-gradient(135deg,#f8fbff,#ffffff) !important;
    border:1px solid rgba(37,99,235,.13) !important;
    box-shadow:0 8px 18px rgba(15,23,42,.055) !important;
  }

  body.ubx-board-page .ubx-actions,
  body.ubx-board-page .ubx-actions-bottom{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:8px !important;
    align-items:center !important;
    justify-content:flex-start !important;
    margin-top:10px !important;
  }

  body.ubx-view-list .ubx-community-card .ubx-actions-bottom{
    grid-column:2 !important;
    padding:0 16px 14px 17px !important;
    margin-top:-2px !important;
    border-top:1px solid rgba(15,23,42,.055) !important;
  }

  body.ubx-view-list .ubx-community-card .ubx-reply-summary{
    grid-column:1 !important;
    padding:0 8px 14px 12px !important;
    align-self:end !important;
  }

  body.ubx-board-page .board-btn,
  body.ubx-board-page .ubx-reply-open,
  body.ubx-board-page .ubx-reply-count-pill{
    min-height:40px !important;
    border-radius:18px !important;
    padding:0 14px !important;
    font-size:14px !important;
    font-weight:950 !important;
    box-shadow:0 8px 18px rgba(15,23,42,.075) !important;
  }

  body.ubx-board-page .board-btn-chat{
    order:30 !important;
    min-width:78px !important;
  }
  body.ubx-board-page .ubx-share-btn{
    order:40 !important;
    min-width:82px !important;
  }

  body.ubx-board-page .board-btn[href^="https://wa.me"],
  body.ubx-board-page .board-btn[href^="tel:"],
  body.ubx-board-page .board-btn[href^="mailto:"]{
    min-width:78px !important;
  }

  body.ubx-board-page .ubx-media-count{
    left:12px !important;
    bottom:12px !important;
    border-radius:16px !important;
    padding:7px 10px !important;
    font-size:13px !important;
    box-shadow:0 9px 18px rgba(15,23,42,.22) !important;
  }

  body.ubx-board-page .ubx-media-dots{
    right:12px !important;
    bottom:15px !important;
    padding:5px 7px !important;
    border-radius:999px !important;
    background:rgba(15,23,42,.18) !important;
    backdrop-filter:blur(8px) !important;
  }

  body.ubx-board-page .ubx-card-menu summary{
    width:48px !important;
    height:48px !important;
    border-radius:22px !important;
    background:rgba(248,250,252,.96) !important;
    border:1px solid rgba(15,23,42,.08) !important;
    box-shadow:0 10px 22px rgba(15,23,42,.08) !important;
  }

  body.ubx-board-page .pcw-fab{
    left:50% !important;
    right:auto !important;
    bottom:calc(12px + env(safe-area-inset-bottom,0px)) !important;
    transform:translateX(-50%) !important;
    min-width:124px !important;
    height:58px !important;
    padding:0 24px !important;
    border-radius:24px !important;
    font-size:22px !important;
    line-height:1 !important;
    z-index:10002 !important;
    box-shadow:0 14px 34px rgba(37,99,235,.28) !important;
  }
  body.ubx-board-page .pcw-topfab{
    right:14px !important;
    bottom:calc(12px + env(safe-area-inset-bottom,0px)) !important;
    width:56px !important;
    height:56px !important;
    border-radius:22px !important;
    z-index:10003 !important;
    box-shadow:0 14px 34px rgba(37,99,235,.24) !important;
  }
}

@media (max-width:390px){
  body.ubx-view-list .ubx-post-card{
    grid-template-columns:112px minmax(0,1fr) !important;
  }
  body.ubx-view-list .ubx-community-card .ubx-media-carousel,
  body.ubx-view-list .ubx-job-card .ubx-media-carousel,
  body.ubx-view-list .ubx-community-card .ubx-media-slide,
  body.ubx-view-list .ubx-job-card .ubx-media-slide{
    min-height:170px !important;
  }
  body.ubx-board-page .ubx-post-card h2{
    font-size:18.5px !important;
  }
  body.ubx-board-page .board-btn,
  body.ubx-board-page .ubx-reply-open,
  body.ubx-board-page .ubx-reply-count-pill{
    font-size:13px !important;
    padding:0 11px !important;
  }
}


/* =========================================================
   2026-05-03 v29: final mobile compact cleanup
   - no per-listing Chat/WhatsApp/Call/Share button block
   - compact list cards on phones
   - Reply sits under photo, map stays visible
   ========================================================= */
@media (max-width: 820px){
  body.ubx-board-page{
    background:#eef3f8 !important;
  }

  body.ubx-board-page .ubx-feed{
    gap:12px !important;
    padding:0 14px 104px !important;
  }

  body.ubx-board-page .ubx-post-card{
    margin:0 0 12px !important;
    border-radius:22px !important;
    border:1px solid rgba(15,23,42,.16) !important;
    box-shadow:0 10px 24px rgba(15,23,42,.10) !important;
    background:#fff !important;
  }

  body.ubx-board-page .ubx-post-card::before{
    width:3px !important;
  }

  body.ubx-view-list .ubx-post-card{
    grid-template-columns:96px minmax(0,1fr) !important;
    column-gap:0 !important;
  }

  body.ubx-view-list .ubx-community-card .ubx-media-carousel,
  body.ubx-view-list .ubx-job-card .ubx-media-carousel,
  body.ubx-view-list .ubx-community-card .ubx-media-slide,
  body.ubx-view-list .ubx-job-card .ubx-media-slide{
    min-height:138px !important;
    height:138px !important;
  }

  body.ubx-view-list .ubx-community-card .ubx-media-carousel,
  body.ubx-view-list .ubx-job-card .ubx-media-carousel{
    border-radius:20px 0 0 20px !important;
  }

  body.ubx-view-list .ubx-community-card .ubx-post-body,
  body.ubx-view-list .ubx-job-card .ubx-post-body{
    padding:12px 12px 10px 13px !important;
  }

  body.ubx-board-page .ubx-social-head{
    gap:8px !important;
    margin-bottom:6px !important;
  }

  body.ubx-board-page .ubx-avatar{
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    border-radius:15px !important;
    font-size:18px !important;
  }

  body.ubx-board-page .ubx-social-meta strong{
    font-size:16px !important;
    line-height:1.05 !important;
  }

  body.ubx-board-page .ubx-social-meta span{
    font-size:12.5px !important;
    line-height:1.1 !important;
    max-width:145px !important;
  }

  body.ubx-board-page .ubx-card-menu summary{
    width:40px !important;
    height:40px !important;
    border-radius:17px !important;
    font-size:18px !important;
  }

  body.ubx-board-page .ubx-post-kicker{
    margin:4px 0 7px !important;
  }

  body.ubx-board-page .ubx-badge{
    font-size:12px !important;
    line-height:1 !important;
    padding:7px 10px !important;
    border-radius:999px !important;
  }

  body.ubx-board-page .ubx-post-card h2{
    font-size:17px !important;
    line-height:1.12 !important;
    margin:4px 0 5px !important;
    letter-spacing:-.035em !important;
  }

  body.ubx-board-page .ubx-post-text{
    font-size:13.5px !important;
    line-height:1.18 !important;
    -webkit-line-clamp:2 !important;
    margin:0 0 7px !important;
    font-weight:700 !important;
  }

  body.ubx-board-page .ubx-map-card{
    min-height:38px !important;
    margin:6px 0 2px !important;
    border-radius:15px !important;
    box-shadow:none !important;
  }

  body.ubx-board-page .ubx-map-card .ubx-map-pin,
  body.ubx-board-page .ubx-map-card [class*="pin"]{
    transform:scale(.82) !important;
  }

  body.ubx-board-page .ubx-map-card a,
  body.ubx-board-page .ubx-map-card button{
    min-height:32px !important;
    padding:0 10px !important;
    font-size:12px !important;
    border-radius:14px !important;
  }

  body.ubx-board-page .ubx-actions,
  body.ubx-board-page .ubx-actions-bottom,
  body.ubx-board-page .board-btn-chat,
  body.ubx-board-page .ubx-share-btn,
  body.ubx-board-page .board-btn[href^="https://wa.me"],
  body.ubx-board-page .board-btn[href^="tel:"],
  body.ubx-board-page .board-btn[href^="mailto:"]{
    display:none !important;
  }

  body.ubx-view-list .ubx-community-card .ubx-reply-summary{
    grid-column:1 !important;
    padding:0 7px 9px 10px !important;
    align-self:end !important;
    display:flex !important;
    gap:5px !important;
  }

  body.ubx-board-page .ubx-reply-open,
  body.ubx-board-page .ubx-reply-count-pill{
    min-height:34px !important;
    height:34px !important;
    border-radius:15px !important;
    padding:0 10px !important;
    font-size:13px !important;
    box-shadow:0 6px 13px rgba(15,23,42,.08) !important;
  }

  body.ubx-board-page .ubx-media-count{
    left:8px !important;
    bottom:9px !important;
    font-size:12px !important;
    padding:6px 8px !important;
    border-radius:14px !important;
  }

  body.ubx-board-page .ubx-media-dots{
    right:8px !important;
    bottom:11px !important;
    padding:4px 6px !important;
  }

  body.ubx-board-page .ubx-media-dot{
    width:6px !important;
    height:6px !important;
  }

  body.ubx-board-page .pcw-fab{
    min-width:108px !important;
    height:50px !important;
    border-radius:22px !important;
    font-size:19px !important;
    bottom:calc(10px + env(safe-area-inset-bottom,0px)) !important;
  }

  body.ubx-board-page .pcw-topfab{
    width:50px !important;
    height:50px !important;
    border-radius:20px !important;
    bottom:calc(10px + env(safe-area-inset-bottom,0px)) !important;
  }
}

@media (max-width:390px){
  body.ubx-view-list .ubx-post-card{
    grid-template-columns:90px minmax(0,1fr) !important;
  }
  body.ubx-view-list .ubx-community-card .ubx-media-carousel,
  body.ubx-view-list .ubx-job-card .ubx-media-carousel,
  body.ubx-view-list .ubx-community-card .ubx-media-slide,
  body.ubx-view-list .ubx-job-card .ubx-media-slide{
    min-height:130px !important;
    height:130px !important;
  }
  body.ubx-board-page .ubx-post-card h2{
    font-size:16px !important;
  }
}

/* =========================================================
   2026-05-03 v30: restore compact communication buttons + wider mobile cards
   - brings back WhatsApp/Call/Email/Chat/Share as small modern pills
   - keeps map visible and reply under the photo in list mode
   - makes mobile cards use more of the screen width
   ========================================================= */
@media (max-width: 820px){
  body.ubx-board-page .ubx-feed{
    padding-left:6px !important;
    padding-right:6px !important;
    gap:12px !important;
  }

  body.ubx-board-page .ubx-post-card{
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
    border-radius:20px !important;
  }

  body.ubx-view-list .ubx-post-card{
    grid-template-columns:104px minmax(0,1fr) !important;
  }

  body.ubx-view-list .ubx-community-card .ubx-media-carousel,
  body.ubx-view-list .ubx-job-card .ubx-media-carousel,
  body.ubx-view-list .ubx-community-card .ubx-media-slide,
  body.ubx-view-list .ubx-job-card .ubx-media-slide{
    min-height:132px !important;
    height:132px !important;
  }

  body.ubx-view-list .ubx-community-card .ubx-post-body,
  body.ubx-view-list .ubx-job-card .ubx-post-body{
    padding:11px 10px 9px 11px !important;
  }

  /* Restore per-listing communication, but as compact modern actions. */
  body.ubx-board-page .ubx-actions,
  body.ubx-board-page .ubx-actions-bottom{
    display:flex !important;
    grid-column:2 !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:6px !important;
    margin:7px 0 0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }

  body.ubx-board-page .board-btn,
  body.ubx-board-page .board-btn-chat,
  body.ubx-board-page .ubx-share-btn,
  body.ubx-board-page .board-btn[href^="https://wa.me"],
  body.ubx-board-page .board-btn[href^="tel:"],
  body.ubx-board-page .board-btn[href^="mailto:"]{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:30px !important;
    height:30px !important;
    min-width:0 !important;
    width:auto !important;
    padding:0 10px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1 !important;
    font-weight:850 !important;
    letter-spacing:-.02em !important;
    white-space:nowrap !important;
    box-shadow:0 5px 12px rgba(15,23,42,.08) !important;
  }

  body.ubx-board-page .board-btn-chat{
    background:linear-gradient(135deg,#22c7ee,#2563eb) !important;
    color:#fff !important;
    border:1px solid rgba(37,99,235,.18) !important;
  }

  body.ubx-board-page .board-btn[href^="https://wa.me"]{
    background:linear-gradient(135deg,#22c55e,#16a34a) !important;
    color:#fff !important;
    border:1px solid rgba(22,163,74,.18) !important;
  }

  body.ubx-board-page .board-btn[href^="tel:"],
  body.ubx-board-page .board-btn[href^="mailto:"],
  body.ubx-board-page .ubx-share-btn,
  body.ubx-board-page .board-btn-ghost{
    background:#f8fafc !important;
    color:#1f2937 !important;
    border:1px solid rgba(148,163,184,.38) !important;
  }

  body.ubx-board-page .ubx-map-card{
    margin-top:6px !important;
    margin-bottom:0 !important;
  }

  body.ubx-view-list .ubx-community-card .ubx-reply-summary{
    grid-column:1 !important;
    padding:0 6px 8px 8px !important;
    align-self:end !important;
    display:flex !important;
    gap:5px !important;
  }

  body.ubx-board-page .ubx-reply-open,
  body.ubx-board-page .ubx-reply-count-pill{
    min-height:30px !important;
    height:30px !important;
    border-radius:999px !important;
    padding:0 9px !important;
    font-size:12px !important;
  }

  /* Keep global chat, but do not let it dominate the listing cards. */
  body.ubx-board-page .pcw-fab{
    min-width:96px !important;
    height:46px !important;
    border-radius:20px !important;
    font-size:18px !important;
  }

  body.ubx-board-page .pcw-topfab{
    width:46px !important;
    height:46px !important;
    border-radius:18px !important;
  }
}

@media (max-width:390px){
  body.ubx-board-page .ubx-feed{
    padding-left:5px !important;
    padding-right:5px !important;
  }
  body.ubx-view-list .ubx-post-card{
    grid-template-columns:100px minmax(0,1fr) !important;
  }
  body.ubx-board-page .board-btn,
  body.ubx-board-page .board-btn-chat,
  body.ubx-board-page .ubx-share-btn,
  body.ubx-board-page .board-btn[href^="https://wa.me"],
  body.ubx-board-page .board-btn[href^="tel:"],
  body.ubx-board-page .board-btn[href^="mailto:"]{
    min-height:28px !important;
    height:28px !important;
    padding:0 8px !important;
    font-size:11.5px !important;
  }
}


/* =========================================================
   2026-05-04 v31: portal-style Community/Jobs cards
   Inspired by modern listing portals: wider card, photo-led layout,
   compact icon action row, no removed contact functionality.
   ========================================================= */
@media (max-width: 700px){
  body.ubx-board-page{
    background:#eef2f6 !important;
  }

  body.ubx-board-page .ubx-shell{
    padding-left:5px !important;
    padding-right:5px !important;
  }

  body.ubx-board-page .ubx-feed{
    padding-left:2px !important;
    padding-right:2px !important;
    gap:14px !important;
  }

  /* Every post becomes a proper listing card on phones. */
  body.ubx-board-page .ubx-post-card,
  body.ubx-view-list .ubx-post-card{
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-rows:auto auto auto auto !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    overflow:hidden !important;
    border-radius:16px !important;
    background:#fff !important;
    border:1px solid rgba(15,23,42,.13) !important;
    box-shadow:0 2px 7px rgba(15,23,42,.08), 0 14px 30px rgba(15,23,42,.08) !important;
  }

  body.ubx-board-page .ubx-post-card::before{
    display:none !important;
  }

  /* Jobs already have media first. Community has media after body in HTML,
     so force the image to the top for the mobile portal layout. */
  body.ubx-board-page .ubx-community-card .ubx-media-carousel,
  body.ubx-view-list .ubx-community-card .ubx-media-carousel,
  body.ubx-board-page .ubx-job-card .ubx-media-carousel,
  body.ubx-view-list .ubx-job-card .ubx-media-carousel{
    grid-column:1 !important;
    grid-row:1 !important;
    order:-10 !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    border-radius:0 !important;
    align-self:auto !important;
    background:#e6edf5 !important;
  }

  body.ubx-board-page .ubx-community-card .ubx-media-track,
  body.ubx-board-page .ubx-job-card .ubx-media-track,
  body.ubx-view-list .ubx-community-card .ubx-media-track,
  body.ubx-view-list .ubx-job-card .ubx-media-track{
    height:auto !important;
  }

  body.ubx-board-page .ubx-community-card .ubx-media-slide,
  body.ubx-board-page .ubx-job-card .ubx-media-slide,
  body.ubx-view-list .ubx-community-card .ubx-media-slide,
  body.ubx-view-list .ubx-job-card .ubx-media-slide{
    height:0 !important;
    min-height:0 !important;
    padding:0 0 58% !important;
    background:#e6edf5 !important;
  }

  body.ubx-board-page .ubx-media-slide img,
  body.ubx-board-page .ubx-media-slide video,
  body.ubx-view-list .ubx-media-slide img,
  body.ubx-view-list .ubx-media-slide video{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
  }

  body.ubx-board-page .ubx-media-placeholder{
    min-height:142px !important;
  }

  body.ubx-board-page .ubx-media-placeholder .ubx-media-placeholder-inner{
    min-height:142px !important;
    padding:18px !important;
  }

  body.ubx-board-page .ubx-media-count{
    left:10px !important;
    bottom:10px !important;
    min-height:26px !important;
    padding:0 9px !important;
    border-radius:999px !important;
    font-size:11px !important;
    background:rgba(2,6,23,.78) !important;
    color:#fff !important;
  }

  body.ubx-board-page .ubx-media-dots{
    right:10px !important;
    left:auto !important;
    bottom:12px !important;
    transform:none !important;
    padding:4px 6px !important;
    background:rgba(2,6,23,.35) !important;
  }

  body.ubx-board-page .ubx-media-dot{
    width:5px !important;
    height:5px !important;
  }

  body.ubx-board-page .ubx-media-dot.is-active{
    width:14px !important;
  }

  body.ubx-board-page .ubx-post-body,
  body.ubx-view-list .ubx-post-body,
  body.ubx-board-page .ubx-community-card .ubx-post-body,
  body.ubx-board-page .ubx-job-card .ubx-post-body,
  body.ubx-view-list .ubx-community-card .ubx-post-body,
  body.ubx-view-list .ubx-job-card .ubx-post-body{
    grid-column:1 !important;
    grid-row:2 !important;
    padding:12px 13px 9px !important;
    min-width:0 !important;
    display:flex !important;
    flex-direction:column !important;
    background:#fff !important;
  }

  body.ubx-board-page .ubx-social-head,
  body.ubx-view-list .ubx-social-head{
    margin:0 0 8px !important;
    gap:8px !important;
  }

  body.ubx-board-page .ubx-avatar,
  body.ubx-view-list .ubx-avatar{
    width:30px !important;
    height:30px !important;
    flex:0 0 30px !important;
    border-radius:11px !important;
    font-size:13px !important;
  }

  body.ubx-board-page .ubx-social-meta strong,
  body.ubx-view-list .ubx-social-meta strong{
    font-size:13px !important;
    font-weight:850 !important;
    max-width:210px !important;
  }

  body.ubx-board-page .ubx-social-meta span,
  body.ubx-view-list .ubx-social-meta span{
    font-size:11.5px !important;
    max-width:210px !important;
  }

  body.ubx-board-page .ubx-card-menu summary,
  body.ubx-view-list .ubx-card-menu summary{
    width:34px !important;
    height:34px !important;
    background:#f8fafc !important;
    border:1px solid rgba(15,23,42,.11) !important;
    box-shadow:0 6px 14px rgba(15,23,42,.06) !important;
  }

  body.ubx-board-page .ubx-post-kicker,
  body.ubx-board-page .ubx-post-kicker-soft,
  body.ubx-view-list .ubx-post-kicker,
  body.ubx-view-list .ubx-post-kicker-soft{
    margin:0 0 7px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
  }

  body.ubx-board-page .ubx-badge,
  body.ubx-view-list .ubx-badge{
    min-height:24px !important;
    max-width:100% !important;
    padding:0 9px !important;
    border-radius:999px !important;
    font-size:11px !important;
    font-weight:850 !important;
  }

  body.ubx-board-page .ubx-post-card h2,
  body.ubx-view-list .ubx-post-card h2{
    margin:0 !important;
    font-size:18px !important;
    line-height:1.12 !important;
    letter-spacing:-.04em !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
  }

  body.ubx-board-page .ubx-post-text,
  body.ubx-view-list .ubx-post-text{
    margin-top:6px !important;
    font-size:13px !important;
    line-height:1.33 !important;
    color:#536174 !important;
    -webkit-line-clamp:2 !important;
  }

  body.ubx-board-page .ubx-detail-row,
  body.ubx-view-list .ubx-detail-row{
    margin-top:8px !important;
    gap:6px !important;
    flex-wrap:wrap !important;
  }

  body.ubx-board-page .ubx-detail,
  body.ubx-view-list .ubx-detail{
    min-height:25px !important;
    padding:0 8px !important;
    border-radius:999px !important;
    font-size:11px !important;
    font-weight:760 !important;
  }

  body.ubx-board-page .ubx-location-card,
  body.ubx-view-list .ubx-location-card{
    margin-top:9px !important;
    min-height:40px !important;
    padding:4px 5px !important;
    border-radius:14px !important;
    background:#f8fbff !important;
    border:1px solid rgba(37,99,235,.13) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.75) !important;
  }

  body.ubx-board-page .ubx-location-preview,
  body.ubx-view-list .ubx-location-preview{
    width:31px !important;
    height:31px !important;
    border-radius:12px !important;
  }

  body.ubx-board-page .ubx-location-copy strong,
  body.ubx-view-list .ubx-location-copy strong{
    display:none !important;
  }

  body.ubx-board-page .ubx-location-copy span,
  body.ubx-view-list .ubx-location-copy span{
    font-size:12px !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  body.ubx-board-page .ubx-location-open,
  body.ubx-view-list .ubx-location-open{
    min-height:30px !important;
    padding:0 10px !important;
    border-radius:999px !important;
    font-size:12px !important;
    font-weight:850 !important;
    white-space:nowrap !important;
  }

  /* Compact contact/action dock, like modern listing portals. */
  body.ubx-board-page .ubx-actions,
  body.ubx-board-page .ubx-actions-bottom,
  body.ubx-view-list .ubx-actions,
  body.ubx-view-list .ubx-actions-bottom{
    grid-column:1 !important;
    grid-row:3 !important;
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:7px !important;
    overflow-x:auto !important;
    scrollbar-width:none !important;
    -webkit-overflow-scrolling:touch !important;
    margin:0 !important;
    padding:8px 13px 10px !important;
    border-top:1px solid rgba(15,23,42,.06) !important;
    background:#fff !important;
  }

  body.ubx-board-page .ubx-actions::-webkit-scrollbar,
  body.ubx-board-page .ubx-actions-bottom::-webkit-scrollbar,
  body.ubx-view-list .ubx-actions::-webkit-scrollbar,
  body.ubx-view-list .ubx-actions-bottom::-webkit-scrollbar{
    display:none !important;
  }

  body.ubx-board-page .board-btn,
  body.ubx-board-page .board-btn-chat,
  body.ubx-board-page .ubx-share-btn,
  body.ubx-view-list .board-btn,
  body.ubx-view-list .board-btn-chat,
  body.ubx-view-list .ubx-share-btn{
    flex:0 0 auto !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:5px !important;
    min-height:32px !important;
    height:32px !important;
    min-width:0 !important;
    width:auto !important;
    padding:0 10px !important;
    border-radius:999px !important;
    font-size:12px !important;
    line-height:1 !important;
    font-weight:850 !important;
    white-space:nowrap !important;
    text-decoration:none !important;
    box-shadow:none !important;
  }

  body.ubx-board-page .board-btn::before,
  body.ubx-board-page .board-btn-chat::before,
  body.ubx-board-page .ubx-share-btn::before,
  body.ubx-view-list .board-btn::before,
  body.ubx-view-list .board-btn-chat::before,
  body.ubx-view-list .ubx-share-btn::before{
    font-size:15px !important;
    line-height:1 !important;
    font-weight:900 !important;
  }

  body.ubx-board-page .board-btn[href^="https://wa.me"]::before,
  body.ubx-view-list .board-btn[href^="https://wa.me"]::before{content:'☘' !important;}
  body.ubx-board-page .board-btn[href^="tel:"]::before,
  body.ubx-view-list .board-btn[href^="tel:"]::before{content:'☎' !important;}
  body.ubx-board-page .board-btn[href^="mailto:"]::before,
  body.ubx-view-list .board-btn[href^="mailto:"]::before{content:'✉' !important;}
  body.ubx-board-page .board-btn-chat::before,
  body.ubx-view-list .board-btn-chat::before{content:'💬' !important;font-size:13px !important;}
  body.ubx-board-page .ubx-share-btn::before,
  body.ubx-view-list .ubx-share-btn::before{content:'↗' !important;}

  body.ubx-board-page .board-btn[href^="https://wa.me"],
  body.ubx-view-list .board-btn[href^="https://wa.me"]{
    background:#eafaf0 !important;
    color:#14753a !important;
    border:1px solid rgba(34,197,94,.24) !important;
  }

  body.ubx-board-page .board-btn-chat,
  body.ubx-view-list .board-btn-chat{
    background:#eef5ff !important;
    color:#1d4ed8 !important;
    border:1px solid rgba(37,99,235,.18) !important;
  }

  body.ubx-board-page .board-btn[href^="tel:"],
  body.ubx-board-page .board-btn[href^="mailto:"],
  body.ubx-board-page .ubx-share-btn,
  body.ubx-board-page .board-btn-ghost,
  body.ubx-view-list .board-btn[href^="tel:"],
  body.ubx-view-list .board-btn[href^="mailto:"],
  body.ubx-view-list .ubx-share-btn,
  body.ubx-view-list .board-btn-ghost{
    background:#f8fafc !important;
    color:#1f2937 !important;
    border:1px solid rgba(148,163,184,.38) !important;
  }

  /* Reply is a community action, not a giant extra block. */
  body.ubx-board-page .ubx-reply-summary,
  body.ubx-view-list .ubx-reply-summary{
    grid-column:1 !important;
    grid-row:4 !important;
    display:flex !important;
    justify-content:flex-start !important;
    align-items:center !important;
    gap:7px !important;
    margin:0 !important;
    padding:0 13px 12px !important;
    background:#fff !important;
  }

  body.ubx-board-page .ubx-reply-open,
  body.ubx-board-page .ubx-reply-count-pill,
  body.ubx-view-list .ubx-reply-open,
  body.ubx-view-list .ubx-reply-count-pill{
    min-height:31px !important;
    height:31px !important;
    padding:0 11px !important;
    border-radius:999px !important;
    font-size:12px !important;
    font-weight:850 !important;
    box-shadow:none !important;
  }

  body.ubx-board-page .ubx-thread{
    grid-column:1 !important;
    grid-row:5 !important;
  }

  /* The global chat stays, but smaller so it doesn't cover listings. */
  body.ubx-board-page .pcw-fab{
    right:68px !important;
    bottom:calc(10px + env(safe-area-inset-bottom,0px)) !important;
    min-width:74px !important;
    min-height:42px !important;
    height:42px !important;
    padding:0 15px !important;
    border-radius:999px !important;
    font-size:16px !important;
    font-weight:950 !important;
    box-shadow:0 10px 22px rgba(37,99,235,.24) !important;
  }

  body.ubx-board-page .pcw-topfab{
    right:12px !important;
    bottom:calc(10px + env(safe-area-inset-bottom,0px)) !important;
    width:42px !important;
    height:42px !important;
    border-radius:999px !important;
    font-size:25px !important;
    box-shadow:0 10px 22px rgba(37,99,235,.22) !important;
  }
}

@media (max-width:390px){
  body.ubx-board-page .ubx-shell{padding-left:4px !important;padding-right:4px !important;}
  body.ubx-board-page .ubx-post-card h2,
  body.ubx-view-list .ubx-post-card h2{font-size:17px !important;}
  body.ubx-board-page .ubx-post-body,
  body.ubx-view-list .ubx-post-body{padding-left:11px !important;padding-right:11px !important;}
  body.ubx-board-page .ubx-actions,
  body.ubx-board-page .ubx-actions-bottom,
  body.ubx-view-list .ubx-actions,
  body.ubx-view-list .ubx-actions-bottom{padding-left:11px !important;padding-right:11px !important;gap:6px !important;}
  body.ubx-board-page .board-btn,
  body.ubx-board-page .board-btn-chat,
  body.ubx-board-page .ubx-share-btn,
  body.ubx-view-list .board-btn,
  body.ubx-view-list .board-btn-chat,
  body.ubx-view-list .ubx-share-btn{height:30px !important;min-height:30px !important;padding:0 9px !important;font-size:11.5px !important;}
}


/* =========================================================
   2026-05-04 v32: FIX mobile portal cards after v31
   - fixes the broken blank/side image layout by removing mobile grid
   - photo becomes the real top of the card
   - cards are wider with small side margins
   - contact buttons remain, but lighter and smaller
   - global chat is smaller and no longer centered over the card
   ========================================================= */
@media (max-width: 820px){
  body.ubx-board-page{
    background:#eef3f8 !important;
  }

  body.ubx-board-page .ubx-shell{
    width:100% !important;
    max-width:none !important;
    padding-left:6px !important;
    padding-right:6px !important;
    box-sizing:border-box !important;
  }

  body.ubx-board-page .ubx-feed{
    display:flex !important;
    flex-direction:column !important;
    gap:14px !important;
    width:100% !important;
    padding:0 2px 104px !important;
    box-sizing:border-box !important;
  }

  body.ubx-board-page .ubx-post-card,
  body.ubx-view-list .ubx-post-card,
  body.ubx-view-cards .ubx-post-card{
    display:flex !important;
    flex-direction:column !important;
    grid-template-columns:none !important;
    grid-template-rows:none !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    margin:0 auto 14px !important;
    overflow:hidden !important;
    border-radius:18px !important;
    background:#fff !important;
    border:1px solid rgba(15,23,42,.14) !important;
    box-shadow:0 10px 26px rgba(15,23,42,.10) !important;
  }

  body.ubx-board-page .ubx-post-card::before,
  body.ubx-view-list .ubx-post-card::before,
  body.ubx-view-cards .ubx-post-card::before{
    display:none !important;
    content:none !important;
  }

  /* Force photo/media to the top. This fixes the huge white empty card bug. */
  body.ubx-board-page .ubx-post-card > .ubx-media-carousel,
  body.ubx-view-list .ubx-post-card > .ubx-media-carousel,
  body.ubx-view-cards .ubx-post-card > .ubx-media-carousel{
    order:1 !important;
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    height:auto !important;
    min-height:0 !important;
    border-radius:18px 18px 0 0 !important;
    border:0 !important;
    border-right:0 !important;
    background:#dbe4ef !important;
  }

  body.ubx-board-page .ubx-post-card > .ubx-media-carousel .ubx-media-track,
  body.ubx-view-list .ubx-post-card > .ubx-media-carousel .ubx-media-track,
  body.ubx-view-cards .ubx-post-card > .ubx-media-carousel .ubx-media-track{
    width:100% !important;
    height:100% !important;
  }

  body.ubx-board-page .ubx-post-card > .ubx-media-carousel .ubx-media-slide,
  body.ubx-view-list .ubx-post-card > .ubx-media-carousel .ubx-media-slide,
  body.ubx-view-cards .ubx-post-card > .ubx-media-carousel .ubx-media-slide{
    flex:0 0 100% !important;
    width:100% !important;
    max-width:100% !important;
    min-width:100% !important;
    height:178px !important;
    min-height:178px !important;
    padding:0 !important;
    margin:0 !important;
    border-radius:0 !important;
  }

  body.ubx-board-page .ubx-post-card > .ubx-media-carousel .ubx-media-slide img,
  body.ubx-board-page .ubx-post-card > .ubx-media-carousel .ubx-media-slide video,
  body.ubx-view-list .ubx-post-card > .ubx-media-carousel .ubx-media-slide img,
  body.ubx-view-list .ubx-post-card > .ubx-media-carousel .ubx-media-slide video,
  body.ubx-view-cards .ubx-post-card > .ubx-media-carousel .ubx-media-slide img,
  body.ubx-view-cards .ubx-post-card > .ubx-media-carousel .ubx-media-slide video{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
  }

  body.ubx-board-page .ubx-post-card > .ubx-media-placeholder,
  body.ubx-view-list .ubx-post-card > .ubx-media-placeholder,
  body.ubx-view-cards .ubx-post-card > .ubx-media-placeholder{
    min-height:132px !important;
  }

  body.ubx-board-page .ubx-post-body,
  body.ubx-view-list .ubx-post-body,
  body.ubx-view-cards .ubx-post-body{
    order:2 !important;
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    padding:11px 13px 8px !important;
    box-sizing:border-box !important;
    background:#fff !important;
  }

  body.ubx-board-page .ubx-social-head{
    gap:8px !important;
    margin:0 0 8px !important;
    min-width:0 !important;
  }

  body.ubx-board-page .ubx-avatar{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    border-radius:13px !important;
    font-size:15px !important;
  }

  body.ubx-board-page .ubx-social-meta strong{
    font-size:15px !important;
    line-height:1.05 !important;
  }

  body.ubx-board-page .ubx-social-meta span{
    font-size:12px !important;
    line-height:1.1 !important;
  }

  body.ubx-board-page .ubx-card-menu{
    position:absolute !important;
    top:10px !important;
    right:10px !important;
    z-index:6 !important;
  }

  body.ubx-board-page .ubx-card-menu summary{
    width:38px !important;
    height:38px !important;
    border-radius:16px !important;
    background:rgba(255,255,255,.92) !important;
    backdrop-filter:blur(9px) !important;
    box-shadow:0 8px 18px rgba(15,23,42,.13) !important;
  }

  body.ubx-board-page .ubx-post-kicker,
  body.ubx-board-page .ubx-post-kicker-soft{
    margin:5px 0 7px !important;
  }

  body.ubx-board-page .ubx-badge{
    min-height:25px !important;
    padding:0 9px !important;
    font-size:11px !important;
  }

  body.ubx-board-page .ubx-post-card h2,
  body.ubx-view-list .ubx-post-card h2,
  body.ubx-view-cards .ubx-post-card h2{
    font-size:19px !important;
    line-height:1.12 !important;
    margin:0 0 6px !important;
    letter-spacing:-.04em !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
  }

  body.ubx-board-page .ubx-post-text,
  body.ubx-view-list .ubx-post-text,
  body.ubx-view-cards .ubx-post-text{
    font-size:13px !important;
    line-height:1.28 !important;
    margin:0 0 8px !important;
    color:#5b6778 !important;
    font-weight:650 !important;
    -webkit-line-clamp:2 !important;
  }

  body.ubx-board-page .ubx-location-card,
  body.ubx-view-list .ubx-location-card,
  body.ubx-view-cards .ubx-location-card,
  body.ubx-board-page .ubx-map-card,
  body.ubx-view-list .ubx-map-card,
  body.ubx-view-cards .ubx-map-card{
    width:100% !important;
    min-height:38px !important;
    margin:7px 0 0 !important;
    padding:4px 5px !important;
    border-radius:14px !important;
    box-sizing:border-box !important;
    background:#f8fbff !important;
    border:1px solid rgba(37,99,235,.13) !important;
    box-shadow:none !important;
  }

  body.ubx-board-page .ubx-location-preview,
  body.ubx-board-page .ubx-map-pin{
    width:30px !important;
    height:30px !important;
    min-width:30px !important;
    border-radius:12px !important;
  }

  body.ubx-board-page .ubx-location-open,
  body.ubx-board-page .ubx-map-card a,
  body.ubx-board-page .ubx-map-card button{
    min-height:30px !important;
    padding:0 10px !important;
    border-radius:999px !important;
    font-size:12px !important;
    font-weight:850 !important;
  }

  body.ubx-board-page .ubx-location-copy span{
    font-size:12px !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  body.ubx-board-page .ubx-actions,
  body.ubx-board-page .ubx-actions-bottom,
  body.ubx-view-list .ubx-actions,
  body.ubx-view-list .ubx-actions-bottom,
  body.ubx-view-cards .ubx-actions,
  body.ubx-view-cards .ubx-actions-bottom{
    order:3 !important;
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:9px !important;
    overflow-x:auto !important;
    width:100% !important;
    min-width:0 !important;
    padding:7px 13px 3px !important;
    margin:0 !important;
    box-sizing:border-box !important;
    border-top:1px solid rgba(15,23,42,.055) !important;
    background:#fff !important;
    scrollbar-width:none !important;
  }

  body.ubx-board-page .ubx-actions::-webkit-scrollbar,
  body.ubx-board-page .ubx-actions-bottom::-webkit-scrollbar{display:none !important;}

  body.ubx-board-page .board-btn,
  body.ubx-board-page .board-btn-chat,
  body.ubx-board-page .ubx-share-btn,
  body.ubx-view-list .board-btn,
  body.ubx-view-list .board-btn-chat,
  body.ubx-view-list .ubx-share-btn,
  body.ubx-view-cards .board-btn,
  body.ubx-view-cards .board-btn-chat,
  body.ubx-view-cards .ubx-share-btn{
    flex:0 0 auto !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:5px !important;
    min-height:29px !important;
    height:29px !important;
    width:auto !important;
    min-width:0 !important;
    padding:0 9px !important;
    border-radius:999px !important;
    font-size:11.5px !important;
    line-height:1 !important;
    font-weight:850 !important;
    box-shadow:none !important;
    text-decoration:none !important;
  }

  body.ubx-board-page .board-btn[href^="https://wa.me"]{
    background:#ecfdf3 !important;
    color:#14753a !important;
    border:1px solid rgba(34,197,94,.22) !important;
  }

  body.ubx-board-page .board-btn-chat{
    background:#eef5ff !important;
    color:#1d4ed8 !important;
    border:1px solid rgba(37,99,235,.18) !important;
  }

  body.ubx-board-page .board-btn[href^="tel:"],
  body.ubx-board-page .board-btn[href^="mailto:"],
  body.ubx-board-page .ubx-share-btn,
  body.ubx-board-page .board-btn-ghost{
    background:#fff !important;
    color:#1f2937 !important;
    border:1px solid rgba(148,163,184,.44) !important;
  }

  body.ubx-board-page .ubx-reply-summary,
  body.ubx-view-list .ubx-reply-summary,
  body.ubx-view-cards .ubx-reply-summary{
    order:4 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:7px !important;
    width:100% !important;
    padding:6px 13px 12px !important;
    margin:0 !important;
    box-sizing:border-box !important;
    background:#fff !important;
  }

  body.ubx-board-page .ubx-reply-open,
  body.ubx-board-page .ubx-reply-count-pill{
    min-height:29px !important;
    height:29px !important;
    padding:0 10px !important;
    border-radius:999px !important;
    font-size:12px !important;
    font-weight:850 !important;
    box-shadow:none !important;
  }

  body.ubx-board-page .ubx-thread{
    order:5 !important;
    width:100% !important;
  }

  body.ubx-board-page .ubx-media-count{
    left:11px !important;
    bottom:10px !important;
    min-height:26px !important;
    padding:0 9px !important;
    border-radius:999px !important;
    font-size:12px !important;
  }

  body.ubx-board-page .ubx-media-dots{
    left:auto !important;
    right:11px !important;
    bottom:12px !important;
    transform:none !important;
    padding:4px 6px !important;
  }

  body.ubx-board-page .pcw-fab{
    left:auto !important;
    right:62px !important;
    bottom:calc(9px + env(safe-area-inset-bottom,0px)) !important;
    transform:none !important;
    min-width:70px !important;
    width:auto !important;
    height:40px !important;
    min-height:40px !important;
    padding:0 13px !important;
    border-radius:999px !important;
    font-size:15px !important;
    z-index:10002 !important;
  }

  body.ubx-board-page .pcw-topfab{
    right:12px !important;
    bottom:calc(9px + env(safe-area-inset-bottom,0px)) !important;
    width:40px !important;
    height:40px !important;
    border-radius:999px !important;
    font-size:23px !important;
    z-index:10003 !important;
  }
}

@media (max-width:390px){
  body.ubx-board-page .ubx-shell{padding-left:5px !important;padding-right:5px !important;}
  body.ubx-board-page .ubx-post-card > .ubx-media-carousel .ubx-media-slide,
  body.ubx-view-list .ubx-post-card > .ubx-media-carousel .ubx-media-slide,
  body.ubx-view-cards .ubx-post-card > .ubx-media-carousel .ubx-media-slide{
    height:160px !important;
    min-height:160px !important;
  }
  body.ubx-board-page .ubx-post-card h2{font-size:18px !important;}
  body.ubx-board-page .board-btn,
  body.ubx-board-page .board-btn-chat,
  body.ubx-board-page .ubx-share-btn{
    height:28px !important;
    min-height:28px !important;
    padding:0 8px !important;
    font-size:11px !important;
  }
}

@media (min-width:821px){
  body.ubx-board-page .ubx-post-card{
    overflow:hidden;
  }
}

/* === Urbiax boards v33: FINAL LIST-ONLY layout for Community + Jobs ===
   Requirement: no separate Cards mode. Mobile opens as compact list:
   photo on the left, title/location/contact on the right. */
body.ubx-board-page{ --ubx-list-photo-w: 240px; }
body.ubx-board-page .ubx-view-switch{ display:none !important; }
body.ubx-board-page .ubx-feed{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:13px !important;
  align-items:start !important;
}
body.ubx-board-page .ubx-post-card{
  display:grid !important;
  grid-template-columns:var(--ubx-list-photo-w) minmax(0,1fr) !important;
  grid-template-rows:auto auto auto !important;
  width:100% !important;
  max-width:100% !important;
  min-height:0 !important;
  margin:0 !important;
  border-radius:20px !important;
  overflow:hidden !important;
  background:#fff !important;
  border:1px solid rgba(15,23,42,.09) !important;
  box-shadow:0 10px 28px rgba(15,23,42,.075) !important;
  align-items:stretch !important;
}
body.ubx-board-page .ubx-post-card::before{ display:none !important; }
body.ubx-board-page .ubx-post-card > .ubx-media-carousel,
body.ubx-board-page .ubx-post-card > .ubx-media-placeholder{
  grid-column:1 !important;
  grid-row:1 / span 3 !important;
  order:0 !important;
  width:var(--ubx-list-photo-w) !important;
  height:100% !important;
  min-height:190px !important;
  max-height:none !important;
  align-self:stretch !important;
  border-radius:0 !important;
  overflow:hidden !important;
  background:#eaf0f7 !important;
}
body.ubx-board-page .ubx-post-card > .ubx-media-carousel .ubx-media-track,
body.ubx-board-page .ubx-post-card > .ubx-media-carousel .ubx-media-slide{
  width:100% !important;
  height:100% !important;
  min-height:190px !important;
  max-height:none !important;
  padding:0 !important;
  background:#eaf0f7 !important;
}
body.ubx-board-page .ubx-post-card > .ubx-media-carousel .ubx-media-slide img,
body.ubx-board-page .ubx-post-card > .ubx-media-carousel .ubx-media-slide video{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
}
body.ubx-board-page .ubx-post-body{
  grid-column:2 !important;
  grid-row:1 !important;
  order:1 !important;
  width:100% !important;
  min-width:0 !important;
  padding:13px 14px 7px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:0 !important;
  box-sizing:border-box !important;
  background:#fff !important;
}
body.ubx-board-page .ubx-social-head{
  margin:0 0 7px !important;
  gap:8px !important;
  min-width:0 !important;
}
body.ubx-board-page .ubx-avatar{
  width:32px !important;
  height:32px !important;
  flex:0 0 32px !important;
  font-size:13px !important;
}
body.ubx-board-page .ubx-social-meta{min-width:0 !important;}
body.ubx-board-page .ubx-social-meta strong{
  font-size:13.5px !important;
  line-height:1.1 !important;
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
body.ubx-board-page .ubx-social-meta span{
  font-size:11px !important;
  line-height:1.2 !important;
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
body.ubx-board-page .ubx-card-menu summary{
  width:30px !important;
  height:30px !important;
  font-size:13px !important;
}
body.ubx-board-page .ubx-post-kicker,
body.ubx-board-page .ubx-post-kicker-soft{
  margin:0 0 6px !important;
  display:flex !important;
  min-width:0 !important;
}
body.ubx-board-page .ubx-badge{
  min-height:24px !important;
  max-width:100% !important;
  padding:0 9px !important;
  font-size:10.8px !important;
  line-height:1 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
body.ubx-board-page .ubx-post-card h2{
  margin:0 !important;
  font-size:17px !important;
  line-height:1.13 !important;
  letter-spacing:-.035em !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}
body.ubx-board-page .ubx-post-text{
  margin:6px 0 0 !important;
  font-size:12.5px !important;
  line-height:1.32 !important;
  color:#5b6678 !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
  overflow:hidden !important;
}
body.ubx-board-page .ubx-detail-row{
  margin-top:6px !important;
  gap:5px !important;
  flex-wrap:nowrap !important;
  overflow:hidden !important;
}
body.ubx-board-page .ubx-detail{
  min-height:23px !important;
  padding:0 7px !important;
  font-size:10.8px !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
body.ubx-board-page .ubx-location-card{
  margin-top:8px !important;
  grid-template-columns:34px minmax(0,1fr) auto !important;
  gap:7px !important;
  padding:7px !important;
  border-radius:15px !important;
}
body.ubx-board-page .ubx-location-preview,
body.ubx-board-page .ubx-map-pin{
  width:34px !important;
  height:32px !important;
  min-width:34px !important;
  border-radius:12px !important;
}
body.ubx-board-page .ubx-location-copy span{
  font-size:11.5px !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
body.ubx-board-page .ubx-location-open,
body.ubx-board-page .ubx-map-card a,
body.ubx-board-page .ubx-map-card button{
  min-height:29px !important;
  padding:0 9px !important;
  border-radius:999px !important;
  font-size:11.5px !important;
  font-weight:850 !important;
}
body.ubx-board-page .ubx-actions,
body.ubx-board-page .ubx-actions-bottom{
  grid-column:2 !important;
  grid-row:2 !important;
  order:2 !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:6px !important;
  overflow-x:auto !important;
  width:100% !important;
  min-width:0 !important;
  padding:4px 14px 6px !important;
  margin:0 !important;
  box-sizing:border-box !important;
  background:#fff !important;
  border-top:1px solid rgba(15,23,42,.055) !important;
  scrollbar-width:none !important;
}
body.ubx-board-page .ubx-actions::-webkit-scrollbar,
body.ubx-board-page .ubx-actions-bottom::-webkit-scrollbar{display:none !important;}
body.ubx-board-page .board-btn,
body.ubx-board-page .board-btn-chat,
body.ubx-board-page .ubx-share-btn{
  flex:0 0 auto !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:5px !important;
  min-height:27px !important;
  height:27px !important;
  padding:0 8px !important;
  border-radius:999px !important;
  font-size:10.8px !important;
  line-height:1 !important;
  font-weight:850 !important;
  box-shadow:none !important;
  white-space:nowrap !important;
}
body.ubx-board-page .ubx-reply-summary{
  grid-column:2 !important;
  grid-row:3 !important;
  order:3 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:6px !important;
  width:100% !important;
  padding:0 14px 11px !important;
  margin:0 !important;
  box-sizing:border-box !important;
  background:#fff !important;
}
body.ubx-board-page .ubx-reply-open,
body.ubx-board-page .ubx-reply-count-pill{
  min-height:27px !important;
  height:27px !important;
  padding:0 9px !important;
  border-radius:999px !important;
  font-size:11.2px !important;
  font-weight:850 !important;
}
body.ubx-board-page .ubx-thread{
  grid-column:1 / -1 !important;
  grid-row:4 !important;
  order:4 !important;
  width:100% !important;
}
body.ubx-board-page .ubx-media-count{
  left:8px !important;
  bottom:8px !important;
  min-height:24px !important;
  padding:0 8px !important;
  font-size:10.5px !important;
}
body.ubx-board-page .ubx-media-dots{
  left:auto !important;
  right:8px !important;
  bottom:9px !important;
  transform:none !important;
  padding:4px 6px !important;
}
body.ubx-board-page .ubx-media-dot{width:5px !important;height:5px !important;}
body.ubx-board-page .ubx-media-dot.is-active{width:14px !important;}

@media(max-width:700px){
  body.ubx-board-page .ubx-shell{
    padding-left:7px !important;
    padding-right:7px !important;
  }
  body.ubx-board-page{ --ubx-list-photo-w: 41vw; }
  body.ubx-board-page .ubx-feed{gap:11px !important;}
  body.ubx-board-page .ubx-post-card{
    grid-template-columns:minmax(142px,41vw) minmax(0,1fr) !important;
    border-radius:18px !important;
  }
  body.ubx-board-page .ubx-post-card > .ubx-media-carousel,
  body.ubx-board-page .ubx-post-card > .ubx-media-placeholder,
  body.ubx-board-page .ubx-post-card > .ubx-media-carousel .ubx-media-track,
  body.ubx-board-page .ubx-post-card > .ubx-media-carousel .ubx-media-slide{
    width:100% !important;
    min-height:190px !important;
  }
  body.ubx-board-page .ubx-post-body{padding:10px 10px 6px !important;}
  body.ubx-board-page .ubx-avatar{width:28px !important;height:28px !important;flex-basis:28px !important;font-size:12px !important;}
  body.ubx-board-page .ubx-social-head{gap:7px !important;margin-bottom:6px !important;}
  body.ubx-board-page .ubx-social-meta strong{font-size:12.8px !important;}
  body.ubx-board-page .ubx-social-meta span{font-size:10.4px !important;}
  body.ubx-board-page .ubx-card-menu summary{width:28px !important;height:28px !important;}
  body.ubx-board-page .ubx-badge{font-size:10.2px !important;min-height:22px !important;padding:0 7px !important;}
  body.ubx-board-page .ubx-post-card h2{font-size:15.2px !important;line-height:1.12 !important;}
  body.ubx-board-page .ubx-post-text{font-size:11.8px !important;line-height:1.28 !important;-webkit-line-clamp:2 !important;}
  body.ubx-board-page .ubx-location-card{margin-top:7px !important;grid-template-columns:30px minmax(0,1fr) auto !important;padding:6px !important;gap:6px !important;}
  body.ubx-board-page .ubx-location-preview,
  body.ubx-board-page .ubx-map-pin{width:30px !important;height:29px !important;min-width:30px !important;}
  body.ubx-board-page .ubx-location-copy span{font-size:10.8px !important;}
  body.ubx-board-page .ubx-location-open,
  body.ubx-board-page .ubx-map-card a,
  body.ubx-board-page .ubx-map-card button{min-height:27px !important;padding:0 8px !important;font-size:10.7px !important;}
  body.ubx-board-page .ubx-actions,
  body.ubx-board-page .ubx-actions-bottom{padding:4px 10px 6px !important;gap:5px !important;}
  body.ubx-board-page .board-btn,
  body.ubx-board-page .board-btn-chat,
  body.ubx-board-page .ubx-share-btn{height:26px !important;min-height:26px !important;padding:0 7px !important;font-size:10.2px !important;}
  body.ubx-board-page .ubx-reply-summary{padding:0 10px 9px !important;}
  body.ubx-board-page .ubx-reply-open,
  body.ubx-board-page .ubx-reply-count-pill{height:26px !important;min-height:26px !important;font-size:10.8px !important;}
  body.ubx-board-page .ubx-media-count{font-size:10px !important;left:7px !important;bottom:7px !important;}
  body.ubx-board-page .pcw-fab{right:61px !important;bottom:calc(8px + env(safe-area-inset-bottom,0px)) !important;height:38px !important;min-height:38px !important;min-width:66px !important;font-size:14px !important;}
  body.ubx-board-page .pcw-topfab{right:12px !important;bottom:calc(8px + env(safe-area-inset-bottom,0px)) !important;width:38px !important;height:38px !important;font-size:22px !important;}
}

@media(max-width:390px){
  body.ubx-board-page .ubx-shell{padding-left:6px !important;padding-right:6px !important;}
  body.ubx-board-page .ubx-post-card{grid-template-columns:minmax(130px,40vw) minmax(0,1fr) !important;}
  body.ubx-board-page .ubx-post-card > .ubx-media-carousel,
  body.ubx-board-page .ubx-post-card > .ubx-media-placeholder,
  body.ubx-board-page .ubx-post-card > .ubx-media-carousel .ubx-media-track,
  body.ubx-board-page .ubx-post-card > .ubx-media-carousel .ubx-media-slide{min-height:178px !important;}
  body.ubx-board-page .ubx-post-body{padding:9px 8px 5px !important;}
  body.ubx-board-page .ubx-post-card h2{font-size:14.4px !important;}
  body.ubx-board-page .ubx-post-text{font-size:11.3px !important;}
  body.ubx-board-page .ubx-actions,
  body.ubx-board-page .ubx-actions-bottom{padding-left:8px !important;padding-right:8px !important;}
}

/* === Urbiax boards v34: fixed normal mobile list layout ===
   One stable list only: image left, all text/contact/map/reply right.
   This overrides older experimental card/grid rules that caused empty white space. */
body.ubx-board-page .ubx-view-switch{display:none!important;}
body.ubx-board-page.ubx-view-cards{ }
body.ubx-board-page .ubx-feed{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;}

/* JS wraps text/actions/reply into .ubx-list-info. Keep a safe layout when present. */
body.ubx-board-page .ubx-feed > .ubx-post-card{
  display:flex!important;
  flex-direction:row!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:100%!important;
  min-height:0!important;
  margin:0!important;
  overflow:hidden!important;
  border-radius:20px!important;
  background:#fff!important;
  border:1px solid rgba(15,23,42,.10)!important;
  box-shadow:0 10px 28px rgba(15,23,42,.08)!important;
}
body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-media-carousel,
body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-media-placeholder{
  order:1!important;
  flex:0 0 42%!important;
  width:42%!important;
  max-width:42%!important;
  min-width:132px!important;
  min-height:178px!important;
  height:auto!important;
  align-self:stretch!important;
  grid-column:auto!important;
  grid-row:auto!important;
  border-radius:0!important;
  background:#eaf0f7!important;
  overflow:hidden!important;
}
body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-media-carousel .ubx-media-track,
body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-media-carousel .ubx-media-slide{
  width:100%!important;
  height:100%!important;
  min-height:178px!important;
  max-height:none!important;
  padding:0!important;
  background:#eaf0f7!important;
}
body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-media-carousel .ubx-media-slide img,
body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-media-carousel .ubx-media-slide video{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
}
body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-list-info{
  order:2!important;
  flex:1 1 0!important;
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  background:#fff!important;
}
body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-list-info > .ubx-post-body{
  display:flex!important;
  flex-direction:column!important;
  grid-column:auto!important;
  grid-row:auto!important;
  order:1!important;
  width:100%!important;
  min-width:0!important;
  padding:11px 11px 6px!important;
  box-sizing:border-box!important;
  background:#fff!important;
}
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-social-head{margin:0 0 6px!important;gap:7px!important;min-width:0!important;}
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-avatar{width:29px!important;height:29px!important;min-width:29px!important;flex:0 0 29px!important;border-radius:12px!important;font-size:13px!important;}
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-social-meta{min-width:0!important;}
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-social-meta strong{font-size:13px!important;line-height:1.1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;display:block!important;}
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-social-meta span{font-size:10.5px!important;line-height:1.15!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;display:block!important;}
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-card-menu summary{width:28px!important;height:28px!important;font-size:12px!important;}
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-post-kicker{margin:0 0 5px!important;display:flex!important;min-width:0!important;}
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-badge{min-height:22px!important;max-width:100%!important;padding:0 8px!important;font-size:10.4px!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
body.ubx-board-page .ubx-feed > .ubx-post-card h2{margin:0!important;font-size:15.5px!important;line-height:1.12!important;letter-spacing:-.035em!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-post-text{margin:5px 0 0!important;font-size:11.6px!important;line-height:1.25!important;color:#5b6678!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-location-card{margin-top:7px!important;display:grid!important;grid-template-columns:28px minmax(0,1fr) auto!important;gap:5px!important;padding:5px!important;border-radius:14px!important;min-width:0!important;}
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-location-preview,
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-map-pin{width:28px!important;height:28px!important;min-width:28px!important;border-radius:11px!important;}
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-location-copy span{font-size:10.5px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-location-open,
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-map-card a,
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-map-card button{min-height:26px!important;padding:0 7px!important;font-size:10.4px!important;border-radius:999px!important;font-weight:850!important;}
body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-list-info > .ubx-actions,
body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-list-info > .ubx-actions-bottom{
  grid-column:auto!important;
  grid-row:auto!important;
  order:2!important;
  position:static!important;
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:5px!important;
  width:100%!important;
  min-width:0!important;
  padding:2px 10px 5px!important;
  margin:0!important;
  box-sizing:border-box!important;
  border-top:1px solid rgba(15,23,42,.055)!important;
  background:#fff!important;
  overflow:visible!important;
}
body.ubx-board-page .ubx-feed > .ubx-post-card .board-btn,
body.ubx-board-page .ubx-feed > .ubx-post-card .board-btn-chat,
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-share-btn{
  flex:0 0 auto!important;
  min-height:25px!important;
  height:25px!important;
  padding:0 7px!important;
  border-radius:999px!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:850!important;
  box-shadow:none!important;
  white-space:nowrap!important;
}
body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-list-info > .ubx-reply-summary{
  grid-column:auto!important;
  grid-row:auto!important;
  order:3!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:5px!important;
  width:100%!important;
  padding:0 10px 9px!important;
  margin:0!important;
  box-sizing:border-box!important;
  background:#fff!important;
}
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-reply-open,
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-reply-count-pill{min-height:25px!important;height:25px!important;padding:0 8px!important;border-radius:999px!important;font-size:10.5px!important;font-weight:850!important;}
body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-thread{order:4!important;flex:0 0 100%!important;width:100%!important;}
body.ubx-board-page .ubx-media-count{left:7px!important;bottom:7px!important;min-height:23px!important;padding:0 7px!important;font-size:10px!important;}
body.ubx-board-page .ubx-media-dots{left:auto!important;right:7px!important;bottom:8px!important;transform:none!important;padding:4px 6px!important;}
body.ubx-board-page .ubx-media-dot{width:5px!important;height:5px!important;}
body.ubx-board-page .ubx-media-dot.is-active{width:13px!important;}

@media(max-width:700px){
  body.ubx-board-page .ubx-shell{padding-left:7px!important;padding-right:7px!important;}
  body.ubx-board-page .ubx-feed{gap:11px!important;}
  body.ubx-board-page .ubx-feed > .ubx-post-card{border-radius:18px!important;}
  body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-media-carousel,
  body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-media-placeholder{flex-basis:42%!important;width:42%!important;max-width:42%!important;min-width:136px!important;min-height:176px!important;}
  body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-media-carousel .ubx-media-track,
  body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-media-carousel .ubx-media-slide{min-height:176px!important;}
  body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-list-info > .ubx-post-body{padding:10px 10px 5px!important;}
  body.ubx-board-page .ubx-feed > .ubx-post-card h2{font-size:14.8px!important;}
  body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-post-text{-webkit-line-clamp:1!important;}
  body.ubx-board-page .pcw-fab{right:61px!important;bottom:calc(8px + env(safe-area-inset-bottom,0px))!important;height:38px!important;min-height:38px!important;min-width:66px!important;font-size:14px!important;}
  body.ubx-board-page .pcw-topfab{right:12px!important;bottom:calc(8px + env(safe-area-inset-bottom,0px))!important;width:38px!important;height:38px!important;font-size:22px!important;}
}
@media(max-width:390px){
  body.ubx-board-page .ubx-shell{padding-left:6px!important;padding-right:6px!important;}
  body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-media-carousel,
  body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-media-placeholder{flex-basis:40%!important;width:40%!important;max-width:40%!important;min-width:126px!important;min-height:166px!important;}
  body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-media-carousel .ubx-media-track,
  body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-media-carousel .ubx-media-slide{min-height:166px!important;}
  body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-location-card{grid-template-columns:26px minmax(0,1fr)!important;}
  body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-location-open{grid-column:1 / -1!important;width:100%!important;}
  body.ubx-board-page .ubx-feed > .ubx-post-card .board-btn,
  body.ubx-board-page .ubx-feed > .ubx-post-card .board-btn-chat,
  body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-share-btn{height:24px!important;min-height:24px!important;font-size:9.6px!important;padding:0 6px!important;}
}


/* v35: keep the global site chat, but remove per-listing chat buttons and make Buy/Sell prices visible. */
body.ubx-board-page .ubx-post-card .board-btn-chat,
body.ubx-view-list .ubx-post-card .board-btn-chat{
  display:none !important;
}

.ubx-buy-price-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:5px 11px;
  border-radius:999px;
  background:linear-gradient(135deg,#fff4d8,#ffe7a3);
  color:#8a5600;
  border:1px solid rgba(216,153,18,.32);
  font-weight:900;
  font-size:14px;
  line-height:1;
  box-shadow:0 6px 16px rgba(216,153,18,.16);
  white-space:nowrap;
}

body.ubx-view-list .ubx-community-card .ubx-post-kicker{
  align-items:center !important;
  gap:7px !important;
  flex-wrap:wrap !important;
}

@media (max-width: 760px){
  .ubx-buy-price-pill{
    font-size:13px !important;
    padding:5px 10px !important;
    min-height:26px !important;
  }
  body.ubx-view-list .ubx-community-card .ubx-post-kicker{
    margin-bottom:6px !important;
  }
}


/* === v36: cleaner author badge + full-screen swipe gallery in post details === */
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-author-pill,
body.ubx-board-page .ubx-post-modal-card .ubx-author-pill{
  width:auto !important;
  min-width:0 !important;
  height:28px !important;
  flex:0 1 auto !important;
  max-width:92px !important;
  padding:0 10px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:-.02em !important;
  color:#155bd7 !important;
  background:linear-gradient(135deg,#eef6ff,#ffffff) !important;
  border:1px solid rgba(37,99,235,.18) !important;
  box-shadow:0 6px 16px rgba(37,99,235,.08) !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-social-meta strong{
  font-size:12px!important;
}
body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-social-meta strong::before{
  content:'Added by ';
  font-weight:650;
  color:#7a8495;
}

/* Details modal: gallery behaves like a smooth horizontal phone gallery. */
body.ubx-modal-open{overflow:hidden!important;}
#ubxPostModal .ubx-post-modal-card .ubx-media-carousel{
  width:100% !important;
  max-width:100% !important;
  margin:0 0 12px !important;
  border-radius:18px !important;
  overflow:hidden !important;
  background:#0f172a !important;
  border:1px solid rgba(15,23,42,.10) !important;
  box-shadow:0 16px 34px rgba(15,23,42,.16) !important;
}
#ubxPostModal .ubx-post-modal-card .ubx-media-track{
  display:flex !important;
  gap:8px !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scroll-snap-type:x mandatory !important;
  -webkit-overflow-scrolling:touch !important;
  overscroll-behavior-x:contain !important;
  padding:0 !important;
  background:#0f172a !important;
}
#ubxPostModal .ubx-post-modal-card .ubx-media-track::-webkit-scrollbar{display:none!important;}
#ubxPostModal .ubx-post-modal-card .ubx-media-slide{
  position:relative !important;
  flex:0 0 88% !important;
  width:88% !important;
  min-width:88% !important;
  min-height:360px !important;
  max-height:70vh !important;
  margin:0 !important;
  scroll-snap-align:center !important;
  overflow:hidden !important;
  background:#0f172a !important;
  border-radius:0 !important;
}
#ubxPostModal .ubx-post-modal-card .ubx-media-slide:first-child{margin-left:0!important;}
#ubxPostModal .ubx-post-modal-card .ubx-media-slide:last-child{margin-right:0!important;}
#ubxPostModal .ubx-post-modal-card .ubx-media-slide.has-photo-bg::before{
  content:'';
  position:absolute;
  inset:-18px;
  background-image:var(--ubx-photo-bg);
  background-size:cover;
  background-position:center;
  filter:blur(18px);
  transform:scale(1.08);
  opacity:.38;
}
#ubxPostModal .ubx-post-modal-card .ubx-media-slide img,
#ubxPostModal .ubx-post-modal-card .ubx-media-slide video{
  position:absolute !important;
  inset:0 !important;
  z-index:1 !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  background:transparent !important;
  display:block !important;
}
#ubxPostModal .ubx-post-modal-card .ubx-media-count{
  left:12px!important;
  bottom:12px!important;
  z-index:4!important;
}
#ubxPostModal .ubx-post-modal-card .ubx-media-dots{
  left:50%!important;
  right:auto!important;
  bottom:14px!important;
  transform:translateX(-50%)!important;
  z-index:4!important;
}
#ubxPostModal .ubx-post-modal-card .ubx-media-dot{width:6px!important;height:6px!important;}
#ubxPostModal .ubx-post-modal-card .ubx-media-dot.is-active{width:18px!important;}

/* Fullscreen lightbox: tap image to close, swipe left/right to move. */
#ubxLightbox [data-stage] img,
#ubxLightbox [data-stage] video{
  max-width:100vw !important;
  max-height:100vh !important;
  width:auto !important;
  height:auto !important;
  object-fit:contain !important;
}

@media(max-width:700px){
  body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-author-pill{height:25px!important;max-width:78px!important;padding:0 8px!important;font-size:10.5px!important;}
  body.ubx-board-page .ubx-feed > .ubx-post-card .ubx-social-meta strong::before{content:'By ';}
  #ubxPostModal .ubx-post-modal-card .ubx-media-slide{
    flex-basis:86% !important;
    width:86% !important;
    min-width:86% !important;
    min-height:390px !important;
  }
}
@media(max-width:390px){
  #ubxPostModal .ubx-post-modal-card .ubx-media-slide{min-height:360px!important;}
}

/* === Premium boards v37: cleaner list cards, map only in details, larger compact actions === */
body.ubx-view-list .ubx-community-card > .ubx-post-body > .ubx-location-card,
body.ubx-view-list .ubx-job-card > .ubx-post-body > .ubx-location-card{
  display:none !important;
}
#ubxPostModal .ubx-location-card,
.ubx-post-modal .ubx-location-card{
  display:grid !important;
}
@media (max-width: 720px){
  body.ubx-view-list .ubx-post-card{
    gap:0 !important;
    align-items:stretch !important;
  }
  body.ubx-view-list .ubx-post-card > .ubx-post-body{
    padding:12px 10px 9px 11px !important;
  }
  body.ubx-view-list .ubx-post-text{
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:3 !important;
    overflow:hidden !important;
    font-size:12.6px !important;
    line-height:1.22 !important;
    margin-top:5px !important;
  }
  body.ubx-view-list .ubx-actions,
  body.ubx-view-list .ubx-actions-bottom{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:7px !important;
    padding:7px 10px 0 0 !important;
    margin-top:7px !important;
    border-top:1px solid rgba(16,24,39,.055) !important;
  }
  body.ubx-view-list .ubx-actions-bottom .board-btn,
  body.ubx-view-list .ubx-actions .board-btn{
    min-height:30px !important;
    padding:0 10px !important;
    font-size:11.6px !important;
    line-height:1 !important;
    border-radius:999px !important;
    gap:5px !important;
  }
  body.ubx-view-list .board-btn .board-btn-icon,
  body.ubx-view-list .board-btn svg{
    width:15px !important;
    height:15px !important;
  }
  body.ubx-view-list .ubx-reply-summary{
    margin-top:8px !important;
    gap:7px !important;
  }
  body.ubx-view-list .ubx-reply-open,
  body.ubx-view-list .ubx-reply-count-pill{
    min-height:30px !important;
    font-size:11.6px !important;
    padding:0 10px !important;
  }
  body.ubx-view-list .ubx-social-head{
    gap:6px !important;
    margin-bottom:7px !important;
  }
  body.ubx-view-list .ubx-author-pill{
    max-width:74px !important;
    min-height:28px !important;
    padding:0 10px !important;
    font-size:11px !important;
  }
  body.ubx-view-list .ubx-social-meta strong{
    font-size:12.5px !important;
  }
  body.ubx-view-list .ubx-social-meta span{
    font-size:11px !important;
  }
}


/* === Premium boards v38: hard-hide map on feed + balanced compact actions === */
/* The location/map card must not take space on the main feed. It is still available inside the opened details modal. */
.ubx-feed > .ubx-post-card > .ubx-post-body > .ubx-location-card,
.ubx-feed > .ubx-post-card > .ubx-post-body > .ubx-location-preview,
.ubx-feed > .ubx-post-card > .ubx-post-body > .ubx-location-open{
  display:none !important;
}
.ubx-post-modal-body .ubx-location-card,
.ubx-post-modal .ubx-location-card,
#ubxPostModal .ubx-location-card{
  display:grid !important;
}

@media(max-width:720px){
  .ubx-feed > .ubx-post-card{
    overflow:hidden !important;
  }
  .ubx-feed > .ubx-post-card > .ubx-post-body{
    min-width:0 !important;
  }
  .ubx-feed > .ubx-post-card .ubx-actions,
  .ubx-feed > .ubx-post-card .ubx-actions-bottom{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:7px !important;
    width:100% !important;
    max-width:100% !important;
    padding:8px 8px 0 0 !important;
    margin:8px 0 0 !important;
    box-sizing:border-box !important;
    border-top:1px solid rgba(15,23,42,.06) !important;
    overflow:hidden !important;
  }
  .ubx-feed > .ubx-post-card .ubx-actions .board-btn,
  .ubx-feed > .ubx-post-card .ubx-actions-bottom .board-btn{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    min-height:32px !important;
    padding:0 8px !important;
    font-size:12.4px !important;
    font-weight:900 !important;
    border-radius:999px !important;
    justify-content:center !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    box-sizing:border-box !important;
  }
  .ubx-feed > .ubx-post-card .ubx-actions .board-btn svg,
  .ubx-feed > .ubx-post-card .ubx-actions-bottom .board-btn svg,
  .ubx-feed > .ubx-post-card .ubx-actions .board-btn-icon,
  .ubx-feed > .ubx-post-card .ubx-actions-bottom .board-btn-icon{
    width:15px !important;
    height:15px !important;
    flex:0 0 auto !important;
  }
  .ubx-feed > .ubx-post-card .ubx-reply-summary{
    display:flex !important;
    gap:7px !important;
    align-items:center !important;
    margin:8px 0 0 !important;
    padding:0 8px 8px 0 !important;
  }
  .ubx-feed > .ubx-post-card .ubx-reply-open,
  .ubx-feed > .ubx-post-card .ubx-reply-count-pill{
    min-height:32px !important;
    font-size:12.4px !important;
    font-weight:900 !important;
    padding:0 12px !important;
    border-radius:999px !important;
  }
  .ubx-feed > .ubx-post-card .ubx-post-text{
    -webkit-line-clamp:4 !important;
    font-size:13px !important;
    line-height:1.25 !important;
    margin-bottom:0 !important;
  }
  .ubx-feed > .ubx-post-card h2{
    margin-bottom:5px !important;
  }
}

@media(max-width:390px){
  .ubx-feed > .ubx-post-card .ubx-actions,
  .ubx-feed > .ubx-post-card .ubx-actions-bottom{
    gap:6px !important;
  }
  .ubx-feed > .ubx-post-card .ubx-actions .board-btn,
  .ubx-feed > .ubx-post-card .ubx-actions-bottom .board-btn{
    font-size:11.7px !important;
    padding:0 6px !important;
  }
}

/* === Premium boards v39: desktop-only feed photo fit + larger detail modal === */
@media (min-width: 901px){
  /* Desktop feed/list only: stop photos being over-zoomed/cropped. Mobile stays untouched. */
  body.ubx-view-list .ubx-post-card{
    grid-template-columns:155px minmax(0,1fr) !important;
  }
  body.ubx-view-list .ubx-job-card .ubx-media-carousel,
  body.ubx-view-list .ubx-community-card .ubx-media-carousel{
    width:155px !important;
    min-height:150px !important;
    background:#eef3f9 !important;
  }
  body.ubx-view-list .ubx-media-slide,
  body.ubx-view-list .ubx-community-card .ubx-media-slide{
    background:#eef3f9 !important;
  }
  body.ubx-view-list .ubx-media-slide.has-photo-bg{
    background-color:#eef3f9 !important;
    background-image:none !important;
  }
  body.ubx-view-list .ubx-media-slide.has-photo-bg::before,
  body.ubx-view-list .ubx-media-slide.has-photo-bg::after{
    display:none !important;
  }
  body.ubx-view-list .ubx-media-slide img,
  body.ubx-view-list .ubx-media-slide video{
    object-fit:contain !important;
    object-position:center center !important;
    background:#eef3f9 !important;
  }

  /* Desktop detail modal: bigger panel and clearer content. Mobile modal rules remain unchanged. */
  .ubx-post-modal{
    padding:18px 22px !important;
  }
  .ubx-post-modal-panel{
    width:min(920px, calc(100vw - 380px)) !important;
    min-width:min(860px, calc(100vw - 380px)) !important;
    height:calc(100vh - 44px) !important;
    max-height:940px !important;
    border-radius:30px !important;
  }
  .ubx-post-modal-body .ubx-media-carousel,
  body.ubx-view-list .ubx-post-modal-body .ubx-media-carousel,
  .ubx-post-modal-body .ubx-job-card .ubx-media-carousel,
  .ubx-post-modal-body .ubx-community-card .ubx-media-carousel,
  body.ubx-view-list .ubx-post-modal-body .ubx-job-card .ubx-media-carousel,
  body.ubx-view-list .ubx-post-modal-body .ubx-community-card .ubx-media-carousel{
    height:38vh !important;
    min-height:300px !important;
    max-height:430px !important;
  }
  .ubx-post-modal-body .ubx-post-body,
  body.ubx-view-list .ubx-post-modal-body .ubx-post-body{
    padding:24px 26px 16px !important;
  }
  .ubx-post-modal-body .ubx-post-card h2,
  body.ubx-view-list .ubx-post-modal-body .ubx-post-card h2{
    font-size:30px !important;
    line-height:1.1 !important;
  }
  .ubx-post-modal-body .ubx-post-text,
  .ubx-post-modal-body .ubx-post-text.is-expanded,
  body.ubx-view-list .ubx-post-modal-body .ubx-post-text{
    font-size:17px !important;
    line-height:1.58 !important;
  }
  .ubx-post-modal-body .ubx-actions,
  .ubx-post-modal-body .ubx-actions-bottom,
  body.ubx-view-list .ubx-post-modal-body .ubx-actions,
  body.ubx-view-list .ubx-post-modal-body .ubx-actions-bottom{
    padding:0 26px 24px !important;
    gap:10px !important;
  }
  .ubx-post-modal-body .ubx-location-card,
  body.ubx-view-list .ubx-post-modal-body .ubx-location-card{
    margin-top:18px !important;
    padding:13px !important;
  }
}

@media (min-width: 901px) and (max-width: 1260px){
  .ubx-post-modal-panel{
    width:min(860px, calc(100vw - 300px)) !important;
    min-width:0 !important;
  }
}


/* === Premium boards v41: desktop details modal larger and full-height === */
@media (min-width: 901px){
  .ubx-post-modal{
    align-items:flex-start !important;
    justify-content:center !important;
    padding:14px 18px 14px !important;
  }
  .ubx-post-modal-panel{
    width:min(980px, calc(100vw - 520px)) !important;
    min-width:760px !important;
    height:calc(100dvh - 28px) !important;
    max-height:none !important;
    border-radius:26px !important;
  }
  .ubx-post-modal-body{
    height:100% !important;
    max-height:none !important;
    overflow:auto !important;
  }
  .ubx-post-modal-body .ubx-media-carousel,
  body.ubx-view-list .ubx-post-modal-body .ubx-media-carousel{
    height:38vh !important;
    min-height:330px !important;
    max-height:440px !important;
  }
  .ubx-post-modal-body .ubx-post-body,
  body.ubx-view-list .ubx-post-modal-body .ubx-post-body{
    padding:24px 28px 18px !important;
  }
  .ubx-post-modal-body .ubx-post-card h2,
  body.ubx-view-list .ubx-post-modal-body .ubx-post-card h2{
    font-size:30px !important;
    line-height:1.08 !important;
    letter-spacing:-.04em !important;
  }
  .ubx-post-modal-body .ubx-post-text,
  .ubx-post-modal-body .ubx-post-text.is-expanded,
  body.ubx-view-list .ubx-post-modal-body .ubx-post-text{
    font-size:17px !important;
    line-height:1.62 !important;
  }
  .ubx-post-modal-body .ubx-location-card,
  body.ubx-view-list .ubx-post-modal-body .ubx-location-card{
    margin-top:20px !important;
    padding:14px !important;
    border-radius:20px !important;
  }
  .ubx-post-modal-body .ubx-actions,
  .ubx-post-modal-body .ubx-actions-bottom,
  body.ubx-view-list .ubx-post-modal-body .ubx-actions,
  body.ubx-view-list .ubx-post-modal-body .ubx-actions-bottom{
    padding:0 28px 24px !important;
  }
}

@media (min-width: 901px) and (max-width: 1320px){
  .ubx-post-modal-panel{
    width:min(900px, calc(100vw - 380px)) !important;
    min-width:720px !important;
  }
}

@media (min-width: 901px) and (max-width: 1120px){
  .ubx-post-modal-panel{
    width:calc(100vw - 64px) !important;
    min-width:0 !important;
  }
}

/* === Premium boards v42: inline live search under Filter === */
.ubx-live-search{
  display:flex;
  align-items:center;
  gap:10px;
  margin:10px 0 12px;
  padding:10px 12px;
  border:1px solid rgba(148,163,184,.28);
  border-radius:22px;
  background:rgba(255,255,255,.92);
  box-shadow:0 14px 34px rgba(15,23,42,.07), inset 0 1px 0 rgba(255,255,255,.72);
}
.ubx-live-search-icon{
  flex:0 0 38px;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:14px;
  color:#2563eb;
  font-weight:900;
  font-size:24px;
  background:linear-gradient(135deg,#eef6ff,#f7fbff);
  box-shadow:inset 0 0 0 1px rgba(37,99,235,.08);
}
.ubx-live-search input{
  min-width:0;
  flex:1 1 auto;
  border:0;
  outline:0;
  background:transparent;
  color:#111827;
  font-size:16px;
  font-weight:750;
  letter-spacing:-.02em;
}
.ubx-live-search input::placeholder{
  color:#64748b;
  font-weight:650;
}
.ubx-live-search-clear{
  flex:0 0 34px;
  width:34px;
  height:34px;
  border:0;
  border-radius:999px;
  color:#64748b;
  background:#f1f5f9;
  font-size:22px;
  font-weight:900;
  line-height:1;
  cursor:pointer;
  display:none;
}
.ubx-live-search.has-value .ubx-live-search-clear{display:grid;place-items:center;}
.ubx-search-status{
  margin:-4px 4px 10px;
  color:#475569;
  font-weight:750;
  font-size:13px;
}
.ubx-post-card.ubx-search-hidden{display:none !important;}
.ubx-empty.ubx-search-empty{
  margin:10px 0 16px;
  border-style:dashed;
}
@media (max-width:700px){
  .ubx-live-search{
    margin:9px 8px 10px;
    padding:9px 10px;
    border-radius:20px;
  }
  .ubx-live-search-icon{width:34px;height:34px;flex-basis:34px;font-size:21px;border-radius:13px;}
  .ubx-live-search input{font-size:14px;font-weight:800;}
}

/* === v43: Buy/Sell price ribbon on listing photos + stronger £ price formatting === */
body.ubx-board-page .ubx-feed > .ubx-post-card > .ubx-media-carousel{
  position:relative !important;
}
.ubx-photo-price-ribbon{
  position:absolute;
  z-index:12;
  top:9px;
  left:8px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  max-width:calc(100% - 16px);
  padding:6px 10px 6px 9px;
  border-radius:999px;
  background:linear-gradient(135deg, rgba(255,247,214,.98), rgba(255,213,94,.96));
  color:#6f4500;
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 10px 24px rgba(39,28,4,.24);
  transform:rotate(-2deg);
  pointer-events:none;
  white-space:nowrap;
}
.ubx-photo-price-ribbon em{
  font-style:normal;
  text-transform:uppercase;
  letter-spacing:.04em;
  font-size:9.5px;
  font-weight:900;
  opacity:.82;
}
.ubx-photo-price-ribbon strong{
  font-size:15px;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.035em;
}
body.ubx-board-page .ubx-buy-price-pill{
  font-variant-numeric:tabular-nums;
}
@media(max-width:700px){
  .ubx-photo-price-ribbon{
    top:8px;
    left:7px;
    padding:5px 8px;
    gap:5px;
  }
  .ubx-photo-price-ribbon em{font-size:8.5px;}
  .ubx-photo-price-ribbon strong{font-size:13.5px;}
}
@media(min-width:900px){
  .ubx-photo-price-ribbon{
    top:11px;
    left:11px;
    padding:7px 12px;
  }
  .ubx-photo-price-ribbon strong{font-size:16px;}
}

/* v46: Buy/Sell sold status + login gated contacts */
.ubx-sold-status-pill{
  display:inline-flex;align-items:center;justify-content:center;
  padding:5px 10px;border-radius:999px;background:#111827;color:#fff;
  font-weight:900;font-size:12px;letter-spacing:.02em;text-transform:uppercase;
  box-shadow:0 6px 16px rgba(15,23,42,.18);
}
.ubx-photo-sold-ribbon{
  position:absolute;left:10px;top:10px;z-index:6;
  display:flex;flex-direction:column;align-items:flex-start;gap:1px;
  padding:8px 12px;border-radius:14px;
  background:linear-gradient(135deg,#111827,#374151);
  color:#fff;box-shadow:0 10px 24px rgba(0,0,0,.25);
  transform:rotate(-3deg);
}
.ubx-photo-sold-ribbon strong{font-size:16px;line-height:1;font-weight:950;letter-spacing:.08em;}
.ubx-photo-sold-ribbon em{font-style:normal;font-size:10px;opacity:.88;font-weight:750;}
.ubx-post-card.is-sold .ubx-media-carousel img,
.ubx-post-card.is-sold .ubx-media-carousel video{filter:grayscale(.28) saturate(.82);}
.ubx-post-card.is-sold{border-color:rgba(17,24,39,.20);}
.ubx-sold-contact-note{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:34px;padding:7px 11px;border-radius:12px;
  background:#f3f4f6;border:1px solid #e5e7eb;color:#374151;
  font-weight:800;font-size:13px;line-height:1.15;
}
.board-btn-login{
  background:#111827!important;color:#fff!important;border-color:#111827!important;
  font-weight:900;
}
.ubx-card-menu-pop form button{white-space:nowrap;}


/* v47: make SOLD overlay unmistakable on Buy/Sell feed photos */
.ubx-post-card.is-sold .ubx-media-carousel{position:relative;}
.ubx-post-card.is-sold .ubx-photo-sold-ribbon{
  position:absolute !important;
  top:10px !important;
  left:10px !important;
  z-index:50 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:86px !important;
  padding:7px 10px !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#ef4444,#991b1b) !important;
  color:#fff !important;
  box-shadow:0 10px 24px rgba(153,27,27,.32) !important;
  transform:rotate(-7deg) !important;
  pointer-events:none !important;
}
.ubx-post-card.is-sold .ubx-photo-sold-ribbon strong{font-size:16px !important;font-weight:950 !important;letter-spacing:.08em !important;}
.ubx-post-card.is-sold .ubx-photo-sold-ribbon em{font-style:normal !important;font-size:10px !important;font-weight:800 !important;opacity:.95 !important;}
.ubx-post-card.is-sold .ubx-buy-price-pill{display:none !important;}

/* === Premium boards v49: separate replies modal, Nextdoor-style discussion panel === */
.ubx-replies-modal{
  position:fixed;
  inset:0;
  z-index:10080;
  display:none;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(15,23,42,.52);
  backdrop-filter:blur(10px);
}
.ubx-replies-modal.is-open{display:flex;}
.ubx-replies-modal-panel{
  width:min(720px,96vw);
  max-height:min(86vh,760px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border-radius:24px;
  background:#fff;
  box-shadow:0 28px 80px rgba(15,23,42,.34);
  border:1px solid rgba(148,163,184,.32);
}
.ubx-replies-modal-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:16px 18px 12px;
  border-bottom:1px solid rgba(226,232,240,.95);
  background:linear-gradient(180deg,#fff,#f8fafc);
}
.ubx-replies-modal-head h2{
  margin:0;
  font-size:20px;
  line-height:1.15;
  color:#111827;
}
.ubx-replies-modal-head p{
  margin:4px 0 0;
  color:#667085;
  font-size:13px;
  line-height:1.35;
  max-width:560px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.ubx-replies-modal-body{
  padding:14px;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  background:#f7f8fb;
}
.ubx-replies-modal-thread{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}
.ubx-replies-modal-thread .ubx-thread-head{
  display:flex !important;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:0 0 10px;
  padding:0 2px;
}
.ubx-replies-modal-thread .ubx-reply-list{
  max-height:none !important;
  overflow:visible !important;
  padding:0 2px 10px;
}
.ubx-replies-modal-thread .ubx-reply-item{margin-bottom:10px;}
.ubx-replies-modal-thread .ubx-reply-bubble{
  background:#fff;
  border:1px solid rgba(226,232,240,.95);
  box-shadow:0 8px 24px rgba(15,23,42,.06);
}
.ubx-replies-modal-thread .ubx-reply-form{
  position:sticky;
  bottom:-14px;
  margin:12px -2px 0;
  padding:12px;
  border-radius:18px 18px 0 0;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(226,232,240,.95);
  box-shadow:0 -10px 28px rgba(15,23,42,.08);
}
.ubx-reply-count-pill{cursor:pointer;}
.ubx-post-modal-body .ubx-thread{
  max-height:260px;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
}
.ubx-post-modal-body .ubx-thread .ubx-reply-form{
  display:none !important;
}
.ubx-post-modal-body .ubx-thread::after{
  content:'Tap Reply to open all replies and write a message';
  display:block;
  margin-top:8px;
  padding:9px 10px;
  border-radius:999px;
  background:#f1f5f9;
  color:#475467;
  font-size:12px;
  text-align:center;
}
@media (max-width:700px){
  .ubx-replies-modal{
    align-items:flex-end;
    padding:0;
  }
  .ubx-replies-modal-panel{
    width:100%;
    max-height:88vh;
    border-radius:26px 26px 0 0;
  }
  .ubx-replies-modal-head{padding:15px 16px 11px;}
  .ubx-replies-modal-head h2{font-size:19px;}
  .ubx-replies-modal-head p{font-size:12.5px;max-width:78vw;}
  .ubx-replies-modal-body{padding:12px 12px 0;}
  .ubx-replies-modal-thread .ubx-reply-form{
    bottom:0;
    margin-left:-12px;
    margin-right:-12px;
    border-radius:20px 20px 0 0;
  }
}


/* === v50: make replies preview/count clearly clickable in full post details === */
.ubx-thread-head[data-reply-open]{
  cursor:pointer;
  user-select:none;
  gap:10px;
}
.ubx-thread-head[data-reply-open]:hover{
  background:rgba(15,23,42,.035);
}
.ubx-thread-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:26px;
  padding:5px 10px;
  border-radius:999px;
  background:#eef2ff;
  color:#1d4ed8;
  font-weight:800;
  font-size:12px;
}
.ubx-thread-open{
  margin-left:auto;
  border:1px solid rgba(37,99,235,.18);
  background:#fff;
  color:#1d4ed8;
  border-radius:999px;
  padding:7px 11px;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}
.ubx-thread-open:hover{background:#eff6ff;}
.ubx-post-modal-card .ubx-reply-list,
.ubx-post-modal-card .ubx-reply-item,
.ubx-post-modal-card .ubx-reply-more-note{
  cursor:pointer;
}
.ubx-replies-modal .ubx-reply-list,
.ubx-replies-modal .ubx-reply-item{
  cursor:default;
}

/* === v51: admin moderation for replies === */
.ubx-reply-item{position:relative;}
.ubx-reply-item.is-user-blocked .ubx-reply-bubble{opacity:.72;}
.ubx-reply-meta em{
  display:inline-flex;
  align-items:center;
  margin-left:6px;
  padding:2px 7px;
  border-radius:999px;
  background:#fee2e2;
  color:#991b1b;
  font-size:10px;
  font-style:normal;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.02em;
}
.ubx-reply-admin-menu{
  position:absolute;
  top:2px;
  right:0;
  z-index:8;
}
.ubx-reply-admin-menu summary{
  list-style:none;
  width:30px;
  height:30px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid rgba(15,23,42,.10);
  background:rgba(255,255,255,.96);
  color:#475569;
  font-size:16px;
  font-weight:1000;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(15,23,42,.10);
}
.ubx-reply-admin-menu summary::-webkit-details-marker{display:none;}
.ubx-reply-admin-pop{
  position:absolute;
  top:34px;
  right:0;
  min-width:168px;
  padding:7px;
  border-radius:14px;
  border:1px solid rgba(15,23,42,.10);
  background:#fff;
  box-shadow:0 18px 42px rgba(15,23,42,.20);
}
.ubx-reply-admin-pop form{margin:0;}
.ubx-reply-admin-pop button{
  width:100%;
  min-height:34px;
  border:0;
  border-radius:10px;
  background:transparent;
  color:#0f172a;
  text-align:left;
  padding:8px 10px;
  font-size:13px;
  font-weight:850;
  cursor:pointer;
}
.ubx-reply-admin-pop button:hover{background:#f1f5f9;}
.ubx-reply-admin-pop form:first-child button{color:#b91c1c;}
.ubx-reply-blocked{
  background:#fff7ed !important;
  color:#9a3412 !important;
  border:1px solid #fed7aa !important;
}
@media (max-width:640px){
  .ubx-reply-admin-menu{right:-2px;}
  .ubx-reply-admin-pop{right:0; min-width:154px;}
  .ubx-reply-bubble{padding-right:34px;}
}


/* === v52: reply box must be usable directly inside the opened post === */
.ubx-post-modal-body .ubx-thread .ubx-reply-form,
body.ubx-view-list .ubx-post-modal-body .ubx-thread .ubx-reply-form{
  display:grid !important;
}
.ubx-post-modal-body .ubx-thread::after,
body.ubx-view-list .ubx-post-modal-body .ubx-thread::after{
  content:none !important;
  display:none !important;
}
.ubx-post-modal-body .ubx-thread .ubx-thread-open{
  display:none !important;
}
.ubx-post-modal-body .ubx-thread-head{
  cursor:default !important;
}
.ubx-post-modal-body .ubx-reply-list,
body.ubx-view-list .ubx-post-modal-body .ubx-reply-list{
  max-height:22vh !important;
  overflow-y:auto !important;
}
@media(max-width:700px){
  .ubx-post-modal-body .ubx-thread,
  body.ubx-view-list .ubx-post-modal-body .ubx-thread{
    padding-bottom:calc(env(safe-area-inset-bottom,0px) + 12px) !important;
  }
  .ubx-post-modal-body .ubx-reply-form,
  body.ubx-view-list .ubx-post-modal-body .ubx-reply-form{
    grid-template-columns:minmax(0,1fr) 74px !important;
    gap:7px !important;
    margin-top:8px !important;
  }
  .ubx-post-modal-body .ubx-reply-form .ubx-reply-name{
    display:none !important;
  }
  .ubx-post-modal-body .ubx-reply-form textarea{
    min-height:42px !important;
    height:42px !important;
  }
  .ubx-post-modal-body .ubx-reply-form .ubx-primary{
    width:74px !important;
    min-width:74px !important;
  }
}

/* === v53: keep inline reply composer visible inside opened listing === */
#ubxPostModal .ubx-post-modal-body{
  overscroll-behavior:contain !important;
  padding-bottom:0 !important;
}
#ubxPostModal .ubx-post-modal-body .ubx-thread,
body.ubx-view-list #ubxPostModal .ubx-post-modal-body .ubx-thread{
  position:sticky !important;
  bottom:0 !important;
  z-index:40 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
  max-height:min(320px, 38vh) !important;
  min-height:0 !important;
  overflow:hidden !important;
  padding:10px 14px calc(env(safe-area-inset-bottom,0px) + 10px) !important;
  background:linear-gradient(180deg,#f8fafc 0%,#ffffff 50%,#ffffff 100%) !important;
  border-top:1px solid rgba(16,24,39,.10) !important;
  box-shadow:0 -14px 34px rgba(15,23,42,.08) !important;
}
#ubxPostModal .ubx-post-modal-body .ubx-thread-head,
body.ubx-view-list #ubxPostModal .ubx-post-modal-body .ubx-thread-head{
  flex:0 0 auto !important;
}
#ubxPostModal .ubx-post-modal-body .ubx-reply-list,
body.ubx-view-list #ubxPostModal .ubx-post-modal-body .ubx-reply-list{
  flex:1 1 auto !important;
  min-height:58px !important;
  max-height:135px !important;
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch !important;
  padding-right:4px !important;
}
#ubxPostModal .ubx-post-modal-body .ubx-reply-form,
body.ubx-view-list #ubxPostModal .ubx-post-modal-body .ubx-reply-form{
  flex:0 0 auto !important;
  position:relative !important;
  bottom:auto !important;
  z-index:45 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 82px !important;
  gap:7px !important;
  align-items:end !important;
  margin:0 !important;
  padding:8px 0 0 !important;
  background:#fff !important;
  border-top:1px solid rgba(16,24,39,.06) !important;
}
#ubxPostModal .ubx-post-modal-body .ubx-reply-form .ubx-reply-name,
body.ubx-view-list #ubxPostModal .ubx-post-modal-body .ubx-reply-form .ubx-reply-name{
  display:block !important;
  grid-column:1/-1 !important;
  width:100% !important;
  min-height:32px !important;
  height:32px !important;
  border-radius:999px !important;
  font-size:12.5px !important;
  padding:0 12px !important;
}
#ubxPostModal .ubx-post-modal-body .ubx-reply-form textarea,
body.ubx-view-list #ubxPostModal .ubx-post-modal-body .ubx-reply-form textarea{
  min-width:0 !important;
  width:100% !important;
  min-height:42px !important;
  height:42px !important;
  max-height:76px !important;
  resize:vertical !important;
  border-radius:22px !important;
  font-size:13.5px !important;
  line-height:1.25 !important;
}
#ubxPostModal .ubx-post-modal-body .ubx-reply-form .ubx-primary,
body.ubx-view-list #ubxPostModal .ubx-post-modal-body .ubx-reply-form .ubx-primary{
  width:82px !important;
  min-width:82px !important;
  min-height:42px !important;
  height:42px !important;
  border-radius:999px !important;
  padding:0 10px !important;
  font-size:12.5px !important;
  white-space:nowrap !important;
}
@media(max-width:700px){
  #ubxPostModal .ubx-post-modal-body .ubx-thread,
  body.ubx-view-list #ubxPostModal .ubx-post-modal-body .ubx-thread{
    max-height:min(300px, 42vh) !important;
    padding:9px 11px calc(env(safe-area-inset-bottom,0px) + 9px) !important;
  }
  #ubxPostModal .ubx-post-modal-body .ubx-reply-list,
  body.ubx-view-list #ubxPostModal .ubx-post-modal-body .ubx-reply-list{
    max-height:112px !important;
    min-height:52px !important;
  }
  #ubxPostModal .ubx-post-modal-body .ubx-reply-form,
  body.ubx-view-list #ubxPostModal .ubx-post-modal-body .ubx-reply-form{
    grid-template-columns:minmax(0,1fr) 74px !important;
  }
  #ubxPostModal .ubx-post-modal-body .ubx-reply-form .ubx-primary,
  body.ubx-view-list #ubxPostModal .ubx-post-modal-body .ubx-reply-form .ubx-primary{
    width:74px !important;
    min-width:74px !important;
  }
}

/* === v54: logical replies composer layout (mobile + desktop) ===
   Fixes: reply input overlapping old replies/keyboard, and keeps the composer
   inside the opened listing/replies modal without covering content. */
#ubxRepliesModal .ubx-replies-modal-panel{
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
  max-height:min(82dvh, 760px) !important;
}
#ubxRepliesModal .ubx-replies-modal-body{
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
  padding:12px !important;
}
#ubxRepliesModal .ubx-replies-modal-thread{
  flex:1 1 auto !important;
  min-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
  gap:8px !important;
}
#ubxRepliesModal .ubx-replies-modal-thread .ubx-thread-head{
  flex:0 0 auto !important;
}
#ubxRepliesModal .ubx-replies-modal-thread .ubx-reply-list{
  flex:1 1 auto !important;
  min-height:120px !important;
  max-height:none !important;
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch !important;
  padding:2px 2px 10px !important;
}
#ubxRepliesModal .ubx-replies-modal-thread .ubx-reply-form{
  flex:0 0 auto !important;
  position:relative !important;
  bottom:auto !important;
  margin:0 !important;
  padding:10px !important;
  border-radius:18px !important;
  background:#fff !important;
  border:1px solid rgba(226,232,240,.95) !important;
  box-shadow:0 -8px 24px rgba(15,23,42,.08) !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 82px !important;
  gap:8px !important;
  align-items:end !important;
}
#ubxRepliesModal .ubx-replies-modal-thread .ubx-reply-form .ubx-reply-name{
  grid-column:1/-1 !important;
  width:100% !important;
  min-height:34px !important;
  height:34px !important;
  border-radius:999px !important;
  padding:0 13px !important;
  font-size:13px !important;
}
#ubxRepliesModal .ubx-replies-modal-thread .ubx-reply-form textarea{
  min-width:0 !important;
  width:100% !important;
  min-height:44px !important;
  height:44px !important;
  max-height:96px !important;
  resize:vertical !important;
  border-radius:20px !important;
  padding:11px 13px !important;
  font-size:14px !important;
  line-height:1.28 !important;
}
#ubxRepliesModal .ubx-replies-modal-thread .ubx-reply-form .ubx-primary{
  width:82px !important;
  min-width:82px !important;
  min-height:44px !important;
  height:44px !important;
  border-radius:999px !important;
  font-size:13px !important;
  padding:0 10px !important;
}

/* Opened listing: replies should be a normal section, not a sticky box covering the listing. */
#ubxPostModal .ubx-post-modal-body .ubx-thread,
body.ubx-view-list #ubxPostModal .ubx-post-modal-body .ubx-thread{
  position:relative !important;
  bottom:auto !important;
  z-index:1 !important;
  max-height:none !important;
  overflow:visible !important;
  padding:12px 14px 14px !important;
  background:#f8fafc !important;
  box-shadow:none !important;
}
#ubxPostModal .ubx-post-modal-body .ubx-reply-list,
body.ubx-view-list #ubxPostModal .ubx-post-modal-body .ubx-reply-list{
  max-height:220px !important;
  min-height:0 !important;
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch !important;
  padding-bottom:8px !important;
}
#ubxPostModal .ubx-post-modal-body .ubx-reply-form,
body.ubx-view-list #ubxPostModal .ubx-post-modal-body .ubx-reply-form{
  position:relative !important;
  z-index:2 !important;
  margin-top:10px !important;
  padding:10px !important;
  border-radius:18px !important;
  background:#fff !important;
  border:1px solid rgba(226,232,240,.95) !important;
  box-shadow:0 8px 22px rgba(15,23,42,.06) !important;
}
@media(max-width:700px){
  #ubxRepliesModal{align-items:flex-end !important; padding:0 !important;}
  #ubxRepliesModal .ubx-replies-modal-panel{
    width:100% !important;
    max-height:78dvh !important;
    border-radius:24px 24px 0 0 !important;
  }
  #ubxRepliesModal .ubx-replies-modal-head{padding:14px 16px 10px !important;}
  #ubxRepliesModal .ubx-replies-modal-body{
    padding:10px 10px calc(env(safe-area-inset-bottom,0px) + 10px) !important;
  }
  #ubxRepliesModal .ubx-replies-modal-thread .ubx-reply-list{
    min-height:92px !important;
  }
  #ubxRepliesModal .ubx-replies-modal-thread .ubx-reply-form{
    grid-template-columns:minmax(0,1fr) 72px !important;
    gap:7px !important;
    padding:9px !important;
  }
  #ubxRepliesModal .ubx-replies-modal-thread .ubx-reply-form .ubx-primary{
    width:72px !important;
    min-width:72px !important;
  }
  #ubxPostModal .ubx-post-modal-body .ubx-reply-form,
  body.ubx-view-list #ubxPostModal .ubx-post-modal-body .ubx-reply-form{
    grid-template-columns:minmax(0,1fr) 72px !important;
    gap:7px !important;
  }
  #ubxPostModal .ubx-post-modal-body .ubx-reply-form .ubx-primary,
  body.ubx-view-list #ubxPostModal .ubx-post-modal-body .ubx-reply-form .ubx-primary{
    width:72px !important;
    min-width:72px !important;
  }
}


/* === v65: mobile opened listing media fix for Cards mode ===
   Fix: when a user opens a listing from Cards mode, portrait photos must not become
   a tall left rail with text on the right. In the opened listing, media always sits
   on top; text/actions/replies sit underneath. Portrait photos are contained, and
   landscape photos fill the top media area neatly. */
@media (max-width: 720px){
  #ubxPostModal .ubx-post-modal-body .ubx-post-modal-card,
  #ubxPostModal .ubx-post-modal-card{
    display:flex !important;
    flex-direction:column !important;
    grid-template-columns:none !important;
    grid-template-rows:none !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    min-height:0 !important;
    overflow:visible !important;
    background:#fff !important;
  }

  #ubxPostModal .ubx-post-modal-card > .ubx-media-carousel,
  #ubxPostModal .ubx-post-modal-body .ubx-post-modal-card > .ubx-media-carousel,
  #ubxPostModal .ubx-post-modal-card > .ubx-media-placeholder{
    order:1 !important;
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    flex:0 0 auto !important;
    grid-column:auto !important;
    grid-row:auto !important;
    border-radius:0 !important;
    overflow:hidden !important;
    background:#0f172a !important;
  }

  #ubxPostModal .ubx-post-modal-card > .ubx-media-carousel .ubx-media-track{
    display:flex !important;
    flex-direction:row !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:x mandatory !important;
    -webkit-overflow-scrolling:touch !important;
    align-items:stretch !important;
    background:#0f172a !important;
  }

  #ubxPostModal .ubx-post-modal-card > .ubx-media-carousel .ubx-media-slide{
    position:relative !important;
    flex:0 0 100% !important;
    width:100% !important;
    min-width:100% !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 !important;
    padding:0 !important;
    aspect-ratio:16 / 10 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:hidden !important;
    scroll-snap-align:center !important;
    background:#0f172a !important;
    border-radius:0 !important;
  }

  /* Portrait phone photos: keep the whole photo visible instead of stretching it. */
  #ubxPostModal .ubx-post-modal-card > .ubx-media-carousel .ubx-media-slide.is-portrait,
  #ubxPostModal .ubx-post-modal-card > .ubx-media-carousel .ubx-media-slide.has-photo-bg.is-portrait{
    aspect-ratio:auto !important;
    height:min(52vh, 470px) !important;
    min-height:280px !important;
    max-height:470px !important;
    align-items:center !important;
    justify-content:center !important;
  }

  /* Landscape photos: behave like normal listing portals and fill the top hero area. */
  #ubxPostModal .ubx-post-modal-card > .ubx-media-carousel .ubx-media-slide.is-landscape,
  #ubxPostModal .ubx-post-modal-card > .ubx-media-carousel .ubx-media-slide.has-photo-bg.is-landscape{
    aspect-ratio:16 / 10 !important;
    height:auto !important;
    min-height:0 !important;
  }

  #ubxPostModal .ubx-post-modal-card > .ubx-media-carousel .ubx-media-slide img,
  #ubxPostModal .ubx-post-modal-card > .ubx-media-carousel .ubx-media-slide video{
    position:relative !important;
    inset:auto !important;
    z-index:2 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:100% !important;
    max-height:100% !important;
    object-position:center center !important;
    background:transparent !important;
  }

  #ubxPostModal .ubx-post-modal-card > .ubx-media-carousel .ubx-media-slide.is-portrait img,
  #ubxPostModal .ubx-post-modal-card > .ubx-media-carousel .ubx-media-slide.is-portrait video{
    width:auto !important;
    height:100% !important;
    object-fit:contain !important;
  }

  #ubxPostModal .ubx-post-modal-card > .ubx-media-carousel .ubx-media-slide.is-landscape img,
  #ubxPostModal .ubx-post-modal-card > .ubx-media-carousel .ubx-media-slide.is-landscape video{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
  }

  #ubxPostModal .ubx-post-modal-card > .ubx-media-carousel .ubx-media-slide.has-photo-bg::before{
    display:block !important;
    content:'' !important;
    position:absolute !important;
    inset:-20px !important;
    z-index:0 !important;
    background-image:var(--ubx-photo-bg) !important;
    background-size:cover !important;
    background-position:center !important;
    filter:blur(18px) !important;
    opacity:.42 !important;
    transform:scale(1.08) !important;
  }
  #ubxPostModal .ubx-post-modal-card > .ubx-media-carousel .ubx-media-slide.has-photo-bg::after{
    display:block !important;
    content:'' !important;
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    background:rgba(15,23,42,.22) !important;
  }

  #ubxPostModal .ubx-post-modal-card > .ubx-post-body{
    order:2 !important;
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    padding:16px 17px 11px !important;
    grid-column:auto !important;
    grid-row:auto !important;
    background:#fff !important;
  }
  #ubxPostModal .ubx-post-modal-card > .ubx-actions,
  #ubxPostModal .ubx-post-modal-card > .ubx-actions-bottom{
    order:3 !important;
    width:100% !important;
    max-width:100% !important;
    padding:9px 17px 12px !important;
    margin:0 !important;
    display:flex !important;
    flex-wrap:wrap !important;
    gap:9px !important;
    background:#fff !important;
    border-top:1px solid rgba(15,23,42,.06) !important;
  }
  #ubxPostModal .ubx-post-modal-card > .ubx-reply-summary,
  #ubxPostModal .ubx-post-modal-card > .ubx-thread{
    order:4 !important;
  }
}


/* === v66: restore List/Cards switch + stable details modal media order === */
.ubx-board-view-row{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  margin:10px 12px 12px;
}
.ubx-view-switch{
  display:inline-flex !important;
  align-items:center;
  gap:4px;
  padding:5px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(16,24,39,.08);
  box-shadow:0 10px 24px rgba(15,23,42,.08);
}
.ubx-view-switch button{
  border:0;
  min-height:34px;
  padding:0 15px;
  border-radius:999px;
  background:transparent;
  color:#475467;
  font-weight:850;
  font-size:14px;
  cursor:pointer;
}
.ubx-view-switch button.is-active{
  background:linear-gradient(135deg,#2385ff,#24c2f4);
  color:#fff;
  box-shadow:0 8px 18px rgba(37,99,235,.22);
}
@media(max-width:720px){
  .ubx-board-view-row{margin:8px 8px 10px;justify-content:flex-end;}
  .ubx-view-switch{padding:4px;}
  .ubx-view-switch button{min-height:31px;padding:0 12px;font-size:13px;}
}

/* In the opened details modal the photo/gallery is always first, never below Reply. */
#ubxPostModal .ubx-post-modal-body .ubx-post-modal-card,
#ubxPostModal .ubx-post-modal-body .ubx-post-card{
  display:flex !important;
  flex-direction:column !important;
  grid-template-columns:none !important;
  grid-template-rows:none !important;
}
#ubxPostModal .ubx-post-modal-body .ubx-media-carousel,
#ubxPostModal .ubx-post-modal-body .ubx-media-placeholder{
  order:-1000 !important;
  width:100% !important;
  flex:0 0 auto !important;
  grid-column:auto !important;
  grid-row:auto !important;
}
#ubxPostModal .ubx-post-modal-body .ubx-post-body{order:0 !important;}
#ubxPostModal .ubx-post-modal-body .ubx-actions,
#ubxPostModal .ubx-post-modal-body .ubx-actions-bottom{order:10 !important;}
#ubxPostModal .ubx-post-modal-body .ubx-reply-summary{order:20 !important;}
#ubxPostModal .ubx-post-modal-body .ubx-thread{order:30 !important;}

@media(max-width:720px){
  #ubxPostModal .ubx-post-modal-body .ubx-media-carousel,
  #ubxPostModal .ubx-post-modal-body .ubx-media-placeholder{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    background:#0f172a !important;
    overflow:hidden !important;
  }
  #ubxPostModal .ubx-post-modal-body .ubx-media-track{
    display:flex !important;
    height:auto !important;
    min-height:0 !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:x mandatory !important;
    -webkit-overflow-scrolling:touch !important;
  }
  #ubxPostModal .ubx-post-modal-body .ubx-media-slide{
    flex:0 0 100% !important;
    width:100% !important;
    min-width:100% !important;
    aspect-ratio:16/10 !important;
    height:auto !important;
    min-height:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#0f172a !important;
    scroll-snap-align:center !important;
  }
  #ubxPostModal .ubx-post-modal-body .ubx-media-slide.is-portrait,
  #ubxPostModal .ubx-post-modal-body .ubx-media-slide.has-photo-bg.is-portrait{
    aspect-ratio:auto !important;
    height:min(48vh,430px) !important;
    min-height:260px !important;
  }
  #ubxPostModal .ubx-post-modal-body .ubx-media-slide img,
  #ubxPostModal .ubx-post-modal-body .ubx-media-slide video,
  #ubxPostModal .ubx-post-modal-body .ubx-media-slide.has-photo-bg img,
  #ubxPostModal .ubx-post-modal-body .ubx-media-slide.has-photo-bg video{
    position:relative !important;
    inset:auto !important;
    width:100% !important;
    height:100% !important;
    max-width:100% !important;
    max-height:100% !important;
    object-fit:contain !important;
    object-position:center center !important;
    z-index:2 !important;
    background:transparent !important;
  }
  #ubxPostModal .ubx-post-modal-body .ubx-media-slide.is-landscape img,
  #ubxPostModal .ubx-post-modal-body .ubx-media-slide.is-landscape video{
    object-fit:cover !important;
  }
}


/* === v67: force List/Cards switch visible after older list-only CSS === */
body.ubx-board-page .ubx-board-view-row,
body.ubx-community-page .ubx-board-view-row,
body.ubx-jobs-page .ubx-board-view-row{
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  width:100% !important;
  margin:8px 10px 12px !important;
  padding:0 !important;
  visibility:visible !important;
  opacity:1 !important;
}
body.ubx-board-page .ubx-view-switch,
body.ubx-community-page .ubx-view-switch,
body.ubx-jobs-page .ubx-view-switch{
  display:inline-flex !important;
  align-items:center !important;
  gap:4px !important;
  padding:5px !important;
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid rgba(16,24,39,.10) !important;
  box-shadow:0 10px 24px rgba(15,23,42,.10) !important;
  visibility:visible !important;
  opacity:1 !important;
  transform:none !important;
  position:relative !important;
  z-index:20 !important;
}
body.ubx-board-page .ubx-view-switch button,
body.ubx-community-page .ubx-view-switch button,
body.ubx-jobs-page .ubx-view-switch button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:0 !important;
  min-height:34px !important;
  padding:0 15px !important;
  border-radius:999px !important;
  background:transparent !important;
  color:#475467 !important;
  font-weight:850 !important;
  font-size:14px !important;
  line-height:1 !important;
  cursor:pointer !important;
  visibility:visible !important;
  opacity:1 !important;
}
body.ubx-board-page .ubx-view-switch button.is-active,
body.ubx-community-page .ubx-view-switch button.is-active,
body.ubx-jobs-page .ubx-view-switch button.is-active{
  background:linear-gradient(135deg,#2385ff,#24c2f4) !important;
  color:#fff !important;
  box-shadow:0 8px 18px rgba(37,99,235,.22) !important;
}
@media(max-width:720px){
  body.ubx-board-page .ubx-board-view-row,
  body.ubx-community-page .ubx-board-view-row,
  body.ubx-jobs-page .ubx-board-view-row{
    margin:6px 8px 10px !important;
  }
  body.ubx-board-page .ubx-view-switch,
  body.ubx-community-page .ubx-view-switch,
  body.ubx-jobs-page .ubx-view-switch{
    padding:4px !important;
  }
  body.ubx-board-page .ubx-view-switch button,
  body.ubx-community-page .ubx-view-switch button,
  body.ubx-jobs-page .ubx-view-switch button{
    min-height:31px !important;
    padding:0 12px !important;
    font-size:13px !important;
  }
}


/* === v68: real List/Cards modes + details modal photo always top === */
body.ubx-board-page .ubx-board-view-row{display:flex!important;}
body.ubx-board-page .ubx-view-switch{display:inline-flex!important;}

/* LIST MODE: photo left, all content/actions right. */
body.ubx-board-page.ubx-view-list .ubx-feed > .ubx-post-card{
  display:flex!important;
  flex-direction:row!important;
  align-items:stretch!important;
}
body.ubx-board-page.ubx-view-list .ubx-feed > .ubx-post-card > .ubx-media-carousel,
body.ubx-board-page.ubx-view-list .ubx-feed > .ubx-post-card > .ubx-media-placeholder{
  order:1!important;
  flex:0 0 42%!important;
  width:42%!important;
  max-width:42%!important;
  min-width:128px!important;
  align-self:stretch!important;
}
body.ubx-board-page.ubx-view-list .ubx-feed > .ubx-post-card > .ubx-list-info{
  order:2!important;
  flex:1 1 auto!important;
  width:auto!important;
  min-width:0!important;
}

/* CARDS MODE: proper photo-led card, no forced list layout. */
body.ubx-board-page.ubx-view-cards .ubx-feed{
  display:grid!important;
  grid-template-columns:repeat(auto-fit, minmax(260px, 1fr))!important;
  gap:14px!important;
}
body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  width:100%!important;
  max-width:100%!important;
}
body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card > .ubx-media-carousel,
body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card > .ubx-media-placeholder{
  order:1!important;
  flex:0 0 auto!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:220px!important;
  min-height:220px!important;
  align-self:auto!important;
  border-radius:18px 18px 0 0!important;
}
body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card > .ubx-list-info{
  order:2!important;
  flex:0 0 auto!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
}
body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card > .ubx-list-info > .ubx-post-body,
body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card > .ubx-list-info > .ubx-actions,
body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card > .ubx-list-info > .ubx-actions-bottom,
body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card > .ubx-list-info > .ubx-reply-summary{
  width:100%!important;
  max-width:100%!important;
}
@media(max-width:720px){
  body.ubx-board-page.ubx-view-cards .ubx-feed{grid-template-columns:1fr!important;gap:12px!important;}
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card > .ubx-media-carousel,
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card > .ubx-media-placeholder{
    height:205px!important;
    min-height:205px!important;
  }
}

/* Details modal: gallery/photo is always the first block, above text, actions and replies. */
#ubxPostModal .ubx-post-modal-body .ubx-post-modal-card{
  display:flex!important;
  flex-direction:column!important;
}
#ubxPostModal .ubx-post-modal-body .ubx-post-modal-card > .ubx-media-carousel,
#ubxPostModal .ubx-post-modal-body .ubx-post-modal-card > .ubx-media-placeholder{
  order:-9999!important;
  width:100%!important;
  max-width:100%!important;
  flex:0 0 auto!important;
}
#ubxPostModal .ubx-post-modal-body .ubx-post-modal-card > .ubx-list-info{
  order:2!important;
  width:100%!important;
  max-width:100%!important;
  display:flex!important;
  flex-direction:column!important;
}
#ubxPostModal .ubx-post-modal-body .ubx-post-modal-card > .ubx-list-info > .ubx-post-body{order:1!important;}
#ubxPostModal .ubx-post-modal-body .ubx-post-modal-card > .ubx-list-info > .ubx-actions,
#ubxPostModal .ubx-post-modal-body .ubx-post-modal-card > .ubx-list-info > .ubx-actions-bottom{order:2!important;}
#ubxPostModal .ubx-post-modal-body .ubx-post-modal-card > .ubx-list-info > .ubx-reply-summary{order:3!important;}
#ubxPostModal .ubx-post-modal-body .ubx-post-modal-card > .ubx-list-info > .ubx-thread{order:4!important;}
@media(max-width:720px){
  #ubxPostModal .ubx-post-modal-body .ubx-post-modal-card > .ubx-media-carousel,
  #ubxPostModal .ubx-post-modal-body .ubx-post-modal-card > .ubx-media-placeholder{
    height:auto!important;
    min-height:0!important;
    background:#0f172a!important;
  }
  #ubxPostModal .ubx-post-modal-body .ubx-post-modal-card > .ubx-media-carousel .ubx-media-track{
    display:flex!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    -webkit-overflow-scrolling:touch!important;
  }
  #ubxPostModal .ubx-post-modal-body .ubx-post-modal-card > .ubx-media-carousel .ubx-media-slide{
    flex:0 0 100%!important;
    width:100%!important;
    min-width:100%!important;
    height:min(42vh,390px)!important;
    min-height:235px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    scroll-snap-align:center!important;
    background:#0f172a!important;
  }
  #ubxPostModal .ubx-post-modal-body .ubx-post-modal-card > .ubx-media-carousel .ubx-media-slide img,
  #ubxPostModal .ubx-post-modal-body .ubx-post-modal-card > .ubx-media-carousel .ubx-media-slide video{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center center!important;
  }
}


/* === v69: mobile Cards view shows 2 cards per row === */
@media (max-width:720px){
  body.ubx-board-page.ubx-view-cards .ubx-feed{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    padding-left:2px!important;
    padding-right:2px!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    border-radius:14px!important;
    overflow:hidden!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card > .ubx-media-carousel,
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card > .ubx-media-placeholder{
    height:124px!important;
    min-height:124px!important;
    border-radius:14px 14px 0 0!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-post-body{
    padding:8px 8px 5px!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card h2{
    font-size:14px!important;
    line-height:1.15!important;
    margin-bottom:4px!important;
    -webkit-line-clamp:2!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-post-text{
    font-size:11.5px!important;
    line-height:1.2!important;
    -webkit-line-clamp:2!important;
    margin-bottom:5px!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-social-head{
    gap:5px!important;
    margin-bottom:5px!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-avatar{
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    border-radius:9px!important;
    font-size:11px!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-social-meta strong{
    font-size:12px!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-social-meta span{
    font-size:10.5px!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-badge{
    min-height:20px!important;
    padding:0 6px!important;
    font-size:9.5px!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-buy-price{
    font-size:13px!important;
    padding:2px 6px!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-actions,
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-actions-bottom{
    gap:4px!important;
    padding:5px 7px 3px!important;
    overflow-x:auto!important;
    flex-wrap:nowrap!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn,
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn-chat,
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-share-btn{
    height:24px!important;
    min-height:24px!important;
    padding:0 7px!important;
    font-size:10px!important;
    gap:3px!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-reply-summary{
    padding:4px 7px 8px!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-reply-open,
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-reply-count-pill{
    height:24px!important;
    min-height:24px!important;
    font-size:10px!important;
    padding:0 7px!important;
  }
}


/* =========================================================
   2026-05-04 v70: mobile Cards mode compact contact icons
   - keeps 2 cards per row
   - actions are always visible as small icons, not clipped text pills
   - does not affect List mode
   ========================================================= */
@media (max-width:720px){
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-actions,
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-actions-bottom{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:4px!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
    overflow-x:visible!important;
    padding:6px 7px 3px!important;
    margin:0!important;
    box-sizing:border-box!important;
  }

  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn,
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-share-btn,
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn[href^="https://wa.me"],
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn[href^="tel:"],
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn[href^="mailto:"]{
    flex:0 0 27px!important;
    width:27px!important;
    min-width:27px!important;
    max-width:27px!important;
    height:27px!important;
    min-height:27px!important;
    padding:0!important;
    border-radius:999px!important;
    font-size:0!important;
    line-height:1!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    box-shadow:0 5px 10px rgba(15,23,42,.08)!important;
    overflow:hidden!important;
  }

  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn::before,
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-share-btn::before{
    display:block!important;
    font-size:13px!important;
    line-height:1!important;
    font-weight:900!important;
  }

  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn[href^="https://wa.me"]::before{content:"WA"!important;font-size:9px!important;letter-spacing:-.04em!important;}
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn[href^="tel:"]::before{content:"☎"!important;}
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn[href^="mailto:"]::before{content:"✉"!important;}
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-share-btn::before{content:"↗"!important;}

  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn[href^="https://wa.me"]{
    background:linear-gradient(135deg,#22c55e,#16a34a)!important;
    color:#fff!important;
    border:1px solid rgba(22,163,74,.18)!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn[href^="tel:"],
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn[href^="mailto:"],
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-share-btn{
    background:#f8fafc!important;
    color:#1f2937!important;
    border:1px solid rgba(148,163,184,.42)!important;
  }

  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-reply-summary{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:5px!important;
    width:100%!important;
    padding:4px 7px 8px!important;
    box-sizing:border-box!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-reply-open,
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-reply-count-pill{
    height:25px!important;
    min-height:25px!important;
    border-radius:999px!important;
    padding:0 8px!important;
    font-size:10.5px!important;
    box-shadow:none!important;
  }

  /* Give the compact actions a little breathing room without making cards tall. */
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-post-body{
    padding-bottom:4px!important;
  }
}

@media (max-width:380px){
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn,
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-share-btn,
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn[href^="https://wa.me"],
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn[href^="tel:"],
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn[href^="mailto:"]{
    flex-basis:25px!important;
    width:25px!important;
    min-width:25px!important;
    max-width:25px!important;
    height:25px!important;
    min-height:25px!important;
  }
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn::before,
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .ubx-share-btn::before{font-size:12px!important;}
  body.ubx-board-page.ubx-view-cards .ubx-feed > .ubx-post-card .board-btn[href^="https://wa.me"]::before{font-size:8.5px!important;}
}

/* v71 compact Community header + smart topic tiles */
body.ubx-community-page .ubx-starter-row{
  --ubx-topic-gap: 10px;
}
body.ubx-community-page .ubx-start-pill.ubx-start-browse{
  cursor:pointer;
}
body.ubx-community-page .ubx-start-count{
  min-width: 24px;
  height: 24px;
  padding: 0 7px;
  border-radius: 999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  font-size:13px;
  background:linear-gradient(135deg,#1594ff,#3359ef);
  color:#fff;
  box-shadow:0 10px 22px rgba(31,96,230,.22);
}

@media (max-width: 720px){
  body.ubx-community-page .ubx-board-main{
    padding-top: 8px !important;
  }
  body.ubx-community-page .ubx-board-hero,
  body.ubx-community-page .ubx-hero,
  body.ubx-community-page .ubx-page-hero{
    margin: 8px 12px 10px !important;
    padding: 18px 18px !important;
    border-radius: 24px !important;
    min-height: 0 !important;
  }
  body.ubx-community-page .ubx-board-hero h1,
  body.ubx-community-page .ubx-hero h1,
  body.ubx-community-page .ubx-page-hero h1{
    font-size: clamp(34px, 10vw, 46px) !important;
    line-height: .95 !important;
    margin: 0 0 6px !important;
  }
  body.ubx-community-page .ubx-board-hero p,
  body.ubx-community-page .ubx-hero p,
  body.ubx-community-page .ubx-page-hero p{
    font-size: 15px !important;
    line-height: 1.25 !important;
    max-height: 38px !important;
    overflow: hidden !important;
    margin: 0 !important;
  }
  body.ubx-community-page .ubx-eyebrow{
    display:none !important;
  }

  body.ubx-community-page .ubx-action-card-rich,
  body.ubx-community-page .ubx-action-card{
    margin: 8px 12px 10px !important;
    padding: 12px !important;
    border-radius: 24px !important;
  }
  body.ubx-community-page .ubx-action-card-rich{
    display:block !important;
  }
  body.ubx-community-page .ubx-action-copy{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
    margin:0 0 10px !important;
  }
  body.ubx-community-page .ubx-action-copy h2{
    font-size: 20px !important;
    line-height:1.05 !important;
    margin:0 !important;
    letter-spacing:-.04em !important;
  }
  body.ubx-community-page .ubx-action-copy p{
    display:none !important;
  }
  body.ubx-community-page .ubx-action-controls{
    display:block !important;
  }
  body.ubx-community-page .ubx-action-controls > .ubx-primary,
  body.ubx-community-page .ubx-action-controls > button.ubx-primary,
  body.ubx-community-page .ubx-action-controls > a.ubx-primary{
    position:absolute !important;
    right:24px !important;
    margin-top:-50px !important;
    min-height:42px !important;
    padding:0 16px !important;
    border-radius:18px !important;
    font-size:15px !important;
    font-weight:900 !important;
    white-space:nowrap !important;
  }
  body.ubx-community-page .ubx-starter-row{
    display:grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap:8px !important;
    margin-top:4px !important;
  }
  body.ubx-community-page .ubx-start-pill{
    min-height:48px !important;
    padding:8px 10px !important;
    border-radius:18px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:8px !important;
    font-size:14px !important;
    font-weight:900 !important;
    line-height:1.05 !important;
    overflow:hidden !important;
  }
  body.ubx-community-page .ubx-start-pill svg,
  body.ubx-community-page .ubx-start-pill .ubx-icon{
    width:20px !important;
    height:20px !important;
    flex:0 0 20px !important;
  }
  body.ubx-community-page .ubx-start-pill span{
    min-width:0 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }
  body.ubx-community-page .ubx-start-pill .ubx-start-count{
    margin-left:auto !important;
    flex:0 0 auto !important;
  }

  body.ubx-community-page .ubx-filter-card{
    margin: 8px 12px !important;
    padding: 10px 12px !important;
    min-height: 58px !important;
    border-radius: 22px !important;
  }
  body.ubx-community-page .ubx-filter-icon{
    width:38px !important;
    height:38px !important;
    border-radius:14px !important;
  }
  body.ubx-community-page .ubx-filter-title{
    font-size:12px !important;
  }
  body.ubx-community-page .ubx-filter-value{
    font-size:17px !important;
    max-width: 190px !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  body.ubx-community-page .ubx-filter-open{
    min-height:42px !important;
    padding:0 22px !important;
    border-radius:18px !important;
  }

  body.ubx-community-page .ubx-live-search{
    margin: 8px 12px !important;
    min-height:52px !important;
    border-radius:22px !important;
    padding:8px 12px !important;
  }
  body.ubx-community-page .ubx-live-search input{
    font-size:16px !important;
  }
  body.ubx-community-page .ubx-quick-tabs{
    margin: 8px 0 8px !important;
    padding: 0 12px 2px !important;
    gap:8px !important;
  }
  body.ubx-community-page .ubx-quick-tabs a{
    min-height:40px !important;
    padding:0 12px !important;
    border-radius:16px !important;
    font-size:14px !important;
  }
  body.ubx-community-page .ubx-board-view-row{
    margin: 4px 12px 8px !important;
    justify-content:flex-end !important;
  }
}

@media (max-width: 430px){
  body.ubx-community-page .ubx-action-controls > .ubx-primary,
  body.ubx-community-page .ubx-action-controls > button.ubx-primary,
  body.ubx-community-page .ubx-action-controls > a.ubx-primary{
    right:22px !important;
    padding:0 12px !important;
    font-size:14px !important;
  }
  body.ubx-community-page .ubx-action-copy h2{
    font-size:19px !important;
    max-width: 185px !important;
  }
}

/* === v72: clearer category context + less blue Community header === */
body.ubx-community-page{
  --ubx-community-accent:#9b3f61;
  --ubx-community-accent-2:#f59e0b;
  --ubx-community-purple:#7c3aed;
}
body.ubx-community-page .ubx-hero.ubx-hero-clean{
  background:linear-gradient(135deg,#9b3f61 0%,#7c3aed 58%,#f59e0b 140%) !important;
  box-shadow:0 18px 42px rgba(124,58,237,.22) !important;
}
body.ubx-community-page .ubx-nav a.is-active{
  background:linear-gradient(135deg,#9b3f61,#7c3aed) !important;
}
body.ubx-community-page .ubx-action-controls > .ubx-primary,
body.ubx-community-page .ubx-action-controls > button.ubx-primary,
body.ubx-community-page .ubx-action-controls > a.ubx-primary{
  background:linear-gradient(135deg,#9b3f61,#f59e0b) !important;
  box-shadow:0 14px 28px rgba(155,63,97,.22) !important;
}
body.ubx-community-page.ubx-buysell-mode .ubx-action-card-rich{
  border-color:rgba(245,158,11,.28) !important;
  background:linear-gradient(180deg,rgba(255,251,235,.92),rgba(255,255,255,.92)) !important;
}
body.ubx-community-page.ubx-buysell-mode .ubx-action-copy h2::after{
  content:'Buy / Sell mode';
  display:inline-flex;
  margin-left:8px;
  padding:5px 9px;
  border-radius:999px;
  background:#fff7ed;
  border:1px solid rgba(245,158,11,.30);
  color:#9a3412;
  font-size:12px;
  font-weight:900;
  vertical-align:middle;
}
body.ubx-community-page .ubx-start-pill[href*="Buy"],
body.ubx-community-page .ubx-start-pill[data-preset-category="Buy / sell"],
body.ubx-community-page .ubx-quick-tabs a[href*="Buy"]{
  border-color:rgba(245,158,11,.30) !important;
  background:linear-gradient(180deg,#fff7ed,#ffffff) !important;
}
body.ubx-community-page .ubx-start-pill[href*="Fly"],
body.ubx-community-page .ubx-start-pill[data-preset-category="Fly-tipping / rubbish"],
body.ubx-community-page .ubx-quick-tabs a[href*="Fly"]{
  border-color:rgba(239,68,68,.22) !important;
  background:linear-gradient(180deg,#fff1f2,#ffffff) !important;
}
body.ubx-community-page .ubx-start-pill[href*="Question"],
body.ubx-community-page .ubx-start-pill[data-preset-category="Question"],
body.ubx-community-page .ubx-quick-tabs a[href*="Question"]{
  border-color:rgba(124,58,237,.22) !important;
  background:linear-gradient(180deg,#f5f3ff,#ffffff) !important;
}
body.ubx-community-page .ubx-start-pill[href*="Recommendation"],
body.ubx-community-page .ubx-start-pill[data-preset-category="Recommendation"],
body.ubx-community-page .ubx-quick-tabs a[href*="Recommendation"]{
  border-color:rgba(217,119,6,.22) !important;
  background:linear-gradient(180deg,#fffbeb,#ffffff) !important;
}
@media (max-width:640px){
  body.ubx-community-page .ubx-action-card-rich{
    margin-top:8px !important;
  }
  body.ubx-community-page .ubx-action-controls > .ubx-primary,
  body.ubx-community-page .ubx-action-controls > button.ubx-primary,
  body.ubx-community-page .ubx-action-controls > a.ubx-primary{
    min-width:0 !important;
    white-space:nowrap !important;
  }
  body.ubx-community-page .ubx-hero.ubx-hero-clean{
    min-height:86px !important;
  }
}

/* === v73: fix low-contrast Community category chips only === */
body.ubx-community-page .ubx-start-pill,
body.ubx-community-page .ubx-start-pill:visited,
body.ubx-community-page .ubx-quick-tabs a,
body.ubx-community-page .ubx-quick-tabs a:visited{
  color:#243044 !important;
  text-shadow:none !important;
}
body.ubx-community-page .ubx-start-pill span,
body.ubx-community-page .ubx-quick-tabs a span{
  color:inherit !important;
  opacity:1 !important;
}
body.ubx-community-page .ubx-quick-tabs a[href*="Buy"],
body.ubx-community-page .ubx-quick-tabs a[href*="sell"],
body.ubx-community-page .ubx-start-pill[href*="Buy"],
body.ubx-community-page .ubx-start-pill[data-preset-category="Buy / sell"]{
  background:linear-gradient(180deg,#fff7d6,#fffaf0) !important;
  border-color:rgba(217,119,6,.38) !important;
  color:#3b2a10 !important;
}
body.ubx-community-page .ubx-quick-tabs a.is-active[href*="Buy"],
body.ubx-community-page .ubx-quick-tabs a.is-active[href*="sell"]{
  background:linear-gradient(135deg,#f59e0b,#facc15) !important;
  border-color:rgba(180,83,9,.45) !important;
  color:#1f2937 !important;
  box-shadow:0 10px 22px rgba(245,158,11,.22) !important;
}
body.ubx-community-page .ubx-quick-tabs a:not(.is-active){
  color:#344052 !important;
}
body.ubx-community-page .ubx-quick-tabs a.is-active:not([href*="Buy"]):not([href*="sell"]){
  color:#fff !important;
}
body.ubx-community-page .ubx-quick-tabs a .ubx-count-badge,
body.ubx-community-page .ubx-start-pill .ubx-start-count{
  color:#111827 !important;
  background:#fff !important;
  border:1px solid rgba(15,23,42,.10) !important;
}

/* === v74: force readable black text on all Community category chips/tiles === */
body.ubx-community-page .ubx-start-pill,
body.ubx-community-page .ubx-start-pill:visited,
body.ubx-community-page .ubx-start-pill *,
body.ubx-community-page .ubx-quick-tabs a,
body.ubx-community-page .ubx-quick-tabs a:visited,
body.ubx-community-page .ubx-quick-tabs a *,
body.ubx-community-page .ubx-quick-tabs a.is-active,
body.ubx-community-page .ubx-quick-tabs a.is-active *,
body.ubx-community-page .ubx-sheet-chips a,
body.ubx-community-page .ubx-sheet-chips a:visited,
body.ubx-community-page .ubx-sheet-chips a *,
body.ubx-community-page .ubx-sheet-chips a.is-active,
body.ubx-community-page .ubx-sheet-chips a.is-active *{
  color:#111827 !important;
  text-shadow:none !important;
  opacity:1 !important;
}
body.ubx-community-page .ubx-start-pill,
body.ubx-community-page .ubx-quick-tabs a,
body.ubx-community-page .ubx-sheet-chips a{
  background:#ffffff !important;
  border:1px solid rgba(15,23,42,.14) !important;
  box-shadow:0 8px 18px rgba(15,23,42,.07) !important;
}
body.ubx-community-page .ubx-start-pill.is-active,
body.ubx-community-page .ubx-quick-tabs a.is-active,
body.ubx-community-page .ubx-sheet-chips a.is-active{
  background:linear-gradient(180deg,#fff7d6,#fffaf0) !important;
  border-color:rgba(217,119,6,.38) !important;
}
body.ubx-community-page .ubx-start-pill .ubx-start-count,
body.ubx-community-page .ubx-quick-tabs a .ubx-count-badge,
body.ubx-community-page .ubx-sheet-chips a .ubx-count-badge{
  color:#111827 !important;
  background:#ffffff !important;
  border:1px solid rgba(15,23,42,.12) !important;
  text-shadow:none !important;
}
