/* AVANZA Life IA 1.0.17.3 — mobile/app shell + login + timeline polish */
/* Calendar: Today must remain unmistakable in light and dark through the full visible day column. */
html[data-theme="light"] body[data-page="calendar"] .fc .fc-timegrid-col.fc-day-today,
html[data-theme="light"] body[data-page="calendar"] .fc .fc-timegrid-col.av-calendar-today,
html[data-theme="light"] body[data-page="calendar"] .fc .fc-daygrid-day.fc-day-today,
html[data-theme="light"] body[data-page="calendar"] .fc .fc-daygrid-day.av-calendar-today{
  background:color-mix(in srgb,var(--primary) 11%,var(--surface,#fff))!important;
  box-shadow:inset 3px 0 0 color-mix(in srgb,var(--primary) 58%,transparent),inset -1px 0 0 color-mix(in srgb,var(--secondary) 30%,transparent)!important;
}
html[data-theme="light"] body[data-page="calendar"] .fc .fc-timegrid-col.fc-day-today .fc-timegrid-col-frame,
html[data-theme="light"] body[data-page="calendar"] .fc .fc-timegrid-col.av-calendar-today .fc-timegrid-col-frame{background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 10%,transparent),color-mix(in srgb,var(--secondary) 5%,transparent))!important}
html[data-theme="dark"] body[data-page="calendar"] .fc .fc-timegrid-col.fc-day-today,
html[data-theme="dark"] body[data-page="calendar"] .fc .fc-timegrid-col.av-calendar-today{background:color-mix(in srgb,var(--primary) 18%,var(--surface,#071426))!important}

/* Login: wallpaper is the page, not a barely visible decoration. Card stays opaque/readable. */
.login-body{background:var(--dark-page,#050b18)!important}
.login-body::before{opacity:.88!important;filter:saturate(1.06) contrast(1.02)!important;background-size:cover!important;background-position:var(--login-bg-position,center center)!important}
.login-body::after{background:linear-gradient(110deg,color-mix(in srgb,var(--dark-page,#050b18) 54%,transparent),color-mix(in srgb,var(--dark-page,#050b18) 30%,transparent))!important}
.login-card{background:color-mix(in srgb,var(--dark-surface,#10203a) 97%,#050b18)!important;backdrop-filter:none!important;box-shadow:0 24px 70px rgba(0,0,0,.34)!important}
html[data-theme="light"] .login-body::before{opacity:.58!important}
html[data-theme="light"] .login-body::after{background:linear-gradient(110deg,rgba(247,249,252,.42),rgba(247,249,252,.18))!important}
html[data-theme="light"] .login-card{background:color-mix(in srgb,var(--light-surface,#fff) 98%,#fff)!important}
@media(max-width:980px){
  .login-body::before{opacity:.82!important}.login-body::after{background:rgba(4,10,24,.42)!important}
  html[data-theme="light"] .login-body::before{opacity:.54!important}html[data-theme="light"] .login-body::after{background:rgba(247,249,252,.38)!important}
  .login-card{max-width:460px!important}
}
/* iOS Safari never auto-zooms form controls rendered at 16px or larger. */
@media(max-width:760px){
 .login-body input,.login-body select,.login-body textarea,.login-body button{font-size:16px!important}
 .login-body .field label{font-size:.78rem!important}
}

/* Finance mobile: Movement is the primary action, keep it visible first. */
@media(max-width:760px){
 body[data-page="finance"] .finance-toolbar{scroll-snap-type:x proximity!important;-webkit-overflow-scrolling:touch!important}
 body[data-page="finance"] .finance-toolbar #newTxnBtn{order:-10!important;position:sticky!important;left:0!important;z-index:3!important;box-shadow:8px 0 18px color-mix(in srgb,var(--bg) 88%,transparent)!important}
 body[data-page="finance"] .finance-toolbar #financeMonth{order:-9!important}
}

/* Horizontal sheets: Today receives a visual lane and becomes the centering target. */
.routine-month-table .today-col,.finance-sheet .today-col{background:color-mix(in srgb,var(--primary) 10%,var(--surface))!important;box-shadow:inset 2px 0 color-mix(in srgb,var(--primary) 45%,transparent),inset -2px 0 color-mix(in srgb,var(--primary) 22%,transparent)!important}
.routine-month-table td.today-col{background:color-mix(in srgb,var(--primary) 7%,var(--surface))!important}

/* App-mode button: compact in the topbar, clear on phone. */
#appModeBtn.is-standalone{color:var(--success)!important}
@media(max-width:700px){#appModeBtn{display:grid!important}.topbar #appModeBtn{width:42px;height:42px}}
