:root{--bg-color: #f8fafc;--bg-secondary: #f1f5f9;--text-color: #1e293b;--text-primary: #1e293b;--text-secondary: #475569;--text-on-card: #334155;--card-bg: #ffffff;--card-bg-solid: #ffffff;--header-bg: #ffffff;--border-color: #e2e8f0;--chart-grid-color: rgba(203,213,225,.4);--chart-bg: #ffffff;--chart-text: #2c3e50;--chart-grid: #f1f3f4;--chart-border: #dddddd;--chart-crosshair: #758696;--chart-crosshair-label: #4c525e;--chart-candle-up: #26a69a;--chart-candle-down: #ef5350;--chart-rsi-line: #2196f3;--chart-rsi-overbought: #f44336;--chart-rsi-oversold: #4caf50;--chart-macd-line: #2196f3;--chart-macd-signal: #ff9800;--chart-macd-hist: #9c27b0;--chart-bb-close: #2c3e50;--chart-bb-upper: #f44336;--chart-bb-lower: #4caf50;--chart-bb-mid: #9e9e9e;--chart-sma-fast: #ea580c;--chart-sma-slow: #0369a1;--chart-volume: #7c7c7c;--chart-volume-up: rgba(38, 166, 154, .4);--chart-volume-down: rgba(239, 83, 80, .4);--chart-bar-bg: var(--accent-primary, #3b82f6);--chart-bar-border: var(--accent-primary, #3b82f6);--secondary-text: #64748b;--hover-bg: #f1f5f9;--shadow-color: rgba(0,0,0,.1);--input-bg: #ffffff;--input-border: #e2e8f0;--accent-primary: #3b82f6;--accent-secondary: #3b82f6;--accent-success: #10b981;--accent-danger: #ef4444;--accent-warning: #f59e0b;--accent-teal: #14b8a6;--accent-indigo: #6366f1;--success-bg: #dcfce7;--success-text: #166534;--warning-bg: #fef9c3;--warning-text: #a16207;--badge-bg: #f1f5f9;--badge-text: #94a3b8;--msg-error-bg: #fef2f2;--msg-error-text: #dc2626;--msg-success-bg: #f0fdf4;--msg-success-text: #166534;--msg-info-bg: #eff6ff;--msg-info-text: #1e40af;--msg-warning-bg: #fffbeb;--msg-warning-text: #92400e;--opp-score-bg: #dbeafe;--opp-score-text: #1e40af;--brief-bg: #f8fafc;--guide-heading: #3b82f6;--guide-section: #3b82f6;--guide-table-row: #f1f5f9;--guide-penalty: #dc2626;--overlay-bg: rgba(0, 0, 0, .5);--dashboard-main-row-height: 260px;--card-border-radius: 12px;--main-gradient-from: #3b82f6;--main-gradient-to: #1e40af;--main-btn-secondary: #64748b;--main-btn-secondary-hover: #475569;--main-score-high-text: #065f46}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;background:var(--bg-color);color:var(--text-color);line-height:1.5;padding:16px;transition:background-color .3s ease,color .3s ease,border-color .25s ease}img.emoji{height:1em;width:1em;margin:0 .05em 0 .1em;vertical-align:-.1em;display:inline-block}.no-emoji{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif!important}.no-emoji img.emoji{display:none!important}.container{max-width:1200px;margin:0 auto;overflow-x:hidden}.header{background:var(--header-bg);border-radius:var(--card-border-radius);padding:20px;margin-bottom:20px;box-shadow:0 1px 3px var(--shadow-color);display:flex;justify-content:flex-start;align-items:center;flex-wrap:wrap;gap:16px}.header h1{font-size:24px;font-weight:700}.version-badge{font-size:11px;color:var(--badge-text);font-weight:400;padding:4px 8px;background:var(--badge-bg);border-radius:6px;font-family:Courier New,monospace}.env-badge{font-size:11px;font-weight:700;letter-spacing:.4px;padding:4px 8px;border-radius:6px;border:1px solid transparent;font-family:Courier New,monospace;line-height:1}.env-badge.env-prod{background:var(--success-bg);color:var(--success-text);border-color:color-mix(in srgb,var(--accent-success) 40%,transparent)}.env-badge.env-rec{background:color-mix(in srgb,var(--accent-warning) 12%,transparent);color:color-mix(in srgb,var(--accent-warning) 80%,#000);border-color:color-mix(in srgb,var(--accent-warning) 40%,transparent)}.contact-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;font-size:11px;font-weight:700;line-height:1;background:var(--accent-danger, #ef4444);color:#fff;cursor:default}.status-badge{padding:6px 14px;border-radius:20px;font-size:13px;font-weight:500;background:var(--success-bg);color:var(--success-text)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:16px;align-items:start}#dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:start;--dashboard-card-min-height: 230px;--dashboard-card-expanded-min-height: 340px;min-width:0}#dashboard-grid>.card{display:flex;flex-direction:column;min-height:var(--dashboard-card-min-height);align-self:start;justify-content:flex-start;min-width:0}#card-search,#card-model:not(.card-expanded),#card-scanner:not(.card-expanded),#card-telegram{height:var(--dashboard-main-row-height)}#card-search .btn.success,#model-card-reduced,#scanner-card-reduced,#card-telegram .btn{margin-top:auto}#card-model .card-content,#card-scanner .card-content{flex:1}.card-reduced-content{margin-top:12px;flex:1;display:flex;flex-direction:column;justify-content:flex-end}#model-card-reduced{justify-content:flex-start}#model-card-reduced>div{display:flex;flex-direction:column;height:100%}#model-display{margin-top:auto}.card-expanded .card-reduced-content{display:none!important}#card-model.card-expanded,#card-scanner.card-expanded{min-height:var(--dashboard-card-min-height);max-height:none;height:auto;overflow-y:visible;display:flex;flex-direction:column;justify-content:flex-start}#card-scanner.card-expanded #scanner-card,#card-model.card-expanded #model-card{display:flex;flex-direction:column;gap:16px;width:100%;justify-content:space-between;flex:1}#scanner-actions{margin-top:16px;display:flex;flex-direction:column;gap:10px}#scanner-actions>.btn{width:100%;margin-right:0;margin-bottom:10px}#dashboard-grid>.card:not(.card-expanded){min-height:var(--dashboard-card-min-height);height:auto}@media(max-width:1100px){#dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){#dashboard-grid{grid-template-columns:1fr}#dashboard-grid>.card{min-height:auto}}@media(max-width:640px){body{padding:12px 12px 6px}#main-cards-container{gap:12px!important;margin-bottom:8px!important}#main-cards-container .card:not(.card-expanded){padding-bottom:10px}#main-cards-container .card:not(.card-expanded) .card-header{margin-bottom:0}}.card{background:var(--card-bg);border-radius:var(--card-border-radius);padding:20px;box-shadow:0 1px 3px var(--shadow-color);border-top:3px solid;transition:background-color .25s ease,box-shadow .25s ease}.card.blue{border-top-color:var(--accent-primary)}.card.green{border-top-color:var(--accent-success)}.card.purple{border-top-color:var(--accent-secondary)}.card.orange{border-top-color:var(--accent-warning)}.card.red{border-top-color:var(--accent-danger)}.card.teal{border-top-color:var(--accent-teal)}.card.indigo{border-top-color:var(--accent-indigo)}.display-limit-select{padding:4px 8px;border-radius:6px;border:1px solid var(--border-color, #e2e8f0);background:var(--card-bg, white);color:var(--text-color, inherit);font-size:13px;cursor:pointer}.modal-overlay{position:fixed;inset:0;background:#00000080;z-index:10000;display:flex;align-items:center;justify-content:center}.modal-content{background:var(--card-bg, white);color:var(--text-color, #1e293b);border-radius:var(--card-border-radius);padding:24px;max-width:450px;width:90%;box-shadow:0 10px 25px #0003}.modal-overlay-app{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.modal-content-sm{border-radius:12px;max-width:400px}.modal-content-md{border-radius:12px;max-width:420px;border:1px solid var(--border-color, #e2e8f0)}.modal-content-scroll{max-height:90dvh;overflow-y:auto}.modal-title-confirm{margin:0 0 16px;font-size:18px;color:var(--text-color, #1e293b)}.modal-copy{margin:0 0 24px;color:var(--text-secondary, #64748b);line-height:1.5}.modal-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.modal-action-btn{padding:8px 16px;font-size:14px}.danger-confirm-overlay{position:fixed;inset:0;z-index:10050;display:flex;align-items:center;justify-content:center;padding:20px;background:#0f172a8c;backdrop-filter:blur(4px);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.danger-confirm-card{width:100%;max-width:420px;border-radius:16px;padding:0;overflow:hidden;box-shadow:0 25px 50px -12px #00000040;background:var(--surface-elevated, #ffffff);border:1px solid var(--border-color, #e2e8f0)}.danger-confirm-body{padding:22px 22px 16px;display:flex;gap:14px;align-items:flex-start}.danger-confirm-icon{flex-shrink:0;width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;color:var(--danger, #ef4444);background:color-mix(in srgb,var(--danger, #ef4444) 12%,transparent)}.danger-confirm-icon svg{width:22px;height:22px}.danger-confirm-content{min-width:0}.danger-confirm-title{margin:0 0 8px;font-size:1.15rem;font-weight:700;color:var(--text-color, #1e293b);line-height:1.3}.danger-confirm-description{margin:0;font-size:.92rem;line-height:1.55;color:var(--secondary-text, #64748b)}.danger-confirm-warning{margin:12px 0 0;padding:10px 12px;border-radius:8px;font-size:.85rem;line-height:1.45;color:var(--danger, #dc2626);background:color-mix(in srgb,var(--danger, #ef4444) 8%,transparent);border-left:3px solid var(--danger, #ef4444)}.danger-confirm-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;padding:12px 22px 20px;border-top:1px solid var(--border-color, #e2e8f0);background:color-mix(in srgb,var(--text-color, #1e293b) 2%,transparent)}.danger-confirm-cancel{min-width:108px}.danger-confirm-ok{min-width:132px;background:var(--danger, #dc2626);color:#fff;border:none}.csp-violation-overlay{position:fixed;left:16px;bottom:16px;z-index:10080;max-width:420px;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.csp-violation-card{border-radius:12px;overflow:hidden;box-shadow:0 20px 40px -8px #00000040;background:var(--surface-elevated, #ffffff);border:1px solid var(--danger, #dc2626);padding:16px 18px}.csp-violation-title{margin:0 0 6px;font-size:1rem;font-weight:700;color:var(--danger, #dc2626)}.csp-violation-description{margin:0 0 12px;font-size:.88rem;line-height:1.45;color:var(--text-color, #1e293b)}.csp-violation-actions{display:flex;gap:8px;flex-wrap:wrap}.csp-violation-reload{background:var(--danger, #dc2626);color:#fff;border:none}@media(max-width:480px){.csp-violation-overlay{left:8px;right:8px;bottom:8px;max-width:none}}@media(max-width:360px){.danger-confirm-actions{flex-direction:column-reverse;align-items:stretch}.danger-confirm-cancel,.danger-confirm-ok{min-width:0;width:100%}}.modal-header-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.modal-header-row-center{align-items:center;margin-bottom:16px}.modal-close-btn-plain{padding:0}.modal-field{margin-bottom:16px}.modal-field-spacious{margin-bottom:24px}.modal-field-label-secondary{display:block;font-weight:500;margin-bottom:8px;color:var(--text-secondary, #475569)}.modal-input,.modal-select{width:100%;padding:10px;border-radius:8px;border:1px solid var(--border-color, #e2e8f0);background:var(--input-bg, #fff);color:var(--text-color, #1e293b);font-size:14px;box-sizing:border-box}.modal-hint{display:block;margin-top:6px;font-size:12px;color:var(--text-secondary, #64748b)}.modal-secondary-outline-btn,.modal-primary-solid-btn{padding:10px 20px;border-radius:8px;cursor:pointer;font-size:14px}.modal-secondary-outline-btn{border:1px solid var(--border-color, #e2e8f0);background:var(--bg-secondary, #fff);color:var(--text-color, #1e293b)}.modal-primary-solid-btn{background:var(--accent-primary, #3b82f6);color:#fff;border:none;font-weight:500}.modal-form-stack{display:flex;flex-direction:column;gap:14px}.modal-title-row{margin:0 0 4px;font-size:18px;color:var(--text-color, #1e293b);display:flex;align-items:center;gap:8px}.modal-small-subtitle{margin:0;font-size:13px;color:var(--text-secondary, #64748b)}.modal-label-strong{display:block;font-weight:500;margin-bottom:6px;font-size:14px;color:var(--text-color, #1e293b)}.modal-label-optional{font-weight:400;color:var(--text-secondary, #64748b)}.modal-current-price-line{display:block;margin-top:4px;font-size:12px;color:var(--text-secondary, #64748b)}.modal-actions-equal{display:flex;flex-wrap:wrap;gap:12px;margin-top:4px}.modal-actions-equal>button{flex:1 1 140px;padding:11px;border-radius:8px;font-size:14px;cursor:pointer}.modal-title{margin:0 0 8px;font-size:20px;color:var(--text-color, #1e293b);display:flex;align-items:center;gap:8px}.modal-subtitle{margin:0;color:var(--text-secondary, #64748b);font-size:14px}.modal-label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:var(--text-color, #1e293b)}.modal-button-primary{flex:1;padding:12px;background:var(--accent-primary);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s;display:inline-flex;align-items:center;justify-content:center;gap:6px;text-align:center}.modal-button-primary:hover{background:var(--accent-primary);filter:brightness(.85)}.modal-button-secondary{flex:1;padding:12px;background:var(--hover-bg, #f1f5f9);color:var(--text-color, #475569);border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s;display:inline-flex;align-items:center;justify-content:center;gap:6px;text-align:center}#theme-toggle,#theme-toggle-mobile{background:linear-gradient(135deg,var(--main-gradient-from) 0%,var(--main-gradient-to) 100%);color:#fff;border:none;border-radius:50%;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #667eea66}#theme-toggle svg{width:20px;height:20px}#theme-toggle-mobile svg{width:16px;height:16px}#theme-toggle{width:44px;height:44px;font-size:20px;position:fixed;bottom:max(24px,calc(16px + env(safe-area-inset-bottom,0px)));right:max(24px,calc(12px + env(safe-area-inset-right,0px)));z-index:9999}#theme-toggle:hover{transform:rotate(20deg) scale(1.1);box-shadow:0 6px 20px #667eea99}#theme-toggle-mobile{width:32px;height:32px;font-size:16px;box-shadow:0 2px 6px #667eea4d;flex-shrink:0}#theme-toggle-mobile:hover{transform:none}@media(min-width:769px){#theme-toggle-mobile{display:none}}@media(max-width:768px){#theme-toggle{display:none}}.draggable-card{cursor:default;transition:opacity .2s,transform .2s}.draggable-card .card-header,.draggable-card h3{cursor:move;-webkit-user-select:none;user-select:none}.draggable-card .card-content{cursor:default;user-select:text;-webkit-user-select:text}.draggable-card .brief-display,.draggable-card .brief-display *,#brief-display,#brief-display *,.card-content .brief-display,.card-content .brief-display *,#brief-card .brief-display,#brief-card .brief-display *,.brief-display div,.brief-display p,.brief-display span{user-select:text!important;-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;cursor:text!important;pointer-events:auto!important}#card-brief .card-content button,#card-brief .card-content .btn{cursor:pointer!important;user-select:none!important;-webkit-user-select:none!important}.draggable-card .brief-display a,.draggable-card .brief-display a[href],#brief-display a,#brief-display a[href],.card-content .brief-display a,.card-content .brief-display a[href],#brief-card .brief-display a,#brief-card .brief-display a[href]{cursor:pointer!important;pointer-events:auto!important}#card-brief .card-content,#card-brief #brief-card{user-select:text!important;-webkit-user-select:text!important}.brief-history-picker{display:flex;flex-direction:column;gap:10px;margin-bottom:14px;padding:12px 14px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-primary) 6%,var(--card-bg)) 0%,var(--card-bg) 55%);border:1px solid color-mix(in srgb,var(--accent-primary) 22%,var(--border-color));border-left:3px solid var(--accent-primary);border-radius:var(--card-border-radius, 10px);box-shadow:0 1px 2px var(--shadow-color);font-size:13px}.brief-history-picker__header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}.brief-history-picker__row{display:flex;align-items:stretch;gap:8px;flex-wrap:wrap}.brief-history-label{font-weight:600;font-size:13px;color:var(--text-primary, #1e293b);letter-spacing:.01em}.brief-history-date-wrap{position:relative;display:flex;align-items:center;flex:1 1 160px;min-width:0;max-width:220px;cursor:pointer}.brief-history-date-icon{position:absolute;left:12px;z-index:1;width:16px;height:16px;pointer-events:none;background-color:var(--accent-primary);opacity:.7;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E") center / contain no-repeat}.brief-history-input{width:100%;height:38px;padding:0 12px 0 36px;border:1px solid var(--input-border, #e2e8f0);border-radius:9px;background:var(--input-bg, #fff);color:var(--text-color, #1e293b);font-size:14px;font-family:inherit;font-weight:500;line-height:38px;color-scheme:light;transition:border-color .15s ease,box-shadow .15s ease}.brief-history-input:hover{border-color:color-mix(in srgb,var(--accent-primary) 40%,var(--input-border))}.brief-history-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-primary) 22%,transparent)}.brief-history-input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.55;margin-left:4px;padding:4px;border-radius:4px}.brief-history-input::-webkit-calendar-picker-indicator:hover{opacity:.9;background:color-mix(in srgb,var(--accent-primary) 12%,transparent)}.brief-history-today-btn{flex:0 0 auto;align-self:center;height:38px;padding:0 14px;border:1px solid color-mix(in srgb,var(--accent-primary) 35%,var(--border-color));border-radius:9px;background:color-mix(in srgb,var(--accent-primary) 10%,var(--card-bg));color:var(--accent-primary);font-size:13px;font-weight:600;font-family:inherit;white-space:nowrap;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.brief-history-today-btn:hover{background:color-mix(in srgb,var(--accent-primary) 18%,var(--card-bg));border-color:var(--accent-primary)}.brief-history-today-btn:active{transform:scale(.98)}.brief-history-today-btn:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-primary) 28%,transparent)}.brief-history-hint{color:var(--text-secondary, #94a3b8);font-size:11px;font-weight:500;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--text-secondary) 8%,transparent)}@media(max-width:480px){.brief-history-picker{padding:10px 12px;font-size:12px}.brief-history-picker__row{flex-direction:column;align-items:stretch}.brief-history-date-wrap{max-width:none;flex:1 1 auto}.brief-history-today-btn{width:100%}}.opp-scan-picker{display:flex;flex-direction:column;gap:10px;margin-bottom:14px;padding:12px 14px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-teal) 6%,var(--card-bg)) 0%,var(--card-bg) 55%);border:1px solid color-mix(in srgb,var(--accent-teal) 22%,var(--border-color));border-left:3px solid var(--accent-teal);border-radius:var(--card-border-radius, 10px);box-shadow:0 1px 2px var(--shadow-color);font-size:13px}.opp-scan-picker__header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}.opp-scan-picker__row{display:flex;align-items:stretch;gap:8px;flex-wrap:wrap}.opp-scan-label{font-weight:600;font-size:13px;color:var(--text-primary, #1e293b);letter-spacing:.01em}.opp-scan-date-wrap{position:relative;display:flex;align-items:center;flex:1 1 160px;min-width:0;max-width:220px}.opp-scan-date-icon{position:absolute;left:12px;z-index:1;width:16px;height:16px;pointer-events:none;background-color:var(--accent-teal);opacity:.7;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E") center / contain no-repeat}.opp-scan-input{width:100%;height:38px;padding:0 12px 0 36px;border:1px solid var(--input-border, #e2e8f0);border-radius:9px;background:var(--input-bg, #fff);color:var(--text-color, #1e293b);font-size:14px;font-family:inherit;font-weight:500;line-height:38px;color-scheme:light;cursor:default}.opp-scan-input:focus{outline:none;border-color:color-mix(in srgb,var(--accent-teal) 50%,var(--input-border))}.opp-scan-refresh-btn{flex:0 0 auto;align-self:center;height:38px;padding:0 14px;border:1px solid color-mix(in srgb,var(--accent-teal) 35%,var(--border-color));border-radius:9px;background:color-mix(in srgb,var(--accent-teal) 10%,var(--card-bg));color:var(--accent-teal);font-size:13px;font-weight:600;font-family:inherit;white-space:nowrap;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.opp-scan-refresh-btn:hover{background:color-mix(in srgb,var(--accent-teal) 18%,var(--card-bg));border-color:var(--accent-teal)}.opp-scan-refresh-btn:active{transform:scale(.98)}.opp-scan-refresh-btn:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-teal) 28%,transparent)}.opp-scan-hint{color:var(--text-secondary, #94a3b8);font-size:11px;font-weight:500;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--text-secondary) 8%,transparent)}@media(max-width:480px){.opp-scan-picker{padding:10px 12px;font-size:12px}.opp-scan-picker__row{flex-direction:column;align-items:stretch}.opp-scan-date-wrap{max-width:none;flex:1 1 auto}.opp-scan-refresh-btn{width:100%}}@media(hover:none)and (pointer:coarse){.draggable-card{cursor:default}}.draggable-card:hover{opacity:.9}.draggable-card.sortable-ghost{opacity:.4}.draggable-card.sortable-drag{opacity:.8;transform:rotate(2deg)}.card h3{font-size:16px;font-weight:600;margin-bottom:12px;display:flex;align-items:center;gap:8px}.card p{font-size:14px;color:var(--secondary-text);margin-bottom:16px}.input-group{margin-bottom:12px}.input-group label{display:block;font-size:13px;font-weight:500;margin-bottom:6px;color:var(--secondary-text)}.input-group input,.input-group select,.input-group textarea{width:100%;padding:10px;border:1px solid var(--border-color);background:var(--input-bg);color:var(--text-color);word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap;border-radius:8px;font-size:14px;font-family:inherit}.preset-description-badge{margin:5px 0 0;padding:0;font-size:12px;color:var(--text-secondary, #64748b);line-height:1.4;min-height:0;display:none}.preset-description-badge:not(:empty){display:block}.input-group textarea{min-height:80px;resize:vertical;font-family:monospace;font-size:12px}.btn{background:var(--accent-primary);color:#fff;border:none;padding:10px 18px;border-radius:8px;font-family:inherit;font-size:14px;font-weight:500;cursor:pointer!important;transition:background .2s;margin-right:8px;margin-bottom:8px;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:6px;text-align:center}.btn-row .btn{margin-right:0;margin-bottom:0}.btn:hover{background:var(--accent-primary);filter:brightness(.85)}.btn.success{background:var(--accent-success)}.btn.success:hover{background:var(--accent-success);filter:brightness(.85)}.btn.secondary{background:var(--main-btn-secondary)}.btn.secondary:hover{background:var(--main-btn-secondary-hover)}.btn.warning{background:var(--accent-warning)}.btn.warning:hover{background:var(--accent-warning);filter:brightness(.85)}.btn:disabled{opacity:.5;cursor:not-allowed}@media(hover:none)and (pointer:coarse){.btn,.btn-back,.legal-footer-link,.u-link-button{min-height:44px}}@media(max-width:420px){.btn{white-space:normal;text-align:center;line-height:1.25;padding:10px 14px;hyphens:auto;overflow-wrap:anywhere}.u-link-button{white-space:normal}.scan-progress-actions .btn,.opp-action-btn,.btn-filters-toggle{white-space:nowrap;hyphens:none;overflow-wrap:normal}.brief-md-list{padding-left:16px}.legal-list{margin-left:16px;line-height:1.65}}.message{padding:12px;border-radius:8px;margin-bottom:16px;font-size:14px;display:none}.message.error{background:var(--msg-error-bg);color:var(--msg-error-text)}.message.success{background:var(--msg-success-bg);color:var(--msg-success-text)}.message.info{background:var(--msg-info-bg);color:var(--msg-info-text)}.spinner{display:inline-block;width:18px;height:18px;border:3px solid color-mix(in srgb,var(--accent-primary) 30%,transparent);border-radius:50%;border-top-color:var(--accent-primary);animation:spin .8s linear infinite;vertical-align:middle;margin-right:8px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.brief-loader{display:grid;place-items:center;text-align:center;padding:28px 16px}.brief-loader-ring{width:54px;height:54px;border-radius:999px;border:4px solid color-mix(in srgb,var(--accent-primary) 22%,transparent);border-top-color:var(--accent-primary);animation:spin .85s linear infinite}.brief-loader-title{margin-top:14px;font-weight:700;font-size:14px;letter-spacing:.01em;color:var(--text-color)}.brief-loader-sub{margin-top:6px;font-size:12px;color:var(--secondary-text)}.message.loading{background:var(--msg-info-bg);color:var(--msg-info-text);display:flex;align-items:center;gap:8px}.brief-display{background:var(--brief-bg);color:var(--text-color);padding:16px;border-radius:8px;white-space:pre-line;font-size:15px;line-height:1.7;max-height:none;overflow-y:visible;user-select:text!important;-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;cursor:text}.brief-display a,.brief-display a[href]{cursor:pointer!important}.brief-link{color:var(--accent-primary, #2563eb);text-decoration:underline;font-weight:600;cursor:pointer}.brief-source-link{color:var(--accent-primary, #2563eb);text-decoration:none}.brief-sources{margin:12px 0 0;padding:0;font-size:13px;color:var(--text-secondary, #475569);display:flex;flex-wrap:wrap;gap:8px}.brief-md-section{margin:18px 0 5px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--text-secondary, #64748b);border-bottom:1px solid var(--border-color, #e2e8f0);padding-bottom:4px}.brief-md-hr{border:none;border-top:1px solid var(--border-color, #e2e8f0);margin:12px 0}.brief-md-list{margin:6px 0;padding-left:18px}.brief-md-list-item{margin:3px 0;line-height:1.55}.brief-md-spacer{height:6px}.brief-md-paragraph{margin:0 0 5px;line-height:1.6}.brief-empty,.brief-loading{color:var(--text-secondary, #64748b)}.brief-error-text{color:var(--accent-danger, #dc2626)}.brief-date-heading{font-weight:600;color:var(--text-color, #0f172a);margin:0 0 8px}.brief-display{border-left:4px solid #28a745}.brief-content-body{font-family:system-ui;line-height:1.6;margin:0;padding:0;color:var(--text-color, #0f172a);user-select:text;-webkit-user-select:text}.brief-model-badge{font-size:11px;color:var(--text-secondary, #64748b);margin-top:6px;text-align:right}.brief-fallback-note{font-size:12px;color:var(--text-secondary, #64748b);background:var(--msg-info-bg, rgba(33, 150, 243, .08));border-left:3px solid var(--accent-primary, #2196f3);padding:8px 12px;border-radius:4px;margin-bottom:12px}.brief-callout{padding:16px;border-radius:8px}.brief-callout-info{background:var(--msg-info-bg, #e3f2fd);border-left:4px solid var(--accent-primary, #2196f3)}.brief-callout-warning{background:var(--msg-error-bg, #fff3cd);border-left:4px solid var(--accent-warning, #ffc107)}.brief-callout-title{margin:0 0 8px;color:var(--text-color, #1565c0)}.brief-callout-body{margin:0 0 12px;color:var(--text-color, #1565c0)}.brief-callout-btn{padding:8px 16px;border-radius:4px;cursor:pointer}.icon-spin{animation:icon-spin .9s linear infinite}@keyframes icon-spin{to{transform:rotate(360deg)}}.ticker-status-loading{padding:28px 20px}.ticker-skeleton-line{height:8px;border-radius:4px;margin-bottom:10px;background:linear-gradient(90deg,var(--hover-bg, #e2e8f0) 25%,var(--card-bg, #f8fafc) 50%,var(--hover-bg, #e2e8f0) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.ticker-skeleton-line-narrow{width:65%;margin-bottom:0;animation-delay:.25s}.ticker-status-message{text-align:center;color:var(--text-secondary, #666);font-size:13px;margin-top:14px}.ticker-status-feedback{text-align:center;padding:20px}.ticker-status-feedback-error{color:var(--accent-danger, #ef4444)}.ticker-status-feedback-info{color:var(--accent-primary, #2196f3)}.ticker-status-icon-wrap{display:inline-flex;vertical-align:-2px;margin-right:6px}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:8px}.filter-opp-select{font-size:12px;padding:4px 6px;border-radius:6px;border:1px solid var(--border-color, #cbd5e1);background:var(--card-bg, #fff);color:var(--text-color, #1e293b);cursor:pointer;min-width:0;height:30px;line-height:1.2}.filter-opp-select:focus{outline:2px solid var(--accent-primary);outline-offset:1px}.signal-multiselect{position:relative;display:inline-block}.signal-multiselect summary{list-style:none;display:flex;align-items:center;gap:4px;white-space:nowrap}.signal-multiselect summary::-webkit-details-marker{display:none}.signal-filter-count{background:var(--accent-primary);color:#fff;border-radius:8px;font-size:10px;font-weight:700;padding:0 5px;line-height:16px}.signal-multiselect-dropdown{position:absolute;top:calc(100% + 4px);left:0;z-index:200;background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 16px var(--shadow-color);padding:6px 4px;min-width:180px;display:flex;flex-direction:column;gap:1px}.signal-check-option{display:flex;align-items:center;gap:6px;padding:4px 10px;border-radius:5px;font-size:12px;color:var(--text-color);cursor:pointer;white-space:nowrap}.signal-check-option:hover{background:var(--hover-bg)}.signal-check-option input[type=checkbox]{flex-shrink:0;width:1rem;height:1rem;margin:0;accent-color:var(--accent-primary);cursor:pointer}.opp-filters-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}#card-opportunities .card-header h3{order:1}#card-opportunities .btn-filters-toggle{order:2}#card-opportunities .opp-filters-row{order:3}#card-opportunities .collapse-btn{order:4}@media(max-width:520px){#card-opportunities .card-header{flex-wrap:wrap;gap:6px}#card-opportunities .card-header h3{flex:1 1 auto;font-size:16px;min-width:0;order:1}#card-opportunities .collapse-btn{flex:0 0 auto;order:2;padding:4px 12px;font-size:14px}#card-opportunities .btn-filters-toggle{flex:1 0 100%;order:3}#card-opportunities .opp-filters-row{width:100%;order:4;gap:4px}.filter-opp-select{flex:1 1 calc(50% - 6px);min-width:0;max-width:calc(50% - 4px);font-size:11px;padding:3px 4px;height:28px}#display-limit{flex:0 0 52px;font-size:11px;height:28px}}@media(max-width:380px){.filter-opp-select{flex:1 1 100%;max-width:100%}}.collapse-btn{background:#8080801a;color:var(--text-color);border:none;padding:4px 12px;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.collapse-btn:hover{background:#80808033;transform:scale(1.05)}.card-header-actions{display:inline-flex;align-items:center;gap:8px}.card-content{transition:all .3s ease;overflow:hidden}.card-content.collapsed{max-height:0!important;opacity:0;margin:0;padding:0}.opportunities{background:var(--card-bg);border-radius:var(--card-border-radius);padding:20px;box-shadow:0 1px 3px var(--shadow-color);min-width:0;overflow-x:hidden}.opp-item{padding:16px 14px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:flex-start;gap:16px;transition:background-color .2s ease;min-width:0}.opp-item>div:first-of-type{min-width:0;overflow:hidden}.opp-left-flex{flex:1}.opp-clickable{cursor:pointer}.opp-title-row{display:flex;align-items:baseline;gap:6px;margin-bottom:4px}.opp-meta-row{margin-bottom:4px}.opp-company-name{color:var(--text-color, #475569);font-weight:500}.opp-sector{color:var(--text-secondary, #94a3b8)}.opp-info-line{font-size:12px;color:var(--text-secondary, #64748b);line-height:1.4}.opp-info-line .opp-country-flag{display:inline-block;width:18px;height:13px;margin-right:4px;vertical-align:-.15em;object-fit:contain}.opp-info-line .opp-country-flag-emoji{display:inline-block;margin-right:4px;font-style:normal;line-height:1;vertical-align:-.15em;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif}.opp-side{text-align:right;margin-left:16px;display:flex;flex-direction:column;align-items:flex-end;gap:6px}.opp-action-row{display:flex;gap:8px;align-items:center}.opp-action-link{color:var(--accent-primary, #3b82f6);text-decoration:none;font-size:18px}.opp-muted-hint{color:var(--text-secondary, #94a3b8)}.opp-item:hover{background-color:var(--hover-bg)}.opp-item:last-child{border-bottom:none}.opp-ticker{font-weight:600;font-size:15px}.opp-only-mobile{display:none!important}.opp-mobile-ticker{color:var(--text-secondary, #64748b);font-weight:500}@media(max-width:768px){.opp-only-desktop{display:none!important}.opp-only-mobile{display:inline!important}.opp-info-isin{display:none!important}}.opp-left-link{flex:1;min-width:0;overflow:hidden;display:flex;flex-direction:column;justify-content:center;min-height:44px;text-decoration:none;color:inherit;cursor:pointer}.analysis-ia-modal #downloadAnalysisBtn{display:inline-flex;align-items:center;gap:6px;background:var(--accent-primary);color:#fff;border-radius:999px;box-shadow:0 4px 10px #0f172a2e}.opp-actions{display:flex;gap:6px;align-items:center}.opp-action-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;font-size:18px;background:none;border:none;border-radius:6px;cursor:pointer;padding:0;line-height:1;text-decoration:none;transition:background-color .15s ease,transform .15s ease}.opp-action-btn:hover{background:transparent;transform:scale(1.15)}.opp-action-btn:active{transform:scale(.95)}.opp-score{background:var(--opp-score-bg);color:var(--opp-score-text);padding:4px 12px;border-radius:var(--card-border-radius);font-size:13px;font-weight:500}.opp-score[data-score-range=low]{background:var(--badge-bg);color:var(--badge-text)}.opp-score[data-score-range=mid]{background:var(--opp-score-bg);color:var(--opp-score-text)}.opp-score[data-score-range=high]{background:#10b9811f;color:var(--main-score-high-text)}.opp-score[data-score-range=excellent]{background:#f59e0b26;color:var(--msg-warning-text);font-weight:700}.score-adj{background:var(--opp-score-bg);color:var(--accent-primary);padding:4px 12px;border-radius:var(--card-border-radius);font-size:13px;font-weight:500;cursor:help}.score-mode-badges{display:flex;gap:4px;margin-top:4px;justify-content:flex-end}.score-mode-badge{font-size:10px;font-weight:600;padding:1px 5px;border-radius:3px;letter-spacing:.02em;opacity:.45;cursor:default}.score-mode-badge.score-mode-active{opacity:1}.score-mode-m{background:#3b82f61f;color:#2563eb;border:1px solid rgba(59,130,246,.22)}.score-mode-p{background:#a855f71f;color:#9333ea;border:1px solid rgba(168,85,247,.22)}.score-mode-badge.score-mode-active.score-mode-m{background:#3b82f62e}.score-mode-badge.score-mode-active.score-mode-p{background:#a855f72e}.preset-mode-pill{display:inline-block;font-size:10px;font-weight:700;padding:1px 5px;border-radius:3px;margin-right:4px;vertical-align:middle;letter-spacing:.03em}.preset-mode-m{background:#3b82f626;color:#2563eb}.preset-mode-p{background:#a855f726;color:#9333ea}.rank-badge{display:inline-block;font-size:10px;font-weight:700;padding:1px 6px;border-radius:8px;margin-left:5px;vertical-align:middle;background:var(--success-bg);color:var(--success-text)}.rank-badge.rank-top5{background:var(--warning-bg);color:var(--warning-text)}@media(max-width:400px){.opp-actions{gap:3px}.opp-action-btn{width:24px;height:24px;font-size:16px}.watchlist-star,.portfolio-btn{font-size:17px}.opp-score{font-size:11px;padding:3px 8px}.opp-item{gap:8px;padding:12px 10px}}#search-suggestions{z-index:1000}.search-suggestion-item{transition:background-color .12s ease;border-bottom:1px solid var(--border-color, #f1f5f9)}.search-suggestion-item:last-child{border-bottom:none}.search-suggestion-item:hover,.search-suggestion-item.active{background:var(--hover-bg, rgba(59, 130, 246, .07))}.btn-back{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;background:var(--card-bg, #fff);border:1px solid var(--border-color, #e2e8f0);font-size:14px;font-weight:500;cursor:pointer;text-decoration:none;color:var(--text-color, #1e293b);box-shadow:0 1px 4px #00000014;transition:background .15s;white-space:nowrap}.btn-back:hover{background:var(--input-bg, #f8fafc)}[data-action=open-alert]{background:none;border:none;cursor:pointer;padding:0;line-height:1;font-size:18px;transition:transform .15s ease}[data-action=open-alert]:hover{transform:scale(1.2);background:transparent!important}[data-action=open-alert]:active{transform:scale(.9)}body:not(.dark-mode) [data-action=open-alert]:not(.has-alert),body:not(.dark-mode) [data-action=open-alert]:not(.has-alert) span{filter:grayscale(100%) brightness(.8) contrast(1.3);-webkit-text-stroke:1.5px #1e293b;color:#94a3b8}body:not(.dark-mode) [data-action=open-alert].has-alert,body:not(.dark-mode) [data-action=open-alert].has-alert span{filter:grayscale(100%) brightness(0) contrast(1.5);-webkit-text-stroke:0}[data-action=open-alert] .alert-btn-glyph{display:inline-flex;align-items:center;justify-content:center;line-height:0;filter:none!important;-webkit-text-stroke:0!important}body:not(.dark-mode) [data-action=open-alert]:not(.has-alert) .alert-btn-glyph svg{color:#64748b}body:not(.dark-mode) [data-action=open-alert].has-alert .alert-btn-glyph svg{color:#0f172a}.opp-chart-glyph{display:inline-flex;align-items:center;justify-content:center;line-height:0;vertical-align:middle}.opp-action-link.opp-action-chart{display:inline-flex;align-items:center;justify-content:center;font-size:inherit}.btn-filters-toggle{display:none}@media(max-width:640px){.btn-filters-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;border:1px solid var(--border-color, #e2e8f0);background:var(--card-bg, #fff);font-size:13px;cursor:pointer;color:var(--text-color, #1e293b);font-weight:500;white-space:nowrap}.opp-filters-row{display:none;gap:6px;padding:8px 0 4px;width:100%}.opp-filters-row.filters-open{display:grid!important;grid-template-columns:1fr 1fr;gap:6px}.opp-filters-row.filters-open #filter-signal-display{grid-column:1;grid-row:1}.opp-filters-row.filters-open #display-limit{grid-column:2;grid-row:1}.opp-filters-row.filters-open #filter-country{grid-column:1;grid-row:2}.opp-filters-row.filters-open #filter-sector{grid-column:2;grid-row:2}.opp-filters-row .filter-opp-select,.opp-filters-row .display-limit-select{width:100%;max-width:100%;box-sizing:border-box}.filters-badge{background:var(--accent-primary);color:#fff;border-radius:999px;font-size:11px;padding:1px 6px;font-weight:700}}@media(max-width:480px){.btn-label-text{display:none}#ai-analysis-btn .btn-label-text{display:inline}#quick-search{width:100px!important}}.watchlist-star{position:relative;transition:transform .15s ease,opacity .15s ease;cursor:pointer;background:transparent!important;border:none;font-size:20px;padding:0;line-height:1;opacity:.35}.watchlist-star.filled{opacity:1}.watchlist-star.filled:before,.watchlist-star.filled:after{position:absolute;font-size:8px;font-weight:800;line-height:1;pointer-events:none;animation:cur-twinkle 1.6s ease-in-out infinite}.watchlist-star.filled:before{content:"\20ac";top:-1px;left:-5px;color:#f59e0b!important;animation-delay:0s}.watchlist-star.filled:after{content:"$";bottom:-1px;right:-5px;color:#10b981!important;animation-delay:.8s}@keyframes cur-twinkle{0%,to{opacity:.45;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}body:not(.dark-mode) .watchlist-star{color:var(--text-color)}.watchlist-star:hover{transform:scale(1.2);background:transparent!important;opacity:.7}.watchlist-star.filled:hover{opacity:1}.watchlist-star:active{transform:scale(.9)}.portfolio-btn{transition:transform .15s ease;cursor:pointer;background:transparent!important;border:none;font-size:20px;padding:0;line-height:1}body:not(.dark-mode) .portfolio-btn.filled{filter:grayscale(100%) brightness(0) contrast(1.5);-webkit-text-stroke:0}body:not(.dark-mode) .portfolio-btn:not(.filled){filter:grayscale(100%) brightness(2) contrast(1);-webkit-text-stroke:1px var(--text-color);color:#fff}.portfolio-btn:hover{transform:scale(1.2);background:transparent!important}.portfolio-btn:active{transform:scale(.9)}button[data-action=open-alert],.alert-btn{transition:transform .15s ease;cursor:pointer;background:transparent!important;border:none;font-size:18px;padding:0;line-height:1}body:not(.dark-mode) button[data-action=open-alert].has-alert,body:not(.dark-mode) .alert-btn.has-alert{filter:grayscale(100%) brightness(0) contrast(1.5);-webkit-text-stroke:0}body:not(.dark-mode) button[data-action=open-alert]:not(.has-alert),body:not(.dark-mode) .alert-btn:not(.has-alert){filter:grayscale(100%) brightness(.8) contrast(1.3);-webkit-text-stroke:1.5px var(--text-color);color:var(--badge-text)}button[data-action=open-alert]:hover,.alert-btn:hover{transform:scale(1.2);background:transparent!important}button[data-action=open-alert]:active,.alert-btn:active{transform:scale(.9)}.alert-muted-text{color:var(--text-secondary, #64748b)}.alert-empty-state{text-align:center;color:var(--text-secondary, #64748b);padding:20px}.alert-error-text{color:var(--accent-danger, #dc2626)}.alert-error-centered{color:var(--accent-danger, #ef4444);text-align:center}.alert-list-row{display:flex;justify-content:space-between;align-items:center;padding:12px;border-bottom:1px solid var(--border-color, #e2e8f0)}.alert-list-row-card{border-radius:6px;margin-bottom:8px;background:var(--bg-secondary, #f8fafc)}.alert-list-info{flex:1}.alert-company-name{font-weight:600;color:var(--text-color, #1e293b);font-size:15px}.alert-company-name-compact{font-weight:600;color:var(--text-color, #1e293b)}.alert-ticker-subline{font-size:12px;color:var(--text-secondary, #94a3b8);margin-top:2px}.alert-condition-line{font-size:13px;color:var(--text-secondary, #64748b);margin-top:4px}.alert-delete-btn,.alert-edit-btn,.alert-secondary-btn,.alert-primary-btn{border:none;padding:5px 10px;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500}.alert-delete-btn{color:var(--accent-danger, #ef4444);background:#ef44441f;padding:6px 12px;transition:all .2s}.alert-edit-btn{color:var(--accent-primary, #0ea5e9);background:#0ea5e91f}.alert-primary-btn{background:var(--accent-primary, #0ea5e9);color:#fff;padding:5px 12px}.alert-secondary-btn{background:var(--bg-secondary, #f1f5f9);color:var(--text-secondary, #64748b)}.alerts-modal-overlay,.alert-delete-overlay{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.alerts-modal-overlay{background:var(--overlay-bg);z-index:10000}.alerts-modal-overlay--triggered{z-index:10001}.alerts-modal-card{background:var(--card-bg, #fff);padding:24px;border-radius:12px;width:90%;max-width:520px;box-shadow:0 10px 25px #0003;max-height:80vh;display:flex;flex-direction:column;border:1px solid var(--border-color, #e2e8f0)}html:is(.is-native-app,.has-shell-nav) .alerts-modal-overlay,html:is(.is-native-app,.has-shell-nav) .alerts-modal-overlay--triggered{z-index:100102;box-sizing:border-box;padding:max(12px,env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) calc(max(12px,env(safe-area-inset-bottom,0px)) + var(--sn-h, 64px) + 12px) max(12px,env(safe-area-inset-left,0px))}html:is(.is-native-app,.has-shell-nav) .alerts-modal-card{max-height:min(80vh,calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - var(--sn-h, 64px) - 48px));width:min(520px,100%);margin:0 auto}html:is(.is-native-app,.has-shell-nav) .alert-delete-overlay{z-index:100103;box-sizing:border-box;padding:max(12px,env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) calc(max(12px,env(safe-area-inset-bottom,0px)) + var(--sn-h, 64px) + 12px) max(12px,env(safe-area-inset-left,0px))}.alerts-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.alerts-modal-header-compact{margin-bottom:16px}.alerts-modal-title{margin:0;color:var(--text-color, #1e293b)}.alerts-modal-list{flex:1;overflow-y:auto;min-height:100px}.alerts-modal-list-compact{min-height:80px}.alert-triggered-row{padding:12px;border-bottom:1px solid var(--border-color, #e2e8f0);border-radius:6px;margin-bottom:8px;background:var(--bg-secondary, #f8fafc)}.alert-triggered-info{margin-bottom:8px}.alert-actions-row{display:flex;gap:8px;flex-wrap:wrap}.alert-edit-form{display:flex;align-items:center;gap:8px;margin-top:8px;flex-wrap:wrap}.alert-edit-label{font-size:13px;color:var(--text-color, #374151);white-space:nowrap}.alert-edit-input{width:88px;padding:4px 8px;border:1px solid var(--border-color, #d1d5db);border-radius:6px;font-size:13px;background:var(--input-bg, #fff);color:var(--text-color, #1e293b)}.alert-delete-overlay{background:#0206178c;z-index:10030;padding:16px}.alert-delete-card{width:min(420px,100%);background:var(--card-bg, #fff);border-radius:14px;box-shadow:0 24px 48px #0f172a47;border:1px solid var(--border-color, #e2e8f0);overflow:hidden}.alert-delete-body{padding:18px 20px 12px}.alert-delete-title{font-size:17px;font-weight:700;color:var(--text-color, #0f172a);margin-bottom:6px}.alert-delete-copy{font-size:14px;color:var(--text-secondary, #475569);line-height:1.45}.alert-delete-actions{display:flex;justify-content:flex-end;gap:10px;padding:12px 20px 18px;border-top:1px solid var(--border-color, #f1f5f9)}.alert-delete-cancel-btn,.alert-delete-confirm-btn{border-radius:10px;padding:9px 14px;font-size:14px;cursor:pointer}.alert-delete-cancel-btn{border:1px solid var(--border-color, #cbd5e1);background:var(--bg-secondary, #f8fafc);color:var(--text-color, #334155);font-weight:600}.alert-delete-confirm-btn{border:none;background:#dc2626;color:#fff;font-weight:700}.alert-toast-container{position:fixed;top:16px;right:16px;z-index:10002;display:flex;flex-direction:column;gap:8px;align-items:flex-end}.config-section{background:var(--card-bg);border-radius:var(--card-border-radius);padding:20px;box-shadow:0 1px 3px var(--shadow-color);border-top:3px solid}.collapsible-content.open{display:block}@media(max-width:768px){.grid{grid-template-columns:1fr}.header{flex-direction:row!important;justify-content:space-between!important;align-items:flex-start!important;padding:10px 12px!important;gap:8px!important}.header h1{font-size:16px!important;margin:0!important;flex:0 0 auto!important}#header-right-container{display:flex!important;align-items:center!important;gap:6px!important;flex:0 0 auto!important}.version-badge,.env-badge,.status-badge{font-size:9px!important;padding:2px 6px!important}}.indicators-guide-inner{background:var(--card-bg);color:var(--text-color);border-radius:16px;padding:30px;max-width:800px;max-height:80vh;overflow-y:auto;position:relative;border:1px solid var(--border-color)}.guide-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:20px}.guide-modal-header .guide-title{margin:0;flex:1;min-width:0;padding-right:4px}.guide-close-btn{position:absolute;top:12px;right:16px;z-index:2}.guide-title{color:var(--text-color);margin-bottom:20px}.guide-section-block{margin-bottom:25px}.guide-h3{color:var(--guide-heading);margin-bottom:15px}.guide-h3.guide-h3-section{color:var(--guide-section)}.guide-hr{border:none;border-top:1px solid var(--border-color);margin:20px 0}.guide-table{width:100%;border-collapse:collapse;font-size:13px;margin-top:10px}.guide-table-head{background:var(--guide-table-row)}.indicators-guide-modal{position:fixed;inset:0;width:100%;height:100%;background:#000c;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px}.guide-table th,.guide-table td{padding:5px 8px;border-bottom:1px solid var(--border-color)}.guide-table th{padding-top:6px;padding-bottom:6px}.guide-table-left{text-align:left}.guide-table-right{text-align:right}.guide-penalty-row{color:var(--accent-danger)}.guide-note{margin-top:10px;font-size:12px;color:var(--text-secondary)}.guide-full-link-row{border-top:1px solid var(--border-color);margin-top:20px;padding-top:16px;text-align:center}.guide-full-link{color:var(--accent-primary, #0ea5e9);font-weight:600;text-decoration:none;font-size:14px}.legal-table{width:100%;border-collapse:collapse;font-size:14px;margin:8px 0}.legal-table thead tr{background:var(--bg-secondary, #f1f5f9)}.legal-table th,.legal-table td{padding:8px;border:1px solid var(--border-color, #e2e8f0)}.legal-table th{text-align:left}@media(max-width:520px){.legal-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}}.legal-list{margin:8px 0 8px 20px;line-height:1.8}.legal-link-row{margin-top:2rem}.legal-separator{color:var(--secondary-text, #64748b)}.legal-container{max-width:720px;margin:2rem auto;padding:0 16px}.legal-toolbar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}.legal-toolbar-item{margin:0}.legal-title{margin-top:14px}.muted{color:var(--secondary-text, #64748b);font-size:14px}.u-hidden{display:none}.u-draggable{cursor:move}.u-pointer{cursor:pointer}.u-mt-8{margin-top:8px}.u-mt-12{margin-top:12px}.u-mt-14{margin-top:14px}.u-mt-16{margin-top:16px}.u-my-12{margin:12px 0}.u-h3-section{font-size:1rem;margin-top:14px}.u-link-accent{color:var(--accent-primary, #0ea5e9)}.u-title-reset{margin:0}.u-subtitle-reset{margin:4px 0 0}.u-full-width{width:100%}.u-nowrap-inline{white-space:nowrap;display:inline-block;letter-spacing:0}.u-flex-center-gap-8{display:flex;align-items:center;gap:8px}.u-flex-center-gap-8>input[type=checkbox]{flex-shrink:0;width:1rem;height:1rem;margin:0}.u-flex-center-gap-12{display:flex;align-items:center;gap:12px}.u-flex-col-gap-4{display:flex;flex-direction:column;gap:4px}.u-flex-col-gap-8{display:flex;flex-direction:column;gap:8px}.u-inline-flex-col-gap-8{margin-top:8px;display:flex;flex-direction:column;gap:8px;align-items:stretch}.u-grid-2-gap-12{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.u-grid-2-gap-16{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.u-link-button{text-decoration:none;justify-content:center;white-space:nowrap}.config-collapsible>.config-collapsible-summary{list-style:none;cursor:pointer;font-weight:500;color:var(--text-secondary, #64748b);padding:4px 0;display:flex;align-items:center;gap:8px;user-select:none}.config-collapsible>.config-collapsible-summary::-webkit-details-marker{display:none}.config-collapsible>.config-collapsible-summary:before{content:"\25b8";font-size:11px;color:var(--text-secondary, #64748b);transition:transform .15s;flex:0 0 auto}.config-collapsible[open]>.config-collapsible-summary:before{transform:rotate(90deg)}.token-limits-mode-toggle{display:inline-flex;gap:0;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;overflow:hidden;margin:8px 0 12px;background:var(--card-bg, #fff)}.token-limits-mode-btn{padding:6px 14px;font-size:13px;font-weight:500;border:0;background:transparent;color:var(--text-secondary, #6b7280);cursor:pointer;transition:background .15s,color .15s}.token-limits-mode-btn:hover{color:var(--accent-primary, #1d4ed8)}.token-limits-mode-btn.is-active{background:var(--accent-primary, #1d4ed8);color:#fff}.token-limits-mode-btn:focus-visible{outline:2px solid var(--accent-secondary, #3b82f6);outline-offset:-2px}#config-card .u-inline-flex-col-gap-8>a.btn,#config-card .u-inline-flex-col-gap-8>.btn{width:100%;max-width:100%;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;text-align:center}.dashboard-config-save-bar{position:sticky;bottom:0;background:linear-gradient(to top,var(--card-bg, #fff) 60%,transparent);padding:12px 0 calc(12px + env(safe-area-inset-bottom,0px));margin-top:16px;z-index:5}.dashboard-config-save-btn{width:100%;transition:background .2s,box-shadow .2s,filter .2s}.dashboard-config-save-btn:disabled{opacity:.55;cursor:not-allowed;filter:grayscale(.3);box-shadow:none}.dashboard-config-save-bar.is-dirty .dashboard-config-save-btn{box-shadow:0 6px 20px color-mix(in srgb,var(--accent-success, #16a34a) 35%,transparent)}.dashboard-small-label{font-size:13px;color:#64748b}.dashboard-small-label-xs{font-size:12px;color:#64748b}.dashboard-model-current-label{font-size:12px;color:var(--secondary-text);margin-bottom:8px}#model-display{font-size:14px;font-weight:500;color:var(--text-color);padding:8px 12px;background:#8b5cf61a;border-radius:6px;border:1px solid rgba(139,92,246,.2)}#telegram-include-brief{cursor:pointer;width:18px;height:18px}#scan-preset-mini{width:100%;margin-bottom:8px}#scan-btn-reduced,#recalc-btn-reduced{width:100%}#scan-progress{display:none;margin-top:16px;padding:12px;background:#f8fafc;border-radius:8px}.scan-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;flex-wrap:wrap;gap:6px}#progress-text{font-size:13px;font-weight:500;color:#475569;flex:1;min-width:0}.scan-progress-actions{display:flex;gap:6px;flex-shrink:0}.scan-progress-actions .btn{padding:4px 10px;font-size:12px;margin:0;white-space:nowrap}@media(max-width:640px){.scan-progress-header{flex-direction:column;align-items:stretch;gap:10px}#progress-text{flex:none;width:100%;min-width:0;line-height:1.35}.scan-progress-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px;flex-shrink:1}.scan-progress-actions .btn{width:100%;min-height:44px;white-space:normal;text-align:center;line-height:1.2;padding:8px 10px}}@media(max-width:360px){.scan-progress-actions{grid-template-columns:1fr}}.progress-track{background:#e2e8f0;border-radius:4px;height:8px;overflow:hidden}#progress-bar{background:linear-gradient(90deg,#10b981,#059669);height:100%;width:0%;transition:width .3s ease;border-radius:4px}#progress-details{margin-top:8px;font-size:12px;color:#64748b}.skeleton-flex-fill{flex:1}.skeleton-line-primary{margin-bottom:8px;height:16px}.skeleton-line-secondary{height:12px}.portfolio-item-ticker-sub{color:var(--text-secondary, #64748b);font-size:12px;letter-spacing:.04em;margin-top:-6px;margin-bottom:8px;font-weight:500;text-transform:uppercase}.portfolio-item-ticker-link{color:inherit;text-decoration:none}.portfolio-item-ticker-link:hover{color:var(--accent-primary, #3b82f6)}.portfolio-item-name-text{font-weight:600;overflow-wrap:anywhere;word-break:break-word;max-width:100%;display:inline-block;vertical-align:middle}@media(min-width:769px){.portfolio-item-name-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:360px}}.portfolio-warning-text{color:var(--accent-warning, #f59e0b)}.portfolio-warning-small{color:var(--accent-warning, #f59e0b);font-size:12px}.portfolio-pnl-positive{color:var(--accent-success, #10b981)}.portfolio-pnl-negative{color:var(--accent-danger, #ef4444)}.portfolio-item-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.portfolio-item-title-icons{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.portfolio-ticker-link{color:var(--accent-primary, #3b82f6);text-decoration:none;display:inline-flex;align-items:center;gap:4px;word-break:keep-all}.portfolio-item-actions{margin-left:auto;display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.portfolio-action-link{text-decoration:none;display:inline-flex;align-items:center;white-space:nowrap}.portfolio-collapse-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px}.portfolio-collapse-icon{display:inline-block;width:14px;opacity:.8}@media(max-width:768px){.portfolio-item-title-row .portfolio-item-actions{flex-basis:100%;width:100%;margin-left:0}.portfolio-action-link{white-space:normal;hyphens:none}}.portfolio-stat-full{grid-column:1 / -1}.portfolio-modal-heading{margin-bottom:20px}.portfolio-modal-icon{font-size:24px}.portfolio-modal-form{display:flex;flex-direction:column;gap:16px}.portfolio-modal-input{width:100%;padding:10px;border:1px solid var(--input-border);border-radius:8px;font-size:14px;box-sizing:border-box}.portfolio-modal-current-price{font-size:12px;display:block;margin-top:4px}.portfolio-modal-actions{display:flex;gap:12px;margin-top:8px}.load-error-text{color:var(--accent-danger, #dc2626)}.import-op-badge.dividend{background:#3b82f626;color:#1d4ed8}.import-subline{color:var(--secondary-text, #64748b)}.journal-banner-link{text-decoration:none}.journal-banner-title{font-weight:600;font-size:15px;line-height:1.35;color:var(--text-color, #0f172a)}body.page-portfolio-journal #journal-ticker-filter-banner.journal-banner-ticker{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:12px;padding:10px 14px;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:10px}.journal-banner-link--all{margin-left:auto}.journal-kind-badge{display:inline-flex;align-items:center;justify-content:center;padding:.28em .65em;border-radius:7px;font-size:12px;font-weight:600;line-height:1.2;white-space:nowrap}.journal-kind-badge--buy{background:#10b98124;color:#047857}.journal-kind-badge--sell{background:#f9731624;color:#c2410c}.journal-kind-badge--dividend{background:#3b82f624;color:#1d4ed8}.journal-kind-badge--other{background:#64748b1f;color:#475569}.journal-ticker-code{font-weight:700;font-size:14px;letter-spacing:.03em;font-variant-numeric:tabular-nums;color:var(--text-color, #0f172a)}.journal-empty-cell{text-align:center;padding:24px 16px;color:var(--secondary-text, #64748b)}.journal-num-cell{text-align:right}.journal-action-cell{text-align:center}.journal-delete-btn{margin-left:6px;color:var(--accent-danger, #ef4444)}@media(max-width:768px){body.page-portfolio-journal #portfolio-journal-table-wrap{overflow-x:visible;-webkit-overflow-scrolling:auto}body.page-portfolio-journal .portfolio-journal-table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}body.page-portfolio-journal .portfolio-journal-table thead{display:none}body.page-portfolio-journal .portfolio-journal-table tbody{display:block;width:100%}body.page-portfolio-journal .portfolio-journal-table tbody tr{display:block;width:100%;margin-bottom:12px;padding:12px 14px;border:1px solid var(--border-color, #e2e8f0);border-radius:10px;background:var(--card-bg, #ffffff);box-sizing:border-box}body.page-portfolio-journal .portfolio-journal-table tbody tr:last-child{margin-bottom:0}body.page-portfolio-journal .portfolio-journal-table td{display:grid;grid-template-columns:minmax(6.75rem,40%) 1fr;gap:6px 10px;align-items:center;padding:8px 0;border:none;width:100%;text-align:end;vertical-align:middle}body.page-portfolio-journal .portfolio-journal-table td:first-child{padding-top:0}body.page-portfolio-journal .portfolio-journal-table td[data-label]:before{content:attr(data-label);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--secondary-text, #64748b);text-align:start;line-height:1.3}body.page-portfolio-journal .portfolio-journal-table td.journal-action-cell{display:flex;flex-direction:row;flex-wrap:nowrap;gap:8px;padding-top:12px;margin-top:6px;border-top:1px solid var(--border-color, #e2e8f0);text-align:center;grid-template-columns:unset}body.page-portfolio-journal .portfolio-journal-table td.journal-action-cell:before{display:none}body.page-portfolio-journal .journal-action-cell .btn,body.page-portfolio-journal .journal-action-cell .btn-small{flex:1 1 0;min-width:0;min-height:44px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;hyphens:none;overflow-wrap:normal;word-break:normal;padding:8px 10px;box-sizing:border-box;margin:0}body.page-portfolio-journal .journal-delete-btn{margin-left:0}body.page-portfolio-journal .portfolio-journal-table .journal-empty-cell{display:block;text-align:center;padding:20px 12px;font-size:14px}body.page-portfolio-journal .portfolio-journal-table .journal-empty-cell:before{display:none}body.page-portfolio-journal .portfolio-journal-card-header{flex-direction:column;align-items:stretch}body.page-portfolio-journal .portfolio-journal-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}body.page-portfolio-journal .portfolio-journal-actions .btn{width:100%;min-height:44px;display:inline-flex;align-items:center;justify-content:center;text-align:center}body.page-portfolio-journal #journal-ticker-filter-banner{flex-direction:column;align-items:stretch}body.page-portfolio-journal #journal-ticker-filter-banner .journal-banner-link--all{margin-left:0}body.page-portfolio-journal #journal-ticker-filter-banner .btn,body.page-portfolio-journal #journal-ticker-filter-banner a.journal-banner-link{width:100%;display:inline-flex;align-items:center;justify-content:center;text-align:center;box-sizing:border-box}}@media(min-width:769px){body.page-portfolio-journal .container{max-width:1080px}body.page-portfolio-journal #journal-ticker-filter-banner.journal-banner-ticker{display:grid;grid-template-columns:minmax(0,auto) minmax(0,1fr) minmax(0,auto);align-items:center;gap:12px 20px;padding:14px 18px;margin-bottom:16px;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:12px;box-shadow:0 1px 2px #0f172a0f}body.page-portfolio-journal #journal-ticker-filter-banner.journal-banner-ticker .journal-banner-link--all{margin-left:0;justify-self:end}body.page-portfolio-journal #journal-ticker-filter-banner.journal-banner-ticker .journal-banner-link--back{justify-self:start}body.page-portfolio-journal #journal-ticker-filter-banner.journal-banner-ticker .journal-banner-title{justify-self:center;text-align:center;font-size:1.05rem;font-weight:600;letter-spacing:-.02em;padding:0 8px}body.page-portfolio-journal #journal-ticker-filter-banner.journal-banner-ticker .journal-banner-link{min-height:40px;padding:8px 16px;white-space:nowrap}body.page-portfolio-journal #portfolio-journal-page-card.card{border:1px solid var(--border-color, #e8ecf1);box-shadow:0 1px 3px #0f172a12}body.page-portfolio-journal .portfolio-journal-card-header{margin-bottom:14px;padding-bottom:2px;border-bottom:1px solid var(--border-color, #eef2f6)}body.page-portfolio-journal .portfolio-journal-card-header h2{font-size:1.2rem;font-weight:600}body.page-portfolio-journal .portfolio-journal-actions .btn-small{min-height:38px;padding:8px 14px}body.page-portfolio-journal #portfolio-journal-table-wrap{overflow:hidden;border:1px solid var(--border-color, #e8ecf1);border-radius:10px;background:var(--card-bg, #ffffff)}body.page-portfolio-journal .portfolio-journal-table{table-layout:fixed;width:100%;border-collapse:separate;border-spacing:0;font-size:14px}body.page-portfolio-journal .portfolio-journal-table thead{background:linear-gradient(180deg,#f8fafc,#f1f5f9)}body.page-portfolio-journal .portfolio-journal-table thead th{padding:11px 12px;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#64748b;border-bottom:1px solid var(--border-color, #e2e8f0);vertical-align:middle}body.page-portfolio-journal .portfolio-journal-table thead th:nth-child(1){width:12%}body.page-portfolio-journal .portfolio-journal-table thead th:nth-child(2){width:14%}body.page-portfolio-journal .portfolio-journal-table thead th:nth-child(3){width:12%}body.page-portfolio-journal .portfolio-journal-table thead th:nth-child(4){width:11%}body.page-portfolio-journal .portfolio-journal-table thead th:nth-child(5){width:13%}body.page-portfolio-journal .portfolio-journal-table thead th:nth-child(6){width:12%}body.page-portfolio-journal .portfolio-journal-table thead th:nth-child(7){width:26%}body.page-portfolio-journal .portfolio-journal-table tbody td{padding:13px 12px;vertical-align:middle;border-bottom:1px solid #f1f5f9;word-wrap:break-word}body.page-portfolio-journal .portfolio-journal-table tbody tr:nth-child(2n) td{background:#f8fafcb8}body.page-portfolio-journal .portfolio-journal-table tbody tr:hover td{background:#eff6fff2}body.page-portfolio-journal .portfolio-journal-table tbody tr:last-child td{border-bottom:none}body.page-portfolio-journal .portfolio-journal-table .journal-cell-type{width:12%}body.page-portfolio-journal .portfolio-journal-table .journal-cell-date{font-variant-numeric:tabular-nums;color:var(--text-color, #334155)}body.page-portfolio-journal .portfolio-journal-table .journal-num-cell{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}body.page-portfolio-journal .portfolio-journal-table .journal-action-cell{text-align:right;white-space:nowrap;padding-left:8px}body.page-portfolio-journal .portfolio-journal-table .journal-action-cell .btn-small{min-height:36px;padding:6px 12px;margin-left:8px}body.page-portfolio-journal .portfolio-journal-table .journal-action-cell .btn-small:first-child{margin-left:0}body.page-portfolio-journal .journal-delete-btn{margin-left:8px;border-color:#ef444459}}.performance-chart-canvas{height:280px;max-height:400px}.portfolio-chart-error{text-align:center;color:var(--accent-danger, #ef4444);padding:24px 16px;font-size:14px}#hidden-cards-list{display:flex;flex-direction:column;gap:4px}.hidden-card-row{margin-bottom:0;padding:10px 12px;border-radius:10px;cursor:pointer;font-size:14px;line-height:1.45;transition:background-color .15s ease}.hidden-card-row:hover{background:color-mix(in srgb,var(--text-color, #0f172a) 5%,transparent)}.hidden-card-row .settings-checkbox{margin:0;justify-self:start}.hidden-card-label{min-width:0}.scan-log-link{color:var(--accent-primary, #2563eb);text-decoration:none}.google-icon{width:20px;height:20px}.inapp-hint{background:#0ea5e914;border:1px solid rgba(14,165,233,.25);border-radius:10px;padding:10px 14px;margin-bottom:12px;font-size:13px;color:#64748b;text-align:center;line-height:1.5}.search-suggestions-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:1000;background:var(--card-bg, #fff);border:1px solid var(--border-color, #cbd5e1);border-radius:8px;box-shadow:0 4px 12px #0000001f;max-height:240px;overflow-y:auto;display:none}.search-suggestions-dropdown-quick{z-index:2000;max-height:280px;box-shadow:0 4px 12px #00000026}.search-suggestion-item{padding:8px 12px;cursor:pointer;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--border-color, #f1f5f9)}.search-suggestion-ticker{font-size:13px;min-width:60px}.search-suggestion-name{font-size:12px;color:var(--text-secondary, #64748b);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.search-suggestion-country{font-size:11px;color:var(--text-secondary, #94a3b8)}.header-user-info-mobile{display:flex;align-items:center;gap:6px;margin:0;flex-wrap:nowrap;flex:1 1 auto;justify-content:center;min-width:0}.header-user-info-desktop{display:flex;align-items:center;gap:10px;margin-left:0;margin-right:auto}.dashboard-main-cards-container{display:flex;flex-direction:column;gap:16px;margin-bottom:0}.app-update-banner{position:fixed;top:0;left:0;right:0;z-index:99998;background:#0ea5e9;color:#fff;padding:12px 16px;padding-top:max(16px,calc(env(safe-area-inset-top,0px) + 10px));padding-bottom:max(12px,10px);display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:500;box-shadow:0 2px 8px #00000026}.app-update-banner-actions{display:flex;gap:8px}.app-update-banner-cta{color:#fff;background:#fff3;padding:6px 12px;border-radius:6px;border:none;cursor:pointer;font-size:13px;text-decoration:none}.app-update-banner-close{background:none;border:none;color:#fff;cursor:pointer;font-size:18px;padding:0 4px}#mobile-app-prompt{position:fixed;inset:0;background:#020617a6;display:flex;align-items:flex-end;justify-content:center;padding:16px;z-index:10000}#mobile-app-prompt .prompt-card{width:min(520px,100%);background:var(--card-bg);color:var(--text-primary);border-radius:16px;border:1px solid var(--border-color, rgba(148, 163, 184, .2));box-shadow:0 16px 32px #00000059;padding:16px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}#mobile-app-prompt .prompt-header{display:flex;align-items:center;justify-content:space-between;gap:12px}#mobile-app-prompt .prompt-title{font-size:16px;font-weight:600}#mobile-app-prompt .prompt-close{border:none;background:transparent;color:inherit;font-size:20px;cursor:pointer;padding:4px}#mobile-app-prompt .prompt-body{margin-top:10px;font-size:14px;line-height:1.4;color:var(--text-secondary)}#mobile-app-prompt .prompt-actions{margin-top:14px;display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}#mobile-app-prompt .btn{border:1px solid var(--border-color, rgba(148, 163, 184, .25));background:var(--bg-secondary, rgba(15, 23, 42, .05));color:var(--text-primary);border-radius:10px;padding:10px 12px;cursor:pointer;font-weight:600;font-size:14px;text-decoration:none;display:inline-flex;align-items:center;gap:8px}#mobile-app-prompt .btn.primary{background:#0ea5e9;border-color:#0ea5e9;color:#0b1220}.bt-muted-small{color:var(--secondary-text);font-size:.85rem}.bt-intro{font-size:.85rem;color:var(--secondary-text);margin-bottom:8px}.bt-muted-cell{color:var(--secondary-text)}.bt-rank-cell{text-align:center;color:var(--secondary-text);font-weight:500}.bt-left-cell{text-align:left}.bt-table-wrap-tight{margin-bottom:0}.bt-table-wrap-narrow{max-width:500px}.bt-table-compact{min-width:0}.usage-pill-active{background:var(--success-bg, #dcfce7);color:var(--success-text, #166534)}.usage-pill-suspended{background:var(--msg-error-bg, #fee2e2);color:var(--msg-error-text, #991b1b)}.usage-pill-muted{background:var(--bg-secondary, #f1f5f9);color:var(--text-secondary, #64748b)}.usage-pill-accent{background:color-mix(in srgb,var(--accent-primary, #2563eb) 15%,transparent);color:var(--accent-primary, #2563eb)}.usage-admin-btn{padding:3px 8px;font-size:11px;cursor:pointer;border:1px solid var(--border-color, #e2e8f0);border-radius:4px}.usage-admin-btn-suspend{background:var(--msg-error-bg, #fff8f8);color:var(--msg-error-text, #b91c1c)}.usage-admin-btn-activate{background:var(--msg-success-bg, #f0fdf4);color:var(--msg-success-text, #15803d)}.usage-admin-btn-muted{background:var(--bg-secondary, #f1f5f9);color:var(--text-secondary, #64748b);margin-left:6px}.usage-admin-btn-accent{background:color-mix(in srgb,var(--accent-primary, #2563eb) 10%,transparent);color:var(--accent-primary, #2563eb);margin-left:6px}.usage-table-wrap-spaced{margin-top:8px}.usage-map-message{color:var(--secondary-text);padding:1rem}.usage-map-legend-gradient{background:linear-gradient(90deg,#eff6ff,#60a5fa,#1d4ed8)}.settings-subsection-hidden{display:none}.settings-form-group-spacious{margin-bottom:30px}.settings-hint-indent{margin-left:34px}.settings-form-group-compact{margin-bottom:20px}.settings-hint-block{display:block;margin-bottom:8px}.settings-preview-section{margin-top:16px;border-top:1px solid var(--border-color, #e2e8f0);padding-top:16px}.settings-preview-btn{width:100%}.settings-preview-result{display:none;margin-top:12px;padding:12px;background:var(--card-bg, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:6px;font-size:13px;white-space:pre-wrap;max-height:300px;overflow-y:auto;font-family:monospace}.api-budget-loading{display:flex;align-items:center;gap:8px}.api-budget-row{margin-bottom:8px}.api-budget-header{display:flex;justify-content:space-between;margin-bottom:4px}.api-budget-provider{font-weight:500}.api-budget-status,.api-budget-percent{font-weight:600}.api-budget-status-active,.api-budget-percent-ok{color:var(--accent-success)}.api-budget-status-invalid,.api-budget-percent-danger{color:var(--accent-danger)}.api-budget-status-error,.api-budget-percent-warning{color:var(--accent-warning)}.api-budget-note{color:var(--text-secondary, #6b7280)}.api-budget-link{color:var(--accent-primary, #3b82f6);text-decoration:underline}.api-budget-progress{width:100%;height:8px;accent-color:var(--accent-success)}.api-budget-progress-warning{accent-color:var(--accent-warning)}.api-budget-progress-danger{accent-color:var(--accent-danger)}.api-budget-empty{color:var(--text-secondary, #6b7280)}.api-budget-empty small{font-size:11px}.api-budget-error{color:var(--accent-danger, #ef4444)}.ai-md-link{color:var(--accent-primary, #3b82f6);text-decoration:underline}.ai-md-citation{color:var(--accent-primary, #3b82f6);text-decoration:underline dotted;text-underline-offset:2px;cursor:pointer}.ai-md-citation-fallback{color:var(--text-secondary, #64748b);text-decoration-style:dotted}.ai-md-section{margin:20px 0 6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--text-secondary, #64748b);border-bottom:1px solid var(--border-color, #e2e8f0);padding-bottom:4px}.ai-md-list{margin:6px 0;padding-left:18px}.ai-md-list-item{margin:3px 0;line-height:1.55}.ai-md-spacer{height:8px}.ai-md-paragraph{margin:0 0 5px;line-height:1.6}.ai-loading-overlay,.ai-analysis-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center}.ai-loading-overlay{background:#0f172ae0;flex-direction:column;gap:16px}.ai-loading-overlay .ai-loading-title{color:#f8fafc;font-size:15px;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.45)}.ai-loading-overlay .ai-loading-subtitle{color:#e2e8f0;font-size:13px;max-width:min(340px,calc(100vw - 48px));text-align:center;line-height:1.5;text-shadow:0 1px 2px rgba(0,0,0,.35)}.ai-loading-overlay .ai-loading-phase{color:#bae6fd;font-size:13px;font-weight:600;text-align:center;min-height:1.2em;transition:opacity .2s ease;text-shadow:0 1px 2px rgba(0,0,0,.4)}.ai-loading-overlay .ai-loading-elapsed{color:#cbd5e1;font-size:12px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:.02em;text-shadow:0 1px 2px rgba(0,0,0,.35)}.ai-loading-overlay .ai-loading-spinner.spinner,.ai-loading-overlay .spinner.ai-loading-spinner{border-color:#f8fafc47;border-top-color:#38bdf8}.ai-loading-overlay .ai-loading-cancel-btn{margin-top:4px;padding:10px 20px;border-radius:8px;border:1px solid #cbd5e1;background:#f1f5f9;color:#0f172a;font-size:13px;font-weight:600;cursor:pointer}.ai-loading-overlay .ai-loading-cancel-btn:hover{border-color:#94a3b8;background:#fff;color:#020617}.ai-loading-overlay .ai-loading-cancel-btn:focus-visible{outline:2px solid #38bdf8;outline-offset:3px}.ai-sources{margin-top:16px;font-size:13px;color:var(--text-secondary, #475569)}.ai-source-link{margin-right:8px;color:var(--accent-primary, #2563eb)}.analysis-ia-modal{background:var(--card-bg, #fff);color:var(--text-color, #1e293b);border-radius:12px;padding:30px;max-width:800px;max-height:80vh;overflow-y:auto;position:relative}.ai-indicators-card{background:var(--bg-secondary, #f5f5f5);padding:15px;border-radius:8px;margin-bottom:20px}.ai-indicators-title{margin-top:0}.ai-indicators-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.ai-model-line{margin:0 0 20px;color:var(--text-color, #0f172a);font-size:13px}.ai-analysis-body{font-size:14px;color:var(--text-color, #1e293b)}.ai-generated-at{margin-top:20px;color:var(--text-secondary, #999);font-size:12px}.ai-download-btn{margin-top:15px;padding:10px 20px;background:var(--accent-primary);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:filter .2s}.ai-download-btn:hover{filter:brightness(.85)}.dashboard-hour-input{width:80px}.scheduler-control-row{display:flex;align-items:stretch;gap:12px;height:auto}#scheduler-status-box{display:flex;align-items:center;gap:12px;padding:12px;background:#f8fafc;border-radius:8px;flex:1;border:1px solid #e2e8f0;box-sizing:border-box}.scheduler-status-label{font-size:13px;color:#64748b;font-weight:500}.scheduler-status-value{font-size:13px;font-weight:600}.scheduler-schedule{font-size:13px;color:#64748b;margin-left:auto}.scheduler-toggle-btn{min-width:140px;padding:12px 18px;border:1px solid #e2e8f0;box-sizing:border-box}#api-budgets-display{background:var(--card-bg, #f8fafc);padding:16px;border-radius:8px;margin-top:8px;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text}.api-budgets-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.dashboard-small-btn{padding:4px 8px;font-size:12px}.admin-links-help{font-size:13px;color:var(--secondary-text, #64748b);margin:0 0 8px}.token-limits-hint{font-size:12px;color:#64748b;margin:4px 0 8px}.dashboard-config-box{background:var(--card-bg, #f8fafc);padding:16px;border-radius:8px;margin-top:8px}.dashboard-section-title{margin:0 0 12px;font-size:14px;font-weight:600;color:#1e293b}.token-limit-input{width:100%;margin-top:4px}#manage-cookies-sep,#manage-cookies-btn{display:none}#manage-cookies-btn{background:none;border:none;padding:0;cursor:pointer;font:inherit;color:inherit}.guide-penalty-row{color:var(--guide-penalty)}dialog#config-loading-dialog{border:none!important;outline:none;padding:0;background:transparent;overflow:visible;position:fixed;inset:0;margin:auto;width:fit-content;height:fit-content}dialog#config-loading-dialog::backdrop{background:#00000026}.config-loading-content{display:flex;align-items:center;justify-content:center}.empty-state{text-align:center;padding:32px 16px;color:var(--text-secondary, #64748b)}.empty-state p{margin:0}.empty-state p+p{font-size:13px;margin-top:8px;opacity:.8}@media(min-width:769px){.header{flex-direction:row!important;align-items:center!important}.header-title{order:0!important;width:auto!important;display:block!important}#header-user-info{order:0!important;padding:0!important;border-top:none!important;width:auto!important}}@media(orientation:landscape)and (max-height:500px){.header{padding:4px 12px!important;gap:4px!important}.header h1{font-size:14px!important}.version-badge,.env-badge,.status-badge{font-size:8px!important;padding:1px 5px!important}#dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}#dashboard-grid>.card{min-height:auto!important;padding:10px!important}.card{padding:10px!important}#card-opportunities .card-header{flex-wrap:nowrap!important;gap:6px!important}#card-opportunities .card-header h3{flex:0 0 auto!important;font-size:16px!important}.opp-filters-row{flex-wrap:nowrap!important;gap:4px!important}.filter-opp-select{font-size:11px!important;padding:2px 4px!important;height:26px!important}.modal-content,.modal-inner{max-height:85vh!important;overflow-y:auto!important}.indicators-guide-inner{max-height:85vh!important;padding:16px!important}body{overflow-x:hidden}}@media(orientation:landscape)and (min-height:501px)and (max-height:600px){.header{padding:6px 12px!important}#dashboard-grid{gap:10px!important}.card{padding:14px!important}.modal-content,.modal-inner{max-height:88vh!important;overflow-y:auto!important}}.score-modes-row{display:flex;gap:10px;margin-top:6px;flex-wrap:wrap}.score-mode-badge{display:flex;align-items:center;gap:6px;background:var(--bg-secondary, rgba(0,0,0,.04));border-radius:8px;padding:4px 10px;font-size:12px}button.score-mode-badge{font:inherit;margin:0;text-align:left;-webkit-tap-highlight-color:transparent;touch-action:manipulation;min-height:44px;box-sizing:border-box;border:1px solid transparent}button.score-mode-badge:focus-visible{outline:2px solid var(--accent-primary, #3b82f6);outline-offset:2px}.score-mode-label{color:var(--text-secondary, #64748b);font-weight:500}.score-mode-active-badge{background:var(--bg-secondary, rgba(0,0,0,.04));border:1px solid var(--accent-primary, #3b82f6);opacity:1}.score-mode-active-badge .score-mode-label{color:var(--text-color, #1e293b);font-weight:600}.score-muted-message{color:var(--text-secondary, #666)}.score-note-small{font-weight:400;opacity:.7;font-size:11px}.score-delta-small{opacity:.65;font-weight:600}.score-delta-note{opacity:.75;font-weight:500}.score-source-badges{display:inline-flex;gap:6px;margin-left:8px;vertical-align:middle}.score-source-badge{font-size:11px;line-height:1;padding:3px 6px;border-radius:999px;background:#94a3b82e;color:var(--text-secondary, #64748b)}.score-quality-badge-row{margin-top:8px}.score-collapsible-reset{margin:0}.score-summary-reset{cursor:pointer;list-style:none}.score-chevron{display:inline-block;width:14px;opacity:.65}.score-collapsible-body{margin-top:12px}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:#1e293b;color:#f8fafc;padding:5px 9px;border-radius:7px;font-size:11px;font-weight:400;line-height:1.45;text-align:left;white-space:normal;max-width:min(220px,calc(100vw - 24px));min-width:80px;width:max-content;pointer-events:none;opacity:0;z-index:200;transition:opacity .15s ease;box-shadow:0 3px 10px #0000002e}[data-tooltip]:before{content:"";position:absolute;bottom:calc(100% + 1px);left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#1e293b;pointer-events:none;opacity:0;z-index:201;transition:opacity .15s ease}[data-tooltip]:hover:after,[data-tooltip]:hover:before,[data-tooltip].tooltip-active:after,[data-tooltip].tooltip-active:before{opacity:1}@media(max-width:480px){[data-tooltip]:after{max-width:min(160px,calc(100vw - 32px));font-size:10.5px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.score-explain-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0 12px;padding:0;background:transparent;border:0;box-shadow:none}.score-explain-tab-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:10px 14px;border-radius:14px;border:1px solid var(--border-color, #e2e8f0);background:var(--card-bg, #ffffff);color:var(--text-color, #1e293b);cursor:pointer;font-size:.92rem;font-weight:800;letter-spacing:.01em;font-family:inherit;-webkit-appearance:none;appearance:none;transition:transform .12s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease,color .18s ease;box-shadow:0 8px 22px #0f172a0f}.score-explain-tab-btn:hover{transform:translateY(-1px);border-color:#3b82f673;box-shadow:0 12px 28px #0f172a1a}.score-explain-tab-btn.active{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:transparent;color:#fff;box-shadow:0 16px 36px #2563eb47}.score-explain-tab-btn:active{transform:translateY(0) scale(.98)}.score-explain-panel{display:none}.score-explain-panel.active{display:block}body.dark-mode .score-explain-tab-btn{background:var(--card-bg, #21262d);border-color:var(--border-color, #30363d);color:var(--text-secondary, #8b949e);box-shadow:0 8px 22px #00000040}body.dark-mode .score-explain-tab-btn:hover{color:var(--text-color, #e6edf3);border-color:#58a6ff73}body.dark-mode .score-explain-tab-btn.active{background:linear-gradient(135deg,#1f6feb,#388bfd);color:#fff;border-color:transparent;box-shadow:0 16px 36px #388bfd47}:root{--badge-gold-from: #f6d365;--badge-gold-to: #fda085;--badge-gold-text: #5a3a00;--badge-green-from: #43e97b;--badge-green-to: #38f9d7;--badge-green-text: #0a3a1e;--badge-blue-from: #4facfe;--badge-blue-to: #00f2fe;--badge-blue-text: #00264d;--sig-support-from: #fef3c7;--sig-support-to: #fde68a;--alert-warning-dark-text: #1f2937}.container{padding-top:max(env(safe-area-inset-top,0px),16px);padding-bottom:max(env(safe-area-inset-bottom,0px),20px)}@supports (padding-top: env(safe-area-inset-top)){.container{padding-top:max(calc(env(safe-area-inset-top) + 8px),16px)}}@supports (padding-bottom: env(safe-area-inset-bottom)){.container{padding-bottom:max(calc(env(safe-area-inset-bottom) + 12px),20px)}}.lang-switcher{display:inline-flex;align-items:center;justify-content:center}select.lang-select,select.profile-lang-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;box-sizing:border-box;height:22px;min-height:22px;max-height:22px;min-width:38px;padding:0 6px;border-radius:6px;border:1px solid color-mix(in srgb,var(--border-color, #cbd5e1) 70%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--card-bg, #ffffff) 92%,transparent),color-mix(in srgb,var(--card-bg, #ffffff) 82%,transparent));color:var(--text-color, #0f172a);font-family:Courier New,monospace;font-size:11px;line-height:22px;font-weight:700;letter-spacing:.4px;cursor:pointer;box-shadow:0 1px #0000000a;text-align:center;vertical-align:middle}select.lang-select:focus,select.profile-lang-select:focus{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-color, #0ea5e9) 25%,transparent);border-color:color-mix(in srgb,var(--accent-color, #0ea5e9) 55%,transparent)}.header-user-info{display:flex;align-items:center;gap:10px!important;margin-left:0!important;margin-right:auto!important}.mobile-apk-bar{display:none;padding:8px 12px;margin-bottom:12px;background:color-mix(in srgb,var(--accent-success) 12%,transparent);border-radius:8px;border:1px solid color-mix(in srgb,var(--accent-success) 25%,transparent);text-align:center}.mobile-apk-bar a{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;color:var(--accent-success);font-size:13px;font-weight:600;text-decoration:none;border-radius:6px;background:color-mix(in srgb,var(--accent-success) 15%,transparent)}.mobile-apk-bar a:hover{background:color-mix(in srgb,var(--accent-success) 25%,transparent)}@media(max-width:768px){.mobile-apk-bar.mobile-apk-bar--show{display:block}}#main-cards-container{gap:16px!important;margin-bottom:0!important;min-width:0}#dashboard-grid{gap:20px!important}.username-pill{color:var(--text-primary, #1f2937);font-weight:600;font-size:13px;padding:4px 10px;background:var(--bg-secondary, #f3f4f6);border:1px solid var(--border-color, #e5e7eb);border-radius:9999px;line-height:1;box-shadow:0 1px 2px #0000000a}button.username-pill.username-pill-btn{appearance:none;cursor:pointer;font-family:inherit;transition:background-color .15s ease,border-color .15s ease,transform .1s ease}button.username-pill.username-pill-btn:hover{background:color-mix(in srgb,var(--accent-color, #2563eb) 12%,var(--bg-secondary, #f3f4f6));border-color:color-mix(in srgb,var(--accent-color, #2563eb) 35%,var(--border-color, #e5e7eb))}button.username-pill.username-pill-btn:focus-visible{outline:2px solid var(--accent-color, #2563eb);outline-offset:2px}button.username-pill.username-pill-btn:active{transform:scale(.98)}@media(max-width:768px){.btn-icon{min-width:44px;min-height:44px}.lang-switcher{min-width:44px;min-height:44px;padding:8px 6px;margin:-8px -6px;box-sizing:border-box}select.lang-select,select.profile-lang-select{height:24px;min-height:24px;max-height:24px;line-height:24px;min-width:42px;font-size:12px}.profile-lang-row{min-height:44px;padding:8px 0;box-sizing:border-box}}.btn-settings{background:var(--accent-secondary, #3b82f6)}.btn-settings:hover{background:var(--accent-secondary, #3b82f6);filter:brightness(.85)}.btn-logout{background:var(--accent-danger, #ef4444)}.btn-logout:hover{background:var(--accent-danger, #ef4444);filter:brightness(.85)}.btn-login{background:var(--accent-secondary, #3b82f6);color:#fff}.btn-login:hover{background:var(--accent-secondary, #3b82f6);filter:brightness(.9)}body.admin-mode .free-ribbon,body.privileged-mode .free-ribbon{display:none!important}.user-settings-inline{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;margin-bottom:10px;border:1px solid var(--border-color, #e5e7eb);border-radius:10px;background:var(--bg-secondary, #fafafa)}.user-settings-left,.user-settings-right{display:flex;align-items:center;gap:8px}.btn-inline{padding:6px 10px;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer}.btn-inline.btn-settings{background:var(--accent-secondary, #3b82f6);color:#fff}.btn-inline.btn-settings:hover{background:var(--accent-secondary, #3b82f6);filter:brightness(.85)}.btn-inline.btn-logout{background:var(--accent-danger, #ef4444);color:#fff}.btn-inline.btn-logout:hover{background:var(--accent-danger, #ef4444);filter:brightness(.85)}.header-logout{padding-inline:12px;font-size:12px}.modal-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:10000;justify-content:center;align-items:center;backdrop-filter:blur(4px)}.modal-overlay.active{display:flex}.modal-content{background:var(--card-bg, #ffffff);color:var(--text-color, #1e293b);padding:30px;border-radius:16px;box-shadow:0 10px 40px #0000004d;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid var(--border-color, #f0f0f0)}.modal-header h2{margin:0;color:var(--text-color, #333);font-size:24px}.modal-close{background:none;border:none;font-size:28px;cursor:pointer;color:var(--text-secondary, #999);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.modal-close:hover{background:var(--hover-bg, #f0f0f0);color:var(--text-color, #333)}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-color, #333);font-size:14px}.form-group label.settings-checkbox-label{display:flex;flex-direction:row;align-items:center}.form-group input[type=text],.form-group input[type=number],.form-group input[type=time],.form-group select:not(.lang-select):not(.profile-lang-select){width:100%;padding:10px 12px;border:2px solid var(--border-color, #e0e0e0);border-radius:8px;font-size:14px;background:var(--input-bg, #ffffff);color:var(--text-color, #333);transition:all .2s}.form-group input:focus,.form-group select:not(.lang-select):not(.profile-lang-select):focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-primary) 15%,transparent)}.form-group small{display:block;margin-top:5px;color:var(--text-secondary, #666);font-size:12px}.modal-buttons{display:flex;gap:10px;margin-top:30px}.btn-primary{flex:1;padding:12px;background:linear-gradient(135deg,var(--accent-secondary, #3b82f6) 0%,var(--accent-primary, #1d4ed8) 100%);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:6px;text-align:center}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px color-mix(in srgb,var(--accent-secondary, #3b82f6) 40%,transparent)}.btn-secondary{flex:1;padding:12px;background:var(--hover-bg, #e0e0e0);color:var(--text-color, #333);border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:6px;text-align:center}.btn-secondary:hover{background:var(--hover-bg, #e0e0e0);filter:brightness(.93)}.favorite-star.active{color:var(--accent-warning, #ffc107)}.favorite-star.inactive{color:var(--border-color, #ddd)}@keyframes starPop{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.toast{position:fixed;bottom:max(env(safe-area-inset-bottom,0px),20px);right:max(env(safe-area-inset-right,0px),20px);padding:15px 20px;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:10001;animation:toastSlideIn .3s ease-out}@keyframes toastSlideIn{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}.toast.success{background:var(--accent-success, #4caf50);color:#fff}.toast.error{background:var(--accent-danger, #f44336);color:#fff}.toast.info{background:var(--accent-primary, #2196f3);color:#fff}.alert-toast{padding:10px 14px;border-radius:8px;box-shadow:0 8px 20px #0003;font-size:13px;max-width:320px;line-height:1.4;color:#fff}.alert-toast--info{background:var(--accent-primary, #0ea5e9)}.alert-toast--success{background:var(--accent-success, #10b981)}.alert-toast--warning{background:var(--accent-warning, #f59e0b);color:var(--alert-warning-dark-text)}.alert-toast--error{background:var(--accent-danger, #ef4444)}@media(max-width:768px){#user-info{position:static;margin:10px;flex-wrap:wrap;justify-content:center}.modal-content{width:95%;padding:20px}.modal-buttons{flex-direction:column}.btn-primary,.btn-secondary{width:100%}.header{padding:10px 12px!important;gap:8px!important;flex-direction:column!important;align-items:stretch!important;flex-wrap:wrap!important}.header-title{font-size:16px!important;margin:0!important;order:1!important;width:100%!important;display:flex!important;align-items:center!important;gap:8px!important;justify-content:space-between!important}#header-right-container{order:1!important;display:flex!important;align-items:center!important;gap:6px!important;flex-shrink:0!important}.version-badge{font-size:10px!important;padding:3px 6px!important}.status-badge{font-size:0!important;padding:0!important;width:14px!important;height:14px!important;border-radius:50%!important;background:var(--accent-success)!important;display:inline-block!important;overflow:hidden!important;text-indent:-9999px!important;border:2px solid var(--success-bg)!important}.status-badge:before{content:""!important}.status-badge *{display:none!important}#header-user-info{order:2!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;width:100%!important;padding:8px 0 0!important;border-top:1px solid var(--bg-secondary)!important;margin:0!important}#header-user-info>.user-name-badge{font-size:12px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:min(46vw,12.5rem)!important;min-width:0!important;flex-shrink:1!important}#header-user-info>span:nth-child(2){font-size:12px!important;white-space:nowrap!important;flex-shrink:0!important}#header-user-info>a{padding:6px 10px!important;font-size:12px!important;white-space:nowrap!important;border-radius:6px!important}.header-logout{padding:6px 10px!important;font-size:12px!important;white-space:nowrap!important;border-radius:6px!important;background:var(--accent-danger)!important;color:#fff!important;border:none!important;cursor:pointer!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;margin-left:auto!important}}.settings-modal-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;z-index:10000;justify-content:center;align-items:center;backdrop-filter:blur(4px)}.settings-modal-content{background:var(--card-bg, #ffffff);color:var(--text-color, #1f2937);padding:30px;border-radius:16px;box-shadow:0 10px 40px #0000004d;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}html:is(.is-native-app,.has-shell-nav) .settings-modal-overlay{z-index:100102;box-sizing:border-box;padding:max(12px,env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) calc(max(12px,env(safe-area-inset-bottom,0px)) + var(--sn-h, 64px) + 12px) max(12px,env(safe-area-inset-left,0px));align-items:center}html:is(.is-native-app,.has-shell-nav) .settings-modal-content{max-height:min(85vh,calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - var(--sn-h, 64px) - 48px));width:min(500px,100%);margin:0 auto}.settings-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.settings-modal-header h2{margin:0;color:var(--text-color, #1f2937);font-size:1.5rem}:root{--close-icon-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath stroke='%23000' stroke-width='2.25' stroke-linecap='round' d='M7 7l10 10M17 7L7 17'/%3E%3C/svg%3E")}:is(.close-btn,.settings-modal-close,.modal-close-btn,.guide-close-btn,.alerts-modal-close){--close-btn-size: 2.25rem;--close-btn-bg: color-mix(in srgb, var(--text-secondary, #64748b) 11%, var(--card-bg, #fff));--close-btn-border: color-mix(in srgb, var(--border-color, #e2e8f0) 85%, transparent);flex-shrink:0;box-sizing:border-box;width:var(--close-btn-size);height:var(--close-btn-size);min-width:var(--close-btn-size);min-height:var(--close-btn-size);padding:0;margin:0;border:1px solid var(--close-btn-border);border-radius:50%;background:var(--close-btn-bg);color:var(--text-secondary, #64748b);font-size:0;line-height:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .1s ease,box-shadow .15s ease}:is(.close-btn,.settings-modal-close,.modal-close-btn,.guide-close-btn,.alerts-modal-close):before{content:"";display:block;width:14px;height:14px;background-color:currentColor;-webkit-mask-image:var(--close-icon-mask);mask-image:var(--close-icon-mask);-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}:is(.close-btn,.settings-modal-close,.modal-close-btn,.guide-close-btn,.alerts-modal-close):hover{--close-btn-bg: color-mix(in srgb, var(--accent-danger, #ef4444) 14%, var(--card-bg, #fff));--close-btn-border: color-mix(in srgb, var(--accent-danger, #ef4444) 35%, var(--border-color, #e2e8f0));color:var(--accent-danger, #dc2626)}:is(.close-btn,.settings-modal-close,.modal-close-btn,.guide-close-btn,.alerts-modal-close):focus-visible{outline:2px solid var(--accent-color, #2563eb);outline-offset:2px}:is(.close-btn,.settings-modal-close,.modal-close-btn,.guide-close-btn,.alerts-modal-close):active{transform:scale(.94)}.card-header :is(.close-btn,.settings-modal-close){align-self:flex-start;margin-top:2px}.indicators-guide-inner>.guide-close-btn,.analysis-ia-modal>.ai-modal-close{position:absolute;top:12px;right:16px;left:auto;z-index:2}.analysis-ia-modal>.ai-modal-close{top:15px;right:20px}.indicators-guide-inner .guide-modal-header>.guide-close-btn{position:static;top:auto;right:auto}.settings-form .form-group{margin-bottom:20px}.settings-label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-color, #374151)}.settings-input{width:100%;padding:12px;border:2px solid var(--border-color, #e5e7eb);border-radius:8px;font-size:14px;background:var(--input-bg, #ffffff);color:var(--text-color, #1f2937);transition:border-color .2s,box-shadow .2s}.settings-input:focus{outline:none;border-color:var(--accent-secondary, #3b82f6);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-secondary, #3b82f6) 15%,transparent)}.settings-subsection{margin-bottom:20px;padding:16px;background:var(--bg-secondary, #f3f4f6);border-radius:8px;border:1px solid var(--border-color, #e5e7eb)}.settings-checkbox-label{display:flex;flex-direction:row;align-items:center;width:100%;max-width:100%;box-sizing:border-box;cursor:pointer;font-weight:500;color:var(--text-color, #374151)}.settings-checkbox-label>.settings-checkbox{flex:0 0 22px}.settings-checkbox-label>span,.settings-checkbox-label .hidden-card-label{min-width:0;flex:1 1 auto;line-height:1.45}.settings-checkbox-label>span:not(.hidden-card-label){margin-left:12px}.settings-checkbox{appearance:none;-webkit-appearance:none;box-sizing:border-box;width:22px;height:22px;min-width:22px;margin:0;cursor:pointer;flex-shrink:0;border:2px solid var(--border-color, #cbd5e1);border-radius:6px;background-color:var(--input-bg, #ffffff);background-repeat:no-repeat;background-position:center;background-size:14px 14px;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease,opacity .15s ease}.settings-checkbox:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent-secondary, #3b82f6) 45%,var(--border-color, #cbd5e1))}.settings-checkbox:checked{background-color:var(--accent-secondary, #3b82f6);border-color:var(--accent-secondary, #3b82f6);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6.5 12.3 10.5 16.2 18 8.5'/%3E%3C/svg%3E")}.settings-checkbox:focus{outline:none}.settings-checkbox:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-secondary, #3b82f6) 28%,transparent)}.settings-checkbox:disabled{opacity:.45;cursor:not-allowed}.settings-checkbox-label:hover .settings-checkbox:not(:disabled):not(:checked){border-color:color-mix(in srgb,var(--accent-secondary, #3b82f6) 35%,var(--border-color, #cbd5e1))}label.hidden-card-row.settings-checkbox-label{display:flex;flex-direction:row;align-items:center;gap:12px;width:100%;max-width:100%;box-sizing:border-box}label.hidden-card-row.settings-checkbox-label .settings-checkbox{flex:0 0 22px}label.hidden-card-row.settings-checkbox-label .hidden-card-label{flex:1 1 auto;min-width:0}.hidden-cards-context-hint{margin-top:6px;margin-bottom:4px;font-size:12px;color:var(--text-secondary, #6b7280)}.settings-hint{display:block;color:var(--text-secondary, #6b7280);font-size:12px;margin-top:6px}.settings-buttons{display:flex;gap:12px;margin-top:24px}.settings-btn{flex:1;padding:14px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .1s,box-shadow .2s;white-space:nowrap}.settings-btn:hover{transform:translateY(-1px)}.settings-btn:active{transform:translateY(0)}.settings-btn-primary{background:linear-gradient(135deg,var(--accent-secondary, #3b82f6) 0%,var(--accent-primary, #1d4ed8) 100%);color:#fff;box-shadow:0 4px 12px color-mix(in srgb,var(--accent-secondary, #3b82f6) 30%,transparent)}.settings-btn-primary:hover{box-shadow:0 6px 16px color-mix(in srgb,var(--accent-secondary, #3b82f6) 40%,transparent)}.settings-btn-secondary{background:var(--hover-bg, #e5e7eb);color:var(--text-color, #374151)}.settings-btn-secondary:hover{background:var(--hover-bg, #e5e7eb);filter:brightness(.93)}.settings-btn-danger{background:var(--danger, #dc2626);color:#fff;border:1px solid var(--danger, #dc2626);margin-top:8px}.settings-btn-danger:hover{filter:brightness(1.08)}.settings-btn-inline-save{flex:0 0 auto;padding:10px 14px;font-size:14px;font-weight:500;background:transparent;color:var(--text-secondary, #6b7280);border:1px solid var(--border-color, #e5e7eb);box-shadow:none;opacity:.7;transition:background .15s,color .15s,border-color .15s,opacity .15s,box-shadow .2s,transform .1s}.settings-btn-inline-save:hover{opacity:1;border-color:var(--accent-secondary, #3b82f6);color:var(--accent-secondary, #3b82f6)}.settings-btn-inline-save.is-dirty{background:linear-gradient(135deg,var(--accent-secondary, #3b82f6) 0%,var(--accent-primary, #1d4ed8) 100%);color:#fff;border-color:transparent;opacity:1;box-shadow:0 4px 12px color-mix(in srgb,var(--accent-secondary, #3b82f6) 30%,transparent)}.settings-btn-ghost{background:transparent;color:var(--text-secondary, #6b7280);border:1px solid var(--border-color, #e5e7eb);box-shadow:none}.settings-btn-ghost:hover{background:var(--hover-bg, #e5e7eb);color:var(--text-color, #374151)}.settings-btn-block{display:block;width:100%;flex:none;margin-top:0}.profile-section-danger{border-top:1px solid var(--border-color, #e5e7eb);margin-top:16px;padding-top:16px}.settings-preview-error{color:var(--danger, #dc2626)}.user-name-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border-radius:999px;font-size:13px;font-weight:600;line-height:1;color:var(--text-primary);background:var(--badge-bg, #f1f5f9);border:1px solid color-mix(in srgb,var(--border-color, #e2e8f0) 75%,transparent);max-width:min(16rem,100%);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}button.user-name-badge,.user-name-badge-btn{appearance:none;cursor:pointer;font-family:inherit;transition:background-color .15s ease,border-color .15s ease,transform .1s ease}button.user-name-badge:hover,.user-name-badge-btn:hover{background:color-mix(in srgb,var(--accent-color, #2563eb) 12%,var(--badge-bg, #f1f5f9));border-color:color-mix(in srgb,var(--accent-color, #2563eb) 35%,var(--border-color, #e2e8f0))}button.user-name-badge:focus-visible,.user-name-badge-btn:focus-visible{outline:2px solid var(--accent-color, #2563eb);outline-offset:2px}button.user-name-badge:active,.user-name-badge-btn:active{transform:scale(.98)}.profile-section{border-top:1px solid var(--border-color, #e2e8f0);padding-top:16px;margin-top:8px}.profile-section:first-of-type{border-top:none;padding-top:0;margin-top:0}.profile-section-title{font-size:.95rem;font-weight:700;margin:0 0 12px;color:var(--text-primary);letter-spacing:.01em}.profile-section-danger .profile-section-title{color:var(--accent-danger, #dc2626)}.profile-row{display:flex;gap:8px;align-items:stretch;flex-wrap:wrap}.profile-row>.settings-input{flex:1 1 180px;min-width:0}.profile-row>.settings-btn{flex:0 0 auto}.profile-section-privacy .profile-privacy-intro{margin-top:0;line-height:1.45}.profile-lang-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}.profile-lang-label{margin:0;font-size:13px;font-weight:600;color:var(--text-primary)}select.profile-lang-select{flex:0 0 auto;min-width:68px}.profile-lang-hint{margin-top:4px;margin-bottom:0}.profile-action-list{list-style:none;margin:14px 0 0;padding:0;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;overflow:hidden;background:var(--card-bg, #fff)}.profile-action-list li+li{border-top:1px solid var(--border-color, #e5e7eb)}.profile-action-link,.profile-action-btn{display:flex;align-items:center;width:100%;min-height:40px;padding:9px 12px;font-size:13px;font-weight:500;line-height:1.35;text-align:left;box-sizing:border-box;transition:background-color .12s ease}.profile-action-link{color:var(--accent-secondary, #2563eb);text-decoration:none}.profile-action-link:hover{background:color-mix(in srgb,var(--accent-secondary, #2563eb) 8%,transparent);text-decoration:underline}@media(max-width:360px){.profile-lang-row{flex-direction:column;align-items:stretch;gap:8px;padding:4px 0}select.profile-lang-select{width:auto;max-width:100%;align-self:flex-start}.profile-action-link,.profile-action-btn{min-height:44px;padding:11px 12px}}.profile-action-btn{appearance:none;border:none;background:transparent;color:var(--text-color, #374151);cursor:pointer;font-family:inherit}.profile-action-btn:hover{background:var(--hover-bg, #f3f4f6)}.profile-export-result{margin-top:10px;padding:8px 10px;font-size:12px}.settings-preview-error{color:var(--accent-danger, #dc2626)}.role-badge{padding:4px 10px;border-radius:6px;font-size:12px;font-weight:500;background:transparent;border:1px solid transparent}.role-badge.role-admin{background:transparent;color:var(--accent-danger);border-color:color-mix(in srgb,var(--accent-danger) 35%,transparent)}.role-badge.role-user{background:transparent;color:var(--text-secondary);border-color:color-mix(in srgb,var(--text-secondary) 35%,transparent)}.portfolio-link{padding:6px 10px;border-radius:6px;background:transparent;color:var(--accent-primary)!important;text-decoration:none;transition:color .2s,border-color .2s;border:1px solid color-mix(in srgb,var(--accent-primary) 35%,transparent)}.portfolio-link:hover{filter:brightness(.85);border-color:color-mix(in srgb,var(--accent-primary) 50%,transparent)}.portfolio-link.desktop{padding:6px 14px;border-radius:8px;font-size:13px;font-weight:500;margin-left:16px}@media(max-width:768px){.role-badge{padding:3px 6px;font-size:10px}}.setup-badge{display:inline-block;padding:3px 10px;border-radius:var(--card-border-radius);font-size:12px;font-weight:600;letter-spacing:.4px}.badge-gold{background:linear-gradient(135deg,var(--badge-gold-from) 0%,var(--badge-gold-to) 100%);color:var(--badge-gold-text)}.badge-green{background:linear-gradient(135deg,var(--badge-green-from) 0%,var(--badge-green-to) 100%);color:var(--badge-green-text)}.badge-blue{background:linear-gradient(135deg,var(--badge-blue-from) 0%,var(--badge-blue-to) 100%);color:var(--badge-blue-text)}.signal-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.sig-badge{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;border-radius:10px;font-size:11px;line-height:1.3;font-weight:600;background:var(--border-color);color:var(--text-secondary);letter-spacing:.2px;white-space:nowrap;vertical-align:middle}.sig-badge>em,.sig-badge-glyph{font-style:normal;flex-shrink:0;line-height:1;font-size:12px;display:inline-flex;align-items:center;justify-content:center}.sig-badge-glyph svg{display:block;width:14px;height:14px}.sig-support{background:linear-gradient(135deg,var(--sig-support-from) 0%,var(--sig-support-to) 100%);color:color-mix(in srgb,var(--accent-warning) 80%,#000)}.sig-breakout{background:color-mix(in srgb,var(--accent-success) 15%,transparent);color:color-mix(in srgb,var(--accent-success) 90%,#000);border:1px solid color-mix(in srgb,var(--accent-success) 30%,transparent)}.sig-macd{background:color-mix(in srgb,var(--accent-primary) 12%,transparent);color:color-mix(in srgb,var(--accent-primary) 90%,#000);border:1px solid color-mix(in srgb,var(--accent-primary) 25%,transparent)}.sig-bb{background:color-mix(in srgb,var(--accent-secondary) 12%,transparent);color:color-mix(in srgb,var(--accent-secondary) 80%,#000);border:1px solid color-mix(in srgb,var(--accent-secondary) 25%,transparent)}.sig-rr{background:color-mix(in srgb,var(--accent-teal) 12%,transparent);color:color-mix(in srgb,var(--accent-teal) 80%,#000);border:1px solid color-mix(in srgb,var(--accent-teal) 25%,transparent)}.sig-kst{background:color-mix(in srgb,var(--accent-indigo) 12%,transparent);color:color-mix(in srgb,var(--accent-indigo) 80%,#000);border:1px solid color-mix(in srgb,var(--accent-indigo) 25%,transparent)}.sig-risk{background:color-mix(in srgb,var(--accent-danger) 12%,transparent);color:color-mix(in srgb,var(--accent-danger) 80%,#000);border:1px solid color-mix(in srgb,var(--accent-danger) 25%,transparent)}.sig-badge-more{cursor:pointer;background:var(--badge-bg);color:var(--badge-text);border:1px dashed var(--border-color);user-select:none}.sig-badge-more:hover{background:var(--hover-bg);color:var(--text-color)}.signal-badges-extra{display:none;flex-wrap:wrap;gap:4px}.sig-badge.sig-key-preset{font-weight:700;box-shadow:inset 0 0 0 1.5px #0000002e,0 1px 4px #0000001f}body.bw-mode .sig-badge.sig-key-preset,body.wbw-mode .sig-badge.sig-key-preset{box-shadow:inset 0 0 0 1.5px #00000040}.skeleton{background:linear-gradient(90deg,var(--border-color) 25%,var(--hover-bg) 50%,var(--border-color) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:6px}.skeleton-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border-color)}.skeleton-row:last-child{border-bottom:none}.skeleton-circle{flex-shrink:0;width:36px;height:36px;border-radius:50%}.skeleton-text{height:14px}.skeleton-text.w-40{width:40%}.skeleton-text.w-60{width:60%}.skeleton-text.w-80{width:80%}.skeleton-text.w-100{width:100%}.skeleton-text-sm{height:10px;margin-top:6px}.skeleton-badge{width:48px;height:24px;border-radius:var(--card-border-radius);margin-left:auto;flex-shrink:0}.skeleton-brief-line{height:12px;margin-bottom:10px}.skeleton-brief-line:last-child{margin-bottom:0}body.bw-mode{--mono-settings-secondary-bg: var(--border-color);--mono-settings-secondary-hover-bg: var(--input-border);--mono-btn-settings-bg: var(--border-color);--mono-btn-settings-hover-bg: var(--input-border);--mono-btn-logout-bg: var(--input-border);--mono-btn-logout-hover-bg: var(--bw-medium);--mono-username-bg: var(--border-color);--mono-username-border: var(--input-border);--mono-role-admin-color: var(--bw-dim);--mono-role-admin-border: color-mix(in srgb, var(--bw-dim) 35%, transparent);--mono-role-user-color: var(--text-secondary);--mono-role-user-border: color-mix(in srgb, var(--text-secondary) 35%, transparent);--mono-api-budget-bg: var(--bg-color);--mono-badge-neutral-bg: var(--border-color);--mono-badge-neutral-color: var(--text-color);--mono-sig-support-bg: var(--input-border);--mono-sig-support-color: var(--bw-dim);--mono-sig-key-bg: var(--border-color);--mono-sig-key-color: var(--text-color);--mono-sig-key-border: var(--input-border);--mono-sig-risk-bg: var(--input-border);--mono-sig-risk-color: var(--text-color);--mono-sig-risk-border: var(--input-border);--mono-toast-bg: var(--card-bg);--mono-toast-color: var(--text-color);--mono-toast-shadow: 0 2px 8px rgba(0,0,0,.5);--mono-skeleton-from: var(--border-color);--mono-skeleton-mid: var(--input-border);--mono-mobile-apk-bg: var(--card-bg);--mono-mobile-apk-border: var(--input-border);--mono-mobile-apk-link-color: var(--bw-dim);--mono-mobile-apk-link-bg: var(--border-color);--mono-mobile-apk-link-hover-bg: var(--input-border);--mono-tabs-bg: var(--bg-color);--mono-tab-active-bg: var(--border-color);--mono-tab-active-color: var(--text-color);--mono-tab-hover-bg: var(--hover-bg);--mono-tab-hover-color: var(--text-color)}body.wbw-mode{--mono-settings-secondary-bg: var(--wbw-btn-secondary);--mono-settings-secondary-hover-bg: var(--border-color);--mono-btn-settings-bg: var(--text-color);--mono-btn-settings-hover-bg: var(--wbw-btn-dark);--mono-btn-logout-bg: var(--wbw-btn-medium);--mono-btn-logout-hover-bg: var(--wbw-btn-hover);--mono-username-bg: var(--bg-secondary);--mono-username-border: var(--border-color);--mono-role-admin-color: var(--text-color);--mono-role-admin-border: rgba(17,17,17,.35);--mono-role-user-color: var(--text-secondary);--mono-role-user-border: rgba(82,82,82,.35);--mono-api-budget-bg: var(--bg-secondary);--mono-badge-neutral-bg: var(--wbw-btn-secondary);--mono-badge-neutral-color: var(--text-color);--mono-sig-support-bg: var(--border-color);--mono-sig-support-color: var(--text-color);--mono-sig-key-bg: var(--badge-bg);--mono-sig-key-color: var(--text-color);--mono-sig-key-border: var(--border-color);--mono-sig-risk-bg: var(--wbw-sig-risk-bg);--mono-sig-risk-color: var(--wbw-sig-risk-text);--mono-sig-risk-border: var(--wbw-sig-risk-border);--mono-toast-bg: var(--text-color);--mono-toast-color: var(--wbw-white);--mono-toast-shadow: 0 2px 8px rgba(0,0,0,.2);--mono-skeleton-from: var(--wbw-btn-secondary);--mono-skeleton-mid: var(--border-color);--mono-mobile-apk-bg: var(--bg-secondary);--mono-mobile-apk-border: var(--border-color);--mono-mobile-apk-link-color: var(--text-color);--mono-mobile-apk-link-bg: var(--wbw-btn-secondary);--mono-mobile-apk-link-hover-bg: var(--border-color);--mono-tabs-bg: var(--bg-secondary);--mono-tab-active-bg: var(--text-color);--mono-tab-active-color: var(--wbw-white);--mono-tab-hover-bg: var(--wbw-btn-secondary);--mono-tab-hover-color: var(--text-color)}:is(body.bw-mode,body.wbw-mode) .modal-content,:is(body.bw-mode,body.wbw-mode) .settings-modal-content{border:1px solid var(--border-color)}:is(body.bw-mode,body.wbw-mode) .btn-login{background:var(--text-color)!important;color:var(--bg-color)!important;border:1px solid var(--text-color)!important}:is(body.bw-mode,body.wbw-mode) .btn-login:hover{background:color-mix(in srgb,var(--text-color) 88%,var(--bg-color))!important}:is(body.bw-mode,body.wbw-mode) .guest-banner-cta{background:var(--text-color)!important;color:var(--bg-color)!important;border:1px solid var(--text-color)!important}:is(body.bw-mode,body.wbw-mode) .guest-banner-cta:hover{background:color-mix(in srgb,var(--text-color) 88%,var(--bg-color))!important}:is(body.bw-mode,body.wbw-mode) .guest-action-cta-btn{background:var(--bg-color)!important;color:var(--text-color)!important;border-color:var(--border-color)!important}:is(body.bw-mode,body.wbw-mode) .guest-action-cta-btn-primary{background:var(--text-color)!important;color:var(--bg-color)!important;border-color:var(--text-color)!important}:is(body.bw-mode,body.wbw-mode) .guest-action-cta-btn:hover{background:var(--bg-secondary)!important}:is(body.bw-mode,body.wbw-mode) .guest-action-cta-btn-primary:hover{background:color-mix(in srgb,var(--text-color) 88%,var(--bg-color))!important}:is(body.bw-mode,body.wbw-mode) .user-name-badge{color:var(--text-color)}:is(body.bw-mode,body.wbw-mode) #header-user-info span{color:var(--text-color)!important}@media(max-width:768px){:is(body.bw-mode,body.wbw-mode) #header-user-info{border-top-color:var(--border-color)!important}}:is(body.bw-mode,body.wbw-mode) .settings-btn-secondary{background:var(--mono-settings-secondary-bg);color:var(--text-color)}:is(body.bw-mode,body.wbw-mode) .settings-btn-secondary:hover{background:var(--mono-settings-secondary-hover-bg)}:is(body.bw-mode,body.wbw-mode) .btn-settings{background:var(--mono-btn-settings-bg)}:is(body.bw-mode,body.wbw-mode) .btn-settings:hover{background:var(--mono-btn-settings-hover-bg)}:is(body.bw-mode,body.wbw-mode) .btn-logout{background:var(--mono-btn-logout-bg)}:is(body.bw-mode,body.wbw-mode) .btn-logout:hover{background:var(--mono-btn-logout-hover-bg)}:is(body.bw-mode,body.wbw-mode) .username-pill{background:var(--mono-username-bg);color:var(--text-color);border-color:var(--mono-username-border)}:is(body.bw-mode,body.wbw-mode) .role-badge.role-admin{color:var(--mono-role-admin-color);border-color:var(--mono-role-admin-border)}:is(body.bw-mode,body.wbw-mode) .role-badge.role-user{color:var(--mono-role-user-color);border-color:var(--mono-role-user-border)}body.bw-mode .user-settings-inline{background:var(--bg-color);border-color:var(--border-color)}:is(body.bw-mode,body.wbw-mode) #api-budgets-display{background:var(--mono-api-budget-bg)!important;border-color:var(--border-color);color:var(--text-color)}:is(body.bw-mode,body.wbw-mode) :is(.badge-gold,.badge-green,.badge-blue){background:var(--mono-badge-neutral-bg);color:var(--mono-badge-neutral-color)}body.bw-mode .sig-badge{background:var(--border-color);color:var(--text-secondary);border-color:var(--input-border)}:is(body.bw-mode,body.wbw-mode) .sig-support{background:var(--mono-sig-support-bg);color:var(--mono-sig-support-color)}:is(body.bw-mode,body.wbw-mode) :is(.sig-breakout,.sig-macd,.sig-bb,.sig-rr,.sig-kst){background:var(--mono-sig-key-bg);color:var(--mono-sig-key-color);border-color:var(--mono-sig-key-border)}:is(body.bw-mode,body.wbw-mode) .sig-risk{background:var(--mono-sig-risk-bg);color:var(--mono-sig-risk-color);border-color:var(--mono-sig-risk-border)}:is(body.bw-mode,body.wbw-mode) :is(.toast.success,.toast.error,.toast.info,.alert-toast--info,.alert-toast--success,.alert-toast--warning,.alert-toast--error){background:var(--mono-toast-bg);color:var(--mono-toast-color);box-shadow:var(--mono-toast-shadow)}:is(body.bw-mode,body.wbw-mode) .skeleton{background:linear-gradient(90deg,var(--mono-skeleton-from) 25%,var(--mono-skeleton-mid) 50%,var(--mono-skeleton-from) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}:is(body.bw-mode,body.wbw-mode) .mobile-apk-bar{background:var(--mono-mobile-apk-bg);border-color:var(--mono-mobile-apk-border)}:is(body.bw-mode,body.wbw-mode) .mobile-apk-bar a{color:var(--mono-mobile-apk-link-color);background:var(--mono-mobile-apk-link-bg)}:is(body.bw-mode,body.wbw-mode) .mobile-apk-bar a:hover{background:var(--mono-mobile-apk-link-hover-bg)}:is(body.bw-mode,body.wbw-mode) .tabs{background:var(--mono-tabs-bg);border-color:var(--border-color)}:is(body.bw-mode,body.wbw-mode) .tab-btn{color:var(--text-secondary);background:transparent}:is(body.bw-mode,body.wbw-mode) .tab-btn.active{background:var(--mono-tab-active-bg);color:var(--mono-tab-active-color)}:is(body.bw-mode,body.wbw-mode) .tab-btn:hover:not(.active){background:var(--mono-tab-hover-bg);color:var(--mono-tab-hover-color)}@media(orientation:landscape)and (max-height:500px){.modal-content{padding:16px!important;max-height:92vh!important}.modal-buttons{flex-direction:row!important}.settings-modal-content{padding:16px!important;max-height:92vh!important;border-radius:10px!important}html:is(.is-native-app,.has-shell-nav) .settings-modal-content{max-height:min(92vh,calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - var(--sn-h, 64px) - 24px))!important}.settings-modal-header{margin-bottom:12px!important}.settings-modal-header h2{font-size:1.1rem!important}.settings-form .form-group{margin-bottom:10px!important}#ai-analysis-result{max-height:60vh!important;overflow-y:auto!important}#settings-preview-result{max-height:120px!important}#user-info{position:static!important}}.opp-action-row{gap:10px}.portfolio-item-title-icons{gap:6px}[data-action=open-alert]{display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}[data-action=open-alert] .alert-btn-glyph svg{display:block}.ad-card{display:none;background:var(--card-bg, #fff);border:1px dashed var(--border-color, #e2e8f0);border-radius:12px;padding:16px;text-align:center;min-height:90px;margin:4px 0;font-size:.78rem;color:var(--secondary-text, #64748b)}.ad-sidebar[data-ad-slot=dashboard-sidebar]{display:none;position:fixed;right:16px;top:50%;transform:translateY(-50%);width:300px;max-width:min(300px,calc(100vw - 32px));min-height:250px;max-height:min(600px,calc(100vh - 48px));overflow:hidden;box-sizing:border-box;background:var(--card-bg, #fff);border:1px dashed var(--border-color, #e2e8f0);border-radius:14px;padding:16px;text-align:center;font-size:.78rem;color:var(--secondary-text, #64748b);z-index:10;box-shadow:0 2px 12px var(--shadow-color, rgba(0,0,0,.08))}.ad-sidebar-inner{width:100%;max-width:100%;overflow:hidden;box-sizing:border-box}.ad-sidebar[data-ad-slot=dashboard-sidebar] .adsbygoogle{max-width:100%!important;box-sizing:border-box}@media(max-width:1279px){.ad-sidebar[data-ad-slot=dashboard-sidebar]{display:none!important}}#ads-consent-banner{position:fixed;left:0;right:0;bottom:0;z-index:99998;padding:12px max(16px,env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));background:var(--card-bg, #fff);border-top:1px solid var(--border-color, #e2e8f0);box-shadow:0 -4px 24px #00000014}.dark-mode #ads-consent-banner{box-shadow:0 -4px 24px #00000059}.ads-consent-inner{max-width:720px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:12px;justify-content:space-between;max-height:min(70vh,calc(100vh - env(safe-area-inset-bottom,0px) - 24px));overflow-y:auto;-webkit-overflow-scrolling:touch}.ads-consent-text{flex:1 1 240px;margin:0;font-size:.82rem;line-height:1.45;color:var(--secondary-text, #64748b)}.ads-consent-text a{color:var(--accent-primary, #0ea5e9)}.ads-consent-actions{display:flex;gap:8px;flex-shrink:0}.ads-consent-btn{padding:8px 14px;border-radius:8px;font-size:.85rem;cursor:pointer;border:1px solid var(--border-color, #e2e8f0);background:var(--card-bg, #fff);color:var(--text-primary, #0f172a)}.ads-consent-accept,.ads-consent-save{background:var(--accent-primary, #0ea5e9);color:#fff;border-color:transparent}.ads-consent-toggles{flex:1 1 100%;display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 4px}.ads-consent-toggle{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border:1px solid var(--border-color, #e2e8f0);border-radius:8px;background:var(--input-bg, #f8fafc);flex:1 1 200px;cursor:pointer;font-size:.8rem;line-height:1.3;color:var(--text-primary, #0f172a);min-height:44px}.ads-consent-toggle input[type=checkbox]{flex-shrink:0;margin:2px 0 0;width:18px;height:18px;min-width:18px;min-height:18px;accent-color:var(--accent-primary, #0ea5e9);cursor:pointer}.ads-consent-toggle-label{flex:1;min-width:0}.ads-consent-toggle-label small{color:var(--secondary-text, #64748b);font-size:.72rem;display:block;margin-top:2px}.dark-mode .ads-consent-toggle{background:var(--input-bg, #0f172a)}body.admin-mode .ad-sidebar[data-ad-slot],body.admin-mode .ad-card[data-ad-slot],body.privileged-mode .ad-sidebar[data-ad-slot],body.privileged-mode .ad-card[data-ad-slot]{display:none!important;min-height:0!important;max-height:0!important;padding:0!important;margin:0!important;border:none!important;visibility:hidden!important;pointer-events:none!important;overflow:hidden!important}body.ads-consent-ok .ad-sidebar[data-ad-slot=dashboard-sidebar]{display:none}body.ads-consent-ok.ads-has-sidebar .ad-sidebar[data-ad-slot=dashboard-sidebar]{display:block}body.ads-consent-ok .ad-sidebar[data-ad-slot=dashboard-sidebar]:has(ins.adsbygoogle[data-ad-status=filled]){display:block}@media(max-width:1279px){body.ads-consent-ok .ad-sidebar[data-ad-slot=dashboard-sidebar]:has(ins.adsbygoogle[data-ad-status=filled]){display:none!important}body.ads-consent-ok.ads-has-sidebar .ad-sidebar[data-ad-slot=dashboard-sidebar]{display:none!important}}body.ads-consent-ok .ad-card:has(ins.adsbygoogle){display:flex;align-items:center;justify-content:center;min-height:100px}body.ads-consent-ok.ads-has-inline .ad-card[data-ad-slot=opportunities-mobile]{display:flex;align-items:center;justify-content:center;min-height:100px}html.is-native-app p.legal-footer{display:none!important}p.legal-footer{text-align:center;font-size:12px;margin:28px 0 max(12px,env(safe-area-inset-bottom,0px));padding:8px 12px calc(8px + env(safe-area-inset-bottom,0px));color:var(--secondary-text, #64748b)}@media(max-width:640px){p.legal-footer{margin-top:14px;margin-bottom:max(8px,env(safe-area-inset-bottom,0px));padding-top:4px;padding-bottom:calc(4px + env(safe-area-inset-bottom,0px))}}p.legal-footer a.legal-footer-link{color:inherit;text-decoration:underline;display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:4px 10px;box-sizing:border-box}p.legal-footer .legal-footer-sep{padding:0 4px;user-select:none}a.legal-page-back,a.legal-page-inline-link{display:inline-flex;align-items:center;min-height:44px;padding:4px 8px 4px 0;box-sizing:border-box}a.legal-page-inline-link{padding-left:4px}body.page-dashboard{padding-bottom:4px}body.page-dashboard #main-cards-container{margin-bottom:0!important}#card-config:not(.card-expanded){padding-top:14px;padding-bottom:14px}body.page-dashboard p.legal-footer{margin-top:8px;margin-bottom:max(4px,env(safe-area-inset-bottom,0px))}@media(min-width:641px){body.page-dashboard p.legal-footer{margin-top:12px}}.free-ribbon{display:flex;align-items:center;justify-content:center;gap:10px;margin:8px 0 12px;flex-wrap:wrap}.free-ribbon-pill{display:inline-flex;align-items:center;padding:6px 14px;border-radius:999px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:13px;font-weight:600;line-height:1.3;box-shadow:0 2px 6px #10b98140}.free-ribbon-link{font-size:13px;color:var(--accent, #3b82f6);text-decoration:underline dotted;text-underline-offset:3px}.free-ribbon-link:hover{color:var(--accent-strong, #2563eb);text-decoration:underline solid}body.dark-mode .free-ribbon-pill,body.bw-mode .free-ribbon-pill,body.wbw-mode .free-ribbon-pill{background:var(--card-bg, #1e293b);color:var(--text-color, #f1f5f9);border:1px solid var(--border-color, #334155);box-shadow:none}@media(max-width:480px){.free-ribbon{margin:4px 0 10px;gap:8px}.free-ribbon-pill{font-size:12px;padding:5px 12px}.free-ribbon-link{font-size:12px}body.guest-mode .free-ribbon{display:none}}.guest-banner{display:none;align-items:center;justify-content:center;gap:12px;margin:8px 0 14px;padding:10px 16px;border-radius:10px;background:var(--card-bg, #f1f5f9);border:1px solid var(--border-color, #cbd5e1);flex-wrap:wrap;text-align:center}body.guest-mode .guest-banner{display:flex}.guest-banner-text{font-size:13px;color:var(--text-color, #0f172a);line-height:1.4}.guest-banner-actions{display:inline-flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.guest-banner-cta{display:inline-flex;align-items:center;padding:8px 16px;min-height:40px;border-radius:8px;background:var(--accent, #3b82f6);color:#fff!important;font-size:13px;font-weight:600;text-decoration:none;border:1px solid transparent}.guest-banner-cta:hover{background:var(--accent-strong, #2563eb)}.guest-banner-cta-secondary{background:transparent;color:var(--text-color, #0f172a)!important;border-color:var(--border-color, #cbd5e1)}.guest-banner-cta-secondary:hover{background:color-mix(in srgb,var(--accent, #3b82f6) 10%,transparent)}@media(max-width:480px){.guest-banner{margin:4px 0 10px;padding:8px 12px;gap:8px}.guest-banner-text{font-size:12px}.guest-banner-cta{font-size:12px;padding:7px 12px;min-height:36px}body.guest-mode .mobile-apk-bar{margin-top:-2px}}body.guest-mode #card-model,body.guest-mode #card-telegram,body.guest-mode #card-favorites,body.guest-mode #card-config{display:none!important}body.guest-mode #btn-generate-brief,body:not(.admin-mode):not(.privileged-mode) #btn-generate-brief{display:none!important}body.guest-mode #dashboard-grid{grid-template-columns:repeat(2,minmax(280px,1fr));justify-content:center;max-width:920px;margin-left:auto;margin-right:auto}@media(max-width:720px){body.guest-mode #dashboard-grid{grid-template-columns:1fr;max-width:520px}}body.guest-mode .ad-card[data-ad-slot=opportunities-mobile],body:not(.admin-mode):not(.privileged-mode) .ad-card[data-ad-slot=opportunities-mobile]{padding:10px 12px;min-height:70px;max-height:140px;overflow:hidden;border-style:solid;border-color:color-mix(in srgb,var(--border-color, #e2e8f0) 60%,transparent);background:color-mix(in srgb,var(--card-bg, #fff) 92%,var(--bg-secondary, #f1f5f9))}body.guest-mode .ad-card[data-ad-slot=opportunities-mobile] ins.adsbygoogle,body:not(.admin-mode):not(.privileged-mode) .ad-card[data-ad-slot=opportunities-mobile] ins.adsbygoogle{max-height:120px;overflow:hidden}body.guest-mode #logout-header-btn,body.guest-mode .header .header-logout,body.guest-mode .header .btn-logout,body.guest-mode .header .portfolio-link,body.guest-mode #scan-btn,body.guest-mode #scan-btn-reduced,body.guest-mode #recalc-btn-reduced,body.guest-mode #recalc-scores-btn{display:none!important}body.guest-mode .alert-create-btn,body.guest-mode .watchlist-star,body.guest-mode #toggle-favorite-btn,body.guest-mode #alert-btn{opacity:.7;cursor:pointer;position:relative}.guest-action-cta-overlay{position:fixed;inset:0;z-index:100000;background:#02061799;display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:100dvh;padding:max(16px,calc(env(safe-area-inset-top,0px) + 8px)) max(16px,env(safe-area-inset-right,0px)) max(20px,calc(env(safe-area-inset-bottom,0px) + 12px)) max(16px,env(safe-area-inset-left,0px));animation:guest-cta-fade-in .18s ease-out}html:is(.is-native-app,.has-shell-nav) .guest-action-cta-overlay{z-index:100102;padding-bottom:calc(max(20px,env(safe-area-inset-bottom,0px) + 12px) + var(--sn-h, 64px))}.guest-action-cta-card{position:relative;background:var(--card-bg, #ffffff);color:var(--text-primary, #0f172a);border-radius:14px;padding:24px 20px 18px;width:min(420px,100%);box-shadow:0 16px 48px #0f172a47;border:1px solid var(--border-color, #e2e8f0)}.dark-mode .guest-action-cta-card{box-shadow:0 16px 48px #0009}.guest-action-cta-close{position:absolute;top:8px;right:10px;background:none;border:none;color:var(--text-secondary, #64748b);font-size:22px;line-height:1;cursor:pointer;padding:6px 10px;min-width:36px;min-height:36px}.guest-action-cta-title{margin:0 0 8px;font-size:1.05rem;font-weight:700;line-height:1.3}.guest-action-cta-desc{margin:0 0 18px;font-size:.9rem;color:var(--text-secondary, #475569);line-height:1.45}.guest-action-cta-actions{display:flex;gap:8px;flex-wrap:wrap}.guest-action-cta-btn{flex:1 1 140px;padding:10px 14px;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;border:1px solid var(--border-color, #e2e8f0);background:var(--card-bg, #ffffff);color:var(--text-primary, #0f172a);text-decoration:none;text-align:center;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.guest-action-cta-btn-primary{background:var(--accent-primary, #0ea5e9);color:#fff;border-color:transparent}@keyframes guest-cta-fade-in{0%{opacity:0}to{opacity:1}}@media(max-width:480px){.guest-action-cta-card{padding:20px 16px 14px}.guest-action-cta-title{font-size:1rem}.guest-action-cta-desc{font-size:.85rem;margin-bottom:14px}}.guest-conversion-toast{position:fixed;left:50%;transform:translate(-50%);bottom:max(env(safe-area-inset-bottom,0px),16px);z-index:99990;max-width:min(560px,calc(100vw - 32px));padding:12px 16px;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #cbd5e1);border-radius:12px;box-shadow:0 8px 24px #0f172a1f;display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:.85rem;line-height:1.4;color:var(--text-primary, #0f172a);animation:guest-conversion-slide-in .24s ease-out}.dark-mode .guest-conversion-toast{box-shadow:0 8px 24px #0006}.guest-conversion-text{flex:1 1 220px;margin:0}.guest-conversion-actions{display:flex;gap:8px;flex-shrink:0}.guest-conversion-btn{padding:8px 14px;border-radius:8px;font-size:.85rem;cursor:pointer;border:1px solid var(--border-color, #e2e8f0);background:var(--card-bg, #ffffff);color:var(--text-primary, #0f172a);text-decoration:none;min-height:40px;display:inline-flex;align-items:center;justify-content:center}.guest-conversion-btn-primary{background:var(--accent-primary, #0ea5e9);color:#fff;border-color:transparent;font-weight:600}@keyframes guest-conversion-slide-in{0%{opacity:0;transform:translate(-50%,16px)}to{opacity:1;transform:translate(-50%)}}html:is(.is-native-app,.has-shell-nav) .guest-conversion-toast{bottom:calc(max(env(safe-area-inset-bottom,0px),8px) + var(--sn-h, 64px) + 12px);z-index:100102}@media(max-width:768px){.guest-conversion-toast{font-size:.8rem;gap:10px;padding:12px 14px;flex-direction:column;align-items:stretch}.guest-conversion-text{flex:0 0 auto;width:100%}.guest-conversion-actions{flex-direction:column;width:100%;gap:8px}.guest-conversion-btn{width:100%;box-sizing:border-box;padding:10px 14px;min-height:40px}}.settings-legal-section[data-native-only="1"]{display:none}html.is-native-app .settings-legal-section[data-native-only="1"]{display:block}.settings-legal-links{display:flex;flex-direction:column;gap:8px;margin-top:6px}.settings-legal-link{display:inline-flex;align-items:center;gap:8px;padding:10px 12px;border:1px solid var(--border-color, #e2e8f0);border-radius:8px;background:var(--input-bg, var(--bg-color, #f8fafc));color:var(--text-color, #1e293b);font-size:13.5px;font-weight:500;text-decoration:none;min-height:44px;-webkit-tap-highlight-color:transparent;transition:border-color .1s ease,background .1s ease}.settings-legal-link:before{content:"\2192";color:var(--secondary-text, #64748b);font-size:14px;margin-right:2px}.settings-legal-link:hover,.settings-legal-link:focus-visible{border-color:var(--accent-primary, #3b82f6);background:color-mix(in srgb,var(--accent-primary, #3b82f6) 8%,var(--card-bg, #fff));outline:none}.tabs-shell-link{margin-left:6px;font-size:12px;white-space:nowrap}@media(max-width:480px){.tabs-shell-link{display:none}}#opportunities-list{--opp-row-min-h: 76px;min-height:calc(var(--opp-skeleton-rows, 5) * var(--opp-row-min-h));contain:layout style}#opportunities-card:not(.card-collapsed){min-height:calc(var(--opp-skeleton-rows, 5) * var(--opp-row-min-h, 76px) + 7rem)}#opportunities-list.opp-list--settling{overflow:hidden}.skeleton-row{min-height:var(--opp-row-min-h);box-sizing:border-box;align-items:center}.opp-item{min-height:var(--opp-row-min-h);box-sizing:border-box}#opportunities-list .empty-state,#opportunities-list .load-error-text{min-height:calc(var(--opp-skeleton-rows, 5) * var(--opp-row-min-h));display:flex;flex-direction:column;justify-content:center}.perf-chart-wrap{position:relative;min-height:280px;margin-bottom:20px;contain:layout style}.perf-chart-wrap .chart-loading-skeleton{position:absolute;inset:0;margin:0;height:auto;pointer-events:none}.perf-chart-wrap #performance-chart,.perf-chart-wrap .performance-chart-canvas{display:block;width:100%;height:280px;max-height:400px}.perf-chart-wrap.is-chart-ready .chart-loading-skeleton{opacity:0;visibility:hidden;transition:opacity .2s ease}.perf-chart-wrap .portfolio-chart-error{min-height:280px;display:flex;align-items:center;justify-content:center;margin:0}#performance-summary{min-height:5.5rem}.perf-tile-value{min-height:1.35em}html.is-native-app body,html.is-native-app.has-shell-nav body{padding-bottom:calc(max(16px,env(safe-area-inset-bottom,16px)) + var(--sn-h, 64px))}#header-user-info:empty{display:inline-block;min-width:1px;min-height:32px}#brief-display{min-height:140px}.mobile-apk-bar:not(.mobile-apk-bar--show){display:none!important}#portfolio-list,#investments-list-wrap{--pf-row-min-h: 76px;min-height:calc(var(--pf-skeleton-rows, 4) * var(--pf-row-min-h))}.portfolio-ai-card.is-visible,html.portfolio-ai-precached .portfolio-ai-card{min-height:280px}.portfolio-ai-card.is-collapsed{min-height:0}html.dark-mode,body.dark-mode{--bg-color: #0d1117;--bg-secondary: #161b22;--bg-gradient: var(--bg-color);--text-color: #e6edf3;--text-primary: var(--text-color);--text-secondary: #8b949e;--text-on-card: #c9d1d9;--card-bg: #21262d;--border-color: #30363d;--chart-grid-color: rgba(71,85,105,.3);--chart-bg: #0d1117;--chart-text: #c9d1d9;--chart-grid: #21262d;--chart-border: #30363d;--chart-crosshair: #6e7681;--chart-crosshair-label: #30363d;--chart-candle-up: #26a69a;--chart-candle-down: #ef5350;--chart-rsi-line: #58a6ff;--chart-rsi-overbought: #f85149;--chart-rsi-oversold: #3fb950;--chart-macd-line: #58a6ff;--chart-macd-signal: #d29922;--chart-macd-hist: #a371f7;--chart-bb-close: #c9d1d9;--chart-bb-upper: #f85149;--chart-bb-lower: #3fb950;--chart-bb-mid: #8b949e;--chart-sma-fast: #d97706;--chart-sma-slow: #0891b2;--chart-volume: #8b949e;--chart-volume-up: rgba(38, 166, 154, .5);--chart-volume-down: rgba(239, 83, 80, .5);--chart-bar-bg: var(--accent-primary, #58a6ff);--chart-bar-border: var(--accent-primary, #58a6ff);--shadow-color: rgba(0, 0, 0, .4);--input-bg: #0d1117;--input-border: #30363d;--accent-primary: #58a6ff;--accent-secondary: #60a5fa;--accent-success: #3fb950;--accent-danger: #f85149;--accent-warning: #d29922;--accent-teal: #39c5cf;--accent-indigo: #7986ff;--brief-bg: #161b22;--opp-score-bg: rgba(88, 166, 255, .15);--opp-score-text: #58a6ff;--hover-bg: #1c2128;--secondary-text: #8b949e;--header-bg: #21262d;--card-bg-solid: #21262d;--success-bg: rgba(63, 185, 80, .15);--success-text: #3fb950;--badge-bg: rgba(88, 166, 255, .1);--badge-text: #8b949e;--msg-error-bg: rgba(248, 81, 73, .15);--msg-error-text: #f85149;--msg-success-bg: rgba(63, 185, 80, .15);--msg-success-text: #3fb950;--msg-info-bg: rgba(88, 166, 255, .15);--msg-info-text: #58a6ff;--warning-bg: rgba(210, 153, 34, .15);--warning-text: #d29922;--msg-warning-bg: rgba(210, 153, 34, .15);--msg-warning-text: #d29922;--guide-heading: #58a6ff;--guide-section: #60a5fa;--guide-table-row: #0d1117;--guide-penalty: #f85149;--overlay-bg: rgba(0, 0, 0, .7);--card-border-radius: 12px;--dm-white: #ffffff;--dm-chart-bg: #171717;--dm-link-hover: #79c0ff;--dm-star-gold: #f59e0b;--dm-chart-gold: #f2cc60;--dm-sig-support: #fcd34d;--dm-sig-breakout: #6ee7b7;--dm-sig-macd: #93c5fd;--dm-sig-bb: #93c5fd;--dm-sig-rr: #5eead4;--dm-sig-kst: #a5b4fc;--dm-sig-risk: #fca5a5;--dm-badge-gold-text: #3a2000;--dm-badge-green-text: #052a15;--dm-badge-blue-text: #001a33;--dm-card-purple: #60a5fa;--dm-scan-gradient-end: #f97316;--score-mode-m-bg: rgba(59, 130, 246, .18);--score-mode-m-text: #60a5fa;--score-mode-m-border: rgba(59, 130, 246, .3);--score-mode-m-active: rgba(59, 130, 246, .28);--score-mode-p-bg: rgba(168, 85, 247, .18);--score-mode-p-text: #c084fc;--score-mode-p-border: rgba(168, 85, 247, .3);--score-mode-p-active: rgba(168, 85, 247, .28);--shadow-light: rgba(0, 0, 0, .3);--shadow-heavy: rgba(0, 0, 0, .5);--chart-modal-bg: rgba(0, 0, 0, .95);--focus-ring: rgba(88, 166, 255, .15);--focus-ring-sm: rgba(88, 166, 255, .2);--card-hover-border: rgba(88, 166, 255, .3);--card-hover-glow: rgba(88, 166, 255, .2);--opp-item-bg: rgba(255, 255, 255, .02);--opp-item-hover-bg: rgba(88, 166, 255, .05);--opp-item-hover-border: rgba(88, 166, 255, .2);--btn-hover-shadow-primary: rgba(59, 130, 246, .4);--btn-hover-shadow-success: rgba(16, 185, 129, .4);--stat-positive-bg: rgba(16, 185, 129, .15);--stat-negative-bg: rgba(239, 68, 68, .15);--tooltip-bg: #334155;--tooltip-text: #e2e8f0;--badge-border: rgba(88, 166, 255, .2);--badge-success-border: rgba(63, 185, 80, .35);--badge-warning-border: rgba(210, 153, 34, .35)}body.dark-mode .opp-score[data-score-range=low]{background:var(--badge-bg);color:var(--badge-text)}body.dark-mode .opp-score[data-score-range=high]{background:var(--success-bg);color:var(--accent-success)}body.dark-mode .opp-score[data-score-range=excellent]{background:var(--warning-bg);color:var(--accent-warning);font-weight:700}body.dark-mode .score-mode-m{background:var(--score-mode-m-bg);color:var(--score-mode-m-text);border-color:var(--score-mode-m-border)}body.dark-mode .score-mode-p{background:var(--score-mode-p-bg);color:var(--score-mode-p-text);border-color:var(--score-mode-p-border)}body.dark-mode .score-mode-badge.score-mode-active.score-mode-m{background:var(--score-mode-m-active)}body.dark-mode .score-mode-badge.score-mode-active.score-mode-p{background:var(--score-mode-p-active)}body.dark-mode .score-mode-active-badge{border-color:var(--accent-primary)}body.dark-mode .score-mode-active-badge .score-mode-label{color:var(--text-color)}body.dark-mode .preset-mode-m{background:var(--score-mode-m-bg);color:var(--score-mode-m-text)}body.dark-mode .preset-mode-p{background:var(--score-mode-p-bg);color:var(--score-mode-p-text)}html.dark-mode{min-height:100%;background:linear-gradient(180deg,var(--bg-color) 0%,var(--bg-secondary) 100%)}html.dark-mode body,body.dark-mode{background:transparent!important;min-height:auto;color:var(--text-color)!important}body.dark-mode .card,body.dark-mode .header,body.dark-mode .section,body.dark-mode .panel{background:var(--card-bg)!important;border-color:var(--border-color)!important;color:var(--text-color)!important}body.dark-mode .header{box-shadow:0 4px 16px #0000004d}body.dark-mode .grid,body.dark-mode #dashboard-grid,body.dark-mode .container>div:not(.card):not(.header):not(.opportunities):not(.config-section){background:transparent!important}body.dark-mode input,body.dark-mode select,body.dark-mode textarea{background:var(--input-bg)!important;border-color:var(--input-border)!important;color:var(--text-color)!important}body.dark-mode input::placeholder,body.dark-mode textarea::placeholder{color:var(--text-secondary)!important}body.dark-mode input:focus,body.dark-mode select:focus,body.dark-mode textarea:focus{border-color:var(--accent-primary)!important;box-shadow:0 0 0 3px var(--focus-ring)!important}body.dark-mode label{color:var(--text-color)!important}body.dark-mode p,body.dark-mode span:not(.emoji){color:var(--text-color)}body.dark-mode small,body.dark-mode .hint,body.dark-mode .secondary-text{color:var(--text-secondary)!important}body.dark-mode h1,body.dark-mode h2,body.dark-mode h3,body.dark-mode h4,body.dark-mode h5,body.dark-mode h6{color:var(--text-color)!important}body.dark-mode table{border-color:var(--border-color)!important}body.dark-mode th{background:var(--bg-secondary)!important;color:var(--text-color)!important;border-color:var(--border-color)!important}body.dark-mode td{background:var(--card-bg)!important;color:var(--text-color)!important;border-color:var(--border-color)!important}body.dark-mode tr:hover td{background:var(--bg-secondary)!important}body.dark-mode .btn-secondary,html.dark-mode .btn-secondary,body.dark-mode button.secondary{background:var(--bg-secondary)!important;color:var(--text-color)!important;border-color:var(--border-color)!important}body.dark-mode .btn-secondary:hover,html.dark-mode .btn-secondary:hover,body.dark-mode button.secondary:hover{background:var(--border-color)!important}body.dark-mode .btn{box-shadow:0 2px 8px var(--shadow-color)}body.dark-mode .btn:hover{box-shadow:0 4px 12px var(--btn-hover-shadow-primary)}body.dark-mode .btn.success:hover{box-shadow:0 4px 12px var(--btn-hover-shadow-success)}body.dark-mode a{color:var(--accent-primary)}body.dark-mode a.btn-inline.btn-login,body.dark-mode a.header-login,body.dark-mode #header-login-btn{color:var(--dm-white)!important;text-decoration:none}body.dark-mode a.btn-inline.btn-login:hover,body.dark-mode a.header-login:hover,body.dark-mode #header-login-btn:hover{color:var(--dm-white)!important}body.dark-mode a.guest-action-cta-btn-primary,body.dark-mode a.guest-conversion-btn-primary{color:var(--dm-white)!important;text-decoration:none}body.dark-mode a.guest-action-cta-btn-primary:hover,body.dark-mode a.guest-conversion-btn-primary:hover{color:var(--dm-white)!important}body.dark-mode.guest-mode button#indicators-guide-btn{color:var(--dm-white)!important;background:color-mix(in srgb,var(--accent-secondary) 76%,#0d1117)!important;border-color:color-mix(in srgb,var(--accent-secondary) 52%,#0d1117)!important}body.dark-mode.guest-mode button#indicators-guide-btn:hover{color:var(--dm-white)!important;background:color-mix(in srgb,var(--accent-primary) 70%,#0d1117)!important;border-color:color-mix(in srgb,var(--accent-primary) 48%,#0d1117)!important}body.dark-mode .modal,body.dark-mode .modal-content,body.dark-mode .dialog{background:var(--card-bg)!important;border-color:var(--border-color)!important;color:var(--text-color)!important}body.dark-mode .modal-button-secondary{background:#ffffff0d;color:var(--text-color)}body.dark-mode .modal-button-secondary:hover{background:#ffffff1a}body.dark-mode .alert,body.dark-mode .info-box,body.dark-mode .message{background:var(--bg-secondary)!important;border-color:var(--border-color)!important;color:var(--text-color)!important}body.dark-mode .stat-positive{background:var(--stat-positive-bg)!important;color:var(--accent-success)!important}body.dark-mode .stat-negative{background:var(--stat-negative-bg)!important;color:var(--accent-danger)!important}body.dark-mode div[style*="background: white"],body.dark-mode div[style*="background:white"],body.dark-mode div[style*="background: #fff"],body.dark-mode div[style*="background:#fff"],body.dark-mode div[style*="background: var(--dm-white)"],body.dark-mode div[style*="background:var(--dm-white)"]{background:var(--card-bg)!important;color:var(--text-color)!important}body.dark-mode div[style*="background: #f8fafc"],body.dark-mode div[style*="background:#f8fafc"],body.dark-mode div[style*="background: #f5f5f5"],body.dark-mode div[style*="background:#f5f5f5"],body.dark-mode div[style*="background: #f8f9fa"],body.dark-mode div[style*="background:#f8f9fa"]{background:var(--bg-secondary)!important}body.dark-mode [style*="color: #333"],body.dark-mode [style*="color:#333"],body.dark-mode [style*="color: #1e293b"],body.dark-mode [style*="color:#1e293b"]{color:var(--text-color)!important}body.dark-mode [style*="color: #64748b"],body.dark-mode [style*="color:#64748b"],body.dark-mode [style*="color: #666"],body.dark-mode [style*="color:#666"],body.dark-mode [style*="color: #475569"],body.dark-mode [style*="color:#475569"],body.dark-mode [style*="color: #6b7280"],body.dark-mode [style*="color:#6b7280"],body.dark-mode [style*="color: #999"],body.dark-mode [style*="color:#999"],body.dark-mode [style*="color: #94a3b8"],body.dark-mode [style*="color:#94a3b8"]{color:var(--text-secondary)!important}body.dark-mode [style*="color: #2c3e50"],body.dark-mode [style*="color:#2c3e50"],body.dark-mode [style*="color: #0f172a"],body.dark-mode [style*="color:#0f172a"],body.dark-mode [style*="color: #334155"],body.dark-mode [style*="color:#334155"],body.dark-mode [style*="color: #856404"],body.dark-mode [style*="color:#856404"],body.dark-mode [style*="color: #1565c0"],body.dark-mode [style*="color:#1565c0"]{color:var(--text-color)!important}body.dark-mode div[style*="background: #e3f2fd"],body.dark-mode div[style*="background:#e3f2fd"],body.dark-mode div[style*="background: #fff3cd"],body.dark-mode div[style*="background:#fff3cd"],body.dark-mode div[style*="background: #e8f5e8"],body.dark-mode div[style*="background:#e8f5e8"],body.dark-mode div[style*="background: #fff8e1"],body.dark-mode div[style*="background:#fff8e1"],body.dark-mode div[style*="background: #e5e7eb"],body.dark-mode div[style*="background:#e5e7eb"],body.dark-mode div[style*="background: #f1f5f9"],body.dark-mode div[style*="background:#f1f5f9"],body.dark-mode div[style*="background: #e2e8f0"],body.dark-mode div[style*="background:#e2e8f0"],body.dark-mode div[style*="background: #dcfce7"],body.dark-mode div[style*="background:#dcfce7"],body.dark-mode div[style*="background: #fee2e2"],body.dark-mode div[style*="background:#fee2e2"],body.dark-mode div[style*="background: #dbeafe"],body.dark-mode div[style*="background:#dbeafe"]{background:var(--bg-secondary)!important;color:var(--text-color)!important}body.dark-mode div:has(>#performance-chart){background:var(--dm-chart-bg)!important;border-radius:8px}body.dark-mode .chart-modal{background-color:var(--chart-modal-bg)!important}body.dark-mode .modal-content{background:var(--card-bg)!important;color:var(--text-color)!important}body.dark-mode .modal-header{background:var(--bg-secondary)!important;border-bottom-color:var(--border-color)!important;color:var(--text-color)!important}body.dark-mode .close-modal{color:var(--text-color)!important}body.dark-mode .close-modal:hover{color:var(--accent-danger)!important}body.dark-mode .btn,html.dark-mode .btn{background:var(--card-bg)!important;border-color:var(--border-color)!important;color:var(--text-color)!important}body.dark-mode .btn:hover,html.dark-mode .btn:hover,body.dark-mode .btn.primary{background:var(--accent-primary)!important;color:var(--dm-white)!important}body.dark-mode .btn.secondary{background:var(--border-color)!important}body.dark-mode .btn.success{background:var(--accent-success)!important;color:var(--dm-white)!important}body.dark-mode select{background:var(--card-bg)!important;border-color:var(--border-color)!important;color:var(--text-color)!important;color-scheme:dark}body.dark-mode select option{background:var(--card-bg);color:var(--text-color)}body.dark-mode .brief-history-input,body.dark-mode .opp-scan-input{color-scheme:dark}body.dark-mode .preset-description-badge{color:var(--text-secondary);opacity:.9}body.dark-mode .chart-panel{background:var(--card-bg)!important;border-color:var(--border-color)!important}body.dark-mode .chart-header{background:var(--bg-secondary)!important;border-bottom-color:var(--border-color)!important}body.dark-mode .chart-title{color:var(--text-color)!important}body.dark-mode #score-panel{background:var(--card-bg)!important;border-color:var(--border-color)!important}body.dark-mode .score-section{background:var(--bg-secondary)!important;border-left-color:var(--accent-primary)!important}body.dark-mode .score-section:hover{background:var(--hover-bg)!important}body.dark-mode header{background:var(--card-bg)!important;border-color:var(--border-color)!important}body.dark-mode #favorite-icon,body.dark-mode button.watchlist-star,body.dark-mode .watchlist-star,body.dark-mode button[class*=watchlist-star],body.dark-mode button.watchlist-star[data-ticker],body.dark-mode button[class*=watchlist-star][data-ticker],body.dark-mode button.watchlist-star[style],body.dark-mode button[class*=watchlist-star][style],body.dark-mode .opp-item button.watchlist-star,body.dark-mode .opp-item .watchlist-star,body.dark-mode .card button.watchlist-star,body.dark-mode .card .watchlist-star{color:var(--text-color)!important;filter:none!important;-webkit-text-stroke:0!important}body.dark-mode #favorite-icon.filled,body.dark-mode button.watchlist-star.filled,body.dark-mode .watchlist-star.filled,body.dark-mode button[class*=watchlist-star].filled,body.dark-mode button.watchlist-star[data-ticker].filled,body.dark-mode button[class*=watchlist-star][data-ticker].filled,body.dark-mode button.watchlist-star[style*=color].filled,body.dark-mode button[class*=watchlist-star][style*=color].filled,body.dark-mode button.watchlist-star[style].filled,body.dark-mode button[class*=watchlist-star][style].filled,body.dark-mode .opp-item button.watchlist-star.filled,body.dark-mode .opp-item .watchlist-star.filled,body.dark-mode .card button.watchlist-star.filled,body.dark-mode .card .watchlist-star.filled{color:var(--dm-star-gold)!important;filter:none!important}body.dark-mode #toggle-favorite-btn:hover #favorite-icon,body.dark-mode button.watchlist-star:hover,body.dark-mode .watchlist-star:hover,body.dark-mode button[class*=watchlist-star]:hover,body.dark-mode button.watchlist-star[data-ticker]:hover,body.dark-mode button[class*=watchlist-star][data-ticker]:hover{color:var(--accent-primary)!important}body.dark-mode #portfolio-icon,body.dark-mode button.portfolio-btn,body.dark-mode .portfolio-btn,body.dark-mode button[class*=portfolio-btn],body.dark-mode button.portfolio-btn[data-ticker],body.dark-mode button[class*=portfolio-btn][data-ticker]{filter:none!important;-webkit-text-stroke:0!important}body.dark-mode #portfolio-icon:not(.filled),body.dark-mode button.portfolio-btn:not(.filled),body.dark-mode .portfolio-btn:not(.filled),body.dark-mode button[class*=portfolio-btn]:not(.filled),body.dark-mode button.portfolio-btn[data-ticker]:not(.filled),body.dark-mode button[class*=portfolio-btn][data-ticker]:not(.filled){color:#fff!important;filter:grayscale(100%) brightness(2) contrast(1)!important;-webkit-text-stroke:1px var(--text-color)!important}body.dark-mode #portfolio-icon.filled,body.dark-mode button.portfolio-btn.filled,body.dark-mode .portfolio-btn.filled,body.dark-mode button[class*=portfolio-btn].filled,body.dark-mode button.portfolio-btn[data-ticker].filled,body.dark-mode button[class*=portfolio-btn][data-ticker].filled,body.dark-mode button.portfolio-btn[style*=color].filled,body.dark-mode button[class*=portfolio-btn][style*=color].filled{color:var(--accent-primary)!important;filter:grayscale(0%) brightness(1.2)!important;-webkit-text-stroke:0!important}body.dark-mode #toggle-portfolio-btn:hover #portfolio-icon,body.dark-mode button.portfolio-btn:hover,body.dark-mode .portfolio-btn:hover,body.dark-mode button[class*=portfolio-btn]:hover,body.dark-mode button.portfolio-btn[data-ticker]:hover,body.dark-mode button[class*=portfolio-btn][data-ticker]:hover{color:var(--dm-link-hover)!important}body.dark-mode #alert-btn,body.dark-mode #alert-btn span,body.dark-mode .bell-icon,body.dark-mode [class*=bell],body.dark-mode [title*=Alerte],body.dark-mode [title*=Alerte] span,body.dark-mode [title*=alerte],body.dark-mode [title*=alerte] span,body.dark-mode button[data-action=open-alert],body.dark-mode button[data-action=open-alert] span,body.dark-mode .alert-btn{filter:none!important;-webkit-text-stroke:0!important;opacity:1!important}body.dark-mode #alert-btn:not(.has-alert),body.dark-mode #alert-btn:not(.has-alert) span,body.dark-mode .bell-icon:not(.active),body.dark-mode button[data-action=open-alert]:not(.has-alert),body.dark-mode button[data-action=open-alert]:not(.has-alert) span,body.dark-mode .alert-btn:not(.has-alert){filter:grayscale(100%) brightness(1.2) contrast(1.3)!important;-webkit-text-stroke:1.5px var(--text-secondary)!important;color:var(--text-secondary)!important}body.dark-mode #alert-btn.has-alert,body.dark-mode #alert-btn.has-alert span,body.dark-mode .bell-icon.active,body.dark-mode .has-alert,body.dark-mode .has-alert span,body.dark-mode .btn.has-alert,body.dark-mode .btn.has-alert span,body.dark-mode button[data-action=open-alert].has-alert,body.dark-mode button[data-action=open-alert].has-alert span,body.dark-mode .alert-btn.has-alert{color:var(--accent-success)!important;filter:brightness(1.2)!important;-webkit-text-stroke:0!important}body.dark-mode [data-action=open-alert]:not(.has-alert) .alert-btn-glyph svg{color:var(--text-secondary)}body.dark-mode [data-action=open-alert].has-alert .alert-btn-glyph svg{color:var(--accent-success)}body.dark-mode .expand-btn{color:var(--text-secondary)!important}body.dark-mode .expand-btn:hover{color:var(--accent-primary)!important;background:transparent!important}body.dark-mode .ticker-isin{background:transparent!important;color:var(--accent-primary)!important}body.dark-mode #status{background:var(--card-bg)!important;border-color:var(--border-color)!important;color:var(--text-color)!important}body.dark-mode #recette-daily-job-hour,body.dark-mode #recette-daily-job-minute,body.dark-mode #card-config input,body.dark-mode #card-config select,body.dark-mode .config-section input,body.dark-mode .config-section select{background:var(--input-bg)!important;border-color:var(--input-border)!important;color:var(--text-color)!important}body.dark-mode #scheduler-status-box{background:var(--card-bg)!important;border-color:var(--border-color)!important}body.dark-mode #scheduler-status-box span{color:var(--text-color)!important}body.dark-mode #scheduler-toggle-btn{background:var(--bg-secondary)!important;border-color:var(--border-color)!important;color:var(--text-color)!important}body.dark-mode #scheduler-toggle-btn:hover{background:var(--border-color)!important;border-color:var(--border-color)!important;color:var(--text-color)!important}body.dark-mode .portfolio-item,html.dark-mode .portfolio-item,body.dark-mode div.portfolio-item,html.dark-mode div.portfolio-item,body.dark-mode [class*=portfolio-item],html.dark-mode [class*=portfolio-item],body.dark-mode div[class*=portfolio-item]{background:var(--bg-secondary)!important;background-color:var(--bg-secondary)!important;border:none!important;border-width:0!important;border-style:none!important;border-color:transparent!important}body.dark-mode .portfolio-item:hover,html.dark-mode .portfolio-item:hover,body.dark-mode div.portfolio-item:hover,html.dark-mode div.portfolio-item:hover,body.dark-mode [class*=portfolio-item]:hover,html.dark-mode [class*=portfolio-item]:hover,body.dark-mode div[class*=portfolio-item]:hover{background:var(--hover-bg)!important;background-color:var(--hover-bg)!important;border:none!important;border-width:0!important;border-style:none!important;border-color:transparent!important}body.dark-mode .portfolio-item-info h3 a,body.dark-mode .portfolio-item-info h3 a[href*="ticker.html"]{background:transparent!important;background-color:transparent!important;color:var(--accent-primary)!important}body.dark-mode .portfolio-item-info h3 a:hover{background:transparent!important;color:var(--dm-link-hover)!important}body.dark-mode .portfolio-item-actions .btn,html.dark-mode .portfolio-item-actions .btn,body.dark-mode .portfolio-item-actions a.btn,html.dark-mode .portfolio-item-actions a.btn,body.dark-mode .portfolio-item-actions .btn-success,html.dark-mode .portfolio-item-actions .btn-success,body.dark-mode .portfolio-item-actions .btn-secondary,html.dark-mode .portfolio-item-actions .btn-secondary,body.dark-mode .portfolio-item-actions .btn-danger,html.dark-mode .portfolio-item-actions .btn-danger,body.dark-mode .portfolio-item-actions button.btn{background:transparent!important;background-color:transparent!important;border:1px solid var(--border-color)!important;color:var(--text-color)!important}body.dark-mode .portfolio-item-actions .btn-success,html.dark-mode .portfolio-item-actions .btn-success,body.dark-mode .portfolio-item-actions a.btn-success{border-color:var(--accent-success)!important;color:var(--accent-success)!important}body.dark-mode .portfolio-item-actions .btn:hover,html.dark-mode .portfolio-item-actions .btn:hover,body.dark-mode .portfolio-item-actions a.btn:hover{background:var(--card-bg)!important;border-color:var(--text-secondary)!important;color:var(--text-color)!important}body.dark-mode .portfolio-item-actions .btn-success:hover,html.dark-mode .portfolio-item-actions .btn-success:hover,body.dark-mode .portfolio-item-actions a.btn-success:hover{border-color:var(--accent-success)!important;color:var(--accent-success)!important;background:#3fb9501a!important}body.dark-mode .portfolio-item-actions button[data-action=open-alert]{background:transparent!important;border:none!important;color:var(--text-secondary)!important}body.dark-mode .portfolio-item-actions button[data-action=open-alert]:hover{background:transparent!important;color:var(--text-color)!important}body.dark-mode .portfolio-item-info h3{color:var(--text-color)!important}body.dark-mode .portfolio-item-info h3 a{color:var(--accent-primary)!important}body.dark-mode .portfolio-item-info p{color:var(--text-secondary)!important}body.dark-mode #performance-summary>div{background:var(--bg-secondary)!important;border:1px solid var(--border-color)!important}body.dark-mode .portfolio-stat,html.dark-mode .portfolio-stat{background:var(--bg-secondary)!important;border-color:var(--border-color)!important}body.dark-mode .portfolio-stat-label,html.dark-mode .portfolio-stat-label{color:var(--text-secondary)!important}body.dark-mode .portfolio-stat-value,html.dark-mode .portfolio-stat-value{color:var(--text-primary)!important}body.dark-mode div[style*="background: #f8fafc"],body.dark-mode div[style*="background:#f8fafc"],body.dark-mode div[style*="background: #f8fafc;"],body.dark-mode div[style*="background:#f8fafc;"],body.dark-mode [style*="background: #f8fafc"],body.dark-mode [style*="background:#f8fafc"]{background:var(--bg-secondary)!important;background-color:var(--bg-secondary)!important}body.dark-mode [style*="color: #1e293b"],body.dark-mode [style*="color:#1e293b"],body.dark-mode [style*="color: #1e293b;"],body.dark-mode [style*="color:#1e293b;"]{color:var(--text-color)!important}body.dark-mode [style*="color: #64748b"],body.dark-mode [style*="color:#64748b"],body.dark-mode [style*="color: #64748b;"],body.dark-mode [style*="color:#64748b;"]{color:var(--text-secondary)!important}body.dark-mode #performance-summary>div>div:first-child,body.dark-mode #performance-summary>div[style*=background]>div:first-child{color:var(--text-secondary)!important}body.dark-mode #performance-summary>div>div:last-child,body.dark-mode #performance-summary>div[style*=background]>div:last-child{color:var(--text-color)!important}body.dark-mode .card{background:var(--card-bg)!important;border-left:1px solid var(--border-color)!important;border-right:1px solid var(--border-color)!important;border-bottom:1px solid var(--border-color)!important;border-top:3px solid;box-shadow:0 4px 16px var(--shadow-color),0 0 0 1px #ffffff08,inset 0 1px #ffffff0d}body.dark-mode .card:has(.portfolio-list){background:var(--bg-secondary)!important}body.dark-mode .card.blue{border-top:3px solid var(--accent-primary)!important}body.dark-mode .card.green{border-top:3px solid var(--accent-success)!important}body.dark-mode .card.purple{border-top:3px solid var(--dm-card-purple)!important}body.dark-mode .card.orange{border-top:3px solid var(--accent-warning)!important}body.dark-mode .card.red{border-top:3px solid var(--accent-danger)!important}body.dark-mode .card.teal{border-top:3px solid var(--accent-teal)!important}body.dark-mode .card.indigo{border-top:3px solid var(--accent-indigo)!important}body.dark-mode .card:hover{border-color:var(--card-hover-border)!important;box-shadow:0 8px 24px var(--shadow-heavy),0 0 0 1px var(--card-hover-glow)!important}body.dark-mode .card h2{color:var(--text-color)!important}body.dark-mode .header{background:var(--card-bg)!important;border-color:var(--border-color)!important}body.dark-mode .benchmark-select{background:var(--card-bg)!important;border-color:var(--border-color)!important;color:var(--text-color)!important}body.dark-mode #performance-summary>div[style*="background: #f8fafc"],body.dark-mode #performance-summary>div[style*="background:#f8fafc"]{background:var(--bg-secondary)!important;border:1px solid var(--border-color)!important}body.dark-mode #performance-summary>div[style*="background: #f8fafc"]>div:first-child,body.dark-mode #performance-summary>div[style*="background:#f8fafc"]>div:first-child{color:var(--text-secondary)!important}body.dark-mode #performance-summary>div[style*="background: #f8fafc"]>div:last-child,body.dark-mode #performance-summary>div[style*="background:#f8fafc"]>div:last-child{color:var(--text-color)!important}body.dark-mode .opp-item{background:var(--opp-item-bg);border:1px solid var(--border-color)}body.dark-mode .opp-item:hover{background:var(--opp-item-hover-bg);border-color:var(--opp-item-hover-border)}body.dark-mode .brief-display{background:var(--brief-bg)!important;border-left-color:var(--accent-success)!important}body.dark-mode .version-badge{background:var(--badge-bg);color:var(--accent-primary);border:1px solid var(--badge-border)}body.dark-mode .env-badge.env-prod{background:var(--success-bg);color:var(--accent-success);border-color:var(--badge-success-border)}body.dark-mode .env-badge.env-rec{background:var(--warning-bg);color:var(--dm-chart-gold);border-color:var(--badge-warning-border)}body.dark-mode .status-badge{background:color-mix(in srgb,var(--accent-success) 15%,transparent);color:var(--accent-success);border:1px solid color-mix(in srgb,var(--accent-success) 30%,transparent)}body.dark-mode #scheduler-status span{color:var(--text-color)!important}html.dark-mode .rank-badge,body.dark-mode .rank-badge{background:color-mix(in srgb,var(--accent-success) 12%,var(--card-bg));color:var(--accent-success)}html.dark-mode .rank-badge.rank-top5,body.dark-mode .rank-badge.rank-top5{background:color-mix(in srgb,var(--accent-warning) 10%,var(--card-bg));color:var(--accent-warning)}body.dark-mode #theme-toggle{background:linear-gradient(135deg,var(--dm-star-gold) 0%,var(--dm-scan-gradient-end) 100%);box-shadow:0 4px 12px #f59e0b66}body.dark-mode #theme-toggle:hover{box-shadow:0 6px 20px #f59e0b99}body.dark-mode #theme-toggle-mobile{background:linear-gradient(135deg,var(--dm-star-gold) 0%,var(--dm-scan-gradient-end) 100%);box-shadow:0 2px 6px #f59e0b4d}body.dark-mode #theme-toggle-mobile:hover{box-shadow:0 2px 6px #f59e0b4d}body.dark-mode .modal-content,body.dark-mode .settings-modal-content{border:1px solid var(--border-color)}body.dark-mode .hidden-card-row:hover{background:#ffffff0f}body.dark-mode .user-name-badge{color:var(--text-primary)}body.dark-mode .role-badge.role-admin{background:transparent;color:var(--dm-sig-risk);border-color:#fca5a559}body.dark-mode .role-badge.role-user{background:transparent;color:var(--dm-sig-macd);border-color:#93c5fd59}body.dark-mode .role-badge{border-color:var(--border-color)}body.dark-mode #api-budgets-display{background:var(--bg-secondary)!important;border:1px solid var(--border-color);color:var(--text-primary)}body.dark-mode #header-user-info span{color:var(--text-primary)!important}body.dark-mode .tabs{background:var(--bg-secondary);border-color:var(--border-color)}body.dark-mode .tab-btn{color:var(--text-secondary);background:transparent}body.dark-mode .tab-btn.active{background:var(--accent-success);color:var(--dm-white)}body.dark-mode .tab-btn:hover:not(.active){background:var(--card-bg);color:var(--text-primary)}@media(max-width:768px){body.dark-mode #header-user-info{border-top-color:var(--border-color)!important}}body.dark-mode .settings-input option{background:var(--card-bg);color:var(--text-primary)}body.dark-mode .badge-gold{color:var(--dm-badge-gold-text)}body.dark-mode .badge-green{color:var(--dm-badge-green-text)}body.dark-mode .badge-blue{color:var(--dm-badge-blue-text)}body.dark-mode .sig-badge{background:var(--border-color);color:var(--text-secondary)}body.dark-mode .sig-support{background:color-mix(in srgb,var(--accent-warning) 20%,var(--card-bg));color:var(--dm-sig-support)}body.dark-mode .sig-breakout{background:color-mix(in srgb,var(--accent-success) 20%,var(--card-bg));color:var(--dm-sig-breakout);border-color:color-mix(in srgb,var(--accent-success) 35%,transparent)}body.dark-mode .sig-macd{background:color-mix(in srgb,var(--accent-primary) 18%,var(--card-bg));color:var(--dm-sig-macd);border-color:color-mix(in srgb,var(--accent-primary) 35%,transparent)}body.dark-mode .sig-bb{background:color-mix(in srgb,var(--accent-secondary) 18%,var(--card-bg));color:var(--dm-sig-bb);border-color:color-mix(in srgb,var(--accent-secondary) 35%,transparent)}body.dark-mode .sig-rr{background:color-mix(in srgb,var(--accent-teal) 18%,var(--card-bg));color:var(--dm-sig-rr);border-color:color-mix(in srgb,var(--accent-teal) 35%,transparent)}body.dark-mode .sig-kst{background:color-mix(in srgb,var(--accent-indigo) 18%,var(--card-bg));color:var(--dm-sig-kst);border-color:color-mix(in srgb,var(--accent-indigo) 35%,transparent)}body.dark-mode .sig-risk{background:color-mix(in srgb,var(--accent-danger) 20%,var(--card-bg));color:var(--dm-sig-risk);border-color:color-mix(in srgb,var(--accent-danger) 35%,transparent)}body.dark-mode .sig-badge.sig-key-preset{box-shadow:inset 0 0 0 1.5px #ffffff40,0 1px 4px #0000004d}body.dark-mode .skeleton{background:linear-gradient(90deg,var(--card-bg) 25%,var(--border-color) 50%,var(--card-bg) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}body.dark-mode .watchlist-star.filled:before{color:#fbbf24!important}body.dark-mode .watchlist-star.filled:after{color:#34d399!important}body.dark-mode [data-tooltip]:after{background:var(--tooltip-bg);color:var(--tooltip-text);box-shadow:0 3px 10px var(--shadow-color)}body.dark-mode [data-tooltip]:before{border-top-color:var(--tooltip-bg)}body.dark-mode input:-webkit-autofill,body.dark-mode input:-webkit-autofill:hover,body.dark-mode input:-webkit-autofill:focus,body.dark-mode input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px var(--input-bg) inset!important;-webkit-text-fill-color:var(--text-color)!important;caret-color:var(--text-color)!important;transition:background-color 5000s ease-in-out 0s}body.dark-mode ::-webkit-scrollbar{width:8px;height:8px}body.dark-mode ::-webkit-scrollbar-track{background:var(--bg-secondary)}body.dark-mode ::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}body.dark-mode ::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}body.dark-mode .mobile-apk-bar{background:color-mix(in srgb,var(--accent-success) 10%,var(--bg-secondary));border-color:color-mix(in srgb,var(--accent-success) 20%,var(--border-color))}body.dark-mode .mobile-apk-bar a{color:var(--accent-success);background:color-mix(in srgb,var(--accent-success) 15%,var(--card-bg))}body.dark-mode .mobile-apk-bar a:hover{background:color-mix(in srgb,var(--accent-success) 22%,var(--card-bg))}@media(max-width:480px){body.dark-mode input:focus,body.dark-mode select:focus,body.dark-mode textarea:focus{box-shadow:0 0 0 2px var(--focus-ring-sm)!important}}@media(max-width:380px){body.dark-mode .card{box-shadow:0 1px 4px #00000059!important}}html.bw-mode,body.bw-mode{--bg-color: #0a0a0a;--bg-secondary: #141414;--bg-gradient: var(--bg-color);--hover-bg: #171717;--text-color: #fafafa;--text-primary: var(--text-color);--text-secondary: #a3a3a3;--text-on-card: #d4d4d4;--card-bg: #171717;--border-color: #262626;--chart-grid-color: rgba(115,115,115,.25);--chart-bg: #0a0a0a;--chart-text: #d4d4d4;--chart-grid: #404040;--chart-border: #525252;--chart-crosshair: #737373;--chart-crosshair-label: #262626;--chart-candle-up: #8b8b8b;--chart-candle-down: #525252;--chart-rsi-line: #d4d4d4;--chart-rsi-overbought: #949494;--chart-rsi-oversold: #5c5c5c;--chart-macd-line: #e5e5e5;--chart-macd-signal: #8b8b8b;--chart-macd-hist: #737373;--chart-macd-hist-up: rgba(212, 212, 212, .92);--chart-macd-hist-down: rgba(115, 115, 115, .92);--chart-line-portfolio: #e5e5e5;--chart-line-benchmark: #737373;--chart-bb-close: #d4d4d4;--chart-bb-upper: #8b8b8b;--chart-bb-lower: #8b8b8b;--chart-bb-mid: #737373;--chart-sma-fast: #a3a3a3;--chart-sma-slow: #737373;--chart-volume: #737373;--chart-volume-up: rgba(139, 139, 139, .8);--chart-volume-down: rgba(82, 82, 82, .8);--chart-bar-bg: rgba(115, 115, 115, .6);--chart-bar-border: rgba(115, 115, 115, 1);--shadow-color: rgba(255, 255, 255, .06);--input-bg: #171717;--input-border: #404040;--accent-primary: #e5e5e5;--accent-secondary: #b5b5b5;--accent-success: #4ade80;--accent-danger: #f87171;--accent-warning: #fbbf24;--opp-score-bg: #262626;--opp-score-text: #e5e5e5;--brief-bg: #171717;--secondary-text: #a3a3a3;--header-bg: transparent;--card-bg-solid: #171717;--success-bg: #262626;--success-text: #a3a3a3;--badge-bg: #262626;--badge-text: #a3a3a3;--msg-error-bg: #262626;--msg-error-text: #e5e5e5;--msg-success-bg: #262626;--msg-success-text: #e5e5e5;--msg-info-bg: #262626;--msg-info-text: #e5e5e5;--warning-bg: #262626;--warning-text: #a3a3a3;--msg-warning-bg: #262626;--msg-warning-text: #a3a3a3;--guide-heading: #a3a3a3;--guide-section: #b5b5b5;--guide-table-row: #262626;--guide-penalty: #a3a3a3;--overlay-bg: rgba(0, 0, 0, .8);--card-border-radius: 12px;--bw-medium: #525252;--bw-subtle: #737373;--bw-dim: #d4d4d4;--bw-login-bg: #020617;--bw-login-border: #27272a;--bw-scrollbar: #1f1f1f;--bw-score-low: #1a1a1a;--bw-score-high: #2a2a2a;--success: var(--accent-success);--warning: var(--accent-warning);--danger: var(--accent-danger);--accent: var(--accent-primary);--bw-msg-success-bg: #052e16;--bw-msg-success-border: #166534;--bw-msg-error-bg: #450a0a;--bw-msg-error-border: #dc2626;--bw-biometric-bg: #111827;--bw-biometric-border: #3f3f46;--bw-biometric-hover: #18181b;--mono-score-tabs-bg: var(--bg-secondary);--mono-score-tabs-border: var(--border-color);--mono-score-tab-active-bg: var(--input-border);--mono-score-tab-active-border: var(--border-color);--mono-score-tab-active-color: var(--text-color);--chart-modal-bg: rgba(0, 0, 0, .95);--shadow-heavy: rgba(0, 0, 0, .6);--shadow-deep: rgba(0, 0, 0, .75);--focus-ring: rgba(115, 115, 115, .25);--focus-ring-sm: rgba(115, 115, 115, .3);--dialog-backdrop: rgba(0, 0, 0, .6)}:root{--sn-h: 64px;--sn-elev: 0 -1px 2px rgba(15, 23, 42, .04), 0 -8px 24px -8px rgba(15, 23, 42, .06)}.dark-mode{--sn-elev: 0 -1px 2px rgba(0, 0, 0, .4), 0 -8px 24px -8px rgba(0, 0, 0, .5)}.bw-mode{--sn-elev: 0 -1px 3px rgba(255, 255, 255, .05), 0 -4px 16px -4px rgba(0, 0, 0, .8)}.wbw-mode{--sn-elev: 0 -1px 2px rgba(0, 0, 0, .7), 0 -8px 24px -8px rgba(0, 0, 0, .8)}.sn-tabs-native{position:fixed;left:0;right:0;bottom:0;z-index:100100;background:var(--card-bg, #ffffff);border-top:1px solid var(--border-color, #e2e8f0);box-shadow:var(--sn-elev);padding-bottom:env(safe-area-inset-bottom,0px);display:none}html.is-native-app .sn-tabs-native,html.has-web-shell-nav .sn-tabs-native{display:block}html.is-native-app #theme-toggle,html.has-web-shell-nav #theme-toggle{display:none!important}html.has-web-shell-nav body{padding-bottom:calc(max(16px,env(safe-area-inset-bottom,16px)) + var(--sn-h, 64px))}.sn-tabs-native-inner{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;align-items:stretch;max-width:720px;margin:0 auto}.sn-tab-n{appearance:none;border:0;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 4px 6px;min-height:var(--sn-h);font-family:inherit;font-size:10.5px;font-weight:500;color:var(--secondary-text, #64748b);text-decoration:none;position:relative;-webkit-tap-highlight-color:transparent;user-select:none;cursor:pointer;touch-action:manipulation;transition:color .1s ease}.sn-tab-n:focus-visible{outline:2px solid var(--accent-primary, #3b82f6);outline-offset:-2px;border-radius:4px}.sn-tab-n>*{pointer-events:none}.sn-tab-n-icon{display:inline-flex;align-items:center;justify-content:center}.sn-tab-n svg{width:22px;height:22px;stroke-width:1.8;transition:transform .15s cubic-bezier(.2,.8,.2,1)}.sn-tab-n:active svg{transform:scale(.86)}.sn-tab-n-label{line-height:1.1;letter-spacing:.01em}.sn-tab-n.is-active{color:var(--accent-primary, #3b82f6)}.sn-tab-n.is-active:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:28px;height:3px;background:var(--accent-primary, #3b82f6);border-radius:0 0 3px 3px}.sn-tab-n.is-active svg{transform:translateY(-1px)}.sn-tab-n-dot{position:absolute;top:7px;right:calc(50% - 14px);width:8px;height:8px;border-radius:50%;background:var(--accent-danger, #ef4444);border:2px solid var(--card-bg, #ffffff);display:none;pointer-events:none}.sn-tab-n[data-dot="1"] .sn-tab-n-dot{display:block;animation:sn-dot-pulse 1.6s ease-in-out infinite}@keyframes sn-dot-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}@media(prefers-reduced-motion:reduce){.sn-tab-n[data-dot="1"] .sn-tab-n-dot{animation:none}.sn-tab-n svg{transition:none}}.sn-more-backdrop{position:fixed;inset:0;z-index:100100;background:transparent}.sn-more-menu{position:fixed;right:8px;bottom:calc(var(--sn-h) + env(safe-area-inset-bottom,0px) + 8px);min-width:200px;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:12px;box-shadow:0 -4px 24px -4px #0f172a2e;overflow:hidden;z-index:100101;animation:sn-more-in .12s ease-out}@keyframes sn-more-in{0%{opacity:0;transform:translateY(8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.sn-more-menu-item{appearance:none;border:0;background:transparent;width:100%;text-align:left;padding:14px 18px;font-family:inherit;font-size:14px;font-weight:500;color:var(--text-color, #1e293b);cursor:pointer;-webkit-tap-highlight-color:transparent}.sn-more-menu-item+.sn-more-menu-item{border-top:1px solid var(--border-color, #e2e8f0)}.sn-more-menu-item:active{background:var(--hover-bg, #f1f5f9)}@media(prefers-reduced-motion:reduce){.sn-more-menu{animation:none}}html.bw-mode .sn-tabs-native,body.bw-mode .sn-tabs-native{--sn-bar-bg: #141414;--sn-bar-border: #3d3d3d;--sn-tab-fg: #c8c8c8;--sn-tab-active-fg: #ffffff;background:var(--sn-bar-bg)!important;border-top-color:var(--sn-bar-border)!important}html.bw-mode .sn-tab-n,body.bw-mode .sn-tab-n{background:transparent!important;border:none!important;color:var(--sn-tab-fg)!important}html.bw-mode .sn-tab-n svg,body.bw-mode .sn-tab-n svg{stroke:currentColor}html.bw-mode .sn-tab-n.is-active,body.bw-mode .sn-tab-n.is-active{color:var(--sn-tab-active-fg)!important}html.bw-mode .sn-tab-n.is-active:before,body.bw-mode .sn-tab-n.is-active:before{background:var(--sn-tab-active-fg)!important}html.bw-mode .sn-tab-n-dot,body.bw-mode .sn-tab-n-dot{border-color:var(--sn-bar-bg)}html.wbw-mode .sn-tabs-native,body.wbw-mode .sn-tabs-native{--sn-bar-bg: #ffffff;--sn-bar-border: #c4c4c4;--sn-tab-fg: #444444;--sn-tab-active-fg: #000000;background:var(--sn-bar-bg)!important;border-top-color:var(--sn-bar-border)!important}html.wbw-mode .sn-tab-n,body.wbw-mode .sn-tab-n{background:transparent!important;border:none!important;color:var(--sn-tab-fg)!important}html.wbw-mode .sn-tab-n svg,body.wbw-mode .sn-tab-n svg{stroke:currentColor}html.wbw-mode .sn-tab-n.is-active,body.wbw-mode .sn-tab-n.is-active{color:var(--sn-tab-active-fg)!important}html.wbw-mode .sn-tab-n.is-active:before,body.wbw-mode .sn-tab-n.is-active:before{background:var(--sn-tab-active-fg)!important}html.wbw-mode .sn-tab-n-dot,body.wbw-mode .sn-tab-n-dot{border-color:var(--sn-bar-bg)}#search-modal-v49{position:relative;z-index:10100}.search-modal-overlay{position:fixed;inset:0;z-index:10100;background:color-mix(in srgb,var(--bg-color, #000) 75%,transparent);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding:max(env(safe-area-inset-top,0px),16px) 16px 16px;overflow-y:auto;animation:search-modal-fade-in .15s ease-out}@keyframes search-modal-fade-in{0%{opacity:0}to{opacity:1}}.search-modal-card{width:min(560px,100%);margin-top:8vh;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:14px;box-shadow:0 16px 48px -12px #0f172a40;overflow:hidden;display:flex;flex-direction:column}@media(max-width:480px){.search-modal-card{margin-top:4vh;border-radius:10px}}.search-modal-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border-color, #e2e8f0)}.search-modal-title{margin:0;font-size:16px;font-weight:600;color:var(--text-color, #1e293b)}.search-modal-close{appearance:none;border:0;background:transparent;color:var(--secondary-text, #64748b);font-size:24px;line-height:1;padding:4px 8px;cursor:pointer;border-radius:6px;-webkit-tap-highlight-color:transparent}.search-modal-close:hover,.search-modal-close:focus-visible{background:var(--hover-bg, #f1f5f9);color:var(--text-color, #1e293b);outline:none}.search-modal-input-wrap{position:relative;padding:14px 18px 0}.search-modal-input-icon{position:absolute;left:30px;top:50%;transform:translateY(-30%);width:18px;height:18px;color:var(--secondary-text, #64748b);pointer-events:none}.search-modal-input-icon svg{width:18px;height:18px}.search-modal-input{width:100%;height:44px;padding:0 14px 0 42px;border:1px solid var(--border-color, #e2e8f0);border-radius:10px;background:var(--input-bg, var(--bg-color, #f8fafc));color:var(--text-color, #1e293b);font-size:16px;font-family:inherit;font-weight:500;letter-spacing:.02em;outline:none}.search-modal-input:focus{border-color:var(--accent-primary, #3b82f6);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-primary, #3b82f6) 18%,transparent)}.search-modal-recent{padding:12px 18px 4px}.search-modal-recent-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.search-modal-recent-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--secondary-text, #64748b)}.search-modal-recent-clear{appearance:none;border:0;background:transparent;color:var(--secondary-text, #64748b);font:inherit;font-size:11px;cursor:pointer;padding:2px 6px;border-radius:4px}.search-modal-recent-clear:hover{color:var(--accent-danger, #ef4444);background:var(--hover-bg, #f1f5f9)}.search-modal-recent-list{display:flex;flex-wrap:wrap;gap:6px}.search-modal-recent-item{appearance:none;border:1px solid var(--border-color, #e2e8f0);background:var(--input-bg, var(--bg-color, #f8fafc));color:var(--text-color, #1e293b);font:inherit;font-size:12px;font-weight:600;padding:5px 10px;border-radius:999px;cursor:pointer;letter-spacing:.02em;-webkit-tap-highlight-color:transparent;transition:background .1s ease,border-color .1s ease}.search-modal-recent-item:hover,.search-modal-recent-item:focus-visible{border-color:var(--accent-primary, #3b82f6);background:color-mix(in srgb,var(--accent-primary, #3b82f6) 8%,var(--card-bg, #fff));outline:none}.search-modal-footer{padding:10px 18px 14px;border-top:1px solid var(--border-color, #e2e8f0);background:var(--bg-secondary, var(--card-bg, #fff))}.search-modal-hint{font-size:11.5px;color:var(--secondary-text, #64748b)}html:is(.is-native-app,.has-shell-nav) #search-modal-v49,html:is(.is-native-app,.has-shell-nav) .search-modal-overlay,html:is(.is-native-app,.has-shell-nav) #confirm-modal,html:is(.is-native-app,.has-shell-nav) .modal-overlay.modal-overlay-app,html:is(.is-native-app,.has-shell-nav) .danger-confirm-overlay{z-index:100102}html:is(.is-native-app,.has-shell-nav) .search-modal-overlay{box-sizing:border-box;padding-bottom:calc(max(16px,env(safe-area-inset-bottom,0px)) + var(--sn-h, 64px) + 12px)}html:is(.is-native-app,.has-shell-nav) .search-modal-card{max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - var(--sn-h, 64px) - 48px);margin-top:min(8vh,24px);overflow-y:auto}@media(max-width:480px){html:is(.is-native-app,.has-shell-nav) .search-modal-card{margin-top:min(4vh,16px);max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - var(--sn-h, 64px) - 32px)}}html.search-modal-open,html.search-modal-open body{overflow:hidden}@media(prefers-reduced-motion:reduce){.search-modal-overlay{animation:none}}
