/* Moneta V7.3: progressive disclosure and small-screen reminders. */
.context-details {position:relative;display:inline-flex;vertical-align:middle;margin-top:3px;min-width:0;}
.context-trigger {display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:28px;min-width:28px;padding:3px 7px;border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:9px;cursor:pointer;list-style:none;font-size:11px;font-weight:650;}
.context-trigger::-webkit-details-marker,.compact-import-info summary::-webkit-details-marker,.reminder-peek summary::-webkit-details-marker{display:none;}
.context-trigger .icon{width:15px;height:15px;}
.context-details[open] {display:flex;flex-wrap:wrap;max-width:100%;}
.context-details[open]>.context-explanation{width:100%;flex-basis:100%;padding:8px 10px;margin:6px 0 0!important;background:var(--soft);border-radius:9px;font-size:12px;line-height:1.45;color:var(--muted);overflow-wrap:anywhere;}
.context-details:not([open])>.context-explanation{display:none;}
.context-word{font-size:10px;}
.page-heading .context-details,.section-intro .context-details{margin-top:6px;}
.surface-head .context-details{margin-top:4px;}
.surface-head .context-word{display:none;}
.compact-import-info,.reminder-peek{max-width:100%;position:relative;display:inline-block;vertical-align:top;margin:0 7px 9px 0;color:var(--text);}
.compact-import-info[hidden],.reminder-peek[hidden]{display:none!important;}
.compact-import-info>summary,.reminder-peek>summary{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--surface);color:var(--muted);padding:6px 10px;border-radius:999px;font-size:11px;font-weight:750;line-height:1.2;list-style:none;cursor:pointer;min-height:32px;}
.compact-import-info>summary .icon{height:14px;width:14px;color:#3678ef;}
.compact-import-body,.reminder-peek>div{position:absolute;z-index:18;top:calc(100% + 6px);left:0;width:min(355px,calc(100vw - 36px));padding:14px 15px;background:var(--surface);box-shadow:0 15px 42px rgba(6,22,53,.19);border:1px solid var(--line);border-radius:13px;color:var(--text);}
.compact-import-body strong{font-size:12px;line-height:1.5;display:block;}
.compact-import-body p{font-size:11.5px;line-height:1.5;margin:7px 0 12px;color:var(--muted);}
.compact-info-actions{display:flex;flex-wrap:wrap;gap:8px;}
.compact-info-actions .button{padding:8px 12px;min-height:34px;}
.reminder-peek>summary{border-color:#a8d2f7;background:var(--soft);color:var(--text);}
.reminder-peek>summary #reminderCount{display:grid;place-items:center;border-radius:20px;background:#246cdb;color:white;height:18px;min-width:18px;padding:0 3px;font-size:10px;}
.reminder-peek>div{width:min(335px,calc(100vw - 36px));}
.reminder-mini-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:7px 0;}
.reminder-mini-row strong{display:block;font-size:12px;}.reminder-mini-row small{display:block;color:var(--muted);font-size:11px;margin-top:4px;}
.reminder-small-action,.reminder-open-planning{border:0;background:transparent;color:#3076e9;cursor:pointer;font-weight:750;font-size:11px;min-height:35px;padding:5px;}
.reminder-open-planning{width:100%;text-align:left;}
.reminder-payment-row{align-items:flex-start;}
.reminder-paid-btn{border:1px solid #8fdccb;border-radius:9px;min-height:35px;background:#e5f8f1;color:#087963;padding:8px 10px;font-weight:750;font-size:11px;cursor:pointer;white-space:nowrap;}
.reminder-paid-btn.is-paid{background:var(--soft);border-color:var(--line);color:var(--muted);}
.reminder-prefs-form{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-top:12px;}
.reminder-prefs-form label{font-size:12px;font-weight:650;display:flex;align-items:center;gap:8px;flex:1 1 225px;color:var(--text);min-width:0;}
.reminder-prefs-form input[type=checkbox]{width:19px;height:19px;accent-color:#266fef;flex:none;}
.reminder-prefs-form select{height:38px;max-width:168px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:9px;padding:5px 8px;}
.reminder-prefs-form small{flex:1 1 100%;color:var(--muted);font-size:11px;line-height:1.4;}
.reminder-prefs-form .button{min-height:38px;}
/* Optimize first fold: remove redundant visual hierarchy and avoid large notices at every screen size. */
#overviewPage>.page-heading{margin-bottom:10px;}
#overviewPage>.page-heading .eyebrow{display:none;}
#overviewPage>.page-heading h2{font-size:clamp(19px,2.3vw,26px);line-height:1.22;}
#overviewPage>.stats-grid{margin-top:4px;}
#demoBanner:not([hidden]){font-size:11px;padding:9px 12px;margin-bottom:10px;}
.v67-kpi{position:relative;}
.v67-kpi .mini-info{margin-top:0;}
.v67-kpi .mini-info summary{font-size:10px;cursor:pointer;list-style:none;color:var(--muted);}
.v67-kpi .mini-info summary::-webkit-details-marker{display:none;}
.v67-kpi .mini-info[open] small{display:block;margin-top:5px;color:var(--muted);line-height:1.4;}
@media(max-width:599px){
  #overviewPage>.page-heading{margin-bottom:8px;}
  #overviewPage>.page-heading h2{font-size:clamp(19px,5vw,23px);}
  .context-word{display:none;}
  .setting-card.reminders-settings-card{display:block;}
  .setting-card.reminders-settings-card .setting-icon{display:none;}
  .setting-card.reminders-settings-card .button{margin:0;}
  .reminder-prefs-form{gap:13px;}
  .reminder-prefs-form label{flex:1 1 100%;}
  .compact-import-info,.reminder-peek{margin-bottom:7px;}
  .compact-import-info>summary,.reminder-peek>summary{font-size:10px;min-height:30px;padding:5px 9px;}
  .reminder-peek>div,.compact-import-body{position:relative;top:auto;left:auto;margin:7px 0 0;width:min(100%,calc(100vw - 28px));}
  .reminder-payment-row .v67-amount-actions{gap:6px;}
  .reminder-payment-row .v67-amount-actions strong{width:100%;}
}
@media(prefers-reduced-motion:reduce){.compact-import-info,.reminder-peek{scroll-behavior:auto;}}
/* Five useful bottom-nav destinations, irrespective of device model. Categories remain in More. */
@media(max-width:959px){.main-nav .nav-item[data-nav="categories"]{display:none!important;}}
/* Keep the key numbers above the fold on short mobile viewports. */
@media(max-width:599px){
  .topbar-kicker{display:none;}
  .topbar{row-gap:8px!important;padding-block:11px!important;}
  main{padding-top:12px!important;}
  #overviewPage>.stats-grid{gap:9px;}
  #overviewPage>.stats-grid .stat-card{min-height:128px;padding-block:13px;}
  #overviewPage>.stats-grid .stat-number{margin-top:10px;}
  #overviewPage>.stats-grid .stat-desc{margin-top:9px;}
}
