:root,:root[data-theme=green][data-mode=dark]{color-scheme:dark;--bg-app: #0a0f0b;--bg-surface: #131a14;--bg-elevated: #1b241d;--bg-hover: #232f25;--text-primary: #eef3ee;--text-secondary: #a3b3a6;--text-tertiary: #6c7d6f;--border-subtle: #232f25;--border-strong: #334233;--accent: #4f9d6f;--accent-strong: #3f8059;--accent-contrast: #04140b;--status-good: #5cc98a;--status-good-bg: rgba(92, 201, 138, .14);--status-warning: #d1a125;--status-warning-bg: rgba(209, 161, 37, .14);--status-bad: #e2636a;--status-bad-bg: rgba(226, 99, 106, .14);--status-neutral: #8a988c;--status-neutral-bg: rgba(138, 152, 140, .12);--shadow-elevated: 0 8px 24px rgba(0, 0, 0, .45);--user-bubble-bg: var(--accent);--user-bubble-text: var(--accent-contrast);--assistant-bubble-bg: var(--bg-elevated)}:root[data-theme=green][data-mode=light]{color-scheme:light;--bg-app: #f6f8f4;--bg-surface: #ffffff;--bg-elevated: #ffffff;--bg-hover: #eef3ec;--text-primary: #10170f;--text-secondary: #4a5c4d;--text-tertiary: #7c8c7e;--border-subtle: #e1e8e0;--border-strong: #c8d4c6;--accent: #2f7d52;--accent-strong: #255f3f;--accent-contrast: #ffffff;--status-good: #1f7a4c;--status-good-bg: rgba(31, 122, 76, .1);--status-warning: #96730a;--status-warning-bg: rgba(150, 115, 10, .12);--status-bad: #b8333a;--status-bad-bg: rgba(184, 51, 58, .1);--status-neutral: #5c6b5e;--status-neutral-bg: rgba(92, 107, 94, .1);--shadow-elevated: 0 8px 24px rgba(16, 30, 16, .08);--user-bubble-bg: var(--accent);--user-bubble-text: #ffffff;--assistant-bubble-bg: var(--bg-elevated)}:root[data-theme=blue][data-mode=dark]{color-scheme:dark;--bg-app: #0e1116;--bg-surface: #161a21;--bg-elevated: #1e232c;--bg-hover: #262c37;--text-primary: #eef1f6;--text-secondary: #a7b0bf;--text-tertiary: #6b7383;--border-subtle: #262c37;--border-strong: #343c4a;--accent: #4fd1c5;--accent-strong: #38b2ac;--accent-contrast: #04211f;--status-good: #3ecf8e;--status-good-bg: rgba(62, 207, 142, .14);--status-warning: #eab308;--status-warning-bg: rgba(234, 179, 8, .14);--status-bad: #f2545b;--status-bad-bg: rgba(242, 84, 91, .14);--status-neutral: #8b93a7;--status-neutral-bg: rgba(139, 147, 167, .12);--shadow-elevated: 0 8px 24px rgba(0, 0, 0, .35);--user-bubble-bg: var(--accent);--user-bubble-text: #04211f;--assistant-bubble-bg: var(--bg-elevated)}:root[data-theme=blue][data-mode=light]{color-scheme:light;--bg-app: #f5f7fa;--bg-surface: #ffffff;--bg-elevated: #ffffff;--bg-hover: #eef1f6;--text-primary: #14181f;--text-secondary: #4b5563;--text-tertiary: #7a8494;--border-subtle: #e3e7ee;--border-strong: #cbd2df;--accent: #0f8f86;--accent-strong: #0c766f;--accent-contrast: #ffffff;--status-good: #17875a;--status-good-bg: rgba(23, 135, 90, .1);--status-warning: #a1690a;--status-warning-bg: rgba(161, 105, 10, .12);--status-bad: #c62d33;--status-bad-bg: rgba(198, 45, 51, .1);--status-neutral: #5b6373;--status-neutral-bg: rgba(91, 99, 115, .1);--shadow-elevated: 0 8px 24px rgba(20, 24, 31, .08);--user-bubble-bg: var(--accent);--user-bubble-text: #ffffff;--assistant-bubble-bg: var(--bg-elevated)}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{background:var(--bg-app);color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;transition:background-color .2s ease,color .2s ease}#root{height:100%}.serif{font-family:Lora,Georgia,Times New Roman,serif}a{color:var(--accent)}button{font-family:inherit}::selection{background:var(--accent);color:var(--accent-contrast)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:8px}.app-shell{display:flex;flex-direction:row;height:100vh}.app-shell-content{flex:1;min-width:0;display:flex;flex-direction:column;height:100vh}.sidebar{flex-shrink:0;width:56px;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.85rem 0;border-right:1px solid var(--border-subtle);background:var(--bg-surface)}.sidebar-icon-button{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--text-tertiary);cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.sidebar-icon-button:hover{background:var(--bg-hover);color:var(--text-secondary);border-color:var(--border-subtle)}.sidebar-icon-button.active{background:var(--accent);color:var(--accent-contrast);border-color:var(--accent)}.app-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;border-bottom:1px solid var(--border-subtle);background:var(--bg-surface);flex-shrink:0}.signin-banner{display:flex;align-items:center;justify-content:center;gap:.9rem;flex-shrink:0;padding:.55rem 1.5rem;background:var(--status-warning-bg);border-bottom:1px solid var(--status-warning);color:var(--status-warning);font-size:.85rem;font-weight:600;text-align:center}.signin-banner-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.signin-banner-link{background:var(--status-warning);color:var(--bg-surface);border:none;border-radius:999px;padding:.25rem .8rem;font-size:.78rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:opacity .15s ease}.signin-banner-link:hover{opacity:.85}.signin-banner-dismiss{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:50%;background:transparent;color:var(--status-warning);cursor:pointer;transition:background-color .15s ease}.signin-banner-dismiss:hover{background:#00000014}.logo-mark{display:flex;align-items:center;gap:.6rem;border:none;background:none;padding:0;margin:0;font:inherit;cursor:pointer;opacity:1;transition:opacity .15s ease}.logo-mark:hover,.logo-mark:focus-visible{opacity:.8}.logo-wordmark{font-weight:700;font-size:1.05rem;letter-spacing:-.01em;color:var(--text-primary)}.icon-button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--text-tertiary);cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.icon-button:hover{background:var(--bg-hover);color:var(--text-secondary);border-color:var(--border-subtle)}.icon-button-badge{position:absolute;top:6px;right:6px;width:7px;height:7px;border-radius:50%;background:var(--status-good);border:1.5px solid var(--bg-surface)}.app-header-actions{display:flex;align-items:center;gap:.4rem}.app-main{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.search-bar-wrap{padding:1.25rem 1.5rem .5rem;flex-shrink:0}.content-grid{flex:1;display:flex;flex-direction:column;padding:.75rem 1.5rem 1.5rem;min-height:0}.metrics-pane{flex:1;overflow-y:auto;scrollbar-gutter:stable;min-height:0;max-width:1400px;width:100%;margin:0 auto;padding-right:.85rem;padding-bottom:3rem}.search-row{display:flex;align-items:center;flex-wrap:wrap;gap:.9rem}.search-form{display:flex;gap:.6rem;max-width:640px;flex:1;min-width:280px}.search-source-reset{font-size:.82rem;color:var(--text-tertiary);white-space:nowrap}.search-quota-counter{display:inline-flex;align-items:center;border-radius:6px;padding:.3rem .6rem;font-size:.8rem;font-weight:600;white-space:nowrap}.search-quota-counter.good{color:var(--status-good);background:var(--status-good-bg)}.search-quota-counter.warning{color:var(--status-warning);background:var(--status-warning-bg)}.search-quota-counter.bad{color:var(--status-bad);background:var(--status-bad-bg)}.search-input{flex:1;background:var(--bg-surface);border:1px solid var(--border-strong);color:var(--text-primary);border-radius:10px;padding:.65rem .9rem;font-size:.95rem;outline:none;transition:border-color .15s ease}.search-input:focus{border-color:var(--accent)}.search-input::placeholder{color:var(--text-tertiary)}.search-button{background:var(--accent);color:var(--accent-contrast);border:none;border-radius:10px;padding:.65rem 1.2rem;font-weight:600;cursor:pointer;transition:background-color .15s ease}.search-button:hover:not(:disabled){background:var(--accent-strong)}.search-button:disabled{opacity:.6;cursor:not-allowed}.search-error{margin-top:.6rem;color:var(--status-bad);font-size:.88rem;max-width:640px}.search-hint{margin-top:.5rem;color:var(--text-tertiary);font-size:.82rem}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;height:100%;color:var(--text-tertiary);padding:2rem;gap:.5rem}.empty-state h2{color:var(--text-secondary);font-weight:600;margin:0}.company-header{margin-bottom:1.25rem}.show-more-row{display:flex;justify-content:center;margin:.25rem 0 1.5rem}.show-more-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem 1.1rem;border-radius:999px;border:1px solid var(--border-strong);background:var(--bg-surface);color:var(--text-secondary);font-size:.82rem;font-weight:600;cursor:pointer;transition:border-color .15s ease,color .15s ease,background-color .15s ease}.show-more-pill:hover{border-color:var(--accent);color:var(--text-primary)}.show-more-arrow{transition:transform .15s ease}.show-more-arrow.open{transform:rotate(180deg)}.expanded-details-wrapper{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease}.expanded-details-wrapper.expanded{grid-template-rows:1fr}.expanded-details{min-height:0;overflow:hidden;opacity:0;transition:opacity .2s ease}.expanded-details-wrapper.expanded .expanded-details{opacity:1;transition-delay:.05s}.company-title{display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap}.company-title h1{font-size:1.4rem;margin:0}.company-ticker{color:var(--text-tertiary);font-size:.95rem}.company-meta{color:var(--text-secondary);font-size:.85rem;margin-top:.2rem}.charts-row{display:flex;gap:1rem;align-items:stretch}.charts-row .price-chart-card{flex:1;min-width:0}@media(max-width:900px){.charts-row{flex-direction:column}}.price-chart-card{display:flex;flex-direction:column;margin-top:1rem;padding:1rem 1.1rem;border-radius:14px;border:1px solid var(--border-subtle);background:var(--bg-surface)}.price-chart-header{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:.4rem 1rem;margin-bottom:.6rem}.price-chart-header h3{margin:0;font-size:.95rem;font-weight:600;color:var(--text-primary)}.price-chart-readout{display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap}.price-chart-price{font-size:1.05rem;font-weight:700;color:var(--text-primary)}.price-chart-change{font-size:.8rem;font-weight:600}.price-chart-change.good{color:var(--status-good)}.price-chart-change.bad{color:var(--status-bad)}.price-chart-date{font-size:.76rem;color:var(--text-tertiary)}.price-chart-canvas-wrap{position:relative;flex:1;min-height:280px}.price-chart-canvas{width:100%;height:100%}.price-forecast-canvas-wrap{min-height:220px}.price-chart-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:var(--bg-surface);color:var(--text-tertiary);font-size:.85rem;border-radius:10px}.price-chart-overlay.error{color:var(--status-bad)}.price-chart-period-row{display:flex;gap:.4rem;margin-top:.75rem}.price-chart-period-btn{font-size:.76rem;font-weight:600;padding:.3rem .65rem;border-radius:8px;border:1px solid var(--border-subtle);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;transition:border-color .15s ease,color .15s ease,background-color .15s ease}.price-chart-period-btn:hover{border-color:var(--accent);color:var(--text-primary)}.price-chart-period-btn.active{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.price-chart-forecast-legend{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .9rem;margin-top:.7rem;padding-top:.7rem;border-top:1px solid var(--border-subtle);font-size:.78rem;color:var(--text-tertiary)}.price-chart-forecast-item{display:inline-flex;align-items:center;gap:.35rem;font-weight:600;color:var(--text-secondary)}.price-chart-forecast-item .dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.price-chart-forecast-item.good .dot{background:var(--status-good)}.price-chart-forecast-item.neutral .dot{background:var(--status-neutral)}.price-chart-forecast-item.bad .dot{background:var(--status-bad)}.price-chart-forecast-note{color:var(--text-tertiary);font-weight:400}.price-chart-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.6rem}.price-chart-reset{font-size:.76rem;font-weight:600;padding:.3rem .65rem;border-radius:8px;border:1px solid var(--border-subtle);background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;transition:border-color .15s ease,color .15s ease}.price-chart-reset:hover{border-color:var(--accent);color:var(--text-primary)}.price-chart-hint{font-size:.72rem;color:var(--text-tertiary)}.health-snapshot{margin-top:1rem;padding:1rem 1.1rem;border-radius:14px;border:1px solid var(--border-subtle);background:var(--bg-surface);border-left:4px solid var(--status-neutral)}.health-snapshot.good{border-left-color:var(--status-good)}.health-snapshot.warning{border-left-color:var(--status-warning)}.health-snapshot.compact{margin-top:0;padding:.75rem .9rem;border-radius:12px}.health-snapshot.compact .health-snapshot-main .status-dot{width:8px;height:8px;margin-top:.3rem}.health-snapshot.compact .health-snapshot-verdict{font-size:.95rem}.health-snapshot.compact .health-snapshot-explanation{font-size:.78rem}.health-snapshot.compact .health-snapshot-breakdown{font-size:.72rem;gap:.7rem;margin-top:.5rem;padding-top:.5rem}.health-snapshot.compact .health-snapshot-disclaimer{font-size:.66rem;margin-top:.45rem}.health-snapshot.full-width{grid-column:1 / -1}.health-snapshot.bad{border-left-color:var(--status-bad)}.health-snapshot-main{display:flex;align-items:flex-start;gap:.65rem}.health-snapshot-main .status-dot{margin-top:.4rem;width:10px;height:10px}.health-snapshot-verdict{font-size:1.1rem;font-weight:700;color:var(--text-primary)}.health-snapshot-explanation{font-size:.85rem;color:var(--text-secondary);margin-top:.2rem;line-height:1.4}.health-snapshot-breakdown{display:flex;gap:.9rem;margin-top:.65rem;padding-top:.65rem;border-top:1px solid var(--border-subtle);font-size:.78rem;font-weight:600}.health-snapshot-breakdown .good{color:var(--status-good)}.health-snapshot-breakdown .warning{color:var(--status-warning)}.health-snapshot-breakdown .bad{color:var(--status-bad)}.health-snapshot-disclaimer{margin-top:.6rem;font-size:.72rem;color:var(--text-tertiary)}.analyst-card{margin-top:1rem;padding:1rem 1.1rem;border-radius:14px;border:1px solid var(--border-subtle);background:var(--bg-surface)}.analyst-card.compact{margin-top:0;padding:.75rem .9rem;border-radius:12px}.analyst-card.compact .analyst-header{margin-bottom:.55rem}.analyst-card.compact .analyst-header h3{font-size:.85rem}.analyst-card.compact .analyst-target-block{margin-top:.75rem;padding-top:.65rem}.analyst-card.compact .analyst-disclaimer{margin-top:.65rem;padding-top:.45rem;font-size:.66rem}.analyst-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.75rem}.analyst-header h3{margin:0;font-size:.95rem;font-weight:600;color:var(--text-primary)}.analyst-badge{font-size:.75rem;font-weight:700;padding:.2rem .6rem;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}.analyst-badge.good{background:var(--status-good-bg);color:var(--status-good)}.analyst-badge.bad{background:var(--status-bad-bg);color:var(--status-bad)}.analyst-badge.neutral{background:var(--status-neutral-bg);color:var(--status-neutral)}.analyst-bar{display:flex;width:100%;height:10px;border-radius:999px;overflow:hidden;background:var(--border-subtle)}.analyst-bar-segment{height:100%}.analyst-bar-segment.good{background:var(--status-good)}.analyst-bar-segment.neutral{background:var(--status-neutral)}.analyst-bar-segment.bad{background:var(--status-bad)}.analyst-legend{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:.55rem;font-size:.78rem;font-weight:600}.analyst-legend .good{color:var(--status-good)}.analyst-legend .neutral{color:var(--status-neutral)}.analyst-legend .bad{color:var(--status-bad)}.analyst-count{margin-top:.4rem;font-size:.76rem;color:var(--text-tertiary)}.analyst-target-block{margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--border-subtle)}.analyst-target-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.4rem .9rem;font-size:.8rem;color:var(--text-secondary);margin-bottom:.9rem}.analyst-target-upside{font-weight:600;font-size:.78rem}.analyst-target-upside.good{color:var(--status-good)}.analyst-target-upside.bad{color:var(--status-bad)}.analyst-target-track{position:relative;height:6px;border-radius:999px;background:var(--border-subtle);margin:.5rem}.analyst-target-range{position:absolute;top:0;height:100%;border-radius:999px;background:var(--accent);opacity:.35}.analyst-target-marker{position:absolute;top:50%;width:12px;height:12px;border-radius:50%;transform:translate(-50%,-50%);border:2px solid var(--bg-surface)}.analyst-target-marker.mean{background:var(--accent)}.analyst-target-marker.current{background:var(--text-primary);width:10px;height:10px}.analyst-target-labels{display:flex;flex-wrap:wrap;gap:.4rem 1rem;margin-top:.8rem;font-size:.76rem;color:var(--text-secondary)}.analyst-target-label{display:flex;align-items:center;gap:.35rem}.analyst-target-label .dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.analyst-target-label .dot.low,.analyst-target-label .dot.high{background:var(--accent);opacity:.35}.analyst-target-label .dot.mean{background:var(--accent)}.analyst-target-label .dot.current{background:var(--text-primary)}.analyst-disclaimer{margin-top:.9rem;padding-top:.6rem;border-top:1px solid var(--border-subtle);font-size:.72rem;color:var(--text-tertiary)}.highlights-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1px;background:var(--border-subtle);border:1px solid var(--border-subtle);border-radius:12px;margin-top:1rem}.highlight-tile{background:var(--bg-surface);padding:.75rem .9rem}.highlight-tile:first-child{border-top-left-radius:12px;border-bottom-left-radius:12px}.highlight-tile:last-child{border-top-right-radius:12px;border-bottom-right-radius:12px}.highlight-tile .label{font-size:.75rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.04em}.highlight-tile .value{font-size:1.05rem;font-weight:600;margin-top:.2rem;color:var(--text-primary)}.summary-row{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:.75rem;margin-top:1rem}.metric-group{margin-bottom:1.35rem;padding-top:.9rem;border-top:1px solid var(--border-subtle)}.metric-group:first-child{padding-top:0;border-top:none}.metric-group h3{font-size:.78rem;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;margin:0 0 .65rem}.metric-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1px;background:var(--border-subtle);border:1px solid var(--border-subtle);border-radius:12px}.metric-card{background:var(--bg-surface);padding:.65rem .8rem;border-left:3px solid var(--status-neutral);position:relative;cursor:pointer;transition:background-color .12s ease,border-color .12s ease}.metric-card.good{border-left-color:var(--status-good)}.metric-card.warning{border-left-color:var(--status-warning)}.metric-card.bad{border-left-color:var(--status-bad)}.metric-card.neutral{border-left-color:var(--status-neutral)}.metric-card:hover{background:var(--bg-elevated);z-index:1}.metric-card:first-child{border-top-left-radius:12px;border-bottom-left-radius:12px}.metric-card:last-child{border-top-right-radius:12px;border-bottom-right-radius:12px}.metric-card-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.metric-label{font-size:.76rem;color:var(--text-secondary);font-weight:500}.status-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.status-dot.good{background:var(--status-good)}.status-dot.warning{background:var(--status-warning)}.status-dot.bad{background:var(--status-bad)}.status-dot.neutral{background:var(--status-neutral)}.metric-value{font-size:1.05rem;font-weight:600;margin-top:.3rem;color:var(--text-primary)}.metric-value.na{color:var(--text-tertiary);font-size:.88rem;font-weight:500}.metric-popover{position:absolute;top:calc(100% + 8px);left:0;width:100%;background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:12px;box-shadow:var(--shadow-elevated);padding:.85rem .95rem;z-index:30;text-align:left;cursor:default;animation:popover-in .12s ease}@keyframes popover-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.metric-popover.above{top:auto;bottom:calc(100% + 8px);animation:popover-in-above .12s ease}@keyframes popover-in-above{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.metric-popover-title{font-size:.85rem;font-weight:600;color:var(--text-primary);margin-bottom:.45rem}.metric-popover-definition{font-size:.8rem;color:var(--text-secondary);line-height:1.5;margin:0 0 .55rem}.metric-popover-assessment{font-size:.8rem;line-height:1.5;margin:0;padding:.5rem .6rem;border-radius:8px;background:var(--status-neutral-bg);color:var(--text-primary)}.metric-popover-assessment.good{background:var(--status-good-bg)}.metric-popover-assessment.warning{background:var(--status-warning-bg)}.metric-popover-assessment.bad{background:var(--status-bad-bg)}.metric-popover-formula{margin-top:.55rem;padding-top:.5rem;border-top:1px solid var(--border-subtle);font-size:.72rem;font-family:ui-monospace,SF Mono,Menlo,monospace;color:var(--text-tertiary)}.settings-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:40;animation:fade-in .15s ease}.settings-panel{position:fixed;top:0;right:0;bottom:0;width:320px;max-width:90vw;background:var(--bg-surface);border-left:1px solid var(--border-subtle);box-shadow:var(--shadow-elevated);z-index:50;padding:1.25rem;display:flex;flex-direction:column;gap:1.25rem;animation:slide-in .2s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-in{0%{transform:translate(16px);opacity:0}to{transform:translate(0);opacity:1}}.settings-panel-header{display:flex;align-items:center;justify-content:space-between}.settings-panel-header h2{margin:0;font-size:1.05rem}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.settings-row-label{font-size:.9rem;color:var(--text-primary)}.settings-row-sub{font-size:.78rem;color:var(--text-tertiary);margin-top:.15rem}.settings-key-configure{flex-shrink:0;padding:.4rem .85rem;border-radius:8px;border:1px solid var(--border-strong);background:var(--bg-elevated);color:var(--text-secondary);font-size:.78rem;font-weight:600;cursor:pointer;transition:border-color .15s ease,color .15s ease}.settings-key-configure:hover{border-color:var(--accent);color:var(--text-primary)}.settings-key-form-actions{display:flex;align-items:center;gap:.75rem}.settings-key-form-actions .auth-submit{flex:1}.auth-mode-toggle{display:inline-flex;align-self:flex-start;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:8px;padding:2px}.auth-mode-toggle button{border:none;background:none;color:var(--text-tertiary);font-size:.78rem;font-weight:600;padding:.35rem .8rem;border-radius:6px;cursor:pointer;transition:background-color .15s ease,color .15s ease}.auth-mode-toggle button.active{background:var(--accent);color:var(--accent-contrast)}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-field{display:flex;flex-direction:column;gap:.35rem}.auth-field>span{font-size:.82rem;font-weight:600;color:var(--text-secondary)}.auth-field input{background:var(--bg-elevated);border:1px solid var(--border-strong);color:var(--text-primary);border-radius:10px;padding:.6rem .8rem;font-size:.9rem;outline:none;transition:border-color .15s ease}.auth-field input:focus{border-color:var(--accent)}.auth-field-hint{font-size:.72rem;color:var(--text-tertiary)}.auth-submit{width:100%;text-align:center}.auth-divider{display:flex;align-items:center;gap:.75rem;margin:.2rem 0;color:var(--text-tertiary);font-size:.76rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border-subtle)}.google-signin-button{display:flex;justify-content:center}.auth-disclaimer{margin:.1rem 0 0;padding:.55rem .7rem;border-radius:8px;background:var(--bg-elevated);border:1px solid var(--border-subtle);font-size:.74rem;color:var(--text-secondary);line-height:1.5}.page-disclaimer{margin:.35rem 0 0;font-size:.9rem;font-weight:600;color:var(--status-bad);filter:saturate(1.4) brightness(1.15);line-height:1.5}.auth-user-summary{padding-bottom:1rem;border-bottom:1px solid var(--border-subtle)}.auth-user-name{font-size:1.05rem;font-weight:700;color:var(--text-primary)}.auth-user-email{margin-top:.15rem;font-size:.82rem;color:var(--text-tertiary)}.auth-activity{flex:1;min-height:0;display:flex;flex-direction:column}.auth-activity-label{font-size:.78rem;font-weight:600;color:var(--text-secondary);margin-bottom:.6rem}.auth-activity-empty{font-size:.82rem;color:var(--text-tertiary)}.auth-activity-list{list-style:none;margin:0;padding:0;overflow-y:auto;display:flex;flex-direction:column;gap:.15rem}.auth-activity-item{display:flex;flex-direction:column;gap:.1rem;padding:.55rem 0;border-bottom:1px solid var(--border-subtle)}.auth-activity-item:last-child{border-bottom:none}.auth-activity-action{font-size:.85rem;color:var(--text-primary)}.auth-activity-time{font-size:.72rem;color:var(--text-tertiary)}.settings-theme-section{display:flex;flex-direction:column;gap:.6rem}.theme-picker{display:flex;gap:.6rem}.theme-picker-option{flex:1;display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:.6rem .4rem;border-radius:10px;border:1px solid var(--border-subtle);background:var(--bg-elevated);cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.theme-picker-option:hover{border-color:var(--border-strong)}.theme-picker-option.active{border-color:var(--accent);background:var(--bg-hover)}.theme-picker-swatch{position:relative;width:28px;height:28px;border-radius:50%;border:1px solid var(--border-strong)}.theme-picker-swatch-accent{position:absolute;bottom:-2px;right:-2px;width:14px;height:14px;border-radius:50%;border:2px solid var(--bg-elevated)}.theme-picker-name{font-size:.76rem;font-weight:600;color:var(--text-secondary)}.theme-picker-option.active .theme-picker-name{color:var(--text-primary)}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid var(--border-strong);border-top-color:var(--accent);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.calculator-page{flex:1;overflow-y:auto;display:flex;justify-content:center;padding:2.5rem 1.5rem}.calculator-card{width:100%;max-width:480px;height:fit-content;padding:1.5rem 1.5rem 1.25rem;border-radius:14px;border:1px solid var(--border-subtle);background:var(--bg-surface)}.calculator-card h2{margin:0;font-size:1.15rem;font-weight:700;color:var(--text-primary)}.calculator-subtitle{margin:.35rem 0 1.4rem;font-size:.85rem;color:var(--text-secondary);line-height:1.4}.calculator-stock-picker{margin-bottom:1.2rem;padding-bottom:1.1rem;border-bottom:1px solid var(--border-subtle)}.calculator-stock-picker .calculator-field-header{margin-bottom:.5rem}.calculator-stock-form{display:flex;gap:.5rem}.calculator-stock-form input{flex:1;min-width:0;background:var(--bg-elevated);border:1px solid var(--border-strong);color:var(--text-primary);border-radius:10px;padding:.55rem .8rem;font-size:.88rem;outline:none;transition:border-color .15s ease}.calculator-stock-form input:focus{border-color:var(--accent)}.calculator-stock-form button{flex-shrink:0;background:var(--accent);color:var(--accent-contrast);border:none;border-radius:10px;padding:0 1rem;font-weight:600;font-size:.85rem;cursor:pointer;transition:background-color .15s ease}.calculator-stock-form button:hover:not(:disabled){background:var(--accent-strong)}.calculator-stock-form button:disabled{opacity:.6;cursor:not-allowed}.calculator-stock-chip{display:inline-flex;align-items:center;gap:.6rem;background:var(--status-good-bg);border:1px solid var(--status-good);border-radius:999px;padding:.4rem .5rem .4rem .9rem;font-size:.85rem;font-weight:600;color:var(--status-good)}.calculator-stock-chip-ticker{color:var(--text-tertiary);font-weight:600}.calculator-stock-chip button{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;border:none;background:transparent;color:var(--status-good);cursor:pointer;transition:background-color .15s ease}.calculator-stock-chip button:hover{background:var(--status-good);color:var(--accent-contrast)}.calculator-stock-error{margin-top:.6rem;color:var(--status-bad);font-size:.8rem}.calculator-field-note{font-size:.72rem;color:var(--text-tertiary);line-height:1.4}.calculator-empty-hint{text-align:center;padding:1.5rem .5rem .5rem;color:var(--text-tertiary);font-size:.85rem}.calculator-form{display:flex;flex-direction:column;gap:.9rem}.calculator-field{display:flex;flex-direction:column;gap:.35rem}.calculator-field>span,.calculator-field-header>span{font-size:.78rem;font-weight:600;color:var(--text-secondary)}.calculator-field-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.calculator-mode-toggle{display:inline-flex;background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:8px;padding:2px}.calculator-mode-toggle button{border:none;background:none;color:var(--text-tertiary);font-size:.72rem;font-weight:600;padding:.25rem .55rem;border-radius:6px;cursor:pointer;transition:background-color .15s ease,color .15s ease}.calculator-mode-toggle button.active{background:var(--accent);color:var(--accent-contrast)}.calculator-mode-toggle button:disabled{opacity:.4;cursor:not-allowed}.calculator-input-wrap{display:flex;align-items:center;gap:.4rem;background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:10px;padding:0 .9rem;transition:border-color .15s ease}.calculator-input-wrap:focus-within{border-color:var(--accent)}.calculator-input-wrap.locked{background:var(--bg-surface);cursor:not-allowed}.calculator-input-wrap.locked input{color:var(--text-secondary);cursor:not-allowed}.calculator-lock-icon{flex-shrink:0;color:var(--text-tertiary)}.calculator-input-wrap input{flex:1;min-width:0;background:none;border:none;outline:none;color:var(--text-primary);font-size:.95rem;font-weight:600;padding:.65rem 0;-moz-appearance:textfield}.calculator-input-wrap input::-webkit-outer-spin-button,.calculator-input-wrap input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.calculator-input-prefix,.calculator-input-suffix{flex-shrink:0;font-size:.85rem;font-weight:600;color:var(--text-tertiary)}.calculator-period-unit{position:relative;display:inline-flex;align-items:center;flex-shrink:0;margin:0 -.4rem 0 .2rem;padding:.3rem 1.35rem .3rem .5rem;border-radius:8px;border:1px solid transparent;transition:background-color .15s ease,border-color .15s ease}.calculator-period-unit:hover,.calculator-period-unit:focus-within{background:var(--bg-hover);border-color:var(--border-subtle)}.calculator-period-unit select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:none;border:none;outline:none;color:var(--text-tertiary);font-size:.85rem;font-weight:600;font-family:inherit;cursor:pointer}.calculator-period-unit svg{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);color:var(--text-tertiary);opacity:0;pointer-events:none;transition:opacity .15s ease}.calculator-period-unit:hover svg,.calculator-period-unit:focus-within svg{opacity:1}.calculator-results{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--border-subtle)}.calculator-result-tile{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:10px;padding:.7rem .6rem;text-align:center}.calculator-result-tile .label{font-size:.68rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.03em}.calculator-result-tile .value{margin-top:.3rem;font-size:1rem;font-weight:700;color:var(--text-primary)}.calculator-result-tile .value.good{color:var(--status-good)}.calculator-result-tile .value.bad{color:var(--status-bad)}.calculator-scenario-section{margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--border-subtle)}.calculator-scenario-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-top:.7rem}.calculator-scenario-tile{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-left:3px solid var(--status-neutral);border-radius:10px;padding:.7rem}.calculator-scenario-tile.good{border-left-color:var(--status-good)}.calculator-scenario-tile.warning{border-left-color:var(--status-warning)}.calculator-scenario-tile.bad{border-left-color:var(--status-bad)}.calculator-scenario-label{font-size:.68rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.03em}.calculator-scenario-value{margin-top:.3rem;font-size:.95rem;font-weight:700;color:var(--text-primary)}.calculator-scenario-gain{margin-top:.15rem;font-size:.76rem;font-weight:600}.calculator-scenario-tile.good .calculator-scenario-gain{color:var(--status-good)}.calculator-scenario-tile.warning .calculator-scenario-gain{color:var(--status-warning)}.calculator-scenario-tile.bad .calculator-scenario-gain{color:var(--status-bad)}.calculator-risk-section{margin-top:1.4rem;padding-top:1.2rem;border-top:1px solid var(--border-subtle)}.calculator-risk-rows{display:flex;flex-direction:column;gap:.5rem;margin-top:.7rem}.calculator-risk-row{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-left:3px solid var(--status-neutral);border-radius:10px;padding:.65rem .8rem}.calculator-risk-row.good{border-left-color:var(--status-good)}.calculator-risk-row.warning{border-left-color:var(--status-warning)}.calculator-risk-row.bad{border-left-color:var(--status-bad)}.calculator-risk-row-top{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.calculator-risk-row-label{font-size:.82rem;font-weight:700;color:var(--text-primary)}.calculator-risk-row-tier{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--text-tertiary)}.calculator-risk-row.good .calculator-risk-row-tier{color:var(--status-good)}.calculator-risk-row.warning .calculator-risk-row-tier{color:var(--status-warning)}.calculator-risk-row.bad .calculator-risk-row-tier{color:var(--status-bad)}.calculator-risk-row-value{margin-top:.15rem;font-size:.76rem;color:var(--text-tertiary)}.calculator-risk-row-note{margin:.35rem 0 0;font-size:.76rem;color:var(--text-secondary);line-height:1.4}.calculator-disclaimer{margin-top:1.1rem;padding-top:.8rem;border-top:1px solid var(--border-subtle);font-size:.72rem;color:var(--text-tertiary);line-height:1.4}.simulator-card{max-width:760px}.simulator-run-button{display:block;width:100%;margin:.9rem 0 1.3rem}.simulator-chart-card{margin-bottom:1.3rem}.tapetide-gate-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:2rem;overflow-y:auto;background:#0a0c108c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:fade-in .2s ease}.tapetide-gate-card{width:100%;max-width:520px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:18px;box-shadow:var(--shadow-elevated);padding:2rem}.tapetide-gate-card h2{margin:0 0 .75rem;font-size:1.3rem;color:var(--text-primary)}.tapetide-gate-intro{margin:0 0 1.25rem;font-size:.92rem;color:var(--text-secondary);line-height:1.55}.tapetide-gate-card a{color:var(--accent);font-weight:600;text-decoration:underline;text-underline-offset:2px}.tapetide-gate-video{display:block;width:100%;margin:0 0 1.25rem;border-radius:12px;border:1px solid var(--border-subtle);background:#000}.tapetide-gate-steps{margin:0 0 1.5rem;padding-left:1.3rem;display:flex;flex-direction:column;gap:.6rem;font-size:.9rem;color:var(--text-primary);line-height:1.5}.tapetide-gate-form{display:flex;align-items:center;gap:.5rem;background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:999px;padding:.35rem .35rem .35rem 1.3rem;transition:border-color .15s ease}.tapetide-gate-form:focus-within{border-color:var(--accent)}.tapetide-gate-form input{flex:1;min-width:0;background:none;border:none;outline:none;color:var(--text-primary);font-size:.9rem;padding:.5rem 0}.tapetide-gate-form input::placeholder{color:var(--text-tertiary)}.tapetide-gate-form button{flex-shrink:0;background:var(--accent);color:var(--accent-contrast);border:none;border-radius:999px;padding:.6rem 1.3rem;font-size:.85rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:background-color .15s ease}.tapetide-gate-form button:hover:not(:disabled){background:var(--accent-strong)}.tapetide-gate-form button:disabled{opacity:.6;cursor:not-allowed}.tapetide-gate-error{margin-top:.75rem;color:var(--status-bad);font-size:.85rem}.tapetide-gate-note{margin:1.25rem 0 0;font-size:.74rem;color:var(--text-tertiary);line-height:1.5}.tapetide-gate-welcome-actions{display:flex;gap:.75rem;margin:1.35rem 0 .5rem}.tapetide-gate-welcome-actions .search-button{flex:1;text-align:center}.tapetide-gate-skip{display:block;width:100%;margin-top:.9rem;padding:.5rem;background:none;border:none;color:var(--text-tertiary);font-size:.82rem;font-weight:600;text-align:center;cursor:pointer;text-decoration:underline;text-underline-offset:2px;transition:color .15s ease}.tapetide-gate-skip:hover{color:var(--text-secondary)}@media(max-width:640px){.sidebar{width:48px;padding:.65rem 0}.sidebar-icon-button{width:34px;height:34px}.app-header{padding:.6rem .9rem}.logo-wordmark{font-size:.95rem}.signin-banner{flex-wrap:wrap;padding:.55rem .9rem;font-size:.78rem}.signin-banner-actions{flex-wrap:wrap;justify-content:center}.search-bar-wrap{padding:1rem .9rem .4rem}.content-grid{padding:.65rem .9rem 1rem}.search-form{min-width:100%}.metric-card,.highlight-tile{border-radius:10px}.calculator-page{padding:1.5rem 1rem}.calculator-card{padding:1.25rem 1rem 1rem}.calculator-results,.calculator-scenario-grid{grid-template-columns:1fr}.tapetide-gate-overlay{padding:1rem}.tapetide-gate-card{padding:1.35rem}}@media(max-width:760px){.summary-row{grid-template-columns:1fr}}
