html, body {
    height: 100%;
}
body {
    display: flex;
    flex-direction: column;
}

.content {
    flex: 1;
}
.custom-logo {
    margin-right: 200px;
    padding-left: 0;
}

#preloader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.55);
    z-index: 999999;
    display: flex;
    justify-content: center;
    align-items: center;
}

.table-tag-color {
    padding: 0.135rem 0.635rem 0.135rem 0.635rem;
    border-radius: 0.65rem;
    display: inline-block;
}
.table-tag-minus {
    padding: 0 .7rem 0 .7rem;
    border-radius: 0.65rem;
    background: rgba(96, 96, 96, 0.1);
    display: inline-block;
}
.table-tag-sum {
    padding: 0 .7rem 0 .7rem;
    border-radius: 0.65rem;
    background: rgba(0, 255, 21, 0.1);
    display: inline-block;
}

.table-tag-delta-up {
    padding: 0 .7rem 0 .7rem;
    border-radius: 0.65rem;
    background: rgba(91, 143, 146, 0.15);
    display: inline-block;
}

.table-tag-delta-down {
    padding: 0 .7rem 0 .7rem;
    border-radius: 0.65rem;
    background: rgba(255, 129, 0, 0.15);
    display: inline-block;
}

.table-tag-plan {
    padding: 0 .7rem 0 .7rem;
    border-radius: 0.4rem;
    background: rgba(0, 152, 255, 0.1);
    display: inline-block;
}
.table-tag-fact {
    padding: 0 .7rem 0 .7rem;
    border-radius: 0.4rem;
    background: rgba(239, 9, 9, 0.13);
    display: inline-block;
}

td {
    padding: 0.5rem;
    border-bottom: solid 1px rgb(0 0 0 / 25%);
}
th {
    padding: 0.235rem;
    border-bottom: solid 1px rgb(0 0 0 / 25%);
}

/* Sticky left columns for finance tables (expenses + incomes) */
#expenses-table,
#incomes-table {
    --sticky-check-col-width: 40px;
    --sticky-tag-col-width: 190px;
}

#expenses-table.main-table,
#incomes-table.main-table,
#income-plans-table.main-table {
    overflow: visible !important;
}

#expenses-table tr > :nth-child(1),
#incomes-table tr > :nth-child(1) {
    position: -webkit-sticky !important;
    position: sticky !important;
    left: 0 !important;
    z-index: 8 !important;
    min-width: var(--sticky-check-col-width) !important;
    width: var(--sticky-check-col-width) !important;
    max-width: var(--sticky-check-col-width) !important;
    background-clip: padding-box;
}

#expenses-table tr > :nth-child(2),
#incomes-table tr > :nth-child(2) {
    position: -webkit-sticky !important;
    position: sticky !important;
    left: var(--sticky-check-col-width) !important;
    z-index: 8 !important;
    min-width: var(--sticky-tag-col-width) !important;
    width: var(--sticky-tag-col-width) !important;
    max-width: var(--sticky-tag-col-width) !important;
    background-clip: padding-box;
}

/* Expenses: keep plan column visible together with tag */
#expenses-table tr > :nth-child(3) {
    position: -webkit-sticky !important;
    position: sticky !important;
    left: calc(var(--sticky-check-col-width) + var(--sticky-tag-col-width)) !important;
    z-index: 8 !important;
    min-width: 80px !important;
    width: 80px !important;
    max-width: 80px !important;
    background-clip: padding-box;
}

#expenses-table thead tr > :nth-child(1),
#expenses-table thead tr > :nth-child(2),
#expenses-table thead tr > :nth-child(3),
#incomes-table thead tr > :nth-child(1),
#incomes-table thead tr > :nth-child(2) {
    z-index: 10 !important;
}

#expenses-table tr > :nth-child(3),
#incomes-table tr > :nth-child(2) {
    box-shadow: 2px 0 0 rgba(0, 0, 0, 0.12);
}

#income-plans-table tr > :nth-child(1) {
    position: -webkit-sticky !important;
    position: sticky !important;
    left: 0 !important;
    z-index: 8 !important;
    min-width: 190px !important;
    width: 190px !important;
    max-width: 190px !important;
    background-clip: padding-box;
    box-shadow: 2px 0 0 rgba(0, 0, 0, 0.12);
}

#income-plans-table thead tr > :nth-child(1) {
    z-index: 10 !important;
}

.income-plan-cell {
    min-width: 82px;
}

.income-plan-total-row td {
    border-top: 2px solid rgba(0, 0, 0, 0.22);
    font-weight: 600;
}

.income-plan-modal-row {
    border-bottom: 1px solid rgba(128, 128, 128, 0.2);
    padding-bottom: 0.75rem;
}

.income-plan-modal-row:last-child {
    border-bottom: 0;
    padding-bottom: 0;
}

.income-plan-fact-summary {
    font-size: 11pt;
}

.income-overview-row > [class*="col-"] {
    display: flex;
}

.income-overview-row .card {
    width: 100%;
}

.income-tags-card .card-body,
.income-month-card .card-body {
    padding: 20px 14px 18px;
}

.expense-tags-card .card-body,
.expense-month-card .card-body {
    padding: 20px 18px 18px;
}

.expense-tags-carousel {
    display: flex;
    gap: 22px;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 2px 2px 4px;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.expense-tags-carousel::-webkit-scrollbar {
    display: none;
}

.expense-tags-page {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(3, minmax(24px, auto));
    grid-auto-flow: row;
    gap: 16px 20px;
    min-width: 100%;
    scroll-snap-align: start;
}

.expense-tags-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 14px;
}

.expense-tags-control {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border: 1px solid rgba(83, 97, 121, 0.18);
    border-radius: 50%;
    color: #536179;
    background: #ffffff;
    box-shadow: 0 6px 14px rgba(22, 34, 51, 0.06);
    transition: color .18s ease, border-color .18s ease, background .18s ease, opacity .18s ease;
}

.expense-tags-control:hover:not(:disabled),
.expense-tags-control:focus-visible:not(:disabled) {
    color: #2f80ed;
    border-color: rgba(47, 128, 237, 0.36);
    background: rgba(47, 128, 237, 0.06);
}

.expense-tags-control:disabled {
    opacity: .35;
    cursor: default;
}

.expense-tags-page-indicator {
    min-width: 36px;
    color: #657188;
    font-size: .82rem;
    text-align: center;
}

.expense-tag {
    min-width: 0;
}

.expense-tag-select {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    max-width: 100%;
    color: #536179;
    font-size: .9rem;
    line-height: 1.2;
}

.expense-tag-color {
    flex: 0 0 auto;
    font-size: .78rem;
}

.expense-tag-name {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.expense-tag-edit {
    flex: 0 0 auto;
    color: #8b98ad;
    font-size: .83rem;
}

.expense-month-card .card-body {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr)) minmax(170px, 210px);
    grid-template-rows: max-content repeat(5, max-content);
    grid-auto-flow: column;
    align-content: center;
    column-gap: 24px;
    row-gap: 10px;
    min-height: 218px;
}

.expense-month-card .dashboard-info-button {
    position: absolute;
    top: 18px;
    right: 18px;
}

.expense-month-card .card-title {
    grid-column: 1 / 3;
    grid-row: 1;
}

.expense-month-card .mb-1 {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    margin-bottom: 0 !important;
    color: #536179;
    font-size: .82rem;
    line-height: 1.18;
}

.expense-month-card .mb-1 i,
.expense-month-card .mb-1 img {
    flex: 0 0 18px;
    width: 18px;
    max-width: 18px;
    color: #8b98ad;
    font-size: .92rem;
}

.expense-month-card .mb-1 strong {
    color: #25324b;
    font-size: .86rem;
    font-weight: 700;
}

.expense-budget-inline {
    grid-column: 3;
    grid-row: 1 / span 6;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    align-self: stretch;
    min-width: 0;
    padding-left: 14px;
    border-left: 1px solid rgba(15, 23, 42, 0.08);
}

.expense-budget-inline .card-title {
    align-self: stretch;
    grid-column: auto;
    grid-row: auto;
    text-align: left;
    margin-bottom: 10px !important;
    color: #657188;
    font-size: .8rem;
    line-height: 1.15;
    font-weight: 600;
}

/* YousoroFinance digital landing 2026 */
:root {
    --yf26-night: #071714;
    --yf26-forest: #0d2721;
    --yf26-panel: #122f28;
    --yf26-paper: #f3f6f2;
    --yf26-white: #fbfdfb;
    --yf26-ink: #10221e;
    --yf26-muted: #687974;
    --yf26-mint: #65d9ae;
    --yf26-mint-soft: #dff7ee;
    --yf26-gold: #e8c869;
    --yf26-blue: #4da5f4;
    --yf26-red: #ff7c84;
    --yf26-border-dark: rgba(226, 248, 239, .13);
    --yf26-border-light: rgba(16, 34, 30, .11);
    --yf26-shadow: 0 28px 80px rgba(5, 25, 20, .14);
    --yf26-radius: 24px;
}

.yf26-nav,
.yf26-nav *,
.yf26-shell,
.yf26-shell * {
    box-sizing: border-box;
    letter-spacing: 0;
}

body:has(.yf26-shell) {
    overflow-x: hidden;
    background: var(--yf26-paper);
}

.content > .container:has(.yf26-shell) {
    width: 100%;
    max-width: none;
    padding: 0 !important;
}

.yf26-container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.yf26-nav {
    position: sticky;
    top: 0;
    z-index: 1000;
    width: 100%;
    font-family: "Manrope", Arial, sans-serif;
    background: rgba(7, 23, 20, .88);
    border-bottom: 1px solid rgba(255, 255, 255, .08);
    backdrop-filter: blur(18px) saturate(135%);
    -webkit-backdrop-filter: blur(18px) saturate(135%);
}

.yf26-nav__inner {
    min-height: 68px;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 24px;
}

.yf26-nav__brand {
    display: inline-flex;
    width: fit-content;
    align-items: center;
}

.yf26-nav__brand img {
    display: block;
    width: auto;
    height: 38px;
}

.yf26-nav__links {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 999px;
    background: rgba(255, 255, 255, .035);
}

.yf26-nav__links a {
    padding: 9px 13px;
    border-radius: 999px;
    color: rgba(244, 251, 247, .7);
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    transition: color .2s ease, background-color .2s ease;
}

.yf26-nav__links a:hover,
.yf26-nav__links a:focus-visible {
    color: #fff;
    background: rgba(255, 255, 255, .08);
    outline: none;
}

.yf26-nav__auth {
    position: relative;
    justify-self: end;
    width: 222px;
    height: 42px;
    overflow: hidden;
    border-radius: 999px;
    background: transparent;
}

.yf26-nav__auth-face {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    border: 1px solid rgba(255, 255, 255, .13);
    border-radius: inherit;
    color: #fff;
    background: rgba(77, 165, 244, .13);
    font-size: 13px;
    font-weight: 700;
    pointer-events: none;
}

.yf26-nav__auth-face i {
    color: #72bdfc;
    font-size: 17px;
}

.yf26-nav__auth iframe {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
    width: 222px !important;
    max-width: 222px !important;
    height: 42px !important;
    border: 0 !important;
    border-radius: inherit !important;
    opacity: .01 !important;
}

.yf26-shell {
    width: 100%;
    margin-top: -8px;
    overflow: hidden;
    color: var(--yf26-ink);
    background: var(--yf26-paper);
    font-family: "Manrope", Arial, sans-serif;
}

.yf26-shell strong,
.yf26-shell b {
    color: inherit;
}

.yf26-hero {
    position: relative;
    min-height: calc(100svh - 60px);
    padding: clamp(68px, 7vw, 94px) 0 30px;
    overflow: hidden;
    color: #f5fbf8;
    background:
        radial-gradient(circle at 82% 28%, rgba(69, 180, 139, .16), transparent 28rem),
        radial-gradient(circle at 14% 88%, rgba(232, 200, 105, .09), transparent 26rem),
        var(--yf26-night);
}

.yf26-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .16;
    pointer-events: none;
    background-image:
        linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
    background-size: 64px 64px;
    mask-image: linear-gradient(90deg, transparent 2%, #000 30%, #000 100%);
}

.yf26-hero__grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(360px, .82fr) minmax(560px, 1.18fr);
    align-items: center;
    gap: clamp(38px, 5vw, 70px);
}

.yf26-hero__copy {
    padding-bottom: 22px;
    animation: yf26-rise .65s ease both;
}

.yf26-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--yf26-gold);
    font-family: "IBM Plex Mono", monospace;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.4;
    text-transform: uppercase;
}

.yf26-eyebrow > span {
    width: 26px;
    height: 1px;
    background: currentColor;
}

.yf26-hero h1 {
    max-width: 620px;
    margin: 20px 0 22px;
    color: #f7fbf8;
    font-size: clamp(46px, 5.3vw, 68px);
    font-weight: 700;
    line-height: 1.01;
}

.yf26-hero h1 em {
    color: var(--yf26-mint);
    font-style: normal;
}

.yf26-hero__lead {
    max-width: 580px;
    margin: 0;
    color: rgba(231, 243, 237, .7);
    font-size: 17px;
    line-height: 1.68;
}

.yf26-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 30px;
}

.yf26-button {
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 0 20px;
    border: 1px solid transparent;
    border-radius: 12px;
    color: var(--yf26-ink);
    font-size: 14px;
    font-weight: 750;
    line-height: 1;
    text-decoration: none;
    transition: transform .2s ease, border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}

.yf26-button:hover {
    transform: translateY(-2px);
    color: inherit;
}

.yf26-button:focus-visible {
    outline: 3px solid rgba(101, 217, 174, .32);
    outline-offset: 3px;
}

.yf26-button--primary {
    color: #092019;
    background: var(--yf26-mint);
    box-shadow: 0 14px 36px rgba(101, 217, 174, .18);
}

.yf26-button--primary:hover {
    color: #092019;
    background: #75e3ba;
    box-shadow: 0 18px 42px rgba(101, 217, 174, .25);
}

.yf26-button--ghost {
    color: rgba(245, 251, 248, .84);
    border-color: rgba(255, 255, 255, .14);
    background: rgba(255, 255, 255, .04);
}

.yf26-button--ghost:hover {
    color: #fff;
    border-color: rgba(255, 255, 255, .25);
    background: rgba(255, 255, 255, .07);
}

.yf26-button--line {
    color: inherit;
    border-color: currentColor;
    border-color: rgba(110, 136, 127, .32);
    background: transparent;
}

.yf26-button--line:hover {
    border-color: rgba(101, 217, 174, .68);
    background: rgba(101, 217, 174, .08);
}

.yf26-trust {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    margin-top: 24px;
    color: rgba(231, 243, 237, .64);
    font-size: 12px;
}

.yf26-trust span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.yf26-trust i {
    color: var(--yf26-mint);
}

.yf26-terminal {
    position: relative;
    min-width: 0;
    border: 1px solid rgba(217, 247, 235, .16);
    border-radius: 22px;
    background: #eef3ef;
    box-shadow: 0 38px 100px rgba(0, 0, 0, .36);
    animation: yf26-rise .75s .08s ease both;
}

.yf26-terminal__chrome {
    height: 40px;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    padding: 0 14px;
    border-bottom: 1px solid rgba(16, 34, 30, .1);
    color: #788782;
    background: #f9fbf9;
    border-radius: 22px 22px 0 0;
    font-family: "IBM Plex Mono", monospace;
    font-size: 9px;
}

.yf26-terminal__chrome > i {
    justify-self: end;
    color: #3d876f;
}

.yf26-terminal__dots {
    display: flex;
    gap: 5px;
}

.yf26-terminal__dots span {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #d9dfdc;
}

.yf26-terminal__body {
    min-height: 448px;
    display: grid;
    grid-template-columns: 54px 1fr;
}

.yf26-terminal__rail {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 9px;
    padding: 16px 7px;
    border-right: 1px solid rgba(255, 255, 255, .07);
    border-radius: 0 0 0 21px;
    background: #0c231e;
}

.yf26-terminal__rail img {
    width: 31px;
    height: 31px;
    margin-bottom: 10px;
    object-fit: contain;
}

.yf26-terminal__rail span {
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    border-radius: 9px;
    color: rgba(223, 239, 232, .5);
    font-size: 13px;
}

.yf26-terminal__rail span.is-active {
    color: var(--yf26-mint);
    background: rgba(101, 217, 174, .11);
}

.yf26-terminal__content {
    min-width: 0;
    padding: 22px;
    color: var(--yf26-ink);
}

.yf26-terminal__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.yf26-terminal__head > div {
    display: grid;
    gap: 2px;
}

.yf26-terminal__head small,
.yf26-overview small,
.yf26-chart__head small {
    color: #84908c;
    font-size: 9px;
}

.yf26-terminal__head strong {
    font-size: 15px;
}

.yf26-terminal__head > span {
    padding: 7px 9px;
    border: 1px solid rgba(16, 34, 30, .1);
    border-radius: 8px;
    color: #64726e;
    background: #fff;
    font-size: 9px;
}

.yf26-overview {
    display: grid;
    grid-template-columns: 1.45fr 1fr 1fr;
    gap: 9px;
    margin-top: 17px;
}

.yf26-overview > div {
    min-width: 0;
    padding: 13px;
    border: 1px solid rgba(16, 34, 30, .09);
    border-radius: 11px;
    background: rgba(255, 255, 255, .78);
}

.yf26-overview > div strong {
    display: block;
    margin-top: 5px;
    font-size: 14px;
    white-space: nowrap;
}

.yf26-overview__primary strong {
    font-size: 20px !important;
}

.yf26-overview__primary span {
    display: block;
    margin-top: 7px;
    color: #16835f;
    font-size: 8px;
}

.yf26-overview__metric:last-child strong {
    color: #16835f;
}

.yf26-terminal__analytics {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(150px, .75fr);
    gap: 9px;
    margin-top: 9px;
}

.yf26-chart,
.yf26-assets {
    min-width: 0;
    padding: 13px;
    border: 1px solid rgba(16, 34, 30, .09);
    border-radius: 11px;
    background: rgba(255, 255, 255, .78);
}

.yf26-chart__head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    font-size: 10px;
    font-weight: 700;
}

.yf26-chart svg {
    display: block;
    width: 100%;
    height: 138px;
    overflow: visible;
}

.yf26-chart__grid {
    fill: none;
    stroke: rgba(16, 34, 30, .08);
    stroke-width: 1;
}

.yf26-chart__area {
    fill: url(#yf26-chart-fill);
}

.yf26-chart__line {
    fill: none;
    stroke: #2fbf8d;
    stroke-width: 3;
    stroke-linecap: round;
}

.yf26-chart circle {
    fill: #f8fcfa;
    stroke: #2fbf8d;
    stroke-width: 3;
}

.yf26-chart__months {
    display: flex;
    justify-content: space-between;
    color: #929d99;
    font-size: 7px;
}

.yf26-assets__donut {
    position: relative;
    width: 104px;
    height: 104px;
    display: grid;
    place-items: center;
    margin: 20px auto 14px;
    border-radius: 50%;
    background: conic-gradient(var(--yf26-mint) 0 48%, var(--yf26-gold) 48% 75%, #5f8ff1 75% 100%);
}

.yf26-assets__donut::before {
    content: "";
    position: absolute;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: #fff;
}

.yf26-assets__donut span {
    position: relative;
    z-index: 1;
    display: grid;
    text-align: center;
    font-size: 13px;
    font-weight: 800;
}

.yf26-assets__donut small {
    color: #83908b;
    font-size: 7px;
    font-weight: 500;
}

.yf26-assets__legend {
    display: grid;
    gap: 6px;
}

.yf26-assets__legend span {
    display: grid;
    grid-template-columns: 7px 1fr auto;
    align-items: center;
    gap: 5px;
    color: #7a8782;
    font-size: 7px;
}

.yf26-assets__legend i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--dot);
}

.yf26-assets__legend b {
    color: #33443f;
}

.yf26-command {
    position: absolute;
    left: -34px;
    bottom: 30px;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 11px;
    min-width: 360px;
    padding: 12px 14px;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 14px;
    color: #edf8f3;
    background: rgba(8, 30, 24, .94);
    box-shadow: 0 20px 48px rgba(0, 0, 0, .26);
    backdrop-filter: blur(14px);
}

.yf26-command__icon {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    color: #fff;
    background: var(--yf26-blue);
}

.yf26-command > div:nth-child(2) {
    display: grid;
    gap: 2px;
}

.yf26-command small {
    color: rgba(237, 248, 243, .54);
    font-size: 8px;
}

.yf26-command strong {
    font-size: 11px;
}

.yf26-command > span {
    padding: 5px 7px;
    border-radius: 7px;
    color: var(--yf26-mint);
    background: rgba(101, 217, 174, .1);
    font-size: 8px;
    font-weight: 700;
}

.yf26-hero__foot {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-top: 38px;
    padding-top: 22px;
    border-top: 1px solid rgba(255, 255, 255, .09);
    color: rgba(225, 239, 232, .46);
    font-size: 11px;
}

.yf26-hero__foot div {
    display: flex;
    align-items: center;
    gap: 12px;
}

.yf26-hero__foot b {
    color: rgba(238, 249, 244, .7);
    font-family: "IBM Plex Mono", monospace;
    font-size: 12px;
}

.yf26-section {
    padding: clamp(78px, 9vw, 112px) 0;
}

.yf26-section--light {
    background: var(--yf26-paper);
}

.yf26-section-head {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(280px, .65fr);
    align-items: end;
    gap: clamp(32px, 7vw, 100px);
    margin-bottom: 42px;
}

.yf26-section-head h2,
.yf26-system h2,
.yf26-final h2 {
    max-width: 760px;
    margin: 14px 0 0;
    color: var(--yf26-ink);
    font-size: clamp(38px, 4.5vw, 58px);
    font-weight: 700;
    line-height: 1.08;
}

.yf26-section-head > p,
.yf26-system__copy > p,
.yf26-final p {
    margin: 0;
    color: var(--yf26-muted);
    font-size: 15px;
    line-height: 1.7;
}

.yf26-capabilities {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.yf26-capability {
    position: relative;
    min-height: 350px;
    overflow: hidden;
    padding: 34px;
    border: 1px solid var(--yf26-border-light);
    border-radius: var(--yf26-radius);
    background: rgba(255, 255, 255, .64);
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.yf26-capability:hover {
    transform: translateY(-3px);
    border-color: rgba(38, 132, 99, .24);
    box-shadow: 0 20px 50px rgba(18, 48, 40, .08);
}

.yf26-capability--wide {
    grid-column: 1 / -1;
    min-height: 310px;
    display: grid;
    grid-template-columns: minmax(0, .78fr) minmax(420px, 1.22fr);
    align-items: center;
    gap: 60px;
}

.yf26-capability__index {
    display: inline-grid;
    place-items: center;
    width: 34px;
    height: 28px;
    margin-bottom: 44px;
    border: 1px solid rgba(16, 34, 30, .12);
    border-radius: 8px;
    color: #527067;
    font-family: "IBM Plex Mono", monospace;
    font-size: 10px;
}

.yf26-capability h3 {
    max-width: 480px;
    margin: 0 0 12px;
    font-size: clamp(24px, 2.7vw, 34px);
    font-weight: 700;
    line-height: 1.14;
}

.yf26-capability p {
    max-width: 520px;
    margin: 0;
    color: var(--yf26-muted);
    font-size: 15px;
    line-height: 1.68;
}

.yf26-bars {
    display: grid;
    gap: 13px;
    padding: 24px;
    border-left: 1px solid var(--yf26-border-light);
}

.yf26-bars > div {
    display: grid;
    grid-template-columns: 72px 1fr 94px;
    align-items: center;
    gap: 14px;
    color: #71807b;
    font-size: 11px;
}

.yf26-bars i {
    position: relative;
    height: 8px;
    overflow: hidden;
    border-radius: 999px;
    background: #e2e8e4;
}

.yf26-bars i::after {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: var(--value);
    border-radius: inherit;
    background: var(--color);
}

.yf26-bars b {
    color: #20332d;
    font-size: 11px;
    text-align: right;
}

.yf26-capability--crypto {
    color: #eff8f4;
    background:
        radial-gradient(circle at 100% 0, rgba(232, 200, 105, .16), transparent 19rem),
        var(--yf26-forest);
}

.yf26-capability--crypto .yf26-capability__index {
    color: rgba(238, 248, 243, .64);
    border-color: rgba(255, 255, 255, .13);
}

.yf26-capability--crypto p {
    color: rgba(230, 241, 236, .63);
}

.yf26-coin-list {
    display: grid;
    gap: 1px;
    margin-top: 32px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 14px;
    background: rgba(255, 255, 255, .09);
}

.yf26-coin-list span {
    display: grid;
    grid-template-columns: 32px 1fr auto;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    background: rgba(255, 255, 255, .035);
}

.yf26-coin-list b {
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: var(--yf26-night);
    background: var(--yf26-gold);
    font-family: "IBM Plex Mono", monospace;
    font-size: 12px;
}

.yf26-coin-list i {
    color: rgba(236, 247, 242, .72);
    font-size: 11px;
    font-style: normal;
}

.yf26-coin-list strong {
    font-size: 11px;
}

.yf26-capability--insight {
    display: flex;
    flex-direction: column;
}

.yf26-insight {
    display: grid;
    grid-template-columns: 42px 1fr;
    align-items: center;
    gap: 14px;
    margin-top: auto;
    padding: 16px;
    border: 1px solid rgba(77, 165, 244, .15);
    border-radius: 14px;
    background: rgba(77, 165, 244, .07);
}

.yf26-insight > i {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: #287fc5;
    background: rgba(77, 165, 244, .13);
}

.yf26-insight div {
    display: grid;
    gap: 2px;
}

.yf26-insight small,
.yf26-insight span {
    color: #71807b;
    font-size: 9px;
}

.yf26-insight strong {
    font-size: 12px;
}

.yf26-workflow {
    color: #eef8f3;
    background:
        radial-gradient(circle at 50% 12%, rgba(101, 217, 174, .1), transparent 32rem),
        var(--yf26-night);
}

.yf26-section-head--dark h2 {
    color: #f2f9f5;
}

.yf26-section-head--dark > p {
    color: rgba(225, 240, 233, .58);
}

.yf26-flow {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) 82px minmax(210px, .76fr) 82px minmax(240px, .9fr);
    align-items: center;
    padding: 20px;
    border: 1px solid var(--yf26-border-dark);
    border-radius: 28px;
    background: rgba(255, 255, 255, .025);
}

.yf26-flow__stage {
    align-self: stretch;
    min-width: 0;
    padding: 18px;
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 18px;
    background: rgba(255, 255, 255, .035);
}

.yf26-flow__label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
    color: rgba(226, 241, 234, .5);
    font-family: "IBM Plex Mono", monospace;
    font-size: 9px;
    text-transform: uppercase;
}

.yf26-flow__label b {
    color: var(--yf26-gold);
}

.yf26-chat {
    overflow: hidden;
    border-radius: 14px;
    color: #1a2c27;
    background: #dfeae6;
    box-shadow: 0 16px 36px rgba(0, 0, 0, .16);
}

.yf26-chat__top {
    min-height: 52px;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 10px;
    padding: 10px 13px;
    color: #e9f6f0;
    background: #1e685b;
}

.yf26-chat__top > i {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--yf26-blue);
}

.yf26-chat__top div {
    display: grid;
}

.yf26-chat__top strong {
    font-size: 10px;
}

.yf26-chat__top small {
    color: rgba(233, 246, 240, .58);
    font-size: 7px;
}

.yf26-chat__top > span {
    color: rgba(255, 255, 255, .55);
    font-size: 10px;
}

.yf26-chat__day {
    width: fit-content;
    margin: 10px auto 0;
    padding: 3px 7px;
    border-radius: 999px;
    color: #64746e;
    background: rgba(255, 255, 255, .52);
    font-size: 6px;
}

.yf26-chat__message {
    position: relative;
    width: fit-content;
    max-width: 84%;
    margin: 8px 10px 0;
    padding: 8px 10px;
    border-radius: 10px;
    background: #fff;
    font-size: 8px;
    line-height: 1.4;
}

.yf26-chat__message.is-user {
    margin-left: auto;
    background: #c9f1df;
}

.yf26-chat__message small {
    display: block;
    margin-top: 3px;
    color: #81908a;
    font-size: 5px;
    text-align: right;
}

.yf26-chat__message small i {
    color: #2d94da;
}

.yf26-chat__choices {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin: 7px 10px 0;
}

.yf26-chat__choices span {
    padding: 5px 7px;
    border: 1px solid rgba(30, 104, 91, .17);
    border-radius: 7px;
    color: #42655b;
    background: rgba(255, 255, 255, .5);
    font-size: 6px;
}

.yf26-chat__choices .is-active {
    color: #174e42;
    border-color: rgba(30, 104, 91, .3);
    background: rgba(101, 217, 174, .3);
}

.yf26-chat .yf26-chat__message:last-child {
    margin-bottom: 12px;
}

.yf26-flow__connector {
    position: relative;
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 5px;
    padding: 0 6px;
    color: var(--yf26-mint);
}

.yf26-flow__connector > span {
    height: 1px;
    background: rgba(101, 217, 174, .28);
}

.yf26-flow__connector small {
    position: absolute;
    top: calc(50% + 14px);
    left: 50%;
    transform: translateX(-50%);
    color: rgba(221, 239, 231, .38);
    font-family: "IBM Plex Mono", monospace;
    font-size: 6px;
    white-space: nowrap;
}

.yf26-event {
    display: grid;
    gap: 1px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 13px;
    background: rgba(255, 255, 255, .08);
}

.yf26-event div {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 11px;
    background: rgba(255, 255, 255, .035);
}

.yf26-event span {
    color: rgba(225, 240, 233, .42);
    font-size: 7px;
}

.yf26-event strong {
    font-size: 8px;
}

.yf26-flow__status,
.yf26-result-note {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 10px;
    margin-top: 12px;
    padding: 11px;
    border-radius: 12px;
    color: var(--yf26-mint);
    background: rgba(101, 217, 174, .08);
}

.yf26-flow__status > i,
.yf26-result-note > i {
    font-size: 18px;
}

.yf26-flow__status span,
.yf26-result-note span {
    display: grid;
}

.yf26-flow__status strong,
.yf26-result-note strong {
    font-size: 8px;
}

.yf26-flow__status small,
.yf26-result-note small {
    color: rgba(222, 239, 231, .42);
    font-size: 6px;
}

.yf26-result-card {
    padding: 15px;
    border-radius: 14px;
    color: var(--yf26-ink);
    background: #f7faf8;
}

.yf26-result-card > div:first-child {
    display: grid;
}

.yf26-result-card small {
    color: #7c8984;
    font-size: 7px;
}

.yf26-result-card strong {
    margin-top: 3px;
    font-size: 18px;
}

.yf26-result-card span {
    color: #5f706a;
    font-size: 7px;
}

.yf26-result-card__chart {
    height: 80px;
    display: flex;
    align-items: flex-end;
    gap: 8px;
    margin: 15px 0 10px;
    padding: 0 3px;
    border-bottom: 1px solid rgba(16, 34, 30, .08);
}

.yf26-result-card__chart i {
    flex: 1;
    height: var(--h);
    border-radius: 4px 4px 0 0;
    background: linear-gradient(180deg, #65d9ae, #2fa67d);
}

.yf26-result-card__change {
    color: #16835f;
    font-size: 8px;
    font-weight: 700;
}

.yf26-result-note {
    color: var(--yf26-gold);
    background: rgba(232, 200, 105, .08);
}

.yf26-workflow__steps {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1px;
    margin-top: 24px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 14px;
    background: rgba(255, 255, 255, .08);
}

.yf26-workflow__steps span {
    padding: 14px 16px;
    color: rgba(223, 239, 231, .52);
    background: var(--yf26-night);
    font-size: 10px;
    text-align: center;
}

.yf26-workflow__steps b {
    color: #eaf5f0;
}

.yf26-section--system {
    background: #e8eeea;
}

.yf26-system {
    display: grid;
    grid-template-columns: minmax(0, .92fr) minmax(440px, 1.08fr);
    align-items: center;
    gap: clamp(40px, 8vw, 110px);
}

.yf26-system__copy > p {
    max-width: 610px;
    margin-top: 22px;
}

.yf26-system__copy ul {
    display: grid;
    gap: 16px;
    margin: 30px 0 0;
    padding: 0;
    list-style: none;
}

.yf26-system__copy li {
    display: grid;
    grid-template-columns: 42px 1fr;
    align-items: start;
    gap: 13px;
}

.yf26-system__copy li > i {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(16, 34, 30, .09);
    border-radius: 11px;
    color: #218263;
    background: rgba(255, 255, 255, .6);
}

.yf26-system__copy li span {
    display: grid;
    gap: 2px;
    color: var(--yf26-muted);
    font-size: 12px;
    line-height: 1.5;
}

.yf26-system__copy li strong {
    color: var(--yf26-ink);
    font-size: 13px;
}

.yf26-system__visual {
    min-height: 490px;
    display: grid;
    place-items: center;
}

.yf26-orbit {
    position: relative;
    width: min(440px, 100%);
    aspect-ratio: 1;
    border: 1px solid rgba(16, 34, 30, .11);
    border-radius: 50%;
}

.yf26-orbit::before,
.yf26-orbit::after {
    content: "";
    position: absolute;
    border: 1px solid rgba(16, 34, 30, .09);
    border-radius: 50%;
}

.yf26-orbit::before { inset: 13%; }
.yf26-orbit::after { inset: 28%; }

.yf26-orbit__core {
    position: absolute;
    inset: 35%;
    z-index: 2;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: #dff7ee;
    background: var(--yf26-forest);
    box-shadow: 0 22px 60px rgba(13, 39, 33, .22);
}

.yf26-orbit__core img {
    width: 58px;
    height: 58px;
    object-fit: contain;
}

.yf26-orbit__core small {
    font-size: 8px;
}

.yf26-orbit__node {
    position: absolute;
    z-index: 3;
    min-width: 104px;
    display: grid;
    grid-template-columns: 30px auto;
    align-items: center;
    gap: 7px;
    padding: 8px 10px;
    border: 1px solid rgba(16, 34, 30, .1);
    border-radius: 12px;
    background: rgba(252, 254, 252, .9);
    box-shadow: 0 12px 30px rgba(16, 34, 30, .08);
}

.yf26-orbit__node i {
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: 9px;
    color: #1f755b;
    background: var(--yf26-mint-soft);
}

.yf26-orbit__node b {
    font-size: 9px;
}

.yf26-orbit__node.is-bank { top: 2%; left: 36%; }
.yf26-orbit__node.is-cash { right: -2%; top: 44%; }
.yf26-orbit__node.is-invest { bottom: 2%; left: 36%; }
.yf26-orbit__node.is-crypto { left: -2%; top: 44%; }
.yf26-orbit__node.is-crypto i { color: #8b6d16; background: #f8efd3; }

.yf26-pricing-section {
    color: #eef8f3;
    background: var(--yf26-forest);
}

.yf26-pricing {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.yf26-plan {
    position: relative;
    min-width: 0;
    min-height: 520px;
    display: flex;
    flex-direction: column;
    padding: 30px;
    border: 1px solid rgba(255, 255, 255, .11);
    border-radius: 22px;
    background: rgba(255, 255, 255, .035);
    transition: transform .22s ease, border-color .22s ease, background-color .22s ease, box-shadow .22s ease;
}

.yf26-plan:hover {
    transform: translateY(-4px);
    border-color: rgba(101, 217, 174, .38);
    background: rgba(255, 255, 255, .055);
    box-shadow: 0 24px 60px rgba(0, 0, 0, .18);
}

.yf26-plan--featured {
    border-color: rgba(101, 217, 174, .48);
    background: linear-gradient(180deg, rgba(101, 217, 174, .11), rgba(255, 255, 255, .035));
    box-shadow: 0 22px 60px rgba(101, 217, 174, .08);
}

.yf26-plan__badge {
    position: absolute;
    top: 20px;
    right: 20px;
    padding: 6px 9px;
    border-radius: 999px;
    color: #0b2a21;
    background: var(--yf26-mint);
    font-size: 8px;
    font-weight: 800;
}

.yf26-plan__head > span {
    color: var(--yf26-gold);
    font-family: "IBM Plex Mono", monospace;
    font-size: 9px;
    font-weight: 600;
    text-transform: uppercase;
}

.yf26-plan h3 {
    margin: 14px 0 20px;
    font-size: 26px;
    font-weight: 700;
}

.yf26-plan__head > div {
    display: flex;
    align-items: baseline;
    gap: 7px;
}

.yf26-plan__head strong {
    font-size: 42px;
    line-height: 1;
}

.yf26-plan__head small {
    color: rgba(227, 241, 234, .47);
    font-size: 10px;
}

.yf26-plan__head p {
    min-height: 70px;
    margin: 16px 0 0;
    color: rgba(228, 241, 235, .62);
    font-size: 13px;
    line-height: 1.62;
}

.yf26-plan ul {
    display: grid;
    gap: 13px;
    margin: 26px 0 30px;
    padding: 24px 0 0;
    border-top: 1px solid rgba(255, 255, 255, .08);
    list-style: none;
}

.yf26-plan li {
    display: grid;
    grid-template-columns: 18px 1fr;
    gap: 8px;
    color: rgba(229, 242, 236, .7);
    font-size: 12px;
    line-height: 1.45;
}

.yf26-plan li i {
    color: var(--yf26-mint);
}

.yf26-plan .yf26-button {
    width: 100%;
    margin-top: auto;
    color: #eff8f4;
}

.yf26-plan .yf26-button--primary {
    color: #092019;
}

.yf26-final-section {
    background: var(--yf26-night);
}

.yf26-final {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    padding: clamp(36px, 5vw, 56px);
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 28px;
    color: #edf8f3;
    background:
        radial-gradient(circle at 84% 16%, rgba(101, 217, 174, .16), transparent 18rem),
        rgba(255, 255, 255, .035);
}

.yf26-final h2 {
    color: #f1f8f4;
    font-size: clamp(34px, 4vw, 50px);
}

.yf26-final p {
    margin-top: 14px;
    color: rgba(227, 241, 234, .6);
}

.yf26-final .yf26-button {
    flex: 0 0 auto;
}

body:has(.yf26-shell) .yf-footer {
    margin-top: 0;
    border-top: 1px solid rgba(255, 255, 255, .08);
    background: var(--yf26-night);
}

body:has(.yf26-shell) .yf-footer__inner {
    width: min(1180px, calc(100% - 40px));
}

@keyframes yf26-rise {
    from { opacity: 0; transform: translateY(18px); }
    to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 1050px) {
    .yf26-hero__grid {
        grid-template-columns: 1fr;
    }

    .yf26-hero__copy {
        max-width: 760px;
    }

    .yf26-terminal {
        width: min(760px, 100%);
        margin-inline: auto;
    }

    .yf26-command {
        left: 20px;
    }

    .yf26-flow {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px;
    }

    .yf26-flow__connector {
        display: none;
    }

    .yf26-system {
        grid-template-columns: 1fr 1fr;
        gap: 48px;
    }
}

@media (max-width: 820px) {
    .yf26-container {
        width: min(100% - 28px, 720px);
    }

    .yf26-nav__inner {
        grid-template-columns: 1fr auto;
        min-height: 62px;
    }

    .yf26-nav__links {
        display: none;
    }

    .yf26-nav__brand img {
        height: 34px;
    }

    .yf26-nav__auth {
        width: 196px;
    }

    .yf26-nav__auth iframe {
        width: 196px !important;
        max-width: 196px !important;
    }

    .yf26-section-head,
    .yf26-system {
        grid-template-columns: 1fr;
    }

    .yf26-section-head {
        align-items: start;
        gap: 20px;
    }

    .yf26-section-head > p {
        max-width: 610px;
    }

    .yf26-capability--wide {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .yf26-bars {
        padding: 0;
        border-left: 0;
    }

    .yf26-flow {
        grid-template-columns: 1fr;
        gap: 12px;
        max-width: 560px;
        margin-inline: auto;
    }

    .yf26-flow__stage {
        padding: 20px;
    }

    .yf26-chat {
        max-width: 380px;
        margin-inline: auto;
    }

    .yf26-workflow__steps {
        grid-template-columns: 1fr;
    }

    .yf26-system__visual {
        min-height: 440px;
    }

    .yf26-orbit {
        width: min(400px, 88vw);
    }

    .yf26-pricing {
        grid-template-columns: 1fr;
        max-width: 540px;
        margin-inline: auto;
    }

    .yf26-plan {
        min-height: 0;
    }

    .yf26-plan__head p {
        min-height: 0;
    }
}

@media (max-width: 575.98px) {
    .yf26-container {
        width: calc(100% - 24px);
    }

    .yf26-nav__inner {
        gap: 10px;
    }

    .yf26-nav__brand img {
        width: 112px;
        height: auto;
    }

    .yf26-nav__auth {
        width: 164px;
        height: 38px;
    }

    .yf26-nav__auth iframe {
        width: 164px !important;
        max-width: 164px !important;
        height: 38px !important;
    }

    .yf26-nav__auth-face {
        gap: 6px;
        font-size: 10px;
    }

    .yf26-nav__auth-face i {
        font-size: 14px;
    }

    .yf26-hero {
        min-height: auto;
        padding: 52px 0 24px;
    }

    .yf26-hero h1 {
        font-size: clamp(37px, 11vw, 48px);
        line-height: 1.04;
    }

    .yf26-hero__lead {
        font-size: 15px;
    }

    .yf26-actions,
    .yf26-button {
        width: 100%;
    }

    .yf26-trust {
        display: grid;
    }

    .yf26-terminal__chrome {
        grid-template-columns: 1fr auto;
    }

    .yf26-terminal__chrome > span {
        display: none;
    }

    .yf26-terminal__body {
        min-height: 370px;
        grid-template-columns: 42px 1fr;
    }

    .yf26-terminal__rail {
        padding-inline: 5px;
    }

    .yf26-terminal__rail span {
        width: 28px;
        height: 28px;
    }

    .yf26-terminal__content {
        padding: 13px;
    }

    .yf26-overview {
        grid-template-columns: 1fr 1fr;
    }

    .yf26-overview__primary {
        grid-column: 1 / -1;
    }

    .yf26-terminal__analytics {
        grid-template-columns: 1fr;
    }

    .yf26-assets {
        display: none;
    }

    .yf26-chart svg {
        height: 106px;
    }

    .yf26-command {
        position: relative;
        left: auto;
        bottom: auto;
        min-width: 0;
        margin: -10px 12px 12px;
    }

    .yf26-command > span {
        display: none;
    }

    .yf26-hero__foot {
        align-items: flex-start;
        flex-direction: column;
    }

    .yf26-section {
        padding: 66px 0;
    }

    .yf26-section-head h2,
    .yf26-system h2 {
        font-size: clamp(34px, 10vw, 44px);
    }

    .yf26-capabilities {
        grid-template-columns: 1fr;
    }

    .yf26-capability--wide {
        grid-column: auto;
    }

    .yf26-capability {
        min-height: 0;
        padding: 25px;
        border-radius: 20px;
    }

    .yf26-capability__index {
        margin-bottom: 32px;
    }

    .yf26-bars > div {
        grid-template-columns: 58px 1fr 74px;
        gap: 8px;
        font-size: 9px;
    }

    .yf26-bars b {
        font-size: 9px;
    }

    .yf26-flow {
        padding: 10px;
        border-radius: 20px;
    }

    .yf26-workflow__steps span {
        text-align: left;
    }

    .yf26-system__visual {
        min-height: 350px;
    }

    .yf26-orbit__node {
        min-width: 90px;
        grid-template-columns: 26px auto;
        padding: 6px 8px;
    }

    .yf26-orbit__node i {
        width: 24px;
        height: 24px;
    }

    .yf26-orbit__node.is-bank { top: -2%; left: 34%; }
    .yf26-orbit__node.is-cash { right: -5%; }
    .yf26-orbit__node.is-invest { bottom: -2%; left: 34%; }
    .yf26-orbit__node.is-crypto { left: -5%; }

    .yf26-plan {
        padding: 25px;
    }

    .yf26-final {
        align-items: stretch;
        flex-direction: column;
        padding: 28px;
        border-radius: 22px;
    }

    .yf26-final h2 {
        font-size: 36px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .yf26-hero__copy,
    .yf26-terminal {
        animation: none;
    }

    .yf26-button,
    .yf26-capability,
    .yf26-plan {
        transition: none;
    }
}

.expense-budget-ring {
    display: grid;
    place-items: center;
    width: 128px;
    height: 128px;
    margin: 0 auto 10px;
    border-radius: 50%;
    background:
        radial-gradient(circle closest-side, #fff 79%, transparent 81%),
        conic-gradient(var(--expense-budget-color, #2dbf90) var(--expense-budget-progress, 0%), rgba(37, 50, 75, 0.10) 0);
    box-shadow: inset 0 0 0 1px rgba(45, 191, 144, 0.08);
}

.expense-budget-ring.is-overrun {
    box-shadow: inset 0 0 0 1px rgba(255, 77, 95, 0.12);
}

.expense-budget-ring__center {
    display: grid;
    gap: 4px;
    text-align: center;
}

.expense-budget-ring__center strong {
    color: #25324b;
    font-size: 1rem;
    line-height: 1;
}

.expense-budget-ring__center span {
    color: #536179;
    font-size: .78rem;
    font-weight: 700;
}

.expense-budget-ring-caption {
    color: #657188;
    font-size: .8rem;
    font-weight: 600;
}

.income-add-tag-action {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #657188;
    font-size: .92rem;
}

.income-add-tag-action:hover,
.income-add-tag-action:focus {
    color: #2f80ed;
}

.income-tags-carousel {
    display: flex;
    gap: 22px;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 2px 2px 4px;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.income-tags-carousel::-webkit-scrollbar {
    display: none;
}

.income-tags-page {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(2, minmax(24px, auto));
    grid-auto-flow: row;
    gap: 16px 22px;
    min-width: 100%;
    scroll-snap-align: start;
}

.income-tags-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 16px;
}

.income-tags-control {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border: 1px solid rgba(83, 97, 121, 0.18);
    border-radius: 50%;
    color: #536179;
    background: #ffffff;
    box-shadow: 0 6px 14px rgba(22, 34, 51, 0.06);
    transition: color .18s ease, border-color .18s ease, background .18s ease, opacity .18s ease;
}

.income-tags-control:hover:not(:disabled),
.income-tags-control:focus-visible:not(:disabled) {
    color: #2f80ed;
    border-color: rgba(47, 128, 237, 0.36);
    background: rgba(47, 128, 237, 0.06);
}

.income-tags-control:disabled {
    opacity: .35;
    cursor: default;
}

.income-tags-page-indicator {
    min-width: 36px;
    color: #657188;
    font-size: .82rem;
    text-align: center;
}

.income-tag {
    min-width: 0;
}

.income-tag-select {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    max-width: 100%;
    color: #536179;
    font-size: .92rem;
    line-height: 1.2;
}

.income-tag-color {
    flex: 0 0 auto;
    font-size: .78rem;
}

.income-tag-name {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.income-tag-edit {
    flex: 0 0 auto;
    color: #8b98ad;
    font-size: .83rem;
}

.income-month-goal {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #657188;
    font-size: .9rem;
}

.income-month-goal i {
    color: #8b98ad;
}

.income-month-metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(260px, 1fr));
    gap: 12px 16px;
}

.income-month-metric {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    min-height: 78px;
    padding: 14px 16px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(22, 34, 51, 0.04);
}

.income-month-metric__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    font-size: 1.3rem;
}

.income-month-metric__label {
    display: block;
    margin-bottom: 4px;
    color: #657188;
    font-size: .8rem;
    line-height: 1.2;
}

.income-month-metric strong {
    display: block;
    color: #25324b;
    font-size: .99rem;
    line-height: 1.2;
}

.income-month-metric #incomeHeroMonthPlan,
.income-month-metric #incomeTotalMonth {
    color: #25324b;
    font-size: .99rem;
    line-height: 1.2;
}

.income-month-metric #incomeHeroMonthPlan strong,
.income-month-metric #incomeTotalMonth strong {
    display: inline;
}

.income-month-metric__subtext {
    display: block;
    margin-top: 3px;
    font-size: .86rem;
    font-weight: 700;
    line-height: 1.2;
}

.income-month-metric--plan .income-month-metric__icon {
    color: #2f80ed;
    background: rgba(47, 128, 237, 0.12);
}

.income-month-metric--fact .income-month-metric__icon {
    color: #18a878;
    background: rgba(24, 168, 120, 0.12);
}

.income-month-metric--delta .income-month-metric__icon {
    color: #ff4d5f;
    background: rgba(255, 77, 95, 0.12);
}

.income-month-metric--completion {
    grid-template-columns: minmax(0, 1fr) 58px;
}

.income-month-progress-ring {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background:
        radial-gradient(circle closest-side, #fff 74%, transparent 76%),
        conic-gradient(#2dbf90 var(--income-progress, 0%), rgba(45, 191, 144, 0.16) 0);
    box-shadow: inset 0 0 0 1px rgba(45, 191, 144, 0.10);
}

#income-kpi-card .card-body,
#income-month-kpi-card .card-body {
    padding: 18px 18px;
}

#income-month-kpi-card .card-body,
#income-month-kpi-card .income-kpi-inline {
    display: flex;
    flex-direction: column;
}

#income-month-kpi-card .income-kpi-inline {
    flex: 1 1 auto;
}

#income-month-kpi-card .income-kpi-section {
    margin-top: auto;
    margin-bottom: auto;
}

.income-kpi-inline {
    color: #313a4f;
    font-size: .88rem;
    line-height: 1.35;
}

.income-kpi-section {
    display: grid;
    gap: 8px;
}

.income-kpi-row {
    display: grid;
    grid-template-columns: 18px minmax(130px, 1fr) minmax(108px, auto);
    gap: 10px;
    align-items: start;
    color: #536179;
}

.income-kpi-row i {
    margin-top: 2px;
    color: #8b98ad;
    font-size: .92rem;
}

.income-kpi-row > span:last-child {
    color: #25324b;
    text-align: right;
    font-weight: 700;
}

.income-kpi-row strong {
    font-weight: 700;
}

@media (min-width: 1400px) {
    .income-month-metrics {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }

    .income-month-card .card-body {
        padding-right: 14px;
        padding-left: 14px;
    }
}

@media (max-width: 767.98px) {
    .income-tags-page {
        grid-template-columns: 1fr;
        grid-template-rows: repeat(4, minmax(24px, auto));
    }

    .income-month-metrics {
        grid-template-columns: 1fr;
    }

    .income-month-metric {
        min-height: 76px;
    }

    .income-tags-card .card-body,
    .income-month-card .card-body,
    .expense-tags-card .card-body,
    .expense-month-card .card-body {
        padding: 18px 14px;
    }

    .expense-tags-page {
        grid-template-columns: 1fr;
        grid-template-rows: repeat(6, minmax(24px, auto));
    }

    .expense-month-card .card-body {
        display: block;
        min-height: auto;
    }

    .expense-month-card .mb-1 {
        margin-bottom: 10px !important;
    }

    .expense-budget-inline {
        margin-top: 16px;
        padding-left: 0;
        border-left: 0;
    }
}

#loader {
    border: 4px solid #f3f3f3;
    border-top: 4px solid #3498db;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    animation: spin 2s linear infinite;
}
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.card {
    position: relative;
    height: 100%;
    border-radius: 10px;
    box-shadow: 0 .25rem .35rem rgba(0, 0, 0, 0.07);
}
.overlay-card-lock {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 9 !important;
    pointer-events: none;
    cursor: default;
    border-radius: 7px;
}

.custom-select {
    position: relative;
    display: inline-block;
    width: 100%;
}

.selected {
    padding: 0.375rem;
    border: 1px solid #ccc;
    cursor: pointer;
    border-radius: 0.375rem;
}

.options {
    display: none;
    position: absolute;
    z-index: 1;
    width: 100%;
    border-radius: 0.375rem;
    font-size: 10pt;
}
.option {
    padding: 0.375rem 0.375rem 0.375rem 1rem;
    cursor: pointer;
}
.option:hover {
    background-color: #f0f0f0;
}

.bg-primary {
    background-color: #5b8f92 !important;
}
.text-primary {
    color: #5b8f92 !important;
}
.text-danger {
    color: #ee6666 !important;
}

.bg-changes-down {
    background-color: #ea3943;
}

.bg-changes-up {
    background-color: #16c784;
}

.text-crypto-name {
    display: inline-flex;
    font-weight: 400;
    font-size: 14px;
}

.investmentGraph {
    width: 100%;
    height: 100%;
    text-align: center;
    box-sizing: content-box;
    filter: hue-rotate(300deg) saturate(210%) brightness(0.7) contrast(170%);
}

.investmentGraph-isUp {
    filter: hue-rotate(85deg) saturate(80%) brightness(0.85);
}

.nav-element {
    background: rgba(218, 218, 218, 0.76);
    border-radius: 20px;
    color: #939393 !important;
}
.nav-element-active {
    background: rgba(197, 197, 197, 0.76);
    color: #1e1e1e !important;
}

.payment-success {
    background-color: #93dabd;
    border-radius: 8px;
    font-size: 0.8rem !important;
    color: #5e5e5e;
}
.payment-pending {
    background-color: #ecce8b;
    border-radius: 8px;
    font-size: 0.8rem !important;
    color: #5e5e5e;
}
.payment-fail {
    background-color: #f3a8a8;
    border-radius: 8px;
    font-size: 0.8rem !important;
    color: #5e5e5e;
}
.payment-transaction {
    background-color: rgba(197, 197, 197, 0.55);
    border-radius: 8px;
    font-size: 0.8rem !important;
    font-weight: normal !important;
}

.btn-primary {
    background-color: #5b8f92 !important;
    border-color: rgba(91, 143, 146, 0) !important;
}
.btn-primary .disabled, .btn-primary:disabled {
    background-color: #5b8f92 !important;
    border-color: rgba(91, 143, 146, 0) !important;
}
.btn-primary:focus {
    box-shadow: 0 0 0 .25rem rgba(43, 87, 91, 0);
}
.btn-primary:active {
    box-shadow: 0 0 0 .25rem rgba(43, 87, 91, 0) !important;
}
.btn-myself {
    background-color: #489d7a !important;
}
.btn-premium {
    background-color: #e0ad46 !important;
}

.landing-page {
    border-radius: 12px;
    box-shadow: 0 .25rem .35rem rgba(0, 0, 0, 0.15);
}
.landing-page img {
    border-radius: 12px;
    box-shadow: 0 .225rem .25rem rgba(0, 0, 0, 0.1);
}

.overlay-card-lock-content {
    text-align: center;
}

#overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.8);
    z-index: 9999;
}

.tooltipTutorial {
    display: none;
    position: absolute;
    background-color: #fff;
    color: #000;
    border-radius: 5px;
    padding: 10px;
    max-width: 500px;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
    z-index: 399999999;
    visibility: visible;
}
.card.highlight {
    z-index: 299999999;
    border: 2px solid #007bff;
}
#progressTutorial {
    margin: 10px 0;
}
@keyframes bounce {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-10px);
    }
}

.positive-change {
    color: #91cc75;
}
.negative-change {
    color: #ee6666;
}

.bg-positive-change {
   background-color: rgba(145, 204, 117, 0.75);
}
.bg-negative-change {
    background-color: rgba(238, 102, 102, 0.75);
}

.task-row {
    border-radius: 10px;
    box-shadow: 0 .225rem .25rem rgba(0, 0, 0, 0.1);
}

.light-theme .task-row {
    border: 1px solid #adadad;
    background: #ececec;
}

.task-name {
    font-size: 11pt;
    margin: 0;
    padding: 0;
}

.task-description {
    font-size: 9pt;
    margin: 0;
    padding: 0;
    display: block;
}

.task-button {
    border-radius: 0 0 0.375rem 0.375rem;
}

.task-reward-value {
    font-size: 10pt;
    margin: 0;
}

.task-reward-token {
    font-size: 7pt;
    margin: 0;
}

.task-arrow-right {
    font-size: 9pt;
}

.task-icon {
 height: 34px;
}

.coin-price {
    font-size: 10pt;
}

.pricing-box {
    height: 100%;
    border-radius: 12px;
    box-shadow: 0 .225rem .25rem rgba(0, 0, 0, 0.1);
}
.disabled-box {
    background-color: rgba(89, 89, 89, 0.25) !important;
    z-index: 1000000000000000 !important;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.dark-theme {
    background-color: #0f1725;
}
.dark-theme .modal-content {
    background-color: #0f1725 !important;
    color: #c9c9c9 !important;
    padding: .5em 1em .7em 1em;
    border: 2px solid rgb(255 255 255 / 0.05);
}
.dark-theme .card-subtitle {
    color: #a6a6a6 !important;
}
.dark-theme .card {
    background: #18212f !important;
    color: #c9c9c9 !important;
    padding: .5em 1em .7em 1em;
    border: 2px solid rgb(255 255 255 / 0.05);
}

.dark-theme .text-crypto-name {
    color: rgba(222, 222, 222, 0.55);
    border-bottom: 1px dashed rgba(222, 222, 222, 0.12);
}

.dark-theme .coin-price {
    color: rgba(229, 229, 229, 0.75);
}

.notify-dot {
    background: rgba(255, 107, 107, 1);
    box-shadow: 0px 0px 3px 3px rgba(255, 107, 107, 0.5);
}

.dark-theme .overlay-card-lock {
    backdrop-filter: blur(16px) saturate(180%);
    -webkit-backdrop-filter: blur(16px) saturate(180%);
    background-color: rgba(17, 25, 40, 0.75);
    border: 2px solid rgb(0 0 0 / 0.1);
}
.dark-theme .form-select {
    background-color: #23344a;
    color: white;
    border: solid 1px rgba(212, 212, 212, 0.4);
}

.dark-theme .options{
    background: #2d3748;
    border: 1px solid #254060;
    border-radius: 8px;
}

.dark-theme .option:hover {
    background: #19273a;
}

.dark-theme table {
    color: #c9c9c9 !important;
}
.dark-theme .main-table {
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 10px;
    overflow: hidden;
    border: solid 1px rgba(212, 212, 212, 0.4);
    padding: 0.235rem 0.5rem 0;
    background-color: #1e2d40;
}
.dark-theme .main-table td:nth-child(odd),
.dark-theme .main-table th:nth-child(odd) {
    background-color: #1e2d40; /* Светло-серый цвет для нечётных столбцов */
}
.dark-theme .main-table td:nth-child(even),
.dark-theme .main-table th:nth-child(even) {
    background-color: #23344a;
}
.dark-theme input {
    background-color: #2d3748 !important;
    color: #c9c9c9 !important;
}
.dark-theme .selected {
    background: #2d3748;
}
.dark-theme input:focus {
    background-color: #2d3748 !important;
    color: #c9c9c9 !important;
}
.dark-theme .form-control:disabled {
    background-color: #545462 !important;
    color: #a9a9a9 !important;
}
.dark-theme input::placeholder {
    color: #a9a9a9 !important;
}
.dark-theme strong {
    color: #cccccc;
}

.light-theme {
    background-color: #efefef;
}
.light-theme .modal-content {
    background-color: #f8f8f8;
    color: black;
    padding: .5em 1em .7em 1em;
    border: 2px solid rgb(0 0 0 / 0.1);
}
.light-theme .card {
    background-color: #f8f8f8;
    color: #444444;
    padding: .5em 1em .7em 1em;
    border: 2px solid rgb(0 0 0 / 0.1);
}
.light-theme .overlay-card-lock {
    backdrop-filter: blur(16px) saturate(180%);
    -webkit-backdrop-filter: blur(16px) saturate(180%);
    background-color: rgba(238, 238, 238, 0.7);
    border: 1px solid #dfdfdf;
}

.light-theme .text-crypto-name {
    color: rgba(29, 29, 29, 0.55);
    border-bottom: 1px dashed rgba(29, 29, 29, 0.12);
}

.light-theme .coin-price {
    color: rgba(29, 29, 29, 0.75);
}

.light-theme .selected {
    background: #ffffff;
}
.light-theme .form-select {
    background-color: #ffffff;
}

.light-theme .options{
    background: #ffffff;;
    border: 1px solid #cccccc;
    border-radius: 8px;
}

.light-theme .option:hover {
    background: #cccccc;
}

.light-theme table {
    color: #1f1f1f !important;
}
.light-theme .main-table {
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 10px;
    overflow: hidden;
    border: solid 1px rgb(0 0 0 / 40%);
    padding: 0.235rem 0.5rem 0;
    background-color: #eeeeee;
}
.light-theme .main-table td:nth-child(odd),
.light-theme .main-table th:nth-child(odd) {
    background-color: #eeeeee; /* Светло-серый цвет для нечётных столбцов */
}
.light-theme .main-table td:nth-child(even),
.light-theme .main-table th:nth-child(even) {
    background-color: #f8f8f8; /* Белый цвет для чётных столбцов */
}
.light-theme input {
    background-color: #e3e3e3;
    color: #000000;
}
.light-theme input:focus {
    background-color: #e3e3e3;
    color: #000000;
}
.light-theme .form-control:disabled {
    background-color: #e3e3e3;
    color: #a9a9a9 ;
}
.light-theme strong {
    color: #333333;
}

.theme-switch-wrapper {
    display: flex;
    align-items: center;
}
.theme-switch {
    display: inline-block;
    height: 24px;
    position: relative;
    width: 50px;
}
.theme-switch input {
    display: none;
}

.slider {
    background-color: #ccc;
    bottom: 0;
    cursor: pointer;
    left: 0px;
    position: absolute;
    right: 0;
    top: 0;
    transition: 0.4s;
}
.slider:before {
    background-color: white;
    bottom: 4px;
    content: "";
    height: 16px;
    left: 4px;
    position: absolute;
    transition: 0.4s;
    width: 16px;
}

input:checked + .slider {
    background-color: #66bb6a;
}
input:checked + .slider:before {
    transform: translateX(26px);
}

.slider.round {
    border-radius: 24px;
}
.slider.round:before {
    border-radius: 50%;
}

.photo {
    display: inline-block;
    height: 30px;
    width: 30px;
    border-radius: 50%;
    vertical-align: middle;
    overflow: hidden;

}
.photo img {
    width: 100%;
}
.premium-photo {
    border: 1px solid rgba(255, 178, 0, 0.7);
    box-shadow: 0px 0px 10px -2px rgb(255, 178, 0);
}
.business-photo {
    border: 1px solid #489d7a;
    box-shadow: 0px 0px 10px -2px rgb(54, 168, 125);
}
.trial-photo {
    border: 1px solid #0890e8;
    box-shadow: 0px 0px 10px -2px rgb(8, 143, 231);
}

.premium-color {
    color: rgb(253, 177, 1);
}
.business-color {
    color: #489d7a;
}
.trial-color {
    color: #0890e8;
}

.business-active {
    border: 1px solid #489d7a !important;
    box-shadow: 0px 0px 5px 0px rgb(54, 168, 125) !important;
}
.premium-active {
    border: 1px solid rgba(255, 178, 0, 0.7) !important;
    box-shadow: 0px 0px 5px 0px rgb(255, 178, 0) !important;
}
.trial-active {
    border: 1px solid #0890e8 !important;
    box-shadow: 0px 0px 5px 0px rgb(8, 143, 231) !important;
}

.cursor-pointer {
    cursor: pointer;
}
.cursor-default {
    cursor: default;
}

footer {
    flex-shrink: 0;
    margin-top: 28px;
}


@media (max-width: 768px) {
    .w-75 {
        width: 100% !important;
    }

    .btn-group {
        display: flex;
        flex-wrap: wrap;
        gap: 0px;
    }
    .btn-group .btn {
        flex: 1 1 calc(50% - 10px);
    }
    .tooltipTutorial {
        max-width: 100%;
        width: 100%;
        left: 0 !important;
        padding: 20px;
        box-sizing: border-box;
    }
}

@media (max-width: 1399px) {
    .custom-logo {
        margin-right: 100px;
    }
}

@media (max-width: 1199px) {
    .custom-logo {
        margin-right: 30px;
    }
}

/* YousoroFinance 2026 landing */
.yf-landing-nav,
.yf-landing-nav *,
.yf-landing-shell,
.yf-landing-shell * {
    box-sizing: border-box;
}

.content > .container:has(.yf-landing-shell) {
    width: 100%;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

.yf-landing-nav {
    position: sticky;
    top: 0;
    z-index: 1000;
    width: 100%;
    background: rgba(13, 24, 25, 0.88);
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(18px) saturate(140%);
    -webkit-backdrop-filter: blur(18px) saturate(140%);
}

.yf-landing-nav__inner {
    width: min(1180px, calc(100% - 32px));
    min-height: 72px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

.yf-landing-nav__brand {
    display: inline-flex;
    align-items: center;
    min-width: 190px;
}

.yf-landing-nav__brand img {
    height: 42px;
    max-width: 100%;
    object-fit: contain;
}

.yf-landing-nav__links {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.04);
}

.yf-landing-nav__links a {
    color: rgba(245, 250, 246, 0.76);
    text-decoration: none;
    font-size: 0.92rem;
    line-height: 1;
    padding: 10px 14px;
    border-radius: 999px;
    transition: color .2s ease, background-color .2s ease;
}

.yf-landing-nav__links a:hover {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.08);
}

.yf-landing-nav__auth {
    min-width: 236px;
    display: flex;
    justify-content: flex-end;
}

.yf-landing-shell {
    width: 100%;
    margin-left: 0;
    margin-top: -0.5rem;
    overflow: hidden;
    color: #162120;
    background:
        radial-gradient(circle at 12% 0%, rgba(206, 175, 96, 0.12), transparent 34rem),
        linear-gradient(180deg, #0d1819 0%, #f4f1ea 35%, #f7f5ef 100%);
}

.yf-landing-hero {
    position: relative;
    min-height: calc(100svh - 72px);
    padding: clamp(64px, 8vw, 104px) 0 clamp(56px, 8vw, 96px);
    color: #f8f7ef;
    isolation: isolate;
}

.yf-landing-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background:
        linear-gradient(115deg, rgba(13, 24, 25, 0.98) 0%, rgba(13, 24, 25, 0.92) 44%, rgba(18, 50, 48, 0.66) 100%),
        radial-gradient(circle at 76% 16%, rgba(107, 183, 174, 0.22), transparent 24rem),
        radial-gradient(circle at 24% 78%, rgba(206, 175, 96, 0.16), transparent 30rem);
}

.yf-landing-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: .2;
    background-image:
        linear-gradient(rgba(255, 255, 255, 0.08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.08) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: linear-gradient(90deg, transparent, #000 22%, #000 76%, transparent);
}

.yf-landing-hero__inner,
.yf-landing-section,
.yf-landing-final {
    width: min(1180px, calc(100% - 32px));
    margin: 0 auto;
}

.yf-landing-hero__inner {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(420px, 1.15fr);
    align-items: center;
    gap: clamp(32px, 6vw, 72px);
}

.yf-landing-hero__copy {
    animation: yfLandingRise .7s ease both;
}

.yf-landing-kicker,
.yf-landing-section__head span,
.yf-landing-workflow__content > span,
.yf-landing-final span,
.yf-landing-plan__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #c8a757;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.yf-landing-kicker::before,
.yf-landing-section__head span::before,
.yf-landing-workflow__content > span::before,
.yf-landing-final span::before {
    content: "";
    width: 28px;
    height: 1px;
    background: currentColor;
}

.yf-landing-hero h1 {
    max-width: 760px;
    margin: 18px 0 20px;
    font-size: clamp(2.55rem, 6vw, 5.7rem);
    line-height: .94;
    font-weight: 750;
    letter-spacing: 0;
}

.yf-landing-hero p {
    max-width: 590px;
    margin: 0;
    color: rgba(248, 247, 239, 0.76);
    font-size: clamp(1.03rem, 1.6vw, 1.2rem);
    line-height: 1.7;
}

.yf-landing-hero h1 span {
    display: block;
}

.yf-landing-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-top: 34px;
}

.yf-landing-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 22px;
    border-radius: 999px;
    font-weight: 700;
    text-decoration: none;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background-color .22s ease;
}

.yf-landing-button:hover {
    transform: translateY(-2px);
}

.yf-landing-button--primary {
    color: #102020;
    background: linear-gradient(135deg, #f4d57a, #7ed4c8);
    box-shadow: 0 18px 36px rgba(126, 212, 200, 0.22);
}

.yf-landing-button--primary:hover {
    color: #102020;
    box-shadow: 0 24px 42px rgba(126, 212, 200, 0.3);
}

.yf-landing-button--ghost,
.yf-landing-button--line {
    color: #f8f7ef;
    border: 1px solid rgba(255, 255, 255, 0.22);
    background: rgba(255, 255, 255, 0.06);
}

.yf-landing-button--ghost:hover,
.yf-landing-button--line:hover {
    color: #ffffff;
    border-color: rgba(255, 255, 255, 0.38);
}

.yf-landing-button--line {
    color: #1c2a28;
    border-color: rgba(28, 42, 40, 0.16);
    background: rgba(255, 255, 255, 0.56);
}

.yf-landing-button--line:hover {
    color: #102020;
    border-color: rgba(25, 88, 82, 0.32);
}

.yf-landing-trust {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 22px;
}

.yf-landing-trust span {
    color: rgba(248, 247, 239, 0.74);
    font-size: .9rem;
    padding: 8px 12px;
    border: 1px solid rgba(255, 255, 255, 0.11);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.05);
}

.yf-landing-product {
    position: relative;
    min-height: 560px;
    animation: yfLandingFloatIn .9s .1s ease both;
}

.yf-landing-product__screen {
    position: absolute;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.08);
    box-shadow: 0 34px 90px rgba(0, 0, 0, 0.34);
}

.yf-landing-product__screen img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: saturate(0.9) contrast(1.03);
}

.yf-landing-product__screen--main {
    inset: 22px 0 110px 36px;
    transform: perspective(1200px) rotateY(-9deg) rotateX(3deg);
}

.yf-landing-product__screen--side {
    right: 44px;
    bottom: 28px;
    width: min(430px, 62%);
    height: 210px;
    transform: perspective(900px) rotateY(-13deg) rotateX(5deg);
}

.yf-landing-product__note {
    position: absolute;
    left: 0;
    bottom: 72px;
    max-width: 260px;
    padding: 16px 18px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 18px;
    color: rgba(248, 247, 239, 0.84);
    background: rgba(14, 29, 30, 0.74);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    box-shadow: 0 22px 46px rgba(0, 0, 0, 0.24);
}

.yf-landing-product__note span {
    display: block;
    color: #f4d57a;
    font-size: 1.35rem;
    font-weight: 800;
}

.yf-landing-section {
    padding: clamp(68px, 9vw, 110px) 0;
}

.yf-landing-section--light {
    color: #162120;
}

.yf-landing-section__head {
    max-width: 760px;
    margin-bottom: 42px;
}

.yf-landing-section__head h2,
.yf-landing-workflow__content h2,
.yf-landing-final h2 {
    margin: 14px 0 0;
    font-size: clamp(2rem, 4.2vw, 4.1rem);
    line-height: 1.02;
    font-weight: 760;
    letter-spacing: 0;
}

.yf-landing-benefits {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    overflow: hidden;
    border: 1px solid rgba(20, 42, 39, 0.12);
    border-radius: 28px;
    background: rgba(20, 42, 39, 0.12);
}

.yf-landing-benefit {
    min-height: 310px;
    padding: clamp(28px, 4vw, 42px);
    background: rgba(255, 255, 255, 0.58);
    transition: background-color .24s ease, transform .24s ease;
}

.yf-landing-benefit:hover {
    background: rgba(255, 255, 255, 0.86);
    transform: translateY(-3px);
}

.yf-landing-benefit i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    margin-bottom: 42px;
    border-radius: 999px;
    color: #173433;
    background: linear-gradient(135deg, rgba(126, 212, 200, 0.7), rgba(244, 213, 122, 0.7));
    font-size: 1.35rem;
}

.yf-landing-benefit h3,
.yf-landing-step h3,
.yf-landing-plan h3 {
    margin: 0 0 12px;
    font-size: 1.35rem;
    line-height: 1.2;
    font-weight: 750;
}

.yf-landing-benefit p,
.yf-landing-step p,
.yf-landing-plan p,
.yf-landing-final p {
    margin: 0;
    color: rgba(22, 33, 32, 0.68);
    line-height: 1.65;
}

.yf-landing-workflow {
    display: grid;
    grid-template-columns: minmax(280px, .8fr) minmax(0, 1fr);
    align-items: center;
    gap: clamp(34px, 6vw, 76px);
}

.yf-landing-workflow__media {
    position: relative;
}

.yf-landing-workflow__media::before {
    content: "";
    position: absolute;
    inset: 32px -24px -24px 28px;
    z-index: -1;
    border-radius: 36px;
    background: #183331;
}

.yf-landing-workflow__media img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1.08;
    object-fit: cover;
    border-radius: 34px;
    box-shadow: 0 30px 70px rgba(20, 42, 39, 0.24);
}

.yf-landing-steps {
    display: grid;
    gap: 18px;
    margin-top: 34px;
}

.yf-landing-step {
    display: grid;
    grid-template-columns: 64px 1fr;
    gap: 18px;
    padding: 22px 0;
    border-top: 1px solid rgba(20, 42, 39, 0.12);
}

.yf-landing-step strong {
    color: #c8a757;
    font-size: .95rem;
}

.yf-landing-section--pricing {
    width: 100%;
    max-width: none;
    padding-left: max(16px, calc((100vw - 1180px) / 2));
    padding-right: max(16px, calc((100vw - 1180px) / 2));
    color: #f7f3e7;
    background:
        linear-gradient(180deg, rgba(16, 32, 32, 0.96), rgba(13, 24, 25, 1)),
        radial-gradient(circle at 82% 18%, rgba(126, 212, 200, 0.2), transparent 28rem);
}

.yf-landing-section--pricing .yf-landing-section__head h2 {
    color: #f8f7ef;
}

.yf-landing-pricing {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.yf-landing-plan {
    position: relative;
    display: flex;
    min-height: 560px;
    flex-direction: column;
    justify-content: space-between;
    gap: 28px;
    padding: clamp(26px, 3vw, 36px);
    border: 1px solid rgba(255, 255, 255, 0.13);
    border-radius: 28px;
    background: rgba(255, 255, 255, 0.055);
    transition: transform .24s ease, border-color .24s ease, background-color .24s ease;
}

.yf-landing-plan:hover {
    transform: translateY(-6px);
    border-color: rgba(126, 212, 200, 0.34);
    background: rgba(255, 255, 255, 0.08);
}

.yf-landing-plan--featured {
    color: #102020;
    border-color: rgba(244, 213, 122, 0.58);
    background: linear-gradient(145deg, #f7efd5, #d8f1e8);
    box-shadow: 0 28px 80px rgba(126, 212, 200, 0.18);
}

.yf-landing-plan__badge {
    position: absolute;
    top: 18px;
    right: 18px;
    padding: 8px 12px;
    border-radius: 999px;
    color: #102020;
    background: rgba(244, 213, 122, 0.78);
    font-size: .78rem;
    font-weight: 800;
}

.yf-landing-plan h3 {
    color: inherit;
}

.yf-landing-plan__price {
    margin: 22px 0 12px;
    font-size: clamp(2.2rem, 3.5vw, 3.35rem);
    line-height: 1;
    font-weight: 800;
}

.yf-landing-plan__price small {
    font-size: 1rem;
    font-weight: 600;
    opacity: .62;
}

.yf-landing-plan:not(.yf-landing-plan--featured) p,
.yf-landing-plan:not(.yf-landing-plan--featured) li {
    color: rgba(248, 247, 239, 0.72);
}

.yf-landing-plan ul {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.yf-landing-plan li {
    position: relative;
    padding-left: 28px;
    line-height: 1.45;
}

.yf-landing-plan li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .45em;
    width: 10px;
    height: 10px;
    border-radius: 999px;
    background: linear-gradient(135deg, #f4d57a, #7ed4c8);
}

.yf-landing-final {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
    margin-top: clamp(58px, 8vw, 96px);
    margin-bottom: clamp(50px, 7vw, 82px);
    padding: clamp(32px, 5vw, 58px);
    border-radius: 34px;
    color: #f8f7ef;
    background:
        linear-gradient(135deg, rgba(13, 24, 25, 0.98), rgba(24, 58, 55, 0.96)),
        radial-gradient(circle at 80% 10%, rgba(244, 213, 122, 0.2), transparent 20rem);
}

.yf-landing-final div {
    max-width: 760px;
}

.yf-landing-final h2 {
    max-width: 820px;
}

.yf-landing-final p {
    max-width: 720px;
    margin-top: 18px;
    color: rgba(248, 247, 239, 0.72);
}

@keyframes yfLandingRise {
    from {
        opacity: 0;
        transform: translateY(22px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes yfLandingFloatIn {
    from {
        opacity: 0;
        transform: translateY(30px) scale(.98);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@media (max-width: 991.98px) {
    .yf-landing-nav__inner {
        min-height: auto;
        padding: 14px 0;
        flex-wrap: wrap;
        justify-content: center;
    }

    .yf-landing-nav__brand {
        justify-content: center;
        min-width: 100%;
    }

    .yf-landing-nav__links {
        order: 3;
        width: 100%;
        justify-content: center;
        flex-wrap: wrap;
        overflow: hidden;
    }

    .yf-landing-nav__auth {
        min-width: 0;
        justify-content: center;
    }

    .yf-landing-hero {
        min-height: auto;
        padding-top: 46px;
    }

    .yf-landing-hero__inner,
    .yf-landing-workflow,
    .yf-landing-pricing {
        grid-template-columns: 1fr;
    }

    .yf-landing-product {
        min-height: 430px;
    }

    .yf-landing-product__screen--main {
        inset: 8px 0 96px 0;
        transform: none;
    }

    .yf-landing-product__screen--side {
        right: 10px;
        bottom: 24px;
        width: 70%;
        height: 160px;
        transform: none;
    }

    .yf-landing-product__note {
        left: 10px;
        bottom: 42px;
    }

    .yf-landing-benefits {
        grid-template-columns: 1fr;
    }

    .yf-landing-benefit {
        min-height: 0;
    }

    .yf-landing-benefit i {
        margin-bottom: 24px;
    }

    .yf-landing-final {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 575.98px) {
    body:has(.yf-landing-shell) {
        overflow-x: hidden;
    }

    .yf-landing-shell {
        width: 100%;
        max-width: 100%;
        margin-left: 0;
    }

    .yf-landing-nav__inner,
    .yf-landing-hero__inner,
    .yf-landing-section,
    .yf-landing-final {
        width: min(1180px, calc(100% - 24px));
    }

    .yf-landing-nav__brand img {
        height: 34px;
    }

    .yf-landing-nav__links a {
        padding: 8px 7px;
        font-size: .76rem;
    }

    .yf-landing-hero h1 {
        max-width: 100%;
        font-size: 1.62rem;
        line-height: 1.05;
        overflow-wrap: anywhere;
    }

    .yf-landing-hero__copy {
        width: 100% !important;
        max-width: 330px !important;
    }

    .yf-landing-hero h1,
    .yf-landing-hero h1 span {
        width: 100% !important;
        max-width: 330px !important;
    }

    .yf-landing-kicker {
        max-width: 100%;
        font-size: .66rem;
        line-height: 1.45;
    }

    .yf-landing-hero p {
        width: 100% !important;
        max-width: 330px !important;
        font-size: .9rem;
    }

    .yf-landing-actions,
    .yf-landing-button {
        width: 100%;
    }

    .yf-landing-actions,
    .yf-landing-trust {
        max-width: 330px;
    }

    .yf-landing-product {
        min-height: 370px;
    }

    .yf-landing-product__screen {
        border-radius: 18px;
    }

    .yf-landing-product__screen--main {
        bottom: 118px;
    }

    .yf-landing-product__screen--side {
        width: 78%;
        height: 128px;
    }

    .yf-landing-product__note {
        max-width: calc(100% - 20px);
        padding: 12px 14px;
        font-size: .9rem;
    }

    .yf-landing-step {
        grid-template-columns: 44px 1fr;
    }

    .yf-landing-plan {
        min-height: auto;
    }

    .yf-landing-plan__badge {
        position: static;
        align-self: flex-start;
        margin-bottom: -8px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .yf-landing-hero__copy,
    .yf-landing-product {
        animation: none;
    }

    .yf-landing-button,
    .yf-landing-benefit,
    .yf-landing-plan {
        transition: none;
    }
}

/* YousoroFinance commercial landing polish */
:root {
    --yf-dark: #0b1c19;
    --yf-dark-2: #132b26;
    --yf-surface: #f4f1ea;
    --yf-surface-2: #f7f4ed;
    --yf-text: #10201d;
    --yf-text-dark: #f8f4ea;
    --yf-muted: #6d7772;
    --yf-gold: #d6b45d;
    --yf-mint: #9ddfc4;
    --yf-gradient: linear-gradient(135deg, #f0d978 0%, #9ddfc4 100%);
    --yf-border-dark: rgba(255, 255, 255, 0.12);
    --yf-border-light: rgba(16, 32, 29, 0.12);
    --yf-radius-lg: 32px;
    --yf-radius-md: 24px;
    --yf-shadow-soft: 0 20px 60px rgba(0, 0, 0, 0.18);
    --yf-shadow-card: 0 18px 44px rgba(16, 32, 29, 0.1);
    --yf-container: min(1180px, calc(100% - 40px));
}

.content > .container:has(.yf-landing-shell) {
    width: 100%;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}

.yf-landing-nav {
    background: rgba(11, 28, 25, 0.82);
    border-bottom: 1px solid var(--yf-border-dark);
}

.yf-landing-nav__inner {
    width: var(--yf-container);
    min-height: 64px;
    gap: 18px;
}

.yf-landing-nav__brand {
    min-width: 172px;
}

.yf-landing-nav__brand img {
    height: 36px;
}

.yf-landing-nav__links {
    gap: 4px;
    padding: 4px;
    border-color: var(--yf-border-dark);
    background: rgba(255, 255, 255, 0.045);
}

.yf-landing-nav__links a {
    color: rgba(248, 244, 234, 0.72);
    font-size: 0.9rem;
    font-weight: 500;
    padding: 9px 13px;
}

.yf-landing-nav__links a:hover,
.yf-landing-nav__links a:focus-visible {
    color: var(--yf-text-dark);
    background: rgba(157, 223, 196, 0.11);
    outline: none;
}

.yf-landing-nav__auth {
    min-width: 220px;
}

.yf-landing-shell {
    color: var(--yf-text);
    background:
        radial-gradient(circle at 72% 8%, rgba(157, 223, 196, 0.12), transparent 26rem),
        linear-gradient(180deg, var(--yf-dark) 0%, var(--yf-surface) 35%, var(--yf-surface-2) 100%);
}

.yf-landing-hero {
    min-height: auto;
    padding: clamp(70px, 8vw, 104px) 0 clamp(74px, 8vw, 108px);
    color: var(--yf-text-dark);
}

.yf-landing-hero::before {
    background:
        linear-gradient(115deg, rgba(11, 28, 25, 0.99) 0%, rgba(11, 28, 25, 0.94) 46%, rgba(19, 43, 38, 0.82) 100%),
        radial-gradient(circle at 76% 20%, rgba(157, 223, 196, 0.16), transparent 24rem),
        radial-gradient(circle at 24% 78%, rgba(214, 180, 93, 0.11), transparent 28rem);
}

.yf-landing-hero::after {
    opacity: .11;
    background-size: 84px 84px;
}

.yf-landing-hero__inner,
.yf-landing-section,
.yf-landing-final {
    width: var(--yf-container);
}

.yf-landing-hero__inner {
    grid-template-columns: minmax(0, 0.92fr) minmax(400px, 1.08fr);
    gap: clamp(36px, 5vw, 64px);
}

.yf-landing-kicker,
.yf-landing-section__head span,
.yf-landing-workflow__content > span,
.yf-landing-final span,
.yf-landing-plan__eyebrow {
    color: var(--yf-gold);
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .075em;
}

.yf-landing-hero h1 {
    max-width: 640px;
    margin: 16px 0 18px;
    font-size: clamp(48px, 5.4vw, 76px);
    line-height: 1;
    font-weight: 800;
}

.yf-landing-hero p {
    max-width: 560px;
    color: rgba(248, 244, 234, 0.76);
    font-size: clamp(16px, 1.25vw, 18px);
    line-height: 1.65;
    font-weight: 400;
}

.yf-landing-actions {
    gap: 12px;
    margin-top: 28px;
}

.yf-landing-button {
    min-height: 46px;
    padding: 0 20px;
    border-radius: 999px;
    font-weight: 700;
    font-size: .95rem;
}

.yf-landing-button:focus-visible {
    outline: 3px solid rgba(157, 223, 196, 0.34);
    outline-offset: 3px;
}

.yf-landing-button--primary {
    color: var(--yf-text);
    background: var(--yf-gradient);
    box-shadow: 0 16px 34px rgba(157, 223, 196, 0.2);
}

.yf-landing-button--primary:hover {
    color: var(--yf-text);
    box-shadow: 0 20px 44px rgba(157, 223, 196, 0.28);
}

.yf-landing-button--ghost {
    color: var(--yf-text-dark);
    border-color: rgba(248, 244, 234, 0.22);
    background: rgba(255, 255, 255, 0.035);
}

.yf-landing-button--ghost:hover {
    color: var(--yf-text-dark);
    background: rgba(157, 223, 196, 0.08);
    border-color: rgba(157, 223, 196, 0.34);
}

.yf-landing-button--line {
    color: var(--yf-text-dark);
    border-color: rgba(248, 244, 234, 0.2);
    background: rgba(255, 255, 255, 0.045);
}

.yf-landing-button--line:hover {
    color: var(--yf-text-dark);
    background: rgba(157, 223, 196, 0.08);
    border-color: rgba(157, 223, 196, 0.38);
}

.yf-landing-trust {
    gap: 8px;
    margin-top: 20px;
}

.yf-landing-trust span {
    color: rgba(248, 244, 234, 0.76);
    font-size: .86rem;
    padding: 7px 11px;
    border-color: var(--yf-border-dark);
    background: rgba(255, 255, 255, 0.04);
}

.yf-landing-product {
    min-height: 470px;
}

.yf-landing-product__screen {
    border-color: rgba(255, 255, 255, 0.16);
    border-radius: var(--yf-radius-md);
    box-shadow: 0 28px 70px rgba(0, 0, 0, 0.3);
}

.yf-landing-product__screen img {
    filter: saturate(0.96) contrast(1.05) brightness(1.02);
}

.yf-landing-product__screen--main {
    inset: 14px 0 92px 24px;
    transform: perspective(1200px) rotateY(-6deg) rotateX(2deg);
}

.yf-landing-product__screen--side {
    right: 30px;
    bottom: 18px;
    width: min(400px, 58%);
    height: 184px;
    transform: perspective(900px) rotateY(-8deg) rotateX(3deg);
}

.yf-landing-product__note {
    bottom: 52px;
    max-width: 250px;
    padding: 14px 16px;
    border-color: var(--yf-border-dark);
    border-radius: 18px;
    color: rgba(248, 244, 234, 0.8);
    background: rgba(19, 43, 38, 0.82);
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.22);
}

.yf-landing-section {
    padding: clamp(88px, 8vw, 112px) 0;
}

.yf-landing-section__head {
    max-width: 720px;
    margin-bottom: 34px;
}

.yf-landing-section__head h2,
.yf-landing-workflow__content h2,
.yf-landing-final h2 {
    margin-top: 12px;
    font-size: clamp(38px, 4.1vw, 58px);
    line-height: 1.08;
    font-weight: 750;
}

.yf-landing-benefits {
    gap: 16px;
    overflow: visible;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.yf-landing-benefit {
    min-height: 248px;
    padding: 32px;
    border: 1px solid var(--yf-border-light);
    border-radius: var(--yf-radius-md);
    background: rgba(255, 255, 255, 0.62);
    box-shadow: none;
}

.yf-landing-benefit:hover {
    transform: translateY(-4px);
    border-color: rgba(157, 223, 196, 0.45);
    background: rgba(255, 255, 255, 0.82);
    box-shadow: var(--yf-shadow-card);
}

.yf-landing-benefit i {
    width: 44px;
    height: 44px;
    margin-bottom: 28px;
    color: var(--yf-text);
    background: rgba(157, 223, 196, 0.34);
    font-size: 1.15rem;
}

.yf-landing-benefit h3,
.yf-landing-step h3,
.yf-landing-plan h3 {
    font-size: clamp(22px, 2vw, 26px);
    font-weight: 750;
}

.yf-landing-benefit p,
.yf-landing-step p,
.yf-landing-plan p,
.yf-landing-final p {
    color: var(--yf-muted);
    line-height: 1.62;
}

.yf-landing-workflow {
    gap: clamp(36px, 5vw, 64px);
}

.yf-landing-workflow__media::before,
.yf-landing-workflow__media img {
    display: none;
}

.yf-landing-flow-card {
    position: relative;
    display: grid;
    grid-template-columns: minmax(180px, 0.82fr) 48px minmax(180px, 1fr);
    align-items: center;
    gap: 16px;
    min-height: 390px;
    padding: 26px;
    border: 1px solid var(--yf-border-light);
    border-radius: var(--yf-radius-lg);
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.7), rgba(244, 241, 234, 0.82)),
        radial-gradient(circle at 20% 20%, rgba(157, 223, 196, 0.18), transparent 18rem);
    box-shadow: var(--yf-shadow-card);
}

.yf-landing-phone,
.yf-landing-mini-dashboard {
    border: 1px solid rgba(16, 32, 29, 0.12);
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.72);
    box-shadow: 0 14px 34px rgba(16, 32, 29, 0.1);
}

.yf-landing-phone {
    padding: 16px;
}

.yf-landing-phone__top {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 18px;
    color: var(--yf-text);
    font-weight: 700;
}

.yf-landing-phone__top i {
    color: #54a9eb;
    font-size: 1.2rem;
}

.yf-landing-message {
    width: fit-content;
    max-width: 92%;
    margin-top: 10px;
    padding: 10px 12px;
    border-radius: 16px;
    color: var(--yf-text);
    background: rgba(16, 32, 29, 0.08);
    font-size: .92rem;
    line-height: 1.35;
}

.yf-landing-message--user {
    margin-left: auto;
    background: rgba(157, 223, 196, 0.35);
}

.yf-landing-flow-arrow {
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border-radius: 999px;
    color: var(--yf-text);
    background: var(--yf-gradient);
    box-shadow: 0 12px 28px rgba(157, 223, 196, 0.22);
}

.yf-landing-mini-dashboard {
    padding: 18px;
}

.yf-landing-mini-dashboard__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
    color: var(--yf-text);
}

.yf-landing-mini-dashboard__top span {
    color: var(--yf-muted);
    font-size: .86rem;
}

.yf-landing-mini-bars {
    display: grid;
    gap: 12px;
}

.yf-landing-mini-bars span {
    display: block;
    height: 12px;
    border-radius: 999px;
    background:
        linear-gradient(90deg, var(--yf-mint) var(--bar), rgba(16, 32, 29, 0.08) var(--bar));
}

.yf-landing-mini-total {
    margin-top: 18px;
    padding-top: 14px;
    border-top: 1px solid var(--yf-border-light);
    color: var(--yf-text);
    font-weight: 750;
}

.yf-landing-steps {
    gap: 0;
    margin-top: 26px;
}

.yf-landing-step {
    grid-template-columns: 52px 1fr;
    gap: 16px;
    padding: 18px 0;
    border-top-color: rgba(16, 32, 29, 0.1);
}

.yf-landing-step strong {
    color: var(--yf-gold);
    font-size: .86rem;
}

.yf-landing-section--pricing {
    padding: clamp(88px, 8vw, 112px) max(20px, calc((100vw - 1180px) / 2));
    color: var(--yf-text-dark);
    background:
        linear-gradient(180deg, rgba(11, 28, 25, 0.98), rgba(14, 33, 30, 1)),
        radial-gradient(circle at 82% 18%, rgba(157, 223, 196, 0.12), transparent 28rem);
}

.yf-landing-pricing {
    gap: 18px;
    align-items: stretch;
}

.yf-landing-plan {
    min-height: 480px;
    padding: 32px;
    border-color: var(--yf-border-dark);
    border-radius: var(--yf-radius-md);
    background: rgba(255, 255, 255, 0.045);
    box-shadow: none;
}

.yf-landing-plan:hover {
    transform: translateY(-4px);
    border-color: rgba(157, 223, 196, 0.45);
    background: rgba(255, 255, 255, 0.065);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.22);
}

.yf-landing-plan--featured {
    color: var(--yf-text-dark);
    border-color: rgba(157, 223, 196, 0.45);
    background:
        linear-gradient(180deg, rgba(157, 223, 196, 0.1), rgba(255, 255, 255, 0.03)),
        rgba(255, 255, 255, 0.055);
    box-shadow: 0 20px 60px rgba(157, 223, 196, 0.08);
}

.yf-landing-plan--featured:hover {
    background:
        linear-gradient(180deg, rgba(157, 223, 196, 0.14), rgba(255, 255, 255, 0.045)),
        rgba(255, 255, 255, 0.065);
}

.yf-landing-plan__badge {
    color: var(--yf-text);
    background: var(--yf-gradient);
}

.yf-landing-plan__price {
    margin: 18px 0 10px;
    font-size: clamp(38px, 3.2vw, 50px);
}

.yf-landing-plan:not(.yf-landing-plan--featured) p,
.yf-landing-plan:not(.yf-landing-plan--featured) li,
.yf-landing-plan--featured p,
.yf-landing-plan--featured li {
    color: rgba(248, 244, 234, 0.74);
}

.yf-landing-plan .yf-landing-button {
    margin-top: auto;
}

.yf-landing-final {
    margin-top: clamp(56px, 6vw, 78px);
    margin-bottom: clamp(44px, 6vw, 68px);
    padding: clamp(30px, 4vw, 44px);
    border-radius: var(--yf-radius-lg);
    background:
        linear-gradient(135deg, rgba(11, 28, 25, 0.98), rgba(19, 43, 38, 0.96)),
        radial-gradient(circle at 78% 18%, rgba(157, 223, 196, 0.18), transparent 18rem);
}

.yf-footer {
    flex-shrink: 0;
    color: rgba(248, 244, 234, 0.72);
    background: #081512;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    font-size: .92rem;
}

.yf-footer__inner {
    width: var(--yf-container);
    margin: 0 auto;
    padding: 32px 0;
    display: flex;
    justify-content: space-between;
    gap: 32px;
}

.yf-footer__name {
    margin-bottom: 8px;
    color: var(--yf-text-dark);
    font-size: 1rem;
    font-weight: 800;
}

.yf-footer__meta {
    display: grid;
    gap: 2px;
    margin-top: 12px;
    color: rgba(248, 244, 234, 0.56);
}

.yf-footer__meta strong {
    color: rgba(248, 244, 234, 0.82);
}

.yf-footer__links {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px 18px;
    max-width: 540px;
}

.yf-footer__links a {
    color: rgba(248, 244, 234, 0.72);
    text-decoration: none;
    transition: color .2s ease;
}

.yf-footer__links a:hover,
.yf-footer__links a:focus-visible {
    color: var(--yf-mint);
    outline: none;
}

@media (max-width: 1199.98px) {
    :root {
        --yf-container: min(1120px, calc(100% - 32px));
    }

    .yf-landing-hero h1 {
        font-size: clamp(44px, 5vw, 66px);
    }

    .yf-landing-product {
        min-height: 420px;
    }
}

@media (max-width: 991.98px) {
    .yf-landing-hero,
    .yf-landing-section,
    .yf-landing-section--pricing {
        padding-top: 76px;
        padding-bottom: 82px;
    }

    .yf-landing-hero__inner {
        grid-template-columns: 1fr;
    }

    .yf-landing-product {
        min-height: 390px;
    }

    .yf-landing-flow-card {
        grid-template-columns: 1fr;
        min-height: auto;
    }

    .yf-landing-flow-arrow {
        transform: rotate(90deg);
        justify-self: center;
    }

    .yf-landing-pricing {
        grid-template-columns: 1fr;
    }

    .yf-landing-plan {
        min-height: auto;
    }

    .yf-footer__inner {
        flex-direction: column;
    }

    .yf-footer__links {
        justify-content: flex-start;
    }
}

@media (max-width: 575.98px) {
    :root {
        --yf-container: min(100% - 24px, 1180px);
    }

    .yf-landing-nav__inner {
        width: var(--yf-container);
        gap: 12px;
        padding: 12px 0;
    }

    .yf-landing-nav__brand,
    .yf-landing-nav__auth,
    .yf-landing-nav__links {
        flex: 0 0 100%;
    }

    .yf-landing-nav__auth {
        display: flex;
        justify-content: center;
        max-width: 100%;
        overflow: hidden;
    }

    .yf-landing-nav__auth iframe {
        max-width: 100% !important;
    }

    .yf-landing-nav__links {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 2px;
        padding: 4px;
    }

    .yf-landing-nav__links a[href="#pricing"] {
        display: none;
    }

    .yf-landing-nav__links a {
        padding: 8px 2px;
        font-size: .74rem;
        text-align: center;
        white-space: nowrap;
    }

    .yf-landing-hero {
        padding-top: 54px;
        padding-bottom: 62px;
    }

    .yf-landing-hero h1 {
        max-width: 340px !important;
        font-size: clamp(31px, 9vw, 38px);
        line-height: 1.05;
    }

    .yf-landing-hero__copy,
    .yf-landing-hero h1 span,
    .yf-landing-hero p,
    .yf-landing-actions,
    .yf-landing-trust {
        max-width: 340px !important;
    }

    .yf-landing-kicker {
        font-size: .65rem;
    }

    .yf-landing-product {
        min-height: 330px;
    }

    .yf-landing-product__screen--main {
        inset: 0 0 92px 0;
    }

    .yf-landing-product__screen--side {
        width: 72%;
        height: 118px;
    }

    .yf-landing-section,
    .yf-landing-section--pricing {
        padding-top: 62px;
        padding-bottom: 66px;
    }

    .yf-landing-section__head {
        margin-bottom: 24px;
    }

    .yf-landing-section__head h2,
    .yf-landing-workflow__content h2,
    .yf-landing-final h2 {
        font-size: clamp(30px, 8vw, 38px);
        line-height: 1.1;
    }

    .yf-landing-benefit,
    .yf-landing-plan,
    .yf-landing-flow-card {
        padding: 24px;
        border-radius: 22px;
    }

    .yf-landing-phone,
    .yf-landing-mini-dashboard {
        border-radius: 18px;
    }

    .yf-landing-final {
        margin-top: 42px;
        padding: 26px;
        border-radius: 26px;
    }
}

/* Landing visual fixes: pricing grid, workflow mockup, Telegram widget crop */
.yf-landing-nav__auth {
    position: relative !important;
    width: 248px !important;
    height: 44px !important;
    min-width: 248px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    border-radius: 999px !important;
    background: transparent !important;
    box-shadow: none !important;
    line-height: 0 !important;
}

.yf-landing-nav__auth-face {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border-radius: 999px;
    color: #ffffff;
    background: #54a9eb;
    box-shadow: 0 12px 28px rgba(84, 169, 235, 0.28);
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    pointer-events: none;
}

.yf-landing-nav__auth-face i {
    font-size: 20px;
    line-height: 1;
}

.yf-landing-nav__auth iframe {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
    width: 248px !important;
    max-width: 248px !important;
    height: 44px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    clip-path: inset(0 round 999px);
    opacity: .01 !important;
}

.yf-landing-section--pricing {
    overflow: hidden;
}

.yf-landing-section--pricing .yf-landing-section__head {
    width: min(760px, 100%);
    margin-right: auto;
    margin-left: auto;
    text-align: center;
}

.yf-landing-pricing {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 20px !important;
    align-items: stretch !important;
}

.yf-landing-plan {
    position: relative !important;
    inset: auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    min-height: 470px !important;
    padding: 30px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    gap: 22px !important;
    color: var(--yf-text-dark, #f8f4ea) !important;
    border: 1px solid rgba(255, 255, 255, 0.13) !important;
    border-radius: 28px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.035)),
        rgba(19, 43, 38, 0.86) !important;
    box-shadow: none !important;
    transform: none;
    box-sizing: border-box;
}

.yf-landing-plan:hover {
    transform: translateY(-4px);
    border-color: rgba(157, 223, 196, 0.45) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.045)),
        rgba(19, 43, 38, 0.9) !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.22) !important;
}

.yf-landing-plan--featured,
.yf-landing-plan--featured:hover {
    border-color: rgba(157, 223, 196, 0.56) !important;
    background:
        linear-gradient(180deg, rgba(157, 223, 196, 0.12), rgba(255, 255, 255, 0.045)),
        rgba(19, 43, 38, 0.92) !important;
    box-shadow: 0 24px 70px rgba(157, 223, 196, 0.12) !important;
}

.yf-landing-plan__badge {
    position: absolute !important;
    top: 18px !important;
    right: 18px !important;
    z-index: 2;
    max-width: calc(100% - 36px);
    color: #10201d !important;
    background: linear-gradient(135deg, #f0d978 0%, #9ddfc4 100%) !important;
}

.yf-landing-plan h3 {
    max-width: calc(100% - 92px);
    margin: 0;
    color: var(--yf-text-dark, #f8f4ea) !important;
    font-size: clamp(24px, 2vw, 30px) !important;
    line-height: 1.1 !important;
}

.yf-landing-plan:not(.yf-landing-plan--featured) h3 {
    max-width: 100% !important;
}

.yf-landing-plan__eyebrow {
    display: inline-flex;
    max-width: calc(100% - 92px);
    margin-bottom: 12px;
    color: var(--yf-gold, #d6b45d) !important;
}

.yf-landing-plan:not(.yf-landing-plan--featured) .yf-landing-plan__eyebrow {
    max-width: 100% !important;
}

.yf-landing-plan__price {
    margin: 18px 0 12px !important;
    color: var(--yf-text-dark, #f8f4ea) !important;
    font-size: clamp(36px, 3vw, 48px) !important;
    line-height: .98 !important;
    letter-spacing: 0 !important;
    white-space: nowrap;
}

.yf-landing-plan__price small {
    margin-left: 5px;
    font-size: .34em !important;
    color: rgba(248, 244, 234, 0.62) !important;
}

.yf-landing-plan p,
.yf-landing-plan li {
    color: rgba(248, 244, 234, 0.76) !important;
    font-size: .96rem;
    line-height: 1.55;
}

.yf-landing-plan ul {
    margin: 0 !important;
    padding: 0 !important;
    display: grid !important;
    gap: 12px !important;
    list-style: none !important;
}

.yf-landing-plan li {
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    padding-left: 0 !important;
    display: flex !important;
    gap: 14px !important;
    align-items: start !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
}

.yf-landing-plan li::before {
    content: "";
    position: static !important;
    flex: 0 0 9px !important;
    width: 9px;
    height: 9px;
    margin-top: .45em;
    border-radius: 999px;
    background: var(--yf-mint, #9ddfc4);
}

.yf-landing-plan .yf-landing-button {
    width: 100% !important;
    margin-top: auto !important;
}

.yf-landing-flow-card {
    min-height: 0 !important;
    padding: clamp(24px, 3vw, 32px) !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    align-items: center !important;
    justify-items: center !important;
    border-radius: 30px !important;
    background:
        radial-gradient(circle at 55% 48%, rgba(157, 223, 196, 0.18), transparent 16rem),
        linear-gradient(145deg, rgba(255, 255, 255, 0.78), rgba(247, 244, 237, 0.94)) !important;
    box-shadow: 0 22px 60px rgba(16, 32, 29, 0.12) !important;
}

.yf-landing-phone,
.yf-landing-mini-dashboard {
    width: 100% !important;
    max-width: 280px !important;
    border: 1px solid rgba(16, 32, 29, 0.1) !important;
    border-radius: 22px !important;
    background: rgba(255, 255, 255, 0.86) !important;
    box-shadow: 0 14px 34px rgba(16, 32, 29, 0.08) !important;
}

.yf-landing-phone {
    justify-self: center;
    padding: 18px !important;
}

.yf-landing-phone__top {
    gap: 10px !important;
    margin-bottom: 18px !important;
    color: var(--yf-text, #10201d) !important;
    font-size: .96rem !important;
}

.yf-landing-message {
    width: fit-content !important;
    max-width: 86% !important;
    margin-top: 10px !important;
    padding: 10px 12px !important;
    border-radius: 14px !important;
    color: var(--yf-text, #10201d) !important;
    font-size: .92rem !important;
    line-height: 1.35 !important;
}

.yf-landing-message--user {
    margin-left: auto !important;
    background: rgba(157, 223, 196, 0.34) !important;
}

.yf-landing-flow-arrow {
    width: 46px !important;
    height: 46px !important;
    justify-self: center !important;
    transform: rotate(90deg) !important;
    color: var(--yf-text, #10201d) !important;
    background: linear-gradient(135deg, #f0d978 0%, #9ddfc4 100%) !important;
    box-shadow: 0 14px 30px rgba(157, 223, 196, 0.22) !important;
}

.yf-landing-mini-dashboard {
    justify-self: center;
    padding: 22px !important;
}

.yf-landing-mini-dashboard__top {
    gap: 16px !important;
    color: var(--yf-text, #10201d) !important;
}

.yf-landing-mini-title,
.yf-landing-mini-total {
    color: var(--yf-text, #10201d) !important;
}

@media (max-width: 991.98px) {
    .yf-landing-pricing {
        grid-template-columns: 1fr !important;
    }

    .yf-landing-plan {
        min-height: auto !important;
    }

    .yf-landing-flow-card {
        grid-template-columns: 1fr !important;
    }

    .yf-landing-phone,
    .yf-landing-mini-dashboard {
        max-width: none !important;
        justify-self: stretch !important;
    }

    .yf-landing-flow-arrow {
        transform: rotate(90deg) !important;
    }
}

@media (max-width: 575.98px) {
    .yf-landing-nav__auth {
        flex: 0 1 min(100%, 340px) !important;
        width: min(100%, 340px) !important;
        min-width: 0 !important;
        height: 42px !important;
        margin: 0 auto !important;
    }

    .yf-landing-nav__auth iframe {
        width: 100% !important;
        max-width: 100% !important;
        height: 42px !important;
    }

    .yf-landing-nav__links {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        overflow: hidden !important;
    }

    .yf-landing-nav__links a {
        min-width: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
        font-size: .68rem !important;
        letter-spacing: 0 !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .yf-landing-nav__links a[href="#pricing"] {
        display: none !important;
    }

    .yf-landing-plan {
        padding: 24px !important;
        border-radius: 22px !important;
    }

    .yf-landing-plan h3,
    .yf-landing-plan__eyebrow {
        max-width: 100%;
        padding-right: 96px;
    }
}

/* Cross-browser pricing fallback for YandexBrowser and older Chromium builds */
.yf-landing-section--pricing {
    padding: 96px 24px !important;
}

.yf-landing-pricing {
    width: 100% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: stretch !important;
    gap: 20px !important;
}

.yf-landing-plan {
    flex: 1 1 320px !important;
    width: auto !important;
    min-width: 300px !important;
    max-width: 360px !important;
}

@media (min-width: 1100px) {
    .yf-landing-plan {
        flex-basis: 0 !important;
    }
}

@media (max-width: 767.98px) {
    .yf-landing-section--pricing {
        padding: 64px 16px !important;
    }

    .yf-landing-pricing {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 18px !important;
    }

    .yf-landing-plan {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 420px !important;
        flex: 0 1 auto !important;
    }
}

/* Landing spacing polish */
#how-it-works.yf-landing-section {
    padding-top: 0 !important;
}

.yf-landing-section--pricing {
    width: min(1180px, calc(100% - 64px)) !important;
    margin: 0 auto !important;
    border-radius: 34px !important;
    overflow: hidden !important;
}

@media (max-width: 767.98px) {
    .yf-landing-section--pricing {
        width: calc(100% - 24px) !important;
        border-radius: 26px !important;
    }
}

/* Financial analytics dashboard */
#financial-overview-card .card-body {
    position: relative;
}

#financial-overview-card .dashboard-info-button {
    position: absolute;
    top: 18px;
    right: 20px;
    z-index: 2;
}

#financial-overview-card .card-title {
    padding-right: 36px;
}

.finance-analytics-kpi-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0;
    padding-top: 14px;
}

.finance-analytics-kpi-column {
    display: grid;
    gap: 16px;
    align-content: start;
    padding: 0 26px;
    border-left: 1px solid rgba(15, 23, 42, 0.08);
}

.finance-analytics-kpi-column:first-child {
    padding-left: 0;
    border-left: 0;
}

.finance-analytics-kpi-column:last-child {
    padding-right: 0;
}

.finance-analytics-kpi {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
    min-height: 58px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.finance-analytics-kpi__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    font-size: 1.25rem;
    background: #f1f5f9;
    color: #64748b;
}

.finance-analytics-kpi__content {
    min-width: 0;
}

.finance-analytics-kpi__label {
    display: block;
    margin-bottom: 5px;
    color: #5d6b86;
    font-size: .88rem;
    line-height: 1.25;
}

.finance-analytics-kpi__value {
    display: block;
    color: #1f2937;
    font-size: 1.12rem;
    line-height: 1.15;
    white-space: normal;
}

.finance-analytics-kpi__value strong {
    font-weight: 700;
}

.finance-analytics-kpi__unit {
    color: #667085;
    font-size: .9rem;
    font-weight: 600;
}

.finance-analytics-kpi--success .finance-analytics-kpi__icon {
    background: rgba(25, 135, 84, 0.12);
    color: #198754;
}

.finance-analytics-kpi--danger .finance-analytics-kpi__icon {
    background: rgba(220, 53, 69, 0.12);
    color: #dc3545;
}

.finance-analytics-kpi--warning .finance-analytics-kpi__icon {
    background: rgba(255, 193, 7, 0.14);
    color: #d88900;
}

.finance-analytics-kpi--blue .finance-analytics-kpi__icon {
    background: rgba(13, 110, 253, 0.10);
    color: #0d6efd;
}

.finance-analytics-kpi--neutral .finance-analytics-kpi__icon {
    background: rgba(108, 117, 125, 0.10);
    color: #6c757d;
}

.finance-analytics-panel .card-body {
    padding: 20px 22px;
}

.finance-analytics-panel .card-title {
    margin-bottom: 12px;
    color: #1f2937;
    font-size: 1rem;
    font-weight: 700;
}

.finance-analytics-text-list {
    display: grid;
    gap: 8px;
    color: #4b5563;
    font-size: .94rem;
    line-height: 1.45;
}

.finance-analytics-insight-card .card-body {
    min-height: 198px;
}

.finance-analytics-card-title {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px !important;
}

.finance-analytics-title-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    border-radius: 50%;
    font-size: .95rem;
}

.finance-analytics-title-icon--blue {
    color: #3b82f6;
    background: rgba(59, 130, 246, 0.10);
}

.finance-analytics-trend-table {
    overflow: hidden;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 8px;
}

.finance-analytics-trend-row,
.finance-analytics-regular-row {
    display: grid;
    align-items: center;
    gap: 12px;
    color: #4f5d75;
    font-size: .92rem;
    line-height: 1.35;
}

.finance-analytics-trend-row {
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 8px 12px;
    border-top: 1px solid rgba(15, 23, 42, 0.08);
    background: rgba(255, 255, 255, 0.68);
}

.finance-analytics-trend-row:first-child {
    border-top: 0;
}

.finance-analytics-insight-note {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    margin-top: 12px;
    padding: 11px 12px;
    border-radius: 8px;
    color: #536179;
    background: rgba(59, 130, 246, 0.08);
    font-size: .86rem;
    line-height: 1.4;
}

.finance-analytics-insight-note i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    color: #3b82f6;
    background: rgba(59, 130, 246, 0.10);
}

.finance-analytics-anomaly-state {
    min-height: 118px;
}

.finance-analytics-empty-state {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    min-height: 118px;
    color: #536179;
}

.finance-analytics-empty-state__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 92px;
    height: 92px;
    flex: 0 0 92px;
    border-radius: 50%;
    color: #18a878;
    background: rgba(24, 168, 120, 0.13);
    font-size: 2.85rem;
}

.finance-analytics-empty-state__icon i {
    display: inline-flex;
    line-height: 1;
}

.finance-analytics-empty-state strong {
    display: block;
    margin-bottom: 6px;
    color: #334155;
    font-size: 1rem;
}

.finance-analytics-empty-state div span {
    display: block;
    font-size: .9rem;
}

.finance-analytics-regular-list {
    display: grid;
    gap: 12px;
}

.finance-analytics-regular-row,
.finance-analytics-anomaly-row {
    padding-bottom: 2px;
}

.finance-analytics-regular-row {
    grid-template-columns: minmax(0, 1fr) max-content 38px;
    gap: 10px;
}

.finance-analytics-anomaly-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) max-content 44px;
    gap: 10px;
    align-items: start;
    color: #4f5d75;
    font-size: .92rem;
    line-height: 1.35;
}

.finance-analytics-regular-row > span:first-child,
.finance-analytics-anomaly-row > span:first-child {
    min-width: 0;
    overflow-wrap: anywhere;
}

.finance-analytics-regular-row strong,
.finance-analytics-anomaly-row strong {
    color: #3f4b63;
    font-weight: 700;
    white-space: nowrap;
}

.finance-analytics-regular-row > span:last-child,
.finance-analytics-anomaly-row > span:last-child {
    color: #536179;
    text-align: right;
    font-weight: 700;
    white-space: nowrap;
}

.finance-analytics-muted-empty {
    color: #6c757d;
}

@media (max-width: 1199.98px) {
    .finance-analytics-kpi-grid {
        grid-template-columns: repeat(3, minmax(160px, 1fr));
        row-gap: 22px;
    }

    .finance-analytics-kpi-column:nth-child(4) {
        padding-left: 0;
        border-left: 0;
    }
}

@media (max-width: 767.98px) {
    .finance-analytics-kpi-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .finance-analytics-kpi-column,
    .finance-analytics-kpi-column:first-child,
    .finance-analytics-kpi-column:last-child {
        gap: 14px;
        padding: 0;
        border-left: 0;
    }

    .finance-analytics-kpi {
        grid-template-columns: 36px minmax(0, 1fr);
        min-height: 50px;
    }

    .finance-analytics-kpi__icon {
        width: 36px;
        height: 36px;
        font-size: 1.05rem;
    }

    .finance-analytics-regular-row,
    .finance-analytics-anomaly-row {
        grid-template-columns: minmax(0, 1fr);
        gap: 2px;
    }

    .finance-analytics-regular-row > span:last-child,
    .finance-analytics-anomaly-row > span:last-child {
        text-align: left;
    }

    .finance-analytics-empty-state {
        justify-content: flex-start;
    }
}

/* Keep the landing isolated from legacy dashboard typography rules loaded later. */
.yf26-command strong,
.yf26-event strong,
.yf26-flow__status strong,
.yf26-result-note strong,
.yf26-plan h3,
.yf26-plan__head strong {
    color: #eef8f3 !important;
}

.yf26-result-card strong,
.yf26-overview strong,
.yf26-terminal__head strong,
.yf26-insight strong,
.yf26-bars b,
.yf26-orbit__node b {
    color: var(--yf26-ink) !important;
}
