:root{--color-bg-primary:#101214;--color-bg-secondary:#171b1f;--color-bg-tertiary:#20262c;--color-bg-hover:#2a323a;--color-border:#303842;--color-border-subtle:#252c33;--color-text-primary:#eef2f6;--color-text-secondary:#a9b3bd;--color-text-muted:#707b86;--color-accent:#58a6ff;--color-accent-muted:#58a6ff24;--color-positive:#3fb950;--color-positive-muted:#3fb95024;--color-negative:#f85149;--color-negative-muted:#f8514924;--color-neutral:#a9b3bd;--color-warning:#d29922;--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", Consolas, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--radius-sm:4px;--radius-md:8px;--radius-full:999px;--shadow-md:0 16px 40px #00000038;--sidebar-width:248px}[data-theme=light]{--color-bg-primary:#f4f6f8;--color-bg-secondary:#fff;--color-bg-tertiary:#eef2f5;--color-bg-hover:#e5ebf0;--color-border:#d7dee5;--color-border-subtle:#e7edf2;--color-text-primary:#1b242d;--color-text-secondary:#56616d;--color-text-muted:#818b96;--color-accent:#0969da;--color-accent-muted:#0969da1a}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;font-size:16px}body{background:var(--color-bg-primary);min-width:320px;min-height:100vh;color:var(--color-text-primary);font-family:var(--font-sans);margin:0;line-height:1.5}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.72}a{color:inherit;text-decoration:none}table{border-collapse:collapse}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--color-border);background:var(--color-bg-secondary);height:100vh;padding:24px 18px;position:sticky;top:0}.brand{align-items:center;gap:12px;min-height:52px;display:flex}.brand__mark{border-radius:var(--radius-md);color:#061016;background:linear-gradient(135deg,#58a6ff,#3fb950);place-items:center;width:42px;height:42px;font-weight:800;display:grid}.brand strong,.brand span{display:block}.brand span{color:var(--color-text-secondary);font-size:var(--text-sm)}.nav-list{gap:8px;margin-top:28px;display:grid}.nav-list a{border-radius:var(--radius-md);color:var(--color-text-secondary);padding:11px 12px;transition:background .15s,color .15s}.nav-list a:hover,.nav-list a.active{background:var(--color-accent-muted);color:var(--color-text-primary)}.workspace{min-width:0}.topbar{border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#101214d1;justify-content:space-between;align-items:center;gap:16px;min-height:84px;padding:20px 28px;display:flex}[data-theme=light] .topbar{background:#f4f6f8d1}.topbar h1{font-size:var(--text-2xl);letter-spacing:0;margin:0}.topbar__eyebrow{color:var(--color-text-secondary);font-size:var(--text-sm)}.icon-button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);width:40px;height:40px;color:var(--color-text-primary);place-items:center;font-weight:800;display:grid}.main-content{padding:28px}.dashboard{gap:20px;display:grid}.kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.stat-card,.panel,.market-strip{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);box-shadow:var(--shadow-md)}.stat-card{gap:10px;min-height:136px;padding:18px;display:grid}.stat-card__label,.panel__header span,.market-pill span,.watchlist span,.order-list span{color:var(--color-text-secondary);font-size:var(--text-sm)}.stat-card__value{font-family:var(--font-mono);overflow-wrap:anywhere;font-size:clamp(1.15rem,1.5vw,1.45rem);line-height:1.2}.stat-card__value--datetime{white-space:normal;font-size:clamp(1rem,1.25vw,1.25rem)}.stat-card__footer{color:var(--color-text-secondary);font-size:var(--text-sm);justify-content:space-between;align-items:center;gap:10px;display:flex}.live-status{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-secondary);color:var(--color-text-secondary);font-size:var(--text-sm);align-items:center;gap:10px;padding:12px 14px;display:flex}.live-status strong{color:var(--color-text-primary)}.live-status__dot{border-radius:var(--radius-full);background:var(--color-positive);width:9px;height:9px;box-shadow:0 0 0 6px var(--color-positive-muted)}.badge{border-radius:var(--radius-full);min-height:24px;font-family:var(--font-mono);font-size:var(--text-xs);white-space:nowrap;justify-content:center;align-items:center;padding:2px 8px;font-weight:700;display:inline-flex}.badge--positive{background:var(--color-positive-muted);color:var(--color-positive)}.badge--negative{background:var(--color-negative-muted);color:var(--color-negative)}.badge--neutral{background:var(--color-bg-tertiary);color:var(--color-neutral)}.market-strip{grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.market-pill{background:var(--color-bg-secondary);gap:6px;min-width:0;padding:14px;display:grid}.market-pill strong{font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-grid{grid-template-columns:minmax(0,1fr) minmax(280px,320px);align-items:start;gap:20px;display:grid}.dashboard-grid--portfolio{grid-template-columns:minmax(0,1.4fr) minmax(320px,.7fr)}.panel{min-width:0;padding:18px}.panel--wide{min-height:100%}.panel__header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.panel__header h2{font-size:var(--text-lg);margin:0}.chart{width:100%;min-height:240px}.chart--donut{min-height:260px}.table-scroll{overflow-x:auto}.position-table{width:100%;min-width:720px}.position-table th,.position-table td{border-bottom:1px solid var(--color-border-subtle);text-align:left;vertical-align:middle;padding:12px 10px}.position-table th{color:var(--color-text-secondary);font-size:var(--text-xs);text-transform:uppercase;font-weight:700}.position-table td{color:var(--color-text-primary);font-family:var(--font-mono);font-size:.8125rem}.position-table__asset,.position-table__result{font-family:var(--font-sans);gap:3px;display:grid}.position-table__asset span{color:var(--color-text-secondary);font-size:var(--text-sm)}.position-table__result{justify-items:start}.position-table tbody tr{transition:background .15s}.position-table tbody tr:hover,.position-table__row--active{background:var(--color-accent-muted)}.side-stack{gap:20px;display:grid}.order-form{gap:14px;display:grid}.order-form label{color:var(--color-text-secondary);font-size:var(--text-sm);gap:6px;display:grid}.order-form input,.order-form select{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-primary);width:100%;min-height:42px;color:var(--color-text-primary);padding:0 12px}.segmented-control{border-radius:var(--radius-md);background:var(--color-bg-primary);grid-template-columns:repeat(2,1fr);gap:6px;padding:5px;display:grid}.segmented-control button{border-radius:var(--radius-sm);min-height:36px;color:var(--color-text-secondary);background:0 0;border:0;font-weight:700}.segmented-control__item--active{background:var(--color-accent)!important;color:#061016!important}.order-form__summary{border-radius:var(--radius-md);background:var(--color-bg-primary);grid-template-columns:1fr auto;gap:8px 12px;padding:12px;display:grid}.order-form__summary span{color:var(--color-text-secondary)}.order-form__feedback{border-radius:var(--radius-md);background:var(--color-positive-muted);color:var(--color-positive);font-size:var(--text-sm);margin:0;padding:10px 12px;font-weight:700}.button{border-radius:var(--radius-md);border:1px solid #0000;min-height:42px;padding:0 14px;font-weight:800}.button--primary{background:var(--color-accent);color:#061016}.legend-list,.watchlist,.order-list{gap:10px;display:grid}.legend-list{margin:4px 0 0;padding:0;list-style:none}.legend-list li,.watchlist__item,.order-list__item{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-width:0;display:grid}.legend-list__dot{border-radius:var(--radius-full);width:10px;height:10px}.watchlist__item,.order-list__item{border-bottom:1px solid var(--color-border-subtle);grid-template-columns:minmax(0,1fr) auto;padding-bottom:10px}.order-list__item{grid-template-columns:minmax(0,1fr) auto auto}.watchlist__item:last-child,.order-list__item:last-child{border-bottom:0;padding-bottom:0}.watchlist__item>div,.order-list__item>div{gap:2px;min-width:0;display:grid}.watchlist__item>div:last-child,.order-list__item>div:nth-child(2){justify-items:end}.watchlist strong,.order-list strong{font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.empty-state{border:1px dashed var(--color-border);border-radius:var(--radius-md);min-height:320px;color:var(--color-text-secondary);place-items:center;display:grid}@media (width<=1180px){.kpi-grid,.market-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.dashboard-grid--portfolio{grid-template-columns:1fr}}@media (width<=760px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--color-border);height:auto;position:static}.nav-list{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.topbar{align-items:flex-start;padding:18px}.main-content{padding:18px}.live-status{grid-template-columns:auto 1fr;align-items:flex-start;display:grid}.live-status span:last-child{grid-column:2}.kpi-grid,.market-strip{grid-template-columns:1fr}.order-list__item{grid-template-columns:1fr;justify-items:start}.order-list__item>div:nth-child(2){justify-items:start}.table-scroll{overflow-x:visible}.position-table{min-width:0}.position-table thead{display:none}.position-table,.position-table tbody,.position-table tr,.position-table td{width:100%;display:block}.position-table tbody{gap:12px;display:grid}.position-table tr{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);background:var(--color-bg-primary);padding:12px}.position-table th,.position-table td{border-bottom:0}.position-table td{grid-template-columns:minmax(0,.85fr) minmax(0,1fr);align-items:center;gap:12px;padding:8px 0;display:grid}.position-table td:before{color:var(--color-text-secondary);content:attr(data-label);font-family:var(--font-sans);font-size:var(--text-xs);text-transform:uppercase;font-weight:700}.position-table td[data-label=Ativo]{grid-template-columns:1fr;padding-top:0}.position-table td[data-label=Ativo]:before{display:none}}
