/* v1.10: shared controls and responsive layouts. */
.evc-managed-page{--evc-focus:#a66a00;scroll-padding-top:110px}
.evc-managed-page :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--evc-focus);outline-offset:3px}
.evc-managed-page :is(input,select,textarea){scroll-margin-top:120px}
.evc-managed-page :is(.evc-button,.evc-slider-arrow,.evc-slider-pause,.evc-slider-dots button,.evc-menu-toggle){min-height:44px;min-width:44px}
.evc-managed-page :is(.evc-card,.evc-account-application,.evc-upload,.evc-review article){overflow-wrap:anywhere}
.evc-home-actions{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 0}
.evc-home-actions .evc-button{background:#fff;color:#064d3a;border:1px solid #fff;border-radius:12px;min-height:48px;padding:14px 22px}
.evc-home-actions .evc-button:last-child{background:transparent;color:#fff;border-color:#b8d3c7;box-shadow:none}
.evc-upload input[type=file]{max-width:100%;font-size:14px}
.evc-upload input[type=file]::file-selector-button{min-height:44px;border:0;border-radius:8px;background:#e5f0eb;color:#07513e;padding:8px 12px;margin-right:10px;cursor:pointer}
.evc-form-message{line-height:1.55}
.evc-account-meta>span{min-width:0;overflow-wrap:anywhere}
.evc-chatbot.evc-help-inline{position:relative;right:auto;bottom:auto;z-index:100;margin:20px auto;max-width:1180px;padding:0 20px;display:flex;justify-content:flex-end}
.evc-chatbot.evc-help-inline .evc-chatbot-panel{position:fixed;right:20px;bottom:20px;max-height:calc(100dvh - 40px)}
.evc-chatbot.evc-help-inline .evc-chatbot-launcher{box-shadow:0 4px 14px #073f3020}
@media(max-width:700px){
 .evc-shell{width:calc(100% - 32px)}
 .evc-service-grid,.evc-form-grid,.evc-upload-grid,.evc-review,.evc-payment-options{grid-template-columns:minmax(0,1fr)}
 .evc-wizard-header{flex-wrap:wrap;gap:12px}
 .evc-wizard-actions{display:flex;flex-wrap:wrap;gap:12px;padding-bottom:16px}
 .evc-wizard-actions .evc-button{flex:1 1 170px;white-space:normal;text-align:center}
 .evc-managed-page :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px;min-width:0;max-width:100%}
 .evc-review dl>div{gap:12px;align-items:flex-start}
 .evc-review dd{overflow-wrap:anywhere}
 .evc-date-parts{grid-template-columns:1fr 1fr 1.3fr;gap:8px}
 .evc-date-parts input{width:100%;padding:12px 8px}
 .evc-progress{gap:4px;font-size:11px}
 .evc-home-actions{gap:10px;margin:22px 0 0}
 .evc-home-actions .evc-button{flex:1 1 150px;text-align:center;padding:13px 16px}
 .evc-hero-copy-stack{min-height:350px}
 .evc-hero-copy h1,.evc-hero-copy h2{font-size:clamp(36px,10vw,54px)}
 .evc-hero-copy>p{font-size:16px}
 .evc-chatbot.evc-help-inline{justify-content:center;margin:12px auto 24px}
 .evc-chatbot.evc-help-inline .evc-chatbot-launcher-copy{display:grid}
 .evc-chatbot.evc-help-inline .evc-chatbot-panel{left:12px;right:12px;bottom:12px;width:auto;height:calc(100dvh - 24px);max-height:calc(100dvh - 24px)}
 .evc-chatbot-panel .evc-chatbot-messages{min-height:0}
 .evc-chatbot-panel :is(button,input){min-height:44px}
 .evc-chatbot-panel input{font-size:16px}
}
@media(prefers-reduced-motion:reduce){.evc-managed-page *{scroll-behavior:auto!important}}

/* Account complement action, aligned with the application card. */
.evc-account-complement { margin: 24px 32px; padding: 24px; border: 1px solid #d8e5df; border-left: 4px solid #d9ad28; border-radius: 12px; background: #f6faf8; }
.evc-account-complement h3 { margin: 0 0 12px; }
.evc-account-complement p { white-space: normal; overflow-wrap: anywhere; }
.evc-account-complement ul { padding-left: 24px; margin: 16px 0 24px; }
.evc-account-complement form { margin: 0; }
@media (max-width: 600px) { .evc-account-complement { margin: 16px; padding: 18px; } .evc-account-complement .evc-button { width: 100%; } }

.evc-account-decision { border-left-color: #bd3446; background: #fff5f6; }
.evc-account-application.status-rejected > header > strong { color: #a5283b; background: #fff0f2; }
