/* =========================================================
   Vendor storefront
   ========================================================= */
.vn-hero{position:relative;overflow:hidden;background:#0B1F1A;color:#F3F1E4;padding:6px 0 0}
.vn-contours{position:absolute;inset:0;pointer-events:none;opacity:.9;
    background-image:
        repeating-radial-gradient(circle at 82% -8%, rgba(214,239,110,.10) 0 1px, transparent 1px 38px),
        repeating-radial-gradient(circle at 8% 120%, rgba(255,255,255,.05) 0 1px, transparent 1px 46px);
    mask-image:linear-gradient(180deg,rgba(0,0,0,.9),rgba(0,0,0,.25))}
.vn-hero-in{position:relative;z-index:1}
.vn-crumbs{display:flex;align-items:center;gap:8px;padding:10px 0 26px;font-size:10px;color:#8FA394}
.vn-crumbs a{color:#B9C7B4;text-decoration:none}
.vn-crumbs a:hover{color:#D6EF6E}

.vn-head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;flex-wrap:wrap;padding-bottom:26px}
.vn-ident{display:flex;align-items:center;gap:18px;min-width:0}
.vn-mark{width:74px;height:74px;border-radius:22px;flex:none;display:grid;place-items:center;
    background:#D6EF6E;color:#0B1F1A;font-family:var(--display,'Bricolage Grotesque'),sans-serif;
    font-size:26px;font-weight:700;letter-spacing:-.03em;box-shadow:0 20px 44px -26px rgba(214,239,110,.85)}
.vn-ident-copy{min-width:0}
.vn-kicker{display:inline-flex;align-items:center;gap:7px;font-size:9px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:#A9BCA0}
.vn-dot{width:6px;height:6px;border-radius:50%;background:#D6EF6E;box-shadow:0 0 0 4px rgba(214,239,110,.16)}
.vn-ident h1{margin:8px 0 6px;font-family:var(--display,'Bricolage Grotesque'),sans-serif;font-weight:600;
    font-size:clamp(34px,5vw,58px);line-height:.98;letter-spacing:-.045em;color:#F7F4E6}
.vn-tag{margin:0;max-width:46ch;font-size:13px;line-height:1.55;color:#B7C4AF}

.vn-head-side{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.vn-rating{border-left:1px solid rgba(255,255,255,.14);padding-left:18px}
.vn-rating-label{display:block;font-size:8px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:#8FA394}
.vn-rating-row{display:flex;align-items:baseline;gap:5px;margin-top:2px;font-family:var(--display,'Bricolage Grotesque'),sans-serif;
    font-size:22px;letter-spacing:-.02em;color:#F7F4E6}
.vn-rating-row .ico{color:#D6EF6E;align-self:center}
.vn-rating-row em{font-style:normal;font-size:11px;color:#8FA394;font-family:var(--body,'Manrope'),sans-serif}
.vn-rating-note{display:block;margin-top:1px;font-size:10px;color:#8FA394}

.vn-cta{display:inline-flex;align-items:center;gap:9px;padding:13px 18px;border-radius:999px;background:#F7F4E6;color:#0B1F1A;
    font-size:12px;font-weight:800;text-decoration:none;transition:transform .18s,background .18s}
.vn-cta:hover{background:#D6EF6E;transform:translateY(-1px)}
.vn-cta .ico{transition:transform .18s}
.vn-cta:hover .ico{transform:translateX(2px)}

.vn-stats{display:grid;grid-template-columns:repeat(4,1fr);margin:0;border-top:1px solid rgba(255,255,255,.12)}
.vn-stats>div{padding:18px 0 20px;border-right:1px solid rgba(255,255,255,.09)}
.vn-stats>div:last-child{border-right:0}
.vn-stats dt{margin:0;font-family:var(--display,'Bricolage Grotesque'),sans-serif;font-size:26px;line-height:1;letter-spacing:-.03em;color:#F7F4E6}
.vn-stats dt span{margin-left:2px;font-size:14px;color:#A9BCA0}
.vn-stats dd{margin:6px 0 0;font-size:9px;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:#8FA394}

/* catalogue */
.vn-catalogue{padding-top:0}
.vn-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;
    padding:18px 0;border-bottom:1px solid #E7E1D0;background:rgba(251,249,242,.94);backdrop-filter:blur(10px)}
.vn-tabs{display:flex;gap:3px;padding:3px;border-radius:999px;background:#F2EEE1}
.vn-tabs a{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;font-size:11px;font-weight:800;
    color:#6F6A5C;text-decoration:none;transition:.16s}
.vn-tabs a span{padding:1px 5px;border-radius:999px;background:#fff;font-size:9px;font-weight:800;color:#9A9484}
.vn-tabs a:hover{color:#0B1F1A}
.vn-tabs a.is-on{background:#0B1F1A;color:#F7F4E6}
.vn-tabs a.is-on span{background:#D6EF6E;color:#0B1F1A}
.vn-bar-note{margin:0;font-size:10.5px;letter-spacing:.02em;color:#8A8577}

.vn-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px 18px;padding:24px 0 8px}

/* about */
.vn-about{margin-top:52px;padding:56px 0;background:#F2EEE1}
.vn-about-in{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:start}
.vn-label{font-size:9px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:#8A8577}
.vn-story h2{margin:12px 0 16px;font-family:var(--display,'Bricolage Grotesque'),sans-serif;font-weight:600;
    font-size:clamp(28px,3.6vw,44px);line-height:1.02;letter-spacing:-.04em;color:#0B1F1A}
.vn-story h2 em{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400;color:#14664B}
.vn-story p{margin:0 0 12px;max-width:52ch;font-size:13px;line-height:1.7;color:#5E594C}
.vn-facts{list-style:none;margin:0;padding:0;border-top:1px solid #DED7C4}
.vn-facts li{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;border-bottom:1px solid #DED7C4}
.vn-facts span{display:inline-flex;align-items:center;gap:8px;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;font-weight:800;color:#8A8577}
.vn-facts .ico{color:#14664B}
.vn-facts strong{font-size:12.5px;font-weight:700;color:#0B1F1A;text-align:right}

/* policies */
.vn-policies{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding-top:44px}
.vn-policies article{padding:20px;border:1px solid #E7E1D0;border-radius:18px;background:#fff}
.vn-p-ic{display:grid;place-items:center;width:38px;height:38px;margin-bottom:14px;border-radius:12px;background:#EDF6E4;color:#14664B}
.vn-policies h3{margin:0 0 6px;font-family:var(--display,'Bricolage Grotesque'),sans-serif;font-size:15px;letter-spacing:-.015em;color:#0B1F1A}
.vn-policies p{margin:0;font-size:12px;line-height:1.65;color:#6F6A5C}

/* closing */
.vn-close{padding-top:44px;padding-bottom:64px}
.vn-close-in{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;
    padding:28px 30px;border-radius:22px;background:#0B1F1A}
.vn-close-in:after{content:"";position:absolute;right:-40px;bottom:-90px;width:260px;height:260px;border-radius:50%;
    background:radial-gradient(circle,rgba(214,239,110,.22),transparent 70%)}
.vn-close .vn-label{position:relative;z-index:1;color:#A9BCA0}
.vn-close h2{position:relative;z-index:1;margin:8px 0 0;font-family:var(--display,'Bricolage Grotesque'),sans-serif;
    font-size:26px;font-weight:600;letter-spacing:-.03em;color:#F7F4E6}
.vn-close h2 em{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400;color:#D6EF6E}
.vn-close-acts{position:relative;z-index:1;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.vn-cta-lime{background:#D6EF6E}
.vn-ghost{font-size:11.5px;font-weight:700;color:#C3D0BB;text-decoration:none;border-bottom:1px solid rgba(195,208,187,.35);padding-bottom:2px}
.vn-ghost:hover{color:#D6EF6E;border-color:#D6EF6E}

/* empty + pager */
.vn-empty{margin:24px 0;padding:70px 20px;text-align:center;border:1px dashed #DED7C4;border-radius:18px;background:#F7F4EA;color:#6F6A5C}
.vn-empty .ico{margin-bottom:10px;color:#14664B}
.vn-empty h3{margin:0 0 6px;font-size:20px;color:#0B1F1A}
.vn-empty p{margin:0 0 16px;font-size:12.5px}
.vn-pager{padding:26px 0 8px}

@media (max-width:1024px){
    .vn-grid{grid-template-columns:repeat(3,1fr)}
    .vn-about-in{gap:34px}
}
@media (max-width:760px){
    .vn-hero{padding-top:0}
    .vn-crumbs{padding-bottom:18px}
    .vn-head{gap:18px;padding-bottom:20px;align-items:flex-start}
    .vn-mark{width:56px;height:56px;border-radius:17px;font-size:20px}
    .vn-ident{gap:13px;align-items:flex-start}
    .vn-ident h1{margin-top:6px;font-size:32px}
    .vn-tag{font-size:12px}
    .vn-head-side{width:100%;justify-content:space-between;gap:12px}
    .vn-rating{border-left:0;padding-left:0}
    .vn-cta{padding:11px 15px;font-size:11.5px}
    .vn-stats{grid-template-columns:repeat(2,1fr)}
    .vn-stats>div{padding:13px 0 15px}
    .vn-stats>div:nth-child(2){border-right:0}
    .vn-stats>div:nth-child(1),.vn-stats>div:nth-child(2){border-bottom:1px solid rgba(255,255,255,.09)}
    .vn-stats dt{font-size:21px}
    .vn-stats dd{font-size:8px}
    .vn-bar{flex-direction:column;align-items:flex-start;gap:10px;margin:0 -16px;padding:14px 16px 12px}
    .vn-tabs{width:100%}
    .vn-tabs a{flex:1;justify-content:center;padding:7px 8px;font-size:10.5px}
    .vn-bar-note{display:none}
    .vn-grid{grid-template-columns:repeat(2,1fr);gap:16px 11px;padding-top:16px}
    .vn-about{margin-top:34px;padding:38px 0}
    .vn-about-in{grid-template-columns:1fr;gap:26px}
    .vn-story h2{font-size:28px}
    .vn-facts li{padding:11px 0}
    .vn-policies{grid-template-columns:1fr;gap:10px;padding-top:30px}
    .vn-policies article{padding:16px}
    .vn-close{padding:26px 0 40px}
    .vn-close-in{padding:22px;border-radius:18px}
    .vn-close h2{font-size:22px}
}

/* social / follow */
.vn-social{display:flex;align-items:center;gap:14px}
.vn-social>div{display:flex;flex-direction:column;gap:1px}
.vn-social strong{font-family:var(--display,'Bricolage Grotesque'),sans-serif;font-size:19px;line-height:1.1;letter-spacing:-.02em;color:#F7F4E6;font-variant-numeric:tabular-nums}
.vn-social span{font-size:8px;letter-spacing:.13em;text-transform:uppercase;font-weight:800;color:#8FA394}
.vn-social i{width:1px;height:26px;background:rgba(255,255,255,.14)}
.vn-acts{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.vn-follow{display:inline-flex;align-items:center;gap:7px;padding:12px 16px;border-radius:999px;cursor:pointer;
    border:1px solid rgba(247,244,230,.34);background:transparent;color:#F7F4E6;font-size:12px;font-weight:800;
    font-family:inherit;transition:background .18s,border-color .18s,color .18s,transform .18s}
.vn-follow:hover{border-color:#D6EF6E;color:#D6EF6E;transform:translateY(-1px)}
.vn-follow.is-on{background:#D6EF6E;border-color:#D6EF6E;color:#0B1F1A}
.vn-follow.is-busy{opacity:.65;pointer-events:none}
.vn-follow-ic{display:inline-flex;align-items:center}
.vn-follow .vn-i-check{display:none}
.vn-follow.is-on .vn-i-plus{display:none}
.vn-follow.is-on .vn-i-check{display:inline-flex}
@media (max-width:760px){
    .vn-social{gap:12px}
    .vn-social strong{font-size:17px}
    .vn-acts{width:100%}
    .vn-follow{flex:0 0 auto}
    .vn-acts .vn-cta{flex:1;justify-content:center}
}

/* logo + banner */
.vn-hero.has-banner{background-image:linear-gradient(100deg,rgba(9,26,21,.97) 0%,rgba(9,26,21,.86) 42%,rgba(9,26,21,.34) 100%);background-size:cover;background-position:center}
.vn-hero.has-banner .vn-contours{opacity:.45}
.vn-mark.has-img{background:#fff;padding:0;overflow:hidden}
.vn-mark.has-img img{width:100%;height:100%;object-fit:cover;display:block}
.vd-logo.has-img{background:#fff;padding:0;overflow:hidden}
.vd-logo.has-img img{width:100%;height:100%;object-fit:cover;display:block}

/* Catalogue — all pieces, no pagination */
#vn-catalogue{scroll-margin-top:112px}
.vn-catalogue{padding-top:0}
.vn-bar-note{display:flex;align-items:center;gap:10px;flex-wrap:wrap;line-height:1.4}
.vn-showing{display:inline-flex;align-items:center;gap:6px;color:#3F5A4C;font-weight:700}
.vn-showing b{color:#0B1F1A;font-weight:800}
.vn-showing-dot{width:5px;height:5px;border-radius:50%;background:#14664B;box-shadow:0 0 0 3px #E8F8EE;flex:none}
.vn-bar-cats{color:#9A9483;font-size:9.5px;letter-spacing:.02em}
.vn-bar-cats::before{content:"·";margin-right:8px;color:#C9C3B3}
@media(max-width:760px){
  #vn-catalogue{scroll-margin-top:82px}
  .vn-bar-note{display:flex!important;width:100%;justify-content:space-between;font-size:9px}
  .vn-bar-cats{display:none}
  .vn-showing{font-size:9.5px}
}

/* Professional hero refinement */
.vn-hero:before{
  content:"";position:absolute;inset:0 0 auto;height:1px;z-index:2;
  background:linear-gradient(90deg,transparent 8%,rgba(214,239,110,.48) 50%,transparent 92%);
}
.vn-mark-wrap{position:relative;flex:none;display:inline-flex}
.vn-mark{
  width:78px;height:78px;border-radius:24px;border:1px solid rgba(247,244,230,.16);
  font-size:32px;font-weight:700;letter-spacing:-.04em;
  box-shadow:0 24px 48px -28px rgba(0,0,0,.82),inset 0 1px 0 rgba(255,255,255,.55);
}
.vn-mark-check{
  position:absolute;right:-4px;bottom:-4px;z-index:2;display:grid;place-items:center;
  width:20px;height:20px;border-radius:50%;background:#0B1F1A;color:#F7F4E6;
  border:2px solid #D6EF6E;box-shadow:0 4px 12px rgba(0,0,0,.35);
}
.vn-mark.has-img{background:#F7F4E6;padding:7px;border-color:rgba(247,244,230,.3)}
.vn-mark.has-img img{width:100%;height:100%;object-fit:contain;object-position:center;border-radius:17px}
.vn-kicker{
  padding:4px 9px 4px 7px;border:1px solid rgba(214,239,110,.2);border-radius:999px;
  background:rgba(214,239,110,.055);font-size:9.5px;letter-spacing:.105em;
}
.vn-kicker .vn-dot{width:5px;height:5px;box-shadow:0 0 0 3px rgba(214,239,110,.13)}
.vn-ident h1{margin-top:9px}
.vn-tag{color:#AEBDA7}
.vn-follow,.vn-cta{min-height:44px}
.vn-cta-lime{box-shadow:0 14px 30px -20px rgba(214,239,110,.9)}
.vn-follow.is-on{
  background:rgba(214,239,110,.10);border-color:rgba(214,239,110,.58);color:#D6EF6E;
  box-shadow:inset 0 0 0 1px rgba(214,239,110,.06);
}
.vn-follow.is-on:hover{background:rgba(214,239,110,.17);border-color:#D6EF6E;color:#E4F88F}
.vn-follow.is-on .vn-i-check{color:#D6EF6E}
@media(max-width:760px){
  .vn-mark{width:62px;height:62px;border-radius:19px;font-size:25px}
  .vn-mark-check{width:18px;height:18px;right:-3px;bottom:-3px;border-width:1.5px}
  .vn-mark.has-img{padding:6px}
  .vn-ident h1{font-size:30px;margin-top:8px}
  .vn-kicker{font-size:9px;letter-spacing:.075em;padding:4px 8px 4px 6px;max-width:calc(100vw - 100px)}
}

/* Natural white hero */
.vn-hero{
  background:
    radial-gradient(120% 140% at 92% -18%, rgba(214,239,110,.30), transparent 56%),
    #FDFCF8;
  color:#0B1F1A;border-bottom:1px solid #ECE7D8;
}
.vn-hero:before{background:linear-gradient(90deg,transparent 8%,rgba(20,102,75,.30) 50%,transparent 92%)}
.vn-contours{
  background-image:
    repeating-radial-gradient(circle at 84% -8%, rgba(20,102,75,.075) 0 1px, transparent 1px 38px),
    repeating-radial-gradient(circle at 6% 120%, rgba(20,102,75,.055) 0 1px, transparent 1px 46px);
  mask-image:linear-gradient(180deg,rgba(0,0,0,.75),rgba(0,0,0,.12));
}
.vn-crumbs{color:#82907F}
.vn-crumbs a{color:#526A58}
.vn-crumbs a:hover{color:#14664B}
.vn-kicker{background:#F2F7E6;border-color:#DCE8C8;color:#476253}
.vn-kicker .vn-dot{background:#14664B;box-shadow:0 0 0 3px rgba(20,102,75,.10)}
.vn-ident h1{color:#0B1F1A}
.vn-tag{color:#5D6B5D}
.vn-social strong{color:#0B1F1A}
.vn-social span{color:#849080}
.vn-social i{background:#DDE3D5}
.vn-mark{
  border-color:rgba(11,31,26,.08);
  box-shadow:0 18px 34px -22px rgba(20,80,55,.35),inset 0 1px 0 rgba(255,255,255,.7);
}
.vn-mark-check{background:#0B1F1A;color:#D6EF6E;border-color:#FDFCF8;box-shadow:0 4px 10px rgba(11,31,26,.22)}
.vn-follow{border-color:#C9D6CA;background:#fff;color:#0B1F1A;box-shadow:0 2px 6px rgba(11,31,26,.03)}
.vn-follow:hover{border-color:#14664B;color:#14664B;background:#F6F9F0}
.vn-follow.is-on{background:#EDF6E2;border-color:#C2D8B2;color:#14664B}
.vn-follow.is-on:hover{background:#E4F1D4;border-color:#A9C997;color:#0F513B}
.vn-follow.is-on .vn-i-check{color:#14664B}
.vn-hero .vn-cta-lime{background:#0B1F1A;color:#F7F4E6;box-shadow:0 14px 30px -20px rgba(11,31,26,.7)}
.vn-hero .vn-cta-lime:hover{background:#14664B;color:#F7F4E6}
.vn-stats{border-top-color:#E3E8DB}
.vn-stats>div{border-right-color:#E8ECE2}
.vn-stats dt{color:#0B1F1A}
.vn-stats dt span{color:#6A7A6A}
.vn-stats dd{color:#849080}
@media(max-width:760px){
  .vn-hero{background:radial-gradient(120% 100% at 100% -12%, rgba(214,239,110,.26), transparent 58%),#FDFCF8}
  .vn-stats>div:nth-child(1),.vn-stats>div:nth-child(2){border-bottom-color:#E8ECE2}
}

/* 1:1 vendor messaging */
.vn-msg{
  display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:0 15px;
  border-radius:999px;border:1px solid #C9D6CA;background:#fff;color:#0B1F1A;font:inherit;
  font-size:12px;font-weight:800;cursor:pointer;text-decoration:none;white-space:nowrap;
  box-shadow:0 2px 6px rgba(11,31,26,.03);transition:background .18s,border-color .18s,color .18s,transform .18s;
}
.vn-msg .ico{color:#14664B}
.vn-msg:hover{border-color:#14664B;color:#14664B;background:#F6F9F0;transform:translateY(-1px)}
.vn-msg:focus-visible,.vn-follow:focus-visible,.vn-cta:focus-visible,.vn-chat-close:focus-visible,.vn-chat-form button:focus-visible{
  outline:2px solid #14664B;outline-offset:3px;
}
@media(max-width:760px){
  .vn-acts{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}
  .vn-follow,.vn-msg{width:100%}
  .vn-acts .vn-cta{grid-column:1/-1;width:100%;justify-content:center}
}
.vn-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.vn-chat-layer{position:fixed;inset:0;z-index:1200}
.vn-chat-layer[hidden]{display:none!important}
.vn-chat-backdrop{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(11,31,26,.34);backdrop-filter:blur(3px);cursor:pointer}
.vn-chat-drawer{
  position:absolute;top:0;right:0;bottom:0;display:flex;flex-direction:column;
  width:min(410px,100%);background:#FDFCF8;border-left:1px solid #E7E2D4;
  box-shadow:-28px 0 80px -38px rgba(11,31,26,.5);
  transform:translateX(102%);transition:transform .32s cubic-bezier(.22,1,.36,1);
}
.vn-chat-layer.is-open .vn-chat-drawer{transform:none}
.vn-chat-head{display:flex;align-items:center;gap:10px;padding:16px 14px;border-bottom:1px solid #EAE6D9;background:#FDFCF8}
.vn-chat-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;flex:none;background:#D6EF6E;color:#0B1F1A;font-family:var(--display,'Bricolage Grotesque'),sans-serif;font-size:17px;font-weight:800}
.vn-chat-who{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.vn-chat-who strong{font-family:var(--display,'Bricolage Grotesque'),sans-serif;font-size:14px;font-weight:700;letter-spacing:-.02em;color:#0B1F1A;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vn-chat-who span{display:inline-flex;align-items:center;gap:5px;font-size:8.5px;font-weight:700;color:#778576;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vn-chat-who i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#14664B;box-shadow:0 0 0 3px rgba(20,102,75,.10);flex:none}
.vn-chat-close{display:grid;place-items:center;width:32px;height:32px;flex:none;border:1px solid #E4E0D2;border-radius:50%;background:#fff;color:#3F5248;cursor:pointer;transition:.15s}
.vn-chat-close:hover{background:#F2F5EA;border-color:#C9D6CA;color:#0B1F1A}
.vn-chat-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 28px;text-align:center;background:#F7F6EF}
.vn-chat-empty-icon{display:grid;place-items:center;width:48px;height:48px;margin-bottom:13px;border-radius:15px;background:#EAF4DD;color:#14664B}
.vn-chat-empty h3{margin:0 0 5px;font-family:var(--display,'Bricolage Grotesque'),sans-serif;font-size:19px;font-weight:650;letter-spacing:-.025em;color:#0B1F1A}
.vn-chat-empty p{margin:0;max-width:27ch;font-size:11.5px;line-height:1.6;color:#6B786B}
.vn-chat-log{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:9px;padding:18px 14px;background:#F7F6EF;overscroll-behavior:contain}
.vn-chat-log[hidden]{display:none!important}
.vn-chat-row{display:flex;flex-direction:column;align-items:flex-start;gap:3px;max-width:100%}
.vn-chat-row.is-mine{align-items:flex-end}
.vn-chat-bubble{max-width:82%;padding:9px 12px;border-radius:14px 14px 14px 4px;background:#fff;border:1px solid #E7E2D4;color:#25382E;font-size:12px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}
.vn-chat-row.is-mine .vn-chat-bubble{background:#0B1F1A;border-color:#0B1F1A;color:#F7F4E6;border-radius:14px 14px 4px 14px}
.vn-chat-time{font-size:8px;color:#8D998C;letter-spacing:.02em}
.vn-chat-form{display:flex;align-items:flex-end;gap:7px;padding:10px 12px 8px;border-top:1px solid #EAE6D9;background:#FDFCF8}
.vn-chat-form textarea{flex:1;min-height:40px;max-height:104px;resize:none;padding:10px 12px;border:1px solid #DCE2D6;border-radius:11px;background:#fff;color:#0B1F1A;font:inherit;font-size:11.5px;line-height:1.45}
.vn-chat-form textarea:focus{outline:none;border-color:#14664B;box-shadow:0 0 0 3px rgba(20,102,75,.09)}
.vn-chat-form button{display:grid;place-items:center;width:40px;height:40px;flex:none;border-radius:11px;background:#0B1F1A;color:#F7F4E6;cursor:pointer;transition:.15s}
.vn-chat-form button:hover{background:#14664B}
.vn-chat-form button:disabled{opacity:.55;cursor:wait}
.vn-chat-error{margin:0;padding:0 14px 7px;background:#FDFCF8;color:#A9472F;font-size:9.5px;line-height:1.4}
.vn-chat-error[hidden]{display:none!important}
.vn-chat-foot{margin:0;padding:0 14px calc(10px + env(safe-area-inset-bottom));background:#FDFCF8;color:#8D998C;font-size:8px;letter-spacing:.02em}
body.vn-chat-open{overflow:hidden}
@media(max-width:760px){
  .vn-chat-drawer{width:100%;border-left:0;box-shadow:none}
  .vn-chat-head{padding-top:max(14px,env(safe-area-inset-top))}
  .vn-chat-empty{padding:26px 22px}
  .vn-chat-bubble{max-width:86%;font-size:11.5px}
}
@media(prefers-reduced-motion:reduce){
  .vn-chat-drawer,.vn-msg{transition:none}
}
.vn-msg{position:relative}
.vn-msg-badge{position:absolute;top:-5px;right:-4px;display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:#0B1F1A;color:#D6EF6E;border:2px solid #FDFCF8;font-size:8px;font-weight:800;line-height:1}
