
/* =========================================================
   V16.1 CLEANUP PASS
   Consistent glass surfaces, simplified navigation and one
   unified desktop tool launcher. Loaded after all prior CSS.
   ========================================================= */
:root{
  --clean-bg:#02070d;
  --clean-surface:rgba(6,22,38,.78);
  --clean-surface-strong:rgba(4,17,30,.94);
  --clean-surface-soft:rgba(10,36,58,.62);
  --clean-line:rgba(112,213,255,.17);
  --clean-line-strong:rgba(112,220,255,.31);
  --clean-text:#f4f9fd;
  --clean-muted:#a5b8c8;
  --clean-blue:#168cff;
  --clean-cyan:#4de5ff;
  --clean-gold:#d0aa62;
  --clean-shadow:0 24px 70px rgba(0,0,0,.38);
  --clean-radius:22px;
}
html{color-scheme:dark;scroll-padding-top:88px}
body{background:radial-gradient(circle at 82% 8%,rgba(13,119,210,.12),transparent 27%),linear-gradient(180deg,#02070d 0%,#06111d 48%,#02070d 100%);color:var(--clean-text)}
body,button,input,select,textarea{font-synthesis:none}
::selection{background:rgba(54,205,255,.28);color:#fff}

/* One visual language for all cards and panels. */
.glass,.v16-glass,
.hero-card,.room-card,.state-license-panel,.feature,.process-step,.compare-card,
.form-layout,.appointment-grid>article,.library-card,.verification-card,.wallet-image,
.availability-console,.readiness-score-card,.readiness-checklist,.client-journey-shell,
.private-workspace,.prep-tool,.digital-credential-card,.coverage-studio-dialog,
.assistant-panel,.accessibility-panel,.profile-orb-panel,.term-popover,.a11y-audit-panel{
  background:
    linear-gradient(145deg,rgba(10,39,65,.76),rgba(3,14,25,.91))!important;
  border:1px solid var(--clean-line)!important;
  box-shadow:var(--clean-shadow),inset 0 1px 0 rgba(255,255,255,.055)!important;
  -webkit-backdrop-filter:blur(20px) saturate(125%);
  backdrop-filter:blur(20px) saturate(125%);
}
.glass::before,.v16-glass::before{border-color:rgba(255,255,255,.035)}

/* Form controls: eliminate native white boxes and low-contrast text. */
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
select,textarea,
.lead-form input,.lead-form select,.lead-form textarea,
.v16-form-grid input,.v16-form-grid select,.v16-form-grid textarea,
.v16-plan-inputs input,.v16-plan-inputs select,.v16-plan-inputs textarea,
.lab-fields input,.lab-fields select,.journal-form textarea,
.referral-studio input,.referral-studio select,.timezone-select select{
  color:#f4fbff!important;
  background:linear-gradient(180deg,rgba(2,14,25,.94),rgba(5,24,40,.88))!important;
  border:1px solid rgba(108,205,246,.20)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important;
  outline:none;
}
input::placeholder,textarea::placeholder{color:#71899c!important;opacity:1}
select option{color:#f4fbff!important;background:#071624!important}
input:focus,select:focus,textarea:focus{
  border-color:rgba(72,220,255,.62)!important;
  box-shadow:0 0 0 3px rgba(35,183,235,.12),inset 0 1px 0 rgba(255,255,255,.04)!important;
}
input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,
textarea:-webkit-autofill,select:-webkit-autofill{
  -webkit-text-fill-color:#f4fbff!important;
  -webkit-box-shadow:0 0 0 1000px #061625 inset!important;
  caret-color:#fff!important;
}
input[readonly]{color:#c8d7e2!important;background:rgba(5,24,40,.68)!important}
label{color:#d9e6ef}

/* Buttons remain legible in every state. */
.button,.v16-button,.call-pill,.language-pill,.nav-cta,.availability-action{
  position:relative;isolation:isolate;
}
.button-secondary,.button-ghost,.button.secondary,.v16-button.secondary,
.call-pill,.language-pill,.availability-action{
  color:#e9f7ff!important;
  background:linear-gradient(145deg,rgba(11,47,76,.78),rgba(3,18,31,.90))!important;
  border-color:rgba(94,210,255,.22)!important;
}
.button-primary,.button.primary,.v16-button:not(.secondary):not(.gold),.nav-cta{
  color:#fff!important;
  background:linear-gradient(135deg,#1477e8,#08b6e8)!important;
  border-color:rgba(106,223,255,.25)!important;
  box-shadow:0 13px 30px rgba(0,130,230,.20)!important;
}
.button:hover,.v16-button:hover,.call-pill:hover,.language-pill:hover{border-color:var(--clean-line-strong)!important}

/* Simplified premium header. */
.site-header{
  background:rgba(2,9,17,.86)!important;
  border-bottom:1px solid rgba(114,211,255,.10)!important;
  -webkit-backdrop-filter:blur(22px) saturate(130%);
  backdrop-filter:blur(22px) saturate(130%);
  box-shadow:0 10px 34px rgba(0,0,0,.17);
}
.nav-wrap{min-height:76px;gap:22px}
.brand img{box-shadow:0 0 0 1px rgba(89,217,255,.18),0 8px 28px rgba(0,0,0,.22)}
.primary-nav{gap:8px}
.primary-nav>a,.primary-nav>button{
  padding:9px 11px!important;border-radius:11px!important;font-size:.82rem!important;white-space:nowrap;
}
.primary-nav>a:not(.nav-cta):hover,.primary-nav>button:hover{background:rgba(50,177,232,.08)}
.primary-nav .nav-cta{padding:10px 16px!important;margin-left:4px}
.primary-nav .language-link{width:38px;height:38px;padding:0!important;display:grid;place-items:center;border:1px solid rgba(83,205,255,.18);background:rgba(10,42,67,.60)}

/* Remove the accumulated floating controls. All actions now live in one toolkit. */
.v10-section-nav,.v10-mobile-section-progress,
.desktop-contact-dock,.assistant-launch,.accessibility-launch,
.profile-orb-launch,.coverage-studio-launch,.next-action-ribbon,
.v16-orb,.v16-briefcase-button,.returning-banner{display:none!important}
.v16-briefcase{display:none!important}

/* Unified desktop toolkit. */
.clean-tools-launch{
  position:fixed;right:20px;bottom:20px;z-index:8800;
  display:flex;align-items:center;gap:10px;min-height:54px;padding:7px 15px 7px 8px;
  border-radius:18px;color:#effbff;background:linear-gradient(145deg,rgba(10,55,88,.96),rgba(3,18,31,.98));
  border:1px solid rgba(92,218,255,.30);box-shadow:0 20px 55px rgba(0,0,0,.45),0 0 28px rgba(26,170,232,.12);cursor:pointer;
}
.clean-tools-launch img{width:38px;height:38px;border-radius:11px}
.clean-tools-launch span{display:grid;text-align:left;line-height:1.15}
.clean-tools-launch b{font-size:.78rem}.clean-tools-launch small{color:#8fcfe2;font-size:.58rem;letter-spacing:.08em}
.clean-tools-panel{
  position:fixed;right:20px;bottom:84px;z-index:8795;width:min(390px,calc(100vw - 30px));max-height:min(660px,calc(100vh - 120px));overflow:auto;
  padding:20px;border-radius:24px;background:linear-gradient(155deg,rgba(8,35,58,.98),rgba(2,14,25,.99));
  border:1px solid rgba(94,217,255,.22);box-shadow:0 35px 110px rgba(0,0,0,.62);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(12px) scale(.985);transition:.18s ease;
}
.clean-tools-panel.open{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.clean-tools-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:15px}
.clean-tools-head strong{display:block;font-size:1.15rem}.clean-tools-head small{display:block;color:#86a1b4;margin-top:2px}
.clean-tools-close{width:36px;height:36px;border-radius:11px;border:1px solid rgba(106,216,255,.16);background:rgba(4,20,34,.72);color:#fff;font-size:1.3rem;cursor:pointer}
.clean-tools-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.clean-tools-grid a,.clean-tools-grid button{
  min-height:75px;padding:12px;border-radius:15px;border:1px solid rgba(93,205,246,.12);background:rgba(5,26,44,.68);color:#e8f4fb;text-align:left;text-decoration:none;cursor:pointer;
}
.clean-tools-grid a:hover,.clean-tools-grid button:hover{background:rgba(10,56,89,.72);border-color:rgba(76,213,255,.27)}
.clean-tools-grid b,.clean-tools-grid small{display:block}.clean-tools-grid small{margin-top:4px;color:#839daf;font-size:.66rem}
.clean-tools-primary{grid-column:1/-1!important;background:linear-gradient(135deg,rgba(17,111,207,.88),rgba(9,164,207,.78))!important}
.clean-tools-contact{display:flex;gap:8px;margin-top:10px}.clean-tools-contact a{flex:1;min-height:42px;display:grid;place-items:center;border-radius:12px;color:#dff7ff;text-decoration:none;background:rgba(6,29,48,.72);border:1px solid rgba(90,210,255,.14)}

/* Panels opened from the toolkit stay above it and never use white surfaces. */
.modal{z-index:9500}.assistant-panel,.accessibility-panel,.profile-orb-panel,.a11y-audit-panel{z-index:9400!important}
.assistant-panel,.accessibility-panel{right:20px!important;bottom:86px!important;left:auto!important}

/* Hero and section rhythm: calmer, less crowded. */
.hero-grid{gap:54px}.portrait-shell{max-width:520px}.hero h1{max-width:700px}
.availability-card{max-width:690px}
.section{padding-block:88px}
.section-heading{margin-bottom:34px}
.v16-section{padding:82px 0}
.v16-heading{margin-bottom:28px}
.v16-hub-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.v16-hub-card{min-height:168px;padding:20px}

/* Innovation Studio: quieter motion and consistent surfaces. */
.v16-fingerprint-hero{animation:none!important;box-shadow:0 0 80px rgba(39,179,235,.18)}
.v16-fingerprint-hero::after{animation:none!important}
.v16-ppo-card::before{opacity:.55}
.v16-drag-card,.v16-passport-card,.v16-provider-card,.v16-badge,.v16-timeline-display,
.v16-matchboard-column,.v16-clarity-panel,.v16-credential-hologram,.v16-audio-card{
  background:linear-gradient(145deg,rgba(8,38,63,.76),rgba(3,15,27,.91))!important;
  border-color:rgba(97,211,255,.15)!important;
  box-shadow:0 18px 55px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.035)!important;
}
canvas{display:block;max-width:100%;height:auto}

/* Calendar embeds and fallback areas. */
.v15-cal-host,.cal-room-host,#cal-inline-v15,#cal-room-host{
  position:relative;overflow:hidden;min-height:660px;border-radius:22px;background:linear-gradient(145deg,#071a2b,#03101c)!important;border:1px solid rgba(87,210,255,.16);
}
.v15-cal-host iframe,.cal-room-host iframe,#cal-inline-v15 iframe,#cal-room-host iframe{width:100%!important;min-height:660px!important;border:0!important;background:#071a2b!important;color-scheme:dark;border-radius:20px}
.clean-cal-loading{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:30px;color:#a8c0cf;background:radial-gradient(circle at center,rgba(12,79,122,.22),transparent 38%),#041321;z-index:0}
.clean-cal-loading img{width:62px;margin:0 auto 12px;border-radius:16px}.clean-cal-loading b{display:block;color:#edfaff}.clean-cal-loading small{display:block;margin-top:5px}

/* QR codes stay machine-readable, but the surrounding card remains dark. */
.state-qr img,.wallet-image img[src*="QR" i],img[src*="qr-codes"],img[src*="state-campaigns"]{background:#fff!important;padding:8px;border-radius:14px;box-shadow:0 9px 28px rgba(0,0,0,.24)}

/* Prevent content and buttons from spilling or becoming unreadable. */
button,a,input,select,textarea{max-width:100%}
h1,h2,h3,h4,p,li,small,b,strong,span{overflow-wrap:break-word}
.room-list>span{display:flex;padding:14px;border-radius:14px;color:#dce8ef;background:rgba(3,17,30,.55);border:1px solid rgba(255,255,255,.055)}
.footer{background:#01060b!important}

@media(max-width:1120px){
  .primary-nav{gap:3px}.primary-nav>a,.primary-nav>button{padding:8px 8px!important;font-size:.77rem!important}
  .brand-copy em{display:none}
}
@media(max-width:980px){
  .primary-nav{top:70px;left:14px;right:14px;gap:5px;padding:13px;border-radius:18px;background:rgba(3,15,27,.985)!important;border:1px solid rgba(93,211,255,.18);box-shadow:0 24px 70px rgba(0,0,0,.55)}
  .primary-nav>a,.primary-nav>button{padding:12px 13px!important;text-align:left!important}
  .primary-nav .nav-cta{margin:3px 0 0}
  .primary-nav .language-link{width:100%;height:42px;display:flex;justify-content:flex-start;padding:0 13px!important}
  .v16-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  html{scroll-padding-top:74px}
  body{padding-bottom:78px}
  .site-header{min-height:72px}.nav-wrap{min-height:72px}
  .brand img{width:48px;height:45px}.brand-copy strong{font-size:.94rem}.brand-copy small{font-size:.51rem}
  .hero-grid{padding-top:62px;gap:40px}.hero h1{font-size:clamp(3rem,14.5vw,4rem);line-height:.98}
  .hero-lead{line-height:1.55}.hero-actions{gap:10px}
  .availability-card{margin-top:24px}
  .section,.v16-section{padding-block:68px}
  .v16-hub-grid{grid-template-columns:1fr}.v16-hub-card{min-height:0}
  .clean-tools-launch,.clean-tools-panel{display:none!important}
  .mobile-contact-bar,.mobile-contact{z-index:9000!important;background:rgba(2,13,23,.97)!important;border-color:rgba(83,211,255,.22)!important;box-shadow:0 18px 50px rgba(0,0,0,.50)!important}
  .assistant-panel,.accessibility-panel,.profile-orb-panel,.a11y-audit-panel{left:10px!important;right:10px!important;bottom:82px!important;width:auto!important;max-height:calc(100vh - 105px)!important}
  .v16-hero{min-height:auto;padding:105px 0 60px}.v16-hero-grid{grid-template-columns:1fr;gap:22px}.v16-hero h1{font-size:clamp(3.15rem,15vw,4.6rem)}
  .v16-hero-device{min-height:330px}.v16-fingerprint-hero{width:min(310px,82vw)}
  .v16-heading,.v16-fit-grid,.v16-balancer,.v16-fingerprint-layout,.v16-provider-passport,.v16-clarity-grid,.v16-advisor-grid{grid-template-columns:1fr!important}
  .v16-slider-row{grid-template-columns:1fr 52px}.v16-slider-row label{grid-column:1/-1}
  .v16-compass{width:min(310px,82vw)}
  .clean-tools-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .clean-tools-panel,.clean-tools-launch{transition:none!important}
}
/* Compact headers used by landing and studio pages. */
.desktop-nav{display:flex;align-items:center;gap:8px}
.desktop-nav a{padding:9px 11px;border-radius:11px;color:#d6e3ec;text-decoration:none;font-size:.80rem;white-space:nowrap}
.desktop-nav a:hover{color:#fff;background:rgba(50,177,232,.08)}
@media(max-width:820px){.desktop-nav{display:none}}
