:root{--bg-base:#0b0e0f;--bg-surface:#111518;--bg-raised:#1a1f22;--border:#242a2e;--accent:#00c896;--accent-dim:#005a3c;--text-hi:#e8ecee;--text-mid:#8a9299;--text-lo:#4a5158;--radius:6px;--sidebar-w:210px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{background:var(--bg-base);height:100%;color:var(--text-hi);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5}.shell{height:100vh;display:flex;overflow:hidden}.sidebar{width:var(--sidebar-w);min-width:var(--sidebar-w);background:var(--bg-surface);border-right:1px solid var(--border);flex-direction:column;display:flex;overflow:hidden}.sidebar-logo{color:var(--accent);letter-spacing:-.3px;border-bottom:1px solid var(--border);padding:18px 20px 14px;font-size:16px;font-weight:700}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:8px 0;display:flex}.nav-item{color:var(--text-mid);align-items:center;gap:10px;padding:9px 20px;font-size:13.5px;text-decoration:none;transition:color .15s,background .15s;display:flex}.nav-item:hover{color:var(--text-hi);background:var(--bg-raised)}.nav-item.active{color:var(--accent);border-left:2px solid var(--accent);background:#00c89614;padding-left:18px}.nav-icon{text-align:center;flex-shrink:0;width:18px;font-size:14px}.nav-label{font-weight:500}.sidebar-footer{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:12px 20px;display:flex}.sidebar-updated{width:100%;color:var(--text-lo);opacity:.7;letter-spacing:.02em;font-size:10px}.sidebar-user{color:var(--text-lo);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.logout-btn{border:1px solid var(--border);color:var(--text-lo);cursor:pointer;border-radius:var(--radius);background:0 0;flex-shrink:0;padding:3px 8px;font-size:11px;transition:color .15s,border-color .15s}.logout-btn:hover{color:var(--text-mid);border-color:var(--text-lo)}.main-content{background:var(--bg-base);flex-direction:column;flex:1;padding:0 28px 24px;display:flex;overflow:auto}.asset-class-bar{border-bottom:1px solid var(--border);flex-shrink:0;gap:2px;margin-bottom:20px;padding:12px 0 14px;display:flex}.asset-class-btn{color:var(--text-lo);cursor:pointer;letter-spacing:.4px;border-radius:var(--radius);background:0 0;border:none;padding:4px 14px;font-size:13px;font-weight:600;transition:color .15s,background .15s}.asset-class-btn:hover{color:var(--text-mid)}.asset-class-btn.active{color:var(--accent);background:#00c89614}.portfolio-page{flex-direction:column;gap:16px;display:flex}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}@media (width<=700px){.kpi-grid{grid-template-columns:1fr}}.kpi-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:4px;padding:16px 18px;display:flex}.kpi-label{text-transform:uppercase;letter-spacing:.6px;color:var(--text-lo);font-size:11px;font-weight:600}.kpi-value{color:var(--text-hi);font-variant-numeric:tabular-nums;letter-spacing:-.5px;font-size:22px;font-weight:700}.kpi-sub{color:var(--text-lo);margin-top:1px;font-size:11px}.kpi-spark{margin-top:8px}.portfolio-ts{color:var(--text-lo);font-size:11px}.acct-selector{flex-wrap:wrap;gap:4px;display:flex}.acct-btn{background:var(--bg-surface);border:1px solid var(--border);color:var(--text-lo);cursor:pointer;border-radius:var(--radius);white-space:nowrap;padding:4px 10px;font-size:11px;transition:color .15s,border-color .15s,background .15s}.acct-btn:hover{color:var(--text-mid);border-color:var(--text-lo)}.acct-btn.active{border-color:var(--accent);color:var(--accent);background:#00c8961a;font-weight:600}.portfolio-two-col{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (width<=800px){.portfolio-two-col{grid-template-columns:1fr}}.panel{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.panel-title{text-transform:uppercase;letter-spacing:.6px;color:var(--text-lo);border-bottom:1px solid var(--border);padding:12px 16px 10px;font-size:12px;font-weight:600}.arrow-toggle>summary{list-style:none}.arrow-toggle>summary::-webkit-details-marker{display:none}.arrow-toggle .toggle-arrow{margin-right:6px;transition:transform .15s;display:inline-block}.arrow-toggle[open]>summary .toggle-arrow{transform:rotate(90deg)}.pnl-table-wrap{overflow-x:auto}.pnl-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:13px}.pnl-table thead th{text-align:right;text-transform:uppercase;letter-spacing:.5px;color:var(--text-lo);white-space:nowrap;-webkit-user-select:none;user-select:none;border-bottom:1px solid var(--border);padding:8px 12px;font-size:11px;font-weight:600}.pnl-table thead th:first-child{text-align:left}.pnl-table thead th:hover{color:var(--text-mid)}.pnl-table tbody tr{border-bottom:1px solid var(--border);transition:background .1s}.pnl-table tbody tr:last-child{border-bottom:none}.pnl-table tbody tr:hover{background:var(--bg-raised)}.pnl-table td{text-align:right;color:var(--text-hi);padding:9px 12px}.pnl-table td:first-child{text-align:left}.pnl-coin{color:var(--accent);font-weight:600}.dist-list{flex-direction:column;gap:7px;padding:12px 16px;display:flex}.dist-row{grid-template-columns:64px 1fr 44px 76px;align-items:center;gap:8px;font-size:12px;display:grid}.dist-coin{font-size:11px;font-weight:600}.dist-bar-wrap{background:var(--bg-raised);border-radius:2px;height:6px;overflow:hidden}.dist-bar{border-radius:2px;height:100%;transition:width .3s}.dist-pct{color:var(--text-mid);font-variant-numeric:tabular-nums;text-align:right;font-size:11px}.dist-val{color:var(--text-hi);font-variant-numeric:tabular-nums;text-align:right;font-size:11px}.panel-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:4px 16px 4px 0;display:flex}.period-chips{gap:4px;padding-right:4px;display:flex}.period-chip{border:1px solid var(--border);color:var(--text-lo);cursor:pointer;border-radius:var(--radius);background:0 0;padding:3px 8px;font-size:11px;transition:color .15s,border-color .15s,background .15s}.period-chip:hover{color:var(--text-mid);border-color:var(--text-lo)}.period-chip.active{border-color:var(--accent);color:var(--accent);background:#00c8961a}.period-chip:disabled{opacity:.35;cursor:default}.pagination{border-top:1px solid var(--border);justify-content:flex-end;align-items:center;gap:8px;padding:10px 16px;display:flex}.page-info{color:var(--text-mid);font-variant-numeric:tabular-nums;text-align:center;min-width:60px;font-size:12px}.resultados-hero{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px 28px}.resultados-hero-label{color:var(--text-lo);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-size:12px}.resultados-hero-value{font-variant-numeric:tabular-nums;letter-spacing:-1px;font-size:40px;font-weight:700}.resultados-hero-breakdown{color:var(--text-mid);gap:12px;margin-top:8px;font-size:13px;display:flex}.resultados-sep{color:var(--text-lo)}.resultados-section{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:12px;padding:16px 18px;display:flex}.resultados-section-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.resultados-section-header h3{color:var(--text-hi);font-size:13px;font-weight:600}.evolucao-hero{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px 28px}.evolucao-hero-label{color:var(--text-lo);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-size:12px}.evolucao-hero-value{font-variant-numeric:tabular-nums;letter-spacing:-1px;color:var(--accent);font-size:40px;font-weight:700}.evolucao-hero-breakdown{color:var(--text-mid);gap:12px;margin-top:8px;font-size:13px;display:flex}.evolucao-section{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:12px;padding:16px 18px;display:flex}.page-placeholder{height:200px;color:var(--text-lo);border:1px dashed var(--border);border-radius:var(--radius);justify-content:center;align-items:center;font-size:13px;display:flex}.loading-screen{min-height:100vh;color:var(--text-lo);justify-content:center;align-items:center;display:flex}.login-wrap{background:var(--bg-base);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-box{background:var(--bg-surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:16px;min-width:320px;padding:40px 48px;display:flex}.login-title{color:var(--accent);font-size:22px;font-weight:700}.login-subtitle{color:var(--text-lo);font-size:13px}.field{flex-direction:column;gap:5px;display:flex}.field label{color:var(--text-mid);text-transform:uppercase;letter-spacing:.6px;font-size:11px;font-weight:600}.field input{background:var(--bg-base);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-hi);outline:none;padding:9px 12px;font-size:14px;transition:border-color .15s}.field input:focus{border-color:var(--accent-dim)}.login-error{color:#f55;font-size:13px}.login-btn{background:var(--accent);color:#000;border-radius:var(--radius);cursor:pointer;border:none;margin-top:6px;padding:10px 0;font-size:14px;font-weight:700;transition:opacity .15s}.login-btn:hover:not(:disabled){opacity:.85}.login-btn:disabled{opacity:.5;cursor:default}
