.dnai-shell {
    display: grid;
    grid-template-columns: var(--dnai-sidebar-current, var(--dnai-sidebar-expanded)) minmax(0, 1fr);
    min-height: calc(100vh - var(--dnai-header-height));
    background: var(--dnai-bg);
    transition: grid-template-columns var(--dnai-transition);
}

.dnai-app[data-workspace="compact"] {
    --dnai-sidebar-current: var(--dnai-sidebar-collapsed);
}

.dnai-sidebar {
    position: relative;
    z-index: 2;
    display: flex;
    min-width: 0;
    min-height: 100%;
    flex-direction: column;
    padding: 20px 16px 55px;
    overflow: visible;
    background: #071321;
    border-right: 1px solid var(--dnai-border);
}

.dnai-sidebar__identity {
    display: flex;
    height: 54px;
    align-items: flex-start;
    gap: 12px;
    padding-left: 4px;
    white-space: nowrap;
}

.dnai-sidebar__mark {
    display: grid;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    place-items: center;
    border-radius: var(--dnai-radius-md);
    background: var(--dnai-primary);
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}

.dnai-sidebar__identity-copy {
    display: block;
    min-width: 0;
    padding-top: 1px;
    overflow: hidden;
    transition: opacity var(--dnai-transition), width var(--dnai-transition);
}

.dnai-sidebar__identity-copy strong,
.dnai-sidebar__identity-copy small {
    display: block;
    white-space: nowrap;
}

.dnai-sidebar__identity-copy strong {
    font-size: 14px;
    line-height: 18px;
    letter-spacing: .01em;
}

.dnai-sidebar__identity-copy small {
    margin-top: 1px;
    color: var(--dnai-text-muted);
    font-size: 9px;
    line-height: 13px;
}

.dnai-sidebar__toggle {
    position: absolute;
    top: 12px;
    right: -15px;
    display: grid;
    width: 30px;
    height: 30px;
    min-height: 30px;
    max-height: 30px;
    margin: 0;
    padding: 0;
    place-items: center;
    border: 1px solid var(--dnai-border-strong);
    border-radius: 50%;
    background: #0b2134;
    color: var(--dnai-text-secondary);
    cursor: pointer;
    transition: transform var(--dnai-transition), background-color var(--dnai-transition);
}

.dnai-sidebar__toggle:hover {
    background: #10304b;
}

.dnai-sidebar__toggle:active {
    background: #153d5e;
}

.dnai-sidebar__toggle svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.dnai-sidebar__nav {
    display: grid;
    gap: 10px;
}

.dnai-sidebar__nav a {
    position: relative;
    display: flex;
    height: 38px;
    min-width: 0;
    align-items: center;
    gap: 12px;
    padding: 0 12px;
    border-radius: var(--dnai-radius-sm);
    color: var(--dnai-text-muted);
    font-size: 12px;
    font-weight: 500;
    white-space: nowrap;
    transition: color var(--dnai-transition), background-color var(--dnai-transition);
}

.dnai-sidebar__nav a:hover {
    color: var(--dnai-text);
    background: rgba(23, 105, 255, .08);
}

.dnai-sidebar__nav a:active {
    background: rgba(23, 105, 255, .18);
}

.dnai-sidebar__nav a.is-active:hover {
    color: #fff;
    background: var(--dnai-primary-hover);
}

.dnai-sidebar__nav a.is-active {
    color: #fff;
    background: var(--dnai-primary);
}

.dnai-sidebar__nav-icon {
    display: grid;
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    place-items: center;
}

.dnai-sidebar__nav-icon svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.dnai-sidebar__nav-icon svg rect {
    fill: none;
}

.dnai-sidebar__nav-label {
    overflow: hidden;
    text-overflow: ellipsis;
}

.dnai-plan-card {
    display: flex;
    width: 184px;
    min-height: 180px;
    margin-top: auto;
    flex-direction: column;
    padding: 16px;
    overflow: hidden;
    border: 1px solid var(--dnai-border);
    border-radius: var(--dnai-radius-lg);
    background: linear-gradient(150deg, #0d2740 0%, var(--dnai-plan) 72%);
    box-shadow: var(--dnai-shadow-surface);
    transition: opacity var(--dnai-transition), width var(--dnai-transition);
}

.dnai-plan-card__eyebrow {
    color: var(--dnai-text-muted);
    font-size: 9px;
    line-height: 12px;
    text-transform: uppercase;
}

.dnai-plan-card__name {
    margin-top: 5px;
    color: #60a5fa;
    font-size: 16px;
    line-height: 20px;
}

.dnai-plan-card__details {
    display: grid;
    gap: 2px;
    margin-top: 7px;
}

.dnai-plan-card__details small {
    overflow: hidden;
    color: var(--dnai-text-secondary);
    font-size: 9px;
    line-height: 12px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dnai-plan-card progress {
    width: 100%;
    height: 4px;
    margin: 10px 0 12px;
    overflow: hidden;
    appearance: none;
    border: 0;
    border-radius: var(--dnai-radius-pill);
    background: #163047;
}

.dnai-plan-card progress::-webkit-progress-bar {
    background: #163047;
}

.dnai-plan-card progress::-webkit-progress-value,
.dnai-plan-card progress::-moz-progress-bar {
    background: var(--dnai-primary);
}

.dnai-plan-card__action,
.dnai-plan-card__status {
    display: flex;
    min-height: 32px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border-radius: var(--dnai-radius-sm);
    font-size: 9px;
    font-weight: 700;
}

.dnai-plan-card__action {
    background: var(--dnai-primary);
    color: #fff !important;
    opacity: 1;
    -webkit-text-fill-color: #fff;
    transition: background-color var(--dnai-transition-fast), transform var(--dnai-transition-fast);
}

.dnai-plan-card__action:hover,
.dnai-plan-card__action:focus-visible { background: var(--dnai-primary-hover); color: #fff !important; opacity: 1; -webkit-text-fill-color: #fff; }
.dnai-plan-card__action:active { transform: translateY(1px); }

.dnai-plan-card__status {
    background: rgba(34, 197, 94, .1);
    color: #86efac;
}

.dnai-plan-card__status i,
.dnai-market-state strong i {
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--dnai-success);
}

.dnai-main {
    min-width: 0;
    background: var(--dnai-bg);
}

.dnai-trading-toolbar {
    display: flex;
    width: 100%;
    height: var(--dnai-toolbar-height);
    min-width: 0;
    align-items: center;
    gap: clamp(10px, .85vw, 16px);
    padding: 0 20px;
    border-bottom: 1px solid var(--dnai-border);
    background: #081625;
}

.dnai-pair {
    display: flex;
    min-width: 150px;
    max-width: 249px;
    flex: 1 1 249px;
    align-items: center;
    gap: 10px;
}

.dnai-pair__icon {
    display: grid;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    place-items: center;
    border: 1px solid #74561a;
    border-radius: 50%;
    background: #2a2516;
    color: #fbbf24;
    font-size: 11px;
    font-weight: 800;
}

.dnai-pair > span:last-child,
.dnai-market-state {
    min-width: 0;
}

.dnai-pair strong,
.dnai-pair small,
.dnai-market-state span,
.dnai-market-state strong {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dnai-pair strong {
    font-size: 12px;
    line-height: 15px;
}

.dnai-pair small,
.dnai-market-state span {
    color: var(--dnai-text-muted);
    font-size: 9px;
    line-height: 12px;
}

.dnai-timeframes {
    display: grid;
    min-width: 280px;
    max-width: 320px;
    height: 36px;
    flex: 1 1 320px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    padding: 3px;
    border: 1px solid var(--dnai-border);
    border-radius: var(--dnai-radius-md);
    background: #06111f;
}

.dnai-timeframes button {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 5px;
    background: transparent;
    color: var(--dnai-text-muted);
    font-family: inherit;
    font-size: 10px;
    font-weight: 600;
    cursor: pointer;
    transition: color var(--dnai-transition-fast), background-color var(--dnai-transition-fast), transform var(--dnai-transition-fast);
}

.dnai-timeframes button:hover:not([aria-pressed="true"]) {
    background: rgba(23, 105, 255, .11);
    color: var(--dnai-text);
}

.dnai-timeframes button:active { transform: translateY(1px); }

.dnai-timeframes button[aria-pressed="true"] {
    background: var(--dnai-primary);
    color: #fff;
}

.dnai-market-state {
    display: grid;
    min-width: 170px;
    max-width: 280px;
    flex: 1 1 280px;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    margin-left: auto;
}

.dnai-market-state strong {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #86efac;
    font-size: 10px;
}

.dnai-tier-badge {
    display: flex;
    width: clamp(120px, 7.8vw, 150px);
    height: 36px;
    flex: 0 0 clamp(120px, 7.8vw, 150px);
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid #73561a;
    border-radius: var(--dnai-radius-md);
    background: #251f12;
    color: #fbbf24;
    font-size: 10px;
}

.dnai-tier-badge span {
    font-size: 15px;
}

.dnai-tier-badge > span:last-child {
    display: grid;
    gap: 1px;
}

.dnai-tier-badge strong,
.dnai-tier-badge small {
    display: block;
    line-height: 1.1;
}

.dnai-tier-badge small {
    color: var(--dnai-text-muted);
    font-size: 8px;
    font-weight: 400;
}

.dnai-workspace {
    display: grid;
    min-width: 0;
    gap: var(--dnai-workspace-gap);
    padding: var(--dnai-content-padding);
}

.dnai-workspace__hero,
.dnai-workspace__intelligence,
.dnai-workspace__history {
    display: grid;
    min-width: 0;
    gap: var(--dnai-workspace-column-gap);
    grid-template-columns: minmax(0, 780fr) minmax(0, 874fr);
}

.dnai-workspace__hero {
    height: 510px;
}

.dnai-workspace__hero--chart-only { grid-template-columns: minmax(0, 1fr); }

.dnai-workspace__intelligence {
    height: 220px;
    padding-top: 2px;
    align-items: start;
}

.dnai-workspace__intelligence-pair {
    display: grid;
    min-width: 0;
    gap: var(--dnai-workspace-column-gap);
    grid-template-columns: minmax(0, 400fr) minmax(0, 366fr);
    align-items: start;
}

.dnai-workspace__intelligence-pair > .dnai-premium-locked-card { grid-column: 1 / -1; }

.dnai-workspace__intelligence-pair > [data-workspace-slot="ai-price-map"] {
    margin-top: 2px;
}

.dnai-workspace__intelligence > [data-workspace-slot="scenarios"] {
    height: 218px;
}

.dnai-workspace__history {
    height: 234px;
}

.dnai-workspace__cta {
    min-width: 0;
    min-height: 112px;
}

.dnai-bot-cta {
    display: grid;
    width: 100%;
    min-width: 0;
    min-height: 112px;
    grid-template-columns: 140px minmax(0, 720px) minmax(20px, 1fr) 420px;
    padding: 0 127px 0 23px;
    overflow: hidden;
    border: 1px solid #174d8f;
    border-radius: 12px;
    background: #082a62;
    box-shadow: var(--dnai-shadow-surface);
}

.dnai-bot-cta__visual {
    position: relative;
    min-width: 0;
    height: 110px;
}

.dnai-bot-cta__crown {
    position: absolute;
    top: 28px;
    left: 0;
    width: 42px;
    height: 28px;
    fill: var(--dnai-gold);
    stroke: var(--dnai-gold);
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.dnai-bot-cta__robot {
    position: absolute;
    top: 17px;
    left: 52px;
    display: grid;
    width: 68px;
    height: 68px;
    place-items: center;
    border-radius: 12px;
    background: #d1e5ff;
    color: var(--dnai-primary);
}

.dnai-bot-cta__robot svg { width: 58px; height: 58px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2; }
.dnai-bot-cta__robot svg rect:first-of-type { fill: rgba(23, 105, 255, .08); }

.dnai-bot-cta__content {
    min-width: 0;
    align-self: start;
    padding-top: 18px;
}

.dnai-bot-cta__content h2 {
    overflow: hidden;
    color: #ebf5ff;
    font-size: 17px;
    line-height: 22px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dnai-bot-cta__content > p {
    margin-top: 6px;
    overflow: hidden;
    color: #c7d6eb;
    font-size: 10px;
    line-height: 16px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dnai-bot-cta__content ul {
    display: flex;
    min-width: 0;
    margin: 8px 0 0;
    padding: 0;
    align-items: center;
    gap: 24px;
    list-style: none;
}

.dnai-bot-cta__content li {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 5px;
    color: #ebf5ff;
    font-size: 9px;
    line-height: 16px;
    font-weight: 500;
    white-space: nowrap;
}

.dnai-bot-cta__content li svg { width: 12px; height: 12px; flex: 0 0 12px; fill: none; stroke: var(--dnai-success-bright); stroke-linecap: round; stroke-linejoin: round; stroke-width: 2; }

.dnai-bot-cta__actions {
    display: grid;
    min-width: 0;
    grid-column: 4;
    grid-template-columns: 180px 220px;
    align-self: center;
    gap: 20px;
}

.dnai-bot-cta__button {
    display: flex;
    min-width: 0;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    border: 1px solid transparent;
    border-radius: 8px;
    color: #fff;
    font-size: 11px;
    line-height: 16px;
    font-weight: 700;
    text-align: center;
    transition: background-color var(--dnai-transition-fast), border-color var(--dnai-transition-fast), transform var(--dnai-transition-fast), box-shadow var(--dnai-transition-fast);
}

.dnai-bot-cta__button--primary { background: #0248f0; }
.dnai-bot-cta__button--primary:hover { background: #1769ff; box-shadow: 0 4px 12px rgba(2, 72, 240, .28); }
.dnai-bot-cta__button--secondary { border-color: rgba(255, 255, 255, .4); background: #052666; }
.dnai-bot-cta__button--secondary:hover { border-color: rgba(255, 255, 255, .7); background: #0a347f; }
.dnai-bot-cta__button:active { transform: translateY(1px); }
.dnai-indicator-route a.dnai-bot-cta__button:link,
.dnai-indicator-route a.dnai-bot-cta__button:visited,
.dnai-indicator-route a.dnai-bot-cta__button:hover,
.dnai-indicator-route a.dnai-bot-cta__button:focus-visible,
.dnai-indicator-route a.dnai-bot-cta__button:active { color: #fff; opacity: 1; -webkit-text-fill-color: #fff; }
.dnai-indicator-route a.dnai-bot-cta__button:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }

.dnai-scenarios,
.dnai-signal-history,
.dnai-market-news {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--dnai-border);
    border-radius: var(--dnai-radius-md);
    background: var(--dnai-surface);
}

.dnai-scenarios {
    display: grid;
    height: 218px;
    grid-template-rows: 39px 156px;
    padding: 10px 15px;
    background: var(--dnai-surface-elevated);
}

.dnai-decision-header,
.dnai-section-heading {
    min-width: 0;
}

.dnai-decision-header h2,
.dnai-section-heading h2 {
    overflow: hidden;
    color: var(--dnai-text);
    font-size: clamp(7px, .58vw, 11px);
    line-height: 16px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dnai-decision-header p {
    overflow: hidden;
    color: var(--dnai-text-muted);
    font-size: clamp(6px, .47vw, 9px);
    line-height: 14px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dnai-scenarios__grid {
    display: grid;
    min-width: 0;
    height: 156px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.dnai-scenario-card {
    display: grid;
    min-width: 0;
    height: 156px;
    grid-template-rows: 20px 16px 28px 80px;
    padding: 9px 11px 1px;
    overflow: hidden;
    border: 1px solid var(--dnai-border-strong);
    border-radius: 8px;
    background: #091b2b;
}

.dnai-scenario-card--buy {
    border-color: rgba(5, 209, 110, .46);
}

.dnai-scenario-card--sell {
    border-color: rgba(255, 79, 112, .46);
}

.dnai-scenario-card__header {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr) clamp(54px, 4.69vw, 90px);
    align-items: start;
    gap: 6px;
}

.dnai-scenario-card__header h3 {
    overflow: hidden;
    color: var(--dnai-text);
    font-size: clamp(6px, .52vw, 10px);
    line-height: 16px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dnai-tone-badge {
    display: inline-flex;
    min-width: 0;
    height: 24px;
    align-items: center;
    justify-content: center;
    padding-inline: 8px;
    border: 1px solid currentColor;
    border-radius: 6px;
    font-size: clamp(5.5px, .42vw, 8px);
    line-height: 12px;
    font-weight: 700;
    white-space: nowrap;
}

.dnai-tone-badge--buy {
    background: rgba(5, 209, 110, .1);
    color: var(--dnai-success-bright);
}

.dnai-tone-badge--wait {
    background: rgba(20, 92, 245, .11);
    color: var(--dnai-sky);
}

.dnai-tone-badge--sell {
    background: rgba(255, 79, 112, .1);
    color: var(--dnai-danger-bright);
}

.dnai-scenario-card__condition,
.dnai-scenario-card__context p {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dnai-scenario-card__condition {
    color: var(--dnai-text-secondary);
    font-size: clamp(5.5px, .43vw, 8px);
    line-height: 14px;
}

.dnai-scenario-card__context p {
    color: var(--dnai-text-muted);
    font-size: clamp(5px, .38vw, 7px);
    line-height: 13px;
}

.dnai-scenario-card__context strong {
    color: var(--dnai-text-secondary);
    font-weight: 600;
}

.dnai-scenario-card__bottom {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr) 100px;
    gap: 4px;
}

.dnai-trade-levels {
    display: grid;
    min-width: 0;
    grid-template-columns: 1fr 1fr;
    grid-auto-rows: 15px;
    gap: 1px 5px;
    margin: 0;
}

.dnai-trade-levels > div {
    display: grid;
    min-width: 0;
    grid-template-columns: 25px minmax(0, 1fr);
    gap: 3px;
}

.dnai-trade-levels__entry {
    grid-column: 1 / -1;
}

.dnai-trade-levels > .dnai-trade-levels__entry {
    grid-template-columns: 30px minmax(0, 1fr);
}

.dnai-trade-levels dt,
.dnai-trade-levels dd {
    margin: 0;
    line-height: 14px;
    white-space: nowrap;
}

.dnai-trade-levels dt {
    color: var(--dnai-text-muted);
    font-size: clamp(8px, .48vw, 9px);
    font-weight: 500;
}

.dnai-trade-levels dd {
    color: var(--dnai-text);
    font-size: clamp(9px, .55vw, 10.5px);
    font-weight: 600;
}

.dnai-scenario-card__metrics {
    display: grid;
    height: 52px;
    grid-template-columns: 1fr 1fr;
    gap: 4px;
    margin-top: 2px;
}

.dnai-scenario-card__metrics > div {
    display: grid;
    min-width: 0;
    align-content: center;
    justify-items: center;
    border: 1px solid var(--dnai-border);
    border-radius: 6px;
    background: var(--dnai-surface);
}

.dnai-scenario-card__metrics span {
    color: var(--dnai-text-muted);
    font-size: clamp(5px, .36vw, 7px);
    line-height: 11px;
}

.dnai-scenario-card__metrics strong {
    overflow: hidden;
    max-width: 100%;
    color: var(--dnai-gold);
    font-size: clamp(7px, .58vw, 11px);
    line-height: 16px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dnai-signal-history,
.dnai-market-news {
    height: 234px;
}

.dnai-signal-history {
    padding: 8px 15px 10px;
}

.dnai-section-heading {
    display: flex;
    height: 21px;
    align-items: start;
    justify-content: space-between;
    gap: 10px;
}

.dnai-section-heading a,
.dnai-section-heading button {
    flex: 0 0 auto;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--dnai-primary-light, #4b86ff);
    font-size: clamp(6px, .42vw, 8px);
    line-height: 14px;
    font-weight: 600;
    text-decoration: none;
}

.dnai-section-heading button:disabled {
    color: var(--dnai-text-muted);
    cursor: default;
    opacity: .78;
}

.dnai-table-wrap {
    min-width: 0;
    overflow: hidden;
}

.dnai-history-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.dnai-history-table th,
.dnai-history-table td {
    height: 20px;
    padding: 0 4px;
    overflow: hidden;
    border-bottom: 1px solid rgba(23, 52, 78, .72);
    font-size: clamp(5.5px, .42vw, 8px);
    line-height: 14px;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dnai-history-table th {
    height: 16px;
    color: var(--dnai-text-muted);
    font-size: clamp(5px, .36vw, 7px);
    font-weight: 600;
}

.dnai-history-table th:nth-child(1) { width: 13%; }
.dnai-history-table th:nth-child(2) { width: 15%; }
.dnai-history-table th:nth-child(3) { width: 14%; }
.dnai-history-table th:nth-child(4) { width: 12%; }
.dnai-history-table th:nth-child(5) { width: 14%; }
.dnai-history-table th:nth-child(6) { width: 13%; }
.dnai-history-table th:nth-child(7) { width: 19%; }

.dnai-history-table td {
    color: var(--dnai-text-secondary);
}

.dnai-direction,
.dnai-result {
    font-weight: 700;
}

.dnai-direction--buy,
.dnai-result--positive {
    color: var(--dnai-success-bright);
}

.dnai-direction--sell,
.dnai-result--negative {
    color: var(--dnai-danger-bright);
}

.dnai-result--pending {
    color: var(--dnai-gold);
}

.dnai-result--invalid {
    color: var(--dnai-text-muted);
}

.dnai-market-news {
    padding: 8px 19px 10px clamp(15px, 2.86vw, 55px);
    background: var(--dnai-surface-elevated);
}

.dnai-news-table {
    min-width: 0;
}

.dnai-news-table__head,
.dnai-news-row {
    display: grid;
    min-width: 0;
    grid-template-columns: clamp(38px, 3.33vw, 64px) minmax(0, 1fr) clamp(58px, 5.73vw, 110px) 28px;
    align-items: center;
}

.dnai-news-table__head {
    height: 17px;
    border-bottom: 1px solid rgba(23, 52, 78, .72);
    color: var(--dnai-text-muted);
    font-size: clamp(5px, .36vw, 7px);
    font-weight: 600;
}

.dnai-news-row {
    height: 24px;
    border-bottom: 1px solid rgba(23, 52, 78, .72);
    color: var(--dnai-text-secondary);
    font-size: clamp(5.5px, .42vw, 8px);
}

.dnai-news-row time,
.dnai-news-row__title {
    overflow: hidden;
    padding-right: 8px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dnai-news-row__title {
    color: var(--dnai-text);
}

.dnai-tone-badge--impact-high,
.dnai-tone-badge--impact-medium,
.dnai-tone-badge--impact-low {
    height: 20px;
    justify-self: start;
    border-radius: 5px;
}

.dnai-tone-badge--impact-high {
    background: rgba(255, 79, 112, .1);
    color: var(--dnai-danger-bright);
}

.dnai-tone-badge--impact-medium {
    background: rgba(255, 163, 5, .1);
    color: var(--dnai-gold);
}

.dnai-tone-badge--impact-low {
    background: rgba(75, 134, 255, .1);
    color: var(--dnai-sky);
}

.dnai-favorite {
    display: grid;
    width: 24px;
    height: 24px;
    min-height: 24px;
    max-height: 24px;
    margin: 0;
    padding: 0;
    place-items: center;
    border: 0;
    background: transparent;
    color: var(--dnai-text-muted);
    cursor: pointer;
    transition: color var(--dnai-transition-fast), background-color var(--dnai-transition-fast), transform var(--dnai-transition-fast);
}

.dnai-favorite:hover { border-radius: 50%; background: rgba(255, 163, 5, .1); color: var(--dnai-gold); }
.dnai-favorite:active { transform: translateY(1px); }

.dnai-section-heading a { transition: color var(--dnai-transition-fast); }
.dnai-section-heading a:hover { color: #79a4ff; text-decoration: underline; text-underline-offset: 2px; }
.dnai-section-heading a:active { color: #aac5ff; }

.dnai-favorite svg {
    width: 14px;
    height: 14px;
    fill: transparent;
    stroke: currentColor;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.dnai-favorite[aria-pressed="true"] {
    color: var(--dnai-gold);
}

.dnai-favorite[aria-pressed="true"] svg {
    fill: currentColor;
}

.dnai-favorite:focus-visible,
.dnai-section-heading a:focus-visible {
    outline: 2px solid var(--dnai-focus-ring);
    outline-offset: 2px;
}

.dnai-workspace-slot {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--dnai-border);
    border-radius: var(--dnai-radius-md);
    background: var(--dnai-surface);
}

.dnai-workspace-slot[data-workspace-slot="ai-analysis"],
.dnai-workspace-slot[data-workspace-slot="scenarios"],
.dnai-workspace-slot[data-workspace-slot="news"] {
    background: var(--dnai-surface-elevated);
}

.dnai-hero-chart,
.dnai-hero-analysis {
    min-width: 0;
    height: 510px;
}

.dnai-hero-chart {
    display: grid;
    height: 512px;
    grid-template-rows: 430px 68px;
    gap: 14px;
}

.dnai-feature-cards {
    display: grid;
    min-width: 0;
    height: 68px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--dnai-workspace-column-gap);
}

.dnai-feature-card {
    display: grid;
    min-width: 0;
    height: 68px;
    grid-template-columns: 34px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    padding: 10px;
    overflow: hidden;
    border: 1px solid var(--dnai-border);
    border-radius: 10px;
    background: #071827;
}

.dnai-feature-card__icon {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 8px;
    background: rgba(20, 92, 245, .16);
    color: #4b86ff;
}

.dnai-feature-card__icon svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.dnai-feature-card--green .dnai-feature-card__icon {
    background: rgba(5, 209, 110, .13);
    color: var(--dnai-success-bright);
}

.dnai-feature-card--orange .dnai-feature-card__icon {
    background: rgba(255, 163, 5, .14);
    color: var(--dnai-gold);
}

.dnai-feature-card--purple .dnai-feature-card__icon {
    background: rgba(139, 92, 246, .14);
    color: #a78bfa;
}

.dnai-feature-card__copy,
.dnai-feature-card__copy strong,
.dnai-feature-card__copy small {
    display: block;
    min-width: 0;
}

.dnai-feature-card__copy strong {
    overflow: hidden;
    color: var(--dnai-text);
    font-size: clamp(7px, .53vw, 10px);
    line-height: 16px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dnai-feature-card__copy small {
    display: -webkit-box;
    overflow: hidden;
    color: var(--dnai-text-muted);
    font-size: clamp(6px, .46vw, 8px);
    line-height: 12px;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.dnai-price-map,
.dnai-ai-context {
    position: relative;
    min-width: 0;
    height: 218px;
    overflow: hidden;
    border: 1px solid var(--dnai-border);
    border-radius: var(--dnai-radius-md);
    background: var(--dnai-surface);
}

.dnai-price-map > header,
.dnai-ai-context > header {
    position: absolute;
    z-index: 2;
    top: 11px;
    left: 15px;
    right: 15px;
}

.dnai-price-map h2,
.dnai-ai-context h2 {
    color: var(--dnai-text);
    font-size: clamp(8px, .58vw, 11px);
    line-height: 16px;
    font-weight: 700;
}

.dnai-price-map header p,
.dnai-ai-context header p {
    color: var(--dnai-text-muted);
    font-size: clamp(6px, .47vw, 9px);
    line-height: 14px;
}

.dnai-ai-context h2 {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dnai-ai-context h2 {
    font-size: clamp(6px, .5vw, 9px);
}

.dnai-ai-context header p {
    display: -webkit-box;
    overflow: hidden;
    line-height: 10px;
    white-space: normal;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.dnai-price-map__plot {
    position: absolute;
    inset: 36px 16px 10px;
}

.dnai-price-map__axis {
    position: absolute;
    top: 4px;
    bottom: 0;
    left: 50%;
    width: 1px;
    background: linear-gradient(var(--dnai-danger-bright), var(--dnai-primary) 52%, var(--dnai-success-bright));
    opacity: .7;
}

.dnai-price-map__axis::before,
.dnai-price-map__axis::after {
    position: absolute;
    left: 50%;
    width: 7px;
    height: 7px;
    transform: translateX(-50%);
    border-radius: 50%;
    background: currentColor;
    box-shadow: 0 0 9px currentColor;
    content: "";
}

.dnai-price-map__axis::before {
    top: 0;
    color: var(--dnai-danger-bright);
}

.dnai-price-map__axis::after {
    bottom: 0;
    color: var(--dnai-success-bright);
}

.dnai-price-map__side {
    position: absolute;
    display: grid;
    width: 136px;
    gap: 3px;
}

.dnai-price-map__side--left {
    top: 1px;
    left: 1px;
}

.dnai-price-map__side--right {
    top: 92px;
    right: 0;
}

.dnai-price-map__level {
    position: relative;
    display: grid;
    height: 23px;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 5px;
    padding: 0 7px;
    border: 1px solid rgba(23, 52, 78, .9);
    border-radius: 5px;
    background: #091b2b;
}

.dnai-price-map__level::after {
    position: absolute;
    top: 50%;
    width: clamp(10px, 2.35vw, 45px);
    height: 1px;
    background: currentColor;
    content: "";
    opacity: .52;
}

.dnai-price-map__side--left .dnai-price-map__level::after {
    left: 100%;
}

.dnai-price-map__side--right .dnai-price-map__level::after {
    right: 100%;
}

.dnai-price-map__level span,
.dnai-price-map__level strong {
    overflow: hidden;
    font-size: clamp(6px, .42vw, 8px);
    line-height: 11px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dnai-price-map__level span {
    color: var(--dnai-text-muted);
}

.dnai-price-map__level strong {
    color: currentColor;
    font-weight: 700;
}

.dnai-price-map__level--resistance {
    color: var(--dnai-danger-bright);
}

.dnai-price-map__level--current {
    border-color: rgba(20, 92, 245, .85);
    color: #62a0ff;
}

.dnai-price-map__level--support {
    color: var(--dnai-success-bright);
}

.dnai-ai-context {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    gap: 8px;
    padding: 11px 15px 13px;
    background: var(--dnai-surface-elevated);
}

.dnai-ai-context > header {
    position: static;
}

.dnai-ai-context__metrics {
    position: static;
    display: grid;
    min-height: 0;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: start;
    gap: 10px;
}

.dnai-ai-context__metric {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: 14px 21px 14px;
    justify-items: center;
    align-content: start;
    row-gap: 1px;
    text-align: center;
}

.dnai-ai-context__metric span {
    grid-column: 1 / -1;
    overflow: hidden;
    color: var(--dnai-text-muted);
    font-size: clamp(6px, .42vw, 8px);
    line-height: 12px;
    text-overflow: ellipsis;
    text-align: center;
    white-space: nowrap;
}

.dnai-ai-context__metric strong {
    white-space: nowrap;
    color: var(--dnai-sky);
    font-size: clamp(12px, .82vw, 16px);
    line-height: 21px;
}

.dnai-ai-context__metric small {
    color: var(--dnai-sky);
    font-size: clamp(7px, .47vw, 9px);
    line-height: 14px;
    font-weight: 600;
}

.dnai-ai-context__metric--success strong { color: var(--dnai-success-bright); }
.dnai-ai-context__metric--danger strong { color: var(--dnai-danger-bright); }
.dnai-ai-context__metric--warning strong { color: var(--dnai-gold); }
.dnai-ai-context__metric--success small { color: var(--dnai-success-bright); }
.dnai-ai-context__metric--danger small { color: var(--dnai-danger-bright); }
.dnai-ai-context__metric--warning small { color: var(--dnai-gold); }

.dnai-ai-context__note {
    position: static;
    min-height: 57px;
    padding: 7px 10px 8px;
    border: 1px solid rgba(23, 52, 78, .9);
    border-radius: 7px;
    background: #091b2b;
}

.dnai-ai-context__note strong {
    display: block;
    color: var(--dnai-gold);
    font-size: clamp(7px, .47vw, 9px);
    line-height: 12px;
}

.dnai-ai-context__note ul {
    display: grid;
    gap: 1px;
    margin: 2px 0 0;
    padding: 0;
    list-style: none;
}

.dnai-ai-context__note li {
    position: relative;
    padding-left: 9px;
    color: var(--dnai-text-secondary);
    font-size: clamp(6px, .42vw, 8px);
    line-height: 11px;
}

.dnai-ai-context__note li::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "•";
}

.dnai-chart-panel {
    display: grid;
    width: 100%;
    height: 430px;
    min-width: 0;
    grid-template-rows: 43px 300px 67px;
    padding: 10px 16px 8px;
    overflow: hidden;
    border: 1px solid rgba(23, 58, 86, .95);
    border-radius: 12px;
    background: #071827;
    box-shadow: 0 4px 14px rgba(0, 0, 0, .22);
}

.dnai-chart-panel__header {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(140px, 260px) minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    padding-left: clamp(34px, 2.82vw, 54px);
}

.dnai-chart-panel__header h1,
.dnai-chart-panel__header p {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dnai-chart-panel__header h1 {
    color: var(--dnai-text);
    font-size: clamp(8px, .58vw, 11px);
    line-height: 14px;
    font-weight: 600;
}

.dnai-chart-panel__header p {
    color: var(--dnai-success-bright);
    font-size: clamp(7px, .52vw, 10px);
    line-height: 14px;
    text-align: right;
}

.dnai-chart-panel__body {
    display: grid;
    min-width: 0;
    grid-template-columns: 41px minmax(0, 1fr);
    gap: 0;
    padding-right: 5px;
}

.dnai-chart-tools {
    display: grid;
    align-content: start;
    justify-items: center;
    gap: 17px;
    padding-top: 7px;
    color: var(--dnai-text-muted);
    font-size: 14px;
    line-height: 20px;
}
.dnai-chart-tools button { display:grid; width:28px; height:28px; place-items:center; padding:0; border:0; border-radius:6px; background:transparent; color:inherit; font:inherit; cursor:pointer; }
.dnai-chart-tools button:hover,.dnai-chart-tools button:focus-visible { background:rgba(56,189,248,.12); color:#93c5fd; outline:1px solid rgba(56,189,248,.35); }

.dnai-chart-canvas-wrap {
    position: relative;
    min-width: 0;
    min-height: 0;
    overflow: hidden;
    border: 1px solid rgba(16, 43, 67, .7);
    border-radius: 6px;
    background: #050f1a;
}

.dnai-chart-canvas-wrap canvas {
    display: block;
    width: 100%;
    height: 100%;
}

.dnai-chart-panel__footer {
    display: flex;
    min-width: 0;
    align-items: end;
    justify-content: space-between;
    gap: 10px;
    padding-left: 41px;
    color: var(--dnai-text-muted);
    font-size: clamp(6px, .42vw, 8px);
    white-space: nowrap;
}

.dnai-ai-analysis {
    display: grid;
    width: 100%;
    height: 510px;
    min-width: 0;
    grid-template-rows: 90px 340px 64px;
    gap: 8px;
    color: var(--dnai-text);
}

.dnai-ai-analysis__header {
    display: flex;
    min-width: 0;
    align-items: start;
    justify-content: space-between;
    padding: 12px 16px 0;
}

.dnai-ai-analysis__header > div:first-child { padding-top: 0; }

.dnai-ai-analysis__header h2 {
    color: var(--dnai-text);
    font-size: clamp(9px, .63vw, 12px);
    line-height: 16px;
    font-weight: 700;
}

.dnai-ai-score {
    display: flex;
    align-items: start;
    gap: 5px;
    margin-top: 4px;
}

.dnai-ai-score > strong {
    color: var(--dnai-success-bright);
    font-size: clamp(28px, 2vw, 40px);
    line-height: 40px;
}

.dnai-ai-score > span {
    display: grid;
    padding-top: 4px;
    color: var(--dnai-text-secondary);
    font-size: 9px;
    line-height: 11px;
}

.dnai-ai-score b {
    color: var(--dnai-text);
    font-size: 8px;
}

.dnai-confidence {
    position: relative;
    display: grid;
    width: 60px;
    height: 60px;
    flex: 0 0 60px;
    place-items: center;
    border-radius: 50%;
    background: conic-gradient(var(--dnai-success-bright) calc(var(--dnai-confidence) * 1%), #14334f 0);
}

.dnai-confidence::before {
    position: absolute;
    inset: 5px;
    border-radius: inherit;
    background: var(--dnai-bg);
    content: "";
}

.dnai-confidence strong,
.dnai-confidence span {
    position: relative;
    z-index: 1;
}

.dnai-confidence strong {
    font-size: 12px;
    line-height: 14px;
}

.dnai-confidence span {
    position: absolute;
    top: 63px;
    width: 84px;
    color: var(--dnai-text-muted);
    font-size: 8px;
    text-align: center;
}

.dnai-ai-analysis__body {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 236fr) minmax(0, 590fr);
    gap: 12px;
    padding: 0 18px;
}

.dnai-ai-analysis__left,
.dnai-ai-analysis__right {
    display: grid;
    min-width: 0;
    grid-template-rows: minmax(178px, 1fr) 145px;
    gap: 17px;
}

.dnai-analysis-card,
.dnai-quick-metric {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(27, 66, 98, .9);
    border-radius: 10px;
    background: #0a2034;
}

.dnai-signal-runtime-card {
    margin: 0 18px;
    padding: 14px;
    border-color: rgba(5, 209, 110, .38);
    background: rgba(6, 73, 49, .42);
}

.dnai-signal-card__head,
.dnai-signal-state {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.dnai-signal-runtime-card > strong {
    display: block;
    margin: 8px 0 2px;
    color: var(--dnai-success-bright);
    font-size: 20px;
}

.dnai-signal-geometry {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 8px;
    margin: 12px 0;
}

.dnai-signal-geometry div {
    min-width: 0;
    padding: 8px;
    border-radius: 6px;
    background: rgba(3, 20, 34, .5);
}

.dnai-signal-geometry dt,
.dnai-signal-geometry dd { margin: 0; }
.dnai-signal-geometry dt { color: var(--dnai-text-muted); font-size: 9px; }
.dnai-signal-geometry dd { margin-top: 3px; color: var(--dnai-text-primary); font-size: 12px; font-weight: 700; }

.dnai-ai-analysis.dnai-technical-analysis > .dnai-runtime-inline {
    position: static;
    border-radius: 0;
}

@media (max-width: 700px) {
    .dnai-signal-runtime-card { margin-inline: 10px; }
    .dnai-signal-geometry { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .dnai-signal-state { align-items: flex-start; flex-direction: column; }
}

.dnai-trend-card {
    display: flex;
    flex-direction: column;
    padding: 13px 14px 10px;
}

.dnai-trend-card p,
.dnai-signal-card p,
.dnai-consensus h3,
.dnai-level-group h3 {
    color: var(--dnai-text-muted);
    font-size: clamp(7px, .48vw, 9px);
    line-height: 12px;
    font-weight: 600;
}

.dnai-trend-card > strong {
    margin-top: 8px;
    color: var(--dnai-success-bright);
    font-size: clamp(11px, .78vw, 15px);
    line-height: 18px;
}

.dnai-trend-card > span {
    display: block;
    margin-top: 6px;
    color: var(--dnai-text-secondary);
    font-size: clamp(7px, .46vw, 9px);
    line-height: 13px;
}

.dnai-confirmations {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 4px;
    margin-top: auto;
}

.dnai-confirmations small {
    display: grid;
    height: 23px;
    min-width: 0;
    place-items: center;
    border-radius: 5px;
    background: rgba(5, 209, 110, .11);
    color: var(--dnai-success-bright);
    font-size: clamp(6px, .42vw, 8px);
    white-space: nowrap;
}

.dnai-confirmations small.is-neutral {
    background: rgba(255, 163, 5, .1);
    color: var(--dnai-gold);
}

.dnai-signal-card {
    padding: 10px 14px;
    border-color: rgba(5, 209, 110, .38);
    background: rgba(6, 73, 49, .72);
}

.dnai-signal-card__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4px;
}

.dnai-signal-card__head span {
    display: inline-flex;
    height: 22px;
    padding: 0 10px;
    align-items: center;
    border: 1px solid rgba(5, 209, 110, .6);
    border-radius: 6px;
    color: var(--dnai-success-bright);
    font-size: 8px;
}

.dnai-signal-card > strong {
    display: block;
    margin-top: 2px;
    color: var(--dnai-success-bright);
    font-size: clamp(18px, 1.4vw, 27px);
    line-height: 28px;
}

.dnai-signal-card dl {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 3px 10px;
    margin: 2px 0 0;
}

.dnai-signal-card dl div {
    display: flex;
    min-width: 0;
    justify-content: space-between;
    gap: 4px;
}

.dnai-signal-card dl div:first-child {
    grid-column: 1 / -1;
}

.dnai-signal-card dt,
.dnai-signal-card dd {
    margin: 0;
    line-height: 14px;
    white-space: nowrap;
}

.dnai-signal-card dt {
    color: var(--dnai-text-muted);
    font-size: clamp(8px, .48vw, 9px);
    font-weight: 500;
}

.dnai-signal-card dd {
    overflow: hidden;
    color: var(--dnai-text);
    font-size: clamp(9px, .56vw, 11px);
    font-weight: 600;
    text-overflow: ellipsis;
}

.dnai-signal-card dl > div:first-child dd { color: var(--dnai-trade-entry); }
.dnai-signal-card dl > div:nth-child(2) dd { color: var(--dnai-trade-stop); }
.dnai-signal-card dl > div:nth-child(n+3) dd { color: var(--dnai-trade-target); }

.dnai-trade-levels > div:first-child dd { color: var(--dnai-trade-entry); }
.dnai-trade-levels > div:nth-child(2) dd { color: var(--dnai-trade-stop); }
.dnai-trade-levels > div:nth-child(n+3) dd { color: var(--dnai-trade-target); }
.dnai-scenario-card__metrics > div:first-child strong { color: var(--dnai-trade-rr); }
.dnai-scenario-card__metrics > div:nth-child(2) strong { color: var(--dnai-trade-confidence); }
.dnai-history-table td:nth-child(3) { color: var(--dnai-trade-entry); }
.dnai-result--positive { color: var(--dnai-trade-target); }
.dnai-result--negative { color: var(--dnai-trade-stop); }
.dnai-result--pending { color: var(--dnai-trade-rr); }

.dnai-consensus {
    min-height: 0;
    padding: 12px 14px 8px;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-gutter: stable;
}

.dnai-consensus h3 {
    color: var(--dnai-text);
    font-size: clamp(8px, .58vw, 11px);
}

.dnai-consensus__columns {
    display: grid;
    min-width: 0;
    min-height: 0;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-top: 7px;
}

.dnai-consensus__columns > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}

.dnai-consensus__columns > div + div {
    padding-left: 12px;
    border-left: 1px solid var(--dnai-border);
}

.dnai-consensus__columns strong {
    margin-bottom: 2px;
    color: var(--dnai-success-bright);
    font-size: clamp(6px, .44vw, 8px);
    line-height: 10px;
}

.dnai-consensus__columns > div:last-child strong {
    color: var(--dnai-danger-bright);
}

.dnai-consensus__columns span {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    gap: 4px;
    color: var(--dnai-text-secondary);
    font-size: clamp(6px, .42vw, 8px);
    line-height: 12px;
    white-space: normal;
}

.dnai-consensus__columns i {
    color: var(--dnai-success-bright);
    font-style: normal;
}

.dnai-consensus__columns > div:last-child i {
    color: var(--dnai-danger-bright);
}

.dnai-level-groups {
    display: grid;
    min-width: 0;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.dnai-level-group {
    padding: 9px 12px;
}

.dnai-level-group h3 {
    color: var(--dnai-success-bright);
}

.dnai-level-group--resistance h3 {
    color: var(--dnai-danger-bright);
}

.dnai-level-group > div {
    display: grid;
    min-width: 0;
    grid-template-columns: 25px minmax(0, 1fr);
    gap: 1px 5px;
    padding: 5px 0;
    border-bottom: 1px solid rgba(23, 52, 78, .65);
}

.dnai-level-group > div:last-child {
    border-bottom: 0;
}

.dnai-level-group strong,
.dnai-level-group span,
.dnai-level-group small {
    overflow: hidden;
    font-size: clamp(6px, .44vw, 8px);
    line-height: 10px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dnai-level-group strong {
    grid-row: 1 / 3;
    color: var(--dnai-text-muted);
}

.dnai-level-group span {
    color: var(--dnai-text);
    font-weight: 700;
}

.dnai-level-group small {
    color: var(--dnai-success-bright);
}

.dnai-level-group--resistance small {
    color: var(--dnai-danger-bright);
}

.dnai-quick-metrics {
    display: grid;
    min-width: 0;
    grid-template-columns: 1fr 1fr 1.075fr;
    gap: 10px;
    padding: 0 16px;
}

.dnai-quick-metric {
    display: grid;
    align-content: center;
    padding: 8px 12px;
}

.dnai-quick-metric span {
    color: var(--dnai-text-muted);
    font-size: clamp(6px, .46vw, 9px);
    line-height: 11px;
}

.dnai-quick-metric strong {
    color: var(--dnai-gold);
    font-size: clamp(10px, .78vw, 15px);
    line-height: 19px;
}

.dnai-quick-metric--session strong,
.dnai-quick-metric--session small {
    color: var(--dnai-sky);
}

.dnai-quick-metric small {
    font-size: 8px;
    line-height: 10px;
}

.dnai-app[data-workspace="compact"] .dnai-sidebar__identity-copy,
.dnai-app[data-workspace="compact"] .dnai-sidebar__nav-label,
.dnai-app[data-workspace="compact"] .dnai-plan-card {
    width: 0;
    opacity: 0;
    pointer-events: none;
}

.dnai-app[data-workspace="compact"] .dnai-sidebar {
    padding-inline: 12px;
}

.dnai-app[data-workspace="compact"] .dnai-sidebar__identity {
    padding-left: 8px;
}

.dnai-app[data-workspace="compact"] .dnai-sidebar__nav a {
    justify-content: center;
    gap: 0;
    padding-inline: 0;
}

.dnai-app[data-workspace="compact"] .dnai-sidebar__toggle {
    transform: rotate(180deg);
}

.dnai-app[data-workspace="compact"] .dnai-sidebar__nav a::after {
    position: absolute;
    z-index: var(--dnai-z-tooltip);
    left: calc(100% + 14px);
    top: 50%;
    padding: 6px 9px;
    transform: translate(4px, -50%);
    border: 1px solid var(--dnai-border);
    border-radius: 5px;
    background: #0b2134;
    color: var(--dnai-text);
    box-shadow: var(--dnai-shadow-surface);
    content: attr(data-tooltip);
    font-size: 11px;
    opacity: 0;
    pointer-events: none;
    white-space: nowrap;
    transition: opacity var(--dnai-transition-fast), transform var(--dnai-transition-fast);
    transition-delay: 180ms;
}

.dnai-app[data-workspace="compact"] .dnai-sidebar__nav a:hover::after,
.dnai-app[data-workspace="compact"] .dnai-sidebar__nav a:focus-visible::after {
    opacity: 1;
    transform: translate(0, -50%);
}

.dnai-app[data-workspace="compact"] .dnai-sidebar__nav a:focus-visible::after { transition-delay: 0ms; }

@media (max-width: 1600px) and (min-width: 1281px) {
    .dnai-bot-cta {
        grid-template-columns: 92px minmax(0, 1fr) 344px;
        padding-inline: 18px;
    }

    .dnai-bot-cta__visual { height: 110px; }
    .dnai-bot-cta__crown { top: 31px; width: 30px; height: 22px; }
    .dnai-bot-cta__robot { top: 25px; left: 36px; width: 56px; height: 56px; }
    .dnai-bot-cta__robot svg { width: 48px; height: 48px; }
    .dnai-bot-cta__content h2 { font-size: clamp(12px, .9vw, 15px); }
    .dnai-bot-cta__content ul { gap: 12px; }
    .dnai-bot-cta__content li { font-size: clamp(7px, .55vw, 9px); }
    .dnai-bot-cta__actions { grid-column: 3; grid-template-columns: 150px 178px; gap: 16px; }
    .dnai-bot-cta__button { min-height: 48px; font-size: 10px; }

    .dnai-scenarios {
        padding-inline: 10px;
    }

    .dnai-scenarios__grid {
        gap: 6px;
    }

    .dnai-scenario-card {
        padding-inline: 7px;
    }

    .dnai-scenario-card__header {
        grid-template-columns: minmax(0, 1fr) 60px;
        gap: 4px;
    }

    .dnai-scenario-card__bottom {
        grid-template-columns: minmax(0, 1fr) 68px;
    }

    .dnai-trade-levels {
        grid-template-columns: 1fr;
    }

    .dnai-signal-card {
        padding-inline: 10px;
    }

    .dnai-signal-card dl {
        grid-template-columns: 1fr;
        gap-block: 0;
    }
}

@media (max-width: 1280px) and (min-width: 1140px) {
    .dnai-bot-cta {
        grid-template-columns: 66px minmax(0, 1fr) 286px;
        padding-inline: 12px;
    }

    .dnai-bot-cta__crown { top: 33px; width: 22px; height: 18px; }
    .dnai-bot-cta__robot { top: 29px; left: 26px; width: 48px; height: 48px; border-radius: 9px; }
    .dnai-bot-cta__robot svg { width: 41px; height: 41px; }
    .dnai-bot-cta__content { padding: 19px 8px 0 0; }
    .dnai-bot-cta__content h2 { font-size: 10px; line-height: 18px; }
    .dnai-bot-cta__content > p { margin-top: 4px; font-size: 7px; line-height: 14px; }
    .dnai-bot-cta__content ul { margin-top: 6px; gap: 8px; }
    .dnai-bot-cta__content li { gap: 3px; font-size: 7.5px; }
    .dnai-bot-cta__content li svg { width: 9px; height: 9px; flex-basis: 9px; }
    .dnai-bot-cta__actions { grid-column: 3; grid-template-columns: 132px 144px; gap: 10px; }
    .dnai-bot-cta__button { min-height: 46px; padding-inline: 5px; font-size: 9px; }

    .dnai-indicator-route .dn-home-header .dn-home-shell {
        padding-inline: 20px;
    }

    .dnai-indicator-route .dn-home-account {
        min-width: 250px;
    }

    .dnai-trading-toolbar {
        padding-inline: 16px;
    }

    .dnai-chart-panel__header {
        grid-template-columns: minmax(90px, 105px) minmax(0, 1fr);
        gap: 6px;
        padding-left: 34px;
    }

    .dnai-chart-panel__header p {
        font-size: 7px;
    }

    .dnai-feature-card {
        grid-template-columns: 22px minmax(0, 1fr);
        gap: 3px;
        padding-inline: 3px;
    }

    .dnai-feature-card__icon {
        width: 22px;
        height: 22px;
    }

    .dnai-feature-card__icon svg {
        width: 15px;
        height: 15px;
    }

    .dnai-feature-card__copy strong {
        font-size: 7px;
        line-height: 13px;
    }

    .dnai-feature-card__copy small {
        font-size: 6px;
        line-height: 9px;
    }

    .dnai-price-map__side {
        width: 41%;
    }

    .dnai-scenarios {
        padding-inline: 8px;
    }

    .dnai-scenarios__grid {
        gap: 5px;
    }

    .dnai-scenario-card {
        padding-inline: 4px;
    }

    .dnai-scenario-card__header {
        grid-template-columns: minmax(0, 1fr) 44px;
        gap: 3px;
    }

    .dnai-tone-badge {
        height: 20px;
        padding-inline: 3px;
    }

    .dnai-scenario-card__bottom {
        grid-template-columns: minmax(0, 1fr) 38px;
        gap: 2px;
    }

    .dnai-scenario-card__metrics {
        height: 68px;
        grid-template-columns: 1fr;
        grid-template-rows: repeat(2, minmax(0, 1fr));
        gap: 2px;
    }

    .dnai-trade-levels > div {
        grid-template-columns: 21px minmax(0, 1fr);
        gap: 1px;
    }

    .dnai-trade-levels > .dnai-trade-levels__entry {
        grid-template-columns: 25px minmax(0, 1fr);
    }

    .dnai-trade-levels {
        grid-template-columns: 1fr;
    }

    .dnai-trade-levels dt {
        font-size: 7.5px;
    }

    .dnai-trade-levels dd {
        font-size: 8px;
    }

    .dnai-signal-card {
        padding-inline: 6px;
    }

    .dnai-signal-card dl {
        grid-template-columns: 1fr;
        gap-block: 0;
    }

    .dnai-signal-card dt {
        font-size: 8px;
    }

    .dnai-signal-card dd {
        font-size: 8.5px;
    }

    .dnai-history-table th {
        font-size: 6.5px;
    }

    .dnai-history-table td,
    .dnai-news-row,
    .dnai-news-table__head {
        font-size: 7px;
    }

    .dnai-scenario-card__header h3 {
        font-size: 7px;
    }

    .dnai-tone-badge {
        font-size: 6px;
    }

    .dnai-signal-history {
        padding-inline: 8px;
    }

    .dnai-history-table th,
    .dnai-history-table td {
        padding-inline: 2px;
    }

    .dnai-market-news {
        padding-right: 8px;
    }
}
/* DEV-06 runtime states: fixed minimums prevent large layout jumps. */
.dnai-runtime-notice{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid rgba(245,158,11,.35);border-radius:10px;background:rgba(245,158,11,.08);color:#d7e3f4;font-size:12px}.dnai-runtime-notice strong{color:#fbbf24;text-transform:uppercase}.dnai-runtime-inline{margin:0;padding:8px 14px;background:rgba(245,158,11,.08);border-bottom:1px solid rgba(245,158,11,.25);color:#fbbf24;font-size:12px}.dnai-chart-panel,.dnai-ai-analysis{position:relative}.dnai-chart-panel>.dnai-runtime-inline,.dnai-ai-analysis>.dnai-runtime-inline{position:absolute;z-index:4;top:0;right:0;left:0;border-radius:10px 10px 0 0}.dnai-runtime-placeholder{display:grid;place-items:center;min-height:260px;padding:24px}.dnai-chart-panel .dnai-runtime-placeholder{min-height:420px}.dnai-runtime-table{display:grid;gap:8px;min-height:300px;padding:16px}.dnai-runtime-table .dnai-skeleton--table-row{display:block;min-height:42px}.dnai-scenario-card--locked{display:grid;place-items:center;min-height:410px}.dnai-scenario-card--locked .dnai-ui-state{width:100%;border:0;background:transparent}.dnai-scenario-status,.dnai-signal-state{display:flex;flex-direction:column;gap:8px;margin-top:auto;padding:14px;border:1px solid rgba(148,163,184,.2);border-radius:10px;background:rgba(15,23,42,.55);color:#cbd5e1}.dnai-scenario-status strong{color:#fbbf24}.dnai-signal-state p,.dnai-signal-state small{margin:0}.dnai-ui-state--error .dnai-ui-state__icon{color:#fb7185}.dnai-favorite:disabled{cursor:not-allowed;opacity:.45}
.dnai-chart-panel[data-runtime-state="active"]>[data-dnai-market-notice]{display:none}.dnai-chart-panel[data-runtime-state="loading"] .dnai-chart-canvas-wrap{opacity:.28}.dnai-chart-panel[data-runtime-state="offline"]>[data-dnai-market-notice],.dnai-chart-panel[data-runtime-state="error"]>[data-dnai-market-notice],.dnai-chart-panel[data-runtime-state="no_source"]>[data-dnai-market-notice]{color:#fb7185;background:rgba(244,63,94,.10);border-color:rgba(244,63,94,.3)}.dnai-chart-panel[data-runtime-state="market_closed"]>[data-dnai-market-notice]{color:#93c5fd;background:rgba(59,130,246,.1)}

/* Access-level locked states and shared Premium upgrade dialog. */
.dnai-premium-locked-card{display:flex;width:100%;min-width:0;min-height:218px;align-items:stretch;overflow:hidden;border:1px solid var(--dnai-border);border-radius:var(--dnai-radius-md);background:var(--dnai-surface-elevated)}
.dnai-premium-locked-card .dnai-ui-state{min-height:100%;border:0;border-radius:inherit}
.dnai-ai-analysis--locked{grid-template-rows:minmax(0,1fr);gap:0}.dnai-ai-analysis--locked .dnai-premium-locked-card{height:100%;min-height:100%}
.dnai-signal-history>.dnai-premium-locked-card,.dnai-market-news>.dnai-premium-locked-card{min-height:174px}
.dnai-ai-analysis__right--locked{display:flex;min-height:0}.dnai-ai-analysis__right--locked .dnai-premium-locked-card{min-height:100%}
.dnai-analysis-access-label{display:inline-flex;align-items:center;width:fit-content;border:1px solid rgba(245,158,11,.4);border-radius:999px;background:rgba(245,158,11,.09);color:var(--dnai-warning);font-size:8px;font-weight:700;line-height:18px;padding:0 8px}
.dnai-upgrade-modal{display:none;position:fixed;z-index:100100;inset:0;font-family:var(--dnai-font-family)}
.dnai-upgrade-modal.is-open{display:grid;place-items:center;padding:24px}.dnai-upgrade-modal__backdrop{position:absolute;inset:0;background:rgba(1,10,18,.78);backdrop-filter:blur(4px)}
.dnai-upgrade-modal__dialog{position:relative;display:flex;width:min(480px,calc(100vw - 48px));max-height:calc(100vh - 48px);flex-direction:column;align-items:center;gap:12px;padding:34px;overflow:auto;border:1px solid var(--dnai-border-strong);border-radius:16px;outline:none;background:var(--dnai-surface-elevated);box-shadow:0 28px 80px rgba(0,0,0,.55);color:var(--dnai-text);text-align:center}
.dnai-upgrade-modal__dialog:focus-visible{box-shadow:0 0 0 3px rgba(20,92,245,.42),0 28px 80px rgba(0,0,0,.55)}
.dnai-upgrade-modal__close{position:absolute;top:12px;right:12px;display:grid;box-sizing:border-box;width:36px;height:36px;min-height:36px;padding:0;place-items:center;border:1px solid var(--dnai-border);border-radius:50%;background:var(--dnai-surface);color:var(--dnai-text-secondary);cursor:pointer;line-height:0}
.dnai-upgrade-modal__close svg{display:block;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.dnai-upgrade-modal__close:hover{border-color:var(--dnai-border-strong);background:var(--dnai-surface-hover);color:#fff}.dnai-upgrade-modal__close:focus-visible{border-color:var(--dnai-border-strong);background:var(--dnai-surface-hover);color:#fff;outline:2px solid var(--dnai-primary);outline-offset:2px}.dnai-upgrade-modal__close:active{background:var(--dnai-surface);color:#fff}
.dnai-upgrade-modal__icon{display:grid;width:54px;height:54px;place-items:center;border:1px solid rgba(245,158,11,.45);border-radius:50%;background:rgba(245,158,11,.1);color:var(--dnai-gold);font-size:25px}
.dnai-upgrade-modal__icon--bot{border-color:rgba(23,105,255,.5);border-radius:14px;background:rgba(23,105,255,.16);color:#39a7ff}.dnai-upgrade-modal__icon--bot svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}
.dnai-upgrade-modal h2{margin:0;color:var(--dnai-text);font-size:22px;line-height:1.3}.dnai-upgrade-modal p{margin:0;color:var(--dnai-text-secondary);font-size:13px;line-height:1.6}.dnai-upgrade-modal__note{color:var(--dnai-text-muted)!important;font-size:11px!important}
.dnai-upgrade-modal__actions{display:flex;width:100%;justify-content:center;gap:10px;margin-top:6px}.dnai-upgrade-action{display:inline-flex;min-height:40px;align-items:center;justify-content:center;padding:9px 18px;border:1px solid var(--dnai-border-strong);border-radius:var(--dnai-radius-sm);cursor:pointer;font-size:12px;font-weight:700;transition:background-color var(--dnai-transition-fast),border-color var(--dnai-transition-fast),transform var(--dnai-transition-fast)}
.dnai-indicator-route .dnai-upgrade-action--primary{border-color:var(--dnai-primary);background:var(--dnai-primary);color:#fff}.dnai-indicator-route .dnai-upgrade-action--primary:hover,.dnai-indicator-route .dnai-upgrade-action--primary:focus-visible{background:var(--dnai-primary-hover);color:#fff;opacity:1;outline:2px solid #fff;outline-offset:2px}
.dnai-upgrade-action--secondary{background:transparent;color:var(--dnai-text-secondary)}.dnai-upgrade-action--secondary:hover,.dnai-upgrade-action--secondary:focus-visible{border-color:var(--dnai-primary);background:var(--dnai-surface-hover);color:#fff;outline:2px solid var(--dnai-primary);outline-offset:2px}.dnai-upgrade-action:active{transform:translateY(1px)}
body.dnai-upgrade-modal-open{overflow:hidden}
@media(max-width:1280px){.dnai-upgrade-modal__dialog{width:min(440px,calc(100vw - 40px));padding:30px 26px}}

/* DEV-08: the production desktop layout remains authoritative from 1140px upward. */
.dnai-mobile-workspace-bar,
.dnai-drawer-backdrop,
.dnai-sidebar__mobile-close { display: none; }

@media (max-width: 1139px) {
    body.dnai-drawer-open { overflow: hidden; overscroll-behavior: none; }
    .dnai-app { min-width: 0; overflow-x: clip; }
    .dnai-shell { display: block; min-height: 100vh; }
    .dnai-main { width: 100%; }

    .dnai-mobile-workspace-bar {
        position: sticky;
        z-index: 90;
        top: 0;
        display: grid;
        min-height: calc(58px + env(safe-area-inset-top));
        grid-template-columns: 44px 34px minmax(0, 1fr) auto;
        align-items: center;
        gap: 9px;
        padding: env(safe-area-inset-top) 14px 0;
        border-bottom: 1px solid var(--dnai-border);
        background: rgba(7, 19, 33, .97);
        backdrop-filter: blur(12px);
    }
    .dnai-mobile-workspace-bar__menu,
    .dnai-sidebar__mobile-close {
        display: grid;
        width: 44px;
        height: 44px;
        min-height: 44px;
        margin: 0;
        padding: 0;
        place-items: center;
        border: 1px solid var(--dnai-border);
        border-radius: 9px;
        background: #0b2134;
        color: var(--dnai-text);
    }
    .dnai-mobile-workspace-bar__menu svg,
    .dnai-sidebar__mobile-close svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-width: 2; }
    .dnai-mobile-workspace-bar__mark { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 9px; background: var(--dnai-primary); color: #fff; font-size: 11px; font-weight: 800; }
    .dnai-mobile-workspace-bar__copy { min-width: 0; }
    .dnai-mobile-workspace-bar__copy strong,
    .dnai-mobile-workspace-bar__copy small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .dnai-mobile-workspace-bar__copy strong { font-size: 13px; line-height: 17px; }
    .dnai-mobile-workspace-bar__copy small { color: var(--dnai-text-muted); font-size: 10px; line-height: 13px; }
    .dnai-mobile-workspace-bar__plan { padding: 6px 9px; border: 1px solid #73561a; border-radius: 7px; background: #251f12; color: #fbbf24; font-size: 9px; font-weight: 800; }

    .dnai-sidebar {
        position: fixed;
        z-index: 102;
        inset: 0 auto 0 0;
        width: min(330px, 88vw);
        min-height: 100dvh;
        padding: calc(18px + env(safe-area-inset-top)) 16px calc(22px + env(safe-area-inset-bottom));
        overflow-x: hidden;
        overflow-y: auto;
        transform: translateX(-102%);
        border-right-color: var(--dnai-border-strong);
        box-shadow: 20px 0 50px rgba(0, 0, 0, .46);
        transition: transform var(--dnai-transition);
        visibility: hidden;
    }
    .dnai-app.is-drawer-open .dnai-sidebar { transform: translateX(0); visibility: visible; }
    .dnai-sidebar__mobile-close { position: absolute; top: calc(14px + env(safe-area-inset-top)); right: 14px; }
    .dnai-sidebar__identity { height: 60px; padding-left: 2px; padding-right: 52px; }
    .dnai-sidebar__toggle { display: none; }
    .dnai-sidebar__nav { gap: 6px; }
    .dnai-sidebar__nav a { min-height: 46px; height: auto; font-size: 13px; }
    .dnai-sidebar__nav-label,
    .dnai-sidebar__identity-copy { width: auto !important; opacity: 1 !important; pointer-events: auto !important; }
    .dnai-plan-card { width: 100% !important; min-height: 165px; margin-top: 28px; opacity: 1 !important; pointer-events: auto !important; }
    .dnai-plan-card__details small { font-size: 10px; line-height: 14px; }
    .dnai-plan-card__action,
    .dnai-plan-card__status { min-height: 44px; }
    .dnai-app[data-workspace="compact"] .dnai-sidebar { padding: calc(18px + env(safe-area-inset-top)) 16px calc(22px + env(safe-area-inset-bottom)); }
    .dnai-app[data-workspace="compact"] .dnai-sidebar__nav a { justify-content: flex-start; gap: 12px; padding-inline: 12px; }
    .dnai-app[data-workspace="compact"] .dnai-sidebar__nav a::after { display: none; }
    .dnai-drawer-backdrop {
        position: fixed;
        z-index: 101;
        inset: 0;
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0;
        border: 0;
        background: rgba(1, 10, 18, .76);
        opacity: 0;
        pointer-events: none;
        transition: opacity var(--dnai-transition);
    }
    .dnai-app.is-drawer-open .dnai-drawer-backdrop { display: block; opacity: 1; pointer-events: auto; }

    .dnai-trading-toolbar {
        display: grid;
        height: auto;
        min-height: 116px;
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-areas: "pair tier" "state state" "frames frames";
        gap: 8px 12px;
        padding: 10px 14px 12px;
    }
    .dnai-pair { grid-area: pair; min-width: 0; max-width: none; }
    .dnai-pair strong { font-size: 13px; }
    .dnai-pair small { font-size: 10px; }
    .dnai-tier-badge { grid-area: tier; width: auto; min-width: 94px; height: 34px; padding-inline: 9px; flex-basis: auto; }
    .dnai-tier-badge small { display: none; }
    .dnai-market-state { grid-area: state; display: flex; min-width: 0; max-width: none; justify-content: space-between; gap: 10px; margin: 0; }
    .dnai-market-state span,
    .dnai-market-state strong { font-size: 10px; }
    .dnai-timeframes { grid-area: frames; width: 100%; min-width: 0; max-width: none; height: 46px; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: thin; }
    .dnai-timeframes button { min-width: 54px; min-height: 38px; font-size: 11px; }

    .dnai-workspace { gap: 16px; padding: 14px; }
    .dnai-workspace__hero,
    .dnai-workspace__intelligence,
    .dnai-workspace__history { height: auto; grid-template-columns: minmax(0, 1fr); gap: 16px; }
    .dnai-workspace__hero { display: flex; flex-direction: column; }
    .dnai-hero-analysis { order: 1; }
    .dnai-hero-chart { order: 2; }
    .dnai-hero-chart,
    .dnai-hero-analysis { height: auto; }
    .dnai-hero-chart { grid-template-rows: auto auto; gap: 12px; }

    .dnai-ai-analysis { height: auto; grid-template-rows: auto auto auto; gap: 12px; padding-block: 12px; border: 1px solid var(--dnai-border); border-radius: 12px; background: #071827; }
    .dnai-ai-analysis__header { min-height: 78px; padding: 0 16px; }
    .dnai-ai-analysis__header h2 { font-size: 12px; line-height: 17px; }
    .dnai-ai-score > strong { font-size: 36px; line-height: 40px; }
    .dnai-confidence { width: 58px; height: 58px; flex-basis: 58px; }
    .dnai-confidence span { top: 61px; font-size: 9px; }
    .dnai-ai-analysis__body { grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 0 12px; }
    .dnai-ai-analysis__left,
    .dnai-ai-analysis__right { grid-template-rows: auto auto; gap: 12px; }
    .dnai-analysis-card { height: auto; overflow: visible; }
    .dnai-trend-card { min-height: 150px; padding: 14px; }
    .dnai-trend-card p,
    .dnai-signal-card p,
    .dnai-consensus h3,
    .dnai-level-group h3 { font-size: 10px; line-height: 14px; }
    .dnai-trend-card > strong { font-size: 16px; line-height: 21px; }
    .dnai-trend-card > span { font-size: 11px; line-height: 17px; }
    .dnai-confirmations { margin-top: 14px; }
    .dnai-confirmations small { height: 32px; font-size: 10px; }
    .dnai-signal-card { min-height: 154px; padding: 13px 14px; }
    .dnai-signal-card__head span { min-height: 32px; font-size: 10px; }
    .dnai-signal-card > strong { font-size: 25px; line-height: 31px; }
    .dnai-signal-card dl { gap: 5px 14px; }
    .dnai-signal-card dt { font-size: 10px; }
    .dnai-signal-card dd { overflow: visible; font-size: 11px; text-overflow: clip; }
    .dnai-consensus { min-height: 0; padding: 14px; overflow: visible; scrollbar-gutter: auto; }
    .dnai-consensus__columns strong { font-size: 10px; line-height: 14px; }
    .dnai-consensus__columns span { font-size: 10px; line-height: 15px; }
    .dnai-level-group { padding: 12px; }
    .dnai-level-group > div { grid-template-columns: 34px minmax(0, 1fr); padding: 7px 0; }
    .dnai-level-group strong,
    .dnai-level-group span,
    .dnai-level-group small { overflow: visible; font-size: 10px; line-height: 14px; text-overflow: clip; }
    .dnai-quick-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; padding: 0 12px; }
    .dnai-quick-metric { min-height: 68px; padding: 10px; }
    .dnai-quick-metric span { font-size: 10px; line-height: 13px; }
    .dnai-quick-metric strong { font-size: 15px; line-height: 21px; }

    .dnai-chart-panel { height: clamp(380px, 58vw, 480px); grid-template-rows: auto minmax(0, 1fr) 44px; padding: 10px; }
    .dnai-chart-panel__header { min-height: 48px; grid-template-columns: minmax(110px, 1fr); gap: 2px; padding-left: 0; }
    .dnai-chart-panel__header h1 { font-size: 11px; line-height: 15px; }
    .dnai-chart-panel__header p { font-size: 9px; line-height: 13px; text-align: left; }
    .dnai-chart-panel__body { grid-template-columns: minmax(0, 1fr); padding-right: 0; }
    .dnai-chart-tools { display: none; }
    .dnai-chart-panel__footer { align-items: center; padding-left: 0; overflow-x: auto; font-size: 9px; }
    .dnai-chart-panel__footer span { flex: 0 0 auto; }
    .dnai-feature-cards { height: auto; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
    .dnai-feature-card { height: auto; min-height: 78px; padding: 10px; }
    .dnai-feature-card__copy strong { font-size: 10px; line-height: 15px; white-space: normal; }
    .dnai-feature-card__copy small { font-size: 9px; line-height: 13px; }

    .dnai-workspace__intelligence { padding-top: 0; }
    .dnai-workspace__intelligence-pair { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
    .dnai-price-map,
    .dnai-ai-context { height: auto; min-height: 290px; overflow: visible; }
    .dnai-price-map > header,
    .dnai-ai-context > header { position: static; padding: 14px 14px 0; }
    .dnai-price-map h2,
    .dnai-ai-context h2 { overflow: visible; font-size: 11px; line-height: 16px; white-space: normal; }
    .dnai-price-map header p,
    .dnai-ai-context header p { display: block; overflow: visible; font-size: 10px; line-height: 15px; -webkit-line-clamp: initial; }
    .dnai-price-map__plot { position: relative; inset: auto; height: 226px; margin: 10px 14px 14px; }
    .dnai-price-map__side { width: 42%; }
    .dnai-price-map__level { height: 28px; }
    .dnai-price-map__level span,
    .dnai-price-map__level strong { overflow: visible; font-size: 9px; line-height: 12px; text-overflow: clip; }
    .dnai-price-map__side--right { top: 112px; }
    .dnai-ai-context { grid-template-rows: auto auto auto; padding: 0 14px 14px; }
    .dnai-ai-context__metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
    .dnai-ai-context__metric { min-height: 62px; grid-template-rows: auto auto auto; align-content: center; padding: 6px; border-radius: 7px; background: rgba(9, 27, 43, .62); }
    .dnai-ai-context__metric span { overflow: visible; font-size: 9px; line-height: 13px; text-overflow: clip; white-space: normal; }
    .dnai-ai-context__metric strong { font-size: 17px; line-height: 23px; }
    .dnai-ai-context__metric small { font-size: 10px; line-height: 14px; }
    .dnai-ai-context__note { min-height: 80px; padding: 10px 12px; }
    .dnai-ai-context__note strong { font-size: 10px; line-height: 14px; }
    .dnai-ai-context__note li { font-size: 10px; line-height: 15px; }

    .dnai-workspace__intelligence > [data-workspace-slot="scenarios"],
    .dnai-scenarios { height: auto; min-height: 0; }
    .dnai-scenarios { grid-template-rows: auto auto; gap: 10px; padding: 14px; overflow: visible; }
    .dnai-decision-header h2,
    .dnai-section-heading h2 { overflow: visible; font-size: 12px; line-height: 17px; text-overflow: clip; white-space: normal; }
    .dnai-decision-header p { overflow: visible; font-size: 10px; line-height: 15px; text-overflow: clip; white-space: normal; }
    .dnai-scenarios__grid { height: auto; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .dnai-scenario-card { height: auto; min-height: 186px; grid-template-rows: auto auto auto 1fr; gap: 4px; padding: 12px; overflow: visible; }
    .dnai-scenario-card:last-child:nth-child(odd) { grid-column: 1 / -1; }
    .dnai-scenario-card__header { grid-template-columns: minmax(0, 1fr) auto; }
    .dnai-scenario-card__header h3 { overflow: visible; font-size: 11px; line-height: 16px; text-overflow: clip; white-space: normal; }
    .dnai-tone-badge { min-height: 28px; height: auto; padding-inline: 8px; font-size: 9px; }
    .dnai-scenario-card__condition,
    .dnai-scenario-card__context p { overflow: visible; font-size: 10px; line-height: 15px; text-overflow: clip; white-space: normal; }
    .dnai-scenario-card__bottom { grid-template-columns: minmax(0, 1fr) 116px; gap: 8px; margin-top: 4px; }
    .dnai-trade-levels { grid-auto-rows: minmax(18px, auto); gap: 3px 8px; }
    .dnai-trade-levels > div { grid-template-columns: 32px minmax(0, 1fr); }
    .dnai-trade-levels > .dnai-trade-levels__entry { grid-template-columns: 38px minmax(0, 1fr); }
    .dnai-trade-levels dt { font-size: 9px; }
    .dnai-trade-levels dd { overflow: visible; font-size: 10px; white-space: normal; }
    .dnai-scenario-card__metrics { height: auto; min-height: 58px; }
    .dnai-scenario-card__metrics span { font-size: 9px; }
    .dnai-scenario-card__metrics strong { overflow: visible; font-size: 12px; text-overflow: clip; }

    .dnai-signal-history,
    .dnai-market-news { height: auto; min-height: 234px; padding: 14px; overflow: visible; }
    .dnai-section-heading { height: auto; min-height: 28px; align-items: start; }
    .dnai-section-heading a,
    .dnai-section-heading button { min-height: 36px; font-size: 10px; }
    .dnai-history-table th,
    .dnai-history-table td { height: 32px; font-size: 10px; }
    .dnai-news-table__head,
    .dnai-news-row { grid-template-columns: 58px minmax(0, 1fr) 90px 44px; font-size: 10px; }
    .dnai-news-table__head { height: 28px; }
    .dnai-news-row { height: auto; min-height: 38px; }
    .dnai-favorite { width: 44px; height: 44px; min-height: 44px; max-height: 44px; }

    .dnai-workspace__cta,
    .dnai-bot-cta { min-height: 0; }
    .dnai-bot-cta { grid-template-columns: 86px minmax(0, 1fr); padding: 16px; }
    .dnai-bot-cta__visual { height: 86px; }
    .dnai-bot-cta__crown { top: 22px; width: 27px; height: 20px; }
    .dnai-bot-cta__robot { top: 13px; left: 32px; width: 54px; height: 54px; }
    .dnai-bot-cta__robot svg { width: 46px; height: 46px; }
    .dnai-bot-cta__content { padding: 0 0 0 12px; }
    .dnai-bot-cta__content h2 { overflow: visible; font-size: 15px; line-height: 21px; text-overflow: clip; white-space: normal; }
    .dnai-bot-cta__content > p { overflow: visible; font-size: 10px; line-height: 15px; text-overflow: clip; white-space: normal; }
    .dnai-bot-cta__content ul { flex-wrap: wrap; gap: 5px 12px; }
    .dnai-bot-cta__content li { font-size: 9px; line-height: 14px; white-space: normal; }
    .dnai-bot-cta__actions { grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 14px; }
    .dnai-bot-cta__button { min-height: 48px; font-size: 11px; }

    .dnai-upgrade-modal.is-open { padding: max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom)); }
    .dnai-upgrade-modal__dialog { width: min(440px, calc(100vw - 24px)); max-height: calc(100dvh - max(24px, env(safe-area-inset-top) + env(safe-area-inset-bottom))); padding: 30px 20px 22px; }
    .dnai-upgrade-modal__close { width: 44px; height: 44px; min-height: 44px; }
    .dnai-upgrade-modal h2 { font-size: 20px; }
    .dnai-upgrade-modal__actions { display: grid; grid-template-columns: minmax(0, 1fr); }
    .dnai-upgrade-action { width: 100%; min-height: 48px; }

    .dnai-runtime-placeholder,
    .dnai-premium-locked-card { min-height: 150px; }
}

@media (max-width: 599px) {
    .dnai-workspace { gap: 14px; padding: 12px; }
    .dnai-mobile-workspace-bar { grid-template-columns: 44px 30px minmax(0, 1fr) auto; padding-inline: 10px; }
    .dnai-mobile-workspace-bar__mark { width: 30px; height: 30px; }
    .dnai-mobile-workspace-bar__plan { padding-inline: 7px; font-size: 8px; }
    .dnai-tier-badge { min-width: 86px; }
    .dnai-chart-panel { height: clamp(320px, 96vw, 380px); }
    .dnai-chart-panel__footer span:last-child { display: none; }
    .dnai-feature-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dnai-feature-card { min-height: 82px; }
    .dnai-ai-analysis__header { min-height: 82px; }
    .dnai-consensus__columns { grid-template-columns: minmax(0, 1fr); gap: 10px; }
    .dnai-consensus__columns > div + div { padding: 10px 0 0; border-top: 1px solid var(--dnai-border); border-left: 0; }
    .dnai-level-groups { grid-template-columns: minmax(0, 1fr); }
    .dnai-quick-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dnai-quick-metric:last-child:nth-child(odd) { grid-column: 1 / -1; }
    .dnai-workspace__intelligence-pair { grid-template-columns: minmax(0, 1fr); gap: 14px; }
    .dnai-price-map,
    .dnai-ai-context { min-height: 0; }
    .dnai-price-map__plot { height: 316px; }
    .dnai-price-map__axis { left: 18px; }
    .dnai-price-map__side { position: static; width: 100%; gap: 5px; }
    .dnai-price-map__side--left { padding-bottom: 5px; }
    .dnai-price-map__level { height: 38px; margin-left: 28px; grid-template-columns: minmax(0, 1fr) auto; padding-inline: 10px; }
    .dnai-price-map__level::after,
    .dnai-price-map__side--right .dnai-price-map__level::after { right: 100%; left: auto; width: 28px; }
    .dnai-price-map__level span,
    .dnai-price-map__level strong { font-size: 10px; line-height: 14px; }
    .dnai-ai-context__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dnai-ai-context__metric { min-height: 76px; }
    .dnai-scenarios__grid { grid-template-columns: minmax(0, 1fr); }
    .dnai-scenario-card:last-child:nth-child(odd) { grid-column: auto; }
    .dnai-scenario-card { min-height: 204px; }
    .dnai-scenario-card__bottom { grid-template-columns: minmax(0, 1fr) 104px; }

    .dnai-signal-history,
    .dnai-market-news { min-height: 0; padding: 12px; }
    .dnai-table-wrap { overflow: visible; }
    .dnai-history-table,
    .dnai-history-table tbody { display: block; width: 100%; }
    .dnai-history-table thead { display: none; }
    .dnai-history-table tbody { display: grid; gap: 8px; }
    .dnai-history-table tr { display: grid; grid-template-columns: 1fr auto auto; grid-template-areas: "pair direction result" "time timeframe score" "entry entry entry"; gap: 7px 10px; padding: 11px; border: 1px solid rgba(23, 52, 78, .9); border-radius: 8px; background: #091b2b; }
    .dnai-history-table td { display: block; width: auto; height: auto; padding: 0; overflow: visible; border: 0; font-size: 10px; line-height: 16px; text-overflow: clip; white-space: normal; }
    .dnai-history-table td:nth-child(1) { grid-area: time; color: var(--dnai-text-muted); }
    .dnai-history-table td:nth-child(2) { grid-area: pair; color: var(--dnai-text); font-size: 11px; font-weight: 700; }
    .dnai-history-table td:nth-child(3) { grid-area: entry; }
    .dnai-history-table td:nth-child(3)::before { content: "Entry: "; color: var(--dnai-text-muted); }
    .dnai-history-table td:nth-child(4) { grid-area: timeframe; }
    .dnai-history-table td:nth-child(5) { grid-area: direction; }
    .dnai-history-table td:nth-child(6) { grid-area: score; text-align: right; }
    .dnai-history-table td:nth-child(6)::before { content: "AI "; color: var(--dnai-text-muted); }
    .dnai-history-table td:nth-child(7) { grid-area: result; text-align: right; }
    .dnai-news-table__head { display: none; }
    .dnai-news-table { display: grid; gap: 8px; }
    .dnai-news-row { display: grid; min-height: 76px; grid-template-columns: minmax(0, 1fr) auto 44px; grid-template-areas: "title impact favorite" "time impact favorite"; gap: 4px 8px; padding: 10px; border: 1px solid rgba(23, 52, 78, .9); border-radius: 8px; background: #091b2b; }
    .dnai-news-row time { grid-area: time; padding: 0; color: var(--dnai-text-muted); }
    .dnai-news-row__title { grid-area: title; padding: 0; overflow: visible; font-size: 11px; line-height: 16px; text-overflow: clip; white-space: normal; }
    .dnai-news-row > span:nth-child(3) { grid-area: impact; align-self: center; }
    .dnai-news-row .dnai-favorite { grid-area: favorite; align-self: center; }
    .dnai-tone-badge--impact-high,
    .dnai-tone-badge--impact-medium,
    .dnai-tone-badge--impact-low { min-height: 26px; }
    .dnai-bot-cta { grid-template-columns: 72px minmax(0, 1fr); padding: 14px; }
    .dnai-bot-cta__visual { height: 74px; }
    .dnai-bot-cta__crown { top: 22px; width: 22px; }
    .dnai-bot-cta__robot { top: 11px; left: 26px; width: 48px; height: 48px; }
    .dnai-bot-cta__robot svg { width: 40px; height: 40px; }
    .dnai-bot-cta__actions { grid-template-columns: minmax(0, 1fr); }
}

/* UI-BOX-01-03: Figma hierarchy with readable technical, signal and history content. */
.dnai-trend-card p,
.dnai-signal-card__head p,
.dnai-level-group h3 {
    font-size: 12px;
    line-height: 1.45;
    letter-spacing: .02em;
}
.dnai-trend-card > strong {
    margin-top: 8px;
    font-size: clamp(22px, 1.45vw, 28px);
    line-height: 1.25;
}
.dnai-ai-analysis__body[data-trend-direction="bearish"] .dnai-trend-card > strong { color: var(--dnai-danger-bright); }
.dnai-ai-analysis__body[data-trend-direction="sideways"] .dnai-trend-card > strong,
.dnai-ai-analysis__body[data-trend-direction="unclear"] .dnai-trend-card > strong { color: var(--dnai-gold); }
.dnai-trend-card > span {
    margin-top: 7px;
    font-size: 13px !important;
    line-height: 1.5;
}
.dnai-confirmations {
    gap: 6px;
    margin-top: 12px;
}
.dnai-confirmations small {
    height: 28px;
    font-size: 12px;
    line-height: 1;
}
.dnai-consensus { padding: 14px; overflow: visible; }
.dnai-consensus h3 {
    font-size: 13px;
    line-height: 1.4;
}
.dnai-consensus h3 span { color: var(--dnai-success-bright); }
.dnai-consensus__columns { gap: 14px; margin-top: 10px; }
.dnai-consensus__columns > div { gap: 6px; }
.dnai-consensus__columns > div > div { display: grid; gap: 6px; }
.dnai-consensus__columns strong {
    font-size: 12px;
    line-height: 1.4;
}
.dnai-consensus__columns span {
    gap: 7px;
    font-size: 13px !important;
    line-height: 1.5;
}
.dnai-consensus__columns em { color: var(--dnai-text-secondary); font-style: normal; }
.dnai-signal-card { padding: 13px 14px; }
.dnai-signal-card__head span {
    min-height: 26px;
    height: auto;
    padding: 4px 10px;
    font-size: 11px;
    line-height: 1.35;
    text-align: center;
}
.dnai-signal-card [data-dnai-signal-direction] {
    margin-top: 5px;
    font-size: clamp(24px, 1.55vw, 30px);
    line-height: 1.25;
}
.dnai-signal-card[data-signal-direction="sell"] [data-dnai-signal-direction] { color: var(--dnai-danger-bright); }
.dnai-signal-card[data-signal-direction="buy"] [data-dnai-signal-direction] { color: var(--dnai-success-bright); }
.dnai-signal-card[data-showing-last="true"] {
    border-color: rgba(245, 158, 11, .45);
    background: rgba(66, 48, 12, .38);
}
.dnai-signal-card[data-showing-last="true"] .dnai-signal-card__head span {
    border-color: rgba(245, 158, 11, .58);
    color: var(--dnai-gold);
}
.dnai-signal-card dl { gap: 8px 14px; margin-top: 10px; }
.dnai-signal-card dl div { align-items: baseline; }
.dnai-signal-card dt,
.dnai-signal-card dd {
    overflow: visible;
    font-size: 13px !important;
    line-height: 1.45;
    text-overflow: clip;
}
.dnai-signal-card [data-dnai-signal-result][data-result-tone="positive"] { color: var(--dnai-success-bright); }
.dnai-signal-card [data-dnai-signal-result][data-result-tone="negative"] { color: var(--dnai-danger-bright); }
.dnai-signal-card [data-dnai-signal-result][data-result-tone="neutral"] { color: var(--dnai-text-secondary); }
.dnai-history-table th { font-size: 12px; line-height: 1.45; }
.dnai-history-table td { font-size: 13px !important; line-height: 1.5; }
.dnai-history-table tr[data-signal-direction="buy"] td:nth-child(5) { color: var(--dnai-success-bright); font-weight: 700; }
.dnai-history-table tr[data-signal-direction="sell"] td:nth-child(5) { color: var(--dnai-danger-bright); font-weight: 700; }

@media (max-width: 1139px) {
    .dnai-trend-card > strong { font-size: 24px; }
    .dnai-trend-card > span,
    .dnai-consensus__columns span,
    .dnai-signal-card dt,
    .dnai-signal-card dd,
    .dnai-history-table td { font-size: 12.5px; }
    .dnai-consensus__columns { grid-template-columns: 1fr; }
    .dnai-consensus__columns > div + div {
        padding: 10px 0 0;
        border-top: 1px solid var(--dnai-border);
        border-left: 0;
    }
}

/* FRONTEND-RESTORE-02: approved DEV07 hierarchy; backend only binds approved fields. */
@media (min-width: 1140px) {
    .dnai-workspace__hero {
        height: 510px;
        grid-template-columns: minmax(0, 780fr) minmax(0, 874fr);
    }
    .dnai-hero-chart,
    .dnai-hero-analysis { height: 510px; }
}

/* FRONTEND-POLISH-03 + CHART-UX-02: readability without changing the locked hierarchy. */
.dnai-candle-countdown {
    color: var(--dnai-text-secondary);
    font-size: 11px;
    font-variant-numeric: tabular-nums;
    line-height: 1.45;
    white-space: nowrap;
}
.dnai-candle-countdown[data-countdown-state="active"] { color: #93c5fd; }
.dnai-candle-countdown[data-countdown-state="rollover"],
.dnai-candle-countdown[data-countdown-state="stale"] { color: var(--dnai-warning); }
.dnai-candle-countdown[data-countdown-state="offline"] { color: #fb7185; }

.dnai-ai-analysis__header h2,
.dnai-section-heading h2,
.dnai-price-map h2,
.dnai-ai-context h2,
.dnai-decision-header h2 {
    color: var(--dnai-text);
    font-size: 18px;
    line-height: 1.35;
}
.dnai-ai-score > strong { font-size: 40px; line-height: 1; }
.dnai-ai-score > span,
.dnai-ai-score b { font-size: 11px; line-height: 1.45; }
.dnai-ai-summary { color: var(--dnai-text-secondary); font-size: 12px; line-height: 1.5; }
.dnai-confidence strong { font-size: 20px; line-height: 1.2; }
.dnai-confidence span { color: var(--dnai-text-secondary); font-size: 10px; line-height: 1.4; }

.dnai-trend-card p,
.dnai-signal-card p,
.dnai-consensus h3,
.dnai-level-group h3 { font-size: 11px; line-height: 1.45; }
.dnai-trend-card > strong { font-size: 22px; line-height: 1.3; }
.dnai-trend-card > span { color: var(--dnai-text-secondary); font-size: 12px; line-height: 1.5; }
.dnai-confirmations small { font-size: 11px; line-height: 1.4; }
.dnai-signal-card > strong { font-size: 20px; line-height: 1.3; }
.dnai-signal-card[data-signal-state="no_trade"] [data-dnai-signal-levels] { display: none; }
.dnai-signal-card[data-signal-state="no_trade"] { align-content: start; }
.dnai-signal-card dt { font-size: 11px; }
.dnai-signal-card dd { font-size: 12px; }
.dnai-consensus__columns strong,
.dnai-consensus__columns span,
.dnai-level-group small { font-size: 11px; line-height: 1.5; }
.dnai-level-group span { font-size: 16px; line-height: 1.4; }
.dnai-quick-metric span { font-size: 11px; line-height: 1.45; }
.dnai-quick-metric strong { font-size: 16px; line-height: 1.4; }
.dnai-quick-metric small { font-size: 11px; line-height: 1.45; }

.dnai-price-map header p,
.dnai-ai-context header p,
.dnai-decision-header p { color: var(--dnai-text-secondary); font-size: 12px; line-height: 1.5; }
.dnai-price-map__level span,
.dnai-price-map__level strong { font-size: 11px; line-height: 1.4; }
.dnai-ai-context__metric span { color: var(--dnai-text-secondary); font-size: 11px; line-height: 1.45; }
.dnai-ai-context__metric strong { font-size: 16px; line-height: 1.35; }
.dnai-ai-context__metric small { color: var(--dnai-text-secondary); font-size: 11px; line-height: 1.45; }
.dnai-ai-context__note strong { font-size: 11px; line-height: 1.45; }
.dnai-ai-context__note li { color: var(--dnai-text-secondary); font-size: 12px; line-height: 1.5; }

.dnai-scenario-card { gap: 6px; }
.dnai-scenario-card__header h3 { font-size: 14px; line-height: 1.4; }
.dnai-tone-badge { min-height: 24px; padding-inline: 8px; font-size: 10px; line-height: 1.35; }
.dnai-scenario-card__condition,
.dnai-scenario-card__context p { color: var(--dnai-text-secondary); font-size: 12px; line-height: 1.45; }
.dnai-scenario-card__bottom { grid-template-columns: minmax(0, 1fr); }
.dnai-scenario-card__metrics { min-height: 42px; }
.dnai-scenario-card__metrics span { font-size: 10px; line-height: 1.4; }
.dnai-scenario-card__metrics strong { font-size: 12px; line-height: 1.4; }

.dnai-history-table th,
.dnai-history-table td { font-size: 12px; line-height: 1.45; }
.dnai-section-heading a,
.dnai-section-heading button { font-size: 11px; line-height: 1.45; }

@media (max-width: 1139px) {
    .dnai-ai-analysis__header h2,
    .dnai-section-heading h2,
    .dnai-price-map h2,
    .dnai-ai-context h2,
    .dnai-decision-header h2 { font-size: 17px; line-height: 1.35; }
    .dnai-market-state { align-items: flex-end; }
    .dnai-candle-countdown { font-size: 10px; }
    .dnai-scenario-card__header h3 { font-size: 14px; }
    .dnai-scenario-card__condition,
    .dnai-scenario-card__context p { font-size: 12px; line-height: 1.5; }
    .dnai-history-table th,
    .dnai-history-table td { font-size: 12px; }
}

@media (max-width: 599px) {
    .dnai-market-state { min-width: 128px; }
    .dnai-candle-countdown { max-width: 150px; overflow: hidden; text-overflow: ellipsis; }
    .dnai-signal-card > strong { font-size: 20px; }
    .dnai-scenario-card { min-height: 0; }
    .dnai-scenario-card__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dnai-history-table td { font-size: 12px; line-height: 1.5; }
}

.dnai-ai-analysis__header-content {
    display: contents;
}

.dnai-ai-analysis__body-content {
    display: contents;
}

.dnai-ai-analysis [data-dnai-component-state] {
    display: none;
}

.dnai-ai-analysis [data-ui-state="loading"] > [data-dnai-component-state],
.dnai-ai-analysis [data-ui-state="locked"] > [data-dnai-component-state],
.dnai-ai-analysis [data-ui-state="empty"] > [data-dnai-component-state],
.dnai-ai-analysis [data-ui-state="offline"] > [data-dnai-component-state],
.dnai-ai-analysis [data-ui-state="error"] > [data-dnai-component-state] {
    display: grid;
    width: 100%;
    min-height: 72px;
    place-items: center;
    padding: 12px;
    color: var(--dnai-text-secondary);
    font-size: 10px;
    line-height: 15px;
    text-align: center;
}

.dnai-ai-analysis [data-ui-state="loading"] > [data-dnai-component-content],
.dnai-ai-analysis [data-ui-state="locked"] > [data-dnai-component-content],
.dnai-ai-analysis [data-ui-state="empty"] > [data-dnai-component-content],
.dnai-ai-analysis [data-ui-state="offline"] > [data-dnai-component-content],
.dnai-ai-analysis [data-ui-state="error"] > [data-dnai-component-content] {
    display: none;
}

.dnai-ai-analysis__header[data-ui-state="locked"],
.dnai-ai-analysis__header[data-ui-state="loading"] {
    align-items: center;
    padding-top: 0;
}

.dnai-ai-analysis__body[data-ui-state="locked"],
.dnai-ai-analysis__body[data-ui-state="loading"],
.dnai-ai-analysis__body[data-ui-state="empty"],
.dnai-ai-analysis__body[data-ui-state="offline"],
.dnai-ai-analysis__body[data-ui-state="error"] {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    place-items: stretch;
}

.dnai-ai-summary {
    max-width: 360px;
    margin-top: 4px !important;
    overflow: hidden;
    color: var(--dnai-text-muted);
    font-size: 8px;
    line-height: 12px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dnai-signal-card__reason {
    min-height: 25px;
    margin: 1px 0 2px !important;
    overflow: hidden;
    color: var(--dnai-text-secondary) !important;
    font-size: 8px !important;
    line-height: 12px !important;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.dnai-consensus__columns b,
.dnai-consensus__columns em {
    color: inherit;
    font-style: normal;
    font-weight: 500;
}

.dnai-signal-card [data-ui-state="locked"] > [data-dnai-component-state] { min-height: 110px; }

.dnai-coming-soon {
    position: relative;
}

.dnai-coming-soon__body {
    display: flex;
    min-width: 0;
    min-height: 0;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 5px;
    padding: 16px;
    color: var(--dnai-text-muted);
    text-align: center;
}

.dnai-coming-soon__body > span {
    color: var(--dnai-primary);
    font-size: 22px;
    line-height: 1;
}

.dnai-coming-soon__body strong {
    color: var(--dnai-text-secondary);
    font-size: 11px;
    line-height: 16px;
}

.dnai-coming-soon__body p {
    max-width: 420px;
    color: var(--dnai-text-muted);
    font-size: 9px;
    line-height: 14px;
}

.dnai-scenarios.dnai-coming-soon {
    grid-template-rows: 39px minmax(0, 1fr);
}

.dnai-market-news.dnai-coming-soon {
    display: grid;
    grid-template-rows: 28px minmax(0, 1fr);
    padding: 10px 16px;
}

.dnai-price-map.dnai-coming-soon,
.dnai-ai-context.dnai-coming-soon {
    display: grid;
    grid-template-rows: 52px minmax(0, 1fr);
}

.dnai-price-map.dnai-coming-soon > header,
.dnai-ai-context.dnai-coming-soon > header {
    position: static;
    padding: 12px 14px 0;
}

.dnai-dev-fixture-notice,
[data-data-mode="demo"] .dnai-state-badge { display: none; }

@media (max-width: 1139px) {
    .dnai-ai-analysis__header-content,
    .dnai-ai-analysis__body-content { display: contents; }
    .dnai-ai-analysis__header[data-ui-state="locked"],
    .dnai-ai-analysis__header[data-ui-state="loading"] { min-height: 78px; }
    .dnai-ai-summary { max-width: min(62vw, 520px); font-size: 9px; line-height: 13px; }
    .dnai-signal-card__reason { min-height: 0; font-size: 10px !important; line-height: 15px !important; }
    .dnai-price-map.dnai-coming-soon,
    .dnai-ai-context.dnai-coming-soon { min-height: 180px; grid-template-rows: auto minmax(110px, 1fr); }
    .dnai-market-news.dnai-coming-soon { min-height: 180px; }
}

.dnai-scenarios[data-data-mode="demo"] { position: relative; }
.dnai-scenarios[data-data-mode="demo"] .dnai-decision-header > .dnai-state-badge { position: absolute; top: 10px; right: 15px; display: inline-flex; }
.dnai-scenarios[data-data-mode="demo"] .dnai-decision-header { padding-right: 112px; }
@media (max-width: 599px) {
    .dnai-scenarios[data-data-mode="demo"] .dnai-decision-header { min-height: 50px; padding-right: 104px; }
}

@media (max-width: 374px) {
    .dnai-mobile-workspace-bar__mark { display: none; }
    .dnai-mobile-workspace-bar { grid-template-columns: 44px minmax(0, 1fr) auto; }
    .dnai-feature-cards { grid-template-columns: minmax(0, 1fr); }
    .dnai-signal-card dl { grid-template-columns: minmax(0, 1fr); }
    .dnai-scenario-card__bottom { grid-template-columns: minmax(0, 1fr); }
    .dnai-scenario-card__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* DEV-09: single shared header + bottom navigation for every viewport below desktop. */
.dnai-bottom-nav { display: none; }

@media (max-width: 1139px) {
    :root { --dnai-mobile-bottom-nav-height: 68px; }

    body.dnai-indicator-route,
    body.dnai-indicator-route #wrapper,
    body.dnai-indicator-route #main,
    .dnai-app,
    .dnai-shell,
    .dnai-main,
    .dnai-workspace,
    .dnai-workspace > *,
    .dnai-workspace__hero > *,
    .dnai-workspace__intelligence > *,
    .dnai-workspace__history > * {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
    }

    body.dnai-indicator-route .dn-home-header {
        position: sticky;
        z-index: 95;
        top: 0;
        width: 100%;
        max-width: 100%;
        height: 64px;
        overflow: clip;
    }
    body.dnai-indicator-route .dn-home-header__inner,
    body.dnai-indicator-route .dn-home-header .dn-home-shell {
        width: 100%;
        max-width: 100%;
        height: 64px;
        margin: 0;
        padding: 0 12px;
        gap: 8px;
        box-sizing: border-box;
    }
    body.dnai-indicator-route .dn-home-logo {
        width: auto;
        min-width: 0;
        height: 64px;
        flex: 1 1 auto;
    }
    body.dnai-indicator-route .dn-home-logo__mark {
        top: 50%;
        left: 0;
        transform: translateY(-50%);
    }
    body.dnai-indicator-route .dn-home-logo__copy {
        top: 50%;
        right: 0;
        left: 49px;
        width: auto;
        transform: translateY(-50%);
    }
    body.dnai-indicator-route .dn-home-logo__copy strong,
    body.dnai-indicator-route .dn-home-logo__copy small {
        width: auto;
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    body.dnai-indicator-route .dn-home-header__actions {
        width: auto;
        min-width: 0;
        flex: 0 0 auto;
        gap: 6px;
    }
    body.dnai-indicator-route .dn-home-menu-toggle,
    body.dnai-indicator-route .dn-home-mobile-menu { display: none !important; }
    body.dnai-indicator-route .dn-home-account {
        width: 44px;
        min-width: 44px;
        flex: 0 0 44px;
        height: 44px;
        min-height: 44px;
        gap: 0;
        padding: 3px;
        align-items: center;
        justify-content: center;
        border: 1px solid #dbe7f7;
        border-radius: 22px;
        background: #f7faff;
    }
    body.dnai-indicator-route .dn-home-account__avatar {
        width: 36px;
        height: 36px;
        flex-basis: 36px;
    }
    body.dnai-indicator-route .dn-home-account__status {
        display: none;
    }
    body.dnai-indicator-route .dn-home-header .dn-home-trial {
        width: 74px;
        min-width: 74px;
        min-height: 40px;
    }

    .dnai-mobile-workspace-bar,
    .dnai-drawer-backdrop { display: none !important; }
    .dnai-sidebar { display: none; }
    .dnai-main { padding-bottom: calc(var(--dnai-mobile-bottom-nav-height) + env(safe-area-inset-bottom) + 16px); }

    .dnai-workspace__hero { display: flex; }
    .dnai-hero-chart { display: contents; }
    .dnai-chart-panel { order: 1; }
    .dnai-hero-analysis { order: 2; }
    .dnai-feature-cards { order: 3; }
    #dnai-overview,
    #dnai-signal,
    #dnai-history,
    #dnai-news { scroll-margin-top: 76px; }

    .dnai-price-map,
    .dnai-price-map__plot,
    .dnai-price-map__side,
    .dnai-price-map__level { max-width: 100%; box-sizing: border-box; }
    .dnai-price-map__plot {
        position: relative;
        inset: auto;
        width: auto;
        height: 316px;
        margin: 10px 14px 14px;
        overflow: visible;
    }
    .dnai-price-map__axis {
        top: 0;
        bottom: 0;
        left: 10px;
    }
    .dnai-price-map__side {
        position: static;
        width: 100%;
        gap: 5px;
    }
    .dnai-price-map__side--left { padding-bottom: 5px; }
    .dnai-price-map__level {
        width: auto;
        height: 38px;
        margin-left: 34px;
        padding-inline: 10px;
    }
    .dnai-price-map__level::after,
    .dnai-price-map__side--left .dnai-price-map__level::after,
    .dnai-price-map__side--right .dnai-price-map__level::after {
        right: 100%;
        left: auto;
        width: 24px;
    }
    .dnai-price-map__level span,
    .dnai-price-map__level strong {
        overflow: visible;
        font-size: 10px;
        line-height: 14px;
        text-overflow: clip;
    }

    .dnai-bottom-nav {
        position: fixed;
        z-index: 100;
        right: 0;
        bottom: 0;
        left: 0;
        display: grid;
        width: auto;
        max-width: 100%;
        min-height: calc(var(--dnai-mobile-bottom-nav-height) + env(safe-area-inset-bottom));
        grid-template-columns: repeat(5, minmax(0, 1fr));
        padding: 4px 6px env(safe-area-inset-bottom);
        border-top: 1px solid var(--dnai-border-strong);
        background: rgba(7, 19, 33, .97);
        box-shadow: 0 -8px 24px rgba(0, 0, 0, .28);
        backdrop-filter: blur(12px);
        box-sizing: border-box;
    }
    .dnai-bottom-nav a {
        position: relative;
        display: grid;
        min-width: 0;
        min-height: 60px;
        grid-template-rows: 26px 16px;
        align-content: center;
        justify-items: center;
        gap: 2px;
        padding: 4px 2px;
        border-radius: 8px;
        color: var(--dnai-text-muted);
        font-size: clamp(8px, 2.4vw, 10px);
        line-height: 13px;
        font-weight: 600;
        text-align: center;
        white-space: nowrap;
    }
    .dnai-bottom-nav a::after {
        position: absolute;
        right: 18%;
        bottom: 1px;
        left: 18%;
        height: 2px;
        transform: scaleX(0);
        border-radius: 2px;
        background: var(--dnai-primary);
        content: "";
    }
    .dnai-bottom-nav a.is-active {
        color: #fff;
        background: rgba(23, 105, 255, .14);
    }
    .dnai-bottom-nav a.is-active::after { transform: scaleX(1); }
    .dnai-bottom-nav a:focus-visible { outline: 2px solid var(--dnai-focus-ring); outline-offset: -2px; }
    .dnai-bottom-nav__icon {
        display: grid;
        width: 26px;
        height: 26px;
        place-items: center;
    }
    .dnai-bottom-nav__icon svg {
        width: 19px;
        height: 19px;
        fill: none;
        stroke: currentColor;
        stroke-linecap: round;
        stroke-linejoin: round;
        stroke-width: 1.8;
    }
    .dnai-bottom-nav__icon svg rect { fill: none; }
}

@media (max-width: 374px) {
    body.dnai-indicator-route .dn-home-logo__copy small { display: none; }
    body.dnai-indicator-route .dn-home-logo__copy strong { font-size: 14px; line-height: 18px; }
    body.dnai-indicator-route .dn-home-header .dn-home-trial { width: 70px; min-width: 70px; }
}
.dnai-dev-fixture-notice{margin:8px 12px;padding:8px 12px;border:1px solid #d97706;border-radius:8px;background:#fffbeb;color:#92400e;font-size:12px;font-weight:700;letter-spacing:.03em;text-align:center}
.dnai-ai-context-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 14px 12px}.dnai-ai-warning-box{margin:0 14px 12px;padding:12px;border:1px solid rgba(245,158,11,.32);border-radius:10px;background:rgba(245,158,11,.06)}.dnai-ai-warning-box>strong{display:block;margin-bottom:6px;font-size:11px;letter-spacing:.06em}.dnai-ai-warning-box ul{display:grid;gap:4px;margin:0;padding-left:18px;color:var(--dnai-text-muted);font-size:12px}.dnai-analysis-divider{height:1px;margin:4px 14px 12px;border:0;background:var(--dnai-border)}.dnai-technical-subheader{padding-top:0}.dnai-ai-analysis[data-ai-access="visitor"] [data-dnai-ai-score],.dnai-ai-analysis[data-ai-access="visitor"] [data-dnai-ai-confidence]{filter:none}
@media(max-width:700px){.dnai-ai-context-grid{grid-template-columns:1fr}.dnai-ai-warning-box{margin-inline:10px}}

/* FRONTEND-FIX-01: one component root, one visible state, one renderer. */
.dnai-analysis-stack {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--dnai-space-4, 16px);
    min-width: 0;
}
.dnai-analysis-stack > [data-dnai-component="technical"] { grid-column: 1 / -1; }
.dnai-workspace__hero { height: auto; grid-template-columns: minmax(0, 1fr); }
.dnai-hero-analysis { height: auto; }
.dnai-technical-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.dnai-chart-panel { grid-template-rows: 43px minmax(0, 1fr) 32px; }
.dnai-chart-panel__footer { align-items: center; }
.dnai-component {
    display: grid;
    height: auto;
    min-height: 0;
    grid-template-rows: auto auto;
    gap: var(--dnai-space-4, 16px);
    min-width: 0;
    padding: var(--dnai-space-5, 20px);
    border: 1px solid var(--dnai-border);
    border-radius: var(--dnai-radius-md, 12px);
    background: var(--dnai-surface-elevated, #071827);
    overflow: visible;
}
.dnai-component__header {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--dnai-space-4, 16px);
}
.dnai-component__header > div:first-child { min-width: 0; }
.dnai-component__eyebrow,
.dnai-component__header h2,
.dnai-metric-card p,
.dnai-metric-card strong,
.dnai-metric-card span,
.dnai-component__note { margin: 0; overflow-wrap: anywhere; }
.dnai-component__eyebrow { margin-bottom: 4px; color: var(--dnai-text-muted); font-size: 10px; line-height: 1.5; letter-spacing: .08em; text-transform: uppercase; }
.dnai-component__header h2 { color: var(--dnai-text-primary); font-size: clamp(15px, 1.2vw, 19px); line-height: 1.35; }
.dnai-state-badge { flex: 0 0 auto; max-width: 44%; padding: 5px 9px; border: 1px solid rgba(56,189,248,.32); border-radius: 999px; color: #93c5fd; font-size: 10px; line-height: 1.35; text-align: center; }
.dnai-component__state { display: none; min-height: 88px; place-items: center; padding: 16px; border: 1px dashed rgba(148,163,184,.28); border-radius: 10px; color: var(--dnai-text-muted); text-align: center; line-height: 1.55; }
.dnai-component[data-ui-state="loading"] > .dnai-component__state,
.dnai-component[data-ui-state="locked"] > .dnai-component__state,
.dnai-component[data-ui-state="empty"] > .dnai-component__state,
.dnai-component[data-ui-state="offline"] > .dnai-component__state,
.dnai-component[data-ui-state="error"] > .dnai-component__state { display: grid; }
.dnai-component[data-ui-state="loading"] > [data-dnai-component-content],
.dnai-component[data-ui-state="locked"] > [data-dnai-component-content],
.dnai-component[data-ui-state="empty"] > [data-dnai-component-content],
.dnai-component[data-ui-state="offline"] > [data-dnai-component-content],
.dnai-component[data-ui-state="error"] > [data-dnai-component-content] { display: none; }
.dnai-technical-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--dnai-space-3, 12px); }
.dnai-metric-card { display: grid; align-content: start; gap: 7px; min-width: 0; min-height: 112px; padding: var(--dnai-space-4, 16px); border: 1px solid rgba(148,163,184,.18); border-radius: 10px; background: rgba(9,27,43,.72); }
.dnai-metric-card p { color: var(--dnai-text-muted); font-size: 10px; line-height: 1.5; letter-spacing: .05em; text-transform: uppercase; }
.dnai-metric-card strong { color: var(--dnai-text-primary); font-size: 18px; line-height: 1.35; }
.dnai-metric-card span { color: var(--dnai-text-muted); font-size: 11px; line-height: 1.55; }
.dnai-signal-summary { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; margin-bottom: 12px; }
.dnai-signal-summary strong { font-size: 26px; line-height: 1.25; }
.dnai-signal-summary span { color: var(--dnai-text-muted); font-size: 12px; line-height: 1.5; }
.dnai-component__note { padding: 10px 12px; border-radius: 8px; background: rgba(56,189,248,.06); color: var(--dnai-text-muted); font-size: 11px; line-height: 1.55; }
.dnai-chart-canvas-wrap { padding: 0; }
.dnai-chart-canvas-wrap canvas { touch-action: none; }

@media (max-width: 1139px) {
    .dnai-analysis-stack { grid-template-columns: minmax(0, 1fr); }
    .dnai-analysis-stack > [data-dnai-component="technical"] { grid-column: auto; }
    .dnai-technical-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dnai-component { padding: 16px; }
}
@media (max-width: 599px) {
    .dnai-component__header { align-items: flex-start; }
    .dnai-state-badge { max-width: 42%; }
    .dnai-technical-grid { grid-template-columns: minmax(0, 1fr); }
    .dnai-metric-card { min-height: 0; }
}

@media (min-width: 1140px) {
    .dnai-workspace__hero {
        height: 510px;
        grid-template-columns: minmax(0, 780fr) minmax(0, 874fr);
    }
    .dnai-hero-chart,
    .dnai-hero-analysis { height: 510px; }
}

/* Final cascade guard for FRONTEND-POLISH-03. */
.dnai-signal-card [data-dnai-signal-direction] {
    font-size: 20px;
    line-height: 1.3;
}
.dnai-ai-summary {
    max-width: 440px;
    color: var(--dnai-text-secondary);
    font-size: 12px;
    line-height: 1.5;
}
.dnai-signal-card__reason {
    min-height: 0;
    color: var(--dnai-text-secondary) !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
    white-space: normal;
}
@media (min-width: 1140px) {
    .dnai-workspace__intelligence {
        height: auto;
        min-height: 310px;
        align-items: stretch;
    }
    .dnai-workspace__intelligence-pair { align-items: stretch; }
    .dnai-price-map.dnai-component,
    .dnai-ai-context.dnai-component,
    .dnai-scenarios.dnai-component { height: 310px; min-height: 310px; }
    .dnai-price-map.dnai-component { display: block; padding: 0; }
    .dnai-price-map.dnai-component .dnai-price-map__plot { inset: 68px 16px 12px; }
    .dnai-ai-context.dnai-component { grid-template-rows: auto auto auto; }
    .dnai-ai-context.dnai-component .dnai-ai-context__metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-auto-rows: minmax(70px, auto);
        align-content: start;
    }
    .dnai-ai-context.dnai-component .dnai-ai-context__metric {
        min-height: 70px;
        grid-template-rows: auto auto auto;
    }
    .dnai-scenarios.dnai-component { overflow: visible; }
    .dnai-scenarios.dnai-component .dnai-scenarios__grid { height: auto; }
    .dnai-scenarios.dnai-component .dnai-scenario-card {
        height: auto;
        min-height: 210px;
        grid-template-rows: auto auto auto 1fr;
        padding-bottom: 10px;
    }
}
@media (max-width: 1139px) {
    .dnai-ai-summary { font-size: 12px; line-height: 1.5; }
    .dnai-signal-card__reason { font-size: 12px !important; line-height: 1.5 !important; }
    .dnai-price-map.dnai-component { display: block; min-height: 330px; padding: 0; }
    .dnai-ai-context.dnai-component { padding: 0 14px 14px; }
    .dnai-ai-context.dnai-component .dnai-ai-context__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dnai-price-map__level span,
    .dnai-price-map__level strong { font-size: 11px; line-height: 1.45; }
}

/* FRONTEND-FIGMA-ALIGN-04: approved Premium workspace proportions and readable business text. */
.dnai-signal-memory { display: grid; gap: 5px; margin: 10px 0 12px; padding: 10px 12px; border: 1px solid rgba(245,158,11,.38); border-radius: 8px; background: rgba(245,158,11,.07); }
.dnai-signal-memory[hidden] { display: none; }
.dnai-signal-memory strong { color: #fbbf24; font-size: 12px; line-height: 1.45; }
.dnai-signal-memory span { color: var(--dnai-text-secondary); font-size: 12px; line-height: 1.5; }
.dnai-signal-memory b { width: fit-content; font-size: 14px; line-height: 1.4; }
.dnai-signal-memory b[data-result-tone="positive"], .dnai-history-table tr[data-result-tone="positive"] td:last-child { color: #4ade80; }
.dnai-signal-memory b[data-result-tone="negative"], .dnai-history-table tr[data-result-tone="negative"] td:last-child { color: #fb7185; }
.dnai-signal-memory b[data-result-tone="neutral"], .dnai-history-table tr[data-result-tone="neutral"] td:last-child { color: #cbd5e1; }
.dnai-history-table td:last-child { overflow: visible; font-weight: 700; text-overflow: clip; white-space: nowrap; }
.dnai-price-map__level span, .dnai-price-map__level strong,
.dnai-ai-context__metric span, .dnai-ai-context__metric strong, .dnai-ai-context__metric small,
.dnai-ai-context__note li, .dnai-scenario-card__context p,
.dnai-trade-levels dt, .dnai-trade-levels dd,
.dnai-scenario-card__metrics span, .dnai-scenario-card__metrics strong { font-size: 13px; line-height: 1.5; }
.dnai-scenario-card__header h3 { overflow: visible; font-size: 14px; line-height: 1.4; text-overflow: clip; white-space: normal; }
.dnai-history-table td { font-size: 12.5px; line-height: 1.5; }

@media (min-width: 1140px) {
    .dnai-workspace__hero { height: auto; min-height: 510px; align-items: stretch; }
    .dnai-hero-chart { height: auto; min-height: 510px; grid-template-rows: minmax(430px, 1fr) 68px; }
    .dnai-hero-analysis { height: auto; min-height: 510px; }
    .dnai-chart-panel { height: 100%; }
    .dnai-ai-analysis { height: auto; grid-template-rows: auto auto auto; }
    .dnai-ai-analysis__left { grid-template-rows: minmax(178px, auto) auto; }
    .dnai-signal-card { height: auto; overflow: visible; }
    .dnai-workspace__intelligence { height: auto; min-height: 218px; }
    .dnai-price-map.dnai-component, .dnai-ai-context.dnai-component, .dnai-scenarios.dnai-component { height: auto; min-height: 218px; }
    .dnai-price-map.dnai-component .dnai-price-map__plot { inset: 68px 16px 12px; }
    .dnai-scenarios.dnai-component .dnai-scenario-card { min-height: 156px; }
}
.dnai-signal-history, .dnai-market-news { overflow: visible; }
.dnai-signal-card[data-signal-state="no_trade"][data-showing-last="true"] [data-dnai-signal-levels] { display: grid; }
@media (max-width: 599px) {
    .dnai-scenario-card__context p, .dnai-trade-levels dt, .dnai-trade-levels dd,
    .dnai-scenario-card__metrics span, .dnai-scenario-card__metrics strong { font-size: 12.5px; }
    .dnai-history-table td { font-size: 12.5px; }
    .dnai-signal-memory { padding: 10px; }
}

/* UI-FIX-05A/05B + CHART-UX-03: Figma geometry, bounded history and price countdown. */
.dnai-signal-card dl {
    grid-template-columns: minmax(0, 1fr);
    gap: 7px;
}
.dnai-signal-card dl div,
.dnai-signal-card dl div:first-child {
    grid-column: auto;
    min-height: 21px;
    align-items: baseline;
}
.dnai-signal-card dt,
.dnai-signal-card dd {
    font-size: 13px !important;
    line-height: 1.5;
}
.dnai-signal-card dd { text-align: right; }
.dnai-level-group { padding: 10px 12px; }
.dnai-level-group > div {
    grid-template-columns: 30px minmax(74px, .8fr) minmax(96px, 1.2fr);
    align-items: center;
    gap: 7px;
    padding: 6px 0;
}
.dnai-level-group strong,
.dnai-level-group span,
.dnai-level-group small {
    grid-row: auto;
    overflow: visible;
    font-size: 13px;
    line-height: 1.45;
    text-overflow: clip;
}
.dnai-level-group span { color: var(--dnai-success-bright); }
.dnai-level-group--resistance span { color: var(--dnai-danger-bright); }
.dnai-level-group small { text-align: right; }

.dnai-scenarios.dnai-component {
    min-height: 310px;
}
.dnai-scenarios.dnai-component .dnai-scenarios__grid {
    height: auto;
}
.dnai-scenarios.dnai-component .dnai-scenario-card {
    min-height: 238px;
    height: auto;
    grid-template-rows: auto auto auto minmax(0, 1fr);
    gap: 7px;
    padding: 11px;
}
.dnai-scenario-card--wait { border-color: rgba(56, 189, 248, .42); }
.dnai-scenario-card__condition,
.dnai-scenario-card__disclaimer {
    overflow: visible;
    margin: 0;
    color: var(--dnai-text-secondary);
    font-size: 13px;
    line-height: 1.45;
    text-overflow: clip;
    white-space: normal;
}
.dnai-scenario-card__disclaimer {
    color: var(--dnai-text-muted);
    font-size: 12px;
}
.dnai-scenario-card__bottom {
    grid-template-columns: minmax(0, 1fr) 118px;
    align-items: stretch;
    gap: 10px;
}
.dnai-trade-levels {
    grid-template-columns: minmax(0, 1fr);
    grid-auto-rows: minmax(21px, auto);
    gap: 2px;
}
.dnai-trade-levels > div,
.dnai-trade-levels > .dnai-trade-levels__entry {
    grid-column: auto;
    grid-template-columns: 42px minmax(0, 1fr);
    align-items: baseline;
    gap: 8px;
}
.dnai-trade-levels dt,
.dnai-trade-levels dd {
    overflow: visible;
    font-size: 13px;
    line-height: 1.5;
    text-overflow: clip;
}
.dnai-trade-levels dd { text-align: right; }
.dnai-scenario-card__metrics {
    height: auto;
    min-height: 0;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: repeat(2, minmax(48px, 1fr));
    gap: 7px;
    margin: 0;
}
.dnai-scenario-card__metrics span,
.dnai-scenario-card__metrics strong {
    overflow: visible;
    font-size: 13px;
    line-height: 1.4;
    text-overflow: clip;
}

.dnai-signal-history {
    display: grid;
    height: 250px;
    grid-template-rows: auto minmax(0, 1fr);
    overflow: hidden;
}
.dnai-signal-history > [data-dnai-signal-history-runtime] {
    min-height: 0;
}
.dnai-table-wrap {
    height: 100%;
    max-height: 202px;
    overflow-x: auto;
    overflow-y: auto;
    scrollbar-color: var(--dnai-border-strong) var(--dnai-surface);
    scrollbar-gutter: stable;
    scrollbar-width: thin;
    overscroll-behavior: contain;
}
.dnai-table-wrap[hidden] { display: none !important; }
.dnai-table-wrap::-webkit-scrollbar { width: 8px; height: 8px; }
.dnai-table-wrap::-webkit-scrollbar-track { background: var(--dnai-surface); }
.dnai-table-wrap::-webkit-scrollbar-thumb { border: 2px solid var(--dnai-surface); border-radius: 999px; background: var(--dnai-border-strong); }
.dnai-history-table thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: var(--dnai-surface);
    box-shadow: 0 1px 0 var(--dnai-border);
}
.dnai-history-table td:last-child {
    overflow: visible;
    text-overflow: clip;
    white-space: nowrap;
}

.dnai-chart-canvas-wrap { position: relative; }
.dnai-price-countdown {
    position: absolute;
    top: var(--dnai-countdown-y, 12px);
    right: 4px;
    z-index: 3;
    display: inline-flex;
    width: 60px;
    min-height: 18px;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(148, 163, 184, .38);
    border-radius: 5px;
    background: rgba(9, 24, 39, .96);
    color: var(--dnai-text-secondary);
    cursor: help;
    font-size: 10px;
    font-variant-numeric: tabular-nums;
    font-weight: 700;
    line-height: 1;
    pointer-events: auto;
    white-space: nowrap;
}
.dnai-price-countdown[hidden] { display: none; }
.dnai-price-countdown[data-countdown-state="active"] { color: #cbd5e1; }
.dnai-price-countdown[data-countdown-state="warning"],
.dnai-price-countdown[data-countdown-state="rollover"] { border-color: rgba(245, 158, 11, .58); color: var(--dnai-warning); }
.dnai-price-countdown[data-countdown-state="offline"],
.dnai-price-countdown[data-countdown-state="stale"] { color: var(--dnai-text-muted); }

@media (max-width: 1139px) {
    .dnai-scenarios.dnai-component { min-height: 0; }
    .dnai-scenarios.dnai-component .dnai-scenarios__grid { grid-template-columns: minmax(0, 1fr); }
    .dnai-scenarios.dnai-component .dnai-scenario-card { min-height: 230px; }
    .dnai-history-table { min-width: 720px; }
}
@media (max-width: 599px) {
    .dnai-level-groups { grid-template-columns: minmax(0, 1fr); }
    .dnai-level-group > div { grid-template-columns: 32px minmax(80px, .8fr) minmax(105px, 1.2fr); }
    .dnai-scenario-card__bottom { grid-template-columns: minmax(0, 1fr) 108px; }
    .dnai-signal-history { height: 330px; }
    .dnai-table-wrap { max-height: 278px; }
}

/* UI-AI-BOX-09: truthful AI Context and Experience Analysis presentation. */
.dnai-experience-analysis,
.dnai-ai-context {
    position: relative;
    display: grid;
    min-width: 0;
    grid-template-rows: auto minmax(0, 1fr) auto;
    gap: 12px;
    padding: 16px;
    overflow: hidden;
    border: 1px solid var(--dnai-border);
    border-radius: var(--dnai-radius-md);
    background: var(--dnai-surface-elevated);
}
.dnai-intelligence-card__header {
    position: static !important;
    min-width: 0;
    padding: 0 !important;
}
.dnai-experience-analysis .dnai-intelligence-card__header h2,
.dnai-ai-context .dnai-intelligence-card__header h2 {
    overflow: visible;
    margin: 0;
    color: var(--dnai-text);
    font-size: 19px;
    font-weight: 700;
    line-height: 1.35;
    text-overflow: clip;
    white-space: normal;
}
.dnai-experience-analysis .dnai-intelligence-card__header p,
.dnai-ai-context .dnai-intelligence-card__header p {
    display: block;
    overflow: visible;
    margin: 4px 0 0;
    color: var(--dnai-text-muted);
    font-size: 13px;
    line-height: 1.5;
    text-overflow: clip;
    white-space: normal;
    -webkit-line-clamp: initial;
}
.dnai-intelligence-grid {
    display: grid;
    min-width: 0;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-content: stretch;
    gap: 10px;
}
.dnai-intelligence-field {
    display: grid;
    min-width: 0;
    min-height: 94px;
    grid-template-rows: auto auto 1fr;
    align-content: start;
    gap: 5px;
    padding: 12px;
    border: 1px solid rgba(23, 52, 78, .9);
    border-radius: 8px;
    background: rgba(9, 27, 43, .72);
}
.dnai-intelligence-field__label {
    color: var(--dnai-text-muted);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .055em;
    line-height: 1.45;
    text-transform: uppercase;
}
.dnai-intelligence-field > strong {
    overflow: visible;
    color: var(--dnai-sky);
    font-size: 17px;
    font-weight: 700;
    line-height: 1.4;
    text-overflow: clip;
    white-space: normal;
}
.dnai-intelligence-field > small {
    overflow: visible;
    color: var(--dnai-text-secondary);
    font-size: 13px;
    line-height: 1.5;
    text-overflow: clip;
    white-space: normal;
}
.dnai-intelligence-field[data-context-tone="supportive"] > strong,
.dnai-intelligence-field[data-context-tone="supportive"] .dnai-intelligence-list li::marker {
    color: var(--dnai-success-bright);
}
.dnai-intelligence-field[data-context-tone="danger"] > strong,
.dnai-intelligence-field[data-context-tone="danger"] .dnai-intelligence-list {
    color: var(--dnai-danger-bright);
}
.dnai-intelligence-field[data-context-tone="condition"] > strong { color: var(--dnai-gold); }
.dnai-intelligence-list {
    display: grid;
    gap: 4px;
    margin: 0;
    padding: 0;
    color: var(--dnai-text-secondary);
    font-size: 13px;
    line-height: 1.5;
    list-style: none;
}
.dnai-intelligence-list li {
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
}
.dnai-intelligence-note {
    min-width: 0;
    min-height: 70px;
    padding: 11px 12px;
    border: 1px solid rgba(23, 52, 78, .9);
    border-radius: 8px;
    background: #091b2b;
}
.dnai-intelligence-note > strong {
    display: block;
    margin-bottom: 5px;
    color: var(--dnai-gold);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .055em;
    line-height: 1.45;
}
.dnai-intelligence-note p {
    margin: 0;
    color: var(--dnai-text-secondary);
    font-size: 13px;
    line-height: 1.5;
}
.dnai-experience-analysis [data-context-tone="neutral"] > strong { color: #9fb1c5; }

@media (min-width: 1140px) {
    .dnai-workspace__intelligence-pair { align-items: stretch; }
    .dnai-workspace__intelligence-pair > .dnai-experience-analysis,
    .dnai-workspace__intelligence-pair > .dnai-ai-context {
        height: 100%;
        min-height: 360px;
    }
}
@media (max-width: 1139px) {
    .dnai-experience-analysis,
    .dnai-ai-context {
        height: auto;
        min-height: 0;
        padding: 16px;
        overflow: visible;
    }
}
@media (max-width: 599px) {
    .dnai-experience-analysis,
    .dnai-ai-context {
        gap: 10px;
        padding: 14px;
    }
    .dnai-experience-analysis .dnai-intelligence-card__header h2,
    .dnai-ai-context .dnai-intelligence-card__header h2 { font-size: 18px; }
    .dnai-intelligence-grid { grid-template-columns: minmax(0, 1fr); }
    .dnai-intelligence-field { min-height: 0; }
    .dnai-intelligence-field__label { font-size: 12px; }
    .dnai-intelligence-field > strong { font-size: 16px; }
    .dnai-intelligence-field > small,
    .dnai-intelligence-list,
    .dnai-intelligence-note p { font-size: 12.5px; }
}

/* UI-AI-LAYOUT-FIX-10: prioritize scenarios and simplify AI panel hierarchy. */
.dnai-workspace__intelligence {
    display: grid;
    height: auto;
    min-height: 0;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 16px;
    padding-top: 2px;
}
.dnai-workspace__intelligence > [data-workspace-slot="scenarios"] {
    width: 100%;
    height: auto;
    min-height: 0;
}
.dnai-workspace__intelligence-pair {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
    align-items: stretch;
    gap: 16px;
}
.dnai-scenarios.dnai-component {
    display: grid;
    height: auto;
    min-height: 0;
    grid-template-rows: auto auto;
    gap: 14px;
    padding: 18px;
    overflow: visible;
}
.dnai-scenarios .dnai-decision-header h2 {
    overflow: visible;
    margin: 0;
    color: var(--dnai-text);
    font-size: 19px;
    font-weight: 800;
    line-height: 1.35;
    text-overflow: clip;
    white-space: normal;
}
.dnai-scenarios .dnai-decision-header p {
    overflow: visible;
    margin: 4px 0 0;
    color: var(--dnai-text-muted);
    font-size: 13px;
    line-height: 1.5;
    text-overflow: clip;
    white-space: normal;
}
.dnai-scenarios.dnai-component .dnai-scenarios__grid {
    height: auto;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: stretch;
    gap: 12px;
}
.dnai-scenarios.dnai-component .dnai-scenario-card {
    height: auto;
    min-height: 244px;
    grid-template-rows: auto auto auto minmax(0, 1fr);
    gap: 8px;
    padding: 14px;
}
.dnai-scenario-card__header {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 10px;
}
.dnai-scenario-card__header h3 {
    overflow: visible;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;
    text-overflow: clip;
    white-space: normal;
}
.dnai-scenario-card__condition {
    color: var(--dnai-text-secondary);
    font-size: 13px;
    line-height: 1.5;
}
.dnai-scenario-card__disclaimer {
    color: var(--dnai-text-muted);
    font-size: 12px;
    line-height: 1.45;
}
.dnai-scenario-card__bottom {
    grid-template-columns: minmax(0, 1fr) 112px;
    align-items: stretch;
    gap: 12px;
}
.dnai-trade-levels > div,
.dnai-trade-levels > .dnai-trade-levels__entry {
    grid-template-columns: 44px minmax(0, 1fr);
}
.dnai-trade-levels dt,
.dnai-trade-levels dd {
    font-size: 13px;
    line-height: 1.5;
}
.dnai-scenario-card__metrics {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: repeat(2, minmax(46px, 1fr));
}
.dnai-scenario-card__metrics > div {
    min-height: 46px;
    padding: 8px;
}
.dnai-scenario-card__metrics span {
    font-size: 11.5px;
    line-height: 1.4;
}
.dnai-scenario-card__metrics strong {
    font-size: 14px;
    line-height: 1.4;
}

.dnai-experience-analysis,
.dnai-ai-context {
    height: auto;
    min-height: 0;
    grid-template-rows: auto minmax(0, 1fr) auto;
    align-content: start;
    gap: 14px;
    padding: 18px;
    overflow: visible;
}
.dnai-experience-analysis .dnai-intelligence-card__header h2,
.dnai-ai-context .dnai-intelligence-card__header h2 {
    font-size: 19px;
    font-weight: 800;
}
.dnai-experience-analysis .dnai-intelligence-card__header p,
.dnai-ai-context .dnai-intelligence-card__header p {
    color: var(--dnai-text-muted);
    font-size: 13px;
    line-height: 1.5;
}
.dnai-experience-status-list {
    display: grid;
    min-width: 0;
    align-content: start;
}
.dnai-experience-status-list .dnai-intelligence-field,
.dnai-ai-context-layout .dnai-intelligence-field {
    min-height: 0;
    grid-template-rows: auto auto auto;
    gap: 4px;
    padding: 10px 0;
    border: 0;
    border-bottom: 1px solid rgba(23, 52, 78, .72);
    border-radius: 0;
    background: transparent;
}
.dnai-experience-status-list .dnai-intelligence-field:first-child,
.dnai-ai-context-layout__summary .dnai-intelligence-field:first-child,
.dnai-ai-context-layout__evidence .dnai-intelligence-field:first-child {
    padding-top: 0;
}
.dnai-experience-status-list .dnai-intelligence-field:last-child,
.dnai-ai-context-layout__summary .dnai-intelligence-field:last-child,
.dnai-ai-context-layout__evidence .dnai-intelligence-field:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}
.dnai-intelligence-field__label {
    color: var(--dnai-text-muted);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .055em;
    line-height: 1.45;
}
.dnai-experience-status-list .dnai-intelligence-field > strong,
.dnai-ai-context-layout .dnai-intelligence-field > strong {
    color: var(--dnai-text);
    font-size: 17px;
    line-height: 1.4;
}
.dnai-experience-status-list .dnai-intelligence-field > small,
.dnai-ai-context-layout .dnai-intelligence-field > small {
    color: var(--dnai-text-secondary);
    font-size: 13px;
    line-height: 1.5;
}
.dnai-experience-status-list [data-experience-field="conclusion"] > strong { color: #e7edf5; }
.dnai-experience-status-list [data-context-tone="ready"] > strong { color: var(--dnai-success-bright); }
.dnai-experience-status-list [data-context-tone="research"] > strong { color: var(--dnai-cyan); }
.dnai-experience-status-list [data-context-tone="condition"] > strong { color: var(--dnai-gold); }
.dnai-experience-status-list [data-context-tone="supportive"] > strong { color: var(--dnai-success-bright); }
.dnai-experience-status-list [data-context-tone="danger"] > strong { color: var(--dnai-danger); }
.dnai-experience-metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    border-bottom: 1px solid rgba(23, 52, 78, .72);
}
.dnai-experience-metrics .dnai-intelligence-field {
    border-bottom: 0;
}
.dnai-experience-explanations {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    padding-top: 10px;
}
.dnai-experience-explanations section {
    min-width: 0;
}
.dnai-experience-explanations ul {
    display: grid;
    gap: 6px;
    margin: 7px 0 0;
    padding: 0;
    list-style: none;
}
.dnai-experience-explanations li {
    position: relative;
    margin: 0;
    padding-left: 14px;
    color: var(--dnai-text-secondary);
    font-size: 13px;
    line-height: 1.5;
    overflow-wrap: anywhere;
}
.dnai-experience-explanations li::before {
    content: "";
    position: absolute;
    top: .65em;
    left: 1px;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--dnai-cyan);
}
.dnai-experience-explanations section:last-child li::before {
    background: var(--dnai-warning);
}

.dnai-ai-context-layout {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
    align-items: start;
    gap: 18px;
}
.dnai-ai-context-layout__summary,
.dnai-ai-context-layout__evidence {
    display: grid;
    min-width: 0;
    align-content: start;
}
.dnai-ai-context-layout__evidence {
    padding-left: 18px;
    border-left: 1px solid rgba(23, 52, 78, .72);
}
.dnai-ai-context-layout .dnai-intelligence-field--primary > strong {
    font-size: 21px;
    line-height: 1.3;
}
.dnai-ai-context-layout [data-context-tone="supportive"] > strong { color: var(--dnai-success-bright); }
.dnai-ai-context-layout [data-context-tone="danger"] > strong { color: var(--dnai-danger-bright); }
.dnai-ai-context-layout [data-context-tone="condition"] > strong { color: var(--dnai-gold); }
.dnai-ai-context-layout .dnai-intelligence-list {
    gap: 6px;
    color: var(--dnai-text-secondary);
    font-size: 13px;
    line-height: 1.5;
}
.dnai-ai-context-layout .dnai-intelligence-list li.is-supportive {
    position: relative;
    padding-left: 18px;
}
.dnai-ai-context-layout .dnai-intelligence-list li.is-supportive::before {
    position: absolute;
    top: 0;
    left: 0;
    color: var(--dnai-success-bright);
    content: "✓";
    font-weight: 800;
}
.dnai-intelligence-note {
    min-height: 0;
    padding: 11px 12px;
    border-color: rgba(245, 158, 11, .24);
    background: rgba(245, 158, 11, .055);
}
.dnai-intelligence-note > strong {
    color: var(--dnai-gold);
    font-size: 12px;
}
.dnai-intelligence-note p,
.dnai-intelligence-note .dnai-intelligence-list {
    color: var(--dnai-text-secondary);
    font-size: 13px;
    line-height: 1.5;
}

@media (max-width: 1199px) and (min-width: 768px) {
    .dnai-scenarios.dnai-component .dnai-scenarios__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .dnai-scenarios.dnai-component .dnai-scenario-card:last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }
    .dnai-workspace__intelligence-pair {
        grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
    }
    .dnai-ai-context-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
    }
    .dnai-ai-context-layout__evidence {
        padding: 12px 0 0;
        border-top: 1px solid rgba(23, 52, 78, .72);
        border-left: 0;
    }
}

@media (max-width: 767px) {
    .dnai-workspace__intelligence {
        gap: 14px;
    }
    .dnai-workspace__intelligence-pair {
        grid-template-columns: minmax(0, 1fr);
        gap: 14px;
    }
    .dnai-scenarios.dnai-component {
        gap: 12px;
        padding: 14px;
    }
    .dnai-scenarios .dnai-decision-header h2,
    .dnai-experience-analysis .dnai-intelligence-card__header h2,
    .dnai-ai-context .dnai-intelligence-card__header h2 {
        font-size: 18px;
    }
    .dnai-scenarios.dnai-component .dnai-scenarios__grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 10px;
    }
    .dnai-scenarios.dnai-component .dnai-scenario-card,
    .dnai-scenarios.dnai-component .dnai-scenario-card:last-child:nth-child(odd) {
        min-height: 0;
        grid-column: auto;
    }
    .dnai-scenario-card__bottom {
        grid-template-columns: minmax(0, 1fr);
    }
    .dnai-scenario-card__metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: minmax(46px, auto);
    }
    .dnai-experience-analysis,
    .dnai-ai-context {
        gap: 12px;
        padding: 14px;
    }
    .dnai-ai-context-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
    }
    .dnai-ai-context-layout__evidence {
        padding: 12px 0 0;
        border-top: 1px solid rgba(23, 52, 78, .72);
        border-left: 0;
    }
    .dnai-ai-context-layout .dnai-intelligence-field--primary > strong {
        font-size: 20px;
    }
    .dnai-experience-metrics,
    .dnai-experience-explanations {
        grid-template-columns: minmax(0, 1fr);
        gap: 0;
    }
    .dnai-experience-metrics .dnai-intelligence-field:first-child {
        border-bottom: 1px solid rgba(23, 52, 78, .72);
    }
    .dnai-experience-explanations section + section {
        margin-top: 12px;
        padding-top: 12px;
        border-top: 1px solid rgba(23, 52, 78, .72);
    }
}

/* UI-AI-POLISH-11: stabilize Vietnamese headings and compact scenario levels. */
.dnai-experience-analysis .dnai-intelligence-card__header h2,
.dnai-ai-context .dnai-intelligence-card__header h2 {
    font-family: "Segoe UI", Arial, sans-serif;
    font-style: normal;
    font-variant: normal;
    font-weight: 700;
    letter-spacing: 0;
}
.dnai-scenario-card .dnai-trade-levels {
    width: max-content;
    max-width: 100%;
    justify-self: start;
}
.dnai-scenario-card .dnai-trade-levels > div,
.dnai-scenario-card .dnai-trade-levels > .dnai-trade-levels__entry {
    grid-template-columns: 44px max-content;
}
.dnai-scenario-card .dnai-trade-levels dd {
    text-align: left;
}

/* NEWS-01/02/03: provider-independent economic calendar and advisory impact UI. */
.dnai-workspace__history {
    height: auto;
    align-items: start;
}
.dnai-market-news {
    display: grid;
    height: auto;
    min-height: 250px;
    grid-template-rows: auto auto minmax(0, 1fr);
    gap: 12px;
    padding: 16px 18px;
    overflow: hidden;
    background: var(--dnai-surface-elevated);
}
.dnai-market-news__header {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}
.dnai-market-news__header h2 {
    margin: 0;
    color: var(--dnai-text);
    font-size: 19px;
    line-height: 1.35;
    font-weight: 800;
}
.dnai-market-news__header p {
    margin: 4px 0 0;
    color: var(--dnai-text-secondary);
    font-size: 13px;
    line-height: 1.5;
}
.dnai-market-news__source-state {
    display: inline-flex;
    flex: 0 0 auto;
    min-height: 26px;
    align-items: center;
    padding: 4px 9px;
    border: 1px solid var(--dnai-border-strong);
    border-radius: 999px;
    background: rgba(23, 105, 255, .08);
    color: var(--dnai-text-secondary);
    font-size: 12px;
    line-height: 1.35;
    font-weight: 700;
}
.dnai-market-news__source-state[data-source-state="fresh"] { border-color: rgba(34, 197, 94, .36); color: var(--dnai-success-bright); }
.dnai-market-news__source-state[data-source-state="stale"] { border-color: rgba(245, 158, 11, .4); color: var(--dnai-warning); }
.dnai-market-news__source-state[data-source-state="error"],
.dnai-market-news__source-state[data-source-state="unavailable"] { border-color: rgba(239, 68, 68, .38); color: var(--dnai-danger-bright); }
.dnai-market-news__state {
    display: grid;
    min-height: 150px;
    place-items: center;
    padding: 18px;
    border: 1px dashed var(--dnai-border-strong);
    border-radius: 8px;
    color: var(--dnai-text-secondary);
    font-size: 13px;
    line-height: 1.55;
    text-align: center;
}
.dnai-market-news[data-ui-state="real"] > .dnai-market-news__state,
.dnai-market-news[data-ui-state="stale"] > .dnai-market-news__state { display: none; }
.dnai-market-news:not([data-ui-state="real"]):not([data-ui-state="stale"]) > .dnai-market-news__content { display: none; }
.dnai-market-news__content {
    display: grid;
    max-height: 580px;
    min-width: 0;
    gap: 14px;
    overflow-x: hidden;
    overflow-y: auto;
    padding-right: 4px;
    scrollbar-color: var(--dnai-border-strong) var(--dnai-surface);
    scrollbar-width: thin;
    overscroll-behavior: contain;
}
.dnai-market-news__content::-webkit-scrollbar { width: 8px; }
.dnai-market-news__content::-webkit-scrollbar-track { background: var(--dnai-surface); }
.dnai-market-news__content::-webkit-scrollbar-thumb { border: 2px solid var(--dnai-surface); border-radius: 999px; background: var(--dnai-border-strong); }
.dnai-news-group {
    display: grid;
    min-width: 0;
    gap: 8px;
}
.dnai-news-group[hidden] { display: none; }
.dnai-news-group > header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    border-bottom: 1px solid rgba(23, 52, 78, .72);
}
.dnai-news-group > header h3 {
    margin: 0 0 6px;
    color: var(--dnai-text);
    font-size: 14px;
    line-height: 1.4;
    font-weight: 800;
}
.dnai-news-group > header span {
    min-width: 24px;
    margin-bottom: 6px;
    color: var(--dnai-text-muted);
    font-size: 12px;
    line-height: 1.4;
    text-align: right;
}
.dnai-news-list {
    display: grid;
    min-width: 0;
    gap: 8px;
}
.dnai-news-event {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(210px, 1.2fr) minmax(220px, .8fr);
    grid-template-areas:
        "head values"
        "state values"
        "analysis analysis";
    gap: 8px 16px;
    padding: 12px 14px;
    border: 1px solid var(--dnai-border);
    border-left: 3px solid var(--dnai-text-muted);
    border-radius: 8px;
    background: var(--dnai-surface);
}
.dnai-news-event--high { border-left-color: var(--dnai-danger); }
.dnai-news-event--medium { border-left-color: var(--dnai-warning); }
.dnai-news-event--low { border-left-color: var(--dnai-cyan); }
.dnai-news-event > header { grid-area: head; min-width: 0; }
.dnai-news-event__meta {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 8px;
}
.dnai-news-event__meta time,
.dnai-news-event__currency {
    color: var(--dnai-text);
    font-size: 13px;
    line-height: 1.4;
    font-variant-numeric: tabular-nums;
    font-weight: 800;
}
.dnai-news-event__currency { color: var(--dnai-cyan); }
.dnai-news-event h4 {
    margin: 6px 0 0;
    color: var(--dnai-text);
    font-size: 14px;
    line-height: 1.45;
    font-weight: 700;
    overflow-wrap: anywhere;
}
.dnai-news-impact {
    display: inline-flex;
    min-height: 22px;
    align-items: center;
    padding: 3px 7px;
    border-radius: 999px;
    background: rgba(130, 145, 165, .12);
    color: var(--dnai-text-secondary);
    font-size: 12px;
    line-height: 1.3;
    font-weight: 800;
}
.dnai-news-impact[data-impact="high"] { background: rgba(239, 68, 68, .12); color: var(--dnai-danger-bright); }
.dnai-news-impact[data-impact="medium"] { background: rgba(245, 158, 11, .12); color: var(--dnai-warning); }
.dnai-news-impact[data-impact="low"] { background: rgba(34, 211, 238, .1); color: var(--dnai-cyan); }
.dnai-news-values {
    display: grid;
    min-width: 0;
    grid-area: values;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-self: start;
    gap: 6px;
}
.dnai-news-values > div,
.dnai-news-analysis__summary > div {
    display: grid;
    min-width: 0;
    gap: 3px;
}
.dnai-news-values span,
.dnai-news-analysis__summary span {
    color: var(--dnai-text-muted);
    font-size: 12px;
    line-height: 1.35;
}
.dnai-news-values strong,
.dnai-news-analysis__summary strong {
    overflow: visible;
    color: var(--dnai-text);
    font-size: 13px;
    line-height: 1.4;
    font-variant-numeric: tabular-nums;
    font-weight: 800;
    text-overflow: clip;
    white-space: normal;
}
.dnai-news-values strong.is-positive,
.dnai-news-analysis__summary strong.is-positive,
.dnai-news-analysis__summary strong.is-bullish { color: var(--dnai-success-bright); }
.dnai-news-values strong.is-negative,
.dnai-news-analysis__summary strong.is-negative,
.dnai-news-analysis__summary strong.is-bearish { color: var(--dnai-danger-bright); }
.dnai-news-event__state {
    display: flex;
    min-width: 0;
    grid-area: state;
    align-items: center;
    gap: 10px;
    color: var(--dnai-text-secondary);
    font-size: 12px;
    line-height: 1.4;
}
.dnai-news-event[data-news-status="due"] .dnai-news-event__state { color: var(--dnai-warning); }
.dnai-news-countdown {
    color: var(--dnai-cyan);
    font-variant-numeric: tabular-nums;
    font-weight: 800;
}
.dnai-news-countdown[data-countdown-state="warning"],
.dnai-news-countdown[data-countdown-state="due"] { color: var(--dnai-warning); }
.dnai-news-analysis {
    display: grid;
    min-width: 0;
    grid-area: analysis;
    grid-template-columns: minmax(260px, .85fr) minmax(0, 1.15fr);
    gap: 8px 16px;
    padding-top: 9px;
    border-top: 1px solid rgba(23, 52, 78, .72);
}
.dnai-news-analysis__summary {
    display: grid;
    min-width: 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}
.dnai-news-analysis p {
    margin: 0;
    color: var(--dnai-text-secondary);
    font-size: 12px;
    line-height: 1.5;
}
.dnai-news-analysis small {
    grid-column: 1 / -1;
    color: var(--dnai-text-muted);
    font-size: 12px;
    line-height: 1.4;
}
.dnai-news-analysis small[data-agreement="aligned"] { color: var(--dnai-success-bright); }
.dnai-news-analysis small[data-agreement="conflict"] { color: var(--dnai-warning); }
.dnai-news-event__restricted {
    grid-area: analysis;
    margin: 0;
    padding-top: 8px;
    border-top: 1px solid rgba(23, 52, 78, .72);
    color: var(--dnai-text-muted);
    font-size: 12px;
    line-height: 1.5;
}
.dnai-market-news__empty,
.dnai-market-news__advisory,
.dnai-market-news__attribution {
    margin: 0;
    color: var(--dnai-text-muted);
    font-size: 12px;
    line-height: 1.5;
}
.dnai-market-news__advisory {
    padding: 8px 10px;
    border-left: 2px solid var(--dnai-warning);
    background: rgba(245, 158, 11, .06);
    color: var(--dnai-text-secondary);
}

@media (max-width: 1439px) {
    .dnai-news-event {
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas: "head" "values" "state" "analysis";
    }
    .dnai-news-analysis { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 1139px) {
    .dnai-market-news { min-height: 260px; }
    .dnai-market-news__content { max-height: 620px; }
    .dnai-news-event {
        grid-template-columns: minmax(260px, 1fr) minmax(260px, .9fr);
        grid-template-areas: "head values" "state values" "analysis analysis";
    }
    .dnai-news-analysis { grid-template-columns: minmax(260px, .85fr) minmax(0, 1.15fr); }
}
@media (max-width: 599px) {
    .dnai-market-news {
        min-height: 250px;
        gap: 12px;
        padding: 14px;
    }
    .dnai-market-news__header { display: grid; gap: 8px; }
    .dnai-market-news__header h2 { font-size: 18px; }
    .dnai-market-news__header p { font-size: 12px; }
    .dnai-market-news__source-state { justify-self: start; }
    .dnai-market-news__content { max-height: none; padding-right: 0; overflow: visible; }
    .dnai-news-event {
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas: "head" "values" "state" "analysis";
        gap: 9px;
        padding: 12px;
    }
    .dnai-news-event__meta { flex-wrap: wrap; }
    .dnai-news-values { gap: 8px; }
    .dnai-news-analysis { grid-template-columns: minmax(0, 1fr); }
    .dnai-news-analysis__summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* UI-HISTORY-NEWS-HEIGHT-12: aligned compact headings and taller data panels. */
.dnai-signal-history .dnai-section-heading h2,
.dnai-market-news .dnai-market-news__header h2 {
    font-family: "Segoe UI", Arial, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-variant: normal;
    line-height: 1.35;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: uppercase;
}

@media (min-width: 768px) {
    .dnai-signal-history,
    .dnai-market-news {
        height: 550px;
        min-height: 550px;
    }
    .dnai-signal-history .dnai-table-wrap {
        max-height: 502px;
    }
    .dnai-market-news .dnai-market-news__content {
        max-height: none;
    }
}

@media (min-width: 1140px) {
    .dnai-workspace__history {
        height: 550px;
        align-items: stretch;
    }
}

@media (max-width: 767px) {
    .dnai-signal-history .dnai-section-heading h2,
    .dnai-market-news .dnai-market-news__header h2 {
        font-size: 15px;
    }
}
