/* VOLENG V25.48 — premium but progressive: no API changes, no external fonts, no global input hijacking */
:root{--v48-blue:#2563eb;--v48-cyan:#09b8d2;--v48-purple:#7757ed;--v48-navy:#0b1d3a;--v48-line:#dfE7f5;--v48-focus:#7e9ffb}
/* marketing: better hierarchy and subtle real product depth */
body.marketing-v2533:not(.v49-home) .vb-hero{background:radial-gradient(ellipse at 78% 18%,rgba(98,79,224,.38),transparent 42%),radial-gradient(ellipse at 67% 98%,rgba(14,194,202,.2),transparent 42%),linear-gradient(115deg,#081730 0%,#102a59 52%,#1c1c53 100%)!important}
body.marketing-v2533:not(.v49-home) .vb-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 69% 24%,rgba(255,255,255,.14) 1px,transparent 1.7px);background-size:28px 28px;mask-image:linear-gradient(90deg,transparent 20%,#000 100%);opacity:.25;pointer-events:none}
body.marketing-v2533:not(.v49-home) .vb-hero .hero-copy{position:relative;z-index:1}
body.marketing-v2533:not(.v49-home) .hero-copy h1{font-weight:850!important;letter-spacing:-.068em!important;text-wrap:balance}
body.marketing-v2533:not(.v49-home) .suite-card,body.marketing-v2533:not(.v49-home) .sector-card,body.marketing-v2533:not(.v49-home) .v40-workflow-row{transform:translateZ(0);will-change:auto;transition:transform .26s cubic-bezier(.21,.8,.25,1),box-shadow .26s,border-color .26s!important}
body.marketing-v2533:not(.v49-home) .suite-card:hover,body.marketing-v2533:not(.v49-home) .sector-card:hover,body.marketing-v2533:not(.v49-home) .v40-workflow-row:hover{transform:translateY(-5px)!important;box-shadow:0 23px 50px rgba(22,47,102,.16)!important}
body.marketing-v2533:not(.v49-home) :is(.btn,.nav-book,.suite-card,.sector-card):focus-visible,body.v46-start :is(button,a,input):focus-visible,body.v48-pricing :is(button,a,input):focus-visible{outline:3px solid #7ca9ff;outline-offset:3px}
/* product-first checkout */
body.v46-start{background:radial-gradient(ellipse at 8% 47%,rgba(110,87,230,.065),transparent 40%),#f7f9fd}
body.v46-start .v46-top{box-shadow:0 7px 32px #1230630b}
body.v46-start .v46-backdrop{background:radial-gradient(ellipse at 79% 15%,rgba(93,72,217,.36),transparent 41%),radial-gradient(ellipse at 52% 110%,rgba(15,194,214,.23),transparent 50%),linear-gradient(115deg,#07162f,#102c59 56%,#211b56)}
body.v46-start .v46-preview{backdrop-filter:blur(18px);box-shadow:0 32px 70px rgba(0,9,33,.39),inset 0 1px rgba(255,255,255,.13);border-color:#adc7ff62}
body.v46-start .v46-mini-app{transition:transform .24s,background .24s;min-height:92px}
body.v46-start .v46-mini-app:hover{transform:translateY(-4px);background:#ffffff24}
body.v46-start .v46-panel,body.v46-start .v46-summary,body.v46-start .v46-account-card{border:1px solid #e0e9f8!important;border-radius:25px!important;box-shadow:0 22px 60px rgba(26,51,95,.09)!important}
body.v46-start .v46-product{position:relative;overflow:hidden;isolation:isolate;transition:transform .22s ease,box-shadow .22s,border-color .22s!important}
body.v46-start .v46-product::after{content:"";position:absolute;top:-80px;right:-85px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,#d7e8ff70,transparent 70%);pointer-events:none;z-index:-1}
body.v46-start .v46-product:hover{transform:translateY(-3px);box-shadow:0 17px 32px rgba(32,62,113,.13)!important}
body.v46-start .v46-summary{background:linear-gradient(170deg,#fff,#f3f8ff)!important}
body.v46-start .v46-cta,body.v46-start .v45-form button.primary{background:linear-gradient(105deg,#2655dd,#3777f5 56%,#08b7d1)!important;box-shadow:0 12px 25px rgba(29,99,218,.2);border:0}
body.v46-start .v46-cta:hover:not(:disabled),body.v46-start .v45-form button.primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 17px 31px rgba(29,99,218,.26)}
body.v46-start .v46-account-card{overflow:hidden;position:relative}
body.v46-start .v46-account-card::before{content:"";position:absolute;right:-75px;top:-100px;width:260px;height:250px;border-radius:50%;background:radial-gradient(circle,#8f7df51b,transparent 72%);pointer-events:none}
body.v46-start .v46-account-card > *{position:relative}
body.v46-start .v46-account-side{background:radial-gradient(ellipse at 98% 6%,#5644b76b,transparent 60%),linear-gradient(145deg,#0a2147,#112954 65%,#0f204a)!important;box-shadow:0 26px 50px #091f4c26!important}
body.v46-start .v45-form{gap:15px!important}
body.v46-start .v45-field{position:relative}
body.v46-start .v45-field > span{font-size:12px;font-weight:800;letter-spacing:.01em;color:#32466e}
body.v46-start .v45-field input{background:#fff!important;border:1.5px solid #d6e1f2!important;border-radius:13px!important;box-shadow:0 3px 10px #0c2e6407!important;padding:15px 16px!important;min-height:56px!important;transition:border .2s,box-shadow .2s!important}
body.v46-start .v45-field input:focus{outline:none!important;border-color:#608df0!important;box-shadow:0 0 0 4px rgba(72,117,230,.12)!important}
body.v46-start .v45-field:focus-within>span{color:#2f61ce}
body.v46-start .v45-check{border-radius:11px;padding:4px 2px;line-height:1.55}
body.v46-start .v45-check input{accent-color:#5545de}
body.v46-start .v45-status:not(:empty){padding:11px 14px;background:#edf6ff;border:1px solid #daedff;border-radius:12px;color:#315784;line-height:1.5}
/* OTP: one real input for SMS autocomplete + six decorative mirrors. Browser autocomplete and accessibility are preserved. */
.v48-otp{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;max-width:480px;margin-top:4px;cursor:text}
.v48-otp .v48-otp-box{height:62px;border:1.5px solid #d1def5;border-radius:14px;background:linear-gradient(145deg,#fff,#f3f7ff);display:grid;place-items:center;font-size:25px;font-weight:800;color:#193861;transition:background .18s,border-color .18s,box-shadow .18s}
.v48-otp .v48-otp-box.filled{background:#e8f3ff;border-color:#b2d6ff}
.v48-otp:focus-within .v48-otp-box.active{border-color:#506fe7;box-shadow:0 0 0 4px #5671ec24;background:#fff}
.v48-otp input.v48-otp-real{position:absolute;inset:0;width:100%;height:100%;opacity:0;z-index:3;cursor:text;letter-spacing:0;box-shadow:none!important}
.v48-otp-help{font-size:12px;color:#6a7892;margin-top:8px;display:flex;gap:10px;flex-wrap:wrap;justify-content:space-between}
.v48-otp-help button{font-weight:800;color:#365bd0;background:none;border:0;padding:0;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.v48-otp-help button:disabled{opacity:.48;cursor:not-allowed}
.v48-password-wrap{position:relative}.v48-password-wrap input{padding-right:54px!important}
.v48-eye{position:absolute;right:9px;top:50%;transform:translateY(-50%);height:39px;min-width:42px;border:0;background:#f2f5fd;color:#526688;border-radius:10px;font-weight:750;display:grid;place-items:center;cursor:pointer}
.v48-strength{height:5px;background:#edf2fa;border-radius:10px;overflow:hidden;margin-top:5px}.v48-strength > i{display:block;height:100%;width:var(--strength,0%);background:var(--strength-color,#8596ad);border-radius:10px;transition:width .2s}
.v48-strength-caption{font-size:11px;color:#677690;font-weight:650}
.v48-secure-head{display:flex;align-items:center;gap:10px;margin:8px 0 17px}.v48-secure-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;color:#fff;font-weight:900;background:linear-gradient(135deg,#2c63e4,#06b6d5);box-shadow:0 8px 18px #2876dc27}.v48-secure-head b{display:block;font-size:13px;color:#253f6f}.v48-secure-head small{display:block;font-size:11px;color:#798aa4;margin-top:3px}
/* reusable opt-in components for later product forms, not automatically modifying application data */
.v48-phone{display:flex;align-items:stretch;padding:4px;border:1.5px solid #d4dff2;border-radius:15px;background:#fff;transition:box-shadow .2s,border-color .2s}.v48-phone:focus-within{border-color:#6c71e9;box-shadow:0 0 0 4px #6969e91a}.v48-phone select{border:0;border-right:1px solid #e3eaf6;background:transparent;color:#30466f;max-width:110px;min-width:92px;padding:11px 9px;font-weight:800}.v48-phone input{flex:1;min-width:0;border:0;outline:none;padding:12px;background:transparent;color:#112849;font-size:15px}
.v48-drop{border:2px dashed #a99deb;border-radius:20px;background:radial-gradient(circle at 80% 12%,#ebe5ff,transparent 41%),linear-gradient(145deg,#fff,#f4f8ff);padding:27px 23px;text-align:center;transition:border-color .2s,box-shadow .2s}.v48-drop.dragging{border-color:#496ce4;box-shadow:0 0 0 5px #5976ed24}.v48-drop .v48-upload-symbol{display:grid;place-items:center;margin:0 auto 12px;border-radius:17px;background:linear-gradient(135deg,#8164ef,#448bf4);width:55px;height:55px;color:white;font-size:26px}.v48-drop b{font-size:18px}.v48-drop p{margin:7px 0;color:#677690}.v48-drop input[type=file]{max-width:100%;margin-top:9px}.v48-drop small{display:block;margin-top:11px;color:#7b8caa}.v48-file-list{margin:11px 0 0;padding:0;list-style:none;text-align:left}.v48-file-list li{padding:8px 11px;border-radius:9px;background:white;border:1px solid #e0e9f5;margin-top:7px;font-size:12px;color:#365078;overflow-wrap:anywhere}
.v48-datetime{border:1.5px solid #d9dcf6;border-radius:17px;background:#fff;padding:15px;box-shadow:0 10px 23px #182e5909}.v48-datetime label{display:block;font-size:12px;font-weight:800;color:#536ba0;margin-bottom:8px}.v48-datetime .v48-date-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.v48-datetime input{max-width:100%;min-width:0;background:#f8faff;border:1px solid #e1e6f4;border-radius:10px;padding:12px;color:#172951}.v48-datetime button{border:0;background:#f0edff;color:#6748d9;padding:9px 13px;border-radius:9px;font-weight:800;margin-top:11px}
.v48-split{display:inline-flex;border-radius:13px;background:linear-gradient(110deg,#2563eb,#7054e8);color:#fff;position:relative;box-shadow:0 11px 22px #415ce938}.v48-split button{background:none;border:0;color:inherit;font:inherit;padding:12px 16px;font-weight:780}.v48-split button+button{border-left:1px solid #ffffff52}.v48-split-menu{position:absolute;right:0;top:calc(100% + 8px);min-width:185px;padding:5px;background:#fff;border:1px solid #e3e8f1;border-radius:12px;box-shadow:0 18px 35px #142f602b;z-index:10}.v48-split-menu button{display:block;text-align:left;width:100%;border-radius:8px;color:#29456e;padding:10px 12px}.v48-split-menu button:hover{background:#eef4ff}
/* general pricing refinements, no price calculation changes */
body.v48-pricing{background:linear-gradient(#fff 0 100px,#f7f9fe 400px,#f8faff 100%)}
body.v48-pricing .mast{box-shadow:0 9px 30px #14305d0c}
body.v48-pricing :is(.card,.app-card,.price-card,.pricing-card){transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
body.v48-pricing :is(.card,.app-card,.price-card,.pricing-card):hover{transform:translateY(-3px);box-shadow:0 16px 30px #0b245016}
@media(max-width:720px){.v48-otp{gap:6px}.v48-otp .v48-otp-box{height:52px;font-size:22px;border-radius:11px}body.v46-start .v46-hero h1{font-size:clamp(34px,8vw,44px)!important}body.v46-start .v46-account-card,body.v46-start .v46-panel{border-radius:17px!important}.v48-datetime .v48-date-fields{grid-template-columns:1fr}.v48-secure-head{margin-top:3px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:0.01ms!important;animation-duration:0.01ms!important}body.v46-start .v46-product:hover,body.marketing-v2533:not(.v49-home) .suite-card:hover,body.marketing-v2533:not(.v49-home) .sector-card:hover{transform:none!important}}
