/* Shared Mygeste theme tokens; income panel is independent of market animation. */
.mygeste-app .terminal-income{padding:10px 12px;background:var(--panel);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}
.income-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}
.income-badge{font-size:.64rem;padding:3px 7px;border-radius:3px;background:var(--panel-subtle);color:var(--app-muted)}
.income-badge-active{background:color-mix(in srgb,var(--up) 12%,var(--panel));color:var(--up)}
.income-badge-expected{background:color-mix(in srgb,#c78a18 12%,var(--panel));color:var(--app-ink)}
.income-source,.income-note,.income-unit-note{font-size:.64rem;color:var(--app-muted);line-height:1.45}
.income-grid{display:grid;grid-template-columns:minmax(170px,1.1fr) minmax(150px,1fr) minmax(0,3fr);gap:18px;align-items:center}
.income-whole,.income-quantity{display:flex;flex-direction:column;gap:4px;min-width:0}
.income-whole>span:first-child,.income-quantity label,.income-results span{font-size:.68rem;color:var(--app-muted)}
.income-whole strong{font-size:1rem;overflow-wrap:anywhere}.income-whole strong small{font-size:.65rem;font-weight:400;color:var(--app-muted)}
.income-whole>span:last-child{font-size:.72rem}
.income-quantity input{width:100%;max-width:240px;min-width:0;padding:7px 9px;border:1px solid var(--border);border-radius:3px;background:var(--panel);color:var(--app-ink);font:inherit;min-height:34px}
.income-quantity input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.income-quantity input:disabled{opacity:.55}
.income-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.income-results>div{display:flex;flex-direction:column;gap:7px;min-width:0;border-left:1px solid var(--border);padding-left:14px}
.income-results output{font-size:clamp(.85rem,1.05vw,1.3rem);font-weight:700;color:var(--app-ink);overflow-wrap:anywhere}
.income-note{margin:8px 0 0}.income-error{margin:6px 0;color:var(--down);font-size:.7rem}.terminal-income [hidden]{display:none!important}
/* Four real rows now: market summary, trading, income, property information. */
@media(min-width:1100px) and (min-height:600px){
 body.mygeste-app:has(.terminal-income){min-height:780px}
 .mygeste-app .asset-terminal:has(.terminal-income){grid-template-rows:64px minmax(300px,1fr) max-content clamp(144px,18dvh,240px);min-height:680px;max-height:1200px}
}
@media(min-width:1600px) and (min-height:900px){
 .mygeste-app .asset-terminal:has(.terminal-income){grid-template-rows:76px minmax(340px,1fr) max-content clamp(180px,20dvh,280px)}
 .mygeste-app .terminal-income{padding:12px 14px}.income-whole strong{font-size:1.2rem}.income-note,.income-source,.income-unit-note{font-size:.72rem}.income-whole>span:first-child,.income-quantity label,.income-results span{font-size:.78rem}
}
@media(max-width:1099px){.income-grid{grid-template-columns:1fr 1fr}.income-results{grid-column:1/-1}.income-results>div:first-child{border-left:0;padding-left:0}}
@media(max-width:520px){.income-grid{gap:12px}.income-results{gap:8px}.income-results>div{padding-left:8px}.income-results output{font-size:.82rem}.income-heading{gap:6px}.income-source{width:100%}.income-quantity input{max-width:none}.income-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
