/* Finmori-inspired layout; fonts and icons use the independent local assets below. */
@font-face { font-family: ExactManrope; src: url('/assets/fonts/manrope-latin-400.woff2') format('woff2'); font-weight: 400; font-display: swap; unicode-range: U+0000-024F; }
@font-face { font-family: ExactManrope; src: url('/assets/fonts/manrope-cyrillic-400.woff2') format('woff2'); font-weight: 400; font-display: swap; unicode-range: U+0400-052F; }
@font-face { font-family: ExactManrope; src: url('/assets/fonts/manrope-latin-600.woff2') format('woff2'); font-weight: 600; font-display: swap; unicode-range: U+0000-024F; }
@font-face { font-family: ExactManrope; src: url('/assets/fonts/manrope-cyrillic-600.woff2') format('woff2'); font-weight: 600; font-display: swap; unicode-range: U+0400-052F; }
@font-face { font-family: ExactManrope; src: url('/assets/fonts/manrope-latin-700.woff2') format('woff2'); font-weight: 700; font-display: swap; unicode-range: U+0000-024F; }
@font-face { font-family: ExactManrope; src: url('/assets/fonts/manrope-cyrillic-700.woff2') format('woff2'); font-weight: 700; font-display: swap; unicode-range: U+0400-052F; }
@font-face { font-family: ExactIconsLight; src: url('/assets/Phosphor-Light.woff2') format('woff2'); font-display: block; }
@font-face { font-family: ExactIconsFill; src: url('/assets/Phosphor-Fill.woff2') format('woff2'); font-display: block; }
html[data-appearance] body#mini-app-body,
html[data-appearance] body#mini-app-body :is(button,input,select,textarea) { font-family: ExactManrope, sans-serif !important; }
html[data-appearance] body#mini-app-body .ph { font-family: ExactIconsLight !important; }
html[data-appearance] body#mini-app-body .ph-bold { font-family: ExactIconsFill !important; }
html[data-appearance] body#mini-app-body .app-header { background: var(--er-page) !important; }
html[data-appearance] body#mini-app-body .app-header .brand { letter-spacing: -.035em; }
html[data-appearance] body#mini-app-body .brand-icon { color: #047ba6 !important; }
html[data-appearance] body#mini-app-body #home-view:not([hidden]) { gap: 14px; }
html[data-appearance] body#mini-app-body #home-view .home-onboarding { position: relative; padding: 16px 14px 14px !important; margin: 0 -4px 2px !important; border-radius: 18px !important; background: #e0f4fb !important; }
html[data-appearance] body#mini-app-body #home-view .home-onboarding h1 { font-size: 25px !important; letter-spacing: -.035em; }
html[data-appearance] body#mini-app-body #home-view .home-onboarding p { font-size: 13px; }
html[data-appearance] body#mini-app-body #home-view .home-balance-card:not([hidden]) { min-height: 148px; border-radius: 20px !important; padding: 20px !important; background: #047ba6 !important; box-shadow: 0 8px 20px #043c5326 !important; }
html[data-appearance] body#mini-app-body #home-view .home-balance-card :is(small,em) { color: #f5fdff !important; opacity: .96; }
html[data-appearance] body#mini-app-body #home-view .home-balance-amount b { font-size: clamp(31px,9vw,42px) !important; font-variant-numeric: tabular-nums; }
html[data-appearance] body#mini-app-body #home-view .gram-held { min-height: 60px; padding: 0 16px; border-radius: 16px; }
html[data-appearance] body#mini-app-body #home-view .gram-home-actions { grid-template-columns: 1fr 1fr !important; gap: 10px; }
html[data-appearance] body#mini-app-body #home-view .gram-home-actions button { min-height: 68px !important; padding: 10px !important; font-size: 14px !important; line-height: 1.25; }
html[data-appearance] body#mini-app-body #home-view .gram-home-actions .home-primary { background: #a92270 !important; color: #fff !important; }
html[data-appearance] body#mini-app-body #home-view .gram-home-actions .ph-caret-right { display: none; }
html[data-appearance] body#mini-app-body #home-view .section-header h2 { font-size: 19px !important; letter-spacing: -.025em; }
html[data-appearance] body#mini-app-body #home-view .activity-row { min-height: 76px !important; border-bottom: 1px solid var(--er-line) !important; border-radius: 0 !important; }
html[data-appearance] body#mini-app-body .app-nav.app-nav-capsule:not([hidden]) { width: min(calc(100% - 24px), 520px) !important; grid-template-columns: repeat(5,minmax(0,1fr)) !important; min-height: 74px !important; bottom: calc(8px + var(--safe-bottom)) !important; padding: 7px 8px !important; border-radius: 30px !important; border: 0 !important; background: #102c43 !important; box-shadow: 0 8px 24px #07243a29 !important; }
html[data-appearance] body#mini-app-body .app-nav.app-nav-capsule button { min-height: 55px !important; grid-template-rows: 30px 16px !important; color: #d8ecf5 !important; }
html[data-appearance] body#mini-app-body .app-nav.app-nav-capsule button[aria-current="page"] { color: #fff !important; background: transparent !important; }
html[data-appearance] body#mini-app-body .app-nav.app-nav-capsule .finmori-create { align-self: center; justify-self: center; display: grid !important; grid-template-rows: auto !important; place-items: center; width: 50px; height: 50px; min-height: 50px !important; border-radius: 50% !important; background: #db3996 !important; color: #fff !important; }
html[data-appearance] body#mini-app-body .app-nav.app-nav-capsule .finmori-create i { font-size: 26px !important; }
html[data-appearance] body#mini-app-body :is(.screen-heading h1,.screen-title-row h1,.result-page-head h1) { letter-spacing: -.035em !important; }
html[data-appearance] body#mini-app-body :is(.ledger-search,.ledger-tabs,.payout-balance-tabs,.invoice-composer-tools) { border-radius: 14px !important; }
html[data-appearance] body#mini-app-body :is(.settings-icon,.row-icon,.activity-icon) { border-radius: 50% !important; }
html[data-appearance] body#mini-app-body :is(.settings-row,.ledger-item,.sheet-option) { min-height: 62px; }
html[data-appearance] body#mini-app-body .profile-head { border-radius: 20px !important; padding: 20px 12px !important; background: #e0f4fb !important; }
html[data-appearance="dark"] body#mini-app-body #home-view .home-onboarding,
html[data-appearance="dark"] body#mini-app-body .profile-head { background: #1b3547 !important; }
html[data-appearance="dark"] body#mini-app-body .app-nav.app-nav-capsule:not([hidden]) { background: #0a2638 !important; }
@media (max-width: 360px) { html[data-appearance] body#mini-app-body #home-view .gram-home-actions button { font-size: 12px !important; } html[data-appearance] body#mini-app-body .app-nav.app-nav-capsule button span { font-size: 10px !important; } }
@media (prefers-reduced-motion: no-preference) { html[data-appearance] body#mini-app-body .app-nav button, html[data-appearance] body#mini-app-body .activity-row { transition: transform .18s ease, color .18s ease, background .18s ease; } html[data-appearance] body#mini-app-body .app-nav button:active { transform: scale(.96); } }
