/* MARKOVMADE V3 — editorial graphite, mineral teal, readable at Telegram scale. */
:root{
  --v3-display:Manrope,Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --v3-body:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --v3-editorial:"Georgia",serif;
  --v3-space-1:.25rem;--v3-space-2:.5rem;--v3-space-3:.75rem;--v3-space-4:1rem;
  --v3-space-6:1.5rem;--v3-space-8:2rem;--v3-control:3rem;
  --v3-focus:0 0 0 3px color-mix(in srgb,var(--accent) 28%,transparent);
  --safe-left:0px;--safe-right:0px;--stable-height:100svh;
}
body{font-family:var(--v3-body);font-size:1rem;line-height:1.55}
h1,h2,h3,.brand-copy strong{font-family:var(--v3-display)}
.app-shell{padding-inline:max(1rem,var(--safe-left));padding-right:max(1rem,var(--safe-right))}
button{min-width:2.75rem;min-height:2.75rem}
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:3px;box-shadow:var(--v3-focus)}
.brand-copy small,.overline,.score-ring small,.outcome small,.quick-dock small,.timeline-row small,.timeline-row .time,.timeline-row .duration,.radar-row small,.calm-state small,.nav-item small,.capture-nav small,.planner-summary small,.task-main small,.search-field kbd,.segmented button,.mini-action,.note-meta small,.note-card p,.tag-row span,.note-actions button,.spotlight-row small,.module-row small,.sets-head,.set-row>span,.exercise-head p,.history-row small,.nutrition-hero p,.macro-row>div:first-child,.macro-row strong,.photo-callout strong,.photo-callout small,.trend-chip,.type-chip,.insights p,.habit-tile small,.finance-hero small,.transaction-list small,.material-list p,.material-list article>small,.evidence,.weekly-score small,.review-stack article small,.project-top small,.next-action small,.ai-context p,.ai-answer p,.profile-card p,.settings-group>h3,.setting-row small,.mini-segment button,.version-line,.empty-state p,.sheet-head p,.capture-types button,.save-state,.preview-meta,.capture-preview label,.editor-sheet label,.compact-sheet label,.search-filters button,.search-result small,.search-result p,.search-empty p,.searching,.toast,.offline-banner,.loading-brand small{
  font-size:.75rem;line-height:1.45
}
.button,.task-main strong,.timeline-copy strong,.radar-row strong,.calm-state strong,.module-row strong,.note-card h3,.habit-tile strong,.transaction-list strong,.transaction-list b,.next-action strong,.ai-composer textarea,.settings-action,.setting-row>span{font-size:.875rem}
.settings-action>span,.setting-row>span,.setting-row>span>span{min-width:0}
.setting-row>span{flex:1}
.settings-action strong,.settings-action small{display:block}
.settings-action small{margin-top:4px;color:var(--text-3);font-size:.75rem;line-height:1.35}
.setting-row>.mini-segment,.setting-row>.toggle{flex:none}
.field,.capture-composer textarea{font-size:1rem;line-height:1.5}
.nutrition-hero strong small{margin-left:.4rem;white-space:nowrap}
.icon-button,.avatar-button,.task-check,.row-menu,.voice-button,.photo-callout button{min-width:2.75rem;min-height:2.75rem}
.bottom-nav{height:calc(5rem + var(--safe-bottom));padding-bottom:calc(.5rem + var(--safe-bottom));align-items:center}
.nav-item{height:3.5rem}.capture-nav{height:4.25rem}.capture-nav>span{width:3rem;height:3rem}
.nav-item small,.capture-nav small{max-width:4.6rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sync-button{position:relative}.sync-button i{position:absolute;right:-.18rem;top:-.18rem;min-width:1.1rem;height:1.1rem;padding:0 .2rem;border-radius:99px;background:var(--warning);color:#211406;display:grid;place-items:center;font-size:.68rem;font-style:normal;font-weight:850}.sync-button.has-pending{border-color:color-mix(in srgb,var(--warning) 42%,var(--line))}

.moment-card{--moment-accent:var(--accent);position:relative;margin-top:1rem;overflow:hidden;border:1px solid color-mix(in srgb,var(--moment-accent) 26%,var(--line));border-radius:1.75rem;padding:1.35rem;background:linear-gradient(145deg,color-mix(in srgb,var(--surface-raised) 90%,var(--moment-accent) 10%),var(--surface-soft));box-shadow:var(--shadow-1);isolation:isolate}
.moment-card:before{content:"";position:absolute;inset:-55% -20% auto 35%;height:16rem;background:radial-gradient(circle,color-mix(in srgb,var(--moment-accent) 22%,transparent),transparent 68%);z-index:-1}
.moment-kicker{display:flex;align-items:center;gap:.5rem;color:var(--moment-accent);font-size:.75rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.moment-kicker button{margin-left:auto;border:0;background:transparent;color:inherit}.moment-kicker .icon{width:1.1rem}.moment-card h2{max-width:36rem;margin:1.1rem 0 .55rem;font-size:clamp(1.55rem,7vw,2.25rem);line-height:1.08;letter-spacing:-.045em}.moment-card>p{max-width:38rem;margin:0;color:var(--text-2);font-size:1rem;line-height:1.6}.moment-card>small{display:block;margin-top:.8rem;color:var(--text-3);font-size:.75rem}.moment-action{width:100%;margin-top:1rem;padding:.15rem 0;border:0;background:transparent;color:var(--moment-accent);display:flex;align-items:center;justify-content:space-between;text-align:left;font-size:.875rem;font-weight:800}.moment-action .icon{width:1.15rem}
.moment-sheet{--moment-accent:var(--accent);min-height:min(82svh,48rem);padding:clamp(1.5rem,6vw,3.5rem);display:flex;flex-direction:column;justify-content:center;background:linear-gradient(155deg,color-mix(in srgb,var(--ink-1) 86%,var(--moment-accent) 14%),var(--ink-0))}.moment-close{position:absolute;right:1rem;top:1rem}.moment-sheet>.overline{color:var(--moment-accent)}.moment-sheet>h2{font-family:var(--v3-editorial);font-size:clamp(2.2rem,10vw,4.6rem);line-height:1.02;letter-spacing:-.055em;margin:1rem 0}.moment-sheet>p{font-size:clamp(1.05rem,3.8vw,1.35rem);line-height:1.65;color:var(--text-2);max-width:48rem}.moment-sheet>.button{width:max-content;max-width:100%;margin-top:1.5rem}.moment-tools{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.5rem}.moment-tools button{border:1px solid var(--line);border-radius:99px;background:color-mix(in srgb,var(--surface) 84%,transparent);padding:0 .85rem;display:flex;align-items:center;gap:.4rem;font-size:.75rem}.moment-tools .icon{width:1rem}.moment-themes{margin-top:1.5rem}.moment-themes>small{color:var(--text-3)}.moment-themes>div{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.55rem}.theme-dot{width:2.75rem;height:2.75rem;border:2px solid color-mix(in srgb,var(--text) 18%,transparent);border-radius:50%;background:var(--accent)}
.theme-obsidian{background:#071016}.theme-porcelain{background:#f5f2e9}.theme-mineral{background:#36cdb7}.theme-aurora{background:linear-gradient(135deg,#54e6ce,#5668e8)}.theme-editorial{background:#d8b36a}.theme-monochrome{background:linear-gradient(135deg,#111,#eee)}.theme-dawn{background:linear-gradient(135deg,#f68b6e,#f2ca73)}.theme-night-sky{background:linear-gradient(135deg,#141c4a,#8b72ff)}.theme-forest{background:#2c7c63}.theme-ember{background:#d85c3a}.theme-ocean{background:#297fbd}.theme-brutalist{background:linear-gradient(135deg,#f4ef3a 50%,#111 50%)}
.moment-theme-porcelain{--moment-accent:#9a7138}.moment-theme-mineral{--moment-accent:#50ead0}.moment-theme-aurora{--moment-accent:#8b89ff}.moment-theme-editorial{--moment-accent:#d8b36a}.moment-theme-monochrome{--moment-accent:#d7dedc}.moment-theme-dawn{--moment-accent:#f69272}.moment-theme-night-sky{--moment-accent:#9b8cff}.moment-theme-forest{--moment-accent:#67d9a6}.moment-theme-ember{--moment-accent:#ff8666}.moment-theme-ocean{--moment-accent:#63bff5}.moment-theme-brutalist{--moment-accent:#f4ef3a}

.onboarding-shell{min-height:100svh;max-width:48rem;margin:auto;padding:calc(var(--safe-top) + 1rem) max(1rem,var(--safe-right)) calc(var(--safe-bottom) + 1rem) max(1rem,var(--safe-left));display:grid;grid-template-rows:auto auto 1fr auto;background:radial-gradient(55% 30% at 50% 0,color-mix(in srgb,var(--accent) 13%,transparent),transparent 72%)}
.onboarding-brand{display:flex;align-items:center;gap:.75rem}.onboarding-brand>strong{font-size:.88rem;letter-spacing:.14em}.onboarding-brand>span:last-child{margin-left:auto;color:var(--text-3);font-size:.75rem;font-variant-numeric:tabular-nums}.onboarding-progress{height:.2rem;margin:1rem 0 1.5rem;background:var(--ink-3);border-radius:99px;overflow:hidden}.onboarding-progress i{display:block;height:100%;background:var(--accent);transition:width 260ms ease}.onboarding-card{align-self:start}.onboarding-card>h1{font-size:clamp(2.1rem,9vw,4.3rem);line-height:1.02;letter-spacing:-.055em;margin:.65rem 0}.onboarding-card>p{max-width:35rem;margin:0 0 1.5rem;color:var(--text-2);font-size:1rem}.onboarding-grid,.onboarding-stack,.language-cards,.state-choices{display:grid;grid-template-columns:1fr;gap:.55rem}.onboarding-choice{min-height:3.6rem;width:100%;border:1px solid var(--line);border-radius:1rem;background:var(--surface);padding:.7rem .9rem;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;text-align:left}.onboarding-choice.selected{border-color:var(--line-strong);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.choice-indicator{width:1.1rem;height:1.1rem;border:1px solid var(--line-strong);border-radius:50%}.selected .choice-indicator{border:.32rem solid var(--accent)}.onboarding-choice .icon{width:1rem;color:var(--text-3)}.onboarding-field textarea{width:100%;min-height:9rem;border:1px solid var(--line);border-radius:1.25rem;background:var(--surface);color:var(--text);padding:1rem;font-size:1rem;line-height:1.55}.address-segment{height:3rem;margin-bottom:.8rem}.address-segment button{font-size:.875rem}.permission-row{display:flex;align-items:flex-start;gap:.75rem;margin-top:1rem;padding:1rem;border:1px solid var(--line);border-radius:1rem;background:var(--surface-soft)}.permission-row input{width:1.25rem;height:1.25rem;accent-color:var(--accent)}.permission-row strong,.permission-row small{display:block}.permission-row small{color:var(--text-3);margin-top:.3rem}.nav-preview{position:relative;margin-top:1rem;padding:1rem;border:1px solid var(--line);border-radius:1.25rem;background:var(--surface-soft);overflow:hidden}.nav-preview>.bottom-nav{position:relative;left:auto;bottom:auto;transform:none;width:100%;margin-top:.7rem;border-radius:1rem;height:4.5rem;padding:.25rem;z-index:1}.nav-preview .capture-nav{height:3.8rem}.onboarding-note{padding:1rem;border-left:2px solid var(--accent);background:var(--surface-soft);color:var(--text-2)}.onboarding-actions{display:flex;justify-content:flex-end;gap:.5rem;padding-top:1.5rem}.onboarding-actions .button-primary{min-width:min(15rem,65vw)}

.sync-summary{min-height:7rem;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1rem;border:1px solid var(--line);border-radius:1.25rem;background:var(--surface)}.sync-summary>.icon{color:var(--accent)}.sync-summary small{font-size:1.4rem;color:var(--text-3)}
.meal-sheet{padding-inline:max(1rem,var(--safe-left));padding-right:max(1rem,var(--safe-right))}.meal-items{margin-top:1.25rem}.meal-items-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.meal-items-head span{color:var(--warning);font-size:.75rem}.meal-item{display:grid;grid-template-columns:2fr repeat(5,minmax(4.4rem,1fr));gap:.5rem;margin-top:.7rem;padding:.8rem;border:1px solid var(--line);border-radius:1rem;background:var(--surface)}.meal-item label{font-size:.75rem;color:var(--text-3)}.meal-item .field{min-height:2.75rem;margin-top:.3rem}.meal-name{align-self:end}.meal-sheet>.button{width:100%;margin-top:1rem}
.danger-sheet .button-danger{background:var(--danger);color:#260706}.plan-chip{margin-left:auto;padding:.35rem .65rem;border:1px solid var(--line-strong);border-radius:99px;color:var(--accent);font-size:.75rem}.pro-card{margin:1rem 0;padding:1.4rem;border:1px solid var(--line-strong);border-radius:1.5rem;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 90%,var(--accent) 10%),var(--surface-soft))}.pro-card>span{color:var(--accent);font-size:.75rem;font-weight:850;text-transform:uppercase;letter-spacing:.12em}.pro-card h3{font-size:1.55rem;margin:.5rem 0}.pro-card p{font-size:.875rem;line-height:1.55;color:var(--text-2)}.pro-card small{font-size:.75rem;color:var(--text-3)}

@media(min-width:42rem){.onboarding-grid,.state-choices{grid-template-columns:1fr 1fr}.onboarding-grid .onboarding-choice:last-child{grid-column:1/-1}.moment-card{padding:1.7rem}.meal-sheet{max-width:62rem}.onboarding-shell{padding-top:calc(var(--safe-top) + 2rem)}}
@media(max-width:48rem){.meal-item{grid-template-columns:1fr 1fr}.meal-item .meal-name{grid-column:1/-1}}
@media(max-width:23.4rem){.brand-copy{display:none}.bottom-nav{padding-inline:.25rem}.nav-item small,.capture-nav small{font-size:.68rem;max-width:3.7rem}.moment-card{padding:1.1rem}.onboarding-shell{padding-inline:.75rem}.meal-item{grid-template-columns:1fr}}
@media(prefers-reduced-transparency:reduce){.bottom-nav,.sheet-backdrop,.search-overlay{backdrop-filter:none;background:var(--ink-1)}}
@media(forced-colors:active){.moment-card,.nba-card,.bottom-nav,.bottom-sheet,.onboarding-choice{border:1px solid CanvasText}.choice-indicator{forced-color-adjust:none}}
@media(prefers-reduced-motion:reduce){.onboarding-progress i{transition:none}.moment-card:before{display:none}}
