.btn {
  appearance: none;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.76);
  color: var(--text);
  padding: 10px 16px;
  font-size: 0.86rem;
  font-weight: 600;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: transform 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

.btn:hover {
  transform: translateY(-1px);
  background: #fff;
  box-shadow: 0 10px 24px rgba(41, 29, 17, 0.12);
}

.btn-primary {
  border-color: transparent;
  color: var(--primary-contrast);
  background: linear-gradient(132deg, #1f3d63, #2a4f7b);
}

.btn-primary:hover {
  background: linear-gradient(132deg, #193653, #234669);
}

.btn-accent {
  border-color: transparent;
  color: #fff;
  background: linear-gradient(132deg, #c86c2e, #d88648);
  font-weight: 600;
}

.btn-accent:hover {
  background: linear-gradient(132deg, #9d4819, #a85820);
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(200, 108, 46, 0.4);
}

.btn-ghost {
  background: transparent;
  border-color: rgba(31, 61, 99, 0.36);
  color: var(--primary);
}

.container{width:min(var(--max-width),calc(100% - 34px));margin:0 auto}
.site-header{margin:14px 0 32px;position:sticky;top:12px;z-index:10;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;border:1px solid var(--line);border-radius:999px;padding:12px 16px;background:rgba(255,252,246,.86);box-shadow:var(--shadow-soft)}
.brand{display:flex;align-items:center;gap:10px}.brand-mark,.links::after{background:url(./icons/money-pulse-logo.png) 50% 62%/auto 86% no-repeat}.brand-mark{width:150px;height:58px}.brand h1{font-size:1rem;letter-spacing:.05em;text-transform:uppercase}.brand p{font-size:.74rem;color:var(--muted);margin-top:2px}@media (min-width:981px){.brand>div+div{display:none}}
.header-side{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-start;flex:1;min-width:0;order:1}.links{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-right:auto;min-width:0}.header-side .links{flex:0 1 auto;justify-content:flex-start;margin-right:auto}.links a{text-decoration:none;color:var(--muted);padding:6px 10px;border-radius:999px;font-size:.85rem;white-space:nowrap;transition:background 160ms ease,color 160ms ease}.links a:hover{background:rgba(31,61,99,.1);color:var(--primary)}.links a.is-active{background:linear-gradient(180deg,rgba(31,61,99,.18),rgba(31,61,99,.1));color:#173658;border:1px solid rgba(31,61,99,.18);box-shadow:inset 0 -2px 0 0 var(--primary),0 10px 22px rgba(31,61,99,.16);font-weight:600}
.auth-dropdown-wrapper{position:relative;display:inline-flex;align-items:center;justify-content:flex-end;gap:10px}.auth-user-email{display:none;padding:6px 10px;border-radius:999px;border:1px solid rgba(31,61,99,.22);background:rgba(31,61,99,.08);color:#173658;font-size:.78rem;font-weight:600;line-height:1;overflow-wrap:anywhere;word-break:break-word}.auth-user-email::before{content:"";width:7px;height:7px;border-radius:999px;background:#2f9f63;box-shadow:0 0 0 3px rgba(47,159,99,.14);flex:0 0 auto}.auth-dropdown-wrapper[data-auth-state="authenticated"]{border:1px solid rgba(31,61,99,.18);border-radius:999px;background:linear-gradient(135deg,rgba(255,252,247,.92),rgba(240,231,218,.82));box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 10px 22px rgba(31,61,99,.1);padding:4px;flex-wrap:wrap;max-width:100%}.auth-dropdown-wrapper[data-auth-state="authenticated"] .auth-user-email{display:inline-flex;align-items:center;gap:7px;flex:1 1 auto;max-width:min(48ch,max(16ch,calc(100vw - 190px)));min-width:min(100%,16ch);border:0;background:transparent;color:var(--text);font-size:.8rem;font-weight:700;line-height:1.18;padding:6px 8px}.auth-dropdown-wrapper[data-auth-state="authenticated"] .btn-primary{flex:0 0 auto;border-color:transparent;background:linear-gradient(132deg,#1f3d63,#2a4f7b);color:var(--primary-contrast);padding:7px 11px;font-size:.78rem;line-height:1;white-space:nowrap;box-shadow:none}.auth-dropdown-wrapper[data-auth-state="authenticated"] .btn-primary:hover{background:linear-gradient(132deg,#193653,#234669);box-shadow:none}
.auth-dropdown{display:none;position:fixed;top:auto;right:auto;width:min(360px,calc(100vw - 32px));background:linear-gradient(180deg,rgba(255,252,247,.98),rgba(248,241,231,.96));border:1px solid rgba(84,55,28,.14);border-radius:22px;box-shadow:0 22px 56px rgba(44,30,17,.18);z-index:9999;padding:18px;overflow:hidden;opacity:0;transform:translateY(-10px) scale3d(.82,.72,1);transform-origin:top right;will-change:transform,opacity}.auth-dropdown::before{content:"";position:absolute;top:-8px;left:calc(var(--auth-dropdown-arrow-x, 338px) - 8px);width:16px;height:16px;background:rgba(255,252,247,.98);border-top:1px solid rgba(84,55,28,.14);border-left:1px solid rgba(84,55,28,.14);transform:rotate(45deg)}.auth-dropdown.is-open{display:block!important;opacity:1;transform:translateY(0) scale3d(1,1,1);animation:authJellyPop 520ms cubic-bezier(.22,.9,.2,1.18) both}@keyframes authJellyPop{0%{opacity:0;transform:translateY(-12px) scale3d(.68,.46,1)}38%{opacity:1;transform:translateY(0) scale3d(1.12,.8,1)}62%{transform:translateY(0) scale3d(.92,1.08,1)}78%{transform:translateY(0) scale3d(1.03,.96,1)}100%{opacity:1;transform:translateY(0) scale3d(1,1,1)}}
.auth-dropdown-tabs{display:flex;gap:6px;margin:0 28px 16px 0;padding:4px;border:1px solid rgba(84,55,28,.12);border-radius:999px;background:rgba(31,61,99,.06)}.auth-dropdown-tab{appearance:none;border:1px solid transparent;background:transparent;padding:9px 14px;font-size:.85rem;font-weight:600;color:var(--muted);cursor:pointer;border-radius:999px;flex:1 1 0;transition:all 160ms ease}.auth-dropdown-tab:hover{color:var(--primary)}.auth-dropdown-tab.is-active{background:rgba(255,255,255,.92);color:var(--primary);border-color:rgba(84,55,28,.1);box-shadow:0 8px 16px rgba(31,61,99,.08)}.auth-dropdown-content{display:none}.auth-dropdown-content.is-active{display:block;padding:2px 2px 0}.auth-form-group{display:flex;flex-direction:column;gap:7px;margin-bottom:14px}.auth-form-group label{font-size:.8rem;color:var(--muted);font-weight:600}.auth-form-group input{border:1px solid rgba(84,55,28,.16);border-radius:12px;background:rgba(255,255,255,.92);padding:11px 12px;font-size:.9rem;font-family:inherit;transition:border-color 160ms ease}.auth-form-group input:focus{outline:none;border-color:rgba(31,61,99,.52);box-shadow:0 0 0 3px rgba(31,61,99,.12)}.auth-dropdown-error{color:#c83d3d;font-size:.8rem;margin-bottom:10px;display:none}.auth-dropdown-error.show{display:block}.auth-dropdown-button{width:100%;margin-bottom:10px;min-height:44px;box-shadow:0 12px 24px rgba(31,61,99,.14)}.auth-dropdown-divider{border:none;border-top:1px solid rgba(84,55,28,.12);margin:14px 0 12px}.auth-dropdown-social{display:grid;gap:8px}.auth-dropdown-social button{appearance:none;border:1px solid rgba(84,55,28,.14);border-radius:12px;background:rgba(255,255,255,.9);padding:11px 12px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all 160ms ease;display:flex;align-items:center;justify-content:center;gap:8px}.auth-dropdown-social button:hover{background:rgba(31,61,99,.08);border-color:rgba(31,61,99,.24);transform:translateY(-1px)}.auth-provider-icon{width:18px;height:18px}.auth-dropdown-close{appearance:none;border:1px solid rgba(84,55,28,.1);background:rgba(255,255,255,.84);position:absolute;top:14px;right:14px;width:30px;height:30px;cursor:pointer;font-size:1rem;color:var(--muted);border-radius:999px;transition:color 160ms ease,background 160ms ease,border-color 160ms ease}.auth-dropdown-close:hover{color:var(--text);background:rgba(31,61,99,.08);border-color:rgba(31,61,99,.18)}
.mobile-menu-toggle{display:none;appearance:none;border:1px solid var(--line);background:transparent;width:36px;height:36px;padding:0;cursor:pointer;border-radius:8px;position:relative;flex-direction:column;align-items:center;justify-content:center;gap:5px}.mobile-menu-toggle span{display:block;width:18px;height:2px;background:var(--text);border-radius:1px;transition:transform 200ms ease}.mobile-menu-toggle.is-open span{position:absolute}.mobile-menu-toggle.is-open span:nth-child(1){transform:rotate(45deg)}.mobile-menu-toggle.is-open span:nth-child(2){opacity:0}.mobile-menu-toggle.is-open span:nth-child(3){transform:rotate(-45deg)}.mobile-menu-backdrop{display:none;position:fixed;inset:0;background:transparent;z-index:9}.mobile-menu-backdrop.is-open{display:block}
@media (max-width:980px){body{padding-bottom:0}.container{width:min(var(--max-width),calc(100% - 16px))}.site-header{flex-direction:row;flex-wrap:nowrap;gap:8px;padding:10px 12px;justify-content:flex-start;align-items:center;border-radius:var(--radius-lg)}.mobile-menu-toggle{display:flex;order:-1;flex:0 0 36px;transition:transform .2s}.mobile-menu-toggle.is-open{position:fixed;top:20px;left:20px;transform:translateX(calc(min(82vw,320px) - 76px));z-index:1001;background:var(--bg)}.brand{justify-content:flex-start;flex:1 1 auto;min-width:0;order:0}.brand-mark{display:none}.brand>div+div{min-width:0;display:block}.brand h1{font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand p{display:none}.header-side{width:auto;flex-direction:row;flex-wrap:nowrap;gap:8px;align-items:center;order:1;flex:0 0 auto;justify-content:flex-end}.auth-dropdown-wrapper{width:auto;min-width:0;flex-wrap:nowrap}.auth-dropdown-wrapper[data-auth-state="authenticated"] .auth-user-email{display:none!important}.header-side .btn{width:auto;padding:8px 12px;font-size:.8rem}.links{position:fixed;inset:0 auto 0 0;width:min(82vw,320px);z-index:1000;flex-direction:column;align-items:stretch;background:var(--bg);border-radius:0 var(--radius-lg) var(--radius-lg) 0;box-shadow:18px 0 42px rgba(44,30,17,.22);padding:92px 20px 20px;gap:8px;margin:0;display:flex;transform:translateX(-105%);transition:transform .2s,visibility 0s .2s;visibility:hidden;pointer-events:none}.links::before{content:"Menú";color:var(--primary);font-weight:700;margin-bottom:8px}.links::after{content:"";position:absolute;top:14px;left:20px;width:136px;height:58px;background-position:0 62%}.links.is-open{transform:translateX(0);visibility:visible;pointer-events:auto;transition:transform .2s}.links a{font-size:.95rem;padding:12px 16px;border-radius:10px;text-align:left}.auth-dropdown{position:fixed;top:86px;left:14px;right:14px;width:auto;max-width:none;transform-origin:top left}.auth-dropdown::before{display:none}}
@media (max-width:420px){.brand h1{display:none}.brand p{display:none}.links a{font-size:.9rem;padding:11px 14px}}


.partner-rail {
  display: none;
}

.partner-panel {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 620px;
  border: 1px solid rgba(84, 55, 28, 0.14);
  border-radius: var(--radius-lg);
  background: rgba(255, 250, 243, 0.72);
  box-shadow: 0 14px 34px rgba(44, 30, 17, 0.1);
  color: var(--muted);
  padding: 18px 14px;
}

.partner-panel span {
  color: var(--accent);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.partner-panel strong {
  color: var(--primary);
  font-size: 0.96rem;
  line-height: 1.25;
}

.partner-panel small {
  font-size: 0.78rem;
  line-height: 1.4;
}

.money-pulse-adsense-slot {
  display: block;
  min-width: 160px;
  min-height: 180px;
}

.language-switcher {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  gap: 2px;
  border: 1px solid rgba(31, 61, 99, 0.18);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.58);
  padding: 3px;
  min-height: 36px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72), 0 8px 18px rgba(31, 61, 99, 0.08);
}

.language-switcher-option {
  border: 0;
  border-radius: 999px;
  background:center/24px no-repeat;
  color: var(--muted);
  cursor: pointer;
  font: inherit;
  font-size: 0.78rem;
  font-weight: 700;
  height: 32px;
  line-height: 1;
  min-width: 34px;
  padding: 7px 9px;
  transition: background 160ms ease, color 160ms ease, box-shadow 160ms ease;
}

.language-switcher-option:hover,
.language-switcher-option.is-active {
  background-color: rgba(31, 61, 99, 0.13);
  color: var(--primary);
  box-shadow: 0 6px 14px rgba(31, 61, 99, 0.1);
}

[data-locale-option=es-ES]{background-image:url(./icons/spanish-flag.png)}
[data-locale-option=en-US]{background-image:url(./icons/english-flag.png)}

[data-auth-state="checking"] {
  visibility: hidden;
}

@media (max-width: 820px) {
  .language-switcher {
    align-self: center;
    width: min(170px, 100%);
  }
}

@media (min-width:1540px){.partner-rail{--partner-side-space:calc((100vw - var(--max-width)) / 2);--partner-width:min(220px,max(150px,calc(var(--partner-side-space) - 56px)));--partner-offset:calc((var(--partner-side-space) - var(--partner-width)) / 2);position:fixed;top:64px;bottom:64px;z-index:1;display:flex;width:var(--partner-width);pointer-events:none}.partner-rail-left{left:var(--partner-offset)}.partner-rail-right{right:var(--partner-offset)}.partner-panel{width:100%;min-height:min(760px,calc(100vh - 128px));pointer-events:auto}}
@media (max-width:980px){.header-side .links{flex-flow:column;align-items:stretch;justify-content:flex-start;margin:0}}
@media (max-width:640px){.language-switcher{width:auto;min-height:32px}.language-switcher-option{min-width:30px;height:30px;padding:6px 7px;font-size:.72rem;background-size:20px}}
@media (max-width:420px){.language-switcher-option{min-width:26px;padding:6px}}

.search-intent {
  border: 1px solid rgba(31, 61, 99, 0.14);
  border-radius: var(--radius-lg);
  background: rgba(31, 61, 99, 0.07);
  padding: 16px;
  margin: 0 0 var(--search-intent-margin-bottom, 20px);
}

.search-intent h3 {
  color: var(--primary);
  font-size: 1.06rem;
  margin-bottom: 6px;
}

.search-intent p {
  color: var(--muted);
  max-width: 78ch;
}
