:root{--bg: #0b1222;--surface: #112240;--surface-hover: #1a3358;--surface-elevated: #1a2744;--accent: #64ffda;--accent-dim: rgba(100, 255, 218, .1);--text-primary: #ccd6f6;--text-secondary: #8892b0;--text-heading: #e6f1ff;--danger: #ff6b6b;--warning: #ffd93d;--border: #233554;--industry-cybersecurity: #ff6b6b;--industry-ai: #a78bfa;--industry-cloud: #60a5fa;--industry-fintech: #34d399;--industry-healthcare: #f472b6;--industry-energy: #fbbf24;--industry-ics-ot: #2dd4bf;--industry-iot: #fb923c;--industry-manufacturing: #94a3b8;--industry-legal: #a3e635;--industry-transportation: #38bdf8;--industry-telecom: #c084fc;--industry-biotech: #f0abfc;--industry-retail: #fca5a5;--industry-cybersecurity-dim: rgba(255, 107, 107, .1);--industry-ai-dim: rgba(167, 139, 250, .1);--industry-cloud-dim: rgba(96, 165, 250, .1);--industry-fintech-dim: rgba(52, 211, 153, .1);--industry-healthcare-dim: rgba(244, 114, 182, .1);--industry-energy-dim: rgba(251, 191, 36, .1);--industry-ics-ot-dim: rgba(45, 212, 191, .1);--industry-iot-dim: rgba(251, 146, 60, .1);--industry-manufacturing-dim: rgba(148, 163, 184, .1);--industry-legal-dim: rgba(163, 230, 53, .1);--industry-transportation-dim: rgba(56, 189, 248, .1);--industry-telecom-dim: rgba(192, 132, 252, .1);--industry-biotech-dim: rgba(240, 171, 252, .1);--industry-retail-dim: rgba(252, 165, 165, .1);--radius-sm: 6px;--radius: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--shadow-md: 0 4px 16px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .5);--shadow-glow: 0 0 20px rgba(100, 255, 218, .15);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s ease;--font-sans: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background-color:var(--bg);color:var(--text-primary);line-height:1.6;min-height:100vh}[dir=rtl]{direction:rtl;text-align:right}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}#root{min-height:100vh}[data-industry=cybersecurity]{--industry-color: var(--industry-cybersecurity);--industry-color-dim: var(--industry-cybersecurity-dim)}[data-industry=artificial_intelligence]{--industry-color: var(--industry-ai);--industry-color-dim: var(--industry-ai-dim)}[data-industry=cloud_computing]{--industry-color: var(--industry-cloud);--industry-color-dim: var(--industry-cloud-dim)}[data-industry=fintech]{--industry-color: var(--industry-fintech);--industry-color-dim: var(--industry-fintech-dim)}[data-industry=healthcare]{--industry-color: var(--industry-healthcare);--industry-color-dim: var(--industry-healthcare-dim)}[data-industry=energy]{--industry-color: var(--industry-energy);--industry-color-dim: var(--industry-energy-dim)}[data-industry=ics_ot]{--industry-color: var(--industry-ics-ot);--industry-color-dim: var(--industry-ics-ot-dim)}[data-industry=iot]{--industry-color: var(--industry-iot);--industry-color-dim: var(--industry-iot-dim)}[data-industry=manufacturing]{--industry-color: var(--industry-manufacturing);--industry-color-dim: var(--industry-manufacturing-dim)}[data-industry=legal]{--industry-color: var(--industry-legal);--industry-color-dim: var(--industry-legal-dim)}[data-industry=transportation]{--industry-color: var(--industry-transportation);--industry-color-dim: var(--industry-transportation-dim)}[data-industry=telecommunications]{--industry-color: var(--industry-telecom);--industry-color-dim: var(--industry-telecom-dim)}[data-industry=biotech_pharma]{--industry-color: var(--industry-biotech);--industry-color-dim: var(--industry-biotech-dim)}[data-industry=retail_ecommerce]{--industry-color: var(--industry-retail);--industry-color-dim: var(--industry-retail-dim)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes slideInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.filter-bar{display:flex;gap:.5rem;overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent;-webkit-overflow-scrolling:touch;mask-image:linear-gradient(to right,transparent 0,black .5rem,black calc(100% - .5rem),transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent 0,black .5rem,black calc(100% - .5rem),transparent 100%);padding:1.25rem .5rem}.filter-bar::-webkit-scrollbar{height:4px}.filter-bar::-webkit-scrollbar-track{background:transparent}.filter-bar::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full)}.filter-pill{flex-shrink:0;padding:.5rem 1rem;border:1px solid var(--border);border-radius:var(--radius-full);background:transparent;color:var(--text-secondary);font-size:.8125rem;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;min-height:36px;display:flex;align-items:center;gap:.375rem}.pill-count{display:inline-flex;align-items:center;justify-content:center;font-size:.6875rem;background:var(--surface-hover);border-radius:var(--radius-full);padding:.125rem .5rem;margin-inline-start:.25rem;font-weight:600;min-width:1.25rem}@media(max-width:640px){.filter-pill{min-height:44px;padding:.5rem .875rem;font-size:.8125rem}}@media(hover:hover){.filter-pill:hover{border-color:var(--industry-color, var(--accent));color:var(--text-primary);background:var(--industry-color-dim, var(--accent-dim))}}.filter-pill:active{transform:scale(.96)}.filter-pill.active{background:var(--industry-color-dim, var(--accent-dim));border-color:var(--industry-color, var(--accent));color:var(--industry-color, var(--accent))}.filter-pill:first-child.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.date-range-picker{padding:1rem 0;border-bottom:1px solid var(--border)}.date-range-content{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.date-presets{display:flex;gap:.5rem;flex-wrap:wrap}.preset-chip{flex-shrink:0;padding:.5rem 1rem;border:1px solid var(--border);border-radius:var(--radius-full);background:transparent;color:var(--text-secondary);font-size:.8125rem;font-weight:500;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;min-height:36px;display:flex;align-items:center}@media(max-width:640px){.preset-chip{min-height:44px;padding:.5rem .875rem}}@media(hover:hover){.preset-chip:hover{border-color:var(--accent);color:var(--text-primary);background:var(--accent-dim)}}.preset-chip:active{transform:scale(.96)}.preset-chip.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.date-inputs{display:flex;align-items:center;gap:.75rem;margin-inline-start:auto}.date-input{padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);font-size:.8125rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);min-height:36px}@media(max-width:640px){.date-input{min-height:44px;font-size:.875rem}}.date-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.date-input::-webkit-calendar-picker-indicator{filter:invert(.7);cursor:pointer}.date-separator{color:var(--text-secondary);font-size:.875rem;-webkit-user-select:none;user-select:none}.date-error{margin-top:.5rem;color:var(--danger);font-size:.75rem;font-weight:500}@media(max-width:640px){.date-range-content{flex-direction:column;align-items:stretch;gap:1rem}.date-inputs{margin-inline-start:0;justify-content:space-between}.date-input{flex:1}}.news-card{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--industry-color, var(--accent));border-radius:var(--radius-lg);padding:1.25rem 1.25rem 1.25rem 1.5rem;cursor:pointer;transition:all var(--transition-normal);display:flex;flex-direction:column;gap:.625rem;animation:slideInUp var(--transition-slow) both;overflow:hidden;min-width:0}@media(hover:hover){.news-card:hover{transform:translateY(-4px);border-color:var(--industry-color, var(--accent));box-shadow:var(--shadow-lg)}}.news-card:active{transform:scale(.98)}.news-card-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-wrap:wrap}.news-card-badge{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.125rem .5rem;border-radius:var(--radius-full)}.badge-latest{background:var(--accent-dim);color:var(--accent)}.badge-archived{background:#8892b026;color:var(--text-secondary)}.news-card-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.news-card-source{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--industry-color, var(--accent));padding:.1875rem .5rem;background:var(--industry-color-dim, var(--accent-dim));border-radius:var(--radius-sm)}.news-card-industry{font-size:.625rem;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);padding:.125rem .375rem;border:1px solid var(--border);border-radius:var(--radius-sm)}.news-card-time{font-size:.6875rem;color:var(--text-secondary);white-space:nowrap}.news-card-title{font-size:1rem;font-weight:600;color:var(--text-heading);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;overflow-wrap:anywhere}.news-card-snippet{font-size:.8125rem;color:var(--text-secondary);line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;overflow-wrap:anywhere}@media(max-width:640px){.news-card{padding:1rem 1rem 1rem 1.25rem;gap:.5rem}.news-card-title{font-size:.9375rem}.news-card-snippet{-webkit-line-clamp:2;font-size:.8125rem}}.card-grid{display:grid;gap:1rem;grid-template-columns:1fr}@media(min-width:640px){.card-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem}}@media(min-width:1024px){.card-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem}}.card-skeleton{background:linear-gradient(90deg,var(--surface) 25%,var(--surface-hover) 50%,var(--surface) 75%);background-size:200% 100%;border:1px solid var(--border);border-radius:var(--radius-lg);height:180px;animation:shimmer 1.5s ease-in-out infinite}.card-grid-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;color:var(--text-secondary);font-size:1rem;gap:.75rem;text-align:center;padding:2rem}.card-grid-empty:before{content:"📡";font-size:2.5rem;opacity:.5}.pagination{display:flex;align-items:center;justify-content:center;gap:.375rem;padding-top:1.5rem;padding-bottom:.5rem}.pagination-btn{min-width:40px;min-height:40px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius);background:transparent;color:var(--text-secondary);font-family:var(--font-sans);font-size:.9375rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);position:relative;overflow:hidden}.pagination-btn:before{content:"";position:absolute;inset:0;background:var(--accent-dim);opacity:0;transition:opacity var(--transition-fast)}@media(hover:hover){.pagination-btn:hover:not(:disabled){border-color:var(--accent);color:var(--text-primary)}.pagination-btn:hover:not(:disabled):before{opacity:1}}.pagination-btn:active:not(:disabled){transform:scale(.95)}.pagination-btn:disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.pagination-btn.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent);font-weight:600;box-shadow:0 0 12px #64ffda33}.pagination-btn.active:before{opacity:1}.pagination-arrow{font-size:1.25rem;font-weight:400;line-height:1}.pagination-ellipsis{color:var(--text-secondary);padding:0 .25rem;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;font-size:1rem;min-width:24px;opacity:.6}@media(max-width:640px){.pagination-btn{min-width:44px;min-height:44px;font-size:.875rem}.pagination-arrow{font-size:1.125rem}.pagination{gap:.25rem}}.view-content{display:flex;flex-direction:column;gap:1.5rem}.view-tabs{display:flex;gap:.5rem;border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:thin}.view-tab{padding:.75rem 1.5rem;background:transparent;border:none;color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;position:relative;white-space:nowrap;transition:color .2s ease}.view-tab:hover{color:var(--text-primary)}.view-tab.active{color:var(--accent)}.view-tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--accent)}@media(max-width:639px){.view-tabs{gap:0;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory}.view-tab{padding:.625rem 1rem;font-size:.8125rem;scroll-snap-align:start;min-height:44px;display:flex;align-items:center}.view-tab-content{min-height:300px}.tab-panel{gap:1rem}.tab-summary{font-size:.9375rem}.risk-item,.action-item{padding:.875rem}.risk-header,.action-header{flex-wrap:wrap;gap:.5rem}.view-sources ol{padding-left:1.25rem}}.view-tab-content{min-height:400px}.tab-panel{display:flex;flex-direction:column;gap:1.5rem;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.tab-summary{font-size:1rem;line-height:1.7;color:var(--text-primary)}.tab-panel h4{font-size:1rem;font-weight:600;color:var(--text-heading);margin-top:.5rem}.insights-list{list-style:none;display:flex;flex-direction:column;gap:.75rem;padding-left:0}.insights-list li{padding-left:1.5rem;position:relative;line-height:1.6;color:var(--text-primary)}.insights-list li:before{content:"→";position:absolute;left:0;color:var(--accent);font-weight:700}.technical-details{display:flex;flex-direction:column;gap:1rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-item dt{font-weight:600;color:var(--accent);font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.detail-item dd{margin:0;color:var(--text-primary);line-height:1.6}.risks-list,.actions-list{display:flex;flex-direction:column;gap:1rem}.risk-item,.action-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.risk-header,.action-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem}.risk-header h4,.action-header h4{margin:0;font-size:1rem;color:var(--text-heading)}.severity-badge,.effort-badge{padding:.25rem .75rem;border-radius:var(--radius);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.severity-badge.severity-high{background:#ff6b6b33;color:var(--danger)}.severity-badge.severity-medium{background:#ffd93d33;color:var(--warning)}.severity-badge.severity-low,.effort-badge.effort-S{background:var(--accent-dim);color:var(--accent)}.effort-badge.effort-M{background:#ffd93d33;color:var(--warning)}.effort-badge.effort-L{background:#ff6b6b33;color:var(--danger)}.risk-item p,.action-item p{margin:0;color:var(--text-primary);line-height:1.6}.citation{margin-left:.125rem}.citation a{color:var(--accent);text-decoration:none;font-weight:600}.citation a:hover{text-decoration:underline}.view-sources{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border)}.view-sources h4{font-size:1rem;font-weight:600;color:var(--text-heading);margin-bottom:1rem}.view-sources ol{display:flex;flex-direction:column;gap:.5rem;padding-left:1.5rem}.view-sources li{color:var(--text-secondary);line-height:1.6}.view-sources a{color:var(--accent);word-break:break-all}.modal-overlay{position:fixed;inset:0;background:#0b1222eb;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease}@media(max-width:639px){.modal-overlay{align-items:flex-end;padding:0}}.modal-panel{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;animation:scaleIn var(--transition-normal) both;box-shadow:var(--shadow-lg)}@media(max-width:639px){.modal-panel{max-width:100%;max-height:95vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0;animation:slideUp .3s ease both}}.modal-swipe-handle{display:none}@media(max-width:639px){.modal-swipe-handle{display:flex;justify-content:center;padding:.5rem 0 0}.modal-swipe-handle:after{content:"";width:32px;height:4px;background:var(--border);border-radius:var(--radius-full)}}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border)}.modal-header h2{font-size:1.125rem;font-weight:600;color:var(--text-heading);line-height:1.4;margin:0}.modal-header-info{display:flex;flex-direction:column;gap:.5rem;min-width:0;flex:1}.source-link-btn{display:inline-flex;align-items:center;gap:.25rem;font-size:.8125rem;font-weight:500;color:var(--accent);text-decoration:none;transition:all var(--transition-fast);width:fit-content}.source-link-btn:hover{text-decoration:underline;filter:brightness(1.2)}@media(max-width:639px){.modal-header{padding:1rem 1.25rem}.modal-header h2{font-size:1rem}.source-link-btn{font-size:.75rem}}.modal-close{background:var(--surface);border:1px solid var(--border);color:var(--text-secondary);font-size:1.25rem;line-height:1;cursor:pointer;padding:0;width:2.25rem;height:2.25rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-fast);border-radius:var(--radius)}.modal-close:hover{color:var(--text-primary);border-color:var(--accent)}.modal-body{padding:1.5rem;overflow-y:auto;flex:1;-webkit-overflow-scrolling:touch}@media(max-width:639px){.modal-body{padding:1rem 1.25rem}}.modal-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.8125rem;font-weight:600;color:var(--text-heading);text-transform:uppercase;letter-spacing:.04em}.form-group select{padding:.75rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:1rem;font-family:var(--font-sans);cursor:pointer;transition:border-color var(--transition-fast);min-height:44px;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%238892b0' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center}[dir=rtl] .form-group select{background-position:left .75rem center}.form-group select:hover,.form-group select:focus{outline:none;border-color:var(--accent)}.language-toggle{display:flex;gap:.5rem}.lang-btn{flex:1;padding:.75rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);font-size:1rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);min-height:44px}.lang-btn:hover{border-color:var(--accent);color:var(--text-primary)}.lang-btn.active{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.btn-primary,.btn-secondary{padding:.875rem 1.5rem;border:none;border-radius:var(--radius);font-size:1rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);min-height:48px}.btn-primary{background:var(--accent);color:var(--bg)}@media(hover:hover){.btn-primary:hover{filter:brightness(1.1);transform:translateY(-1px);box-shadow:var(--shadow-glow)}}.btn-primary:active{transform:scale(.98)}.btn-secondary{background:var(--surface);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{border-color:var(--accent)}.modal-loading{display:flex;flex-direction:column;gap:1.25rem;align-items:center;padding:2rem 0}.progress-info{display:flex;justify-content:space-between;width:100%;font-size:.875rem}.progress-step{color:var(--text-primary);font-weight:500;text-transform:capitalize}.progress-percent{color:var(--accent);font-weight:600;font-family:var(--font-mono)}.progress-bar{width:100%;height:6px;background:var(--surface);border-radius:var(--radius-full);overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),#4fd1c5);transition:width .5s ease;border-radius:var(--radius-full)}.modal-error{display:flex;flex-direction:column;gap:1.25rem;align-items:center;padding:2rem 0;text-align:center}.modal-error p{color:var(--danger);font-size:1rem}.modal-view{animation:fadeIn .3s ease}.view-actions{display:flex;justify-content:flex-end;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.favorite-btn,.favorite-btn-signin{padding:.5rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text-secondary);font-size:1.25rem;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);min-height:40px;display:flex;align-items:center;justify-content:center}.favorite-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent);transform:scale(1.05)}.favorite-btn.favorited{color:var(--accent);border-color:var(--accent);background:var(--accent-dim)}.favorite-btn:disabled{opacity:.5;cursor:not-allowed}.favorite-btn-signin{font-size:.8125rem;font-weight:600;color:var(--text-primary)}.favorite-btn-signin:hover{border-color:var(--accent);color:var(--accent)}.search-bar{position:relative;display:flex;align-items:center;gap:.75rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:.875rem 1rem;transition:all var(--transition-fast);margin-bottom:1.5rem}.search-bar:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.search-icon{width:1.25rem;height:1.25rem;color:var(--text-secondary);flex-shrink:0;transition:color var(--transition-fast)}.search-bar:focus-within .search-icon{color:var(--accent)}.search-input{flex:1;background:none;border:none;outline:none;color:var(--text-primary);font-family:var(--font-sans);font-size:.9375rem;min-width:0}.search-input::placeholder{color:var(--text-secondary)}.search-clear{background:none;border:none;padding:.25rem;cursor:pointer;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast);flex-shrink:0}.search-clear svg{width:1rem;height:1rem}.search-clear:hover{background:var(--surface-hover);color:var(--text-primary)}.search-spinner{width:1rem;height:1rem;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}[dir=rtl] .search-bar{flex-direction:row-reverse}[dir=rtl] .search-input{text-align:right}@media(max-width:640px){.search-bar{padding:.75rem .875rem}.search-input{font-size:.875rem}.search-icon{width:1.125rem;height:1.125rem}}.auth-modal-overlay{position:fixed;inset:0;background:#0b1222eb;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease}.auth-modal-panel{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:420px;animation:scaleIn var(--transition-normal) both;box-shadow:var(--shadow-lg)}.auth-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border)}.auth-modal-header h2{font-size:1.25rem;font-weight:600;color:var(--text-heading);margin:0}.auth-modal-close{background:var(--surface);border:1px solid var(--border);color:var(--text-secondary);font-size:1.5rem;line-height:1;cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-fast);border-radius:var(--radius)}.auth-modal-close:hover{color:var(--text-primary);border-color:var(--accent)}.auth-modal-body{padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.auth-error{padding:.875rem 1rem;background:#ff6b6b1a;border:1px solid var(--danger);border-radius:var(--radius);color:var(--danger);font-size:.875rem;font-weight:500}.auth-form-group{display:flex;flex-direction:column;gap:.5rem}.auth-form-group label{font-size:.8125rem;font-weight:600;color:var(--text-heading);text-transform:uppercase;letter-spacing:.04em}.auth-form-group input{padding:.875rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:1rem;font-family:var(--font-sans);transition:border-color var(--transition-fast);min-height:48px}.auth-form-group input::placeholder{color:var(--text-secondary);opacity:.6}.auth-form-group input:hover,.auth-form-group input:focus{outline:none;border-color:var(--accent)}.auth-form-group input:disabled{opacity:.5;cursor:not-allowed}.auth-submit-btn{padding:.875rem 1.5rem;background:var(--accent);color:var(--bg);border:none;border-radius:var(--radius);font-size:1rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);min-height:48px;margin-top:.5rem}.auth-submit-btn:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:var(--shadow-glow)}.auth-submit-btn:active:not(:disabled){transform:scale(.98)}.auth-submit-btn:disabled{opacity:.6;cursor:not-allowed}.auth-toggle{text-align:center;padding-top:.5rem;border-top:1px solid var(--border)}.auth-toggle p{margin:0;font-size:.875rem;color:var(--text-secondary)}.auth-toggle-link{background:none;border:none;color:var(--accent);font-size:.875rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;padding:0;text-decoration:underline;transition:filter var(--transition-fast)}.auth-toggle-link:hover:not(:disabled){filter:brightness(1.2)}.auth-toggle-link:disabled{opacity:.5;cursor:not-allowed}@media(max-width:639px){.auth-modal-overlay{align-items:flex-end;padding:0}.auth-modal-panel{max-width:100%;border-radius:var(--radius-xl) var(--radius-xl) 0 0;animation:slideUp .3s ease both}.auth-modal-header{padding:1.25rem}.auth-modal-header h2{font-size:1.125rem}.auth-modal-body{padding:1.25rem}}.insights-container{max-width:1400px;margin:0 auto}.insights-title{font-size:1.75rem;font-weight:700;color:var(--text-heading);margin:0 0 1.5rem;letter-spacing:-.02em}.insights-grid{display:grid;gap:1.25rem;grid-template-columns:1fr}@media(min-width:640px){.insights-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.insights-grid{grid-template-columns:repeat(3,1fr)}}.insight-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem;display:flex;flex-direction:column;gap:.875rem;transition:all var(--transition-fast);position:relative;overflow:hidden}.insight-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--industry-color, var(--accent));opacity:.8}.insight-card:hover{border-color:var(--industry-color, var(--accent));transform:translateY(-2px);box-shadow:var(--shadow-md)}.insight-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.insight-card-title{font-size:1rem;font-weight:600;color:var(--text-heading);line-height:1.4;margin:0;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.insight-remove-btn{background:var(--surface-hover);border:1px solid var(--border);color:var(--text-secondary);font-size:1.25rem;line-height:1;cursor:pointer;padding:0;width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-fast);border-radius:var(--radius)}.insight-remove-btn:hover{color:var(--danger);border-color:var(--danger);background:#ff6b6b1a}.insight-card-meta{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.75rem;color:var(--text-secondary);text-transform:capitalize}.insight-meta-item{font-weight:500}.insight-meta-separator{opacity:.5}.insight-card-source{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding-top:.5rem;border-top:1px solid var(--border)}.source-domain{font-size:.75rem;color:var(--industry-color, var(--accent));font-weight:600;font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.insight-date{font-size:.75rem;color:var(--text-secondary);white-space:nowrap}.insight-view-btn{padding:.625rem 1rem;background:var(--accent-dim);border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent);font-size:.875rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);width:100%}.insight-view-btn:hover{background:var(--accent);color:var(--bg);transform:translateY(-1px)}.insight-card-skeleton{background:linear-gradient(90deg,var(--surface) 25%,var(--surface-hover) 50%,var(--surface) 75%);background-size:200% 100%;border:1px solid var(--border);border-radius:var(--radius-lg);height:200px;animation:shimmer 1.5s ease-in-out infinite}.insights-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;color:var(--text-secondary);font-size:1rem;text-align:center;padding:2rem}.insights-empty:before{content:"★";font-size:3rem;opacity:.3;margin-bottom:1rem}.error-message{color:var(--danger)}.insight-modal-overlay{position:fixed;inset:0;background:#0b1222eb;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease}@media(max-width:639px){.insight-modal-overlay{align-items:flex-end;padding:0}}.insight-modal-panel{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;animation:scaleIn var(--transition-normal) both;box-shadow:var(--shadow-lg)}@media(max-width:639px){.insight-modal-panel{max-width:100%;max-height:95vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0;animation:slideUp .3s ease both}}.insight-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border)}.insight-modal-header-info{display:flex;flex-direction:column;gap:.5rem;min-width:0;flex:1}.insight-modal-header h2{font-size:1.125rem;font-weight:600;color:var(--text-heading);line-height:1.4;margin:0}.insight-source-link{display:inline-flex;align-items:center;gap:.25rem;font-size:.8125rem;font-weight:500;color:var(--accent);text-decoration:none;transition:all var(--transition-fast);width:fit-content}.insight-source-link:hover{text-decoration:underline;filter:brightness(1.2)}.insight-modal-close{background:var(--surface);border:1px solid var(--border);color:var(--text-secondary);font-size:1.25rem;line-height:1;cursor:pointer;padding:0;width:2.25rem;height:2.25rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all var(--transition-fast);border-radius:var(--radius)}.insight-modal-close:hover{color:var(--text-primary);border-color:var(--accent)}.insight-modal-body{padding:1.5rem;overflow-y:auto;flex:1;-webkit-overflow-scrolling:touch}@media(max-width:639px){.insight-modal-header{padding:1rem 1.25rem}.insight-modal-header h2{font-size:1rem}.insight-source-link{font-size:.75rem}.insight-modal-body{padding:1rem 1.25rem}}@keyframes slideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.app{min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden}.app-header{background:linear-gradient(135deg,var(--surface) 0%,rgba(100,255,218,.02) 50%,var(--bg) 100%);border-bottom:1px solid var(--border);padding:1.5rem 1rem;position:sticky;top:0;z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.header-content{max-width:1400px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:2rem}.app-header h1{font-size:1.5rem;font-weight:700;color:var(--text-heading);margin:0;letter-spacing:-.02em}.header-accent{color:var(--accent);font-weight:400;font-style:italic}.header-tagline{margin:0;font-size:.6875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.15em}.header-nav{display:flex;gap:.25rem;margin-top:.75rem}.nav-tab{background:none;border:none;padding:.5rem 1rem;color:var(--text-secondary);font-family:var(--font-sans);font-size:.8125rem;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;transition:all var(--transition-fast)}.nav-tab:hover{color:var(--text-primary)}.nav-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.app-main{flex:1;padding:1.5rem 1rem}.app-container{max-width:1400px;margin:0 auto}@media(max-width:640px){.app-header{padding:1rem}.header-content{flex-direction:column;text-align:center;gap:.25rem}.app-header h1{font-size:1.25rem}.header-tagline{font-size:.625rem}.header-nav{justify-content:center;width:100%}.nav-tab{padding:.5rem .75rem;font-size:.75rem}.app-main{padding:1rem .75rem}}.search-result-count{font-size:.875rem;color:var(--text-secondary);margin-bottom:1rem;padding:0 .25rem}.search-empty-state{text-align:center;padding:3rem 1rem;color:var(--text-secondary);font-size:.9375rem}.new-articles-banner{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--accent-dim),rgba(100,255,218,.05));border:1px solid var(--accent);border-radius:var(--radius);margin:0 auto 1rem;max-width:1200px;cursor:pointer;animation:slideDown var(--transition-normal) both;transition:all var(--transition-fast);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.new-articles-banner:hover{background:var(--accent-dim);transform:translateY(-1px)}.new-articles-banner span:first-child{color:var(--accent);font-weight:600;font-size:.875rem}.banner-action{color:var(--text-secondary);font-size:.8125rem}@media(max-width:640px){.new-articles-banner{margin:0 0 1rem;border-radius:0;border-left:none;border-right:none}}.header-auth,.auth-user-info{display:flex;align-items:center;gap:.75rem}.user-display{font-size:.875rem;color:var(--text-primary);font-weight:500;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-btn{padding:.5rem 1rem;border:none;border-radius:var(--radius);font-size:.8125rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;min-height:36px}.auth-btn-primary{background:var(--accent);color:var(--bg)}.auth-btn-primary:hover{filter:brightness(1.1);transform:translateY(-1px)}.auth-btn-secondary{background:var(--surface);color:var(--text-primary);border:1px solid var(--border)}.auth-btn-secondary:hover{border-color:var(--accent);color:var(--accent)}@media(max-width:640px){.header-content{gap:1rem}.user-display{display:none}.auth-btn{padding:.5rem .75rem;font-size:.75rem;min-height:32px}}
