:root{--bg: #09090b;--surface: #111113;--surface-elevated: #18181b;--surface-strong: #1e1e22;--line: #27272a;--text: #fafafa;--text-soft: #a1a1aa;--brand: #10b981;--brand-soft: rgba(16, 185, 129, .1);--danger: #ef4444;--danger-soft: rgba(239, 68, 68, .1);--radius: 12px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-full: 999px;--shadow: 0 1px 3px rgba(0, 0, 0, .3);--shadow-sm: 0 1px 2px rgba(0,0,0,.3), 0 1px 3px rgba(0,0,0,.15);--shadow-md: 0 4px 12px rgba(0,0,0,.25), 0 1px 3px rgba(0,0,0,.15);--shadow-lg: 0 8px 24px rgba(0,0,0,.35), 0 2px 6px rgba(0,0,0,.2);--shadow-glow: 0 0 20px rgba(16,185,129,.15);--sidebar-width: 260px;--font-display: "Satoshi", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-body: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--text-xs: .8125rem;--text-sm: .875rem;--text-base: .9375rem;--text-md: 1rem;--text-lg: 1.0625rem;--text-xl: 1.1875rem;--text-2xl: 1.375rem;--text-3xl: 1.625rem;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-9: 36px;--space-10: 40px;--space-11: 44px;--space-12: 48px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.01em}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff24}.layout{display:flex;min-height:100vh;max-width:100vw;overflow-x:hidden}.main-content{flex:1;min-width:0;margin-left:var(--sidebar-width);min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden}.demo-banner{padding:var(--space-2) var(--space-8);background:#eab30814;border-bottom:1px solid rgba(234,179,8,.15);color:#eab308;font-size:var(--text-sm);text-align:center}.demo-banner-link{background:none;border:none;color:var(--brand);font-weight:600;font-size:inherit;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px}.demo-banner-link:hover{color:var(--text);transform:none}.page-header{padding:var(--space-5) var(--space-8) 0}.page-title{margin:0;font-family:var(--font-display);font-size:var(--text-2xl);font-weight:600;letter-spacing:-.02em;color:var(--text)}.page-body{flex:1;padding:var(--space-4) var(--space-8) var(--space-8);max-width:1100px;width:100%;min-width:0;overflow-x:hidden;animation:pageIn .35s cubic-bezier(.16,1,.3,1) both}.sidebar{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width);background:var(--surface);border-right:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;z-index:100;overflow-y:auto}.sidebar-top{flex:1;padding:var(--space-5) var(--space-3)}.sidebar-brand{display:flex;align-items:center;gap:.75rem;padding:var(--space-2) var(--space-3);margin-bottom:var(--space-6);cursor:pointer}.sidebar-logo{width:36px;height:36px;border-radius:var(--radius-md);object-fit:cover}.sidebar-brand-text{font-family:var(--font-display);font-weight:700;font-size:var(--text-xl);letter-spacing:-.02em;color:var(--text)}.sidebar-section{margin-bottom:var(--space-5)}.sidebar-section-title{font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-soft);padding:0 var(--space-3);margin-bottom:var(--space-2)}.sidebar-item{display:flex;align-items:center;gap:.65rem;width:100%;padding:.55rem .75rem;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-soft);font-size:var(--text-base);font-weight:500;cursor:pointer;transition:all .15s ease;position:relative}.sidebar-item:hover{background:#ffffff0a;color:var(--text);transform:none}.sidebar-item.active{background:transparent;color:var(--brand);font-weight:600}.sidebar-item.active:before{content:"";position:absolute;left:0;top:20%;height:60%;width:3px;border-radius:var(--radius-full);background:var(--brand)}.sidebar-bottom{padding:var(--space-3);border-top:1px solid var(--line)}.sidebar-account{display:flex;align-items:center;gap:.6rem;padding:.55rem .75rem;border-radius:var(--radius-md);cursor:pointer;transition:background .15s ease}.sidebar-account:hover{background:#ffffff0a}.sidebar-avatar{width:28px;height:28px;border-radius:50%;background:var(--brand-soft);display:flex;align-items:center;justify-content:center;color:var(--brand);flex-shrink:0}.sidebar-account-name{flex:1;font-size:var(--text-base);font-weight:500;color:var(--text)}.sidebar-chevron{color:var(--text-soft);transition:transform .2s ease}.sidebar-chevron.open{transform:rotate(180deg)}.sidebar-account-menu{padding:var(--space-1) 0;margin-top:var(--space-1)}.sidebar-account-menu button{display:flex;align-items:center;gap:.5rem;width:100%;padding:.45rem .75rem;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-soft);font-size:var(--text-sm);cursor:pointer}.sidebar-account-menu button:hover{background:#ffffff0a;color:var(--text);transform:none}.mobile-menu-btn,.mobile-drawer-overlay{display:none}.dashboard-toolbar{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;justify-content:flex-end}.dashboard-toolbar .ghost{padding:.35rem .5rem}.dashboard-toolbar .toggle-group{cursor:pointer}.dashboard-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:var(--space-5)}.stat-card{background:#ffffff08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);padding:.85rem 1rem;transition:border-color .2s,box-shadow .2s}.stat-card:hover{border-color:#ffffff1a;box-shadow:var(--shadow-md)}.stat-card.clickable{cursor:pointer}.stat-card.clickable:hover{border-color:#10b9814d}.stat-card-header{display:flex;align-items:center;gap:.35rem;color:var(--text-soft);font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.stat-card-body{display:flex;align-items:center;justify-content:space-between;margin-top:.5rem}.stat-card-value{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;letter-spacing:-.02em;margin-top:.35rem}.stat-card-note{margin-top:.25rem;font-size:var(--text-xs);color:var(--text-soft)}.stat-card-note-inline{font-family:var(--font-body);font-size:var(--text-sm);font-weight:500;color:var(--text-soft);margin-left:.25rem}.dashboard-holdings-panel{margin-top:0}p{margin:.4rem 0 0;color:var(--text-soft)}h1{margin:0}.panel{background:#ffffff08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);padding:1rem;margin-top:1rem}.panel.compact{padding:.85rem 1rem}.panel-title{font-family:var(--font-display);font-size:var(--text-md);font-weight:700;letter-spacing:-.01em;color:var(--text)}.panel-row{display:flex;justify-content:space-between;align-items:center;gap:.7rem}.panel-row.space-bottom{margin-bottom:.7rem}.panel-actions{display:flex;gap:.45rem}button,input,select{font:inherit}button{display:inline-flex;align-items:center;gap:.4rem;border-radius:var(--radius-md);border:1px solid transparent;padding:.5rem .85rem;background:var(--brand);color:#fff;cursor:pointer;font-weight:600;font-size:var(--text-base);transition:all .2s ease}button:hover{transform:scale(1.02);box-shadow:var(--shadow-md);filter:brightness(1.1)}button:disabled{opacity:.5;cursor:not-allowed;transform:none;filter:none;box-shadow:none}button.ghost{background:transparent;color:var(--text);border-color:var(--line);border-radius:var(--radius-md)}button.ghost:hover{background:#ffffff0d;border-color:var(--text-soft)}button.ghost.danger{color:var(--danger)}button.ghost.danger:hover{background:var(--danger-soft)}input{background:var(--surface-strong);border:1px solid var(--line);color:var(--text);border-radius:var(--radius-md);padding:.55rem .7rem;transition:border-color .15s ease,box-shadow .15s ease}input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #10b98126,0 0 0 1px var(--brand)}input::placeholder{color:var(--text-soft)}select{background:var(--surface-strong);border:1px solid var(--line);color:var(--text);border-radius:var(--radius-md);padding:.55rem 1.8rem .55rem .7rem;transition:border-color .15s ease,box-shadow .15s ease;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23a1a1aa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .55rem center}select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #10b98126,0 0 0 1px var(--brand)}.session-form{margin-top:.8rem;display:grid;grid-template-columns:1fr 1fr auto;gap:.55rem}.accounts-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;justify-content:flex-end}.connect-prompt{text-align:center;padding:2rem 1rem;color:var(--text-soft)}.connect-prompt h3{margin:.75rem 0 .5rem;color:var(--text);font-size:var(--text-lg)}.connect-prompt p{max-width:400px;margin:0 auto;line-height:1.5}.brokerages-list{display:flex;flex-direction:column;gap:.75rem}.brokerage-card-row{display:flex;align-items:flex-start;gap:.5rem}.brokerage-card-row>.brokerage-disconnect-btn{flex-shrink:0;margin-top:.85rem;opacity:.5;padding:.4rem;transition:opacity .15s}.brokerage-card-row:hover>.brokerage-disconnect-btn{opacity:1}.brokerage-card-row.locked{opacity:.55}.brokerage-card-row.locked .brokerage-header{cursor:default}.brokerage-card-row.locked:hover{opacity:.7}.brokerage-card{flex:1;min-width:0;background:#ffffff08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);overflow:hidden;transition:border-color .2s,box-shadow .2s}.brokerage-card:hover{border-color:#ffffff1a}.brokerage-header{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease}.brokerage-header:hover{background:var(--surface-elevated)}.brokerage-header-left{display:flex;align-items:center;gap:.6rem}.brokerage-chevron{transition:transform .2s;color:var(--text-soft);transform:rotate(-90deg);flex-shrink:0}.brokerage-chevron.open{transform:rotate(0)}.brokerage-name{font-family:var(--font-display);font-weight:600;font-size:var(--text-md);color:var(--text)}.brokerage-meta{font-size:var(--text-xs);color:var(--text-soft);margin-top:.1rem}.brokerage-header-right{text-align:right}.brokerage-total{font-weight:600;font-size:var(--text-md);color:var(--text)}.brokerage-status{display:flex;align-items:center;justify-content:flex-end;gap:.35rem;font-size:var(--text-xs);color:var(--text-soft);margin-top:.1rem}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--text-soft)}.status-dot.active{background:var(--brand)}.brokerage-disconnect-btn{font-size:.8rem;line-height:1}.brokerage-accounts{border-top:1px solid var(--line)}.account-row{display:flex;align-items:center;justify-content:space-between;padding:.65rem 1rem .65rem 2.6rem;cursor:pointer;transition:background .12s ease;border-bottom:1px solid var(--line)}.account-row:hover{background:#ffffff0a}.account-row:last-child{border-bottom:none}.account-row-info{display:flex;align-items:center;gap:.5rem}.account-row-name{font-weight:500;font-size:var(--text-base);color:var(--text);display:inline-flex;align-items:center;gap:.35rem}.account-row-edit-btn{opacity:0;padding:.15rem!important;min-width:auto!important;color:var(--text-soft)!important;transition:opacity .15s ease}.account-row:hover .account-row-edit-btn{opacity:1}.account-row-edit-btn:hover{color:var(--brand)!important}.account-row-edit{display:inline-flex;align-items:center;gap:.35rem}.account-row-alias{font-weight:400;color:var(--text-soft)}.account-row-number{font-size:var(--text-xs);color:var(--text-soft)}.account-row-stats{display:flex;align-items:center;gap:1rem;text-align:right}.account-row-value{font-weight:600;font-size:var(--text-base);color:var(--text)}.account-row-holdings{font-size:var(--text-xs);color:var(--text-soft);min-width:80px}.manual-account-delete,.account-row-disconnect{padding:4px;border-radius:var(--radius-sm);opacity:.5;transition:opacity .15s}.manual-account-delete:hover,.account-row-disconnect:hover{opacity:1}.toggle-group{display:inline-flex;padding:.2rem;background:var(--surface-strong);border-radius:var(--radius-full);border:1px solid rgba(255,255,255,.06)}.toggle-group button{border:0;background:transparent;color:var(--text-soft);border-radius:var(--radius-full);padding:.38rem .7rem;font-size:var(--text-sm)}.toggle-group button.active{background:var(--brand);color:#fff;box-shadow:var(--shadow-glow)}.toggle-group button:hover{transform:none}.filters-row{margin-top:.85rem;display:flex;flex-wrap:wrap;gap:.65rem;align-items:flex-end}.filter-field{display:grid;gap:.28rem;flex:1 1 180px;min-width:140px}.filter-field label{color:var(--text-soft);font-size:var(--text-sm);font-weight:600}.table-wrap{margin-top:.7rem;overflow:hidden}.table-scroll{width:100%;overflow-y:auto;overflow-x:hidden;border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.06);background:#ffffff08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.table-scroll::-webkit-scrollbar{width:6px}.table-scroll::-webkit-scrollbar-track{background:transparent}.table-scroll::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.activity-table-scroll{height:620px}.table-height-handle{margin-top:.3rem;height:14px;cursor:ns-resize;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none}.table-height-grip{width:66px;height:5px;border-radius:var(--radius-full);background:var(--line)}.table-height-handle:hover .table-height-grip{background:var(--text-soft)}table{width:100%;table-layout:fixed;border-collapse:collapse;min-width:0}th,td{border-bottom:1px solid var(--line);text-align:left;padding:.5rem .4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--text-base)}th{color:var(--text-soft);font-family:var(--font-body);font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;position:sticky;top:0;background:var(--surface-strong);z-index:1}.resizable-th{padding:0}.th-inner{position:relative;display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem .6rem .4rem;min-height:38px}.resize-handle{position:absolute;right:0;top:0;bottom:0;width:10px;cursor:col-resize;border-right:2px solid transparent}.resize-handle:hover{border-right-color:var(--brand)}tr.clickable-row{cursor:pointer;transition:background .12s ease}tr.clickable-row:hover{background:#ffffff0a}.trend-up{color:var(--brand)}.trend-down{color:var(--danger)}.trend-text{font-weight:600}.pnl-positive-value{color:var(--brand)}.pnl-negative-value{color:var(--danger)}.status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;margin:1rem 0}.status-card{background:#ffffff08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);padding:.85rem .95rem .8rem;transition:border-color .2s,box-shadow .2s}.status-card:hover{border-color:#ffffff1a;box-shadow:var(--shadow-md)}.status-header{display:inline-flex;align-items:center;gap:.4rem;color:var(--text-soft);font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em}.status-value{margin-top:.4rem;font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700}.status-note{color:var(--text-soft);margin-top:.24rem;font-size:var(--text-sm)}.pie-wrap{margin-top:var(--space-6);margin-bottom:var(--space-4)}.pie-chart-layout{display:flex;gap:3rem;align-items:center;justify-content:center;padding:0 2rem;min-height:300px}.pie-chart-container{flex:0 0 35%;max-width:350px}.pie-legend-container{flex:0 0 60%;max-width:600px;min-height:300px;max-height:350px;overflow-y:auto;padding-right:.5rem}.pie-legend-container::-webkit-scrollbar{width:6px}.pie-legend-container::-webkit-scrollbar-track{background:transparent;border-radius:3px}.pie-legend-container::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.legend-grid{display:grid;gap:.6rem;padding:.75rem}.legend-item{display:grid;grid-template-columns:auto minmax(120px,1fr) auto auto;align-items:center;gap:.65rem;padding:.65rem .75rem;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-md);background:#ffffff08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:border-color .2s}.legend-item:hover{border-color:#ffffff1a}.legend-item>span:nth-child(2){white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.legend-dot{width:12px;height:12px;border-radius:var(--radius-full)}.legend-logo{border-radius:var(--radius-full)}.legend-item.clickable{cursor:pointer}.loading{display:inline-flex;align-items:center;gap:.55rem;margin-top:1rem;color:var(--text-soft)}.spinner{animation:spin 1.1s linear infinite}.error-banner{margin-top:1rem;background:var(--danger-soft);border:1px solid rgba(239,68,68,.3);color:var(--danger);padding:.7rem .75rem;border-radius:var(--radius-md)}.warning p{display:flex;align-items:center;gap:.45rem;margin:.35rem 0;color:#d4a930}.reveal{animation:revealUp .45s cubic-bezier(.16,1,.3,1) both}.delayed-1{animation-delay:50ms}.delayed-2{animation-delay:.1s}.delayed-3{animation-delay:.15s}.delayed-4{animation-delay:.2s}@keyframes revealUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pageIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.settings-tabs{display:flex;gap:.25rem;margin-bottom:1rem;border-bottom:1px solid var(--line);padding-bottom:.5rem}.settings-tab{padding:.45rem 1rem;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-soft);font-weight:600;cursor:pointer;transition:all .15s ease}.settings-tab:hover{background:#ffffff0a;transform:none}.settings-tab.active{background:var(--brand-soft);color:var(--brand)}.settings-section{margin-top:0}.settings-group{display:flex;flex-direction:column;gap:0}.settings-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.settings-row:last-child{border-bottom:none}.settings-label{font-family:var(--font-display);font-weight:600;font-size:var(--text-md);color:var(--text)}.settings-description{font-size:var(--text-sm);color:var(--text-soft);margin-top:.15rem}.account-alias-input{width:160px;padding:.4rem .6rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--text);font-size:var(--text-base)}.account-alias-input:focus{border-color:var(--brand);outline:none}.account-alias-display{color:var(--text-soft);font-size:var(--text-base)}.stock-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem}.stock-back-btn{font-size:var(--text-sm)}.stock-identity{display:flex;align-items:center;gap:.5rem}.company-logo{border-radius:4px;flex-shrink:0;object-fit:contain;background:#ffffff14;filter:drop-shadow(0 0 1px rgba(255,255,255,.5))}.company-logo.cash-logo{display:inline-flex;align-items:center;justify-content:center;font-weight:700;color:var(--brand);line-height:1}.company-logo-fallback{display:inline-block;flex-shrink:0}.symbol-with-logo{display:inline-flex;align-items:center;gap:.4rem}.stock-symbol{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;letter-spacing:-.01em}.stock-name{color:var(--text-soft);font-size:var(--text-base)}.exchange-selector{display:flex;align-items:center;gap:.5rem;margin-left:auto}.exchange-selector label{color:var(--text-soft);font-size:var(--text-base);font-weight:600}.exchange-selector select{padding:.35rem .6rem;font-size:var(--text-base)}.stock-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:.75rem 0}.stock-chart-panel{margin-top:1rem}.stock-range-tabs{display:inline-flex;background:var(--surface-strong);border-radius:var(--radius-full);border:1px solid rgba(255,255,255,.06);padding:.2rem;margin:0}.stock-range-tabs button{padding:.35rem .6rem;font-size:var(--text-sm);border:0;background:transparent;color:var(--text-soft);border-radius:var(--radius-full)}.stock-range-tabs button.active{background:var(--brand-soft);color:var(--brand)}.stock-line-chart{min-height:200px;position:relative}.stock-chart-loading,.stock-chart-empty{display:flex;align-items:center;justify-content:center;gap:.55rem;min-height:220px;color:var(--text-soft)}.stock-two-col{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}.stock-two-col>.panel{margin-top:0}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 1.5rem;margin-top:.75rem}.stat-item{display:flex;justify-content:space-between;align-items:baseline;padding:.6rem 0;border-bottom:1px solid var(--line)}.stat-item:last-child{border-bottom:none}.stat-day-range{grid-column:1 / -1;flex-wrap:wrap}.stat-label{color:var(--text-soft);font-size:var(--text-base);font-weight:600}.stat-value{color:var(--text);font-weight:600;font-size:var(--text-md)}.day-range-bar{width:100%;margin-top:.4rem}.day-range-track{position:relative;height:4px;border-radius:2px;background:var(--line)}.day-range-fill{position:absolute;top:0;left:0;height:4px;border-radius:2px;background:var(--brand)}.day-range-dot{position:absolute;top:-3px;width:10px;height:10px;border-radius:50%;background:var(--brand);transform:translate(-50%)}.back-button{margin-bottom:.75rem;display:inline-flex;align-items:center;gap:.3rem;font-size:var(--text-base)}.back-chevron{transform:rotate(90deg)}.account-card-strip{display:flex;gap:.5rem;overflow-x:auto;padding:.25rem;margin:-.25rem -.25rem .5rem;scrollbar-width:none}.account-card-strip::-webkit-scrollbar{display:none}.account-card{flex-shrink:0;min-width:150px;padding:.6rem .85rem;border-radius:var(--radius-lg);border:1px solid var(--line);background:#ffffff05;color:var(--text-soft);cursor:pointer;transition:all .15s ease;text-align:left;display:flex;flex-direction:column;gap:.3rem}.account-card:hover{border-color:var(--text-soft);background:#ffffff0a}.account-card.active{border-color:var(--brand);background:#10b98114}.account-card.active .account-card-name{color:var(--brand)}.account-card.active .account-card-value{color:var(--text)}.account-card-name{font-size:.8rem;font-weight:600;color:var(--text-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-card-bottom{display:flex;align-items:baseline;gap:.5rem}.account-card-value{font-family:var(--font-display);font-size:.95rem;font-weight:700;letter-spacing:-.02em;color:var(--text-soft)}.account-card-meta{font-size:.7rem;color:var(--text-muted, rgba(255,255,255,.35));white-space:nowrap}.account-card-connect{align-items:center;justify-content:center;text-align:center;gap:.4rem;border-style:dashed;min-width:140px}.account-card-connect:hover{border-color:var(--brand);color:var(--brand)}.account-card-connect .account-card-name{color:inherit}.position-summary{margin-top:.5rem}.position-total{display:flex;justify-content:space-between;padding:.5rem 0 .7rem;font-weight:600;font-size:var(--text-md)}.position-value{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700}.position-table table{table-layout:auto}.position-pie-wrap{margin-top:1rem}.related-grid{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.75rem}.related-card{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;min-width:100px;padding:.5rem .85rem;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.06);background:#ffffff08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .15s ease}.related-card:hover{border-color:#ffffff1a;box-shadow:var(--shadow-md);transform:translateY(-1px)}.related-symbol{font-weight:700;font-size:var(--text-base);color:var(--brand)}.related-value{font-size:var(--text-sm);color:var(--text-soft)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-line{display:inline-block;height:1em;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--line) 25%,#333 50%,var(--line) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.tooltip{border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.06);background:#ffffff08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:.5rem .65rem;box-shadow:var(--shadow-md)}.tooltip-label{color:var(--text-soft);font-size:var(--text-sm)}.tooltip-value{font-weight:700;margin-top:.25rem;color:var(--text)}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 0%,rgba(16,185,129,.08) 0%,transparent 60%),var(--bg);padding:2rem}.auth-card{width:100%;max-width:400px;background:#ffffff08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);padding:2.5rem;box-shadow:var(--shadow-lg)}.auth-brand{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;justify-content:center}.auth-brand img{width:40px;height:40px;border-radius:var(--radius-md)}.auth-brand span{font-family:var(--font-display);font-size:1.3rem;font-weight:700;letter-spacing:-.02em}.auth-form{display:flex;flex-direction:column;gap:.6rem}.auth-form input{width:100%;padding:.65rem .85rem}.auth-form button[type=submit]{width:100%;padding:.65rem;justify-content:center;font-size:var(--text-md);margin-top:.15rem}.auth-google{display:flex;justify-content:center;margin-top:.6rem}.auth-footer-row{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.4rem;font-size:var(--text-xs);color:var(--text-soft)}.auth-footer-row button{background:none;border:none;color:var(--brand);cursor:pointer;padding:0;font-size:var(--text-xs);font-weight:600;min-width:auto}.auth-footer-row button:hover{transform:none;text-decoration:underline;filter:none;box-shadow:none}.auth-footer-sep{opacity:.3}.auth-error{background:var(--danger-soft);color:var(--danger);padding:.5rem .7rem;border-radius:var(--radius-md);font-size:var(--text-base);text-align:center}.auth-legal-footer{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1rem;font-size:var(--text-xs);color:var(--text-soft)}.auth-legal-footer span{opacity:.4}.auth-legal-footer button{background:none;border:none;color:var(--text-soft);cursor:pointer;font-size:var(--text-xs);padding:0;min-width:auto}.auth-legal-footer button:hover{color:var(--brand);transform:none;text-decoration:underline;filter:none;box-shadow:none}.contact-page{display:flex;justify-content:center;padding:2rem}.contact-card{background:#ffffff08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);padding:2.5rem;max-width:440px;width:100%;text-align:center}.contact-icon{color:var(--brand);margin-bottom:1rem}.contact-card h2{margin:0 0 .5rem;font-family:var(--font-display);font-size:var(--text-2xl)}.contact-card p{color:var(--text-soft);font-size:var(--text-base);margin:0 0 1.25rem;line-height:1.5}.contact-email-row{display:flex;align-items:center;justify-content:center;gap:.5rem;background:var(--surface-strong);border:1px solid var(--line);border-radius:var(--radius-md);padding:.75rem 1rem;margin-bottom:1.25rem}.contact-email{color:var(--brand);font-size:var(--text-lg);font-weight:500;text-decoration:none}.contact-email:hover{text-decoration:underline}.contact-copy{background:transparent;color:var(--text-soft);border:1px solid var(--line);padding:.25rem .6rem;border-radius:var(--radius-sm);font-size:var(--text-xs);cursor:pointer;min-width:auto}.contact-copy:hover{color:var(--text);border-color:var(--text-soft)}.contact-note{color:var(--text-soft);font-size:var(--text-sm);margin:0}.legal-page{display:flex;justify-content:center;padding:2rem;min-height:100vh;background:var(--bg)}.legal-container{max-width:700px;width:100%;padding:2rem 0}.legal-container h1{font-family:var(--font-display);font-size:var(--text-3xl);color:var(--text);margin:0 0 .25rem;letter-spacing:-.02em}.legal-updated{color:var(--text-soft);font-size:var(--text-sm);margin:0 0 2rem}.legal-container h2{font-family:var(--font-display);font-size:var(--text-lg);color:var(--text);margin:1.75rem 0 .5rem}.legal-container p{color:var(--text-soft);font-size:var(--text-base);line-height:1.65;margin:0 0 .75rem}.legal-container ul{color:var(--text-soft);font-size:var(--text-base);line-height:1.65;margin:0 0 .75rem;padding-left:1.25rem}.legal-container a{color:var(--brand);text-decoration:none}.legal-container a:hover{text-decoration:underline}.legal-back{margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--line)}.legal-back button{background:transparent;color:var(--text-soft);border:1px solid var(--line);padding:.5rem 1.25rem;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-base)}.legal-back button:hover{color:var(--text);border-color:var(--text-soft)}.link-button{background:none;border:none;color:var(--brand);cursor:pointer;padding:0;font-size:inherit}.link-button:hover{text-decoration:underline;transform:none;filter:none;box-shadow:none}.ticker-search{position:relative;flex:2 1 200px;min-width:160px}.ticker-search-input-wrap{display:flex;align-items:center;gap:.5rem;background:none;border:none;padding:0}.ticker-search-input-wrap input{flex:1;min-width:0}.ticker-search-input-wrap input::placeholder{color:var(--text-soft);opacity:.6}.ticker-search-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:50;background:#18181bf2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);max-height:260px;overflow-y:auto}.ticker-search-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .7rem;cursor:pointer;transition:background .1s}.ticker-search-item:hover,.ticker-search-item.active{background:#ffffff0d}.ticker-search-symbol{font-weight:700;font-size:var(--text-base);color:var(--text);min-width:70px}.ticker-search-name{flex:1;font-size:var(--text-sm);color:var(--text-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ticker-search-exchange{font-size:var(--text-xs);color:var(--text-soft);opacity:.6;flex-shrink:0}.ticker-search-value{display:flex;align-items:center;gap:.4rem;flex:1;min-width:0;font-size:var(--text-base);color:var(--text)}.ticker-search-value-name{color:var(--text-soft);font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ticker-search-clear{background:none;border:none;color:var(--text-soft);cursor:pointer;padding:.1rem;display:flex;border-radius:var(--radius-sm);min-width:auto;flex-shrink:0}.ticker-search-clear:hover{color:var(--text);background:#ffffff14;transform:none;filter:none;box-shadow:none}.ticker-search-empty{padding:.75rem;text-align:center;color:var(--text-soft);font-size:var(--text-sm)}.add-holding-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.55rem .75rem;background:transparent;border:1px dashed var(--line);border-radius:var(--radius-md);color:var(--text-soft);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap;align-self:flex-end;flex:0 0 auto}.add-holding-btn:hover{color:var(--brand);border-color:var(--brand);background:var(--brand-soft);transform:none;filter:none;box-shadow:none}.add-holding-btn.active{color:var(--text-soft);border-style:solid}.add-holding-form{display:flex;align-items:center;gap:.6rem;margin-top:.6rem;padding:.75rem;background:#ffffff05;border:1px solid var(--line);border-radius:var(--radius-md);flex-wrap:wrap}.add-holding-shares{width:100px;padding:.45rem .6rem;font-size:var(--text-base)}.add-holding-account{padding:.45rem .6rem;font-size:var(--text-base);min-width:130px;flex:1 1 140px}.add-holding-new-account{width:140px;padding:.45rem .6rem;font-size:var(--text-base)}.add-holding-submit{padding:.45rem 1rem;font-size:var(--text-sm);min-width:auto}.add-holding-error{color:var(--danger);font-size:var(--text-sm)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:4rem 2rem;min-height:400px}.empty-state-icon{color:var(--brand);opacity:.6;margin-bottom:1.25rem}.empty-state-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:700;letter-spacing:-.02em;color:var(--text);margin:0 0 .5rem}.empty-state-text{color:var(--text-soft);font-size:var(--text-base);line-height:1.6;margin:0 0 1.75rem;max-width:400px}.empty-state-actions{display:flex;align-items:center;gap:.75rem}.btn-primary{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.1rem;background:var(--brand);color:#fff;border:none;border-radius:var(--radius-md);font-weight:600;font-size:var(--text-sm);cursor:pointer;transition:all .2s ease}.btn-primary:hover{filter:brightness(1.12);box-shadow:0 0 20px #10b98133}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.1rem;background:transparent;color:var(--text-soft);border:1px solid var(--line);border-radius:var(--radius-md);font-weight:600;font-size:var(--text-sm);cursor:pointer;transition:all .2s ease}.btn-ghost:hover{color:var(--text);border-color:#fff3;background:#ffffff0a}.manual-row-delete{background:none;border:none;color:var(--text-soft);cursor:pointer;padding:.15rem;border-radius:var(--radius-sm);opacity:0;transition:opacity .15s,color .15s;display:flex;min-width:auto}tr:hover .manual-row-delete{opacity:1}.manual-row-delete:hover{color:var(--danger);transform:none;filter:none;box-shadow:none}@media(max-width:1100px){.dashboard-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:980px){.status-grid,.stock-status-grid,.stock-two-col,.stats-grid,.session-form{grid-template-columns:1fr}.pie-chart-layout{flex-direction:column;align-items:center;gap:2rem;padding:0}.pie-chart-container{flex:0 0 auto;width:100%;max-width:320px}.pie-legend-container{flex:0 0 auto;width:100%;max-width:none;max-height:none;padding-right:0}}@media(max-width:768px){.sidebar-desktop{display:none}.mobile-menu-btn{display:flex;align-items:center;justify-content:center;position:fixed;top:.75rem;left:.75rem;z-index:90;background:#ffffff08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.06);color:var(--text);border-radius:var(--radius-md);padding:.4rem;cursor:pointer}.mobile-drawer-overlay{display:block;position:fixed;inset:0;z-index:200;background:#00000080;animation:fadeIn .2s ease-out}.mobile-drawer{display:flex;position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width);max-width:80vw;z-index:201;animation:slideIn .2s ease-out}.mobile-drawer .sidebar{border-right:1px solid rgba(255,255,255,.06)}.mobile-drawer-close{position:absolute;top:.75rem;right:.75rem;background:transparent;border:none;color:var(--text-soft);cursor:pointer;padding:.25rem;border-radius:var(--radius-sm)}.mobile-drawer-close:hover{color:var(--text);background:var(--surface-elevated)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}.main-content{margin-left:0}.page-header{padding:var(--space-4) var(--space-4) 0;padding-left:3.25rem}.page-body{padding:var(--space-3);overflow-x:hidden}.dashboard-stats{grid-template-columns:repeat(2,1fr);gap:.5rem}.stat-card{padding:.65rem .75rem}.stat-card-value{font-size:var(--text-lg)}.dashboard-toolbar{margin-bottom:.5rem}.add-holding-form{flex-direction:column;align-items:stretch}.add-holding-shares,.add-holding-account,.add-holding-new-account{width:100%}.manual-row-delete{opacity:1}.table-scroll{overflow-x:auto}table{min-width:700px}.stock-header{flex-direction:column;align-items:flex-start;gap:.5rem}.exchange-selector{width:100%;margin-left:0}.exchange-selector select{flex:1}.stock-range-tabs{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}.panel-row{flex-direction:column;align-items:flex-start}.settings-row{flex-direction:column;align-items:flex-start;gap:.5rem}.settings-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap}.account-row{padding-left:1rem}.account-row-stats{gap:.5rem}.auth-card{padding:1.5rem}.legend-item{grid-template-columns:auto minmax(60px,1fr) auto auto;gap:.4rem;padding:.5rem .6rem;font-size:var(--text-sm)}.brokerage-header{flex-wrap:wrap;gap:.5rem}.brokerage-header-right{text-align:right}.legal-page{padding:1rem}}.land-page{min-height:100vh;background:var(--bg);overflow-x:hidden;scroll-behavior:smooth}.land-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}.land-visible{opacity:1;transform:translateY(0)}.land-section-features .land-showcase:nth-child(3){transition-delay:.05s}.land-section-features .land-showcase:nth-child(4){transition-delay:.1s}.land-section-features .land-showcase:nth-child(5){transition-delay:.15s}.land-features-grid .land-reveal:nth-child(4){transition-delay:.3s}.land-security-grid .land-reveal:nth-child(2){transition-delay:.08s}.land-security-grid .land-reveal:nth-child(3){transition-delay:.16s}.land-security-grid .land-reveal:nth-child(4){transition-delay:.24s}.land-steps .land-reveal:nth-child(2){transition-delay:.1s}.land-steps .land-reveal:nth-child(3){transition-delay:.15s}.land-steps .land-reveal:nth-child(4){transition-delay:.2s}.land-steps .land-reveal:nth-child(5){transition-delay:.25s}.land-nav{position:fixed;top:0;left:0;right:0;z-index:200;background:#09090bcc;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.06)}.land-nav-inner{max-width:1100px;margin:0 auto;padding:.75rem 2rem;display:flex;align-items:center;justify-content:space-between}.land-nav-brand{display:flex;align-items:center;gap:.6rem;font-family:var(--font-display);font-weight:700;font-size:var(--text-xl);letter-spacing:-.02em;color:var(--text)}.land-nav-logo{width:32px;height:32px;border-radius:var(--radius-sm)}.land-nav-actions{display:flex;align-items:center;gap:.5rem}.land-btn-primary{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.1rem;background:var(--brand);color:#fff;border:none;border-radius:var(--radius-md);font-family:var(--font-body);font-weight:600;font-size:var(--text-sm);cursor:pointer;transition:all .2s ease}.land-btn-primary:hover{transform:scale(1.03);filter:brightness(1.12);box-shadow:0 0 24px #10b98140}.land-btn-text{display:inline-flex;align-items:center;padding:.55rem .75rem;background:none;border:none;color:var(--text-soft);font-family:var(--font-body);font-weight:600;font-size:var(--text-sm);cursor:pointer;transition:color .15s}.land-btn-text:hover{color:var(--text);transform:none}.land-btn-ghost{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.1rem;background:transparent;color:var(--text-soft);border:1px solid var(--line);border-radius:var(--radius-md);font-family:var(--font-body);font-weight:600;font-size:var(--text-sm);cursor:pointer;transition:all .2s ease}.land-btn-ghost:hover{color:var(--text);border-color:#fff3;background:#ffffff0a;transform:scale(1.03)}.land-btn-lg{padding:.75rem 1.5rem;font-size:var(--text-base)}.land-hero{position:relative;padding:8rem 2rem 4rem;text-align:center;max-width:1100px;margin:0 auto}.land-hero-bg{position:fixed;top:0;left:50%;transform:translate(-50%);width:800px;height:600px;background:radial-gradient(ellipse at 50% 20%,rgba(16,185,129,.1) 0%,transparent 65%);pointer-events:none;z-index:0}.land-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .85rem;background:#10b98114;border:1px solid rgba(16,185,129,.15);border-radius:var(--radius-full);color:var(--brand);font-size:var(--text-xs);font-weight:600;margin-bottom:1.5rem}.land-badge svg{width:14px;height:14px}.land-hero-title{font-family:var(--font-display);font-size:clamp(2.2rem,5vw,3.5rem);font-weight:700;letter-spacing:-.035em;line-height:1.1;color:var(--text);margin:0 0 1.25rem}.land-gradient-text{background:linear-gradient(135deg,var(--brand) 0%,#34d399 50%,#6ee7b7 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.land-hero-sub{font-size:var(--text-lg);color:var(--text-soft);line-height:1.6;max-width:540px;margin:0 auto 2rem}.land-hero-actions{display:flex;align-items:center;justify-content:center;gap:.75rem}.land-hero-mockup{margin-top:3.5rem;position:relative;z-index:1}.land-mockup{position:relative;max-width:900px;margin:0 auto}.land-mockup-inner{display:flex;background:var(--surface);border:1px solid rgba(255,255,255,.08);border-radius:16px;overflow:hidden;box-shadow:0 4px 24px #0006,0 0 0 1px #ffffff0a,0 0 80px #10b9810f;aspect-ratio:16 / 9.5}.land-glow{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none;z-index:-1}.land-glow-1{width:300px;height:300px;background:#10b9811f;top:-60px;right:-40px;animation:land-float 8s ease-in-out infinite}.land-glow-2{width:250px;height:250px;background:#3b82f614;bottom:-40px;left:-30px;animation:land-float 10s ease-in-out infinite reverse}@keyframes land-float{0%,to{transform:translate(0)}50%{transform:translate(12px,-16px)}}.land-anim-fade{opacity:0;animation:land-anim-in .5s cubic-bezier(.16,1,.3,1) forwards}@keyframes land-anim-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.land-donut-slice{opacity:0;animation:land-donut-draw .6s cubic-bezier(.16,1,.3,1) forwards}@keyframes land-donut-draw{0%{opacity:0;stroke-width:0}to{opacity:1;stroke-width:9}}.land-mock-sidebar{width:18%;background:var(--surface-strong);border-right:1px solid rgba(255,255,255,.06);padding:5% 3%;flex-shrink:0;display:flex;flex-direction:column}.land-mock-logo{width:55%;height:0;padding-bottom:55%;background:#10b98126;border-radius:8px;margin-bottom:16%}.land-mock-nav{display:flex;flex-direction:column;gap:2px}.land-mock-nav-item{padding:6% 10%;background:transparent;border-radius:5px;position:relative}.land-mock-nav-item span{font-size:clamp(5px,.9vw,10px);color:var(--text-soft);font-weight:500;letter-spacing:-.01em}.land-mock-nav-item.active{background:transparent}.land-mock-nav-item.active:before{content:"";position:absolute;left:0;top:20%;height:60%;width:2px;border-radius:2px;background:var(--brand)}.land-mock-nav-item.active span{color:var(--brand);font-weight:600}.land-mock-main{flex:1;padding:3% 4%;display:flex;flex-direction:column;gap:3%;min-width:0;overflow:hidden}.land-mock-title{font-family:var(--font-display);font-size:clamp(8px,1.3vw,16px);font-weight:600;color:var(--text);letter-spacing:-.02em;animation-delay:.2s}.land-mock-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:2.5%}.land-mock-stat{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:clamp(4px,.6vw,8px);padding:6% 8%}.land-mock-stat-lbl{font-size:clamp(4px,.6vw,8px);color:var(--text-soft);text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-bottom:4px}.land-mock-stat-val{font-family:var(--font-display);font-size:clamp(6px,1.05vw,14px);font-weight:700;color:var(--text);letter-spacing:-.02em;white-space:nowrap}.land-mock-stat-val.green{color:var(--brand)}.land-mock-stat-sub{font-size:clamp(4px,.5vw,7px);color:var(--brand);font-weight:600;margin-top:1px}.land-mock-chart-area{display:flex;align-items:center;gap:4%;padding:1% 0}.land-mock-donut{width:28%;flex-shrink:0}.land-mock-donut svg{width:100%;height:auto}.land-mock-legend{flex:1;display:flex;flex-direction:column;gap:3px}.land-mock-legend-row{display:flex;align-items:center;gap:clamp(3px,.5vw,8px);padding:2px 0}.land-mock-dot{width:clamp(4px,.5vw,8px);height:clamp(4px,.5vw,8px);border-radius:50%;flex-shrink:0}.land-mock-legend-name{font-size:clamp(5px,.7vw,10px);color:var(--text);font-weight:500;min-width:0}.land-mock-legend-pct{font-size:clamp(4px,.6vw,9px);color:var(--text-soft);margin-left:auto}.land-mock-legend-val{font-size:clamp(4px,.6vw,9px);color:var(--text-soft);font-weight:600;min-width:clamp(20px,4vw,50px);text-align:right}.land-mock-accounts{display:flex;gap:2.5%}.land-mock-account{flex:1;display:flex;align-items:center;gap:clamp(3px,.5vw,8px);background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:clamp(4px,.6vw,8px);padding:2% 3%}.land-mock-account-dot{width:clamp(5px,.6vw,8px);height:clamp(5px,.6vw,8px);border-radius:50%;flex-shrink:0}.land-mock-account-name{font-size:clamp(5px,.7vw,10px);font-weight:600;color:var(--text);font-family:var(--font-display);white-space:nowrap}.land-mock-account-meta{font-size:clamp(4px,.5vw,7px);color:var(--text-soft);white-space:nowrap}.land-mock-account-val{font-size:clamp(5px,.65vw,9px);font-weight:600;color:var(--text);font-family:var(--font-display);margin-left:auto;white-space:nowrap}.land-mock-table{display:flex;flex-direction:column;background:#ffffff05;border-radius:clamp(4px,.6vw,8px);overflow:hidden;border:1px solid rgba(255,255,255,.06)}.land-mock-table-header{display:flex;align-items:center;padding:1.8% 3%;background:var(--surface-strong);border-bottom:1px solid rgba(255,255,255,.06)}.land-mock-th{font-size:clamp(4px,.55vw,8px);color:var(--text-soft);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.land-mock-th.right{text-align:right}.land-mock-table-row{display:flex;align-items:center;padding:1.5% 3%;border-bottom:1px solid rgba(255,255,255,.03)}.land-mock-table-row:last-child{border-bottom:none}.land-mock-td-symbol{font-size:clamp(5px,.7vw,10px);font-weight:700;color:var(--text);font-family:var(--font-display)}.land-mock-td-name{font-size:clamp(4px,.6vw,9px);color:var(--text-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.land-mock-td{font-size:clamp(5px,.65vw,9px);color:var(--text);font-weight:500;font-family:var(--font-display)}.land-mock-td.right{text-align:right}.land-mock-td.green{color:var(--brand)}.land-mock-td.red{color:var(--danger)}.land-mock-td-acct{font-size:clamp(4px,.5vw,7px);color:var(--text-soft);background:#ffffff0d;padding:1px clamp(2px,.3vw,5px);border-radius:3px;font-weight:500;white-space:nowrap;width:fit-content}.land-section{max-width:1100px;margin:0 auto;padding:5rem 2rem}.land-section-header{text-align:center;margin-bottom:3rem}.land-section-label{display:inline-block;font-family:var(--font-display);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--brand);margin-bottom:.75rem}.land-section-header h2{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.2rem);font-weight:700;letter-spacing:-.03em;color:var(--text);margin:0 0 .6rem}.land-section-header p{font-size:var(--text-lg);color:var(--text-soft);margin:0}.land-section-features{max-width:1100px}.land-showcase{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;margin-bottom:5rem}.land-showcase:last-child{margin-bottom:0}.land-showcase-reverse{direction:rtl}.land-showcase-reverse>*{direction:ltr}.land-showcase-num{font-family:var(--font-display);font-size:.75rem;font-weight:700;letter-spacing:.12em;color:var(--brand);margin-bottom:.75rem;opacity:.7}.land-showcase-text h3{font-family:var(--font-display);font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:700;letter-spacing:-.02em;color:var(--text);margin:0 0 .75rem}.land-showcase-text p{font-size:var(--text-base);color:var(--text-soft);line-height:1.7;margin:0;max-width:420px}.land-showcase-link{display:inline-flex;align-items:center;gap:.25rem;margin-top:.75rem;background:none;border:none;color:var(--brand);font-size:var(--text-sm);font-weight:600;cursor:pointer;padding:0;transition:opacity .2s}.land-showcase-link:hover{opacity:.8}.land-showcase-visual{display:flex;justify-content:center}.land-feat-graphic{width:100%;max-width:440px;border-radius:var(--radius-lg);background:#ffffff05;border:1px solid rgba(255,255,255,.06);padding:1.5rem;position:relative;overflow:hidden}.land-feat-graphic:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(16,185,129,.06) 0%,transparent 70%);pointer-events:none}.land-combine-scene{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:1rem}.land-combine-badge{display:flex;align-items:center;gap:.6rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius-md);padding:.6rem .75rem;flex:1;min-width:0}.land-combine-flag{flex-shrink:0}.land-flag-svg,.land-flag-img{width:28px;height:19px;border-radius:3px;display:block;object-fit:cover}.land-combine-ticker{display:flex;flex-direction:column;min-width:0}.land-combine-sym{font-family:var(--font-display);font-size:var(--text-sm);font-weight:700;color:var(--text);letter-spacing:-.01em}.land-combine-val{font-size:.7rem;color:var(--text-soft);white-space:nowrap}.land-combine-merge{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#10b9811a;color:var(--brand);animation:land-pulse-soft 2s ease-in-out infinite}@keyframes land-pulse-soft{0%,to{box-shadow:0 0 #10b98126}50%{box-shadow:0 0 0 8px #10b98100}}.land-combine-result{display:flex;flex-direction:column;align-items:center;gap:.5rem}.land-combine-arrow{color:var(--text-soft);opacity:.5}.land-combine-merged{display:flex;flex-direction:column;align-items:center;background:#10b98114;border:1px solid rgba(16,185,129,.2);border-radius:var(--radius-md);padding:.6rem 1.5rem;text-align:center}.land-combine-merged-sym{font-family:var(--font-display);font-size:var(--text-lg);font-weight:800;color:var(--brand);letter-spacing:-.02em}.land-combine-merged-total{font-size:var(--text-sm);color:var(--text);font-weight:600}.land-combine-merged-note{font-size:.65rem;color:var(--text-soft);margin-top:.15rem;text-transform:uppercase;letter-spacing:.06em}.land-feat-brokers{overflow:hidden;padding:.5rem 0 1.25rem}.land-broker-marquee{mask-image:linear-gradient(to right,transparent,black 8%,black 92%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 8%,black 92%,transparent);overflow:clip visible;overflow-x:clip;overflow-y:visible}.land-broker-track{display:flex;gap:2rem;animation:land-marquee 30s linear infinite;width:max-content}@keyframes land-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.land-broker-icon{display:flex;flex-direction:column;align-items:center;gap:.4rem;flex-shrink:0}.land-broker-logo{width:48px;height:48px;border-radius:var(--radius-md);background:#ffffff0f;border:1.5px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;overflow:hidden;transition:border-color .25s,transform .25s}.land-broker-logo img{width:32px;height:32px;object-fit:contain}.land-broker-icon:hover .land-broker-logo{transform:translateY(-2px)}.land-broker-name{font-size:.65rem;color:var(--text-soft);font-family:var(--font-body);white-space:nowrap;max-width:72px;overflow:hidden;text-overflow:ellipsis;text-align:center}.land-views-tabs{display:flex;gap:.5rem;margin-bottom:.75rem;justify-content:center}.land-views-tab{font-family:var(--font-display);font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-soft);background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:999px;padding:.3rem .7rem;cursor:pointer;transition:all .2s ease}.land-views-tab:hover{color:var(--text);background:#ffffff14}.land-views-tab.active{color:var(--brand);background:#10b9811f;border-color:#10b9814d}.land-views-donut circle{transition:stroke-dasharray .4s ease,stroke-dashoffset .4s ease}.land-views-body{display:flex;align-items:center;gap:1rem;min-height:110px}.land-views-donut{width:90px;height:90px;flex-shrink:0}.land-views-legend{display:flex;flex-direction:column;gap:.3rem;flex:1;min-width:0}.land-views-leg-row{display:flex;align-items:center;gap:.4rem;font-size:.72rem;color:var(--text-soft)}.land-views-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.land-views-pct{margin-left:auto;font-family:var(--font-display);font-weight:600;color:var(--text);font-size:.72rem}.land-feat-live{display:flex;justify-content:center}.land-live-card{width:100%;max-width:320px}.land-live-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:.5rem}.land-live-sym{font-family:var(--font-display);font-size:var(--text-lg);font-weight:800;color:var(--text);letter-spacing:-.02em}.land-live-price{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;color:var(--brand)}.land-live-chart{width:100%;height:60px;display:block;margin-bottom:.5rem}.land-live-meta{display:flex;justify-content:space-between;align-items:center}.land-live-change{font-size:.78rem;font-weight:600;color:var(--brand)}.land-live-range{font-size:.65rem;color:var(--text-soft);letter-spacing:.02em}.land-section-security{border-top:1px solid rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.04);background:#ffffff03}.land-security-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;max-width:800px;margin:0 auto}.land-security-card{display:flex;gap:1rem;padding:1.25rem;border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.05);background:#ffffff05;transition:border-color .3s}.land-security-card:hover{border-color:#ffffff1a}.land-security-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#10b98114;border-radius:var(--radius-sm);color:var(--brand);flex-shrink:0}.land-security-card h4{font-family:var(--font-display);font-size:var(--text-md);font-weight:600;color:var(--text);margin:0 0 .3rem}.land-security-card p{font-size:var(--text-sm);color:var(--text-soft);line-height:1.55;margin:0}.land-steps{display:flex;align-items:flex-start;justify-content:center;gap:0;max-width:800px;margin:0 auto}.land-step{flex:1;text-align:center;padding:0 1.25rem}.land-step-num{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;background:#10b9811a;border:1px solid rgba(16,185,129,.2);border-radius:50%;font-family:var(--font-display);font-weight:700;font-size:var(--text-lg);color:var(--brand);margin-bottom:1rem}.land-step h3{font-family:var(--font-display);font-size:var(--text-md);font-weight:600;color:var(--text);margin:0 0 .4rem}.land-step p{font-size:var(--text-sm);color:var(--text-soft);line-height:1.55;margin:0}.land-step-divider{width:1px;height:60px;background:linear-gradient(to bottom,transparent,var(--line),transparent);flex-shrink:0;margin-top:20px}.land-pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:960px;margin:0 auto;align-items:start}.land-pricing-card{position:relative;background:#ffffff08;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);padding:2rem 1.5rem;text-align:center;transition:border-color .25s,box-shadow .25s,transform .25s}.land-pricing-card:hover{border-color:#ffffff1f;box-shadow:var(--shadow-md);transform:translateY(-2px)}.land-pricing-popular{border-color:#10b9814d;background:#10b9810a;box-shadow:0 0 30px #10b98114}.land-pricing-popular:hover{border-color:#10b98180;box-shadow:0 0 40px #10b9811f}.land-pricing-pro{border-color:#8b5cf633}.land-pricing-pro:hover{border-color:#8b5cf666;box-shadow:0 0 30px #8b5cf614}.land-pricing-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--brand);color:#fff;font-family:var(--font-display);font-size:.7rem;font-weight:700;letter-spacing:.04em;padding:.25rem 1rem;border-radius:var(--radius-full);text-transform:uppercase;white-space:nowrap}.land-pricing-tier{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;color:var(--text-soft);margin-bottom:1rem;letter-spacing:.02em}.land-pricing-price{margin-bottom:1.5rem}.land-pricing-amount{font-family:var(--font-display);font-size:2.5rem;font-weight:800;color:var(--text);letter-spacing:-.03em}.land-pricing-period{font-size:var(--text-sm);color:var(--text-soft);margin-left:.25rem}.land-pricing-features{list-style:none;padding:0;margin:0 0 2rem;text-align:left}.land-pricing-features li{display:flex;align-items:center;gap:.6rem;padding:.45rem 0;font-size:var(--text-sm);color:var(--text);border-bottom:1px solid rgba(255,255,255,.04)}.land-pricing-features li:last-child{border-bottom:none}.land-pricing-features li svg{flex-shrink:0;color:var(--brand)}.land-pricing-disabled{color:var(--text-soft)!important;opacity:.5}.land-pricing-disabled svg{color:var(--text-soft)!important}.land-pricing-cta{width:100%;justify-content:center}.land-pricing-grid .land-reveal:nth-child(2){transition-delay:.1s}.land-pricing-grid .land-reveal:nth-child(3){transition-delay:.2s}.land-cta{position:relative;padding:5rem 2rem;text-align:center;overflow:hidden}.land-cta-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:400px;background:radial-gradient(ellipse,rgba(16,185,129,.08) 0%,transparent 70%);pointer-events:none}.land-cta-content h2{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);font-weight:700;letter-spacing:-.02em;color:var(--text);margin:0 0 .6rem}.land-cta-content p{font-size:var(--text-lg);color:var(--text-soft);margin:0 0 2rem}.land-footer{border-top:1px solid rgba(255,255,255,.06);padding:1.5rem 2rem}.land-footer-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.land-footer-brand{display:flex;align-items:center;gap:.5rem;font-family:var(--font-display);font-weight:600;font-size:var(--text-base);color:var(--text-soft)}.land-footer-brand img{width:24px;height:24px;border-radius:var(--radius-sm);opacity:.6}.land-footer-links{display:flex;gap:1.5rem}.land-footer-links button{background:none;border:none;color:var(--text-soft);font-size:var(--text-sm);cursor:pointer;padding:0;font-family:var(--font-body);transition:color .15s}.land-footer-links button:hover{color:var(--text);transform:none}.brokerage-page{min-height:100vh;background:var(--bg)}.brokerage-content{max-width:900px;margin:0 auto;padding:6rem 1.5rem 4rem}.brokerage-content .brokerage-header{text-align:center;margin-bottom:3rem}.brokerage-content .brokerage-header h1{font-size:2rem;font-weight:700;color:var(--text);margin:0 0 .75rem}.brokerage-content .brokerage-header p{color:var(--text-soft);font-size:var(--text-base);line-height:1.6;max-width:520px;margin:0 auto}.brokerage-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.brokerage-grid .brokerage-card{display:flex;align-items:center;gap:.85rem;padding:1rem 1.15rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);transition:border-color .2s,transform .2s}.brokerage-grid .brokerage-card:hover{border-color:var(--brand);transform:translateY(-1px)}.brokerage-card-logo{width:40px;height:40px;border-radius:var(--radius-sm);background:#ffffff0f;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.brokerage-card-logo img{width:28px;height:28px;object-fit:contain}.brokerage-card-info{display:flex;flex-direction:column;min-width:0}.brokerage-card-name{font-size:var(--text-sm);font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brokerage-card-region{font-size:.7rem;color:var(--text-muted);margin-top:.15rem}.brokerage-footer{text-align:center;margin-top:3rem;color:var(--text-soft);font-size:var(--text-sm);line-height:1.6}.brokerage-footer p{margin:0}.brokerage-contact-link{background:none;border:none;color:var(--brand);font-size:inherit;font-weight:600;cursor:pointer;padding:0;font-family:inherit}.brokerage-contact-link:hover{text-decoration:underline}@media(max-width:768px){.land-hero{padding:5.5rem 1.25rem 2rem}.land-hero-title{font-size:clamp(1.75rem,7vw,2.5rem)}.land-hero-sub{font-size:var(--text-base)}.land-hero-actions{flex-direction:column;gap:.5rem;max-width:280px;margin-left:auto;margin-right:auto}.land-hero-actions .land-btn-lg{width:100%;justify-content:center;padding:.65rem 1.25rem;font-size:var(--text-sm)}.land-nav-inner{padding:.6rem 1rem}.land-nav-actions .land-btn-ghost{display:none}.land-nav-actions{gap:.35rem}.land-nav-actions .land-btn-ghost,.land-nav-actions .land-btn-primary{padding:.4rem .75rem;font-size:var(--text-xs)}.land-nav-brand{font-size:var(--text-base)}.land-nav-logo{width:26px;height:26px}.land-showcase{grid-template-columns:1fr;gap:1.5rem;margin-bottom:3rem}.land-showcase-reverse{direction:ltr}.land-showcase-text p{max-width:none}.land-feat-graphic{max-width:100%;padding:1.25rem}.land-combine-scene{flex-direction:column;gap:.4rem}.land-combine-badge{width:100%;max-width:240px;margin:0 auto}.land-combine-merge{width:28px;height:28px}.land-combine-merge svg{width:18px;height:18px}.land-combine-merged{padding:.5rem 1.25rem}.land-combine-merged-sym{font-size:var(--text-base)}.land-combine-merged-total{font-size:var(--text-xs)}.land-combine-merged-note{font-size:.6rem}.land-views-body{flex-direction:column;align-items:center;min-height:auto;gap:.75rem}.land-views-donut{width:80px;height:80px}.land-views-tabs{gap:.35rem}.land-views-tab{font-size:.6rem;padding:.25rem .55rem}.land-security-grid{grid-template-columns:1fr;gap:.75rem}.land-security-card{padding:1rem;gap:.75rem}.land-security-icon{width:36px;height:36px}.land-security-card h4{font-size:var(--text-sm)}.land-security-card p{font-size:var(--text-xs)}.land-steps{flex-direction:column;align-items:center;gap:0}.land-step{padding:1rem 0}.land-step-num{width:36px;height:36px;font-size:var(--text-base)}.land-step-divider{width:40px;height:1px;background:linear-gradient(to right,transparent,var(--line),transparent);margin:0}.land-mockup-inner{aspect-ratio:auto;flex-direction:column;min-height:320px}.land-mock-sidebar{display:none}.land-mock-main{padding:4%}.land-mock-title{font-size:11px}.land-mock-stats{grid-template-columns:repeat(2,1fr)}.land-mock-stat-lbl{font-size:6px}.land-mock-stat-val{font-size:10px}.land-mock-stat-sub{font-size:5px}.land-mock-chart-area{flex-direction:column;align-items:center}.land-mock-donut{width:45%}.land-mock-legend-name,.land-mock-legend-pct,.land-mock-legend-val{font-size:7px}.land-mock-dot{width:5px;height:5px}.land-mock-account-name{font-size:7px}.land-mock-account-meta{font-size:5px}.land-mock-account-val{font-size:7px}.land-mock-td-acct,.land-mock-th{font-size:5px}.land-mock-td-symbol{font-size:7px}.land-mock-td-name{font-size:6px}.land-mock-td{font-size:7px}.land-section{padding:3rem 1.25rem}.land-section-header{margin-bottom:2rem}.land-section-header p{font-size:var(--text-sm)}.land-pricing-grid{grid-template-columns:1fr;max-width:340px;margin:0 auto;gap:1rem}.land-pricing-card{padding:1.5rem 1.25rem}.land-pricing-amount{font-size:2rem}.land-pricing-features{margin-bottom:1.5rem}.land-pricing-features li{font-size:var(--text-xs);padding:.35rem 0}.land-cta{padding:3rem 1.25rem}.land-cta-content h2{font-size:clamp(1.25rem,5vw,1.75rem)}.land-cta-content p{font-size:var(--text-sm)}.land-cta .land-hero-actions{max-width:260px}.land-footer-inner{flex-direction:column;gap:1rem;text-align:center}.land-glow-1,.land-glow-2{display:none}}.swap-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .15s ease}.swap-modal{position:relative;width:90%;max-width:380px;background:var(--surface-elevated);border:1px solid var(--line);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-lg);animation:slideUp .2s ease}.swap-modal h3{font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;color:var(--text);margin:0 0 .25rem}.swap-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:var(--text-soft);cursor:pointer;padding:.25rem;border-radius:var(--radius-sm)}.swap-close:hover{color:var(--text);background:var(--surface-strong)}.swap-desc{color:var(--text-soft);font-size:var(--text-sm);margin:0 0 1rem}.swap-options{display:flex;flex-direction:column;gap:.5rem}.swap-option{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--surface-strong);border:1px solid var(--line);border-radius:var(--radius);color:var(--text);cursor:pointer;transition:border-color .15s,background .15s}.swap-option:hover:not(:disabled){border-color:var(--brand);background:#10b98114}.swap-option:disabled{opacity:.5;cursor:not-allowed}.swap-option-name{font-weight:600;font-size:var(--text-sm)}.swap-option-value{color:var(--text-soft);font-size:var(--text-sm)}.upgrade-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .15s ease}.upgrade-modal{position:relative;width:90%;max-width:420px;background:var(--surface-elevated);border:1px solid var(--line);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-lg);animation:slideUp .2s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.upgrade-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:var(--text-soft);cursor:pointer;padding:.25rem;border-radius:var(--radius-sm)}.upgrade-close:hover{color:var(--text);background:var(--surface-strong)}.upgrade-header{text-align:center;margin-bottom:1.5rem}.upgrade-icon{font-size:2rem;margin-bottom:.5rem}.upgrade-header h2{font-family:var(--font-display);font-size:var(--text-xl);font-weight:700;color:var(--text);margin:0 0 .5rem}.upgrade-desc{color:var(--text-soft);font-size:var(--text-sm);margin:0;line-height:1.5}.upgrade-tiers{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1.5rem}.upgrade-tier{text-align:center}.upgrade-tier-badge{display:inline-block;padding:.25rem .75rem;border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:600;background:var(--surface-strong);color:var(--text-soft)}.upgrade-tier-badge.accent{background:var(--brand-soft);color:var(--brand)}.upgrade-tier-label{font-size:var(--text-xs);color:var(--text-soft);margin-top:.25rem}.upgrade-tier-price{font-size:var(--text-sm);color:var(--text);font-weight:600;margin-top:.25rem}.upgrade-tier-arrow{color:var(--text-soft);font-size:1.25rem}.upgrade-features{list-style:none;padding:0;margin:0 0 1.5rem}.upgrade-features li{padding:.35rem 0;font-size:var(--text-sm);color:var(--text)}.upgrade-features li:before{content:"✓";color:var(--brand);font-weight:700;margin-right:.5rem}.upgrade-actions{display:flex;flex-direction:column;gap:.5rem}.upgrade-btn{width:100%;padding:.75rem;background:var(--brand);color:#fff;border:none;border-radius:var(--radius);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:opacity .15s}.upgrade-btn:disabled{opacity:.6;cursor:default}.upgrade-btn:not(:disabled):hover{opacity:.9}.upgrade-dismiss{text-align:center;font-size:var(--text-sm)}.tier-badge{display:inline-block;padding:.2rem .7rem;border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:600;letter-spacing:.02em}.tier-free{background:var(--surface-strong);color:var(--text-soft)}.tier-basic{background:#3b82f61f;color:#60a5fa}.tier-pro{background:var(--brand-soft);color:var(--brand)}.subscription-tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-top:1rem}.subscription-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1rem;display:flex;flex-direction:column;gap:.75rem}.subscription-card.current{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}.subscription-card-header{display:flex;align-items:center;justify-content:space-between}.subscription-price{font-size:var(--text-sm);font-weight:600;color:var(--text)}.subscription-features{list-style:none;padding:0;margin:0;flex:1}.subscription-features li{padding:.2rem 0;font-size:var(--text-xs);color:var(--text-soft)}.subscription-features li:before{content:"✓";color:var(--brand);margin-right:.35rem}.subscription-current-label{text-align:center;font-size:var(--text-xs);color:var(--brand);font-weight:600;padding:.4rem;border:1px solid var(--brand);border-radius:var(--radius-sm)}.subscription-upgrade-btn{width:100%;padding:.5rem;background:var(--surface-strong);color:var(--text-soft);border:1px solid var(--line);border-radius:var(--radius-sm);font-size:var(--text-xs);cursor:pointer;transition:all .15s}.subscription-upgrade-btn:disabled{opacity:.6;cursor:default}.subscription-upgrade-btn:not(:disabled):hover{background:var(--brand-soft);color:var(--brand);border-color:var(--brand)}@media(max-width:768px){.subscription-tiers{grid-template-columns:1fr;max-width:360px}}.perf-page{max-width:900px}.perf-summary{display:flex;gap:1rem;margin-top:1rem}.perf-stat{flex:1;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:var(--radius-lg);padding:.85rem 1rem}.perf-stat-label{font-size:var(--text-sm);color:var(--text-soft);margin-bottom:.25rem}.perf-stat-value{font-family:var(--font-display);font-size:1.1rem;font-weight:700;letter-spacing:-.01em}.perf-stat-pct{font-size:var(--text-sm);font-weight:500;opacity:.85}.perf-chart-panel{margin-top:1rem}.perf-line-chart{min-height:200px;position:relative}.perf-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;min-height:220px;color:var(--text-soft);text-align:center;padding:2rem}.perf-empty p{max-width:360px;line-height:1.5}@media(max-width:768px){.perf-summary{flex-direction:column}}
