/*
Theme Name: Vistora Partners
Theme URI: https://partners.vistoraeg.com
Author: Vistora Development Team
Description: بوابة شركاء Vistora — منصة للبروكر الفريلانسر وشركات الوساطة العقارية: مخزون المطورين والوحدات، العمولات والإنسنتف، CRM متكامل بالنقل التلقائي وتكامل ميتا وتشخيص المبيعات، برنامج إحالة للفريلانسر، حسابات فريق بصلاحيات، سوق تعاون بين الشركاء، توثيق مستندات وحسابات بنكية، تفعيل بكود، وحاسبة العائد الاستثماري. كل نص ولون وشعار وقسم قابل للتعديل من ووردبريس. عربي (RTL) وإنجليزي.
Version: 1.5.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: vistora
Tags: rtl-language, arabic, real-estate, custom-colors, custom-logo, custom-menu, editor-style
*/

/* =========================================================
   TOKENS
   Taken from the Vistora Partners logo: the V runs from indigo #2E3192 to blue #004A8D, the word-mark is
   blue, and the small triangle (the dot of the "i") plus "Partners" are red #ED1C24. Blue carries the
   actions and the marks, a deep navy derived from it carries the dark surfaces, and red stays an accent.
   Every colour below can be changed from Appearance → Customize → Vistora Partners → Brand.
========================================================= */
:root{
  --vp-brand:#004A8D; --vp-brand-rgb:0,74,141; --vp-brand-2:#2E3192; --vp-brand-d:#003A70; --vp-brand-l:#9CC2F0; --vp-brand-xl:#DCE8F7;
  --vp-red-logo:#ED1C24; --vp-red:#C8161D;
  --vp-ink:#0C1B3A; --vp-ink-rgb:12,27,58; --vp-ink-2:#13264B; --vp-ink-3:#22385F;
  --vp-paper:#F5F7FB; --vp-surface:#FFFFFF; --vp-sunk:#EDF1F7;
  --vp-line:#E1E6EF; --vp-line-2:#CCD4E2;
  --vp-text:#16213A; --vp-mute:#5A6479;
  --vp-accent:var(--vp-brand); --vp-accent-2:var(--vp-brand-d); --vp-tint:#EAF1FA; --vp-tint-2:#D3E1F3;
  --vp-on-ink:#E9EEF8; --vp-on-ink-rgb:233,238,248; --vp-on-ink-2:#A9B5CB; --vp-on-ink-3:#7D8AA5;
  --vp-ok:#1E7A43; --vp-ok-t:#E5F2E9; --vp-ok-b:#BCDCC7;
  --vp-blue:#2456C9; --vp-amber:#B86200; --vp-violet:#6D3FD0; --vp-teal:#0E7C74;
  --vp-radius:10px; --vp-radius-s:8px; --vp-radius-b:6px;
  --vp-shadow:0 1px 2px rgba(var(--vp-ink-rgb),.05),0 14px 34px -22px rgba(var(--vp-ink-rgb),.45);
  --vp-shadow-s:0 1px 2px rgba(var(--vp-ink-rgb),.05),0 6px 18px -14px rgba(var(--vp-ink-rgb),.35);
  --vp-display:'El Messiri','IBM Plex Sans Arabic',system-ui,sans-serif; --vp-body:'IBM Plex Sans Arabic',system-ui,sans-serif;
  --vp-rule:linear-gradient(90deg,var(--vp-brand-2),var(--vp-brand));
  --vp-header-h:76px;
  /* what the shared modules (code entry, terms dialog, ROI calculator) read */
  --pcm-primary:var(--vp-brand); --pcm-primary-dark:var(--vp-brand-d); --pcm-primary-rgb:var(--vp-brand-rgb); --pcm-lp:var(--vp-tint);
  --pcm-surface:var(--vp-sunk); --pcm-line:var(--vp-line); --pcm-ink:var(--vp-text); --pcm-mute:var(--vp-mute); --pcm-font:var(--vp-body);
  --pcm-btn:var(--vp-brand); --pcm-btn-text:#fff;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--vp-header-h) + 12px)}
body{margin:0;font-family:var(--vp-body);font-size:16px;line-height:1.75;color:var(--vp-text);background:var(--vp-paper);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg,video{max-width:100%;height:auto}
a{color:var(--vp-accent);text-decoration:none}
a:hover{color:var(--vp-accent-2);text-decoration:underline;text-underline-offset:3px}
h1,h2,h3,h4{font-family:var(--vp-display);font-weight:700;line-height:1.3;margin:0 0 .5em;color:var(--vp-ink)}
p{margin:0 0 1em}
ul{margin:0;padding:0}
button{font-family:inherit}
[hidden]{display:none!important}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.skip-link:focus{position:fixed;top:8px;inset-inline-start:8px;z-index:100200;width:auto;height:auto;clip:auto;background:#fff;color:var(--vp-ink);padding:10px 16px;border-radius:6px;box-shadow:var(--vp-shadow)}
.vp-wrap{width:100%;max-width:1200px;margin-inline:auto;padding-inline:24px}
@media (max-width:600px){.vp-wrap{padding-inline:16px}}
.vp-ltr{direction:ltr}.vp-rtl{direction:rtl}
::selection{background:var(--vp-brand-xl);color:var(--vp-ink)}
:focus-visible{outline:2px solid var(--vp-brand);outline-offset:2px}

/* the red triangle of the logo, reused as a small marker */
.vp-tri{display:inline-block;width:11px;height:9px;background:var(--vp-red-logo);clip-path:polygon(0 0,100% 0,26% 100%);flex:none}
[dir=rtl] .vp-tri,.vp-rtl .vp-tri{clip-path:polygon(0 0,100% 0,74% 100%)}

/* =========================================================
   COMPONENTS
========================================================= */
.vp-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 22px;border-radius:var(--vp-radius-b);border:1px solid transparent;font:600 .95rem/1.2 var(--vp-body);cursor:pointer;transition:background .15s,border-color .15s,color .15s;text-decoration:none;white-space:nowrap}
.vp-btn:hover{text-decoration:none}
.vp-btn:disabled{opacity:.55;cursor:not-allowed}
.vp-btn-primary{background:var(--vp-ink);color:#fff}
.vp-btn-primary:hover{background:var(--vp-ink-3);color:#fff}
.vp-btn-brand,.vp-btn-brass{background:var(--vp-brand);color:#fff;border-color:var(--vp-brand)}
.vp-btn-brand:hover,.vp-btn-brass:hover{background:var(--vp-brand-d);border-color:var(--vp-brand-d);color:#fff}
.vp-btn-ghost{background:var(--vp-surface);border-color:var(--vp-line-2);color:var(--vp-text)}
.vp-btn-ghost:hover{border-color:var(--vp-ink);color:var(--vp-ink)}
.vp-btn-light{background:transparent;border-color:rgba(var(--vp-on-ink-rgb),.35);color:var(--vp-on-ink)}
.vp-btn-light:hover{border-color:var(--vp-on-ink);color:#fff}
.vp-btn-white{background:#fff;border-color:#fff;color:var(--vp-ink)}
.vp-btn-white:hover{background:var(--vp-brand-xl);border-color:var(--vp-brand-xl);color:var(--vp-ink)}
.vp-btn-sm{padding:8px 14px;font-size:.84rem}
.vp-btn-lg{padding:14px 28px;font-size:1rem}
.vp-btn-block{display:flex;width:100%}
.vp-btn-danger{background:var(--vp-surface);border-color:#EBC3C4;color:var(--vp-red)}.vp-btn-danger:hover{background:var(--vp-red);color:#fff;border-color:var(--vp-red)}
.vp-linkbtn{background:none;border:0;padding:4px;color:var(--vp-accent);font:600 .88rem var(--vp-body);cursor:pointer}
.vp-linkbtn:hover{text-decoration:underline;text-underline-offset:3px}
/* on dark surfaces the main action turns white */
.vp-hero .vp-btn-brand,.vp-close .vp-btn-brand,.vp-sec.dark .vp-btn-brand,.vp-type.company .vp-btn-brand,.vp-auth-side .vp-btn-brand{background:#fff;border-color:#fff;color:var(--vp-ink)}
.vp-hero .vp-btn-brand:hover,.vp-close .vp-btn-brand:hover,.vp-sec.dark .vp-btn-brand:hover,.vp-type.company .vp-btn-brand:hover{background:var(--vp-brand-xl);border-color:var(--vp-brand-xl);color:var(--vp-ink)}

.vp-card{background:var(--vp-surface);border:1px solid var(--vp-line);border-radius:var(--vp-radius);padding:22px}
.vp-card h3{font-size:1.05rem;margin-bottom:14px;display:flex;align-items:center;gap:10px}
.vp-card h3 i{color:var(--vp-accent)}
.vp-badge{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:4px;font:600 .74rem/1.6 var(--vp-body);background:var(--vp-sunk);color:#3F4A60;white-space:nowrap}
.vp-badge.ok{background:var(--vp-ok-t);color:#155C31}.vp-badge.warn{background:#FBEFD6;color:#7A4A00}.vp-badge.err{background:#FBE4E4;color:#9B1219}.vp-badge.info{background:#E4EBFA;color:#1D449E}.vp-badge.violet{background:#EEE7FB;color:#53289E}
.vp-badge.brand,.vp-badge.gold{background:var(--vp-tint);color:var(--vp-brand-d)}

/* section label: a short indigo rule, as in the logo's "— Partners —" */
.vp-tag{display:inline-flex;gap:10px;align-items:center;font:600 .8rem/1.4 var(--vp-body);color:var(--vp-accent);letter-spacing:.02em;margin-bottom:14px}
.vp-tag::before{content:"";width:28px;height:2px;background:var(--vp-rule);flex:none}
.vp-on-dark .vp-tag,.vp-tag.on-dark,.vp-hero .vp-tag,.vp-sec.dark .vp-tag,.vp-close .vp-tag{color:var(--vp-brand-l)}
.vp-on-dark .vp-tag::before,.vp-tag.on-dark::before,.vp-hero .vp-tag::before,.vp-sec.dark .vp-tag::before,.vp-close .vp-tag::before{background:var(--vp-red-logo)}

/* forms */
.vp-f{display:flex;flex-direction:column;gap:6px;min-width:0;margin-bottom:14px}
.vp-f>span,.vp-f>label{font:600 .84rem var(--vp-body);color:var(--vp-text)}
.vp-f input,.vp-f select,.vp-f textarea,.vp-input{width:100%;border:1px solid var(--vp-line-2);border-radius:var(--vp-radius-s);padding:11px 14px;font:500 .95rem var(--vp-body);color:var(--vp-text);background:var(--vp-surface);transition:border-color .15s,box-shadow .15s}
.vp-f input:focus,.vp-f select:focus,.vp-f textarea:focus,.vp-input:focus{outline:none;border-color:var(--vp-brand);box-shadow:0 0 0 3px rgba(var(--vp-brand-rgb),.18)}
.vp-f input[readonly]{background:var(--vp-sunk)}
.vp-f small,.vp-hint{color:var(--vp-mute);font-size:.8rem;line-height:1.6}
.vp-f input.vs-invalid{border-color:var(--vp-red)}
.vp-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 14px}
.vp-check{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;cursor:pointer;margin-bottom:14px}
.vp-check input{margin-top:.4em;accent-color:var(--vp-brand);width:18px;height:18px;flex:none}
.vp-msg{border-radius:var(--vp-radius-s);padding:11px 15px;margin-bottom:14px;font-size:.9rem;border:1px solid}
.vp-msg.ok{background:var(--vp-ok-t);color:#155C31;border-color:var(--vp-ok-b)}.vp-msg.err{background:#FBE9E9;color:#951117;border-color:#EFC2C3}.vp-msg.info{background:#ECF1FB;color:#1D449E;border-color:#C9D6F3}
.vp-pass{position:relative}.vp-pass input{padding-inline-end:46px}
.vp-pass button{position:absolute;inset-inline-end:6px;top:50%;transform:translateY(-50%);background:none;border:0;color:var(--vp-mute);cursor:pointer;padding:8px}

/* toasts */
#vp-toasts{position:fixed;inset-inline-end:18px;bottom:18px;z-index:100100;display:flex;flex-direction:column;gap:10px;max-width:min(380px,calc(100vw - 36px))}
.vp-toast{background:var(--vp-ink);color:#fff;border-radius:8px;padding:12px 16px;box-shadow:0 14px 30px -12px rgba(0,0,0,.5);font-size:.9rem;display:flex;gap:10px;align-items:flex-start;animation:vpIn .2s ease;border-inline-start:3px solid var(--vp-brand-l)}
.vp-toast.err{border-inline-start-color:var(--vp-red-logo)}.vp-toast.ok{border-inline-start-color:#3FAE6A}
@keyframes vpIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

/* modal + drawer */
.vp-modal{position:fixed;inset:0;z-index:100050;background:rgba(var(--vp-ink-rgb),.62);display:none;align-items:center;justify-content:center;padding:16px}
.vp-modal.open{display:flex}
.vp-modal-box{background:var(--vp-surface);border-radius:12px;width:100%;max-width:640px;max-height:92vh;overflow:auto;box-shadow:0 30px 80px -24px rgba(0,0,0,.55);animation:vpIn .2s ease}
.vp-modal-lg{max-width:900px}
.vp-modal-head{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--vp-line);position:sticky;top:0;background:var(--vp-surface);z-index:2}
.vp-modal-head h3{margin:0;font-size:1.15rem}
.vp-x{background:none;border:0;font-size:1.6rem;line-height:1;color:var(--vp-mute);cursor:pointer;padding:0 6px}
.vp-x:hover{color:var(--vp-ink)}
.vp-modal-body{padding:22px}
.vp-modal-foot{display:flex;gap:10px;justify-content:flex-end;padding:0 22px 22px}
.vp-drawer{position:fixed;inset:0;z-index:100040;background:rgba(var(--vp-ink-rgb),.45);display:none}
.vp-drawer.open{display:block}
.vp-drawer-panel{position:absolute;top:0;bottom:0;inset-inline-end:0;width:min(560px,100%);background:var(--vp-surface);box-shadow:-20px 0 60px -24px rgba(0,0,0,.4);display:flex;flex-direction:column;animation:vpSlide .22s ease}
[dir=ltr] .vp-drawer-panel{animation-name:vpSlideL}
@keyframes vpSlide{from{transform:translateX(-24px);opacity:0}to{transform:none;opacity:1}}
@keyframes vpSlideL{from{transform:translateX(24px);opacity:0}to{transform:none;opacity:1}}
.vp-drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 22px;border-bottom:1px solid var(--vp-line)}
.vp-drawer-head h3{margin:0;font-size:1.15rem}
.vp-drawer-body{padding:20px 22px;overflow:auto;flex:1}

/* =========================================================
   BRAND LOCK-UP (header, footer, dashboard sidebar)
========================================================= */
.vp-logo{display:inline-flex;align-items:center;gap:12px;color:var(--vp-ink);text-decoration:none!important;flex:none}
.vp-logo .vp-logo-mark{height:36px;width:auto;flex:none}
.vp-logo .vp-logo-word{height:46px;width:auto;flex:none}
.vp-logo .vp-logo-custom{height:46px;width:auto;max-width:240px;object-fit:contain}
.vp-logo small{display:block;font:500 .72rem/1.3 var(--vp-body);color:var(--vp-mute);letter-spacing:.02em;border-inline-start:1px solid var(--vp-line-2);padding-inline-start:12px;max-width:9em}

/* =========================================================
   PUBLIC HEADER + FOOTER
========================================================= */
.vp-header{position:sticky;top:0;z-index:90;background:rgba(255,255,255,.97);border-bottom:1px solid var(--vp-line)}
@supports (backdrop-filter:blur(8px)){.vp-header{background:rgba(255,255,255,.9);backdrop-filter:saturate(1.3) blur(10px)}}
.vp-header-in{display:flex;align-items:center;gap:28px;height:var(--vp-header-h)}
.vp-header-panel{display:flex;align-items:center;gap:20px;flex:1;min-width:0}
.vp-nav{display:flex;gap:2px;margin-inline-start:8px}
.vp-nav ul{display:contents;list-style:none}
.vp-nav li{list-style:none}
.vp-nav a{display:block;color:var(--vp-text);font:500 .93rem var(--vp-body);padding:8px 12px;border-radius:6px}
.vp-nav a:hover,.vp-nav .current-menu-item>a{color:var(--vp-brand);text-decoration:none;background:var(--vp-sunk)}
.vp-nav .vp-nav-hot a,.vp-nav a.vp-nav-hot{color:var(--vp-brand)}
.vp-nav .vp-nav-hot a::after,.vp-nav a.vp-nav-hot::after{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--vp-red-logo);margin-inline-start:6px;vertical-align:middle;transform:translateY(-6px)}
.vp-header-cta{margin-inline-start:auto;display:flex;gap:10px;align-items:center}
.vp-lang{display:inline-flex;border:1px solid var(--vp-line-2);border-radius:6px;overflow:hidden}
.vp-lang a{padding:5px 11px;color:var(--vp-mute);font:600 .78rem var(--vp-body)}
.vp-lang a:hover{text-decoration:none;color:var(--vp-ink)}
.vp-lang a.on{background:var(--vp-ink);color:#fff}
.vp-burger{display:none;background:none;border:1px solid var(--vp-line-2);border-radius:6px;color:var(--vp-ink);font-size:1.15rem;cursor:pointer;margin-inline-start:auto;width:44px;height:42px}
@media (max-width:1020px){
  .vp-burger{display:block}
  .vp-header-panel{display:none;position:absolute;top:var(--vp-header-h);inset-inline:0;flex-direction:column;align-items:stretch;gap:0;background:#fff;padding:6px 16px 18px;border-top:1px solid var(--vp-line);border-bottom:1px solid var(--vp-line);max-height:calc(100vh - var(--vp-header-h));overflow:auto;box-shadow:0 18px 30px -24px rgba(var(--vp-ink-rgb),.5)}
  .vp-header.open .vp-header-panel{display:flex}
  .vp-nav{flex-direction:column;gap:0;margin:0}
  .vp-nav a{padding:13px 6px;border-bottom:1px solid var(--vp-line);border-radius:0}
  .vp-header-cta{margin:14px 0 0;flex-wrap:wrap}
  .vp-header-cta .vp-btn{flex:1 1 auto}
  .vp-logo small{display:none}
}
@media (max-width:420px){.vp-logo .vp-logo-word{height:40px}.vp-logo .vp-logo-mark{height:30px}.vp-logo{gap:8px}}
/* dark header (Customizer → Brand → Header style) */
.vp-hdr-dark .vp-header{background:var(--vp-ink);border-bottom-color:rgba(var(--vp-on-ink-rgb),.12);backdrop-filter:none}
.vp-hdr-dark .vp-nav a{color:var(--vp-on-ink-2)}
.vp-hdr-dark .vp-nav a:hover,.vp-hdr-dark .vp-nav .current-menu-item>a{color:#fff;background:rgba(var(--vp-on-ink-rgb),.07)}
.vp-hdr-dark .vp-nav .vp-nav-hot a,.vp-hdr-dark .vp-nav a.vp-nav-hot{color:var(--vp-brand-l)}
.vp-hdr-dark .vp-lang{border-color:rgba(var(--vp-on-ink-rgb),.25)}.vp-hdr-dark .vp-lang a{color:var(--vp-on-ink-2)}.vp-hdr-dark .vp-lang a.on{background:var(--vp-on-ink);color:var(--vp-ink)}
.vp-hdr-dark .vp-burger{border-color:rgba(var(--vp-on-ink-rgb),.25);color:var(--vp-on-ink)}
.vp-hdr-dark .vp-header .vp-btn-ghost{background:transparent;border-color:rgba(var(--vp-on-ink-rgb),.35);color:var(--vp-on-ink)}
.vp-hdr-dark .vp-header .vp-btn-brand{background:#fff;border-color:#fff;color:var(--vp-ink)}
.vp-hdr-dark .vp-logo small{color:var(--vp-on-ink-2);border-color:rgba(var(--vp-on-ink-rgb),.22)}
@media (max-width:1020px){.vp-hdr-dark .vp-header-panel{background:var(--vp-ink);border-color:rgba(var(--vp-on-ink-rgb),.1)}.vp-hdr-dark .vp-nav a{border-color:rgba(var(--vp-on-ink-rgb),.08)}}

.vp-footer{background:var(--vp-ink);color:var(--vp-on-ink-2);padding:64px 0 26px}
.vp-footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.2fr;gap:36px}
@media (max-width:860px){.vp-footer-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.vp-footer-grid{grid-template-columns:1fr}}
.vp-footer-brand img{display:block;width:150px;height:auto;margin-bottom:16px}
.vp-footer h4{color:var(--vp-on-ink);font:600 .82rem var(--vp-body);letter-spacing:.04em;margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid rgba(var(--vp-on-ink-rgb),.12)}
.vp-footer ul{list-style:none}
.vp-footer a{color:var(--vp-on-ink-2);display:block;padding:4px 0;font-size:.9rem}
.vp-footer a:hover{color:#fff;text-decoration:none}
.vp-footer a i{width:18px;color:var(--vp-brand-l)}
.vp-footer p{font-size:.88rem;line-height:1.95;max-width:34em}
.vp-footer-bottom{border-top:1px solid rgba(var(--vp-on-ink-rgb),.12);margin-top:40px;padding-top:18px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.8rem;color:var(--vp-on-ink-3)}

/* =========================================================
   LANDING
========================================================= */
.vp-sec{padding:92px 0}
.vp-sec + .vp-sec{border-top:1px solid var(--vp-line)}
.vp-sec.white{background:var(--vp-surface)}
.vp-sec.dark{background:var(--vp-ink);color:var(--vp-on-ink-2);border-top:0}
.vp-sec.dark h2,.vp-sec.dark h3{color:var(--vp-on-ink)}
@media (max-width:720px){.vp-sec{padding:64px 0}}
.vp-head{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:20px 56px;align-items:end;margin-bottom:44px}
.vp-head h2{font-size:clamp(1.7rem,3vw,2.4rem);margin:0}
.vp-head p{margin:0;color:var(--vp-mute);font-size:1.02rem;max-width:36em}
.vp-sec.dark .vp-head p{color:var(--vp-on-ink-2)}
@media (max-width:860px){.vp-head{grid-template-columns:1fr}}

/* hero */
.vp-hero{position:relative;background:var(--vp-ink);color:var(--vp-on-ink);overflow:hidden;padding:72px 0 0}
.vp-hero-in{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:56px;align-items:start}
@media (max-width:1020px){.vp-hero-in{grid-template-columns:1fr;gap:40px}}
.vp-hero h1{color:#fff;font-size:clamp(2.1rem,4.3vw,3.4rem);line-height:1.25;margin:0 0 20px;letter-spacing:-.005em}
.vp-hero h1 em{font-style:normal;color:var(--vp-brand-l);text-decoration:underline;text-decoration-color:var(--vp-red-logo);text-decoration-thickness:.07em;text-underline-offset:.3em;text-decoration-skip-ink:auto}
.vp-hero .lead{font-size:1.08rem;color:var(--vp-on-ink-2);max-width:34em;line-height:1.95;margin-bottom:28px}
.vp-hero-cta{display:flex;gap:12px;flex-wrap:wrap}
.vp-hero-note{margin-top:18px;color:var(--vp-on-ink-3);font-size:.85rem;display:flex;gap:8px;align-items:baseline}
.vp-hero-note i{color:var(--vp-brand-l)}
.vp-hero-mark{position:absolute;inset-inline-end:-90px;bottom:-40px;width:540px;opacity:.05;pointer-events:none}
@media (max-width:1020px){.vp-hero-mark{display:none}}

/* the inventory ledger (real figures from the platform's data) */
.vp-ledger{background:var(--vp-ink-2);border:1px solid rgba(var(--vp-on-ink-rgb),.14);border-radius:10px;color:var(--vp-on-ink);position:relative}
.vp-ledger::before{content:"";position:absolute;inset-inline:22px;top:-1px;height:2px;background:var(--vp-rule)}
.vp-ledger-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:18px 22px 14px;border-bottom:1px solid rgba(var(--vp-on-ink-rgb),.1)}
.vp-ledger-h b{font:600 1.02rem var(--vp-display);color:var(--vp-on-ink)}
.vp-ledger-h span{font-size:.76rem;color:var(--vp-on-ink-3)}
.vp-ledger table{width:100%;border-collapse:collapse;font-size:.88rem}
.vp-ledger th{font:500 .74rem var(--vp-body);color:var(--vp-on-ink-3);text-align:start;padding:12px 22px 8px;white-space:nowrap}
.vp-ledger td{padding:11px 22px;border-top:1px solid rgba(var(--vp-on-ink-rgb),.07);font-variant-numeric:tabular-nums;white-space:nowrap}
.vp-ledger td:first-child{color:var(--vp-on-ink);font-weight:600;white-space:normal}
.vp-ledger td.n{color:var(--vp-brand-l);font-weight:600}
.vp-ledger th:not(:first-child),.vp-ledger td:not(:first-child){text-align:end}
.vp-ledger-f{display:flex;gap:10px;align-items:center;padding:14px 22px;border-top:1px solid rgba(var(--vp-on-ink-rgb),.1);font-size:.8rem;color:var(--vp-on-ink-2)}
.vp-ledger-f i{color:var(--vp-red-logo);font-size:.75rem}
@media (max-width:520px){.vp-ledger th,.vp-ledger td{padding-inline:12px}.vp-ledger .hide-s{display:none}}

/* totals under the hero */
.vp-totals{position:relative;margin-top:64px;border-top:1px solid rgba(var(--vp-on-ink-rgb),.12);display:grid;grid-template-columns:repeat(3,1fr)}
.vp-totals div{padding:26px 0 30px;padding-inline-end:20px}
.vp-totals div + div{border-inline-start:1px solid rgba(var(--vp-on-ink-rgb),.12);padding-inline-start:28px}
.vp-totals b{display:block;font:700 clamp(1.9rem,3.6vw,2.7rem)/1.1 var(--vp-display);color:#fff;font-variant-numeric:tabular-nums}
.vp-totals span{display:block;margin-top:6px;color:var(--vp-on-ink-2);font-size:.88rem}
@media (max-width:620px){.vp-totals{grid-template-columns:1fr}.vp-totals div + div{border-inline-start:0;border-top:1px solid rgba(var(--vp-on-ink-rgb),.12);padding-inline-start:0}.vp-totals div{padding:18px 0}}

/* what is inside: a numbered index instead of icon cards */
.vp-index{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 56px;counter-reset:vpi}
@media (max-width:820px){.vp-index{grid-template-columns:1fr}}
.vp-index li{counter-increment:vpi;display:grid;grid-template-columns:3.2rem minmax(0,1fr);gap:4px 14px;padding:26px 0;border-top:1px solid var(--vp-line)}
.vp-index li::before{content:counter(vpi,decimal-leading-zero);grid-row:span 2;font:600 .95rem/1.9 var(--vp-display);color:var(--vp-brand);font-variant-numeric:tabular-nums}
.vp-index h3{font-size:1.15rem;margin:0}
.vp-index p{margin:0;color:var(--vp-mute);font-size:.95rem}

/* referral programme */
.vp-ref-sec{background:var(--vp-surface)}
.vp-ref{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:40px 64px;align-items:start}
@media (max-width:920px){.vp-ref{grid-template-columns:1fr}}
.vp-ref h2{font-size:clamp(1.9rem,3.6vw,2.8rem);line-height:1.25;margin:0 0 16px}
.vp-ref h2 span{display:block;color:var(--vp-brand)}
.vp-ref-lead{font-size:1.05rem;color:var(--vp-mute);line-height:1.95;max-width:34em}
.vp-ref-reward{display:flex;gap:12px;align-items:flex-start;margin:22px 0 26px;padding:14px 16px;border:1px solid var(--vp-line);border-inline-start:3px solid var(--vp-red-logo);border-radius:0 8px 8px 0;background:var(--vp-paper);font-size:.92rem}
[dir=rtl] .vp-ref-reward,.vp-rtl .vp-ref-reward{border-radius:8px 0 0 8px}
.vp-ref-reward b{display:block;color:var(--vp-ink)}
.vp-ref-flow{list-style:none;counter-reset:vpr;display:grid;gap:0;border-top:2px solid var(--vp-ink)}
.vp-ref-flow li{counter-increment:vpr;display:grid;grid-template-columns:3rem minmax(0,1fr);gap:2px 16px;padding:22px 0;border-bottom:1px solid var(--vp-line);position:relative}
.vp-ref-flow li::before{content:counter(vpr);grid-row:span 2;font:700 2rem/1 var(--vp-display);color:var(--vp-brand-2);font-variant-numeric:tabular-nums}
.vp-ref-flow li:last-child::before{color:var(--vp-red-logo)}
.vp-ref-flow b{font:700 1.12rem var(--vp-display);color:var(--vp-ink)}
.vp-ref-flow span{color:var(--vp-mute);font-size:.95rem}
.vp-ref-link{margin-top:22px;display:inline-flex;align-items:center;gap:2px;max-width:100%;padding:10px 14px;border:1px dashed var(--vp-line-2);border-radius:8px;font:500 .9rem var(--vp-body);color:var(--vp-mute);direction:ltr;overflow:hidden;white-space:nowrap}
.vp-ref-link b{color:var(--vp-brand);font-weight:700;unicode-bidi:isolate}

/* account types */
.vp-types{display:grid;grid-template-columns:1fr 1fr;gap:24px}
@media (max-width:860px){.vp-types{grid-template-columns:1fr}}
.vp-type{background:var(--vp-surface);border:1px solid var(--vp-line);border-radius:10px;padding:34px;display:flex;flex-direction:column}
.vp-type.company{background:var(--vp-ink);border-color:var(--vp-ink);color:var(--vp-on-ink-2)}
.vp-type.company h3{color:var(--vp-on-ink)}
.vp-type-k{font:600 .78rem var(--vp-body);color:var(--vp-accent);margin-bottom:10px}
.vp-type.company .vp-type-k{color:var(--vp-brand-l)}
.vp-type h3{font-size:1.55rem;margin-bottom:8px}
.vp-type>p{color:var(--vp-mute);margin-bottom:6px}
.vp-type.company>p{color:var(--vp-on-ink-2)}
.vp-type ul{list-style:none;margin:16px 0 24px;border-top:1px solid var(--vp-line)}
.vp-type.company ul{border-color:rgba(var(--vp-on-ink-rgb),.12)}
.vp-type li{padding:11px 0;border-bottom:1px solid var(--vp-line);display:flex;gap:12px;font-size:.95rem;align-items:baseline}
.vp-type.company li{border-color:rgba(var(--vp-on-ink-rgb),.12);color:var(--vp-on-ink)}
.vp-type li::before{content:"";flex:none;width:10px;height:8px;background:var(--vp-red-logo);clip-path:polygon(0 0,100% 0,26% 100%);transform:translateY(-1px)}
[dir=rtl] .vp-type li::before,.vp-rtl .vp-type li::before{clip-path:polygon(0 0,100% 0,74% 100%)}
.vp-type .docs{font-size:.86rem;color:var(--vp-mute);margin:0 0 24px;line-height:1.8}
.vp-type.company .docs{color:var(--vp-on-ink-2)}
.vp-type .docs b{color:var(--vp-text)}.vp-type.company .docs b{color:var(--vp-on-ink)}
.vp-type .vp-btn{margin-top:auto;align-self:flex-start}

/* how it works */
.vp-steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;counter-reset:vps;border-top:2px solid var(--vp-ink)}
@media (max-width:900px){.vp-steps{grid-template-columns:1fr 1fr;row-gap:8px}}
@media (max-width:560px){.vp-steps{grid-template-columns:1fr}}
.vp-step{counter-increment:vps;padding:22px 24px 6px 0;position:relative}
[dir=rtl] .vp-step,.vp-rtl .vp-step{padding:22px 0 6px 24px}
.vp-step::before{content:counter(vps);display:block;font:700 2.4rem/1 var(--vp-display);color:var(--vp-brand-2);margin-bottom:14px;font-variant-numeric:tabular-nums}
.vp-step h3{font-size:1.08rem;margin-bottom:6px}
.vp-step p{color:var(--vp-mute);font-size:.93rem;margin:0}

/* CRM section */
.vp-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
@media (max-width:920px){.vp-split{grid-template-columns:1fr;gap:36px}}
.vp-split h2{font-size:clamp(1.7rem,3vw,2.4rem)}
.vp-bullets{list-style:none;display:grid;gap:0;margin-top:22px;border-top:1px solid rgba(var(--vp-on-ink-rgb),.12)}
.vp-bullets li{padding:16px 0;border-bottom:1px solid rgba(var(--vp-on-ink-rgb),.12)}
.vp-bullets b{display:block;color:var(--vp-on-ink);font:600 1rem var(--vp-display);margin-bottom:2px}
.vp-bullets span{color:var(--vp-on-ink-2);font-size:.92rem}
.vp-report{background:var(--vp-paper);border-radius:10px;color:var(--vp-text);overflow:hidden}
.vp-report-h{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:18px 22px;border-bottom:1px solid var(--vp-line)}
.vp-report-h b{font:600 1rem var(--vp-display)}
.vp-report-h span{font-size:.76rem;color:var(--vp-mute)}
.vp-report-r{display:grid;grid-template-columns:4px minmax(0,1fr);gap:16px;padding:16px 22px;border-bottom:1px solid var(--vp-line)}
.vp-report-r:last-child{border-bottom:0}
.vp-report-r::before{content:"";border-radius:2px;background:var(--k,var(--vp-line-2))}
.vp-report-r.high{--k:var(--vp-red-logo)}.vp-report-r.med{--k:var(--vp-amber)}.vp-report-r.good{--k:#3FAE6A}
.vp-report-r b{display:block;font-size:.95rem}
.vp-report-r small{display:block;color:var(--vp-mute);font-size:.84rem;margin-top:2px}

/* trust */
.vp-trust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
@media (max-width:860px){.vp-trust{grid-template-columns:1fr;gap:0}}
.vp-trust div{border-top:2px solid var(--vp-ink);padding-top:20px}
@media (max-width:860px){.vp-trust div{padding:20px 0 26px}}
.vp-trust h3{font-size:1.1rem;margin-bottom:8px}
.vp-trust p{margin:0;color:var(--vp-mute);font-size:.95rem}

/* FAQ */
.vp-faqs{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:24px 64px;align-items:start}
@media (max-width:860px){.vp-faqs{grid-template-columns:1fr}}
.vp-faqs h2{font-size:clamp(1.7rem,3vw,2.4rem);margin:0}
.vp-faqs-note{color:var(--vp-mute);margin-top:12px}
.vp-faq{border-top:1px solid var(--vp-line)}
.vp-faq details{border-bottom:1px solid var(--vp-line)}
.vp-faq summary{cursor:pointer;padding:20px 0;font:600 1.02rem var(--vp-body);list-style:none;display:flex;justify-content:space-between;gap:16px;color:var(--vp-ink)}
.vp-faq summary::-webkit-details-marker{display:none}
.vp-faq summary::after{content:"+";font:400 1.5rem/1 var(--vp-body);color:var(--vp-brand);flex:none}
.vp-faq details[open] summary::after{content:"−"}
.vp-faq details p{padding:0 0 22px;margin:0;color:var(--vp-mute);max-width:44em}

/* closing call to action — the logo blue, so it is not one more navy band */
.vp-close{background:var(--vp-brand);color:rgba(255,255,255,.86);padding:76px 0;position:relative;overflow:hidden}
.vp-close::after{content:"";position:absolute;inset-inline-end:-40px;top:-30px;width:260px;height:200px;background:rgba(255,255,255,.06);clip-path:polygon(0 0,100% 0,26% 100%)}
[dir=rtl] .vp-close::after,.vp-rtl .vp-close::after{clip-path:polygon(0 0,100% 0,74% 100%)}
.vp-close-in{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px 56px;align-items:center}
@media (max-width:820px){.vp-close-in{grid-template-columns:1fr}}
.vp-close h2{color:#fff;font-size:clamp(1.6rem,3vw,2.2rem);margin:0 0 8px}
.vp-close p{margin:0;max-width:38em}
.vp-close .vp-hero-cta{justify-content:flex-end}
@media (max-width:820px){.vp-close .vp-hero-cta{justify-content:flex-start}}

/* content written in the WordPress editor (front-page slot, normal pages, the full-width template) */
.vp-entry{font-size:1.02rem;line-height:1.9}
.vp-entry>*{max-width:820px;margin-inline:auto}
.vp-entry>.alignwide{max-width:1200px}
.vp-entry>.alignfull{max-width:none;width:100%}
.vp-entry h2{font-size:clamp(1.5rem,2.6vw,2.1rem);margin-top:1.4em}
.vp-entry h3{font-size:1.25rem;margin-top:1.2em}
.vp-entry ul,.vp-entry ol{padding-inline-start:22px;margin:0 0 1em}
.vp-entry img{border-radius:var(--vp-radius)}
.vp-entry blockquote{margin:1.4em 0;padding:4px 0;padding-inline-start:18px;border-inline-start:3px solid var(--vp-red-logo);color:var(--vp-ink);font-size:1.12rem}
.vp-entry .wp-block-button__link,.vp-entry .wp-element-button{background:var(--vp-brand);color:#fff;border-radius:var(--vp-radius-b);padding:12px 22px;font:600 .95rem var(--vp-body);text-decoration:none}
.vp-entry .wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:var(--vp-brand);border:1px solid currentColor}
.vp-entry table{width:100%;border-collapse:collapse}.vp-entry td,.vp-entry th{border:1px solid var(--vp-line);padding:8px 12px}
.vp-entry .has-vp-brand-color{color:var(--vp-brand)}.vp-entry .has-vp-brand-background-color{background:var(--vp-brand)}
.vp-entry .has-vp-indigo-color{color:var(--vp-brand-2)}.vp-entry .has-vp-indigo-background-color{background:var(--vp-brand-2)}
.vp-entry .has-vp-red-color{color:var(--vp-red-logo)}.vp-entry .has-vp-red-background-color{background:var(--vp-red-logo)}
.vp-entry .has-vp-ink-color{color:var(--vp-ink)}.vp-entry .has-vp-ink-background-color{background:var(--vp-ink)}
.vp-entry .has-vp-paper-color{color:var(--vp-paper)}.vp-entry .has-vp-paper-background-color{background:var(--vp-paper)}
.vp-entry .has-white-color{color:#fff}.vp-entry .has-white-background-color{background:#fff}
.vp-entry .has-background{padding:1.6em 1.8em;border-radius:var(--vp-radius)}
.vp-page-sec{padding:64px 0}
.vp-canvas .vp-entry>*{max-width:1200px}
.vp-canvas .vp-entry>.alignfull{max-width:none}
.vp-canvas .vp-entry{padding-inline:24px}
@media (max-width:600px){.vp-canvas .vp-entry{padding-inline:16px}}

/* =========================================================
   AUTH PAGES
========================================================= */
.vp-auth{min-height:calc(100vh - var(--vp-header-h));display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
.vp-auth-side{background:var(--vp-ink);color:var(--vp-on-ink-2);padding:56px 48px;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}
@media (max-width:960px){.vp-auth{grid-template-columns:1fr;min-height:0}.vp-auth-side{display:none}}   /* after the base rule, so phones go straight to the form */
.vp-auth-side::after{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--vp-brand-2),var(--vp-brand))}
.vp-auth-logo{display:block;width:190px;max-width:70%;height:auto;margin:0 0 36px}
.vp-auth-side h2{color:#fff;font-size:1.9rem;margin-bottom:14px}
.vp-auth-side>p{max-width:30em}
.vp-auth-side ul{list-style:none;display:grid;gap:0;margin-top:26px;border-top:1px solid rgba(var(--vp-on-ink-rgb),.12);counter-reset:vpa}
.vp-auth-side li{display:grid;grid-template-columns:2rem minmax(0,1fr);gap:12px;padding:14px 0;border-bottom:1px solid rgba(var(--vp-on-ink-rgb),.12);counter-increment:vpa}
.vp-auth-side li::before{content:counter(vpa);font:700 1.1rem/1.6 var(--vp-display);color:var(--vp-brand-l)}
.vp-auth-side li i{display:none}
.vp-auth-side li b{color:var(--vp-on-ink);font-weight:600}
.vp-auth-side li small{color:var(--vp-on-ink-2)}
.vp-auth-main{display:grid;place-items:center;padding:48px 20px;background:var(--vp-paper)}
.vp-auth-card{width:100%;max-width:560px;background:var(--vp-surface);border:1px solid var(--vp-line);border-radius:10px;padding:38px;position:relative;overflow:hidden}
.vp-auth-card::before{content:"";position:absolute;inset-inline:0;top:0;height:3px;background:var(--vp-rule)}
.vp-auth-card h1{font-size:1.8rem;margin-bottom:6px}
.vp-auth-sub{color:var(--vp-mute);margin-bottom:24px}
.vp-acct{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:22px}
@media (max-width:520px){.vp-acct{grid-template-columns:1fr}.vp-auth-card{padding:26px 18px}}
.vp-acct label{cursor:pointer;position:relative;display:block}
.vp-acct input{position:absolute;opacity:0;inset:0}
.vp-acct span{display:block;border:1px solid var(--vp-line-2);border-radius:8px;padding:16px;height:100%;transition:border-color .15s,background .15s,box-shadow .15s}
.vp-acct span i{font-size:1.15rem;color:var(--vp-mute);display:block;margin-bottom:8px}
.vp-acct b{display:block;font-family:var(--vp-display);font-size:1.05rem}
.vp-acct small{color:var(--vp-mute);font-size:.8rem;line-height:1.5;display:block;margin-top:2px}
.vp-acct input:checked+span{border-color:var(--vp-brand);background:var(--vp-tint);box-shadow:inset 0 0 0 1px var(--vp-brand)}
.vp-acct input:checked+span i{color:var(--vp-brand)}
.vp-acct input:focus-visible+span{outline:2px solid var(--vp-brand);outline-offset:2px}
.vp-alt{text-align:center;margin-top:18px;color:var(--vp-mute);font-size:.92rem}
.vp-alt a{font-weight:600}
.vp-recover{margin-top:22px;padding:18px;border:1px solid var(--vp-line);border-radius:8px;background:var(--vp-sunk)}
.vp-invited{display:flex;gap:12px;align-items:center;margin:-6px 0 20px;padding:12px 14px;border-radius:8px;background:var(--vp-tint);border:1px solid var(--vp-tint-2);font-size:.9rem;color:var(--vp-ink)}
.vp-invited b{color:var(--vp-brand-d)}
.vp-auth-extra{margin-top:22px}

/* legal + simple pages */
.vp-page-hero{background:var(--vp-ink);color:var(--vp-on-ink-2);padding:56px 0 50px;position:relative}
.vp-page-hero::after{content:"";position:absolute;inset-inline:0;bottom:0;height:3px;background:var(--vp-rule)}
.vp-page-hero h1{color:#fff;font-size:clamp(1.8rem,3.4vw,2.5rem);margin-bottom:8px}
.vp-page-hero h1 i{display:none}
.vp-page-hero p{color:var(--vp-on-ink-2);margin:0;max-width:44em}
.vp-legal-wrap{max-width:860px;margin:0 auto;padding:56px 24px 96px}
.vp-legal h2{font-size:1.25rem;margin-top:40px;padding-top:18px;border-top:1px solid var(--vp-line);scroll-margin-top:96px}
.vp-legal ul{padding-inline-start:22px;line-height:2}
.vp-legal li{margin-bottom:6px}
.vp-toc{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:2px 24px;margin:4px 0 8px;padding:18px 20px;background:var(--vp-surface);border:1px solid var(--vp-line);border-radius:8px}
.vp-toc a{font-size:.86rem;padding:5px 0;color:var(--vp-text)}
.vp-toc a:hover{color:var(--vp-accent)}

/* verify page */
.vp-verify{max-width:640px;margin:-28px auto 96px;padding:0 20px;position:relative;z-index:2}
.vp-verify .vp-card{border-top:3px solid var(--vp-brand);box-shadow:var(--vp-shadow)}
.vp-verify-res{margin-top:20px;border-radius:8px;padding:24px;text-align:center;border:1px solid}
.vp-verify-res.ok{background:var(--vp-ok-t);border-color:var(--vp-ok-b)}
.vp-verify-res.no{background:#FBE9E9;border-color:#EFC2C3}
.vp-verify-res .ico{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;font-size:1.5rem;color:#fff;margin:0 auto 12px;background:var(--vp-ok)}
.vp-verify-res.no .ico{background:var(--vp-red)}

/* =========================================================
   ASSISTANT WIDGET
========================================================= */
.vp-bot{position:fixed;inset-inline-end:18px;bottom:18px;z-index:95}
.vp-bot-fab{width:54px;height:54px;border-radius:50%;border:0;cursor:pointer;background:var(--vp-brand);color:#fff;font-size:1.25rem;box-shadow:0 12px 26px -12px rgba(var(--vp-ink-rgb),.8)}
.vp-bot-fab:hover{background:var(--vp-brand-d)}
.vp-bot-win{position:absolute;inset-inline-end:0;bottom:68px;width:min(370px,calc(100vw - 36px));height:min(520px,calc(100vh - 130px));background:var(--vp-surface);border-radius:12px;box-shadow:0 30px 70px -24px rgba(0,0,0,.5);display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--vp-line);animation:vpIn .2s ease}
.vp-bot-win[hidden]{display:none}
.vp-bot-head{background:var(--vp-ink);color:var(--vp-on-ink);padding:14px 18px;display:flex;justify-content:space-between;align-items:center;font-weight:600;position:relative}
.vp-bot-head::after{content:"";position:absolute;inset-inline:0;bottom:0;height:2px;background:var(--vp-rule)}
.vp-bot-head i{color:var(--vp-brand-l);margin-inline-end:6px}
.vp-bot-head button{background:none;border:0;color:var(--vp-on-ink-2);font-size:1.5rem;line-height:1;cursor:pointer}
.vp-bot-msgs{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:10px;background:var(--vp-paper)}
.vp-bot-m{max-width:90%;padding:10px 14px;border-radius:10px;font-size:.88rem;line-height:1.8}
.vp-bot-m.bot{background:var(--vp-surface);border:1px solid var(--vp-line);align-self:flex-start}
.vp-bot-m.bot a{color:var(--vp-brand);font-weight:700}
.vp-bot-m.me{background:var(--vp-ink);color:#fff;align-self:flex-end}
.vp-bot-card{margin-top:8px;padding:9px 11px;border:1px solid var(--vp-line);border-radius:8px;background:var(--vp-paper);font-size:.82rem}
.vp-bot-quick{display:flex;gap:6px;flex-wrap:wrap;padding:8px 12px;border-top:1px solid var(--vp-line);background:var(--vp-surface)}
.vp-bot-quick button{background:var(--vp-surface);border:1px solid var(--vp-line-2);color:var(--vp-text);padding:5px 11px;border-radius:6px;font:500 .78rem var(--vp-body);cursor:pointer}
.vp-bot-quick button:hover{border-color:var(--vp-ink)}
.vp-bot-in{display:flex;gap:8px;padding:10px 12px;border-top:1px solid var(--vp-line);background:var(--vp-surface)}
.vp-bot-in input{flex:1;min-width:0;border:1px solid var(--vp-line-2);border-radius:8px;padding:9px 14px;font:500 .88rem var(--vp-body)}
.vp-bot-in input:focus{outline:none;border-color:var(--vp-brand)}
.vp-bot-in button{width:40px;height:40px;border-radius:8px;border:0;background:var(--vp-brand);color:#fff;cursor:pointer;flex:none}
.vp-typing span{display:inline-block;width:7px;height:7px;margin:0 2px;border-radius:50%;background:#98A3B8;animation:vpDot 1.1s infinite}
.vp-typing span:nth-child(2){animation-delay:.15s}.vp-typing span:nth-child(3){animation-delay:.3s}
@keyframes vpDot{0%,60%,100%{opacity:.4}30%{opacity:1}}
body.vp-app .vp-bot{bottom:14px}
@media print{.vp-bot,.vp-header,.vp-footer{display:none!important}}

/* touch targets · motion */
@media (pointer:coarse){
  .vp-linkbtn,.vs-linkbtn{min-height:40px}
  .vs-toggle-pass{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
  .vp-side-a,.vp-nav a{min-height:44px}
  .vp-lang a{min-height:40px;min-width:40px;display:inline-flex;align-items:center;justify-content:center}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
