*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);background:var(--color-deep-dark);color:var(--color-text-primary);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}a{color:var(--color-bond-red);text-decoration:none;transition:color var(--transition-normal)}a:hover{color:var(--color-bond-red-dark)}button{font-family:inherit;cursor:pointer}.trend-search{min-height:100vh;background:var(--color-deep-dark, #2F2E2E);color:var(--color-text-primary, #EAEDEE);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.search-header{padding:3rem 2rem 2rem;text-align:center;border-bottom:1px solid var(--color-border, #4a4949);background:var(--color-darker-surface, #3a3939)}.header-content{max-width:900px;margin:0 auto}.header-content h1{font-size:2.5rem;font-weight:600;margin:0 0 .5rem;color:var(--color-text-primary, #EAEDEE)}.header-subtitle{color:var(--color-text-secondary, #999999);font-size:1.125rem;margin:0}.stats-pills{display:flex;justify-content:center;gap:1.5rem;margin-top:1.5rem;flex-wrap:wrap}.stat-pill{display:flex;flex-direction:column;align-items:center;padding:.75rem 1.5rem;background:var(--color-deep-dark, #2F2E2E);border:1px solid var(--color-border, #4a4949);border-radius:8px;min-width:100px}.stat-value{font-size:1.5rem;font-weight:700;color:var(--color-bond-red, #FF4B4F)}.stat-label{font-size:.75rem;color:var(--color-text-tertiary, #666666);text-transform:uppercase;letter-spacing:.05em}.search-section{max-width:900px;margin:0 auto;padding:2rem}.search-box{display:flex;gap:1rem;margin-bottom:1rem}.search-icon{display:none}.search-input{flex:1;padding:1rem 1.25rem;background:var(--color-darker-surface, #3a3939);border:1px solid var(--color-border, #4a4949);border-radius:8px;color:var(--color-text-primary, #EAEDEE);font-size:1rem;transition:border-color .2s}.search-input:focus{outline:none;border-color:var(--color-bond-red, #FF4B4F)}.search-input::placeholder{color:var(--color-text-tertiary, #666666)}.search-button{padding:1rem 2rem;background:var(--color-bond-red, #FF4B4F);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s;white-space:nowrap}.search-button:hover:not(:disabled){background:var(--color-bond-red-dark, #e63e42)}.search-button:disabled{opacity:.6;cursor:not-allowed}.button-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.filter-row{margin-top:1rem}.limit-select{padding:.75rem 1rem;background:var(--color-darker-surface, #3a3939);border:1px solid var(--color-border, #4a4949);border-radius:8px;color:var(--color-text-primary, #EAEDEE);font-size:.875rem;font-weight:500;cursor:pointer;min-width:100px}.limit-select:focus{outline:none;border-color:var(--color-bond-red, #FF4B4F)}.category-select{padding:.5rem .75rem;background:var(--color-deep-dark, #2F2E2E);border:1px solid var(--color-border, #4a4949);border-radius:6px;color:var(--color-text-secondary, #999999);font-size:.875rem}.category-select:focus{outline:none;border-color:var(--color-bond-red, #FF4B4F)}.results-section{max-width:900px;margin:0 auto;padding:0 2rem 3rem}.results-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border, #4a4949)}.results-count{font-size:.9375rem;color:var(--color-text-secondary, #999999)}.results-count strong{color:var(--color-text-primary, #EAEDEE)}.total-available{color:var(--color-text-tertiary, #666666);font-size:.875rem}.pagination,.page-numbers{display:flex;align-items:center;gap:.25rem}.page-btn{padding:.5rem .75rem;background:var(--color-darker-surface, #3a3939);border:1px solid var(--color-border, #4a4949);border-radius:6px;color:var(--color-text-secondary, #999999);font-size:.875rem;cursor:pointer;transition:all .2s;min-width:36px;text-align:center}.page-btn:hover:not(:disabled){border-color:var(--color-bond-red, #FF4B4F);color:var(--color-text-primary, #EAEDEE)}.page-btn:disabled{opacity:.4;cursor:not-allowed}.page-btn.active{background:var(--color-bond-red, #FF4B4F);border-color:var(--color-bond-red, #FF4B4F);color:#fff}.page-ellipsis{color:var(--color-text-tertiary, #666666);padding:0 .25rem}.results-grid{display:flex;flex-direction:column;gap:1rem}.trend-card{background:var(--color-darker-surface, #3a3939);border:1px solid var(--color-border, #4a4949);border-radius:12px;overflow:hidden;transition:border-color .2s}.trend-card:hover{border-color:#ffffff26}.trend-card.expanded{border-color:var(--color-bond-red, #FF4B4F)}.card-header{padding:1.25rem;cursor:pointer}.card-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem}.trend-title{font-size:1.125rem;font-weight:600;color:var(--color-text-primary, #EAEDEE);margin:0;line-height:1.4;flex:1}.relevance-score{flex-shrink:0;display:flex;align-items:center;gap:.5rem;min-width:80px}.score-bar{flex:1;height:4px;background:var(--color-bond-red, #FF4B4F);border-radius:2px}.score-text{font-size:.75rem;font-weight:500;color:var(--color-text-tertiary, #666666)}.card-tags{display:flex;gap:.5rem;flex-wrap:wrap}.category-tag{padding:.25rem .75rem;font-size:.75rem;font-weight:500;background:#8b5cf626;color:#a78bfa;border-radius:16px}.impact-tag{padding:.25rem .75rem;font-size:.75rem;font-weight:500;border-radius:16px}.impact-high{background:#ef444426;color:#f87171}.impact-medium{background:#f59e0b26;color:#fbbf24}.impact-low{background:#22c55e26;color:#4ade80}.timeframe-tag{padding:.25rem .75rem;font-size:.75rem;font-weight:500;background:#3b82f626;color:#60a5fa;border-radius:16px}.card-body{padding:0 1.25rem}.trend-description{color:var(--color-text-secondary, #999999);font-size:.9375rem;line-height:1.6;margin:0 0 1rem}.industries-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.industry-chip{padding:.25rem .75rem;font-size:.75rem;background:var(--color-deep-dark, #2F2E2E);color:var(--color-text-tertiary, #666666);border-radius:16px}.industry-chip.more{background:transparent;color:var(--color-text-tertiary, #666666);font-style:italic}.card-source{display:flex;align-items:center;gap:.5rem;padding:1rem 1.25rem;background:#0003}.card-source svg{width:14px;height:14px;color:var(--color-text-tertiary, #666666);flex-shrink:0}.source-text{font-size:.8125rem;color:var(--color-text-tertiary, #666666);flex:1}.pdf-link{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:var(--color-bond-red, #FF4B4F);color:#fff;border-radius:6px;font-size:.75rem;font-weight:500;text-decoration:none;transition:background-color .2s;margin-left:auto}.pdf-link:hover{background:var(--color-bond-red-dark, #e63e42)}.pdf-link svg{width:14px;height:14px;color:#fff}.card-details{padding:1.25rem;background:#0003;border-top:1px solid var(--color-border, #4a4949)}.detail-block{margin-bottom:1.25rem}.detail-block:last-child{margin-bottom:0}.detail-block h4{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-tertiary, #666666);margin:0 0 .5rem}.detail-block p{color:var(--color-text-secondary, #999999);margin:0;font-size:.9375rem;line-height:1.5}.detail-block ul{margin:0;padding-left:1.25rem;color:var(--color-text-secondary, #999999)}.detail-block li{margin-bottom:.375rem;font-size:.9375rem;line-height:1.5}.detail-block li:last-child{margin-bottom:0}.expand-toggle{width:100%;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background:transparent;border:none;border-top:1px solid var(--color-border, #4a4949);color:var(--color-text-tertiary, #666666);font-size:.8125rem;cursor:pointer;transition:color .2s,background .2s}.expand-toggle:hover{background:#ffffff08;color:var(--color-text-secondary, #999999)}.expand-toggle:focus{outline:none}.expand-toggle svg{width:14px;height:14px;transition:transform .2s}.expand-toggle svg.rotated{transform:rotate(180deg)}.empty-state{text-align:center;padding:4rem 2rem;max-width:500px;margin:0 auto}.empty-icon{width:80px;height:80px;margin:0 auto 1.5rem;background:var(--color-darker-surface, #3a3939);border-radius:50%;display:flex;align-items:center;justify-content:center}.empty-icon svg{width:40px;height:40px;color:var(--color-text-tertiary, #666666)}.empty-state h2{font-size:1.25rem;font-weight:600;color:var(--color-text-primary, #EAEDEE);margin:0 0 .5rem}.empty-state p{color:var(--color-text-secondary, #999999);font-size:.9375rem;margin:0}.initial-state{text-align:center;padding:4rem 2rem;max-width:500px;margin:0 auto}.initial-icon{width:100px;height:100px;margin:0 auto 1.5rem;background:var(--color-bond-red, #FF4B4F);border-radius:16px;display:flex;align-items:center;justify-content:center}.initial-icon svg{width:48px;height:48px;color:#fff}.initial-state h2{font-size:1.5rem;font-weight:600;color:var(--color-text-primary, #EAEDEE);margin:0 0 .5rem}.initial-state p{color:var(--color-text-secondary, #999999);font-size:1rem;margin:0 0 2rem}.suggestion-section h4{font-size:.875rem;font-weight:500;color:var(--color-text-tertiary, #666666);margin:0 0 1rem}.suggestion-chips{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center}.suggestion-chips button{padding:.5rem 1rem;background:var(--color-darker-surface, #3a3939);border:1px solid var(--color-border, #4a4949);border-radius:20px;color:var(--color-text-secondary, #999999);font-size:.875rem;cursor:pointer;transition:all .2s}.suggestion-chips button:hover{border-color:var(--color-bond-red, #FF4B4F);color:var(--color-text-primary, #EAEDEE)}@media(max-width:640px){.search-header{padding:2rem 1rem}.header-content h1{font-size:1.75rem}.stats-pills{gap:.75rem}.stat-pill{padding:.5rem 1rem;min-width:80px}.stat-value{font-size:1.25rem}.search-section{padding:1.5rem 1rem}.search-box{flex-direction:column}.limit-select,.search-button{width:100%}.results-header{flex-direction:column;align-items:flex-start}.pagination{width:100%;justify-content:center}.results-section{padding:0 1rem 2rem}.card-header{padding:1rem}.card-title-row{flex-direction:column;gap:.5rem}.relevance-score{width:100%}}.trend-card{position:relative}.trend-card.selected{border-color:var(--color-bond-red, #FF4B4F);box-shadow:0 0 0 1px var(--color-bond-red, #FF4B4F)}.trend-checkbox{position:absolute;top:16px;left:16px;z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center}.trend-checkbox input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.trend-checkbox .checkmark{width:22px;height:22px;background:var(--color-deep-dark, #2F2E2E);border:2px solid var(--color-border, #4a4949);border-radius:4px;transition:all .2s}.trend-checkbox:hover .checkmark{border-color:var(--color-bond-red, #FF4B4F)}.trend-checkbox input:checked~.checkmark{background:var(--color-bond-red, #FF4B4F);border-color:var(--color-bond-red, #FF4B4F)}.trend-checkbox input:checked~.checkmark:after{content:"✓";display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:700}.trend-card .card-header{padding-left:50px}.selection-bar{display:flex;align-items:center;justify-content:space-between;background:var(--color-darker-surface, #3a3939);border:1px solid var(--color-bond-red, #FF4B4F);border-radius:8px;padding:12px 16px;margin-bottom:16px;gap:16px;flex-wrap:wrap}.selection-count{font-weight:600;color:var(--color-bond-red, #FF4B4F)}.selection-actions{display:flex;gap:8px;flex-wrap:wrap}.select-action-btn{padding:8px 14px;background:transparent;border:1px solid var(--color-border, #4a4949);border-radius:6px;color:var(--color-text-secondary, #999999);font-size:.8125rem;cursor:pointer;transition:all .2s}.select-action-btn:hover{border-color:var(--color-text-secondary, #999999);color:var(--color-text-primary, #EAEDEE)}.select-action-btn.clear{color:var(--color-error, #ff6b6f);border-color:var(--color-error, #ff6b6f)}.select-action-btn.clear:hover{background:var(--color-error, #ff6b6f);color:#fff}.generate-deck-btn{padding:10px 20px;background:var(--color-bond-red, #FF4B4F);border:none;border-radius:6px;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .2s}.generate-deck-btn:hover{background:var(--color-bond-red-dark, #e63e42)}.deck-success-banner{max-width:900px;margin:0 auto 16px;padding:16px 20px;background:#4a9e7c26;border:1px solid var(--color-success, #4a9e7c);border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:16px}.success-content{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.success-icon{width:24px;height:24px;background:var(--color-success, #4a9e7c);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:700}.view-deck-btn{padding:8px 16px;background:var(--color-success, #4a9e7c);border-radius:6px;color:#fff;text-decoration:none;font-size:.875rem;font-weight:500;transition:background .2s}.view-deck-btn:hover{background:#3d8567}.dismiss-btn{background:none;border:none;color:var(--color-text-secondary, #999999);font-size:20px;cursor:pointer;padding:4px 8px;transition:color .2s}.dismiss-btn:hover{color:var(--color-text-primary, #EAEDEE)}.deck-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.deck-modal{background:var(--color-darker-surface, #3a3939);border:1px solid var(--color-border, #4a4949);border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--color-border, #4a4949)}.modal-header h2{margin:0;font-size:1.25rem;color:var(--color-text-primary, #EAEDEE)}.modal-close{background:none;border:none;color:var(--color-text-secondary, #999999);font-size:24px;cursor:pointer;padding:4px;line-height:1;transition:color .2s}.modal-close:hover:not(:disabled){color:var(--color-text-primary, #EAEDEE)}.modal-close:disabled{opacity:.5;cursor:not-allowed}.modal-body{padding:24px}.modal-summary{text-align:center;margin-bottom:24px;padding:16px;background:var(--color-deep-dark, #2F2E2E);border-radius:8px}.summary-count{font-size:2rem;font-weight:700;color:var(--color-bond-red, #FF4B4F);display:block}.modal-form{display:flex;flex-direction:column;gap:16px}.form-section{margin-top:8px;padding-top:16px;border-top:1px solid var(--color-border, #4a4949)}.form-section-header{margin-bottom:12px}.form-section-header .section-title{display:block;font-size:.875rem;font-weight:600;color:var(--color-bond-red, #FF4B4F);margin-bottom:4px}.form-section-header .section-subtitle{display:block;font-size:.75rem;color:var(--color-text-tertiary, #666666)}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:.8125rem;color:var(--color-text-secondary, #999999);font-weight:500}.form-group input{padding:12px 14px;background:var(--color-deep-dark, #2F2E2E);border:1px solid var(--color-border, #4a4949);border-radius:6px;color:var(--color-text-primary, #EAEDEE);font-size:.9375rem;transition:border-color .2s}.form-group input:focus{outline:none;border-color:var(--color-bond-red, #FF4B4F)}.form-group input::placeholder{color:var(--color-text-tertiary, #666666)}.form-group input:disabled{opacity:.6;cursor:not-allowed}.form-hint{display:block;margin-top:6px;font-size:.75rem;color:var(--color-text-tertiary, #666666)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checkbox-option{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:.9375rem;color:var(--color-text-secondary, #999999)}.checkbox-option input{width:18px;height:18px;accent-color:var(--color-bond-red, #FF4B4F)}.checkbox-option input:disabled{opacity:.6;cursor:not-allowed}.modal-error{margin-top:16px;padding:12px 16px;background:#ff6b6f26;border:1px solid var(--color-error, #ff6b6f);border-radius:6px;color:var(--color-error, #ff6b6f);font-size:.875rem}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--color-border, #4a4949)}.modal-btn{padding:12px 24px;border-radius:6px;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.modal-btn.cancel{background:transparent;border:1px solid var(--color-border, #4a4949);color:var(--color-text-secondary, #999999)}.modal-btn.cancel:hover:not(:disabled){border-color:var(--color-text-secondary, #999999);color:var(--color-text-primary, #EAEDEE)}.modal-btn.cancel:disabled{opacity:.5;cursor:not-allowed}.modal-btn.generate{background:var(--color-bond-red, #FF4B4F);border:none;color:#fff}.modal-btn.generate:hover:not(:disabled){background:var(--color-bond-red-dark, #e63e42)}.modal-btn.generate:disabled{opacity:.6;cursor:not-allowed}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@media(max-width:500px){.form-row{grid-template-columns:1fr}.selection-bar{flex-direction:column;text-align:center}.selection-actions{justify-content:center}}.social-insights{min-height:100vh;background:var(--color-deep-dark, #2F2E2E);color:var(--color-text-primary, #EAEDEE);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.si-header{padding:3rem 2rem 2rem;text-align:center;border-bottom:1px solid var(--color-border, #4a4949);background:var(--color-darker-surface, #3a3939)}.si-input-section{max-width:900px;margin:0 auto;padding:2rem}.si-options{margin-top:1rem;padding:1rem;background:var(--color-darker-surface, #3a3939);border-radius:8px}.si-option-row{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.si-option-row:last-child{margin-bottom:0}.si-option-row label,.si-option-row span{font-size:.875rem;color:var(--color-text-secondary, #999999);min-width:130px}.si-client-input{flex:1;max-width:300px;padding:.5rem .75rem;background:var(--color-deep-dark, #2F2E2E);border:1px solid var(--color-border, #4a4949);border-radius:6px;color:var(--color-text-primary, #EAEDEE);font-size:.875rem}.si-client-input:focus{outline:none;border-color:var(--color-bond-red, #FF4B4F)}.si-client-input::placeholder{color:var(--color-text-tertiary, #666666)}.si-platform-checkboxes{display:flex;gap:1rem;flex-wrap:wrap}.si-checkbox-label{display:flex;align-items:center;gap:.5rem;color:var(--color-text-secondary, #999999);font-size:.875rem;cursor:pointer}.si-checkbox-label input{accent-color:var(--color-bond-red, #FF4B4F)}.si-sample-topics{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:1.5rem}.si-sample-label{color:var(--color-text-secondary, #999999);font-size:.875rem}.si-loading{text-align:center;padding:4rem 2rem}.si-loading .loading-spinner{margin:0 auto 1.5rem}.si-loading p{margin:0;color:var(--color-text-primary, #EAEDEE)}.si-loading-sub{color:var(--color-text-secondary, #999999)!important;font-size:.875rem;margin-top:.5rem!important}.si-error{max-width:600px;margin:2rem auto;padding:1.5rem;background:#ff6b6f26;border:1px solid var(--color-error, #ff6b6f);border-radius:8px;text-align:center}.si-error p{margin:0;color:var(--color-error, #ff6b6f)}.si-report{max-width:900px;margin:0 auto;padding:2rem}.si-report-header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-border, #4a4949)}.si-report-header h2{font-size:1.75rem;margin:0 0 .75rem}.si-report-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem}.si-report-topic{color:var(--color-bond-red, #FF4B4F);font-weight:500}.si-report-date{color:var(--color-text-secondary, #999999);font-size:.875rem}.si-section{background:var(--color-darker-surface, #3a3939);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.si-section h3{font-size:1.125rem;font-weight:600;margin:0 0 1rem;color:var(--color-text-primary, #EAEDEE)}.si-section h4{font-size:.875rem;font-weight:600;margin:0 0 .5rem;color:var(--color-text-secondary, #999999);text-transform:uppercase;letter-spacing:.05em}.si-section p{margin:0;line-height:1.6}.si-section ul{margin:0;padding-left:1.25rem}.si-section li{margin-bottom:.5rem;line-height:1.5}.si-summary{background:linear-gradient(135deg,var(--color-darker-surface, #3a3939) 0%,#454444 100%);border-left:4px solid var(--color-bond-red, #FF4B4F)}.si-summary p{font-size:1.125rem}.si-key-finding{background:linear-gradient(135deg,rgba(255,75,79,.15) 0%,var(--color-darker-surface, #3a3939) 100%);border:1px solid rgba(255,75,79,.3)}.si-headline{font-size:1.5rem;font-weight:600;color:var(--color-bond-red, #FF4B4F);margin-bottom:.75rem!important}.si-detail{color:var(--color-text-secondary, #999999)}.si-two-column{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media(max-width:768px){.si-two-column{grid-template-columns:1fr}}.si-sentiment-score{display:flex;align-items:center;gap:1.5rem;margin-bottom:1.5rem}.si-score-circle{width:80px;height:80px;border-radius:50%;background:conic-gradient(var(--color-success, #4a9e7c) calc(var(--score) * 1%),var(--color-border, #4a4949) 0);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.si-score-circle:before{content:"";position:absolute;width:60px;height:60px;border-radius:50%;background:var(--color-darker-surface, #3a3939)}.si-score-value{position:relative;font-size:1.5rem;font-weight:700;color:var(--color-text-primary, #EAEDEE)}.si-score-label{position:relative;font-size:.625rem;color:var(--color-text-secondary, #999999);text-transform:uppercase}.si-sentiment-badge{padding:.375rem .75rem;border-radius:20px;font-size:.875rem;font-weight:500;text-transform:capitalize;color:#fff}.si-sentiment-breakdown{margin-bottom:1.5rem}.si-bar-container{display:flex;height:8px;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.si-bar{transition:width .3s}.si-bar-positive{background:var(--color-success, #4a9e7c)}.si-bar-neutral{background:var(--color-warning, #ff9800)}.si-bar-negative{background:var(--color-error, #ff6b6f)}.si-bar-legend{display:flex;justify-content:space-between;font-size:.75rem}.si-legend-positive{color:var(--color-success, #4a9e7c)}.si-legend-neutral{color:var(--color-warning, #ff9800)}.si-legend-negative{color:var(--color-error, #ff6b6f)}.si-theme-tags{display:flex;flex-wrap:wrap;gap:.5rem}.si-theme-tag{padding:.25rem .75rem;background:var(--color-deep-dark, #2F2E2E);border-radius:16px;font-size:.8125rem;color:var(--color-text-secondary, #999999)}.si-driver-item{padding:1rem;background:var(--color-deep-dark, #2F2E2E);border-radius:8px;margin-bottom:.75rem}.si-driver-item:last-child{margin-bottom:0}.si-driver-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.si-driver-rank{width:24px;height:24px;background:var(--color-bond-red, #FF4B4F);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600}.si-driver-name{flex:1;font-weight:500}.si-driver-pct{font-weight:600;color:var(--color-bond-red, #FF4B4F)}.si-driver-desc{font-size:.875rem;color:var(--color-text-secondary, #999999)}.si-signal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.si-signal-card{background:var(--color-deep-dark, #2F2E2E);border-radius:8px;padding:1rem}.si-signal-platform{font-size:.75rem;color:var(--color-text-tertiary, #666666);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.si-signal-metric{font-weight:500;margin-bottom:.5rem}.si-signal-value{font-size:1.25rem;font-weight:600;color:var(--color-bond-red, #FF4B4F);display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.si-trend{font-size:1rem}.si-trend-up{color:var(--color-success, #4a9e7c)}.si-trend-down{color:var(--color-error, #ff6b6f)}.si-trend-stable{color:var(--color-text-secondary, #999999)}.si-signal-insight{font-size:.875rem;color:var(--color-text-secondary, #999999)}.si-opportunity-summary{font-size:1.0625rem;margin-bottom:1.5rem!important}.si-recommendations ul{list-style:none;padding:0}.si-recommendations li{padding-left:1.5rem;position:relative}.si-recommendations li:before{content:"→";position:absolute;left:0;color:var(--color-bond-red, #FF4B4F)}.si-positioning-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}@media(max-width:600px){.si-positioning-grid{grid-template-columns:1fr}}.si-positioning-item{padding:1rem;background:var(--color-deep-dark, #2F2E2E);border-radius:8px}.si-positioning-item ul{padding-left:1rem}.si-competitor-item{display:grid;grid-template-columns:1fr auto 2fr;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--color-border, #4a4949);align-items:center}.si-competitor-item:last-child{border-bottom:none}.si-competitor-brand{font-weight:500}.si-competitor-sentiment{font-size:.875rem;text-transform:capitalize}.si-competitor-context{font-size:.875rem;color:var(--color-text-secondary, #999999)}.si-forecast-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media(max-width:600px){.si-forecast-grid{grid-template-columns:1fr}}.si-forecast-item{padding:1rem;background:var(--color-deep-dark, #2F2E2E);border-radius:8px}.si-report-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--color-border, #4a4949)}.si-action-btn{padding:.875rem 2rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.si-action-primary{background:var(--color-bond-red, #FF4B4F);color:#fff;border:none}.si-action-primary:hover{background:var(--color-bond-red-dark, #e63e42)}.si-action-secondary{background:transparent;color:var(--color-text-primary, #EAEDEE);border:1px solid var(--color-border, #4a4949)}.si-action-secondary:hover{border-color:var(--color-text-secondary, #999999)}.si-research-info{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:var(--color-deep-dark, #2F2E2E);border-radius:8px;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.si-research-summary{display:flex;flex-wrap:wrap;gap:1.5rem;font-size:.875rem;color:var(--color-text-secondary, #999999)}.si-research-summary strong{color:var(--color-text-primary, #EAEDEE)}.si-view-data-btn{padding:.5rem 1rem;background:var(--color-darker-surface, #3a3939);border:1px solid var(--color-border, #4a4949);border-radius:6px;color:var(--color-text-primary, #EAEDEE);font-size:.875rem;text-decoration:none;cursor:pointer;transition:all .2s}.si-view-data-btn:hover{background:var(--color-bond-red, #FF4B4F);border-color:var(--color-bond-red, #FF4B4F)}.si-deck-result{margin-top:1.5rem;padding:1.25rem 1.5rem;background:#4a9e7c1a;border:1px solid rgba(74,158,124,.3);border-radius:12px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.si-deck-success{display:flex;align-items:center;gap:.75rem;color:#4a9e7c;font-weight:500}.si-deck-check{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:#4a9e7c;color:#fff;border-radius:50%;font-size:14px}.si-deck-link{padding:.75rem 1.5rem;background:#4a9e7c;color:#fff;border-radius:8px;text-decoration:none;font-weight:600;transition:background-color .2s}.si-deck-link:hover{background:#3d8868}.si-deck-error{margin-top:1.5rem;padding:1rem 1.5rem;background:#ff6b6f1a;border:1px solid rgba(255,107,111,.3);border-radius:12px;color:#ff6b6f}.si-deck-error p{margin:0}.si-action-btn .button-spinner{width:16px;height:16px;border-width:2px;margin-right:.5rem;display:inline-block;vertical-align:middle}@media print{.social-insights{background:#fff;color:#333}.si-header,.si-input-section,.si-report-actions,.si-research-info,.si-deck-result,.si-deck-error{display:none}.si-report{padding:0}.si-section{background:#f5f5f5;break-inside:avoid}.si-key-finding{background:#fff0f0;border-color:#ff4b4f}}@media(max-width:640px){.si-header{padding:2rem 1rem}.si-input-section{padding:1.5rem 1rem}.si-option-row{flex-direction:column;align-items:flex-start}.si-option-row label,.si-option-row span{min-width:auto}.si-client-input{max-width:none;width:100%}.si-report{padding:1.5rem 1rem}.si-report-actions{flex-direction:column}.si-action-btn{width:100%}.si-competitor-item{grid-template-columns:1fr;gap:.5rem}}.proposal-generator{min-height:100vh;padding:2rem;max-width:1400px;margin:0 auto}.proposal-input-section{max-width:900px;margin:0 auto}.section-header{text-align:center;margin-bottom:2rem}.section-header h1{font-size:2.5rem;font-weight:600;color:var(--color-text-primary, #fff);margin:0 0 .5rem}.section-subtitle{color:var(--color-text-secondary, #888);font-size:1.1rem;margin:0}.error-banner{display:flex;align-items:center;gap:.75rem;background:#ff4b4f26;border:1px solid var(--color-bond-red, #FF4B4F);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1.5rem;color:var(--color-bond-red, #FF4B4F)}.error-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--color-bond-red, #FF4B4F);color:#fff;border-radius:50%;font-weight:700;font-size:14px;flex-shrink:0}.error-dismiss{margin-left:auto;background:none;border:none;color:var(--color-bond-red, #FF4B4F);font-size:1.5rem;cursor:pointer;padding:0;line-height:1}.input-mode-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;background:var(--color-darker-surface, #3a3939);padding:.5rem;border-radius:12px}.mode-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.25rem;background:transparent;border:none;border-radius:8px;color:var(--color-text-secondary, #888);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease}.mode-tab:hover{color:var(--color-text-primary, #fff);background:#ffffff0d}.mode-tab.active{background:var(--color-deep-dark, #2F2E2E);color:var(--color-text-primary, #fff);box-shadow:0 2px 8px #0003}.tab-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:#ff4b4f33;color:var(--color-bond-red, #FF4B4F);border-radius:6px;font-size:12px;font-weight:700}.mode-tab.active .tab-icon{background:var(--color-bond-red, #FF4B4F);color:#fff}.input-content{background:var(--color-darker-surface, #3a3939);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.input-content label{display:block;color:var(--color-text-primary, #fff);font-weight:500;margin-bottom:.75rem}.text-input-section textarea{width:100%;min-height:300px;padding:1rem;background:var(--color-deep-dark, #2F2E2E);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--color-text-primary, #fff);font-size:.95rem;font-family:inherit;line-height:1.6;resize:vertical;transition:border-color .2s ease}.text-input-section textarea:focus{outline:none;border-color:var(--color-bond-red, #FF4B4F)}.text-input-section textarea::placeholder{color:var(--color-text-secondary, #888);opacity:.7}.file-drop-zone{border:2px dashed rgba(255,255,255,.2);border-radius:12px;padding:3rem 2rem;text-align:center;cursor:pointer;transition:all .2s ease;background:var(--color-deep-dark, #2F2E2E)}.file-drop-zone:hover{border-color:var(--color-bond-red, #FF4B4F);background:#ff4b4f0d}.file-drop-zone.has-file{border-style:solid;border-color:var(--color-bond-red, #FF4B4F);padding:1.5rem}.drop-zone-content{display:flex;flex-direction:column;align-items:center;gap:.75rem;color:var(--color-text-secondary, #888)}.upload-icon{font-size:2.5rem;color:var(--color-bond-red, #FF4B4F)}.file-types{font-size:.85rem;opacity:.7}.file-info{display:flex;align-items:center;gap:.75rem;color:var(--color-text-primary, #fff)}.file-icon{font-size:1.5rem}.file-name{font-weight:500}.file-size{color:var(--color-text-secondary, #888);font-size:.9rem}.remove-file{margin-left:auto;background:#ff4b4f33;border:none;color:var(--color-bond-red, #FF4B4F);width:28px;height:28px;border-radius:6px;font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.remove-file:hover{background:var(--color-bond-red, #FF4B4F);color:#fff}.drive-input-section input{width:100%;padding:1rem;background:var(--color-deep-dark, #2F2E2E);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--color-text-primary, #fff);font-size:.95rem;transition:border-color .2s ease}.drive-input-section input:focus{outline:none;border-color:var(--color-bond-red, #FF4B4F)}.drive-input-section input::placeholder{color:var(--color-text-secondary, #888)}.input-help{margin-top:.75rem;font-size:.85rem;color:var(--color-text-secondary, #888)}.project-settings{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1rem;margin-bottom:1.5rem}@media(max-width:768px){.project-settings{grid-template-columns:1fr}}.setting-group label{display:block;color:var(--color-text-secondary, #888);font-size:.85rem;font-weight:500;margin-bottom:.5rem}.setting-group input,.setting-group select{width:100%;padding:.875rem 1rem;background:var(--color-darker-surface, #3a3939);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--color-text-primary, #fff);font-size:.95rem;transition:border-color .2s ease}.setting-group input:focus,.setting-group select:focus{outline:none;border-color:var(--color-bond-red, #FF4B4F)}.setting-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}.generate-actions{text-align:center}.generate-button{display:inline-flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 3rem;background:var(--color-bond-red, #FF4B4F);border:none;border-radius:8px;color:#fff;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:280px}.generate-button:hover:not(:disabled){background:#e63e42;transform:translateY(-2px);box-shadow:0 4px 16px #ff4b4f4d}.generate-button:disabled{opacity:.7;cursor:not-allowed}.button-icon{font-size:1.2rem}.spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.proposal-output-section{max-width:1000px;margin:0 auto}.output-header{text-align:center;margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid rgba(255,255,255,.1)}.back-button{position:absolute;left:2rem;top:2rem;background:var(--color-darker-surface, #3a3939);border:1px solid rgba(255,255,255,.1);border-radius:8px;color:var(--color-text-secondary, #888);padding:.75rem 1.25rem;cursor:pointer;font-size:.9rem;transition:all .2s ease}.back-button:hover{background:var(--color-deep-dark, #2F2E2E);color:var(--color-text-primary, #fff);border-color:var(--color-bond-red, #FF4B4F)}.output-header h1{font-size:2.5rem;font-weight:600;color:var(--color-text-primary, #fff);margin:0 0 .5rem}.client-name{color:var(--color-bond-red, #FF4B4F);font-size:1.1rem;margin:0}.proposal-section{background:var(--color-darker-surface, #3a3939);border-radius:16px;padding:2rem;margin-bottom:2rem}.proposal-section h2{font-size:1.5rem;font-weight:600;color:var(--color-text-primary, #fff);margin:0 0 1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.proposal-section h3{font-size:1.15rem;font-weight:600;color:var(--color-text-primary, #fff);margin:0 0 1rem}.proposal-section h4{font-size:.95rem;font-weight:600;color:var(--color-bond-red, #FF4B4F);margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.5px}.section-content p{color:var(--color-text-secondary, #ccc);line-height:1.7;margin:0;font-size:1rem}.phases-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.phase-card{background:var(--color-deep-dark, #2F2E2E);border-radius:12px;padding:1.5rem;position:relative}.overview-card{border-left:4px solid var(--color-bond-red, #FF4B4F)}.phase-number{position:absolute;top:1rem;right:1rem;width:32px;height:32px;background:var(--color-bond-red, #FF4B4F);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem}.phase-card h3{margin:0 0 .5rem;padding-right:3rem}.phase-duration{color:var(--color-bond-red, #FF4B4F);font-weight:500;font-size:.9rem;margin:0 0 1rem}.phase-description{color:var(--color-text-secondary, #888);font-size:.95rem;line-height:1.5;margin:0}.phase-detail-card{background:var(--color-deep-dark, #2F2E2E);border-radius:12px;margin-bottom:1.5rem;overflow:hidden}.phase-detail-card:last-child{margin-bottom:0}.phase-detail-header{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:#ff4b4f1a;border-bottom:1px solid rgba(255,255,255,.05)}.phase-badge{background:var(--color-bond-red, #FF4B4F);color:#fff;padding:.35rem .75rem;border-radius:6px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.phase-detail-header h3{flex:1;margin:0}.phase-duration-badge{background:#ffffff1a;color:var(--color-text-secondary, #888);padding:.35rem .75rem;border-radius:6px;font-size:.85rem}.phase-detail-content{padding:1.5rem}.phase-detail-content>.phase-description{margin-bottom:1.5rem}.phase-section{margin-bottom:1.5rem}.phase-section:last-child{margin-bottom:0}.activity-list,.deliverable-list,.decision-list{list-style:none;padding:0;margin:0}.activity-list li{position:relative;padding-left:1.5rem;margin-bottom:.5rem;color:var(--color-text-secondary, #ccc);font-size:.95rem}.activity-list li:before{content:"•";position:absolute;left:0;color:var(--color-bond-red, #FF4B4F)}.deliverable-list li{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.75rem;color:var(--color-text-secondary, #ccc);font-size:.95rem}.deliverable-icon{color:var(--color-bond-red, #FF4B4F);flex-shrink:0}.decision-points{background:#ffc1071a;border-radius:8px;padding:1rem}.decision-list li{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.5rem;color:#ffc107;font-size:.95rem}.decision-icon{flex-shrink:0}.timeline-container{position:relative}.timeline-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1rem 1.5rem;background:var(--color-deep-dark, #2F2E2E);border-radius:8px}.timeline-label{color:var(--color-text-secondary, #888);font-size:.9rem}.timeline-value{color:var(--color-bond-red, #FF4B4F);font-weight:600;font-size:1.1rem}.timeline-weeks{position:relative;padding-left:3rem}.timeline-weeks:before{content:"";position:absolute;left:1rem;top:0;bottom:0;width:2px;background:#ff4b4f4d}.timeline-week{position:relative;margin-bottom:1.5rem}.timeline-week:last-child{margin-bottom:0}.week-marker{position:absolute;left:-2.5rem;top:0}.week-number{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--color-bond-red, #FF4B4F);color:#fff;border-radius:50%;font-size:.75rem;font-weight:700}.week-content{background:var(--color-deep-dark, #2F2E2E);border-radius:8px;padding:1rem 1.25rem}.week-phase{color:var(--color-text-primary, #fff);font-weight:600;font-size:.95rem}.week-activities{list-style:none;padding:0;margin:.75rem 0 0}.week-activities li{color:var(--color-text-secondary, #888);font-size:.85rem;margin-bottom:.25rem;padding-left:1rem;position:relative}.week-activities li:before{content:"→";position:absolute;left:0;color:var(--color-bond-red, #FF4B4F)}.resources-table-container{margin-bottom:2rem}.resources-table{width:100%;border-collapse:collapse;background:var(--color-deep-dark, #2F2E2E);border-radius:8px;overflow:hidden}.resources-table th,.resources-table td{padding:1rem 1.25rem;text-align:left}.resources-table th{background:#ff4b4f1a;color:var(--color-text-secondary, #888);font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.resources-table td{color:var(--color-text-primary, #fff);font-size:.95rem;border-bottom:1px solid rgba(255,255,255,.05)}.resources-table tr:last-child td{border-bottom:none}.investment-summary{display:flex;justify-content:flex-end}.investment-card{background:var(--color-deep-dark, #2F2E2E);border-radius:12px;padding:1.5rem 2rem;text-align:center}.investment-card.total{background:linear-gradient(135deg,#ff4b4f33,#ff4b4f1a);border:1px solid var(--color-bond-red, #FF4B4F)}.investment-label{display:block;color:var(--color-text-secondary, #888);font-size:.85rem;margin-bottom:.5rem}.investment-value{display:block;color:var(--color-bond-red, #FF4B4F);font-size:1.75rem;font-weight:700}.assumptions-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media(max-width:768px){.assumptions-grid{grid-template-columns:1fr}}.assumptions-column{background:var(--color-deep-dark, #2F2E2E);border-radius:12px;padding:1.5rem}.assumptions-column.out-of-scope{background:#ffc1070d;border:1px solid rgba(255,193,7,.2)}.assumptions-column h3{margin-bottom:1rem}.assumptions-column ul{list-style:none;padding:0;margin:0}.assumptions-column li{padding-left:1.5rem;margin-bottom:.75rem;color:var(--color-text-secondary, #ccc);font-size:.95rem;position:relative}.assumptions-column li:before{content:"✓";position:absolute;left:0;color:#4caf50}.assumptions-column.out-of-scope li:before{content:"✗";color:#ffc107}.next-steps-list{list-style:none;padding:0;margin:0;counter-reset:steps}.next-steps-list li{counter-increment:steps;display:flex;align-items:flex-start;gap:1rem;padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.05);color:var(--color-text-secondary, #ccc);font-size:1rem}.next-steps-list li:last-child{border-bottom:none}.next-steps-list li:before{content:counter(steps);display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;background:var(--color-bond-red, #FF4B4F);color:#fff;border-radius:50%;font-weight:700;font-size:.85rem;flex-shrink:0}.proposal-footer{margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center}.footer-content p{margin:0;color:var(--color-text-secondary, #888);font-size:.9rem}.footer-date{margin-top:.25rem!important;opacity:.7}.action-button{padding:.875rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease}.action-button.secondary{background:var(--color-darker-surface, #3a3939);border:1px solid rgba(255,255,255,.1);color:var(--color-text-primary, #fff)}.action-button.secondary:hover{background:var(--color-deep-dark, #2F2E2E);border-color:var(--color-bond-red, #FF4B4F)}@media(max-width:768px){.proposal-generator{padding:1rem}.section-header h1,.output-header h1{font-size:1.75rem}.back-button{position:static;margin-bottom:1.5rem}.input-mode-tabs{flex-direction:column}.proposal-footer{flex-direction:column;gap:1.5rem;text-align:center}}.app{min-height:100vh;display:flex;flex-direction:column;background:var(--color-deep-dark, #2F2E2E)}.main-nav{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:var(--color-darker-surface, #3a3939);border-bottom:1px solid var(--color-border, #4a4949);position:sticky;top:0;z-index:100}.nav-brand a{color:var(--color-text-primary, #EAEDEE);text-decoration:none;font-size:1rem;font-weight:700;display:flex;align-items:center;gap:.5rem}.brand-icon{width:28px;height:28px;background:var(--color-bond-red, #FF4B4F);border-radius:6px;display:flex;align-items:center;justify-content:center}.brand-icon svg{width:16px;height:16px;color:#fff}.nav-links{display:flex;gap:1.5rem}.nav-links a{color:var(--color-text-secondary, #999999);text-decoration:none;font-size:.875rem;font-weight:500;padding:.25rem 0;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.nav-links a:hover{color:var(--color-text-primary, #EAEDEE)}.nav-links a.active{color:var(--color-text-primary, #EAEDEE);border-bottom-color:var(--color-bond-red, #FF4B4F)}.nav-user{display:flex;align-items:center;gap:1rem}.user-email{color:var(--color-text-tertiary, #666666);font-size:.75rem}.sign-out-btn{background:transparent;color:var(--color-text-tertiary, #666666);border:1px solid var(--color-border, #4a4949);padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:500;cursor:pointer;transition:color .2s,border-color .2s}.sign-out-btn:hover{border-color:var(--color-text-tertiary, #666666);color:var(--color-text-secondary, #999999)}.main-content{flex:1;display:flex;flex-direction:column}.loading-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-deep-dark, #2F2E2E)}.loading-spinner{width:48px;height:48px;border:3px solid var(--color-border, #4a4949);border-top-color:var(--color-bond-red, #FF4B4F);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-deep-dark, #2F2E2E);padding:2rem}.login-card{background:var(--color-darker-surface, #3a3939);border:1px solid var(--color-border, #4a4949);border-radius:12px;padding:3rem;max-width:400px;width:100%;text-align:center}.login-icon{width:64px;height:64px;margin:0 auto 1.5rem;background:var(--color-bond-red, #FF4B4F);border-radius:12px;display:flex;align-items:center;justify-content:center}.login-icon svg{width:32px;height:32px;color:#fff}.login-card h1{font-size:1.5rem;font-weight:600;margin-bottom:.5rem;color:var(--color-text-primary, #EAEDEE)}.login-subtitle{color:var(--color-text-secondary, #999999);font-size:1rem;margin-bottom:2rem}.login-error{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem 1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;margin-bottom:1.5rem;text-align:left}.login-error svg{width:16px;height:16px;min-width:16px;color:#f87171;margin-top:2px}.login-error span{font-size:.875rem;color:#f87171;line-height:1.4}.login-button{width:100%;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.875rem 1.5rem;background:var(--color-deep-dark, #2F2E2E);border:1px solid var(--color-border, #4a4949);border-radius:8px;color:var(--color-text-primary, #EAEDEE);font-size:1rem;font-weight:500;cursor:pointer;transition:border-color .2s}.login-button:hover{border-color:var(--color-text-tertiary, #666666)}.login-button svg{width:20px;height:20px}.login-restriction{margin-top:1.5rem;font-size:.75rem;color:var(--color-text-tertiary, #666666)}.login-restriction span{color:var(--color-text-secondary, #999999)}.login-spinner{width:24px;height:24px;border:2px solid var(--color-border, #4a4949);border-top-color:var(--color-bond-red, #FF4B4F);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 1rem}@media(max-width:640px){.main-nav{padding:.75rem 1rem}.nav-brand a{font-size:.875rem}.user-email{display:none}.login-card{padding:2rem}}
