/*
 * ByShare v24 — premium web experience
 * Presentation-only overrides. No new dependencies, endpoints or framework.
 * Scoped landing page + reusable customer workspace polish.
 */
:root { --bs-violet:#9e65f5; --bs-plum:#291851; --bs-ink:#22183e; --bs-subtle:#766e8c; --bs-surface:#fcfaff; }
html { scroll-behavior:smooth; scroll-padding-top:96px; }
body { -webkit-font-smoothing:antialiased; }
button, a, summary { -webkit-tap-highlight-color:transparent; }
:where(a, button, summary, input, textarea, select):focus-visible { outline:3px solid #b282ff; outline-offset:3px; }

/* Premium navigation for the public landing only. Other pages keep their light header. */
body.public-body.landing-body { background:#fcfaff; overflow-x:clip; }
.landing-body .public-header { position:sticky; top:0; z-index:210; max-width:none; min-height:81px; margin:0; padding:13px max(27px, calc((100% - 1240px)/2)); background:#150e2beb; border-bottom:1px solid #ffffff16; backdrop-filter:blur(24px); -webkit-backdrop-filter:blur(24px); }
.landing-body .public-header .brand-name { color:white; letter-spacing:-1.1px; font-size:24px; }
.landing-body .public-header .brand-name img { width:39px; height:39px; border-radius:12px; box-shadow:0 5px 20px #b25af43d; }
.landing-body .public-header .public-nav-desktop { gap:29px; }
.landing-body .public-header .public-nav-desktop>a:not(.btn) { color:#c5bdda; font-weight:650; font-size:13px; padding:10px 0; background:none; border-radius:0; transition:color .2s; }
.landing-body .public-header .public-nav-desktop>a:not(.btn):hover,
.landing-body .public-header .public-nav-desktop>a[aria-current="page"]:not(.btn) { color:#fff; }
.landing-body .public-header .public-nav-desktop>a.btn { background:#fff; color:#322255; box-shadow:0 8px 22px #09031740; padding:11px 20px; border-radius:11px; font-weight:850; transition:transform .22s,box-shadow .22s; }
.landing-body .public-header .public-nav-desktop>a.btn:hover { transform:translateY(-2px); box-shadow:0 12px 25px #10072550; }
.landing-body .public-header .public-menu-summary { border:1px solid #ffffff42; color:white; background:#ffffff18; }
.landing-body .public-header .menu-summary-label { color:white; }
.landing-body .public-main { width:100%; min-height:0; overflow:hidden; }
.landing-body .public-footer { color:#9286ac; border-color:#ebe4f5; max-width:1230px; margin:0 auto; padding:25px 24px 34px; }
.landing-body .public-footer a:hover { color:#8255d6; }

/* Foundations */
.bs-landing { color:var(--bs-ink); overflow:hidden; }
.bs-landing *, .bs-landing *::before, .bs-landing *::after { box-sizing:border-box; }
.bs-landing h1,.bs-landing h2,.bs-landing h3,.bs-landing p { margin-top:0; }
.bs-container { width:min(1240px, calc(100% - 64px)); margin-inline:auto; position:relative; }
.bs-section { padding:130px 0; }
.bs-section-kicker { display:inline-flex; align-items:center; gap:12px; color:#9564d6; font-size:11px; font-weight:850; letter-spacing:2.3px; }
.bs-kicker-line { display:block; width:24px; height:2px; border-radius:9px; background:linear-gradient(90deg,#824deb,#ffabc9); }
.bs-text-violet { color:#9257df; }
.bs-landing .bs-button { display:inline-flex; min-height:55px; padding:15px 24px; align-items:center; justify-content:center; gap:15px; font-size:14px; font-weight:800; line-height:1.2; border-radius:14px; border:1px solid transparent; text-align:center; text-decoration:none; position:relative; transition:transform .25s cubic-bezier(.2,.75,.15,1),box-shadow .25s,background .25s; }
.bs-landing .bs-button:hover { transform:translateY(-3px); }
.bs-button-primary { color:#261b49; background:linear-gradient(110deg,#fffdfb,#f3eafa); box-shadow:0 17px 40px #08031740; }
.bs-button-primary:hover { box-shadow:0 18px 48px #06020b60; }
.bs-button-outline { background:#ffffff0b; border-color:#ffffff43!important; color:#f6f0ff; backdrop-filter:blur(7px); }
.bs-button-outline:hover { background:#ffffff1b; }
.bs-button-icon { display:inline-flex; }
.bs-play-icon { display:grid; place-items:center; font-size:11px; border:1px solid #ffffff70; border-radius:50%; height:25px; width:25px; padding-left:2px; }
.bs-section-intro { max-width:760px; margin-bottom:52px; }
.bs-section-intro h2 { font-size:clamp(37px,5.2vw,65px); line-height:1.1; letter-spacing:-2.7px; margin:22px 0 19px; color:#261b46; font-weight:850; }
.bs-section-intro p { color:#77718e; font-size:16px; line-height:1.85; max-width:600px; }

/* Hero */
.bs-hero { position:relative; min-height:735px; background:linear-gradient(150deg,#150e2b 0%,#1c1038 44%,#251446 100%); isolation:isolate; color:#fff; }
.bs-hero::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.28; background-image:radial-gradient(#e8b1ff99 1px,transparent 1px); background-size:31px 31px; mask-image:linear-gradient(90deg,transparent 32%,#000 100%); }
.bs-hero::after { content:""; position:absolute; left:0; right:0; bottom:0; height:155px; background:linear-gradient(0deg,#11092596,transparent); pointer-events:none; z-index:-1; }
.bs-hero-glow { position:absolute; pointer-events:none; border-radius:50%; filter:blur(35px); opacity:.8; z-index:-1; animation:bs-aurora 16s ease-in-out infinite alternate; }
.bs-hero-glow-one { width:690px; height:630px; right:-190px; top:-190px; background:radial-gradient(ellipse,#a356d677 0%,#6b43cf22 42%,transparent 70%); }
.bs-hero-glow-two { width:620px; height:490px; left:22%; bottom:-250px; background:radial-gradient(ellipse,#f99ab64c 0%,#7956dc2b 50%,transparent 70%); animation-delay:-6s; }
.bs-hero-noise { position:absolute; inset:0; pointer-events:none; z-index:-1; opacity:.3; background:linear-gradient(116deg,transparent 38%,#efb1ff09 57%,transparent 68%); }
.bs-hero-inner { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); align-items:center; min-height:735px; gap:10px; }
.bs-hero-copy { position:relative; z-index:6; padding:28px 0 70px; max-width:610px; }
.bs-hero-announcement { display:inline-flex; align-items:center; gap:10px; padding:10px 14px; border-radius:100px; border:1px solid #b99afa4a; background:#ffffff0e; font-size:10px; font-weight:800; color:#e6d1ff; letter-spacing:1.35px; transition:background .2s; }
.bs-hero-announcement:hover { background:#ffffff20; }
.bs-live-dot { display:inline-block; width:7px; height:7px; border-radius:50%; background:#71eed1; box-shadow:0 0 0 4px #71eed11d,0 0 16px #71eed1; }
.bs-announcement-arrow { font-size:16px; line-height:1; margin-left:6px; color:#f8d5ff; }
.bs-hero-copy h1 { color:#fff; font-size:clamp(56px,5.8vw,86px); line-height:1.045; letter-spacing:-5px; font-weight:870; margin:27px 0 23px; max-width:670px; }
.bs-gradient-text { display:block; background:linear-gradient(105deg,#c6a6ff 2%,#ffa6d1 65%,#ffc8a4 100%); -webkit-background-clip:text; background-clip:text; color:transparent; }
.bs-hero-description { font-size:16px; line-height:1.85; color:#cac0db; max-width:495px; margin-bottom:0; }
.bs-hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:13px; margin:32px 0 39px; }
.bs-hero-proof { display:flex; gap:16px; align-items:center; }
.bs-avatar-stack { display:flex; padding-left:6px; flex-shrink:0; }
.bs-avatar-stack span { display:grid; place-items:center; width:38px; height:38px; border:2px solid #281841; margin-left:-7px; border-radius:50%; color:#50377d; background:linear-gradient(145deg,#fce6df,#dbcaff); font-size:10px; font-weight:900; }
.bs-avatar-stack span:nth-child(2) { background:linear-gradient(145deg,#bee6f4,#cfb8f1); }
.bs-avatar-stack span:nth-child(3) { background:linear-gradient(145deg,#fdd4bd,#efaed5); }
.bs-avatar-stack span:nth-child(4) { background:#48306c; color:#fff; }
.bs-hero-proof strong,.bs-hero-proof small { display:block; }
.bs-hero-proof strong { font-size:12px; font-weight:750; color:white; }
.bs-hero-proof small { color:#ae9fc5; font-size:11px; margin-top:4px; }
.bs-hero-visual { position:relative; height:670px; min-width:0; perspective:1400px; }
.bs-hero-halo { position:absolute; left:15%; top:12%; width:80%; height:75%; border-radius:50%; background:radial-gradient(ellipse,#d68fe962 0%,#8f53d843 37%,transparent 72%); filter:blur(35px); }
.bs-device { position:relative; display:block; padding:6px; border-radius:40px; border:2px solid #5c506f; background:linear-gradient(130deg,#16101d,#393047 45%,#100d1a 100%); box-shadow:0 30px 80px #10042170,inset 0 0 0 2px #030107,0 0 0 1px #9e8da455; isolation:isolate; transform-style:preserve-3d; }
.bs-device::before { content:""; position:absolute; left:-6px; top:105px; width:4px; height:55px; background:linear-gradient(#736581,#251d2b); border-radius:3px 0 0 3px; box-shadow:0 64px 0 #3a3145; }
.bs-device::after { content:""; position:absolute; right:-6px; top:155px; width:4px; height:75px; border-radius:0 3px 3px 0; background:linear-gradient(#71637e,#281f31); }
.bs-device img { display:block; width:100%; height:auto; aspect-ratio:390/844; border-radius:32px; object-fit:cover; background:#faf7ff; }
.bs-hero-visual>.bs-device { position:absolute; top:50%; left:50%; transform-origin:center; }
.bs-device-main { width:275px; z-index:4; transform:translate(-50%,-48%) rotate(2.5deg); animation:bs-phone-float 7s ease-in-out infinite; }
.bs-device-side { width:213px; filter:saturate(.95); }
.bs-device-left { z-index:2; transform:translate(calc(-50% - 185px),-46%) rotate(-15deg); opacity:.95; }
.bs-device-right { z-index:1; transform:translate(calc(-50% + 184px),-43%) rotate(14deg); opacity:.95; }
.bs-floating-note { position:absolute; z-index:6; display:flex; align-items:center; gap:11px; border:1px solid #ffffff4d; background:#ffffffeb; backdrop-filter:blur(16px); border-radius:16px; padding:11px 17px 11px 12px; box-shadow:0 20px 40px #1e09323c; color:#35254e; }
.bs-floating-note b,.bs-floating-note small { display:block; }
.bs-floating-note b { font-size:12px; font-weight:850; }
.bs-floating-note small { color:#8c7b9f; font-size:10px; margin-top:3px; }
.bs-floating-note-top { top:70px; right:2px; transform:rotate(6deg); animation:bs-note-bob 6s ease-in-out infinite; }
.bs-floating-note-bottom { bottom:97px; left:-24px; transform:rotate(-5deg); animation:bs-note-bob 7s ease-in-out infinite reverse; }
.bs-note-icon,.bs-note-check { display:grid; place-items:center; width:34px; height:34px; border-radius:11px; background:linear-gradient(145deg,#a966ef,#f191c7); color:white; font-size:20px; }
.bs-note-check { background:linear-gradient(145deg,#41cdb7,#1fa38e); }
.bs-hero-bottom { position:absolute; bottom:28px; left:50%; width:min(1240px,calc(100% - 64px)); transform:translateX(-50%); display:flex; align-items:center; gap:17px; font-size:9px; letter-spacing:2.35px; font-weight:750; color:#9b8cae; }
.bs-hero-bottom span:last-child { font-size:17px; color:#d2afd9; }

/* Intro value strip */
.bs-value-strip { background:white; border-bottom:1px solid #eee8f4; }
.bs-value-inner { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:31px 0; }
.bs-value-inner>div { display:flex; align-items:center; gap:15px; padding:7px 31px; border-right:1px solid #e9e2f1; }
.bs-value-inner>div:first-child { padding-left:0; }
.bs-value-inner>div:last-child { border-right:0; padding-right:0; }
.bs-value-icon { width:44px; height:44px; flex:0 0 44px; border-radius:15px; display:grid; place-items:center; color:#8e53e2; background:linear-gradient(145deg,#f0e8ff,#fff0f4); }
.bs-value-inner strong,.bs-value-inner small { display:block; }
.bs-value-inner strong { font-weight:850; font-size:13px; color:#302148; }
.bs-value-inner small { margin-top:4px; color:#8a8098; font-size:11px; }

/* Feature bento */
.bs-features { background:radial-gradient(ellipse at 95% 0%,#f5e7ff,transparent 35%),#fcfaff; }
.bs-bento-grid { display:grid; grid-template-columns:1.07fr .93fr; grid-template-rows:repeat(2,minmax(342px,auto)); gap:21px; }
.bs-bento { position:relative; min-height:341px; border-radius:28px; overflow:hidden; padding:34px 36px; isolation:isolate; transition:transform .32s,box-shadow .32s; }
.bs-bento:hover { transform:translateY(-6px); box-shadow:0 25px 58px #4c26771d; }
.bs-bento-copy { position:relative; z-index:2; max-width:325px; }
.bs-bento-index { font-size:10px; font-weight:850; letter-spacing:1.8px; display:block; margin-bottom:21px; }
.bs-bento h3 { font-size:clamp(25px,2.4vw,33px); line-height:1.13; letter-spacing:-1.25px; font-weight:850; margin:0 0 14px; }
.bs-bento p { font-size:12px; line-height:1.75; max-width:258px; margin:0; }
.bs-bento-design { background:linear-gradient(131deg,#25133f,#48216d 67%,#7843ac); color:white; }
.bs-bento-design::after { content:""; position:absolute; width:350px; height:350px; border-radius:50%; background:#c06cf342; filter:blur(35px); right:-90px; bottom:-110px; z-index:-1; }
.bs-bento-design .bs-bento-index { color:#d6b3fb; }
.bs-bento-design h3 { color:white; }
.bs-bento-design p { color:#dfcaee; }
.bs-card-collection { position:absolute; inset:0; pointer-events:none; }
.bs-profile-mini { position:absolute; display:flex; flex-direction:column; width:208px; height:280px; border-radius:22px; box-shadow:0 22px 45px #14052255; }
.bs-profile-mini-front { right:43px; bottom:-59px; padding:18px 18px; text-align:center; color:#25183f; transform:rotate(13deg); background:radial-gradient(circle at 100% 0%,#ffc5cf,transparent 42%),radial-gradient(circle at 0% 100%,#b38efa,transparent 50%),linear-gradient(145deg,#f7edff,#d9c8fc); border:2px solid #ffffff96; }
.bs-profile-mini-front img { object-fit:cover; width:75px; height:75px; border:4px solid white; border-radius:50%; margin:18px auto 11px; }
.bs-profile-mini-front strong { display:block; font-size:17px; letter-spacing:-.5px; }
.bs-profile-mini-front small { display:block; font-size:8px; font-weight:650; margin-top:4px; color:#7b6a98; }
.bs-mini-brand { font-size:10px; font-weight:850; text-align:left; }
.bs-mini-brand span { float:right; opacity:.5; }
.bs-mini-wave { position:absolute; bottom:-30px; height:87px; left:-30px; right:-30px; border-radius:50%; border:18px solid #fff2; box-shadow:0 0 0 20px #ffffff12,0 0 0 40px #ffffff0c; }
.bs-profile-mini-back { right:175px; bottom:-67px; transform:rotate(-17deg); background:linear-gradient(140deg,#24214f,#51308a,#7c54d5); border:1px solid #957bd7; text-align:center; color:white; padding:30px 14px; }
.bs-profile-monogram { font-size:76px; margin:14px auto 20px; font-weight:850; color:#d8c5fc; }.bs-profile-monogram span { font-size:18px; }
.bs-profile-mini-back strong { font-size:11px; }
.bs-profile-mini-back small { margin-top:6px; color:#c8b7e7; font-size:8px; letter-spacing:1.3px; }
.bs-bento-qr { background:linear-gradient(150deg,#faeffd 0%,#f4eaff 44%,#eadfff 100%); border:1px solid #eadcf9; }
.bs-bento-qr .bs-bento-index { color:#8958d3; }
.bs-bento-qr h3 { color:#291b4b; }
.bs-bento-qr p { color:#756987; }
.bs-qr-art { position:absolute; right:-12px; bottom:-65px; width:264px; height:275px; display:grid; place-items:center; }
.bs-qr-orbit { border-radius:50%; width:280px; height:280px; position:absolute; border:1px solid #b995f744; box-shadow:0 0 0 20px #b48ee412,0 0 0 41px #c8a9e917; }
.bs-orbit-two { transform:scale(.67); border-style:dashed; box-shadow:none; }
.bs-qr-white { width:180px; height:180px; background:white; padding:12px; border-radius:22px; box-shadow:0 20px 50px #966ac14d; transform:rotate(-12deg); }
.bs-qr-white img { width:100%; height:100%; object-fit:contain; }
.bs-qr-bubble { position:absolute; width:42px; height:42px; display:grid; place-items:center; border-radius:13px; color:white; box-shadow:0 10px 20px #8a5ace32; background:linear-gradient(145deg,#9061e9,#d88fd9); font-size:24px; }
.bs-qr-bubble-a { top:7px; right:37px; transform:rotate(16deg); }
.bs-qr-bubble-b { bottom:84px; left:0; transform:rotate(-15deg); }
.bs-bento-insights { background:linear-gradient(135deg,#f5f0ff,#fdf8ff); border:1px solid #eae1f9; }
.bs-bento-insights .bs-bento-index { color:#9968d7; }
.bs-bento-insights h3 { color:#2d2050; }
.bs-bento-insights p { color:#78718e; }
.bs-insight-art { position:absolute; right:-34px; bottom:-20px; width:350px; height:228px; padding:18px 24px; background:white; border:1px solid #eee2f7; border-radius:22px; box-shadow:0 25px 55px #8b5eb51c; transform:rotate(-6deg); }
.bs-insight-head { display:flex; justify-content:space-between; gap:8px; align-items:center; font-size:12px; font-weight:850; }
.bs-insight-head small { color:#ada1bf; font-size:8px; margin-left:3px; font-weight:800; }
.bs-trend-pill { font-size:9px; padding:5px 8px; color:#289972; border-radius:22px; background:#e9faf2; }
.bs-insight-value { font-size:34px; font-weight:850; margin-top:8px; letter-spacing:-1.5px; }
.bs-insight-value span { color:#9e91b2; font-size:11px; font-weight:600; letter-spacing:0; }
.bs-insight-art svg { display:block; height:94px; width:100%; margin-top:-9px; }
.bs-insight-axis { display:flex; justify-content:space-between; color:#aa9dbb; font-size:8px; letter-spacing:1px; }
.bs-bento-network { background:linear-gradient(125deg,#fff4ed,#fff9f5 62%,#fff5f9); border:1px solid #f9e7e1; }
.bs-bento-network .bs-bento-index { color:#db866a; }
.bs-bento-network h3 { color:#382240; }
.bs-bento-network p { color:#907d87; }
.bs-network-art { position:absolute; right:25px; bottom:-30px; width:230px; transform:rotate(7deg); display:grid; gap:9px; }
.bs-network-person { display:grid; grid-template-columns:37px 1fr 15px; grid-template-rows:19px 17px; gap:0 9px; align-items:center; padding:11px; background:#fff; border-radius:13px; box-shadow:0 10px 25px #b8796e22; border:1px solid #fff6fa; }
.bs-network-person>span { grid-row:span 2; width:35px; height:35px; border-radius:11px; display:grid; place-items:center; color:#8c4da3; background:#f0d8f0; font-size:11px; font-weight:850; }
.bs-network-person:nth-child(2)>span { background:#d4e5fc; color:#4671a3; }
.bs-network-person:nth-child(3)>span { background:#ffe2d3; color:#b87754; }
.bs-network-person strong { font-size:10px; overflow:hidden; white-space:nowrap; }
.bs-network-person small { font-size:9px; color:#93849d; white-space:nowrap; overflow:hidden; }
.bs-network-person b { grid-column:3; grid-row:span 2; color:#2ab08f; font-size:12px; }

/* iOS preview gallery. Screen images are bundled local PNGs, never remote placeholders. */
.bs-app-section { background:linear-gradient(155deg,#1a102e 0%,#23143e 50%,#1c1136 100%); color:white; position:relative; isolation:isolate; overflow:hidden; }
.bs-app-section::before { content:""; position:absolute; inset:0; background:radial-gradient(ellipse at 21% 48%,#9f5dd743,transparent 40%),radial-gradient(ellipse at 99% 15%,#db7baf22,transparent 45%); pointer-events:none; z-index:-1; }
.bs-app-section .bs-section-kicker { color:#cda9fc; }
.bs-app-heading { display:flex; justify-content:space-between; align-items:end; gap:36px; margin-bottom:32px; }
.bs-app-heading h2 { color:white; font-size:clamp(38px,5.3vw,65px); letter-spacing:-2.9px; line-height:1.06; font-weight:850; margin:21px 0 0; }
.bs-app-heading h2 span { color:#e8a7e9; }
.bs-app-heading p { color:#bdb0cd; font-size:15px; line-height:1.8; max-width:385px; margin:0 5px 5px 0; }
.bs-app-showcase { display:grid; grid-template-columns:1fr 1fr; min-height:615px; gap:56px; align-items:center; }
.bs-app-visual { height:635px; position:relative; display:flex; justify-content:center; align-items:center; }
.bs-app-orbit { width:530px; height:530px; position:absolute; border:1px solid #c592fb28; border-radius:50%; box-shadow:0 0 0 45px #ac6fec0b,0 0 0 89px #af71ec0a,0 0 0 130px #af71ec07; background:radial-gradient(ellipse,#a05fcb31,transparent 65%); }
.bs-app-spark { position:absolute; color:#f5b4db; }
.bs-app-spark-a { font-size:37px; top:83px; left:47px; }
.bs-app-spark-b { font-size:28px; bottom:96px; right:33px; }
.bs-device-gallery { width:270px; transform:rotate(-7deg); box-shadow:0 38px 75px #06020ca6,0 0 55px #a65bf82e; transition:transform .35s; }
.bs-device-gallery:hover { transform:rotate(-3deg) translateY(-5px); }
.bs-device-gallery img { transition:opacity .18s; }
.bs-gallery-float { position:absolute; bottom:91px; right:10px; background:#fff; color:#2d204b; border-radius:12px; padding:13px 18px; font-size:12px; font-weight:850; transform:rotate(5deg); box-shadow:0 18px 32px #0b041a80; }
.bs-gallery-float span { color:#a164ef; font-size:20px; margin-right:7px; }
.bs-app-content { padding:35px 0 35px 2px; }
.bs-app-overline { display:block; color:#d4b4f5; font-size:11px; letter-spacing:2px; font-weight:850; margin-bottom:20px; }
.bs-screen-tabs { display:flex; flex-wrap:wrap; gap:7px; border-bottom:1px solid #ffffff21; padding-bottom:19px; }
.bs-screen-tab { font-size:12px; color:#b8a8ce; padding:11px 16px; background:transparent; border:1px solid transparent; border-radius:10px; font-weight:800; transition:color .2s,background .2s; }
.bs-screen-tab:hover { color:white; background:#ffffff12; }
.bs-screen-tab.is-active { background:#f3eaff; color:#5d348e; border-color:#ffffff40; box-shadow:0 6px 25px #0201062a; }
.bs-screen-description { min-height:260px; padding:34px 0 25px; animation:bs-tab-arrive .35s ease both; }
.bs-screen-description[hidden] { display:none!important; }
.bs-screen-number { color:#cea9f5; font-size:11px; font-weight:850; letter-spacing:1.8px; }
.bs-screen-description h3 { font-size:clamp(26px,3vw,39px); line-height:1.15; letter-spacing:-1.6px; color:white; max-width:430px; margin:18px 0 19px; }
.bs-screen-description p { font-size:14px; line-height:1.9; color:#bdb0ce; max-width:410px; }
.bs-screen-chips { display:flex; flex-wrap:wrap; gap:8px; margin-top:24px; }
.bs-screen-chips span { font-size:10px; font-weight:750; color:#dec6ed; padding:8px 12px; border:1px solid #ad87d140; border-radius:99px; background:#ffffff0e; }
.bs-text-link { display:inline-flex; align-items:center; gap:9px; font-size:14px; font-weight:850; color:#f4c3e4; padding:13px 0; }
.bs-text-link:hover { color:white; }
.bs-text-link svg { transition:transform .2s; }
.bs-text-link:hover svg { transform:translateX(4px); }
.bs-preview-disclaimer { margin:24px 0 0; max-width:440px; font-size:10px; color:#9b8baa; line-height:1.65; }

/* Three-step journey */
.bs-journey { background:radial-gradient(ellipse at 10% 40%,#f5edff,transparent 47%),#fff; }
.bs-journey .bs-section-intro { margin-bottom:50px; }
.bs-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.bs-step { position:relative; padding:36px 32px 37px; border:1px solid #ebe4f4; border-radius:24px; background:#fff; box-shadow:0 12px 30px #4829780c; transition:transform .3s,box-shadow .3s; }
.bs-step:hover { transform:translateY(-6px); box-shadow:0 22px 38px #48297817; }
.bs-step-no { position:absolute; top:31px; right:32px; color:#d8cce6; font-size:26px; font-weight:850; letter-spacing:-1px; }
.bs-step-icon { width:62px; height:62px; display:grid; place-items:center; color:#8e54e0; border-radius:20px; margin-bottom:31px; background:linear-gradient(145deg,#efe3ff,#fff1f7); }
.bs-step h3 { font-size:21px; font-weight:850; color:#2b1d47; letter-spacing:-.5px; margin-bottom:11px; }
.bs-step p { font-size:13px; color:#827991; line-height:1.8; margin:0; }

/* Closing CTA */
.bs-final-section { background:#fff; padding:0 0 115px; }
.bs-final-cta { position:relative; isolation:isolate; overflow:hidden; min-height:408px; padding:76px 65px; border-radius:31px; background:radial-gradient(circle at 86% 23%,#ffadc68c,transparent 40%),radial-gradient(circle at 0% 100%,#4920a2c4,transparent 60%),linear-gradient(114deg,#5126ac,#9452e1 65%,#e37cc5); color:white; box-shadow:0 29px 75px #6c39be36; }
.bs-final-cta::after { content:""; position:absolute; width:540px; height:540px; border-radius:50%; border:1px solid #ffffff55; box-shadow:0 0 0 37px #ffffff10,0 0 0 77px #ffffff0d,0 0 0 119px #ffffff09; right:-160px; top:-30px; z-index:-1; }
.bs-final-decoration { position:absolute; right:16%; top:23%; font-size:145px; color:#ffffff23; transform:rotate(-16deg); }
.bs-final-kicker { color:#f7d9ff; font-size:11px; font-weight:850; letter-spacing:2.2px; }
.bs-final-cta h2 { color:#fff; font-size:clamp(39px,5.5vw,66px); line-height:1.07; letter-spacing:-3px; margin:15px 0 17px; font-weight:850; }
.bs-final-cta p { max-width:500px; font-size:14px; line-height:1.7; color:#f2e6ff; }
.bs-final-buttons { display:flex; align-items:center; gap:23px; margin-top:27px; flex-wrap:wrap; }
.bs-button-white { background:white; color:#552da3; box-shadow:0 12px 30px #3e157b55; }
.bs-button-white:hover { box-shadow:0 17px 35px #3e157b75; }
.bs-final-secondary { display:inline-flex; gap:9px; align-items:center; color:#fff; font-size:13px; font-weight:850; padding:11px 0; }
.bs-final-secondary:hover { color:#fbe1ff; }
.bs-final-footnote { display:flex; align-items:center; flex-wrap:wrap; gap:8px; color:#f6dafa; font-size:10px; margin-top:28px; font-weight:700; }
.bs-final-footnote svg { flex:0 0 auto; }

/* Motion is opt-in with JS so no-JS users never see invisible content. */
.js-bs-motion .bs-reveal { opacity:0; transform:translateY(24px); transition:opacity .75s ease,transform .75s cubic-bezier(.2,.75,.3,1); }
.js-bs-motion .bs-reveal.is-visible { opacity:1; transform:translateY(0); }
@keyframes bs-phone-float { 0%,100%{transform:translate(-50%,-48%) rotate(2.5deg)}50%{transform:translate(-50%,-50%) rotate(1deg)} }
@keyframes bs-note-bob { 0%,100%{translate:0 0}50%{translate:0 -9px} }
@keyframes bs-aurora { from { transform:translate(-16px,4px) scale(1) } to { transform:translate(28px,-17px) scale(1.13) } }
@keyframes bs-tab-arrive { from { opacity:.35;transform:translateY(10px) } to { opacity:1;transform:translateY(0) } }

/* Existing customer web app: coherent visual language without changing APIs. */
.workspace-body:not(.admin-body) { background:radial-gradient(ellipse at 75% 0%,#eee1ff,transparent 48%),#f9f7ff; }
.workspace-body:not(.admin-body) .sidebar { background:linear-gradient(170deg,#22143e,#161027 80%); border-color:#ffffff0c; box-shadow:10px 0 45px #2b154521; }
.workspace-body:not(.admin-body) .sidebar .brand-name { color:white; }
.workspace-body:not(.admin-body) .sidebar .brand-name small { color:#bda8d9; }
.workspace-body:not(.admin-body) .sidebar-label { color:#8f7ba8; }
.workspace-body:not(.admin-body) .nav-link { color:#b1a3c6; border-radius:12px; }
.workspace-body:not(.admin-body) .nav-link:hover { background:#ffffff14; color:white; }
.workspace-body:not(.admin-body) .nav-link.active { background:linear-gradient(100deg,#8f54ec,#b56ff4); color:white; box-shadow:0 10px 26px #05010b3b; }
.workspace-body:not(.admin-body) .nav-link.active svg { color:white; }
.workspace-body:not(.admin-body) .user-mini { border-top-color:#ffffff1c; }
.workspace-body:not(.admin-body) .user-mini strong { color:white; }
.workspace-body:not(.admin-body) .user-mini small { color:#b5a4ca; }
.workspace-body:not(.admin-body) .sidebar .icon-button { color:#d3c0eb; }
.workspace-body:not(.admin-body) .sidebar .icon-button:hover { background:#ffffff16; color:white; }
.workspace-body:not(.admin-body) .upgrade-mini { background:linear-gradient(125deg,#7435b4,#ad60d7 58%,#e986be); border-color:#b982f3; box-shadow:0 15px 35px #07020c38; }
.workspace-body:not(.admin-body) .top-bar { background:#ffffffdd; border-bottom:1px solid #eee5f6; backdrop-filter:blur(20px); }
.workspace-body:not(.admin-body) .page-heading { position:relative; isolation:isolate; overflow:hidden; padding:30px 35px; border-radius:24px; background:radial-gradient(ellipse at 85% -80%,#c68ffb88,transparent 60%),linear-gradient(114deg,#241540,#48276c 61%,#6c3a98); box-shadow:0 15px 37px #42256222; margin-bottom:26px; }
.workspace-body:not(.admin-body) .page-heading::after { content:""; position:absolute; z-index:-1; border:1px solid #ffffff1d; width:280px; height:280px; border-radius:50%; right:-45px; bottom:-195px; box-shadow:0 0 0 25px #ffffff0e,0 0 0 53px #ffffff08; }
.workspace-body:not(.admin-body) .page-heading h1 { color:white; font-size:clamp(24px,2.7vw,36px); line-height:1.2; letter-spacing:-1.1px; }
.workspace-body:not(.admin-body) .page-heading p { color:#d8c9e7; font-size:13px; }
.workspace-body:not(.admin-body) .page-heading .eyebrow { color:#d4acfb; }
.workspace-body:not(.admin-body) .page-heading .heading-spark { color:#ffc6d6; }
.workspace-body:not(.admin-body) .page-heading .btn.secondary { background:#ffffff20; color:white; border:1px solid #ffffff66; }
.workspace-body:not(.admin-body) .page-heading .btn:not(.secondary) { background:#fff; color:#563188; box-shadow:0 9px 25px #0d042b45; }
.workspace-body:not(.admin-body) .metrics-grid { gap:18px; }
.workspace-body:not(.admin-body) .metric-card { position:relative; overflow:hidden; border:1px solid #ebe1f7; background:linear-gradient(150deg,#fff,#fbf8ff); border-radius:21px; box-shadow:0 10px 25px #66469b12; transition:transform .25s,box-shadow .25s; }
.workspace-body:not(.admin-body) .metric-card:hover { transform:translateY(-4px); box-shadow:0 18px 35px #66469b1d; }
.workspace-body:not(.admin-body) .metric-card .metric-top svg { color:#985be9; }
.workspace-body:not(.admin-body) .metric-card:nth-child(2) { background:linear-gradient(145deg,#fff,#f4f5ff); }
.workspace-body:not(.admin-body) .metric-card:nth-child(3) { background:linear-gradient(145deg,#fff,#f2fffb); }
.workspace-body:not(.admin-body) .metric-premium { background:linear-gradient(145deg,#7643db,#ad63dd 65%,#e58fc8)!important; border-color:#b58de5; }
.workspace-body:not(.admin-body) .metric-premium .metric-top svg { color:white; }
.workspace-body:not(.admin-body) .card-item { border-radius:24px; overflow:hidden; transition:transform .26s,box-shadow .26s; box-shadow:0 12px 30px #54348014; }
.workspace-body:not(.admin-body) .card-item:hover { transform:translateY(-5px); box-shadow:0 24px 40px #54348024; }
.workspace-body:not(.admin-body) .card-item-art { background:radial-gradient(ellipse at 50% 3%,#ffe2ed,#eee1ff 62%,#dcd3fd); }
.workspace-body:not(.admin-body) .seo-quick-banner { border:1px solid #ddcef9; background:linear-gradient(110deg,#f2eaff,#fff7fb); box-shadow:0 11px 23px #6d3da015; transition:transform .23s,box-shadow .23s; }
.workspace-body:not(.admin-body) .seo-quick-banner:hover { transform:translateY(-2px); box-shadow:0 16px 29px #6d3da025; }
.workspace-body:not(.admin-body) .panel { box-shadow:0 13px 36px #633d9710; border-radius:23px; }
.workspace-body:not(.admin-body) .btn { transition:transform .25s,box-shadow .25s; }
.workspace-body:not(.admin-body) .btn:hover:not([disabled]) { transform:translateY(-2px); }
.workspace-body:not(.admin-body) .top-actions .btn.ghost { background:#f0e9ff; color:#7742bd; }
.workspace-body:not(.admin-body) .workspace-footer { color:#9d92b0; }

/* Login and signup — keep all existing CAPTCHA/verification controls functional. */
.public-body:not(.landing-body) .auth-section { border:1px solid #eae0f7; background:white; box-shadow:0 25px 70px #66409c1a; border-radius:27px; }
.public-body:not(.landing-body) .auth-panel { background:white; }
.public-body:not(.landing-body) .auth-panel h1 { color:#24183f; font-size:clamp(30px,3.3vw,44px); letter-spacing:-1.75px; }
.public-body:not(.landing-body) .auth-emblem { background:linear-gradient(135deg,#a46af4,#e08edc); color:white; box-shadow:0 9px 20px #9c66e53d; }
.public-body:not(.landing-body) .auth-aside { position:relative; background:radial-gradient(ellipse at 85% 70%,#e690ec83,transparent 55%),linear-gradient(150deg,#20123d,#5e36a4 60%,#9861cb); overflow:hidden; min-height:550px; }
.public-body:not(.landing-body) .auth-aside h2 { position:relative; z-index:2; color:white; font-size:clamp(29px,3.2vw,44px); max-width:355px; }
.public-body:not(.landing-body) .auth-aside>p { position:relative; z-index:2; color:#efe2ff; max-width:325px; }
.public-body:not(.landing-body) .auth-aside .eyebrow { color:#e2beff; }
.public-body:not(.landing-body) .auth-art-decor { font-size:0; position:absolute; right:38px; bottom:-195px; height:445px; width:206px; border:6px solid #241533; border-radius:32px; transform:rotate(12deg); background:#fff url('../img/ios-preview-home.png') center/100% 100% no-repeat; box-shadow:0 25px 45px #1a083d8c; }

@media (min-width:1440px) {
  .bs-hero-inner { grid-template-columns:1.01fr .99fr; }
  .bs-device-main { width:296px; }
  .bs-device-side { width:225px; }
}
@media (max-width:1150px) {
  .bs-hero-copy h1 { font-size:clamp(49px,5.7vw,70px); letter-spacing:-3.4px; }
  .bs-hero-inner { gap:0; }
  .bs-hero-visual { transform:scale(.89); transform-origin:50% 52%; }
  .bs-floating-note-top { right:-5px; }
  .bs-floating-note-bottom { left:-25px; }
  .bs-bento { padding:30px; }
  .bs-bento-copy { max-width:235px; }
  .bs-bento h3 { font-size:28px; }
  .bs-profile-mini-front { right:12px; }
  .bs-profile-mini-back { right:129px; }
  .bs-insight-art { width:294px; }
}
@media (max-width:900px) {
  .bs-container { width:min(720px,calc(100% - 44px)); }
  .bs-section { padding:88px 0; }
  .bs-hero-inner { grid-template-columns:1fr; min-height:0; padding-top:69px; }
  .bs-hero-copy { max-width:700px; margin:0 auto; text-align:center; padding:12px 0 10px; }
  .bs-hero-copy h1 { font-size:clamp(48px,8vw,76px); max-width:730px; line-height:1.06; }
  .bs-gradient-text { display:inline; }
  .bs-hero-description { margin-inline:auto; }
  .bs-hero-actions,.bs-hero-proof { justify-content:center; }
  .bs-hero-visual { height:595px; width:100%; transform:scale(.88); transform-origin:50% 47%; }
  .bs-floating-note-top { right:9%; }
  .bs-floating-note-bottom { left:7%; }
  .bs-hero { min-height:0; }
  .bs-hero-bottom { bottom:25px; }
  .bs-value-inner>div { gap:10px; padding-inline:14px; }
  .bs-value-inner strong { font-size:11px; }
  .bs-value-inner small { font-size:10px; }
  .bs-value-icon { width:39px; height:39px; flex-basis:39px; }
  .bs-bento-grid { grid-template-columns:1fr 1fr; grid-template-rows:repeat(2,minmax(400px,auto)); }
  .bs-bento-copy { max-width:none; }
  .bs-bento { padding:28px; }
  .bs-bento h3 { font-size:27px; }
  .bs-bento p { max-width:300px; }
  .bs-card-collection { opacity:.93; }
  .bs-profile-mini-front { right:16px; bottom:-97px; }
  .bs-profile-mini-back { right:110px; bottom:-112px; }
  .bs-app-showcase { gap:15px; }
  .bs-app-visual { height:572px; }
  .bs-device-gallery { width:233px; }
  .bs-gallery-float { right:-5px; bottom:88px; font-size:10px; }
  .bs-app-orbit { width:405px; height:405px; }
  .bs-screen-tab { padding:10px 12px; }
  .bs-steps { gap:12px; }
  .bs-step { padding:25px 23px; }
}
@media (max-width:820px) {
  /* Mobile menu is still the project's accessible native <details> menu. */
  body.public-body.landing-body { padding-top:var(--byshare-mobile-nav); }
  .landing-body .public-header { position:fixed!important; background:#160f2ef5!important; border-bottom-color:#ffffff24; height:var(--byshare-mobile-nav); padding:10px 19px!important; box-shadow:0 7px 22px #0a03202a; }
  .landing-body .public-header .public-nav-mobile-links { background:#fff!important; border-color:#ede4fb; }
  .landing-body .public-header .public-nav-mobile-links>a:not(.btn) { color:#3a265a; }
  .landing-body .public-header .public-nav-mobile-links>a[aria-current="page"] { background:#f2e9ff!important; color:#794ac8!important; }
  .landing-body .public-header .public-nav-mobile-links>a.btn { color:#fff; }
  .landing-body .public-header .public-menu-summary { min-width:75px; }
  .workspace-body:not(.admin-body) .sidebar-mobile-close { background:#493066; color:white; border-color:#9471bc; }
}
@media (max-width:700px) {
  .bs-container { width:calc(100% - 38px); }
  .bs-section { padding:76px 0; }
  .bs-hero-inner { padding-top:38px; }
  .bs-hero-copy h1 { font-size:clamp(43px,9.2vw,63px); letter-spacing:-2.8px; margin:23px 0 21px; }
  .bs-hero-description { font-size:14px; line-height:1.78; max-width:440px; }
  .bs-hero-announcement { font-size:9px; letter-spacing:1px; padding:9px 12px; }
  .bs-hero-actions { margin:27px 0 28px; gap:10px; }
  .bs-hero-actions .bs-button { min-height:51px; }
  .bs-hero-proof { text-align:left; }
  .bs-hero-visual { height:515px; transform:scale(.73); transform-origin:50% 40%; margin-top:-4px; margin-bottom:0; }
  .bs-floating-note { display:none; }
  .bs-hero-bottom { display:none; }
  .bs-value-inner { grid-template-columns:1fr; padding:17px 0; gap:4px; }
  .bs-value-inner>div,.bs-value-inner>div:first-child,.bs-value-inner>div:last-child { padding:13px 5px; border:0; }
  .bs-value-inner strong { font-size:13px; }
  .bs-value-inner small { font-size:11px; }
  .bs-section-intro { margin-bottom:38px; }
  .bs-section-intro h2,.bs-app-heading h2 { font-size:clamp(37px,9vw,52px); letter-spacing:-2px; }
  .bs-section-intro p { font-size:14px; line-height:1.8; }
  .bs-bento-grid { grid-template-columns:1fr; grid-template-rows:none; gap:16px; }
  .bs-bento { min-height:348px; padding:29px; }
  .bs-bento-copy { max-width:260px; }
  .bs-bento h3 { font-size:29px; }
  .bs-profile-mini-front { right:20px; bottom:-93px; }
  .bs-profile-mini-back { right:150px; bottom:-99px; }
  .bs-bento-qr .bs-qr-art { right:0; bottom:-83px; }
  .bs-bento-insights .bs-insight-art { right:-35px; bottom:-71px; }
  .bs-bento-network .bs-network-art { right:19px; bottom:-63px; }
  .bs-app-heading { display:block; }
  .bs-app-heading p { font-size:14px; max-width:560px; margin-top:21px; }
  .bs-app-showcase { grid-template-columns:1fr; gap:15px; }
  .bs-app-visual { height:575px; order:1; }
  .bs-device-gallery { width:248px; }
  .bs-app-orbit { width:440px; height:440px; }
  .bs-gallery-float { right:5%; bottom:73px; }
  .bs-app-content { order:2; padding:0; }
  .bs-screen-description { min-height:0; padding:30px 0 20px; }
  .bs-screen-description h3 { font-size:31px; }
  .bs-app-overline { margin-bottom:12px; }
  .bs-app-section { padding-bottom:81px; }
  .bs-steps { grid-template-columns:1fr; gap:15px; }
  .bs-step { padding:29px; }
  .bs-step-icon { margin-bottom:22px; }
  .bs-final-section { padding-bottom:65px; }
  .bs-final-cta { min-height:0; padding:52px 30px; border-radius:25px; }
  .bs-final-cta h2 { font-size:clamp(36px,9vw,51px); letter-spacing:-2px; }
  .bs-final-cta p { font-size:13px; }
  .bs-final-cta::after { right:-380px; }
  .bs-final-decoration { right:0; opacity:.5; }
  .workspace-body:not(.admin-body) .page-heading { padding:26px 21px; }
  .workspace-body:not(.admin-body) .metrics-grid { gap:11px; }
}
@media (max-width:440px) {
  .bs-container { width:calc(100% - 34px); }
  .bs-hero-copy h1 { font-size:clamp(41px,10.6vw,51px); letter-spacing:-2.7px; }
  .bs-hero-announcement { font-size:8px; letter-spacing:.75px; }
  .bs-hero-actions { flex-direction:column; align-items:stretch; }
  .bs-hero-actions .bs-button { width:100%; }
  .bs-hero-proof strong { font-size:11px; }
  .bs-hero-proof small { font-size:10px; }
  .bs-hero-visual { transform:scale(.62); margin-top:-4px; margin-bottom:-57px; height:530px; }
  .bs-device-main { width:265px; }
  .bs-bento { padding:26px; }
  .bs-bento-copy { max-width:238px; }
  .bs-bento h3 { font-size:27px; }
  .bs-bento p { max-width:218px; }
  .bs-profile-mini-front { right:8px; bottom:-100px; }
  .bs-profile-mini-back { right:118px; bottom:-110px; }
  .bs-app-visual { height:548px; }
  .bs-app-orbit { width:330px; height:330px; }
  .bs-device-gallery { width:224px; }
  .bs-gallery-float { right:-5px; bottom:76px; font-size:9px; }
  .bs-screen-tabs { gap:3px; }
  .bs-screen-tab { padding:10px 11px; font-size:11px; }
  .bs-screen-description h3 { font-size:29px; }
  .bs-final-cta { padding:48px 24px; }
  .bs-final-buttons .bs-button { width:100%; }
}

/* Keep mobile-only toolbar controls off the full desktop workspace. */
@media (min-width:851px) {
  .workspace-body .top-bar .mobile-only { display:none!important; }
}
@media (max-width:600px) {
  /* The narrow SEO reminder uses a two-column grid, not a cramped flex line. */
  .workspace-body:not(.admin-body) .seo-quick-banner {
    display:grid; grid-template-columns:44px minmax(0,1fr);
    align-items:center; column-gap:12px; row-gap:12px; padding:18px 16px;
  }
  .workspace-body:not(.admin-body) .seo-quick-banner .feature-symbol {
    grid-column:1; grid-row:1; width:44px; height:44px;
  }
  .workspace-body:not(.admin-body) .seo-quick-banner .seo-quick-copy {
    grid-column:2; grid-row:1; min-width:0; width:100%; flex:none;
  }
  .workspace-body:not(.admin-body) .seo-quick-banner .seo-quick-copy strong {
    font-size:13px; line-height:1.4;
  }
  .workspace-body:not(.admin-body) .seo-quick-banner .seo-quick-copy small {
    font-size:11px; line-height:1.5;
  }
  .workspace-body:not(.admin-body) .seo-quick-banner .seo-quick-cta {
    grid-column:2; grid-row:2; margin-left:0; justify-self:start;
  }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .bs-landing *, .bs-landing *::before, .bs-landing *::after { animation:none!important; transition-duration:.01ms!important; }
  .js-bs-motion .bs-reveal { opacity:1!important; transform:none!important; }
}

/*
 * ByShare v24.1 — Luminous Edition
 * A bright, violet-forward treatment of the same premium UI. This is deliberately
 * a presentation-only layer: it retains existing markup, routes and JS behavior.
 */
:root {
  --bs-ink:#292044;
  --bs-surface:#fffdfd;
  --bs-subtle:#716681;
}

/* Airy glass navigation with dark readable controls. */
body.public-body.landing-body { background:#fffdfd; }
.landing-body .public-header {
  background:#ffffffed;
  border-bottom:1px solid #eae1f4;
  box-shadow:0 8px 28px #42306b0b;
}
.landing-body .public-header .brand-name { color:#2e214a; }
.landing-body .public-header .public-nav-desktop>a:not(.btn) { color:#665977; }
.landing-body .public-header .public-nav-desktop>a:not(.btn):hover,
.landing-body .public-header .public-nav-desktop>a[aria-current="page"]:not(.btn) { color:#7540cd; }
.landing-body .public-header .public-nav-desktop>a.btn {
  background:linear-gradient(105deg,#7445d6,#ad63e6);
  color:#fff;
  box-shadow:0 9px 24px #8d5ade39;
}
.landing-body .public-header .public-nav-desktop>a.btn:hover { box-shadow:0 13px 29px #8d5ade55; }
.landing-body .public-header .public-menu-summary {
  color:#4a346a;
  background:#f6efff;
  border-color:#e5d5f8;
}
.landing-body .public-header .menu-summary-label { color:#4a346a; }
.landing-body .public-footer { color:#7d718b; }

/* The first impression is now light, spacious and luminous. */
.bs-hero {
  color:#30234d;
  background:
    radial-gradient(ellipse at 87% 28%,#dcc2ffb8,transparent 42%),
    radial-gradient(ellipse at 76% 78%,#ffd8e6ab,transparent 39%),
    linear-gradient(118deg,#fffefd 0%,#fcf9ff 44%,#f4edff 79%,#fff5fa 100%);
}
.bs-hero::before {
  opacity:.40;
  background-image:radial-gradient(#a580e65c 1px,transparent 1px);
}
.bs-hero::after { background:linear-gradient(0deg,#fffafea3,transparent); }
.bs-hero-glow-one { background:radial-gradient(ellipse,#b386e8ad 0%,#ac83f44c 43%,transparent 73%); opacity:.78; }
.bs-hero-glow-two { background:radial-gradient(ellipse,#f8a3cf85 0%,#ad89e744 52%,transparent 72%); opacity:.62; }
.bs-hero-noise { opacity:.42; background:linear-gradient(118deg,transparent 30%,#ffffff95 57%,transparent 75%); }
.bs-hero-announcement {
  color:#7444b6;
  border-color:#e4d1f7;
  background:#ffffffbd;
  box-shadow:0 7px 25px #bda5d52b;
}
.bs-hero-announcement:hover { background:#fff; }
.bs-announcement-arrow { color:#9960cf; }
.bs-live-dot { background:#20c29d; box-shadow:0 0 0 4px #20c29d19,0 0 14px #20c29d55; }
.bs-hero-copy h1 { color:#2d204b; }
.bs-gradient-text {
  background:linear-gradient(101deg,#7140d1 0%,#9c4edc 45%,#d86c9e 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.bs-hero-description { color:#6e6380; }
.bs-button-primary {
  color:#fff;
  background:linear-gradient(113deg,#7546da,#a454e4 66%,#c473d2);
  box-shadow:0 17px 39px #8e59d63b;
}
.bs-button-primary:hover { box-shadow:0 20px 46px #8d57d658; }
.bs-button-outline {
  background:#ffffffba;
  border-color:#ded0f0!important;
  color:#553a82;
  box-shadow:0 9px 26px #a17db11a;
}
.bs-button-outline:hover { background:#fff; box-shadow:0 12px 28px #a17db12a; }
.bs-play-icon { border-color:#bba3e7; color:#8a59d8; }
.bs-hero-proof strong { color:#463654; }
.bs-hero-proof small { color:#82738f; }
.bs-avatar-stack span { border-color:#fff; box-shadow:0 2px 8px #6e43891b; }
.bs-avatar-stack span:nth-child(4) { background:#f0e4ff; color:#7448b6; }
.bs-hero-halo { background:radial-gradient(ellipse,#b382f8a8 0%,#e4a5e57c 37%,transparent 74%); }
.bs-device { box-shadow:0 30px 72px #3d235d42,inset 0 0 0 2px #030107,0 0 0 1px #9e8da455; }
.bs-floating-note { box-shadow:0 16px 39px #5e42802f; border-color:#fff; }
.bs-hero-bottom { color:#8d7aa6; }
.bs-hero-bottom span:last-child { color:#9168d1; }

/* Keep all feature tiles in the same light tonal family. */
.bs-features { background:radial-gradient(ellipse at 98% 0%,#f4e6ff,transparent 34%),#fffdfd; }
.bs-bento-design {
  color:#2f204c;
  background:linear-gradient(132deg,#e9dfff 0%,#f3e9ff 49%,#ffeaf3 100%);
  border:1px solid #e4d6fa;
}
.bs-bento-design::after { background:#d9a5e65b; }
.bs-bento-design .bs-bento-index { color:#8654c9; }
.bs-bento-design h3 { color:#30204f; }
.bs-bento-design p { color:#756383; }
.bs-profile-mini { box-shadow:0 22px 45px #6142852f; }

/* iOS gallery: lavender display pedestal instead of a dark full-width band. */
.bs-app-section {
  color:#2d2148;
  background:
    radial-gradient(ellipse at 13% 44%,#dfc7ffbb,transparent 38%),
    radial-gradient(ellipse at 96% 16%,#ffd6e7a6,transparent 39%),
    linear-gradient(132deg,#faf6ff,#f7f0ff 56%,#fff9fc);
}
.bs-app-section::before {
  background:radial-gradient(ellipse at 16% 52%,#b18ee743,transparent 37%),radial-gradient(ellipse at 98% 84%,#f6b6d230,transparent 50%);
}
.bs-app-section .bs-section-kicker { color:#8752c9; }
.bs-app-heading h2 { color:#2d204b; }
.bs-app-heading h2 span { color:#9452d5; }
.bs-app-heading p { color:#756885; }
.bs-app-orbit {
  border-color:#aa78e34a;
  box-shadow:0 0 0 45px #b887ef1a,0 0 0 89px #bb8df014,0 0 0 130px #c196f30e;
  background:radial-gradient(ellipse,#d8b7fa75,transparent 66%);
}
.bs-app-spark { color:#be70d2; }
.bs-device-gallery { box-shadow:0 34px 70px #5e427c53,0 0 55px #ac70e544; }
.bs-gallery-float { box-shadow:0 15px 31px #5b40772c; border:1px solid #f2e8ff; }
.bs-app-overline { color:#8551bf; }
.bs-screen-tabs { border-bottom-color:#ddcff0; }
.bs-screen-tab { color:#766889; background:#ffffff91; border-color:#e7dcf3; }
.bs-screen-tab:hover { color:#7847c0; background:#fff; }
.bs-screen-tab.is-active { background:#8650d3; border-color:#8650d3; color:#fff; box-shadow:0 7px 19px #8a55d039; }
.bs-screen-number { color:#8954cd; }
.bs-screen-description h3 { color:#2d204b; }
.bs-screen-description p { color:#786a84; }
.bs-screen-chips span { color:#72538c; background:#ffffffb8; border-color:#dfc7ed; }
.bs-text-link { color:#7643c4; }
.bs-text-link:hover { color:#54298f; }
.bs-preview-disclaimer { color:#86798f; }

/* Closing statement stays celebratory without reverting to near-black. */
.bs-final-section { background:#fffdfd; }
.bs-final-cta {
  color:#31204c;
  background:
    radial-gradient(circle at 88% 13%,#ffaed4c9,transparent 42%),
    radial-gradient(circle at 5% 100%,#c9a5fdc1,transparent 60%),
    linear-gradient(110deg,#f0e5ff,#eedbff 55%,#ffe5f1);
  border:1px solid #e3cef5;
  box-shadow:0 27px 65px #9c72c929;
}
.bs-final-cta::after { border-color:#ffffff9c; box-shadow:0 0 0 37px #ffffff25,0 0 0 77px #ffffff19,0 0 0 119px #ffffff15; }
.bs-final-decoration { color:#ad79d53c; }
.bs-final-kicker { color:#8250b6; }
.bs-final-cta h2 { color:#2f204c; }
.bs-final-cta p { color:#665776; }
.bs-button-white { background:linear-gradient(112deg,#7848db,#b262e0); color:#fff; box-shadow:0 13px 31px #8a54d045; }
.bs-button-white:hover { box-shadow:0 16px 34px #8a54d05e; }
.bs-final-secondary { color:#6c3ba8; }
.bs-final-secondary:hover { color:#48276d; }
.bs-final-footnote { color:#766485; }

/* Customer portal: a light navigation rail and welcoming lavender header. */
.workspace-body:not(.admin-body) { background:radial-gradient(ellipse at 75% 0%,#f1e7ff,transparent 49%),#fbf9ff; }
.workspace-body:not(.admin-body) .sidebar {
  background:linear-gradient(171deg,#fff,#fcfaff 83%);
  border-color:#ebe4f3;
  box-shadow:8px 0 34px #70568a10;
}
.workspace-body:not(.admin-body) .sidebar .brand-name { color:#2f204a; }
.workspace-body:not(.admin-body) .sidebar .brand-name small { color:#8d76a3; }
.workspace-body:not(.admin-body) .sidebar-label { color:#9789a9; }
.workspace-body:not(.admin-body) .nav-link { color:#675b78; }
.workspace-body:not(.admin-body) .nav-link:hover { background:#f2ebff; color:#7444be; }
.workspace-body:not(.admin-body) .nav-link.active {
  background:linear-gradient(100deg,#eee2ff,#f4e8ff);
  color:#703ac5;
  box-shadow:inset 3px 0 #9259e0,0 7px 17px #bca2e72c;
}
.workspace-body:not(.admin-body) .nav-link.active svg { color:#834bd1; }
.workspace-body:not(.admin-body) .nav-star { color:#995fe2; }
.workspace-body:not(.admin-body) .user-mini { border-top-color:#eae1f0; }
.workspace-body:not(.admin-body) .user-mini strong { color:#312449; }
.workspace-body:not(.admin-body) .user-mini small { color:#8b7e99; }
.workspace-body:not(.admin-body) .sidebar .icon-button { color:#8469a0; }
.workspace-body:not(.admin-body) .sidebar .icon-button:hover { background:#f0e8ff; color:#6538ad; }
.workspace-body:not(.admin-body) .upgrade-mini {
  background:linear-gradient(127deg,#f0e4ff,#f9e8f7 74%,#ffeef0);
  border-color:#dec9f9;
  box-shadow:0 12px 28px #9f72c322;
  color:#3f255e;
}
.workspace-body:not(.admin-body) .upgrade-mini p { color:#776285; }
.workspace-body:not(.admin-body) .upgrade-mini a { color:#7a43bc; }
.workspace-body:not(.admin-body) .upgrade-spark { color:#995ddd; }
.workspace-body:not(.admin-body) .top-bar { background:#fffefeea; }
.workspace-body:not(.admin-body) .page-heading {
  background:
    radial-gradient(ellipse at 85% -80%,#d4b7fcaa,transparent 63%),
    linear-gradient(117deg,#f2e9ff,#e9dbff 59%,#f8e7f9);
  border:1px solid #e1d0f5;
  box-shadow:0 14px 32px #7957a71c;
}
.workspace-body:not(.admin-body) .page-heading::after { border-color:#ffffff80; box-shadow:0 0 0 25px #ffffff4a,0 0 0 53px #ffffff38; }
.workspace-body:not(.admin-body) .page-heading h1 { color:#32204f; }
.workspace-body:not(.admin-body) .page-heading p { color:#6e6080; }
.workspace-body:not(.admin-body) .page-heading .eyebrow { color:#8052b7; }
.workspace-body:not(.admin-body) .page-heading .heading-spark { color:#9c55c6; }
.workspace-body:not(.admin-body) .page-heading .btn.secondary { background:#ffffffbf; color:#67449d; border-color:#c8addf; }
.workspace-body:not(.admin-body) .page-heading .btn:not(.secondary) { background:#8650d3; color:#fff; box-shadow:0 9px 24px #8356c044; }
.workspace-body:not(.admin-body) .metric-premium {
  background:linear-gradient(135deg,#9160db,#b57be0 67%,#e4add9)!important;
  border-color:#b58de5;
}

/* Sign-in marketing panel follows the light palette; form/CAPTCHA left untouched. */
.public-body:not(.landing-body) .auth-aside {
  background:
    radial-gradient(ellipse at 82% 66%,#efb5eabb,transparent 52%),
    linear-gradient(148deg,#efe4ff,#decafb 56%,#dbb5ef);
}
.public-body:not(.landing-body) .auth-aside h2 { color:#32204f; }
.public-body:not(.landing-body) .auth-aside>p { color:#69567c; }
.public-body:not(.landing-body) .auth-aside .eyebrow { color:#7c47bc; }
.public-body:not(.landing-body) .auth-art-decor { box-shadow:0 24px 50px #5c3d802f; }

@media (max-width:820px) {
  .landing-body .public-header {
    background:#ffffffef!important;
    border-bottom-color:#e9dff3;
    box-shadow:0 7px 23px #60458016;
  }
  .landing-body .public-header .public-menu-summary { background:#f3eafe; border-color:#ddcff0; color:#5b388a; }
  .landing-body .public-header .menu-summary-label { color:#5b388a; }
  .workspace-body:not(.admin-body) .sidebar-mobile-close { background:#f0e7ff; color:#6741a1; border-color:#d8c0f5; }
}

/* Light surfaces need a deep text color even when older portal rules set white. */
.workspace-body:not(.admin-body) .upgrade-mini strong { color:#3c255c; }
.workspace-body:not(.admin-body) .page-heading h1 em { color:#8742c3; }
