/* BLINKBUN v3.0.4 — Typography & Density Polish
   Additive overrides only. Keeps existing visual identity and runtime logic intact. */
:root{
  --v304-body:15.5px;
  --v304-small:13px;
  --v304-radius-lg:24px;
  --v304-space-section:24px;
}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}

/* Korean/Japanese/Chinese headings should break by phrase, not inside words. */
:where(h1,h2,h3,h4,.v230-hero,.v250-hero,.v281-tg-copy,.v261-section-intro,.v261-quickstart){
  word-break:keep-all;
  overflow-wrap:normal;
}
:where(h1,h2,h3){text-wrap:balance}
:where(p,li,small){word-break:keep-all}

/* Overall content density: slightly calmer, less oversized, more room for data. */
.v230-shell{max-width:1200px}
.v282-main{gap:24px}
.v230-hero,.v250-hero,.i280-hero,.rv240-hero,.v285-hero{border-radius:26px!important}

/* ---------- Home hero ---------- */
.v261-hero-grid{
  grid-template-columns:minmax(0,1.58fr) minmax(300px,350px)!important;
  gap:28px!important;
  align-items:center!important;
}
.v230-hero{padding:38px 40px 34px!important}
.v230-hero h1{
  font-size:clamp(42px,4.35vw,62px)!important;
  line-height:1.045!important;
  letter-spacing:-.045em!important;
  max-width:680px!important;
  margin:12px 0 15px!important;
}
.v230-hero p{
  max-width:700px!important;
  font-size:16px!important;
  line-height:1.68!important;
}
.v230-scan{margin-top:24px!important;max-width:690px!important}
.v230-scan input,.v230-scan button{min-height:50px!important}
.v282-hero-strip{margin-top:18px!important;gap:10px!important}
.v282-hero-strip article{padding:13px 14px!important;min-height:84px;display:flex;flex-direction:column;justify-content:center}
.v282-hero-strip b{font-size:13px!important;line-height:1.48!important}

/* First-visit card: retain hierarchy without competing with the main hero. */
.v261-quickstart{padding:20px!important;border-radius:22px!important}
.v261-quickstart h2{
  font-size:clamp(26px,2.55vw,36px)!important;
  line-height:1.08!important;
  margin:8px 0 8px!important;
}
.v261-quickstart p{font-size:14px!important;line-height:1.6!important;margin:0}
.v261-quick-links{gap:8px!important;margin:15px 0!important}
.v261-quick-links a{padding:10px 12px!important;border-radius:16px!important}
.v261-quick-links a b{font-size:14px!important;line-height:1.25}
.v261-quick-links a small{font-size:12px!important;line-height:1.4!important}

/* ---------- Section headings ---------- */
.v261-section-intro{
  display:grid!important;
  grid-template-columns:minmax(0,1.42fr) minmax(300px,.78fr)!important;
  align-items:end!important;
  gap:28px!important;
}
.v261-section-intro h2,
.v230-section-head h2,
.v250-add h2,
.v250-watch-list h2,
.v250-alerts h2,
.v250-login h2{
  font-size:clamp(28px,2.75vw,39px)!important;
  line-height:1.12!important;
  letter-spacing:-.028em!important;
}
.v261-section-intro p{font-size:14.5px!important;line-height:1.68!important;margin:0}

/* Home action cards: remove the oversized dashboard feel. */
.v230-three.v261-actions,.v230-why .v230-three{gap:14px!important}
.v230-three.v261-actions a,.v230-why article{
  padding:18px 18px 17px!important;
  min-height:166px!important;
  border-radius:21px!important;
}
.v261-card-top{margin-bottom:14px!important}
.v230-three.v261-actions b,.v230-why article b{
  font-size:22px!important;
  line-height:1.2!important;
}
.v230-three.v261-actions p,.v230-why article p{
  font-size:14px!important;
  line-height:1.62!important;
  margin-bottom:18px!important;
}
.v261-card-cta{font-size:14px!important}

/* ---------- Watch hero ---------- */
.v250-hero{padding:31px 34px 29px!important}
.v250-hero h1{
  font-size:clamp(38px,4.0vw,56px)!important;
  line-height:1.07!important;
  letter-spacing:-.043em!important;
  max-width:940px!important;
  margin:12px 0 14px!important;
}
.v250-hero p{font-size:15.5px!important;line-height:1.68!important;max-width:790px!important}
.v282-watch-chiprow{margin-top:16px!important;gap:8px!important}
.v282-watch-chiprow span{padding:8px 11px!important;font-size:11px!important;letter-spacing:.04em}

/* ---------- Telegram Watch block ---------- */
.v283-telegram{padding:27px 28px 25px!important}
.v283-telegram .v281-tg-main{
  grid-template-columns:minmax(0,1.5fr) minmax(280px,330px)!important;
  gap:28px!important;
}
.v283-telegram .v281-tg-copy{padding-right:2px!important}
.v283-telegram .v281-tg-copy h2,
.v281-tg-copy h2{
  max-width:100%!important;
  font-size:clamp(32px,3.35vw,45px)!important;
  line-height:1.09!important;
  letter-spacing:-.035em!important;
  margin:8px 0 11px!important;
}
.v283-telegram .v281-tg-copy>p{font-size:14.5px!important;line-height:1.68!important;max-width:690px!important}
.v283-telegram .v281-benefits{margin:15px 0!important;gap:9px!important;max-width:700px!important}
.v283-telegram .v281-benefits li{font-size:14px!important;line-height:1.58!important}
.v283-telegram .v281-status-card{
  max-width:330px!important;
  padding:20px!important;
  border-radius:21px!important;
}
.v283-telegram .v281-status-card p{font-size:13.5px!important;line-height:1.62!important}
.v283-telegram .v283-step-band{margin-top:22px!important;padding-top:19px!important}
.v283-telegram .v283-step-head{margin-bottom:13px!important}
.v283-telegram .v283-step-head h3{font-size:23px!important;line-height:1.15!important;margin:7px 0!important}
.v283-telegram .v283-step-head p{font-size:13.5px!important;line-height:1.6!important}
.v283-telegram .v281-steps{gap:12px!important}
.v283-telegram .v281-step{min-height:132px!important;padding:16px 16px 14px!important;border-radius:18px!important}
.v283-telegram .v281-step b{font-size:17px!important;line-height:1.22!important;margin-bottom:8px!important}
.v283-telegram .v281-step p{font-size:12.5px!important;line-height:1.58!important}

/* ---------- Radar / Intelligence / Research / Report ---------- */
.i280-hero h1,.rv240-hero h1,.v285-hero h1{
  font-size:clamp(38px,4vw,56px)!important;
  line-height:1.07!important;
  letter-spacing:-.04em!important;
  text-wrap:balance;
  word-break:keep-all;
}
.i280-hero p,.rv240-hero p,.v285-hero p{font-size:15.5px!important;line-height:1.68!important}
.i280-card h2,.i280-panel h2,.rv240-card h2,.v285-data-shell h2{
  font-size:clamp(24px,2.4vw,34px)!important;
  line-height:1.15!important;
  word-break:keep-all;
}
.v230-radar-grid a b{font-size:23px!important;line-height:1.14!important}
.v230-radar-grid a small{font-size:13px!important;line-height:1.5!important}

/* ---------- Holder / Token Memory / official identity ---------- */
.v290-holder h2,.v300-memory h2,.v302-report-guard h2{
  font-size:clamp(28px,2.9vw,41px)!important;
  line-height:1.11!important;
  word-break:keep-all;
}
.v290-holder p,.v300-memory p,.v302-report-guard p{line-height:1.65!important}

/* Uniform cards and controls: slightly tighter without looking cramped. */
.v230-live,.v230-why,.v230-research-cta,.v230-bbun,.v230-faq,
.v250-plan,.v281-telegram,.v250-add,.v250-watch-list,.v250-alerts,.v250-login{
  padding:25px!important;
  border-radius:24px!important;
}
.v250-cards article,.v250-alert-list article,.v230-radar-grid a{border-radius:19px!important}
button,.v250-primary,.v250-secondary,.v250-link,.v291-auth-login,.v291-auth-join{font-size:13px}

/* Navigation stays compact even after localization. */
.v260-nav a{font-size:13px!important;white-space:nowrap}
.v230-header,.v260-header{min-height:74px}

/* ---------- Medium desktop / tablet ---------- */
@media (max-width:1140px){
  .v261-hero-grid{grid-template-columns:minmax(0,1.4fr) minmax(285px,325px)!important}
  .v230-hero h1{font-size:clamp(40px,4.8vw,56px)!important}
  .v283-telegram .v281-tg-main{grid-template-columns:minmax(0,1.35fr) minmax(270px,315px)!important}
  .v283-telegram .v281-status-card{max-width:315px!important}
}
@media (max-width:1060px){
  .v261-hero-grid,.v283-telegram .v281-tg-main{grid-template-columns:1fr!important}
  .v261-quickstart,.v283-telegram .v281-status-card{max-width:none!important}
  .v261-section-intro{grid-template-columns:1fr!important;gap:10px!important}
  .v261-section-intro p{max-width:760px!important}
  .v283-telegram .v281-steps{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

/* ---------- Mobile ---------- */
@media (max-width:760px){
  .v282-main{gap:18px!important}
  .v230-hero,.v250-hero{padding:24px 20px!important;border-radius:22px!important}
  .v230-hero h1{
    font-size:clamp(34px,10.2vw,43px)!important;
    line-height:1.08!important;
    max-width:none!important;
  }
  .v250-hero h1{
    font-size:clamp(32px,9.5vw,40px)!important;
    line-height:1.09!important;
    max-width:none!important;
  }
  .v230-hero p,.v250-hero p{font-size:14.5px!important;line-height:1.62!important}
  .v230-scan{grid-template-columns:1fr!important;gap:9px!important;margin-top:20px!important}
  .v282-hero-strip{grid-template-columns:1fr!important}
  .v261-quickstart{padding:18px!important}
  .v261-quickstart h2{font-size:29px!important}
  .v261-section-intro h2,.v230-section-head h2,.v250-add h2,.v250-watch-list h2,.v250-alerts h2,.v250-login h2{
    font-size:30px!important;line-height:1.14!important
  }
  .v230-three.v261-actions b,.v230-why article b{font-size:20px!important}
  .v230-live,.v230-why,.v230-research-cta,.v230-bbun,.v230-faq,.v250-plan,.v281-telegram,.v250-add,.v250-watch-list,.v250-alerts,.v250-login{
    padding:19px!important;border-radius:21px!important
  }
  .v283-telegram{padding:21px 19px!important}
  .v283-telegram .v281-tg-copy h2,.v281-tg-copy h2{
    font-size:clamp(30px,9vw,38px)!important;
    line-height:1.12!important;
  }
  .v283-telegram .v281-steps{grid-template-columns:1fr!important}
  .v283-telegram .v281-step{min-height:auto!important}
  .v290-holder h2,.v300-memory h2,.v302-report-guard h2{font-size:30px!important}
  .i280-hero h1,.rv240-hero h1,.v285-hero h1{font-size:clamp(32px,9vw,40px)!important}
}

@media (max-width:430px){
  .v230-shell{padding-left:12px!important;padding-right:12px!important}
  .v230-hero h1{font-size:34px!important}
  .v250-hero h1{font-size:33px!important}
  .v283-telegram .v281-tg-copy h2{font-size:31px!important}
  .v261-quick-links a{grid-template-columns:34px minmax(0,1fr) auto!important}
}
