/* Vuelta identity around each merchant's own card colors. */
:root{--green:#2447ef;--line:#dce1ed;--muted:#606a80;background:#f5f6fb;color:#182139;font-family:Arial,Helvetica,sans-serif}body{background:linear-gradient(180deg,#edf1ff 0,#f5f6fb 290px)}.client-shell{max-width:800px;padding:0 28px 128px}.top{padding:26px 0}.wordmark{color:#17234a;font-size:31px;letter-spacing:-2px}.wordmark span{color:#2447ef}.pill{background:#e8edff;color:#2447ef;font-size:12px}.intro{margin:28px 0 30px}.intro h1,.auth h1{font-size:clamp(32px,6vw,46px);line-height:1.04;font-weight:500;letter-spacing:-.055em}.eyebrow{color:#2447ef;font-size:11px;letter-spacing:.11em}.muted{color:var(--muted);font-size:15px;line-height:1.6}.panel{border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 6px 24px #23376104}.panel h2{font-size:24px;font-weight:500}.btn{min-height:48px;font-size:15px;border-radius:10px;font-weight:600}.btn.primary{box-shadow:0 4px 12px #2447ef15}.btn.subtle{background:#edf1ff}.text-button{min-height:44px;font-size:14px}.field label{font-size:14px}.field input{font-size:16px;color:#182139;border-color:#cbd3e5;min-height:50px;border-radius:10px}.field small,.notice{font-size:13px;line-height:1.6;color:#606a80}.auth{max-width:480px;margin:25px auto}.auth-tabs{background:#e8edfa;padding:5px}.auth-tabs :is(button,a){font-size:15px;min-height:44px;color:#59647d}.auth-tabs :is(button[aria-selected=true],a[aria-current=page]){color:#2447ef}.auth #read-client-dni{margin:0 0 24px}.auth #dni-help{margin-top:-8px}.info{background:#edf1ff;color:#334a83}.error{color:#8e2e26}.card{padding:28px;border-radius:20px;box-shadow:0 16px 38px #16224516;min-height:240px}.card-head{font-size:14px}.card-type{font-size:11px}.card h2{font-size:29px;letter-spacing:-.04em}.card p{font-size:14px}.card-balance{font-size:54px;font-weight:600}.card-balance span{font-size:15px}.stamp{width:38px;height:38px;font-size:14px}.stamp-row{gap:10px}.balance-detail{font-size:14px;line-height:1.5}.card-foot p{font-size:14px}.progress{height:8px;background:#e0e5f0}.bottom-nav{max-width:800px;padding:9px 12px calc(10px + env(safe-area-inset-bottom));border-top:1px solid #dce1ed;background:#fffffffa;box-shadow:0 -8px 30px #20315b07}.bottom-nav :is(button,a){font-size:12px;min-height:56px;color:#626d85}.bottom-nav :is(button,a).active{background:#eaf0ff;color:#2447ef}.nav-mark{font-size:20px}.history-row{border-color:#e5e9f2}.history-row strong{font-size:15px}.history-row small{font-size:12px;color:#67728a}.history-row .delta{font-size:17px}.message{border-color:#2447ef}.benefit p{font-size:15px}.business-choice{border-color:#dce1ed;color:#192544}.business-choice span{color:#2447ef}.footer{color:#69748a;font-size:12px}.empty{padding:32px 18px;font-size:15px}#notice{background:#182139;color:#fff;max-width:calc(100vw - 32px);font-size:14px;bottom:calc(92px + env(safe-area-inset-bottom))}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #2447ef;outline-offset:4px}.client-shell main{scroll-margin-top:20px}.legal{font-size:13px;color:#606a80}@media(min-width:1000px){.client-shell{padding-top:18px}.auth{margin-top:50px}.top{border-bottom:1px solid #dce1ed}.intro{margin-top:36px}.panel{padding:30px}}@media(max-width:480px){.client-shell{padding:0 18px 124px}.top{padding:22px 0}.intro{margin-top:18px}.panel{padding:21px;border-radius:15px}.card{padding:24px;min-height:225px}.card h2{font-size:27px}.card-head{gap:9px}.stamp{width:34px;height:34px}.stamp-row{gap:8px}.bottom-nav{padding-left:6px;padding-right:6px}.bottom-nav :is(button,a){font-size:11px}.auth{margin-top:16px}.auth h1{font-size:36px}.balance-detail{font-size:13px}.field input{font-size:16px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.bottom-nav a,.auth-tabs a{display:flex;align-items:center;justify-content:center;text-decoration:none;box-sizing:border-box}
.birthday-fields{border:0;padding:0;margin:20px 0}.birthday-fields legend{font-size:13px;font-weight:650;margin-bottom:12px}.birthday-fields .form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.birthday-fields select{display:block;width:100%;min-height:48px;padding:12px 8px;border:1px solid #d8dfef;border-radius:10px;background:#fff;color:#202b45;font:inherit}.birthday-fields select:focus-visible{outline:3px solid #2447ef;outline-offset:3px}
#registration-options{border-top:1px solid #e1e6f1;margin:20px 0;padding-top:8px}#registration-options summary{font-size:13px;color:#53627f;min-height:44px;line-height:1.5;cursor:pointer}#registration-options[open] summary{margin-bottom:18px}#registration-options .notice{font-size:12px}#registration-options .field:last-child{margin-bottom:18px}

/* Task navigation: focus orientation is separate from keyboard interaction. */
main[tabindex="-1"]:focus{outline:none}.client-business-entry{margin-left:auto;text-align:right;color:#273449;text-decoration:none;font-size:14px;max-width:65%;overflow-wrap:anywhere}.client-business-entry span{display:block;color:#2447ef;font-size:13px;margin-top:4px}.bottom-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.bottom-nav a{flex:1}.account-edit{padding:16px 0;border-bottom:1px solid #e2e6ef}.account-edit summary,.account-option>summary{min-height:44px;cursor:pointer;display:list-item;list-style-position:inside}.account-edit form{padding-top:16px}.account-option>.panel{padding:12px 0;margin:0;border:0;box-shadow:none}.account-option h2{font-size:18px}.client-shell .intro{margin:24px 0}.client-shell .intro h1{font-size:32px}.client-shell .top{gap:18px}.client-shell .footer{font-size:12px}@media(max-width:480px){.client-shell .panel{padding:18px}.client-shell .bottom-nav a{font-size:12px;padding:10px 4px}.client-business-entry{font-size:13px}}

body{background:#f7f8fb}.client-shell{background:transparent;margin:0 auto;padding:0 24px 112px;box-shadow:none;border-radius:0}.client-shell>.top{padding:18px 0;border-bottom:1px solid #dce1ed;min-height:76px}.client-shell .intro{margin:22px 0}.client-shell .panel h2{font-size:18px;font-weight:650}.client-shell .account-edit{margin:0;padding:0;border:0;border-bottom:1px solid #e2e6ef}.client-shell .account-edit>summary{min-height:56px;padding:17px 0;font-size:14px;line-height:22px}.client-shell .account-option{margin:0 0 10px;padding:0 18px;box-shadow:none;border-radius:12px}.client-shell .account-option>summary{min-height:56px;padding:17px 0;font-size:14px;line-height:22px}.client-shell .panel:has(.account-edit){padding:18px}.client-shell .profile-line{font-size:14px;padding:17px 0}.client-shell .client-business-entry{font-size:14px;line-height:1.4}.client-shell .bottom-nav{border-radius:0}.client-shell .intro>.eyebrow{display:none}@media(max-width:480px){.client-shell{padding:0 16px 112px}.client-shell>.top{padding:18px 0}.client-shell .client-business-entry{font-size:13px}}

/* Merchant identity owns the customer surface; Vuelta remains the provider. */
.client-shell.customer-brand-scope{--green:var(--customer-brand-link);background:transparent}.client-shell.customer-brand-scope>.top{display:block;padding:0;min-height:76px}.client-shell.customer-brand-scope>.top>.customer-brand-header{padding:16px 0;width:100%}.client-shell.customer-brand-scope a{color:var(--customer-brand-link)}.client-shell.customer-brand-scope .customer-brand-home{color:#172037}.client-shell.customer-brand-scope .btn.primary{background:var(--customer-brand);color:var(--customer-brand-ink);border-color:var(--customer-brand-link);box-shadow:none}.client-shell.customer-brand-scope .btn:not(.primary):not(.danger),.client-shell.customer-brand-scope .text-button{color:var(--customer-brand-link)}.client-shell.customer-brand-scope .bottom-nav a{color:#626d85}.client-shell.customer-brand-scope .bottom-nav a.active{background:var(--customer-brand-tint);color:var(--customer-brand-link)}.client-shell.customer-brand-scope .auth-tabs a[aria-current=page]{color:var(--customer-brand-link)}.client-shell.customer-brand-scope .auth-tabs,.client-shell.customer-brand-scope .btn.subtle{background:var(--customer-brand-tint)}.client-shell.customer-brand-scope :is(button,a,input,select,summary):focus-visible{outline-color:var(--customer-brand-link)}.client-shell.customer-brand-scope main[tabindex="-1"]:focus{outline:none}.client-shell.customer-brand-scope .eyebrow{color:var(--customer-brand-link)}.client-shell .customer-brand-attribution{margin-top:28px;margin-bottom:0}.client-shell .client-business-page .business-info>h2{display:none}.client-shell .customer-merchant-description{margin-bottom:18px}.client-shell .customer-access-label{font-size:14px;color:#657187;padding:20px 0;display:block}.client-shell .auth h1{font-size:32px}.client-shell .referral-count{background:var(--customer-brand-tint)}.client-shell .referral-url{color:#273449;background:#fff}.client-shell .message{border-color:var(--customer-brand-link)}

@media(max-height:500px) and (min-width:600px){.client-shell.customer-brand-scope{padding-bottom:90px}.client-shell.customer-brand-scope>.top{min-height:0}.client-shell.customer-brand-scope>.top>.customer-brand-header{padding:8px 0}.client-shell .intro{margin:14px 0 16px}.client-shell .intro h1,.client-shell .auth h1{font-size:28px;margin-bottom:6px}.client-shell .intro>p{margin-bottom:0}.client-shell .bottom-nav{padding-top:5px;padding-bottom:calc(5px + env(safe-area-inset-bottom))}.client-shell .bottom-nav a{min-height:44px;padding:8px 4px}.client-shell .auth{margin-top:14px}.client-shell .panel{margin-bottom:12px}.client-shell .customer-brand-attribution{margin-top:16px}}

.auth .field select{display:block;width:100%;min-height:48px;border:1px solid #cbd3e5;border-radius:10px;padding:10px;background:#fff;color:#182139;font:inherit}.auth #verification-send{margin-top:14px}.auth .birthday-fields{padding:16px 0;border-top:1px solid #dce1ed;border-bottom:1px solid #dce1ed}.auth .birthday-fields legend{font-size:16px}
