/* Critical state rule: never allow theme/grid/flex CSS to override HTML hidden state. */
.vca-auth-modal[hidden], .vca-view[hidden], .vca-secondary[hidden], .vca-collapse-body[hidden] { display:none !important; }
:root{--vca-pink:#D91F63;--vca-purple:#8C27A8;--vca-bg:#F8F7FA;--vca-text:#242124;--vca-muted:#706B73;--vca-border:#ECE7EE;--vca-success:#20A464}
.vca-shell{max-width:1180px;margin:32px auto;font-family:inherit;color:var(--vca-text)}.vca-card{background:#fff;border:1px solid var(--vca-border);border-radius:18px;padding:28px;box-shadow:0 4px 18px rgba(36,33,36,.04)}.vca-card h2,.vca-card h3{margin-top:0;color:var(--vca-text)}
.vca-auth-tabs{display:flex;gap:4px;margin-bottom:24px;padding:4px;background:var(--vca-bg);border-radius:12px}.vca-auth-tabs button{flex:1;background:transparent;border:0;border-radius:9px;padding:10px 14px;cursor:pointer;color:var(--vca-muted);font-weight:600}.vca-auth-tabs button.active{background:#fff;color:var(--vca-pink);box-shadow:0 1px 4px rgba(36,33,36,.08)}
.vca-view[hidden],.vca-secondary[hidden],.vca-auth-modal[hidden],.vca-collapse-body[hidden]{display:none!important}.vca-view h2{font-size:26px;margin:0 0 20px}.vca-view h3{font-size:19px;margin:0 0 14px}.vca-view form{display:grid;gap:14px}.vca-view label,.vca-card label{display:grid;gap:6px;font-weight:600;color:#39343d}.vca-view input,.vca-view select,.vca-card input,.vca-card select{box-sizing:border-box;width:100%;padding:11px 12px;border:1px solid #d9d3dc;border-radius:10px;background:#fff;color:var(--vca-text);outline:none;transition:border-color .15s,box-shadow .15s}.vca-view input:focus,.vca-view select:focus,.vca-card input:focus,.vca-card select:focus{border-color:var(--vca-pink);box-shadow:0 0 0 3px rgba(217,31,99,.10)}.vca-card input:disabled{background:#faf9fb;color:#817b83}.vca-view small,.vca-card small{font-weight:400;color:var(--vca-muted)}
.vca-view button[type=submit],.vca-card button[type=submit]{border:0;border-radius:10px;padding:12px 18px;background:linear-gradient(135deg,var(--vca-purple),var(--vca-pink));color:#fff;font-weight:700;cursor:pointer;transition:opacity .15s,transform .15s}.vca-view button[type=submit]:hover:not(:disabled),.vca-card button[type=submit]:hover:not(:disabled){transform:translateY(-1px)}.vca-view button[type=submit]:disabled,.vca-card button[type=submit]:disabled{background:#e5e1e7;color:#9a949d;cursor:not-allowed;transform:none}
.vca-grid{display:grid;grid-template-columns:1fr 2fr;gap:16px}.vca-links{display:flex;gap:16px;margin-top:14px;flex-wrap:wrap}.vca-link{background:none!important;border:0!important;padding:0!important;color:var(--vca-purple)!important;cursor:pointer;text-decoration:none!important;font-weight:600}.vca-link:hover{text-decoration:underline!important}.vca-secondary{margin-top:20px;padding-top:20px;border-top:1px solid var(--vca-border)}.vca-message{margin-top:16px}.vca-message.success:not(:empty){padding:11px 12px;border-radius:9px;background:#edf8f2;color:#176c45}.vca-message.error:not(:empty){padding:11px 12px;border-radius:9px;background:#fff0f3;color:#9b1745}
.vca-dashboard-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.vca-dashboard-head h2{margin:0;color:var(--vca-text)}.vca-dashboard-head p{margin:4px 0 0;color:var(--vca-muted)}.vca-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.vca-dashboard-grid .vca-card form{display:grid;gap:14px}.vca-outline{border:1px solid var(--vca-border);border-radius:10px;padding:9px 14px;text-decoration:none!important;color:var(--vca-purple)!important;font-weight:600}.vca-outline:hover{border-color:#d8c9df;background:#faf7fb}.vca-plan{display:flex;justify-content:space-between;align-items:center;padding:16px;border-radius:12px;background:linear-gradient(135deg,#EFE6F4,#FFE7F0)}.vca-plan strong{text-transform:capitalize;font-size:1.15em;color:var(--vca-purple)}.vca-status-row{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid var(--vca-border)}.vca-status-row:last-child{border-bottom:0}
.vca-password-card{padding:0;overflow:hidden}.vca-collapse-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;background:#fff;border:0;padding:24px 28px;cursor:pointer;color:var(--vca-text);font:inherit;font-size:1.17em;font-weight:700;text-align:left}.vca-collapse-toggle:hover{background:#fcfafc}.vca-chevron{font-size:1.3em;transition:transform .18s}.vca-collapse-toggle[aria-expanded=true] .vca-chevron{transform:rotate(180deg)}.vca-collapse-body{padding:0 28px 28px}
.vca-header-menu{display:flex;align-items:center;gap:10px}.vca-header-menu button{font:inherit}.vca-header-login{background:transparent;border:0;padding:8px 10px;color:var(--vca-purple);font-weight:600;cursor:pointer}.vca-header-signup{border:0;padding:9px 15px;border-radius:10px;background:linear-gradient(135deg,var(--vca-purple),var(--vca-pink));color:#fff!important;font-weight:700;cursor:pointer}.vca-dropdown{position:relative}.vca-dropdown-toggle{background:none;border:0;cursor:pointer;font:inherit;padding:8px;color:inherit}.vca-dropdown-panel{display:none;position:absolute;right:0;top:100%;min-width:170px;background:#fff;border:1px solid var(--vca-border);border-radius:12px;box-shadow:0 10px 30px rgba(36,33,36,.12);padding:7px;z-index:9999}.vca-dropdown-panel.open{display:grid}.vca-dropdown-panel a{padding:9px 10px;border-radius:7px;color:var(--vca-text);text-decoration:none!important}.vca-dropdown-panel a:hover{background:var(--vca-bg);color:var(--vca-purple)}
.vca-auth-modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:20px}.vca-modal-backdrop{position:absolute;inset:0;background:rgba(28,24,30,.52);backdrop-filter:blur(3px)}.vca-modal-dialog{position:relative;z-index:1;width:min(440px,calc(100vw - 32px));max-height:min(760px,calc(100vh - 40px));overflow:auto;background:#fff;border:1px solid var(--vca-border);border-radius:20px;padding:28px;box-shadow:0 24px 70px rgba(36,33,36,.24);color:var(--vca-text)}.vca-modal-close{position:absolute;right:14px;top:10px;width:36px;height:36px;border:0;background:transparent;color:var(--vca-muted);font-size:28px;line-height:1;cursor:pointer;border-radius:50%}.vca-modal-close:hover{background:var(--vca-bg)}body.vca-modal-open{overflow:hidden}
.vca-auth-shell>.vca-card{max-width:520px;margin:0 auto}
@media(max-width:700px){.vca-shell{margin:18px 12px}.vca-card{padding:20px}.vca-dashboard-grid,.vca-grid{grid-template-columns:1fr}.vca-dashboard-head{align-items:flex-start;gap:12px}.vca-status-row{align-items:flex-start}.vca-header-menu{gap:6px}.vca-modal-dialog{padding:22px 18px;border-radius:16px}.vca-collapse-toggle{padding:20px}.vca-collapse-body{padding:0 20px 20px}}

/* v1.3 authentication UI: compact, one task at a time. */
.vca-auth-step[style*="display:none"]{display:none!important}
.vca-login-links{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:14px;font-size:.95em}
.vca-login-links span{color:#b9b2bc}
.vca-step-note{margin:-6px 0 18px;color:var(--vca-muted);font-size:.95em}
.vca-back{background:transparent!important;border:0!important;padding:0!important;margin:0 0 16px!important;color:var(--vca-purple)!important;font:inherit!important;font-weight:600!important;cursor:pointer!important;text-decoration:none!important}
.vca-view form button[type="submit"],.vca-card form button[type="submit"],.vca-header-signup{
 background:linear-gradient(135deg,#8C27A8,#D91F63)!important;
 background-color:#D91F63!important;
 color:#fff!important;border:0!important;box-shadow:none!important;text-decoration:none!important;
}
.vca-view form button[type="submit"]:hover,.vca-card form button[type="submit"]:hover,.vca-header-signup:hover{filter:brightness(.96)}
.vca-view form button[type="submit"]:disabled,.vca-card form button[type="submit"]:disabled{background:#e5e1e7!important;background-image:none!important;color:#9a949d!important}
.vca-modal-dialog{width:min(420px,calc(100vw - 32px))!important}
.vca-auth-shell>.vca-card{max-width:440px!important}

/* v1.3.1 account dashboard refinements */
.vca-dashboard-grid{align-items:start!important}
.vca-subscription-card h4{margin:20px 0 10px;font-size:1rem;color:var(--vca-text)}
.vca-benefits{list-style:none!important;margin:0!important;padding:0!important;display:grid;gap:9px}
.vca-benefits li{display:flex;align-items:flex-start;gap:9px;margin:0!important;color:#4d4650}
.vca-check{display:inline-grid;place-items:center;flex:0 0 20px;width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,#8C27A8,#D91F63);color:#fff;font-size:12px;font-weight:800;line-height:1}
.vca-manage-note{margin-top:20px;padding-top:16px;border-top:1px solid var(--vca-border);color:var(--vca-muted);font-size:.94em}
.vca-manage-note strong{display:block;color:var(--vca-text);margin-bottom:4px}
.vca-manage-note p{margin:0!important}.vca-manage-note a{color:var(--vca-purple)!important;text-decoration:none!important;font-weight:600}.vca-manage-note a:hover{text-decoration:underline!important}
.vca-password-card{grid-column:1/-1!important;align-self:start!important}
.vca-collapse-toggle,.vca-collapse-toggle:visited{background:#fff!important;color:var(--vca-text)!important}
.vca-collapse-toggle:hover,.vca-collapse-toggle:focus{background:linear-gradient(135deg,#f7effa,#fff0f5)!important;color:var(--vca-purple)!important;outline:none!important}
.vca-collapse-toggle[aria-expanded=true]{background:linear-gradient(135deg,#f7effa,#fff0f5)!important;color:var(--vca-purple)!important}
.vca-collapse-body{background:#fff!important}
.vca-card button[type=submit].vca-saved,.vca-card button[type=submit].vca-saved:disabled{background:#edf8f2!important;background-image:none!important;color:#176c45!important;border:1px solid #cdebdc!important}

/* v1.3.2: login is intentionally compact and uses the Vetscraft app palette. */
.vca-auth-shell{max-width:480px!important;margin:34px auto!important}
.vca-auth-shell>.vca-card{width:100%!important;max-width:480px!important;margin:0 auto!important;padding:26px!important}
.vca-auth-shell .vca-auth-tabs{margin-bottom:22px!important}
.vca-auth-shell .vca-view form button[type=submit],.vca-modal-dialog .vca-view form button[type=submit]{background:#D91F63!important;background-image:linear-gradient(135deg,#8C27A8,#D91F63)!important;color:#fff!important}
.vca-signup-prompt{text-align:center;margin-top:18px;padding-top:16px;border-top:1px solid var(--vca-border);color:var(--vca-muted);font-size:.95em}
.vca-signup-prompt .vca-link{margin-left:4px!important;color:#8C27A8!important}
@media(max-width:700px){.vca-auth-shell{margin:18px 12px!important;width:auto!important}.vca-auth-shell>.vca-card{padding:20px!important}}

/* v1.3.3: dashboard stays full width; only logged-out auth is compact. */
#vca-account:not(.vca-auth-shell){max-width:1180px!important;margin:32px auto!important;width:auto!important}
#vca-account:not(.vca-auth-shell)>.vca-card{max-width:none!important}
.vca-login-links a.vca-link,.vca-signup-prompt a.vca-link,.vca-back{display:inline!important;width:auto!important}

/* v1.4.0 Vetscraft web auth — isolated visual system. */
#vca-account.vca-auth-shell{width:min(100% - 32px,460px)!important;max-width:460px!important;margin:42px auto!important;padding:0!important}
#vca-account.vca-auth-shell>.vca-card{width:100%!important;max-width:none!important;margin:0!important;padding:32px!important;border:1px solid #eadff0!important;border-radius:22px!important;box-shadow:0 14px 42px rgba(72,35,86,.08)!important;background:#fff!important}
#vca-account.vca-auth-shell .vca-view h2,.vca-modal-dialog .vca-view h2{font-size:28px!important;line-height:1.18!important;margin:0 0 8px!important;color:#20263a!important}
#vca-account.vca-auth-shell .vca-step-note,.vca-modal-dialog .vca-step-note{margin:0 0 22px!important;color:#6d7080!important}
#vca-account.vca-auth-shell form,.vca-modal-dialog form{gap:16px!important}
#vca-account.vca-auth-shell label,.vca-modal-dialog label{font-size:14px!important;color:#34394d!important}
#vca-account.vca-auth-shell input,#vca-account.vca-auth-shell select,.vca-modal-dialog input,.vca-modal-dialog select{min-height:48px!important;border:1px solid #ddd5e4!important;border-radius:12px!important;padding:11px 13px!important;background:#fff!important}
#vca-account.vca-auth-shell input:focus,#vca-account.vca-auth-shell select:focus,.vca-modal-dialog input:focus,.vca-modal-dialog select:focus{border-color:#a02baa!important;box-shadow:0 0 0 3px rgba(160,43,170,.11)!important}
#vca-account.vca-auth-shell button[type=submit],.vca-modal-dialog button[type=submit]{min-height:48px!important;border-radius:12px!important;background:#a72aa8!important;background-image:linear-gradient(100deg,#8c27a8 0%,#d91f63 100%)!important;color:#fff!important;font-weight:700!important;box-shadow:0 7px 18px rgba(183,35,130,.16)!important}
#vca-account.vca-auth-shell button[type=submit]:hover,.vca-modal-dialog button[type=submit]:hover{background:#92239d!important;background-image:linear-gradient(100deg,#7c2099 0%,#c91d5c 100%)!important;transform:translateY(-1px)!important}
#vca-account.vca-auth-shell .vca-login-links{justify-content:flex-start!important;gap:9px!important;margin:14px 0 0!important}
#vca-account.vca-auth-shell .vca-signup-prompt{margin-top:20px!important;padding-top:18px!important;text-align:left!important}
#vca-account.vca-auth-shell .vca-link,.vca-modal-dialog .vca-link{color:#92239d!important;text-decoration:none!important;font-weight:650!important}
#vca-account.vca-auth-shell .vca-link:hover,.vca-modal-dialog .vca-link:hover{color:#d91f63!important;text-decoration:none!important}
#vca-account.vca-auth-shell .vca-back,.vca-modal-dialog .vca-back{display:inline-flex!important;align-items:center!important;gap:5px!important;color:#92239d!important;text-decoration:none!important;margin:0 0 18px!important;font-weight:650!important}
#vca-account.vca-auth-shell .vca-back:hover,.vca-modal-dialog .vca-back:hover{color:#d91f63!important;text-decoration:none!important}
#vca-account.vca-auth-shell .vca-grid{grid-template-columns:120px 1fr!important;gap:14px!important}
.vca-modal-dialog{width:min(440px,calc(100vw - 28px))!important;border-radius:22px!important;border-color:#eadff0!important}
@media(max-width:560px){#vca-account.vca-auth-shell{width:calc(100% - 24px)!important;margin:24px auto!important}#vca-account.vca-auth-shell>.vca-card{padding:24px 20px!important}#vca-account.vca-auth-shell .vca-grid{grid-template-columns:1fr!important}}

/* v1.5.0: mirrors the Vetscraft app account screen. */
.vca-shell,.vca-modal-dialog{font-family:Roboto,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
.vca-auth-brand{display:flex;align-items:center;justify-content:center;gap:9px;margin:0 0 22px;color:var(--vca-text);font-size:18px;font-weight:700;letter-spacing:-.2px}
.vca-auth-brand img{width:38px;height:38px;object-fit:contain;border-radius:11px}
.vca-modal-dialog .vca-auth-brand{margin:2px 32px 20px 0;justify-content:flex-start}
#vca-account.vca-auth-shell>.vca-card{border-color:var(--vca-border)!important;border-radius:18px!important;box-shadow:none!important}
#vca-account.vca-auth-shell .vca-view h2,.vca-modal-dialog .vca-view h2{font-size:25px!important;text-align:center;color:var(--vca-text)!important;margin-bottom:7px!important}
#vca-account.vca-auth-shell .vca-step-note,.vca-modal-dialog .vca-step-note{text-align:center;color:var(--vca-muted)!important;line-height:1.45}
#vca-account.vca-auth-shell label,.vca-modal-dialog label{color:var(--vca-text)!important;font-weight:600!important}
#vca-account.vca-auth-shell input,#vca-account.vca-auth-shell select,.vca-modal-dialog input,.vca-modal-dialog select{border-color:var(--vca-border)!important;border-radius:12px!important;background:#fff!important;color:var(--vca-text)!important}
#vca-account.vca-auth-shell input:focus,#vca-account.vca-auth-shell select:focus,.vca-modal-dialog input:focus,.vca-modal-dialog select:focus{border-color:var(--vca-pink)!important;box-shadow:0 0 0 3px rgba(217,31,99,.10)!important}
#vca-account.vca-auth-shell button[type=submit],.vca-modal-dialog button[type=submit]{background:var(--vca-pink)!important;background-image:none!important;box-shadow:none!important;border-radius:12px!important}
#vca-account.vca-auth-shell button[type=submit]:hover,.vca-modal-dialog button[type=submit]:hover{background:#bf1855!important;background-image:none!important}
#vca-account.vca-auth-shell .vca-login-links,#vca-account.vca-auth-shell .vca-signup-prompt{justify-content:center!important;text-align:center!important}
#vca-account:not(.vca-auth-shell){max-width:760px!important;margin:28px auto 40px!important;padding:0 18px!important}
#vca-account:not(.vca-auth-shell) .vca-dashboard-head{align-items:flex-start;margin-bottom:20px}
#vca-account:not(.vca-auth-shell) .vca-dashboard-head h2{font-size:26px;font-weight:700;letter-spacing:-.35px}
#vca-account:not(.vca-auth-shell) .vca-dashboard-head p{font-size:15px;line-height:1.4}
#vca-account:not(.vca-auth-shell) .vca-outline{border-radius:12px;border-color:var(--vca-pink);color:var(--vca-pink)!important;padding:10px 14px}
#vca-account:not(.vca-auth-shell) .vca-outline:hover{background:#fff0f5;border-color:var(--vca-pink)}
.vca-account-summary{display:flex;align-items:center;gap:14px;margin:0 0 18px;padding:18px!important;border-radius:18px!important;box-shadow:none!important}
.vca-user-avatar{display:grid;place-items:center;width:56px;height:56px;flex:0 0 56px;border-radius:50%;background:#ffe2ec;color:var(--vca-pink);font-size:22px;font-weight:700}
.vca-account-summary h3{margin:0!important;font-size:19px!important;font-weight:700}.vca-account-summary p{margin:4px 0 8px!important;color:var(--vca-muted);font-size:14px;overflow-wrap:anywhere}
.vca-verified{display:inline-block;padding:5px 10px;border-radius:20px;background:#edf8f2;color:#176c45;font-size:12px;font-weight:600}
.vca-summary-plan{margin-left:auto;min-width:130px;padding-left:18px;border-left:1px solid var(--vca-border);display:grid;gap:4px}.vca-summary-plan span,.vca-summary-plan small{color:var(--vca-muted);font-size:12px}.vca-summary-plan strong{font-size:15px;color:var(--vca-text)}.vca-summary-plan small{color:#18834d;font-weight:600}
.vca-dashboard-grid{grid-template-columns:1fr!important;gap:12px!important}.vca-dashboard-grid .vca-card{padding:20px!important;border-radius:15px!important;box-shadow:none!important}.vca-dashboard-grid .vca-card h3{font-size:17px!important;margin-bottom:18px!important}.vca-dashboard-grid .vca-card form{gap:14px}.vca-dashboard-grid .vca-card input,.vca-dashboard-grid .vca-card select{min-height:48px;border-color:var(--vca-border);border-radius:12px}.vca-dashboard-grid .vca-card button[type=submit]{min-height:48px;border-radius:12px;background:var(--vca-pink)!important;background-image:none!important;box-shadow:none!important}.vca-plan{background:#fff0f5!important;border-radius:12px!important}.vca-plan strong{color:var(--vca-text)!important}.vca-plan span{color:#18834d;font-size:13px;font-weight:600}.vca-status-row{padding:13px 0!important;font-size:14px}.vca-status-row strong{font-weight:600}.vca-collapse-toggle{padding:19px 20px!important;font-size:17px!important}.vca-collapse-toggle:hover,.vca-collapse-toggle[aria-expanded=true]{background:#fff0f5!important;color:var(--vca-text)!important}
@media(max-width:600px){#vca-account:not(.vca-auth-shell){padding:0 12px!important;margin-top:20px!important}.vca-dashboard-head{gap:12px}.vca-dashboard-head .vca-outline{white-space:nowrap}.vca-account-summary{align-items:flex-start;flex-wrap:wrap}.vca-summary-plan{width:100%;margin:2px 0 0 70px;padding:12px 0 0;border-left:0;border-top:1px solid var(--vca-border);grid-template-columns:auto 1fr auto;align-items:center}.vca-summary-plan strong{justify-self:center}.vca-summary-plan small{justify-self:end}.vca-modal-dialog .vca-auth-brand{margin-left:0}}

/* v1.6.0 reusable authentication pages.
   All standalone auth shortcodes and the header modal now share one visual system. */
.vca-auth-page{
  width:min(100% - 32px,460px)!important;
  max-width:460px!important;
  margin:42px auto!important;
  padding:0!important;
  font-family:Roboto,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  color:var(--vca-text)!important;
}
.vca-auth-page>.vca-auth-card{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:32px!important;
  border:1px solid var(--vca-border)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.vca-auth-card .vca-auth-brand{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0 0 22px!important;
  color:var(--vca-text)!important;
  font-size:18px!important;
  font-weight:700!important;
  letter-spacing:-.2px!important;
}
.vca-auth-card .vca-view h2,
.vca-auth-notice h2{
  margin:0 0 7px!important;
  color:var(--vca-text)!important;
  font-size:25px!important;
  line-height:1.2!important;
  text-align:center!important;
  letter-spacing:-.25px!important;
}
.vca-auth-card .vca-step-note,
.vca-auth-notice p{
  margin:0 0 22px!important;
  color:var(--vca-muted)!important;
  font-size:14px!important;
  line-height:1.5!important;
  text-align:center!important;
}
.vca-auth-card form{display:grid!important;gap:16px!important}
.vca-auth-card label{
  display:grid!important;
  gap:6px!important;
  color:var(--vca-text)!important;
  font-size:14px!important;
  font-weight:600!important;
}
.vca-auth-card input,
.vca-auth-card select{
  width:100%!important;
  min-height:48px!important;
  box-sizing:border-box!important;
  padding:11px 13px!important;
  border:1px solid var(--vca-border)!important;
  border-radius:12px!important;
  outline:none!important;
  background:#fff!important;
  color:var(--vca-text)!important;
  font:inherit!important;
}
.vca-auth-card input:focus,
.vca-auth-card select:focus{
  border-color:var(--vca-pink)!important;
  box-shadow:0 0 0 3px rgba(217,31,99,.10)!important;
}
.vca-auth-card small{color:var(--vca-muted)!important;font-weight:400!important;line-height:1.4!important}
.vca-auth-card button[type=submit],
.vca-auth-primary-link{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
  box-sizing:border-box!important;
  padding:12px 18px!important;
  border:0!important;
  border-radius:12px!important;
  background:var(--vca-pink)!important;
  background-image:none!important;
  box-shadow:none!important;
  color:#fff!important;
  font-weight:700!important;
  text-decoration:none!important;
  cursor:pointer!important;
}
.vca-auth-card button[type=submit]:hover:not(:disabled),
.vca-auth-primary-link:hover{
  background:#bf1855!important;
  color:#fff!important;
  text-decoration:none!important;
  transform:none!important;
}
.vca-auth-card button[type=submit]:disabled{background:#e5e1e7!important;color:#9a949d!important;cursor:not-allowed!important}
.vca-auth-card .vca-grid{grid-template-columns:120px 1fr!important;gap:14px!important}
.vca-auth-card .vca-login-links{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:9px!important;
  margin:14px 0 0!important;
  font-size:14px!important;
}
.vca-auth-card .vca-login-links span{color:#b9b2bc!important}
.vca-auth-card .vca-signup-prompt{
  margin:20px 0 0!important;
  padding:18px 0 0!important;
  border-top:1px solid var(--vca-border)!important;
  color:var(--vca-muted)!important;
  font-size:14px!important;
  text-align:center!important;
}
.vca-auth-card .vca-link,
.vca-auth-card .vca-back{
  display:inline!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--vca-purple)!important;
  font:inherit!important;
  font-weight:650!important;
  text-decoration:none!important;
  cursor:pointer!important;
}
.vca-auth-card .vca-back{display:inline-flex!important;margin:0 0 18px!important}
.vca-auth-card .vca-link:hover,
.vca-auth-card .vca-back:hover{color:var(--vca-pink)!important;text-decoration:none!important}
.vca-auth-card .vca-secondary{margin-top:20px!important;padding-top:20px!important;border-top:1px solid var(--vca-border)!important}
.vca-auth-card .vca-secondary h3{margin:0 0 8px!important;color:var(--vca-text)!important;font-size:19px!important;text-align:center!important}
.vca-auth-card .vca-secondary p{margin:0 0 4px!important;color:var(--vca-muted)!important;text-align:center!important;line-height:1.45!important}
.vca-auth-card .vca-message{margin-top:16px!important}
.vca-auth-notice{text-align:center!important}
.vca-auth-notice .vca-auth-primary-link{margin-top:18px!important}

/* Header modal follows the same component styling as standalone pages. */
.vca-modal-dialog.vca-auth-card{font-family:Roboto,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
.vca-modal-dialog.vca-auth-card .vca-auth-brand{justify-content:center!important;margin:0 32px 22px!important}
.vca-modal-dialog.vca-auth-card .vca-view h2{font-size:25px!important;text-align:center!important}
.vca-modal-dialog.vca-auth-card .vca-step-note{text-align:center!important}
.vca-modal-dialog.vca-auth-card .vca-signup-prompt{text-align:center!important}

@media(max-width:560px){
  .vca-auth-page{width:calc(100% - 24px)!important;margin:24px auto!important}
  .vca-auth-page>.vca-auth-card{padding:24px 20px!important}
  .vca-auth-card .vca-grid{grid-template-columns:1fr!important}
}

/* v1.7.0 — Account-led visual system for every non-account shortcode.
   IMPORTANT: These rules are intentionally scoped away from the logged-in
   #vca-account dashboard. The Account view remains the visual source of truth. */

/* Shared public shortcode canvas: mirrors the Account page width, spacing and type. */
.vca-shortcode.vca-auth-page{
  width:min(100% - 36px,760px)!important;
  max-width:760px!important;
  margin:28px auto 40px!important;
  padding:0 18px!important;
  box-sizing:border-box!important;
  font-family:Roboto,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  color:var(--vca-text)!important;
}
.vca-shortcode.vca-auth-page>.vca-auth-card{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:20px!important;
  box-sizing:border-box!important;
  border:1px solid var(--vca-border)!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.vca-shortcode.vca-auth-page .vca-auth-brand{
  display:none!important;
}
.vca-shortcode.vca-auth-page .vca-view h2,
.vca-shortcode.vca-auth-page .vca-auth-notice h2{
  margin:0 0 7px!important;
  color:var(--vca-text)!important;
  font-size:26px!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:-.35px!important;
  text-align:left!important;
}
.vca-shortcode.vca-auth-page .vca-step-note,
.vca-shortcode.vca-auth-page .vca-auth-notice p{
  margin:0 0 20px!important;
  color:var(--vca-muted)!important;
  font-size:15px!important;
  line-height:1.4!important;
  text-align:left!important;
}
.vca-shortcode.vca-auth-page form{
  display:grid!important;
  gap:14px!important;
}
.vca-shortcode.vca-auth-page label{
  display:grid!important;
  gap:6px!important;
  color:var(--vca-text)!important;
  font-size:14px!important;
  font-weight:600!important;
}
.vca-shortcode.vca-auth-page input,
.vca-shortcode.vca-auth-page select{
  width:100%!important;
  min-height:48px!important;
  box-sizing:border-box!important;
  padding:11px 13px!important;
  border:1px solid var(--vca-border)!important;
  border-radius:12px!important;
  outline:none!important;
  background:#fff!important;
  color:var(--vca-text)!important;
  font:inherit!important;
}
.vca-shortcode.vca-auth-page input:focus,
.vca-shortcode.vca-auth-page select:focus{
  border-color:var(--vca-pink)!important;
  box-shadow:0 0 0 3px rgba(217,31,99,.10)!important;
}
.vca-shortcode.vca-auth-page small{
  color:var(--vca-muted)!important;
  font-weight:400!important;
  line-height:1.4!important;
}
.vca-shortcode.vca-auth-page button[type=submit],
.vca-shortcode.vca-auth-page .vca-auth-primary-link{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
  padding:12px 18px!important;
  box-sizing:border-box!important;
  border:0!important;
  border-radius:12px!important;
  background:var(--vca-pink)!important;
  background-image:none!important;
  box-shadow:none!important;
  color:#fff!important;
  font-weight:700!important;
  text-decoration:none!important;
  cursor:pointer!important;
}
.vca-shortcode.vca-auth-page button[type=submit]:hover:not(:disabled),
.vca-shortcode.vca-auth-page .vca-auth-primary-link:hover{
  background:#bf1855!important;
  color:#fff!important;
  transform:none!important;
  text-decoration:none!important;
}
.vca-shortcode.vca-auth-page button[type=submit]:disabled{
  background:#e5e1e7!important;
  color:#9a949d!important;
  cursor:not-allowed!important;
}
.vca-shortcode.vca-auth-page .vca-link,
.vca-shortcode.vca-auth-page .vca-back{
  color:var(--vca-pink)!important;
  font-weight:600!important;
  text-decoration:none!important;
}
.vca-shortcode.vca-auth-page .vca-link:hover,
.vca-shortcode.vca-auth-page .vca-back:hover{
  color:#bf1855!important;
  text-decoration:none!important;
}
.vca-shortcode.vca-auth-page .vca-message.success:not(:empty){
  background:#edf8f2!important;
  color:#176c45!important;
}
.vca-shortcode.vca-auth-page .vca-message.error:not(:empty){
  background:#fff0f5!important;
  color:#9b1745!important;
}

/* [vetscraft_login] — compact account-style access card. */
.vca-shortcode-login>.vca-auth-card{
  max-width:560px!important;
  margin:0 auto!important;
}
.vca-shortcode-login .vca-login-links{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:9px!important;
  margin:14px 0 0!important;
  font-size:14px!important;
}
.vca-shortcode-login .vca-login-links span{color:#b9b2bc!important}
.vca-shortcode-login .vca-signup-prompt{
  margin:20px 0 0!important;
  padding:18px 0 0!important;
  border-top:1px solid var(--vca-border)!important;
  color:var(--vca-muted)!important;
  font-size:14px!important;
  text-align:left!important;
}

/* [vetscraft_signup] — wider form, same Account card language. */
.vca-shortcode-signup>.vca-auth-card{
  max-width:680px!important;
  margin:0 auto!important;
}
.vca-shortcode-signup .vca-grid{
  grid-template-columns:120px 1fr!important;
  gap:14px!important;
}
.vca-shortcode-signup .vca-signup-prompt{
  margin:20px 0 0!important;
  padding:18px 0 0!important;
  border-top:1px solid var(--vca-border)!important;
  color:var(--vca-muted)!important;
  font-size:14px!important;
  text-align:left!important;
}
.vca-shortcode-signup .vca-secondary{
  margin-top:20px!important;
  padding:20px!important;
  border:1px solid var(--vca-border)!important;
  border-radius:12px!important;
  background:var(--vca-bg)!important;
}
.vca-shortcode-signup .vca-secondary h3{
  margin:0 0 7px!important;
  color:var(--vca-text)!important;
  font-size:17px!important;
  text-align:left!important;
}
.vca-shortcode-signup .vca-secondary p{
  margin:0 0 14px!important;
  color:var(--vca-muted)!important;
  line-height:1.4!important;
  text-align:left!important;
}

/* [vetscraft_forgot_password] — isolated recovery theme. */
.vca-shortcode-forgot>.vca-auth-card{
  max-width:560px!important;
  margin:0 auto!important;
}
.vca-shortcode-forgot .vca-back{
  display:inline-flex!important;
  margin:0 0 18px!important;
}
.vca-shortcode-forgot .vca-signup-prompt{
  margin:20px 0 0!important;
  padding:18px 0 0!important;
  border-top:1px solid var(--vca-border)!important;
  color:var(--vca-muted)!important;
  font-size:14px!important;
  text-align:left!important;
}

/* [vetscraft_account_menu] — its own header/menu + modal theme. */
.vca-shortcode-menu.vca-header-menu{
  display:flex;
  align-items:center;
  gap:8px;
  font-family:Roboto,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.vca-shortcode-menu .vca-header-login{
  min-height:40px;
  padding:9px 13px;
  border:1px solid var(--vca-pink)!important;
  border-radius:12px!important;
  background:#fff!important;
  color:var(--vca-pink)!important;
  font-weight:600!important;
}
.vca-shortcode-menu .vca-header-login:hover{
  background:#fff0f5!important;
}
.vca-shortcode-menu .vca-header-signup{
  min-height:40px;
  padding:9px 14px!important;
  border:0!important;
  border-radius:12px!important;
  background:var(--vca-pink)!important;
  background-image:none!important;
  color:#fff!important;
  font-weight:700!important;
  box-shadow:none!important;
}
.vca-shortcode-menu .vca-header-signup:hover{background:#bf1855!important;filter:none!important}
.vca-shortcode-menu.vca-dropdown .vca-dropdown-toggle{
  padding:9px 12px!important;
  border:1px solid var(--vca-border)!important;
  border-radius:12px!important;
  background:#fff!important;
  color:var(--vca-text)!important;
  font-weight:600!important;
}
.vca-shortcode-menu .vca-dropdown-panel{
  border:1px solid var(--vca-border)!important;
  border-radius:12px!important;
  box-shadow:0 10px 30px rgba(36,33,36,.10)!important;
}
.vca-shortcode-menu .vca-dropdown-panel a:hover{
  background:#fff0f5!important;
  color:var(--vca-pink)!important;
}

/* Account-menu modal: account palette/components, isolated from standalone shortcode layouts. */
.vca-auth-modal .vca-modal-dialog.vca-auth-card{
  width:min(560px,calc(100vw - 32px))!important;
  padding:20px!important;
  border:1px solid var(--vca-border)!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:0 24px 70px rgba(36,33,36,.22)!important;
  font-family:Roboto,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
.vca-auth-modal .vca-auth-brand{display:none!important}
.vca-auth-modal .vca-auth-tabs{
  margin:0 42px 20px 0!important;
  padding:4px!important;
  border-radius:12px!important;
  background:var(--vca-bg)!important;
}
.vca-auth-modal .vca-auth-tabs button{
  border-radius:9px!important;
  color:var(--vca-muted)!important;
}
.vca-auth-modal .vca-auth-tabs button.active{
  background:#fff!important;
  color:var(--vca-pink)!important;
}
.vca-auth-modal .vca-view h2{
  margin:0 0 7px!important;
  font-size:24px!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:-.3px!important;
  text-align:left!important;
}
.vca-auth-modal .vca-step-note{
  margin:0 0 20px!important;
  font-size:14px!important;
  line-height:1.4!important;
  text-align:left!important;
}
.vca-auth-modal form{gap:14px!important}
.vca-auth-modal input,.vca-auth-modal select{min-height:48px!important;border-radius:12px!important}
.vca-auth-modal button[type=submit]{min-height:48px!important;border-radius:12px!important;background:var(--vca-pink)!important;background-image:none!important}
.vca-auth-modal button[type=submit]:hover:not(:disabled){background:#bf1855!important}
.vca-auth-modal .vca-login-links{justify-content:flex-start!important}
.vca-auth-modal .vca-signup-prompt{text-align:left!important}
.vca-auth-modal .vca-link,.vca-auth-modal .vca-back{color:var(--vca-pink)!important}
.vca-auth-modal .vca-link:hover,.vca-auth-modal .vca-back:hover{color:#bf1855!important}
.vca-auth-modal .vca-grid{grid-template-columns:120px 1fr!important;gap:14px!important}
.vca-auth-modal .vca-secondary{
  margin-top:20px!important;
  padding:18px!important;
  border:1px solid var(--vca-border)!important;
  border-radius:12px!important;
  background:var(--vca-bg)!important;
}
.vca-auth-modal .vca-secondary h3,.vca-auth-modal .vca-secondary p{text-align:left!important}

@media(max-width:600px){
  .vca-shortcode.vca-auth-page{
    width:100%!important;
    margin:20px auto 32px!important;
    padding:0 12px!important;
  }
  .vca-shortcode.vca-auth-page>.vca-auth-card{padding:20px!important}
  .vca-shortcode-signup .vca-grid,
  .vca-auth-modal .vca-grid{grid-template-columns:1fr!important}
  .vca-auth-modal .vca-modal-dialog.vca-auth-card{padding:20px!important;border-radius:15px!important}
}

/* v1.8.0 — Flutter-app visual parity layer.
   Source of truth: Vetscraft Flutter app AppColors + auth/account screens.
   Functional selectors/data attributes are intentionally unchanged. */

/* Shared app surface */
.vca-shell,
.vca-modal-dialog{
  font-family:Roboto,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  color:var(--vca-text)!important;
}
.vca-shortcode.vca-auth-page{
  width:min(100% - 24px,560px)!important;
  max-width:560px!important;
  margin:28px auto 42px!important;
  padding:22px!important;
  border-radius:20px!important;
  background:var(--vca-bg)!important;
  box-sizing:border-box!important;
}
.vca-shortcode.vca-auth-page>.vca-auth-card{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

/* Large icon used by the Flutter auth/recovery screens. */
.vca-app-hero-icon{
  width:72px!important;
  height:72px!important;
  margin:0 auto 14px!important;
  color:var(--vca-pink)!important;
}
.vca-app-hero-icon svg{width:100%;height:100%;display:block;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.vca-auth-modal .vca-app-hero-icon{width:64px!important;height:64px!important;margin:2px auto 12px!important}

/* Auth page typography follows auth_screen.dart. */
.vca-shortcode.vca-auth-page .vca-view h2,
.vca-shortcode.vca-auth-page .vca-auth-notice h2{
  margin:0 0 7px!important;
  color:var(--vca-text)!important;
  font-size:25px!important;
  line-height:1.22!important;
  font-weight:700!important;
  letter-spacing:0!important;
  text-align:center!important;
}
.vca-shortcode.vca-auth-page .vca-step-note,
.vca-shortcode.vca-auth-page .vca-auth-notice p{
  margin:0 0 28px!important;
  color:var(--vca-muted)!important;
  font-size:15px!important;
  line-height:1.45!important;
  text-align:center!important;
}
.vca-shortcode.vca-auth-page form{gap:14px!important}
.vca-shortcode.vca-auth-page label{
  gap:7px!important;
  color:var(--vca-text)!important;
  font-size:14px!important;
  font-weight:500!important;
}
.vca-shortcode.vca-auth-page input,
.vca-shortcode.vca-auth-page select{
  min-height:54px!important;
  padding:13px 15px!important;
  border:1px solid #d8d1db!important;
  border-radius:12px!important;
  background:#fff!important;
  color:var(--vca-text)!important;
  font-size:16px!important;
  line-height:1.2!important;
  box-shadow:none!important;
}
.vca-shortcode.vca-auth-page input::placeholder{color:#a49ca7!important}
.vca-shortcode.vca-auth-page input:focus,
.vca-shortcode.vca-auth-page select:focus{
  border-color:var(--vca-pink)!important;
  box-shadow:0 0 0 2px rgba(217,31,99,.10)!important;
}
.vca-shortcode.vca-auth-page small{font-size:12.5px!important;color:var(--vca-muted)!important}
.vca-shortcode.vca-auth-page button[type=submit],
.vca-shortcode.vca-auth-page .vca-auth-primary-link{
  min-height:50px!important;
  margin-top:6px!important;
  padding:12px 18px!important;
  border-radius:12px!important;
  background:var(--vca-pink)!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:700!important;
  box-shadow:none!important;
}
.vca-shortcode.vca-auth-page button[type=submit]:hover:not(:disabled),
.vca-shortcode.vca-auth-page .vca-auth-primary-link:hover{background:#c51b59!important}

/* Flutter registration is vertical, not a desktop two-column form. */
.vca-shortcode-signup>.vca-auth-card,
.vca-shortcode-login>.vca-auth-card,
.vca-shortcode-forgot>.vca-auth-card{max-width:100%!important}
.vca-shortcode-signup .vca-grid{grid-template-columns:1fr!important;gap:14px!important}

/* Sign-in secondary action mirrors Flutter's right aligned TextButton. */
.vca-shortcode-login .vca-login-links{
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  gap:10px!important;
  margin:4px 0 2px!important;
  font-size:14px!important;
}
.vca-shortcode-login .vca-login-links span{color:#c3bdc5!important}
.vca-shortcode-login .vca-signup-prompt,
.vca-shortcode-signup .vca-signup-prompt,
.vca-shortcode-forgot .vca-signup-prompt{
  margin:22px 0 0!important;
  padding:18px 0 0!important;
  border-top:1px solid var(--vca-border)!important;
  color:var(--vca-muted)!important;
  font-size:14px!important;
  text-align:center!important;
}
.vca-shortcode.vca-auth-page .vca-link,
.vca-shortcode.vca-auth-page .vca-back{color:var(--vca-pink)!important;font-weight:600!important}
.vca-shortcode.vca-auth-page .vca-back{
  display:inline-flex!important;
  margin:0 0 18px!important;
  font-size:14px!important;
}

/* Verification / OTP: large spaced code field as in EmailVerificationScreen. */
.vca-shortcode.vca-auth-page input[name=code]{
  min-height:58px!important;
  text-align:center!important;
  font-size:24px!important;
  font-weight:700!important;
  letter-spacing:8px!important;
  padding-left:22px!important;
}
.vca-shortcode-signup .vca-secondary{
  margin:4px 0 0!important;
  padding:22px 0 0!important;
  border:0!important;
  border-top:1px solid var(--vca-border)!important;
  border-radius:0!important;
  background:transparent!important;
}
.vca-shortcode-signup .vca-secondary h3{
  margin:0 0 8px!important;
  font-size:24px!important;
  font-weight:700!important;
  text-align:center!important;
}
.vca-shortcode-signup .vca-secondary p{text-align:center!important;margin:0 0 22px!important;color:var(--vca-muted)!important}
.vca-shortcode-signup [data-vca-resend]{justify-self:center!important;margin:2px auto 0!important;color:var(--vca-pink)!important}

/* Messages use light Material-like surfaces rather than prominent alert blocks. */
.vca-shortcode.vca-auth-page .vca-message:not(:empty){margin-top:16px!important;padding:12px 14px!important;border-radius:12px!important;font-size:14px!important;text-align:center!important}

/* Account page — preserve behavior, align dimensions/cards with account_screen.dart. */
#vca-account:not(.vca-auth-shell){
  width:min(100% - 24px,760px)!important;
  max-width:760px!important;
  margin:28px auto 42px!important;
  padding:22px!important;
  border-radius:20px!important;
  background:var(--vca-bg)!important;
  box-sizing:border-box!important;
}
#vca-account:not(.vca-auth-shell) .vca-dashboard-head{margin-bottom:20px!important}
#vca-account:not(.vca-auth-shell) .vca-dashboard-head h2{font-size:26px!important;line-height:1.2!important;font-weight:700!important;letter-spacing:0!important}
#vca-account:not(.vca-auth-shell) .vca-dashboard-head p{color:var(--vca-muted)!important;font-size:15px!important}
#vca-account:not(.vca-auth-shell) .vca-outline{
  min-height:42px!important;
  display:inline-flex!important;
  align-items:center!important;
  padding:9px 14px!important;
  border:1px solid var(--vca-pink)!important;
  border-radius:12px!important;
  background:transparent!important;
  color:var(--vca-pink)!important;
}
.vca-account-summary{
  padding:18px!important;
  margin-bottom:12px!important;
  border:1px solid var(--vca-border)!important;
  border-radius:18px!important;
  background:#fff!important;
}
.vca-user-avatar{width:50px!important;height:50px!important;flex-basis:50px!important;background:#FFE2EC!important;color:var(--vca-pink)!important}
.vca-dashboard-grid{gap:10px!important}
.vca-dashboard-grid .vca-card{
  padding:18px!important;
  border:1px solid var(--vca-border)!important;
  border-radius:15px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.vca-dashboard-grid .vca-card h3{font-size:16px!important;margin:0 0 16px!important}
.vca-dashboard-grid .vca-card input,
.vca-dashboard-grid .vca-card select{min-height:52px!important;padding:12px 14px!important;border:1px solid #d8d1db!important;border-radius:12px!important;background:#fff!important;font-size:15px!important}
.vca-dashboard-grid .vca-card button[type=submit]{min-height:50px!important;border-radius:12px!important;background:var(--vca-pink)!important;background-image:none!important}
.vca-plan{padding:14px 16px!important;border:1px solid var(--vca-border)!important;background:#fff!important}
.vca-password-card{padding:0!important;overflow:hidden!important}
.vca-collapse-toggle{min-height:58px!important;padding:16px 18px!important;font-size:16px!important;font-weight:600!important}
.vca-collapse-toggle:hover,.vca-collapse-toggle[aria-expanded=true]{background:#fff7fa!important;color:var(--vca-text)!important}
.vca-collapse-body{padding:0 18px 18px!important}

/* Header account controls use the same Filled/Outlined button language. */
.vca-shortcode-menu .vca-header-login,
.vca-shortcode-menu .vca-header-signup,
.vca-shortcode-menu.vca-dropdown .vca-dropdown-toggle{min-height:42px!important;border-radius:12px!important;font-size:14px!important}
.vca-shortcode-menu .vca-header-login{border:1px solid var(--vca-pink)!important;background:#fff!important;color:var(--vca-pink)!important}
.vca-shortcode-menu .vca-header-signup{background:var(--vca-pink)!important;color:#fff!important}
.vca-shortcode-menu .vca-dropdown-panel{padding:7px!important;border-radius:12px!important;box-shadow:0 10px 30px rgba(36,33,36,.10)!important}
.vca-shortcode-menu .vca-dropdown-panel a{padding:10px 11px!important;border-radius:9px!important;font-size:14px!important}

/* Modal: same auth screen proportions inside a web overlay. */
.vca-auth-modal .vca-modal-backdrop{background:rgba(36,33,36,.50)!important;backdrop-filter:blur(2px)!important}
.vca-auth-modal .vca-modal-dialog.vca-auth-card{
  width:min(520px,calc(100vw - 28px))!important;
  max-height:min(820px,calc(100vh - 28px))!important;
  padding:24px!important;
  border:1px solid var(--vca-border)!important;
  border-radius:20px!important;
  background:var(--vca-bg)!important;
  box-shadow:0 24px 70px rgba(36,33,36,.20)!important;
}
.vca-auth-modal .vca-auth-brand{display:block!important;margin:0!important}
.vca-auth-modal .vca-auth-tabs{
  margin:0 36px 22px!important;
  padding:4px!important;
  border-radius:12px!important;
  background:#eeeaf0!important;
}
.vca-auth-modal .vca-auth-tabs button{min-height:40px!important;border-radius:9px!important;color:var(--vca-muted)!important}
.vca-auth-modal .vca-auth-tabs button.active{background:#fff!important;color:var(--vca-pink)!important;box-shadow:0 1px 4px rgba(36,33,36,.08)!important}
.vca-auth-modal .vca-view h2{margin:0 0 7px!important;font-size:25px!important;text-align:center!important}
.vca-auth-modal .vca-step-note{margin:0 0 24px!important;color:var(--vca-muted)!important;text-align:center!important;line-height:1.45!important}
.vca-auth-modal form{gap:14px!important}
.vca-auth-modal label{gap:7px!important;font-size:14px!important;font-weight:500!important}
.vca-auth-modal input,.vca-auth-modal select{min-height:52px!important;padding:12px 14px!important;border:1px solid #d8d1db!important;border-radius:12px!important;background:#fff!important;font-size:15px!important}
.vca-auth-modal input[name=code]{text-align:center!important;font-size:23px!important;font-weight:700!important;letter-spacing:8px!important;padding-left:22px!important}
.vca-auth-modal button[type=submit]{min-height:50px!important;margin-top:4px!important;border-radius:12px!important;background:var(--vca-pink)!important}
.vca-auth-modal .vca-login-links{justify-content:flex-end!important;margin-top:6px!important}
.vca-auth-modal .vca-signup-prompt{text-align:center!important}
.vca-auth-modal .vca-grid{grid-template-columns:1fr!important;gap:14px!important}
.vca-auth-modal .vca-secondary{padding:20px 0 0!important;border:0!important;border-top:1px solid var(--vca-border)!important;background:transparent!important}
.vca-auth-modal .vca-secondary h3,.vca-auth-modal .vca-secondary p{text-align:center!important}

@media(max-width:600px){
  .vca-shortcode.vca-auth-page{width:calc(100% - 16px)!important;margin:12px auto 28px!important;padding:20px 14px!important;border-radius:18px!important}
  .vca-shortcode.vca-auth-page input,.vca-shortcode.vca-auth-page select{min-height:52px!important}
  #vca-account:not(.vca-auth-shell){width:calc(100% - 16px)!important;margin:12px auto 28px!important;padding:18px 12px!important;border-radius:18px!important}
  .vca-dashboard-head{align-items:flex-start!important;gap:12px!important}
  .vca-account-summary{align-items:flex-start!important;flex-wrap:wrap!important}
  .vca-summary-plan{width:100%!important;margin:4px 0 0 64px!important;padding:12px 0 0!important;border-left:0!important;border-top:1px solid var(--vca-border)!important}
  .vca-auth-modal .vca-modal-dialog.vca-auth-card{padding:20px 16px!important;border-radius:18px!important}
  .vca-auth-modal .vca-auth-tabs{margin:0 30px 20px!important}
}

/* App edit-profile flow is vertical on all viewport sizes. */
#vca-account:not(.vca-auth-shell) .vca-profile-card .vca-grid{grid-template-columns:1fr!important;gap:14px!important}
#vca-account:not(.vca-auth-shell) .vca-profile-card label{gap:7px!important;font-size:14px!important;font-weight:500!important;color:var(--vca-text)!important}

/* v1.8.1 — theme-isolation and corrected app parity.
   Uses CSS-only hero icons and literal component colors so Astra/WordPress
   global SVG, button, link and custom-property rules cannot distort auth UI. */

.vca-shortcode,
.vca-auth-modal,
#vca-account {
  --vca-pink-local:#D91F63;
  --vca-pink-hover-local:#C51B59;
  --vca-purple-local:#8C27A8;
  --vca-bg-local:#F8F7FA;
  --vca-text-local:#242124;
  --vca-muted-local:#706B73;
  --vca-border-local:#ECE7EE;
  --vca-field-border-local:#D8D1DB;
  --vca-success-local:#20A464;
}

/* Never allow a site theme to turn the app icon into a giant SVG/image. */
.vca-shortcode .vca-app-hero-icon,
.vca-auth-modal .vca-app-hero-icon{
  position:relative!important;
  display:block!important;
  width:72px!important;
  min-width:72px!important;
  max-width:72px!important;
  height:72px!important;
  min-height:72px!important;
  max-height:72px!important;
  margin:0 auto 14px!important;
  padding:0!important;
  overflow:visible!important;
  box-sizing:border-box!important;
  border:0!important;
  background:transparent!important;
  color:#D91F63!important;
  line-height:1!important;
  font-size:0!important;
}
.vca-auth-modal .vca-app-hero-icon{
  width:64px!important;min-width:64px!important;max-width:64px!important;
  height:64px!important;min-height:64px!important;max-height:64px!important;
  margin:0 auto 12px!important;
}
.vca-shortcode .vca-app-hero-icon svg,
.vca-shortcode .vca-app-hero-icon img,
.vca-auth-modal .vca-app-hero-icon svg,
.vca-auth-modal .vca-app-hero-icon img{display:none!important}

/* account_circle_outlined, drawn without SVG so theme CSS cannot alter it */
.vca-app-hero-icon:not(.vca-app-hero-reset)::before{
  content:""!important;
  position:absolute!important;
  inset:3px!important;
  border:3px solid #D91F63!important;
  border-radius:50%!important;
  box-sizing:border-box!important;
}
.vca-app-hero-icon:not(.vca-app-hero-reset) .vca-app-icon-core::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:16px!important;
  width:17px!important;
  height:17px!important;
  transform:translateX(-50%)!important;
  border:3px solid #D91F63!important;
  border-radius:50%!important;
  box-sizing:border-box!important;
  background:transparent!important;
}
.vca-app-hero-icon:not(.vca-app-hero-reset) .vca-app-icon-core::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  bottom:11px!important;
  width:38px!important;
  height:20px!important;
  transform:translateX(-50%)!important;
  border:3px solid #D91F63!important;
  border-bottom:0!important;
  border-radius:22px 22px 0 0!important;
  box-sizing:border-box!important;
  background:transparent!important;
}
.vca-auth-modal .vca-app-hero-icon:not(.vca-app-hero-reset) .vca-app-icon-core::before{top:14px!important;width:15px!important;height:15px!important}
.vca-auth-modal .vca-app-hero-icon:not(.vca-app-hero-reset) .vca-app-icon-core::after{bottom:10px!important;width:34px!important;height:18px!important}

/* lock-reset visual for password recovery */
.vca-app-hero-reset::before{
  content:""!important;
  position:absolute!important;
  left:18px!important;
  top:30px!important;
  width:36px!important;
  height:30px!important;
  border:3px solid #D91F63!important;
  border-radius:8px!important;
  box-sizing:border-box!important;
}
.vca-app-hero-reset .vca-app-icon-core::before{
  content:""!important;
  position:absolute!important;
  left:26px!important;
  top:14px!important;
  width:20px!important;
  height:22px!important;
  border:3px solid #D91F63!important;
  border-bottom:0!important;
  border-radius:13px 13px 0 0!important;
  box-sizing:border-box!important;
}
.vca-app-hero-reset .vca-app-icon-core::after{
  content:"↻"!important;
  position:absolute!important;
  right:4px!important;
  top:2px!important;
  width:24px!important;
  height:24px!important;
  color:#D91F63!important;
  font:700 24px/24px Arial,sans-serif!important;
  text-align:center!important;
}

/* Standalone auth surface: compact, app-like, and fully plugin controlled. */
body .vca-shortcode.vca-auth-page{
  display:block!important;
  width:min(100% - 32px,520px)!important;
  max-width:520px!important;
  min-height:0!important;
  margin:36px auto 48px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  box-sizing:border-box!important;
  color:#242124!important;
  font-family:Roboto,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
body .vca-shortcode.vca-auth-page>.vca-auth-card{
  display:block!important;
  width:100%!important;
  max-width:520px!important;
  min-height:0!important;
  margin:0!important;
  padding:30px 28px 28px!important;
  background:#FFFFFF!important;
  border:1px solid #ECE7EE!important;
  border-radius:18px!important;
  box-shadow:0 3px 14px rgba(36,33,36,.045)!important;
  box-sizing:border-box!important;
}
body .vca-shortcode.vca-auth-page .vca-view,
body .vca-shortcode.vca-auth-page .vca-auth-step{width:100%!important;max-width:none!important}

body .vca-shortcode.vca-auth-page h2,
body .vca-auth-modal h2{
  margin:0 0 7px!important;
  padding:0!important;
  color:#242124!important;
  font-family:inherit!important;
  font-size:25px!important;
  line-height:1.24!important;
  font-weight:700!important;
  letter-spacing:0!important;
  text-align:center!important;
  text-transform:none!important;
}
body .vca-shortcode.vca-auth-page .vca-step-note,
body .vca-auth-modal .vca-step-note{
  margin:0 0 28px!important;
  color:#706B73!important;
  font-family:inherit!important;
  font-size:15px!important;
  line-height:1.45!important;
  font-weight:400!important;
  text-align:center!important;
}

body .vca-shortcode.vca-auth-page form,
body .vca-auth-modal form{display:grid!important;gap:14px!important;margin:0!important}
body .vca-shortcode.vca-auth-page label,
body .vca-auth-modal label{
  display:grid!important;
  gap:7px!important;
  margin:0!important;
  padding:0!important;
  color:#39343D!important;
  font-family:inherit!important;
  font-size:14px!important;
  line-height:1.35!important;
  font-weight:600!important;
}
body .vca-shortcode.vca-auth-page input,
body .vca-shortcode.vca-auth-page select,
body .vca-auth-modal input,
body .vca-auth-modal select{
  appearance:auto!important;
  -webkit-appearance:auto!important;
  display:block!important;
  width:100%!important;
  height:54px!important;
  min-height:54px!important;
  max-height:54px!important;
  margin:0!important;
  padding:13px 15px!important;
  border:1px solid #D8D1DB!important;
  border-radius:12px!important;
  outline:0!important;
  background:#FFFFFF!important;
  background-image:none!important;
  color:#242124!important;
  caret-color:#D91F63!important;
  box-shadow:none!important;
  font-family:inherit!important;
  font-size:16px!important;
  line-height:1.2!important;
  font-weight:400!important;
  text-transform:none!important;
  box-sizing:border-box!important;
}
body .vca-shortcode.vca-auth-page select,
body .vca-auth-modal select{padding-right:38px!important}
body .vca-shortcode.vca-auth-page input:focus,
body .vca-shortcode.vca-auth-page select:focus,
body .vca-auth-modal input:focus,
body .vca-auth-modal select:focus{
  border-color:#D91F63!important;
  outline:0!important;
  box-shadow:0 0 0 2px rgba(217,31,99,.11)!important;
}
body .vca-shortcode.vca-auth-page small,
body .vca-auth-modal small{color:#706B73!important;font-size:12.5px!important;font-weight:400!important;line-height:1.4!important}

/* Hard-set action colors: no inherited Astra/WordPress button colors. */
body .vca-shortcode.vca-auth-page form button[type="submit"],
body .vca-shortcode.vca-auth-page a.vca-auth-primary-link,
body .vca-auth-modal form button[type="submit"]{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:50px!important;
  margin:6px 0 0!important;
  padding:12px 18px!important;
  border:0!important;
  border-radius:12px!important;
  background:#D91F63!important;
  background-color:#D91F63!important;
  background-image:none!important;
  color:#FFFFFF!important;
  box-shadow:none!important;
  text-shadow:none!important;
  font-family:inherit!important;
  font-size:15px!important;
  line-height:1.2!important;
  font-weight:700!important;
  text-decoration:none!important;
  text-transform:none!important;
  cursor:pointer!important;
}
body .vca-shortcode.vca-auth-page form button[type="submit"]:hover:not(:disabled),
body .vca-shortcode.vca-auth-page a.vca-auth-primary-link:hover,
body .vca-auth-modal form button[type="submit"]:hover:not(:disabled){background:#C51B59!important;background-color:#C51B59!important;color:#fff!important;transform:none!important;filter:none!important}
body .vca-shortcode.vca-auth-page form button[type="submit"]:disabled,
body .vca-auth-modal form button[type="submit"]:disabled{background:#E5E1E7!important;color:#9A949D!important;cursor:not-allowed!important}

body .vca-shortcode.vca-auth-page a.vca-link,
body .vca-shortcode.vca-auth-page a.vca-back,
body .vca-shortcode.vca-auth-page button.vca-link,
body .vca-auth-modal a.vca-link,
body .vca-auth-modal a.vca-back,
body .vca-auth-modal button.vca-link{
  color:#D91F63!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  text-shadow:none!important;
  font-family:inherit!important;
  font-weight:600!important;
  text-decoration:none!important;
  text-transform:none!important;
}
body .vca-shortcode.vca-auth-page a.vca-link:hover,
body .vca-shortcode.vca-auth-page a.vca-back:hover,
body .vca-shortcode.vca-auth-page button.vca-link:hover,
body .vca-auth-modal a.vca-link:hover,
body .vca-auth-modal a.vca-back:hover,
body .vca-auth-modal button.vca-link:hover{color:#C51B59!important;text-decoration:underline!important}

body .vca-shortcode-login .vca-login-links,
body .vca-auth-modal .vca-login-links{
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:10px 0 0!important;
  padding:0!important;
  color:#706B73!important;
  font-size:13.5px!important;
  line-height:1.4!important;
}
body .vca-shortcode-login .vca-login-links span,
body .vca-auth-modal .vca-login-links span{color:#C3BDC5!important}
body .vca-shortcode-login .vca-signup-prompt,
body .vca-shortcode-signup .vca-signup-prompt,
body .vca-shortcode-forgot .vca-signup-prompt,
body .vca-auth-modal .vca-signup-prompt{
  display:block!important;
  margin:22px 0 0!important;
  padding:18px 0 0!important;
  border:0!important;
  border-top:1px solid #ECE7EE!important;
  background:transparent!important;
  color:#706B73!important;
  font-size:14px!important;
  line-height:1.45!important;
  text-align:center!important;
}
body .vca-shortcode.vca-auth-page .vca-back,
body .vca-auth-modal .vca-back{display:inline-flex!important;margin:0 0 18px!important;font-size:14px!important}

/* Registration remains one vertical app-style flow on every desktop size. */
body .vca-shortcode-signup .vca-grid,
body .vca-auth-modal .vca-grid{display:grid!important;grid-template-columns:1fr!important;gap:14px!important}
body .vca-shortcode.vca-auth-page input[name="code"],
body .vca-auth-modal input[name="code"]{
  height:58px!important;min-height:58px!important;max-height:58px!important;
  padding-left:22px!important;
  text-align:center!important;
  font-size:24px!important;
  font-weight:700!important;
  letter-spacing:8px!important;
}
body .vca-shortcode-signup .vca-secondary,
body .vca-auth-modal .vca-secondary{
  margin:8px 0 0!important;
  padding:22px 0 0!important;
  border:0!important;
  border-top:1px solid #ECE7EE!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

/* Account dashboard color protection. */
body #vca-account:not(.vca-auth-shell){background:#F8F7FA!important;color:#242124!important}
body #vca-account:not(.vca-auth-shell) .vca-card{background:#fff!important;border-color:#ECE7EE!important;color:#242124!important}
body #vca-account:not(.vca-auth-shell) .vca-outline{background:transparent!important;background-image:none!important;border-color:#D91F63!important;color:#D91F63!important}
body #vca-account:not(.vca-auth-shell) .vca-user-avatar{background:#FFE2EC!important;color:#D91F63!important}
body #vca-account:not(.vca-auth-shell) input,
body #vca-account:not(.vca-auth-shell) select{background:#fff!important;border-color:#D8D1DB!important;color:#242124!important}
body #vca-account:not(.vca-auth-shell) form button[type="submit"]{background:#D91F63!important;background-image:none!important;color:#fff!important}

/* Header/menu protection. */
body .vca-shortcode-menu button.vca-header-login{background:#fff!important;background-image:none!important;border:1px solid #D91F63!important;color:#D91F63!important}
body .vca-shortcode-menu button.vca-header-signup{background:#D91F63!important;background-image:none!important;border:1px solid #D91F63!important;color:#fff!important}
body .vca-shortcode-menu .vca-dropdown-panel{background:#fff!important;border-color:#ECE7EE!important}
body .vca-shortcode-menu .vca-dropdown-panel a{color:#242124!important}
body .vca-shortcode-menu .vca-dropdown-panel a:hover{background:#FFF3F7!important;color:#D91F63!important}

/* Modal uses same compact app surface instead of a second theme. */
body .vca-auth-modal .vca-modal-dialog.vca-auth-card{
  width:min(500px,calc(100vw - 28px))!important;
  max-height:calc(100vh - 28px)!important;
  padding:28px 24px 24px!important;
  border:1px solid #ECE7EE!important;
  border-radius:18px!important;
  background:#FFFFFF!important;
  color:#242124!important;
  box-shadow:0 22px 64px rgba(36,33,36,.18)!important;
}
body .vca-auth-modal .vca-auth-tabs{margin:0 36px 22px!important;background:#F1EDF2!important}
body .vca-auth-modal .vca-auth-tabs button{background:transparent!important;background-image:none!important;color:#706B73!important;border:0!important}
body .vca-auth-modal .vca-auth-tabs button.active{background:#fff!important;color:#D91F63!important}

@media(max-width:600px){
  body .vca-shortcode.vca-auth-page{width:calc(100% - 20px)!important;margin:18px auto 30px!important}
  body .vca-shortcode.vca-auth-page>.vca-auth-card{padding:24px 18px 22px!important;border-radius:16px!important}
  .vca-shortcode .vca-app-hero-icon{width:66px!important;min-width:66px!important;max-width:66px!important;height:66px!important;min-height:66px!important;max-height:66px!important}
  body .vca-auth-modal .vca-modal-dialog.vca-auth-card{padding:24px 18px 20px!important;border-radius:16px!important}
  body .vca-auth-modal .vca-auth-tabs{margin:0 30px 20px!important}
  body .vca-shortcode-login .vca-login-links{justify-content:center!important}
}


/* v1.8.3 auth-flow fixes */
.vca-shortcode form[hidden],
.vca-shortcode .vca-secondary[hidden],
.vca-auth-modal form[hidden],
.vca-auth-modal .vca-secondary[hidden]{display:none!important}
.vca-app-hero-reset::before{content:""!important;position:absolute!important;left:50%!important;bottom:15px!important;width:28px!important;height:22px!important;transform:translateX(-50%)!important;border:2.5px solid #D91F63!important;border-radius:6px!important;background:transparent!important;box-sizing:border-box!important}
.vca-app-hero-reset::after{content:""!important;position:absolute!important;left:50%!important;top:14px!important;width:16px!important;height:16px!important;transform:translateX(-50%)!important;border:2.5px solid #D91F63!important;border-bottom:0!important;border-radius:12px 12px 0 0!important;background:transparent!important;box-sizing:border-box!important}

/* v1.8.5 dashboard width override; full component rules are also injected via accounts-critical.css. */
body #vca-account:not(.vca-auth-shell){width:min(1120px,calc(100% - 32px))!important;max-width:1120px!important;margin-left:auto!important;margin-right:auto!important}
body #vca-account .vca-account-overview-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}
body #vca-account .vca-dashboard-grid{display:grid!important;grid-template-columns:minmax(0,1.65fr) minmax(320px,.85fr)!important;gap:16px!important}
@media(max-width:900px){body #vca-account .vca-account-overview-grid{grid-template-columns:1fr 1fr!important}body #vca-account .vca-access-card{grid-column:1/-1!important}body #vca-account .vca-dashboard-grid{grid-template-columns:1fr!important}}
@media(max-width:620px){body #vca-account .vca-account-overview-grid{grid-template-columns:1fr!important}body #vca-account .vca-access-card{grid-column:auto!important}}

/* v1.9.1 release asset */
