:root{--brand-primary: #667eea;--brand-secondary: #764ba2;--brand-gradient: linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-secondary) 100%);--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-tertiary: #f3f4f6;--bg-hover: #f9fafb;--bg-active: #e5e7eb;--bg-card: #ffffff;--bg-input: #ffffff;--bg-modal-overlay: rgba(0, 0, 0, .5);--text-primary: #1f2937;--text-secondary: #374151;--text-tertiary: #6b7280;--text-muted: #9ca3af;--text-inverse: #ffffff;--text-link: var(--brand-primary);--text-link-hover: var(--brand-secondary);--border-light: #e5e7eb;--border-medium: #d1d5db;--border-dark: #9ca3af;--border-focus: var(--brand-primary);--color-success: #10b981;--color-success-bg: #d1fae5;--color-success-text: #065f46;--color-warning: #f59e0b;--color-warning-bg: #fef3c7;--color-warning-text: #92400e;--color-error: #ef4444;--color-error-bg: #fee2e2;--color-error-text: #991b1b;--color-info: #3b82f6;--color-info-bg: #dbeafe;--color-info-text: #1e40af;--credibility-very-high: #10b981;--credibility-high: #22c55e;--credibility-medium: #eab308;--credibility-low: #f97316;--credibility-very-low: #ef4444;--credibility-unknown: #6b7280;--bias-left: #3b82f6;--bias-lean-left: #60a5fa;--bias-center: #8b5cf6;--bias-lean-right: #f87171;--bias-right: #ef4444;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", "Fira Code", "Fira Mono", Menlo, Monaco, "Courier New", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.75;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-2xl: 16px;--radius-full: 9999px;--border-width: 1px;--border-width-2: 2px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 2px 4px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 6px rgba(0, 0, 0, .1);--shadow-xl: 0 10px 15px rgba(0, 0, 0, .1);--shadow-2xl: 0 25px 50px rgba(0, 0, 0, .15);--shadow-inner: inset 0 2px 4px rgba(0, 0, 0, .05);--shadow-focus: 0 0 0 3px rgba(102, 126, 234, .2);--shadow-card: 0 2px 10px rgba(0, 0, 0, .08);--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--transition-colors: color .2s ease, background-color .2s ease, border-color .2s ease;--z-dropdown: 100;--z-sticky: 200;--z-modal-backdrop: 300;--z-modal: 400;--z-popover: 500;--z-tooltip: 600;--z-toast: 700;--card-padding: var(--space-4);--card-radius: var(--radius-lg);--card-shadow: var(--shadow-card);--card-border: var(--border-light);--btn-padding-x: var(--space-4);--btn-padding-y: var(--space-2);--btn-radius: var(--radius-md);--btn-font-weight: var(--font-medium);--btn-primary-bg: #2563eb;--btn-primary-hover: #1d4ed8;--btn-primary-active: #1e40af;--btn-primary-text: #ffffff;--btn-secondary-bg: #f3f4f6;--btn-secondary-hover: #e5e7eb;--btn-secondary-active: #d1d5db;--btn-secondary-text: #374151;--btn-success-bg: #10b981;--btn-success-hover: #059669;--btn-success-active: #047857;--btn-success-text: #ffffff;--btn-danger-bg: #ef4444;--btn-danger-hover: #dc2626;--btn-danger-active: #b91c1c;--btn-danger-text: #ffffff;--btn-ghost-bg: transparent;--btn-ghost-hover: #f3f4f6;--btn-ghost-active: #e5e7eb;--btn-ghost-text: #374151;--input-padding-x: var(--space-3);--input-padding-y: var(--space-2);--input-radius: var(--radius-md);--input-border: var(--border-medium);--input-focus-border: var(--brand-primary);--badge-padding-x: var(--space-2);--badge-padding-y: var(--space-1);--badge-radius: var(--radius-sm);--badge-font-size: var(--text-xs)}[data-theme=dark],.dark-mode{--bg-primary: #121212;--bg-secondary: #1e293b;--bg-tertiary: #334155;--bg-hover: #374151;--bg-active: #4b5563;--bg-card: #1f2937;--bg-input: #374151;--text-primary: #f3f4f6;--text-secondary: #e5e7eb;--text-tertiary: #9ca3af;--text-muted: #6b7280;--border-light: #374151;--border-medium: #4b5563;--border-dark: #6b7280;--shadow-md: 0 2px 4px rgba(0, 0, 0, .3);--shadow-lg: 0 4px 6px rgba(0, 0, 0, .3);--shadow-card: 0 2px 10px rgba(0, 0, 0, .3)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-muted{color:var(--text-muted)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.text-info{color:var(--color-info)}.bg-primary{background-color:var(--bg-primary)}.bg-secondary{background-color:var(--bg-secondary)}.bg-tertiary{background-color:var(--bg-tertiary)}.bg-success{background-color:var(--color-success-bg)}.bg-warning{background-color:var(--color-warning-bg)}.bg-error{background-color:var(--color-error-bg)}.bg-info{background-color:var(--color-info-bg)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-card{box-shadow:var(--shadow-card)}.p-0{padding:var(--space-0)}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.m-0{margin:var(--space-0)}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-3{margin:var(--space-3)}.m-4{margin:var(--space-4)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.font-normal{font-weight:var(--font-normal)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.flex-row{flex-direction:row}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--card-radius);padding:var(--card-padding);box-shadow:var(--card-shadow)}.badge{display:inline-flex;align-items:center;padding:var(--badge-padding-y) var(--badge-padding-x);font-size:var(--badge-font-size);font-weight:var(--font-medium);border-radius:var(--badge-radius);white-space:nowrap}.badge-success{background:var(--color-success-bg);color:var(--color-success-text)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning-text)}.badge-error{background:var(--color-error-bg);color:var(--color-error-text)}.badge-info{background:var(--color-info-bg);color:var(--color-info-text)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--btn-padding-y) var(--btn-padding-x);font-size:var(--text-sm);font-weight:var(--btn-font-weight);border-radius:var(--btn-radius);border:none;cursor:pointer;transition:all var(--transition-fast);text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn-xs{padding:var(--space-1) var(--space-2);font-size:var(--text-xs)}.btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--text-sm)}.btn-lg{padding:var(--space-3) var(--space-6);font-size:var(--text-base)}.btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.btn-primary:hover:not(:disabled){background:var(--btn-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary:active:not(:disabled){background:var(--btn-primary-active);transform:translateY(0)}.btn-secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-text)}.btn-secondary:hover:not(:disabled){background:var(--btn-secondary-hover)}.btn-secondary:active:not(:disabled){background:var(--btn-secondary-active)}.btn-success{background:var(--btn-success-bg);color:var(--btn-success-text)}.btn-success:hover:not(:disabled){background:var(--btn-success-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-success:active:not(:disabled){background:var(--btn-success-active);transform:translateY(0)}.btn-danger{background:var(--btn-danger-bg);color:var(--btn-danger-text)}.btn-danger:hover:not(:disabled){background:var(--btn-danger-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-danger:active:not(:disabled){background:var(--btn-danger-active);transform:translateY(0)}.btn-ghost{background:var(--btn-ghost-bg);color:var(--btn-ghost-text)}.btn-ghost:hover:not(:disabled){background:var(--btn-ghost-hover)}.btn-ghost:active:not(:disabled){background:var(--btn-ghost-active)}.btn-outline{background:transparent;border:1px solid var(--border-medium);color:var(--text-secondary)}.btn-outline:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-dark)}.btn-outline-primary{background:transparent;border:1px solid var(--btn-primary-bg);color:var(--btn-primary-bg)}.btn-outline-primary:hover:not(:disabled){background:var(--btn-primary-bg);color:var(--btn-primary-text)}.btn-outline-danger{background:transparent;border:1px solid var(--btn-danger-bg);color:var(--btn-danger-bg)}.btn-outline-danger:hover:not(:disabled){background:var(--btn-danger-bg);color:var(--btn-danger-text)}.btn-icon{padding:var(--space-2);border-radius:var(--radius-md)}.btn-icon-sm{padding:var(--space-1)}.btn-icon-lg{padding:var(--space-3)}.btn-loading{position:relative;color:transparent!important}.btn-loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:btn-spin .6s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}.input{width:100%;padding:var(--input-padding-y) var(--input-padding-x);font-size:var(--text-sm);border:1px solid var(--input-border);border-radius:var(--input-radius);background:var(--bg-input);color:var(--text-primary);transition:var(--transition-fast)}.input:focus{outline:none;border-color:var(--input-focus-border);box-shadow:var(--shadow-focus)}.input::-moz-placeholder{color:var(--text-muted)}.input::placeholder{color:var(--text-muted)}.transition{transition:var(--transition-normal)}.transition-fast{transition:var(--transition-fast)}.transition-slow{transition:var(--transition-slow)}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-light);border-top-color:var(--brand-primary);border-radius:var(--radius-full);animation:spin 1s linear infinite}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8);gap:var(--space-4)}.loading-text{color:var(--text-tertiary);font-size:var(--text-sm)}.empty-state-icon{font-size:3rem;margin-bottom:var(--space-4);opacity:.6}.empty-state-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-2)}.empty-state-description{color:var(--text-tertiary);font-size:var(--text-sm);max-width:400px;margin-bottom:var(--space-6)}.empty-state-action{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);background:var(--brand-gradient);color:var(--text-inverse);border-radius:var(--radius-lg);font-weight:var(--font-medium);text-decoration:none;transition:var(--transition-normal)}.empty-state-action:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.error-box{background:var(--color-error-bg);border:1px solid var(--color-error);border-radius:var(--radius-lg);padding:var(--space-6);text-align:center}.error-box h3{color:var(--color-error-text);margin-bottom:var(--space-2)}.error-box p{color:var(--color-error-text);opacity:.8;margin-bottom:var(--space-4)}.btn-retry{background:var(--color-error);color:#fff;border:none;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast)}.btn-retry:hover{opacity:.9}.page-header{text-align:center;margin-bottom:var(--space-8)}.page-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--space-2)}.page-subtitle{color:var(--text-tertiary);font-size:var(--text-lg)}.tabs{display:flex;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-6);border-bottom:2px solid var(--border-light);padding-bottom:0}.tab{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-size:var(--text-base);font-weight:var(--font-medium);color:var(--text-tertiary);background:none;border:none;border-bottom:3px solid transparent;margin-bottom:-2px;cursor:pointer;transition:var(--transition-fast)}.tab:hover{color:var(--brand-primary);background:#667eea0d}.tab.active{color:var(--brand-primary);border-bottom-color:var(--brand-primary)}.tab-count{background:var(--bg-tertiary);color:var(--text-secondary);padding:.125rem .5rem;border-radius:10px;font-size:var(--text-xs);font-weight:var(--font-semibold)}.tab.active .tab-count{background:var(--brand-primary);color:var(--text-inverse)}[data-theme=dark] .tabs{border-bottom-color:var(--border-light)}[data-theme=dark] .tab:hover{background:#64b5f61a}.filter-bar{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-lg);margin-bottom:var(--space-6)}.filter-group{display:flex;align-items:center;gap:var(--space-2)}.filter-label{font-size:var(--text-sm);color:var(--text-tertiary);font-weight:var(--font-medium)}.filter-select{padding:var(--space-2) var(--space-3);border:1px solid var(--border-medium);border-radius:var(--radius-md);background:var(--bg-input);color:var(--text-primary);font-size:var(--text-sm);cursor:pointer}.filter-select:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--shadow-focus)}.badge-credibility{font-size:var(--text-xs);font-weight:var(--font-semibold);padding:.125rem .5rem;border-radius:var(--radius-sm)}.badge-credibility.very-high{background:#10b98126;color:var(--credibility-very-high)}.badge-credibility.high{background:#22c55e26;color:var(--credibility-high)}.badge-credibility.medium{background:#eab30826;color:var(--credibility-medium)}.badge-credibility.low{background:#f9731626;color:var(--credibility-low)}.badge-credibility.very-low{background:#ef444426;color:var(--credibility-very-low)}.badge-credibility.unknown{background:#6b728026;color:var(--credibility-unknown)}.toggle-switch{position:relative;display:inline-block;width:48px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--bg-tertiary);transition:var(--transition-fast);border-radius:var(--radius-full)}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:var(--transition-fast);border-radius:var(--radius-full)}.toggle-switch input:checked+.toggle-slider{background-color:var(--brand-primary)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.stats-row{display:flex;gap:var(--space-4);padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-lg);justify-content:center}.stat-item{text-align:center;padding:var(--space-2) var(--space-4)}.stat-item .stat-value{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--brand-primary)}.stat-item .stat-label{font-size:var(--text-xs);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.search-container{position:relative;max-width:600px;margin:0 auto var(--space-6)}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-input-wrapper input{width:100%;padding:var(--space-3) var(--space-4);padding-right:100px;border:2px solid var(--border-light);border-radius:var(--radius-lg);font-size:var(--text-base);background:var(--bg-input);color:var(--text-primary);transition:var(--transition-fast)}.search-input-wrapper input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--shadow-focus)}.search-btn{position:absolute;right:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--brand-gradient);color:var(--text-inverse);border:none;border-radius:var(--radius-md);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-fast)}.search-btn:hover:not(:disabled){opacity:.9}.search-btn:disabled{opacity:.6;cursor:not-allowed}.clear-search-btn{position:absolute;right:90px;background:var(--bg-tertiary);border:none;border-radius:var(--radius-full);width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-tertiary);font-size:var(--text-sm);transition:var(--transition-fast)}.clear-search-btn:hover{background:var(--bg-active);color:var(--text-primary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--bg-modal-overlay);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop);padding:var(--space-4)}.modal-content{background:var(--bg-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;animation:modalSlideIn .2s ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border-light)}.modal-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.modal-close{background:none;border:none;font-size:var(--text-xl);color:var(--text-tertiary);cursor:pointer;padding:var(--space-1);line-height:1;transition:var(--transition-fast)}.modal-close:hover{color:var(--text-primary)}.modal-body{padding:var(--space-6)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-light)}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.animate-fadeIn{animation:fadeIn .3s ease}.animate-slideUp{animation:slideUp .3s ease}.animate-slideDown{animation:slideDown .3s ease}.form-group{display:flex;flex-direction:column;gap:var(--space-2, .5rem)}.form-group label{font-weight:500;color:var(--text-secondary, #4b5563);font-size:var(--text-sm, .875rem)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4, 1rem)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--space-2, .5rem) var(--space-3, .75rem);border:1px solid var(--border-color, #e5e7eb);border-radius:var(--radius-md, 8px);font-size:var(--text-base, 1rem);transition:border-color .2s,box-shadow .2s;background:var(--bg-primary, #ffffff);color:var(--text-primary, #111827)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--brand-primary, #3b82f6);box-shadow:0 0 0 3px var(--brand-primary-light, rgba(59, 130, 246, .1))}.form-textarea{min-height:80px;resize:vertical}.form-checkbox{display:flex;align-items:center;gap:var(--space-2, .5rem);cursor:pointer}.form-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.form-actions{display:flex;gap:var(--space-3, .75rem);margin-top:var(--space-4, 1rem)}.form-description{font-size:var(--text-xs, .75rem);color:var(--text-tertiary, #9ca3af);margin-top:var(--space-1, .25rem)}.form-error{color:var(--error-color, #ef4444);font-size:var(--text-sm, .875rem);margin-top:var(--space-1, .25rem)}body.dark-mode .form-group label{color:var(--dark-text-secondary, #d1d5db)}body.dark-mode .form-input,body.dark-mode .form-select,body.dark-mode .form-textarea{background:var(--dark-bg-secondary, #374151);border-color:var(--dark-border-color, #4b5563);color:var(--dark-text-primary, #f9fafb)}body.dark-mode .form-input:focus,body.dark-mode .form-select:focus,body.dark-mode .form-textarea:focus{border-color:var(--brand-primary, #3b82f6)}body.dark-mode .form-description{color:var(--dark-text-tertiary, #9ca3af)}.card{background:var(--bg-primary, #ffffff);border-radius:var(--radius-lg, 12px);border:1px solid var(--border-color, #e5e7eb);overflow:hidden}.card-header{padding:var(--space-4, 1rem);border-bottom:1px solid var(--border-color, #e5e7eb);display:flex;align-items:center;justify-content:space-between}.card-title{font-weight:600;color:var(--text-primary, #111827);margin:0}.card-body{padding:var(--space-4, 1rem)}.card-footer{padding:var(--space-4, 1rem);border-top:1px solid var(--border-color, #e5e7eb);background:var(--bg-secondary, #f9fafb)}.card-clickable{cursor:pointer;transition:transform .2s,box-shadow .2s}.card-clickable:hover{transform:translateY(-2px);box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1))}body.dark-mode .card{background:var(--dark-bg-secondary, #1f2937);border-color:var(--dark-border-color, #374151)}body.dark-mode .card-header{border-bottom-color:var(--dark-border-color, #374151)}body.dark-mode .card-title{color:var(--dark-text-primary, #f9fafb)}body.dark-mode .card-footer{border-top-color:var(--dark-border-color, #374151);background:var(--dark-bg-tertiary, #374151)}.list-item{display:flex;align-items:center;padding:var(--space-3, .75rem) var(--space-4, 1rem);border-bottom:1px solid var(--border-color, #e5e7eb);transition:background-color .2s}.list-item:last-child{border-bottom:none}.list-item:hover{background:var(--bg-secondary, #f9fafb)}.list-item-content{flex:1;min-width:0}.list-item-title{font-weight:500;color:var(--text-primary, #111827);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-item-subtitle{font-size:var(--text-sm, .875rem);color:var(--text-tertiary, #9ca3af)}.list-item-actions{display:flex;gap:var(--space-2, .5rem);flex-shrink:0}body.dark-mode .list-item{border-bottom-color:var(--dark-border-color, #374151)}body.dark-mode .list-item:hover{background:var(--dark-bg-tertiary, #374151)}body.dark-mode .list-item-title{color:var(--dark-text-primary, #f9fafb)}body.dark-mode .list-item-subtitle{color:var(--dark-text-tertiary, #9ca3af)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.flex-col{flex-direction:column}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2, .5rem)}.gap-3{gap:var(--space-3, .75rem)}.gap-4{gap:var(--space-4, 1rem)}.w-full{width:100%}.h-full{height:100%}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.page-container{max-width:1200px;margin:0 auto;padding:var(--space-6)}.page-container-narrow{max-width:800px;margin:0 auto;padding:var(--space-6)}.page-container-wide{max-width:1400px;margin:0 auto;padding:var(--space-6)}.articles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--space-6);margin-top:var(--space-4)}.articles-grid-compact{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4)}@media(max-width:768px){.articles-grid,.articles-grid-compact{grid-template-columns:1fr;gap:var(--space-4)}}.article-card{background:var(--bg-card);border-radius:var(--radius-xl);border:1px solid var(--border-light);overflow:hidden;transition:transform .2s,box-shadow .2s}.article-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.article-card-image{width:100%;height:180px;-o-object-fit:cover;object-fit:cover;background:var(--bg-tertiary)}.article-card-content{padding:var(--space-4)}.article-card-source{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-tertiary);margin-bottom:var(--space-2)}.article-card-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);line-height:var(--leading-tight);margin-bottom:var(--space-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.article-card-title a{color:inherit;text-decoration:none}.article-card-title a:hover{color:var(--brand-primary)}.article-card-description{font-size:var(--text-sm);color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:var(--space-3)}.article-card-meta{display:flex;align-items:center;justify-content:space-between;font-size:var(--text-xs);color:var(--text-tertiary)}.article-card-badges{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.article-card-actions{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-light)}body.dark-mode .article-card{background:var(--bg-card);border-color:var(--border-light)}body.dark-mode .article-card:hover{box-shadow:0 8px 25px #0006}.selection-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);background:var(--brand-primary);color:#fff;border-radius:var(--radius-lg);margin-bottom:var(--space-4);animation:slideDown .2s ease}.selection-toolbar-count{font-weight:var(--font-semibold)}.selection-toolbar-actions{display:flex;gap:var(--space-2)}.selection-toolbar-btn{padding:var(--space-2) var(--space-3);background:#fff3;color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--text-sm);cursor:pointer;transition:var(--transition-fast)}.selection-toolbar-btn:hover{background:#ffffff4d}.selection-toolbar-btn-danger{background:var(--color-error)}.selection-toolbar-btn-danger:hover{background:#dc2626}.action-buttons{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.action-btn{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);border:none;background:var(--bg-tertiary);color:var(--text-secondary)}.action-btn:hover{background:var(--bg-active);color:var(--text-primary)}.action-btn-primary{background:var(--brand-primary);color:#fff}.action-btn-primary:hover{background:var(--brand-secondary)}.action-btn-danger{background:var(--color-error-bg);color:var(--color-error)}.action-btn-danger:hover{background:var(--color-error);color:#fff}.action-btn-icon{background:none;padding:var(--space-2);color:var(--text-tertiary)}.action-btn-icon:hover{background:var(--bg-hover);color:var(--text-primary)}.confirm-dialog{text-align:center}.confirm-dialog-icon{font-size:3rem;margin-bottom:var(--space-4)}.confirm-dialog-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-2)}.confirm-dialog-message{color:var(--text-secondary);margin-bottom:var(--space-6)}.confirm-dialog-actions{display:flex;justify-content:center;gap:var(--space-3)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-light)}.section-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary)}.section-subtitle{font-size:var(--text-sm);color:var(--text-tertiary);margin-top:var(--space-1)}.section-actions{display:flex;gap:var(--space-2)}@media(max-width:768px){.page-container,.page-container-narrow,.page-container-wide{padding:var(--space-4)}.hide-mobile{display:none!important}.selection-toolbar{flex-direction:column;gap:var(--space-3);text-align:center}.selection-toolbar-actions{flex-wrap:wrap;justify-content:center}}@media(min-width:769px){.hide-desktop{display:none!important}}@media(pointer:coarse){.article-actions-btn,.bookmark-btn-inline,.modal-close,.add-article-close,.source-edit-btn{min-width:44px;min-height:44px}.article-source .source-edit-btn,.article-card .article-source .source-edit-btn,.collection-article-item .article-source .source-edit-btn,.shareable-collection .article-source .source-edit-btn{opacity:1}.icon-button,.btn-icon,.collection-article-item .bookmark-btn,.collection-article-item .remove-btn,.history-article-item .bookmark-btn,.history-article-item .remove-btn{min-width:44px;min-height:44px}.topic-generate-btn,.topic-clear-btn,.topic-delete-btn{min-width:44px;min-height:44px;opacity:1!important;visibility:visible!important}}@media(max-width:600px){body{font-size:17px;line-height:1.55}}@media(max-width:600px){.fact-check-actions,.ai-summary-actions{position:sticky;top:0;z-index:10;background:var(--bg-primary, #ffffff);padding-top:8px;padding-bottom:8px;box-shadow:0 2px 4px #0000000f;margin-bottom:4px}body.dark-mode .fact-check-actions,body.dark-mode .ai-summary-actions,[data-theme=dark] .fact-check-actions,[data-theme=dark] .ai-summary-actions{background:var(--bg-primary, #0f172a);box-shadow:0 2px 4px #0000004d}.qa-input-container{position:sticky;bottom:0;z-index:10;background:var(--bg-primary, #ffffff);padding:12px 0;margin-bottom:0;box-shadow:0 -2px 4px #0000000f}body.dark-mode .qa-input-container,[data-theme=dark] .qa-input-container{background:var(--bg-primary, #0f172a);box-shadow:0 -2px 4px #0000004d}.panel-sticky-bottom{position:sticky;bottom:0;z-index:10;background:var(--bg-primary, #ffffff);padding:12px 16px;box-shadow:0 -2px 4px #0000000f}body.dark-mode .panel-sticky-bottom,[data-theme=dark] .panel-sticky-bottom{background:var(--bg-primary, #0f172a);box-shadow:0 -2px 4px #0000004d}}@media(max-width:600px){.modal-overlay:has(.confirm-modal),.ai-usage-dialog-overlay,.notification-dialog-overlay,.block-confirm-overlay,.unblock-confirm-overlay{align-items:flex-end;padding:0}.modal-overlay:has(.confirm-modal) .confirm-modal,.ai-usage-dialog,.notification-dialog,.block-confirm-dialog,.unblock-confirm-dialog{width:100%;max-width:100%;border-radius:16px 16px 0 0;margin:0;animation:kynBottomSheetSlideUp .25s ease-out;padding-bottom:max(env(safe-area-inset-bottom,16px),16px)}}@keyframes kynBottomSheetSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media(max-width:600px){.rss-badge,.deep-scanned-badge,.read-badge,.read-badge-inline{display:none}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:1280px}}@media(min-width:1536px){.container{max-width:1536px}}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.top-5{top:1.25rem}.m-0{margin:0}.my-4{margin-top:1rem;margin-bottom:1rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mt-1{margin-top:.25rem}.mt-4{margin-top:1rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.flex-1{flex:1 1 0%}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.gap-2{gap:.5rem}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.break-all{word-break:break-all}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.p-4{padding:1rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);line-height:var(--leading-normal)}code{font-family:var(--font-mono)}#root{min-height:100vh}.loading-spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8);gap:var(--space-4)}.loading-spinner-container.full-page{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-modal-overlay);z-index:var(--z-modal)}.loading-spinner{position:relative;display:inline-block}.loading-spinner.spinner-sm{width:24px;height:24px}.loading-spinner.spinner-md{width:40px;height:40px}.loading-spinner.spinner-lg{width:56px;height:56px}.loading-spinner.spinner-xl{width:80px;height:80px}.spinner-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-full);border:3px solid transparent;border-top-color:var(--brand-primary);animation:spin 1s linear infinite}.spinner-ring:nth-child(2){border-top-color:var(--brand-secondary);animation-delay:.15s;opacity:.8}.spinner-ring:nth-child(3){border-top-color:var(--color-info);animation-delay:.3s;opacity:.6}.spinner-sm .spinner-ring{border-width:2px}.spinner-lg .spinner-ring{border-width:4px}.spinner-xl .spinner-ring{border-width:5px}.loading-message{color:var(--text-secondary);font-size:var(--text-sm);margin:0}.dark-mode .loading-message{color:var(--text-tertiary)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-8);background:var(--bg-secondary);border-radius:var(--radius-xl);border:2px dashed var(--border-medium);animation:empty-state-fade-in .3s ease-out}@keyframes empty-state-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.empty-state-sm{padding:var(--space-4)}.empty-state-lg{padding:var(--space-12)}.empty-state-icon{font-size:3rem;margin-bottom:var(--space-4);opacity:.6;transition:all var(--transition-normal)}.empty-state:hover .empty-state-icon{opacity:.8;transform:scale(1.05)}.empty-state-icon svg{width:64px;height:64px;color:var(--text-muted)}.empty-state-sm .empty-state-icon svg{width:48px;height:48px}.empty-state-lg .empty-state-icon svg{width:80px;height:80px}.empty-state-sm .empty-state-icon{font-size:2rem}.empty-state-lg .empty-state-icon{font-size:4rem}.empty-state-title{color:var(--text-primary);font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0 0 var(--space-2) 0}.empty-state-lg .empty-state-title{font-size:var(--text-2xl)}.empty-state-description{color:var(--text-tertiary);font-size:var(--text-sm);margin:0 0 var(--space-4) 0;max-width:400px}.empty-state-action{margin-top:var(--space-2)}.empty-state-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center;margin-top:var(--space-2)}.empty-state-action .action-icon{margin-right:var(--space-2)}.empty-state-content{margin-top:var(--space-4);width:100%}.empty-state-education{margin-top:var(--space-6);padding:var(--space-5);background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-light);text-align:left;width:100%;max-width:500px}.empty-state-education h4{margin:0 0 var(--space-4) 0;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.feature-explanation{display:flex;flex-direction:column;gap:var(--space-3)}.feature-item{display:flex;align-items:flex-start;gap:var(--space-3)}.feature-icon{font-size:1.25rem;line-height:1;flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border-radius:var(--radius-md)}.feature-text{display:flex;flex-direction:column;gap:2px}.feature-text strong{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.feature-text span{font-size:var(--text-xs);color:var(--text-tertiary);line-height:1.4}.empty-state-tips{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-light);display:flex;flex-direction:column;gap:var(--space-2)}.empty-state-tips .tip{font-size:var(--text-xs);color:var(--text-tertiary);line-height:1.5}.empty-state-tips .tip strong{color:var(--text-secondary)}.empty-state-tips .tip code{background:var(--bg-tertiary);padding:1px 4px;border-radius:var(--radius-sm);font-family:monospace;font-size:.9em}.dark-mode .empty-state-education{background:var(--bg-secondary);border-color:var(--border-medium)}.dark-mode .feature-icon{background:var(--bg-tertiary)}.dark-mode .empty-state-tips{border-color:var(--border-medium)}.dark-mode .empty-state-tips .tip code{background:var(--bg-active)}.dark-mode .empty-state{background:var(--bg-tertiary);border-color:var(--border-light)}.dark-mode .empty-state-title{color:var(--text-primary)}.dark-mode .empty-state-description{color:var(--text-muted)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-modal-overlay);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop);animation:fadeIn .2s ease;padding:var(--space-4)}.confirm-modal{background:var(--bg-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:400px;width:100%;animation:slideUp .3s ease;z-index:var(--z-modal)}.confirm-modal-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border-light)}.confirm-modal-icon{font-size:1.5rem}.confirm-modal-title{margin:0;font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.confirm-modal-body{padding:var(--space-6)}.confirm-modal-body p{margin:0;color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--leading-relaxed)}.confirm-modal-actions{display:flex;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-light);background:var(--bg-secondary);border-radius:0 0 var(--radius-xl) var(--radius-xl)}.confirm-danger .btn-danger{background:var(--color-error);color:#fff}.confirm-danger .btn-danger:hover:not(:disabled){background:#dc2626}.confirm-warning .btn-warning{background:var(--color-warning);color:#fff}.confirm-warning .btn-warning:hover:not(:disabled){background:#d97706}.confirm-info .btn-info{background:var(--color-info);color:#fff}.confirm-info .btn-info:hover:not(:disabled){background:#2563eb}.dark-mode .confirm-modal{background:var(--bg-card);border:1px solid var(--border-light)}.dark-mode .confirm-modal-header{border-color:var(--border-light)}.dark-mode .confirm-modal-title{color:var(--text-primary)}.dark-mode .confirm-modal-body p{color:var(--text-secondary)}.dark-mode .confirm-modal-actions{background:var(--bg-tertiary);border-color:var(--border-light)}.search-input-wrapper{position:relative;display:flex;align-items:center;width:100%}.search-input-wrapper.search-input-sm .search-input{padding:var(--space-1) var(--space-2) var(--space-1) var(--space-8);font-size:var(--text-xs)}.search-input-wrapper.search-input-lg .search-input{padding:var(--space-3) var(--space-4) var(--space-3) var(--space-12);font-size:var(--text-base)}.search-input-icon{position:absolute;left:var(--space-3);color:var(--text-muted);font-size:var(--text-base);pointer-events:none;z-index:1}.search-input-sm .search-input-icon{left:var(--space-2);font-size:var(--text-sm)}.search-input-lg .search-input-icon{left:var(--space-4);font-size:var(--text-lg)}.search-input{width:100%;padding:var(--space-2) var(--space-10) var(--space-2) var(--space-10);font-size:var(--text-sm);border:1px solid var(--border-medium);border-radius:var(--radius-lg);background:var(--bg-input);color:var(--text-primary);transition:var(--transition-fast)}.search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--shadow-focus)}.search-input::-moz-placeholder{color:var(--text-muted)}.search-input::placeholder{color:var(--text-muted)}.search-input:disabled{background:var(--bg-tertiary);cursor:not-allowed;opacity:.6}.search-input-clear{position:absolute;right:var(--space-2);display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;background:var(--bg-tertiary);color:var(--text-muted);border-radius:var(--radius-full);cursor:pointer;font-size:var(--text-xs);transition:var(--transition-fast)}.search-input-clear:hover:not(:disabled){background:var(--bg-active);color:var(--text-secondary)}.search-input-clear:disabled{cursor:not-allowed;opacity:.5}.dark-mode .search-input{background:var(--bg-input);border-color:var(--border-medium);color:var(--text-primary)}.dark-mode .search-input:focus{border-color:var(--brand-primary)}.dark-mode .search-input-clear{background:var(--bg-active);color:var(--text-muted)}.dark-mode .search-input-clear:hover:not(:disabled){background:var(--border-medium);color:var(--text-primary)}.filter-bar{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.filter-bar-full{width:100%}.filter-bar-full .filter-btn{flex:1;justify-content:center}.filter-bar-sm .filter-btn{padding:var(--space-1) var(--space-2);font-size:var(--text-xs)}.filter-bar-lg .filter-btn{padding:var(--space-3) var(--space-6);font-size:var(--text-base)}.filter-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary);background:var(--bg-card);border:1px solid var(--border-medium);border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-fast);white-space:nowrap}.filter-btn:hover:not(:disabled):not(.active){background:var(--bg-hover);border-color:var(--border-dark);color:var(--text-primary)}.filter-btn.active{background:var(--brand-gradient);border-color:var(--brand-primary);color:var(--text-inverse);box-shadow:var(--shadow-md)}.filter-btn:disabled{opacity:.5;cursor:not-allowed}.filter-btn-icon{font-size:1em}.filter-btn-count{font-size:.85em;opacity:.8}.filter-bar-pills .filter-btn{border-radius:var(--radius-full)}.filter-bar-underline{gap:0;border-bottom:2px solid var(--border-light)}.filter-bar-underline .filter-btn{border:none;border-radius:0;background:transparent;border-bottom:2px solid transparent;margin-bottom:-2px}.filter-bar-underline .filter-btn:hover:not(:disabled):not(.active){background:transparent;border-bottom-color:var(--border-medium)}.filter-bar-underline .filter-btn.active{background:transparent;color:var(--brand-primary);border-bottom-color:var(--brand-primary);box-shadow:none}.dark-mode .filter-btn{background:var(--bg-tertiary);border-color:var(--border-light);color:var(--text-secondary)}.dark-mode .filter-btn:hover:not(:disabled):not(.active){background:var(--bg-active);border-color:var(--border-medium)}.dark-mode .filter-btn.active{background:var(--brand-gradient);border-color:var(--brand-primary)}.dark-mode .filter-bar-underline{border-color:var(--border-light)}.dark-mode .filter-bar-underline .filter-btn{background:transparent}.selection-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-tertiary) 100%);border-radius:var(--radius-lg);border:1px solid var(--border-light)}.selection-toolbar-toggle{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);background:var(--bg-card);border:1px solid var(--border-medium);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast)}.selection-toolbar-toggle:hover{background:var(--bg-hover);border-color:var(--border-dark)}.selection-toolbar-count{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary)}.selection-toolbar-actions{display:flex;gap:var(--space-3);margin-left:auto}.selection-toolbar-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-semibold);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);box-shadow:var(--shadow-sm)}.selection-toolbar-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.selection-toolbar-btn:disabled,.selection-toolbar-btn.disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.selection-toolbar-btn .btn-icon{font-size:1em}.selection-toolbar-btn.btn-primary{background:var(--brand-gradient)}.selection-toolbar-btn.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary)}.selection-toolbar-btn.btn-success{background:linear-gradient(135deg,#10b981,#059669)}.selection-toolbar-btn.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626)}.selection-toolbar-btn.btn-info{background:linear-gradient(135deg,#3b82f6,#2563eb)}.dark-mode .selection-toolbar{background:linear-gradient(135deg,var(--bg-tertiary) 0%,var(--bg-secondary) 100%);border-color:var(--border-medium)}.dark-mode .selection-toolbar-toggle{background:var(--bg-active);border-color:var(--border-medium);color:var(--text-primary)}.dark-mode .selection-toolbar-toggle:hover{background:var(--border-medium)}.dark-mode .selection-toolbar-count{color:var(--text-tertiary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);border-radius:var(--radius-md);border:none;cursor:pointer;transition:var(--transition-fast);text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--brand-gradient);color:var(--text-inverse)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-medium)}.btn-secondary:hover:not(:disabled){background:var(--bg-active);border-color:var(--border-dark)}.btn-danger{background:var(--color-error);color:#fff}.btn-success{background:var(--color-success);color:#fff}.btn-success:hover:not(:disabled){background:#059669}.dark-mode .btn-secondary{background:var(--bg-active);border-color:var(--border-medium);color:var(--text-primary)}.dark-mode .btn-secondary:hover:not(:disabled){background:var(--border-medium)}@media(max-width:768px){.selection-toolbar{flex-direction:column;align-items:stretch;gap:var(--space-3)}.selection-toolbar-actions{margin-left:0;justify-content:stretch}.selection-toolbar-btn{flex:1;justify-content:center}.filter-bar{overflow-x:auto;flex-wrap:nowrap;padding-bottom:var(--space-2);-webkit-overflow-scrolling:touch}.confirm-modal{margin:var(--space-4);max-width:calc(100% - var(--space-8))}}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 0%,var(--bg-secondary) 50%,var(--bg-tertiary) 100%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}.skeleton-text{height:1em;width:100%;margin-bottom:var(--space-2)}.skeleton-text:last-child{margin-bottom:0}.skeleton-title{height:1.5em;width:70%;margin-bottom:var(--space-3)}.skeleton-avatar{width:40px;height:40px;border-radius:var(--radius-full);flex-shrink:0}.skeleton-image{width:100%;height:180px;border-radius:var(--radius-md);margin-bottom:var(--space-3)}.skeleton-badge{width:60px;height:22px;border-radius:var(--radius-sm)}.skeleton-rect{width:100%;height:100px;border-radius:var(--radius-md)}.skeleton-article-card{padding:var(--space-4);background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);margin-bottom:var(--space-4)}.skeleton-article-card .skeleton-badges{display:flex;gap:var(--space-2);margin-bottom:var(--space-3)}.skeleton-article-card .skeleton-meta{display:flex;gap:var(--space-4);margin-top:var(--space-3)}.skeleton-source-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-light)}.skeleton-stat-card{padding:var(--space-4);background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg)}.skeleton-table-row{display:flex;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-light)}.skeleton-table-row .skeleton{flex:1}.skeleton-table-row:last-child{border-bottom:none}.skeleton-notification{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border-bottom:1px solid var(--border-light)}.skeleton-notification:last-child{border-bottom:none}.dark-mode .skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 0%,var(--bg-secondary) 50%,var(--bg-tertiary) 100%)}.dark-mode .skeleton-article-card,.dark-mode .skeleton-stat-card{background:var(--bg-card);border-color:var(--border-light)}.connection-error{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem;max-width:500px;margin:2rem auto}.connection-error-icon{font-size:4rem;margin-bottom:1rem}.connection-error h2{font-size:1.5rem;margin:0 0 1rem;color:var(--text-primary, #1a1a1a)}.connection-error-message{color:var(--text-secondary, #666);margin:0 0 1.5rem;line-height:1.6}.connection-error-retry{padding:.75rem 2rem;font-size:1rem;font-weight:500;border:none;border-radius:8px;cursor:pointer;background:var(--primary-color, #2563eb);color:#fff;transition:background .2s}.connection-error-retry:hover{background:var(--primary-hover, #1d4ed8)}.connection-error-help{margin-top:1.5rem;font-size:.875rem;color:var(--text-muted, #888)}[data-theme=dark] .connection-error h2{color:var(--text-primary-dark, #f0f0f0)}[data-theme=dark] .connection-error-message{color:var(--text-secondary-dark, #aaa)}[data-theme=dark] .connection-error-help{color:var(--text-muted-dark, #777)}.connection-error.connection-error-inline{padding:1.5rem 1rem;margin:1rem auto}.connection-error.connection-error-inline .connection-error-icon{font-size:2.5rem}.connection-error.connection-error-inline h2{font-size:1.25rem}.feed-discovery{background:var(--surface-color, #fff);border-radius:var(--border-radius-lg, 12px);padding:var(--spacing-lg, 24px);box-shadow:var(--shadow-sm, 0 1px 3px rgba(0,0,0,.1))}.discovery-tabs{display:flex;gap:var(--spacing-xs, 4px);margin-bottom:var(--spacing-lg, 24px);border-bottom:1px solid var(--border-color, #e5e7eb);padding-bottom:var(--spacing-sm, 8px)}.discovery-tabs .tab-btn{padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);background:transparent;border:none;border-radius:var(--border-radius, 8px);cursor:pointer;font-size:.9rem;color:var(--text-secondary, #6b7280);transition:all .2s ease}.discovery-tabs .tab-btn:hover{background:var(--hover-bg, #f3f4f6);color:var(--text-primary, #111827)}.discovery-tabs .tab-btn.active{background:var(--primary-color, #3b82f6);color:#fff}.tab-content{min-height:200px}.tab-description{color:var(--text-secondary, #6b7280);margin-bottom:var(--spacing-md, 16px);font-size:.95rem}.discover-form{display:flex;gap:var(--spacing-sm, 8px);margin-bottom:var(--spacing-md, 16px)}.discover-form input{flex:1;padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);border:1px solid var(--border-color, #e5e7eb);border-radius:var(--border-radius, 8px);font-size:1rem}.discover-form input:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.btn-primary{padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);background:var(--primary-color, #3b82f6);color:#fff;border:none;border-radius:var(--border-radius, 8px);cursor:pointer;font-size:.95rem;font-weight:500;transition:all .2s ease}.btn-secondary{padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);background:var(--surface-secondary, #f3f4f6);color:var(--text-primary, #111827);border:1px solid var(--border-color, #e5e7eb);border-radius:var(--border-radius, 8px);cursor:pointer;font-size:.95rem;transition:all .2s ease}.btn-secondary:hover:not(:disabled){background:var(--hover-bg, #e5e7eb)}.btn-link{background:none;border:none;color:var(--primary-color, #3b82f6);cursor:pointer;font-size:.85rem;padding:var(--spacing-xs, 4px)}.btn-link:hover{text-decoration:underline}.discovery-loading{display:flex;justify-content:center;padding:var(--spacing-lg, 24px)}.discovered-feeds,.imported-feeds{margin-top:var(--spacing-md, 16px);border:1px solid var(--border-color, #e5e7eb);border-radius:var(--border-radius, 8px);padding:var(--spacing-md, 16px)}.discovered-feeds h4,.imported-feeds h4{margin:0 0 var(--spacing-md, 16px) 0;font-size:1rem;color:var(--text-primary, #111827)}.feeds-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md, 16px)}.feeds-header h4{margin:0}.selection-actions{display:flex;gap:var(--spacing-sm, 8px)}.feed-list{display:flex;flex-direction:column;gap:var(--spacing-sm, 8px);max-height:400px;overflow-y:auto}.feed-item{display:flex;align-items:flex-start;gap:var(--spacing-sm, 8px);padding:var(--spacing-sm, 8px);border-radius:var(--border-radius, 8px);cursor:pointer;transition:background .15s ease}.feed-item:hover{background:var(--hover-bg, #f3f4f6)}.feed-item input[type=checkbox]{margin-top:4px;width:18px;height:18px;cursor:pointer}.feed-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.feed-title{font-weight:500;color:var(--text-primary, #111827)}.feed-url{font-size:.8rem;color:var(--text-secondary, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feed-meta{display:flex;gap:var(--spacing-xs, 4px);flex-wrap:wrap;margin-top:2px}.badge{display:inline-block;padding:2px 8px;background:var(--primary-light, #dbeafe);color:var(--primary-color, #3b82f6);border-radius:4px;font-size:.75rem;font-weight:500}.badge.secondary{background:var(--surface-secondary, #f3f4f6);color:var(--text-secondary, #6b7280)}.btn-add{margin-top:var(--spacing-md, 16px);width:100%}.import-options{display:flex;flex-direction:column;gap:var(--spacing-md, 16px)}.file-input{display:none}.file-label{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-md, 16px) var(--spacing-lg, 24px);background:var(--surface-secondary, #f3f4f6);border:2px dashed var(--border-color, #e5e7eb);border-radius:var(--border-radius, 8px);cursor:pointer;font-size:1rem;color:var(--text-secondary, #6b7280);transition:all .2s ease}.file-label:hover{border-color:var(--primary-color, #3b82f6);color:var(--primary-color, #3b82f6);background:var(--primary-light, #dbeafe)}.import-divider{text-align:center;color:var(--text-secondary, #6b7280);font-size:.85rem;position:relative}.import-divider:before,.import-divider:after{content:"";position:absolute;top:50%;width:40%;height:1px;background:var(--border-color, #e5e7eb)}.import-divider:before{left:0}.import-divider:after{right:0}.import-options textarea{padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);border:1px solid var(--border-color, #e5e7eb);border-radius:var(--border-radius, 8px);font-family:monospace;font-size:.85rem;resize:vertical}.import-options textarea:focus{outline:none;border-color:var(--primary-color, #3b82f6)}.import-stats{display:flex;gap:var(--spacing-md, 16px);padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);background:var(--surface-secondary, #f3f4f6);border-radius:var(--border-radius, 8px);font-size:.9rem}.import-stats .valid{color:var(--success-color, #10b981)}.import-stats .invalid{color:var(--error-color, #ef4444)}.export-section{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg, 24px);background:var(--surface-secondary, #f3f4f6);border-radius:var(--border-radius, 8px);margin-bottom:var(--spacing-lg, 24px)}.export-info{display:flex;align-items:center;gap:var(--spacing-md, 16px)}.export-icon{font-size:2.5rem}.export-info h4{margin:0 0 4px;font-size:1.1rem}.export-info p{margin:0;color:var(--text-secondary, #6b7280);font-size:.9rem}.btn-export{padding:var(--spacing-md, 16px) var(--spacing-xl, 32px);font-size:1rem}.export-tips{padding:var(--spacing-md, 16px);background:var(--info-bg, #dbeafe);border-radius:var(--border-radius, 8px)}.export-tips h5{margin:0 0 var(--spacing-sm, 8px) 0;font-size:.95rem}.export-tips ul{margin:0;padding-left:var(--spacing-lg, 24px);color:var(--text-secondary, #6b7280);font-size:.9rem}.export-tips li{margin-bottom:4px}[data-theme=dark] .feed-discovery{background:var(--surface-color, #1f2937)}[data-theme=dark] .discovery-tabs{border-color:var(--border-color, #374151)}[data-theme=dark] .discover-form input,[data-theme=dark] .import-options textarea{background:var(--surface-secondary, #374151);border-color:var(--border-color, #4b5563);color:var(--text-primary, #f9fafb)}[data-theme=dark] .discovered-feeds,[data-theme=dark] .imported-feeds{border-color:var(--border-color, #374151)}[data-theme=dark] .file-label{background:var(--surface-secondary, #374151);border-color:var(--border-color, #4b5563)}[data-theme=dark] .export-section,[data-theme=dark] .import-stats{background:var(--surface-secondary, #374151)}[data-theme=dark] .export-tips{background:#3b82f633}@media(max-width:768px){.feed-discovery{padding:var(--spacing-md, 16px)}.discovery-tabs{flex-wrap:wrap}.discover-form{flex-direction:column}.export-section{flex-direction:column;text-align:center;gap:var(--spacing-md, 16px)}.export-info{flex-direction:column}}.news-sources-manager{padding:1rem 0}.manager-header .section-description{margin-bottom:var(--space-6);color:var(--text-tertiary);line-height:1.6}.sources-filters{display:flex;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap}.search-wrapper{flex:1;min-width:250px;position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:12px;font-size:14px;pointer-events:none}.search-input{width:100%;padding:var(--space-3) var(--space-3) var(--space-3) 36px;border:1px solid var(--border-light);border-radius:var(--radius-sm);font-size:var(--text-base)}.search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #667eea1a}.search-clear{position:absolute;right:8px;background:none;border:none;cursor:pointer;font-size:12px;color:var(--text-tertiary, #999);padding:4px 8px;border-radius:4px}.search-clear:hover{background:var(--bg-tertiary, #eee);color:var(--text-primary, #333)}body.dark-mode .search-clear:hover{background:var(--bg-tertiary, #333)}.filter-select{padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--bg-primary);cursor:pointer;font-size:.9rem}.add-manual-section{margin-bottom:var(--space-6)}.add-sources-section{background:var(--bg-primary);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--space-6);box-shadow:0 2px 8px #00000014}body.dark-mode .add-sources-section{background:var(--bg-primary, #1e1e1e)}.sources-section{background:var(--bg-primary);border-radius:var(--radius-lg);padding:24px;margin-bottom:24px;box-shadow:0 2px 8px #00000014}.sources-section-header{margin-bottom:16px}.sources-section-header h3{font-size:18px;font-weight:600;color:var(--text-primary);margin:0}.sources-search-bar{display:flex;align-items:center;position:relative;margin-bottom:12px;background:var(--bg-secondary, #f5f5f5);border-radius:8px;padding:4px}.sources-search-icon{position:absolute;left:12px;font-size:14px;pointer-events:none}.sources-search-input{padding:10px 80px 10px 36px;border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:.95rem;width:100%;background:var(--bg-primary, #fff)}.sources-search-input:focus{outline:none;border-color:var(--brand-primary, #4a90d9);box-shadow:0 0 0 2px #4a90d91a}.sources-search-clear{position:absolute;right:100px;background:none;border:none;cursor:pointer;font-size:14px;color:var(--text-tertiary, #999);padding:4px 8px}.sources-search-clear:hover{color:var(--text-primary, #333)}.sources-search-count{position:absolute;right:12px;font-size:.8rem;color:var(--text-secondary, #666);white-space:nowrap}body.dark-mode .sources-section{background:var(--bg-primary, #1e1e1e)}body.dark-mode .sources-search-bar{background:var(--bg-tertiary, #1a1a1a)}body.dark-mode .sources-search-input{background:var(--bg-secondary, #2a2a2a);border-color:var(--border-color, #444);color:var(--text-primary, #fff)}.sources-filters-row{display:flex;gap:12px;margin-bottom:16px}.sources-filter-select{padding:8px 12px;border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:.9rem;background:var(--bg-primary, #fff);cursor:pointer;min-width:140px}.sources-filter-select:focus{outline:none;border-color:var(--brand-primary, #4a90d9)}body.dark-mode .sources-filter-select{background:var(--bg-secondary, #2a2a2a);border-color:var(--border-color, #444);color:var(--text-primary, #fff)}.simple-add-source-form .form-description{color:var(--text-secondary, #666);font-size:.9rem;margin:0 0 12px}.add-source-row{display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap}.source-name-input{flex:1;min-width:120px;padding:10px 12px;border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:.9rem}.source-name-input:focus{outline:none;border-color:var(--brand-primary, #4a90d9);box-shadow:0 0 0 2px #4a90d91a}.add-source-name-row{margin-bottom:10px}.add-source-name-row .source-name-input{width:100%}.source-credibility-select,.source-bias-select,.source-select{padding:10px 6px;border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:.85rem;background:var(--bg-primary, #fff);cursor:pointer}.select-group{display:flex;flex-direction:column;gap:4px}.select-group .source-select{min-width:120px}.select-hint{font-size:.75rem;font-style:italic;color:var(--text-tertiary, #888);white-space:nowrap}.btn-add-source{padding:10px 20px;background:var(--brand-primary, #4a90d9);color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s;white-space:nowrap;align-self:flex-start}.btn-add-source:hover:not(:disabled){background:var(--brand-primary-dark, #3a7bc8)}.btn-add-source:disabled{opacity:.5;cursor:not-allowed}body.dark-mode .source-name-input,body.dark-mode .source-credibility-select,body.dark-mode .source-bias-select,body.dark-mode .source-select{background:var(--bg-secondary, #2a2a2a);border-color:var(--border-color, #444);color:var(--text-primary, #fff)}.discover-section{background:var(--bg-secondary, #f8f9fa);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-6)}.discover-section h4{font-size:1rem;font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 var(--space-3) 0}body.dark-mode .discover-section{background:var(--bg-tertiary, #2a2a2a)}.btn-show-add{padding:.75rem 1.5rem;background:var(--brand-primary);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-medium);transition:background .3s}.btn-show-add:hover{background:#5568d3}.manual-input-form{background:var(--bg-primary);padding:var(--space-6);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.manual-input-form h3{margin:0 0 1.5rem;color:#212529;font-size:var(--text-xl)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin-bottom:var(--space-4)}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:var(--space-2);font-weight:var(--font-medium);color:#495057;font-size:.9rem}.manual-source-input,.manual-source-select,.manual-source-textarea{padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-sm);font-size:var(--text-base);font-family:inherit}.manual-source-input:focus,.manual-source-select:focus,.manual-source-textarea:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #667eea1a}.manual-source-textarea{resize:vertical;min-height:60px}.form-checkboxes{display:flex;gap:var(--space-6);margin:1rem 0;padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-sm)}.checkbox-option{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;font-size:.95rem}.checkbox-option input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-option span{-webkit-user-select:none;-moz-user-select:none;user-select:none}.source-actions{width:70px;display:flex;justify-content:center;gap:.25rem;margin-left:.5rem}.btn-edit,.btn-delete{background:none;border:none;font-size:.9rem;cursor:pointer;padding:2px;opacity:.4;transition:opacity .2s,transform .2s}.source-item:hover .btn-edit,.source-item:hover .btn-delete{opacity:.7}.btn-edit:hover,.btn-delete:hover{transform:scale(1.15);opacity:1!important}.modal-overlay{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100vw!important;height:100vh!important;background:#00000080!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:99999!important;padding:var(--space-4);overflow:hidden}.modal-content{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:0 4px 20px #0000004d;max-width:500px;width:90%;max-height:85vh;position:relative;margin:auto;display:flex;flex-direction:column;overflow:hidden}.source-edit-modal{padding:0}.source-edit-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-color, #e5e7eb);flex-shrink:0}.source-edit-modal .modal-header h3{margin:0;font-size:18px;font-weight:600}.source-edit-modal .modal-close-btn{background:none;border:none;font-size:24px;color:var(--text-secondary, #666);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px}.source-edit-modal .modal-close-btn:hover{background:var(--bg-secondary, #f3f4f6)}.source-edit-modal .modal-body{padding:20px;flex:1;overflow-y:auto;min-height:0}.source-edit-modal .modal-footer{display:flex;gap:12px;padding:16px 20px;border-top:1px solid var(--border-color, #e5e7eb);background:var(--bg-secondary, #f9fafb);flex-shrink:0}.source-edit-modal .modal-footer button{flex:1;padding:10px 16px;font-size:14px;font-weight:500;border-radius:8px;cursor:pointer;transition:all .15s}.modal-small{max-width:400px}.modal-content:not(.source-edit-modal){padding:var(--space-8);overflow-y:auto}.modal-content h3{margin:0 0 1.5rem;color:#212529;font-size:var(--text-2xl)}.modal-content p{margin-bottom:var(--space-6);color:#495057;line-height:1.6}.warning-text{color:#dc2626;font-weight:var(--font-medium)}.modal-actions{display:flex;gap:var(--space-4);margin-top:1.5rem}.btn-save,.btn-delete-confirm{flex:1;padding:.75rem 1.5rem;border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-medium);transition:background .3s}.btn-save{background:var(--color-success);color:#fff}.btn-save:hover{background:#059669}.btn-delete-confirm{background:var(--color-error);color:#fff}.btn-delete-confirm:hover{background:#dc2626}.btn-cancel{flex:1;padding:.75rem 1.5rem;background:#6b7280;color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-medium);transition:background .3s}.btn-cancel:hover{background:#4b5563}.btn-reset{flex:1;padding:.75rem 1.5rem;background:var(--color-warning);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-medium);transition:background .3s}.btn-reset:hover{background:#d97706}.customized-indicator{background:#fef3c7;border:1px solid #f59e0b;color:#92400e;padding:.5rem 1rem;border-radius:var(--radius-md);font-size:.85rem;margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-2)}.dark-mode .customized-indicator{background:#f59e0b33;border-color:#f59e0b66;color:#fcd34d}.source-customized-badge{display:inline-flex;align-items:center;gap:.2rem;background:#fef3c7;color:#92400e;padding:.15rem .4rem;border-radius:var(--radius-sm);font-size:.65rem;font-weight:var(--font-medium);white-space:nowrap}.dark-mode .source-customized-badge{background:#f59e0b33;color:#fcd34d}.form-actions{display:flex;gap:var(--space-3);margin-top:1.5rem}.btn-add-manual{flex:1;padding:.75rem 1.5rem;background:var(--color-success);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-medium);transition:background .3s}.btn-add-manual:hover{background:#059669}.btn-cancel-manual{flex:1;padding:.75rem 1.5rem;background:#6b7280;color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-medium);transition:background .3s}.btn-cancel-manual:hover{background:#4b5563}.sources-list{background:var(--bg-primary);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 1px 3px #0000001a}.sources-header{display:flex;align-items:center;padding:.75rem 1rem;background:var(--bg-secondary);border-bottom:2px solid #e9ecef;font-weight:var(--font-semibold);font-size:.75rem;color:#495057;text-transform:uppercase;letter-spacing:.5px}.header-source{flex:1;min-width:200px}.header-exclude,.header-paywall{width:70px;text-align:center}.header-credibility{width:100px;text-align:center}.header-actions{width:70px;margin-left:.5rem}.source-item{display:flex;align-items:center;padding:.6rem 1rem;border-bottom:1px solid #e9ecef;transition:background .2s}.source-item:hover{background:var(--bg-secondary)}.source-item.excluded{opacity:.5;background:#fff3cd}.source-info{flex:1;min-width:200px;padding-right:1rem}.source-name{font-size:.95rem;font-weight:var(--font-medium);color:#212529;margin-bottom:.15rem;display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.source-meta{display:flex;gap:.4rem;flex-wrap:wrap;font-size:.75rem}.source-category,.source-language{padding:.15rem .4rem;background:#e9ecef;border-radius:3px;color:#495057}.source-owner{color:#6b7280;font-size:.75rem}.source-controls{display:flex;align-items:center;gap:0}.checkbox-label{width:70px;display:flex;justify-content:center;align-items:center;cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.credibility-select{width:100px;padding:.3rem .4rem;border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--bg-primary);cursor:pointer;font-size:.8rem;text-align:center}.credibility-select:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-secondary)}.credibility-select option[value=very-high]{color:var(--color-success);font-weight:var(--font-semibold)}.credibility-select option[value=high]{color:var(--color-info)}.credibility-select option[value=medium]{color:var(--color-warning)}.credibility-select option[value=low]{color:var(--color-error)}.credibility-select option[value=very-low]{color:#991b1b;font-weight:var(--font-semibold)}.loading{text-align:center;padding:3rem;color:var(--text-tertiary);font-style:italic}.no-sources{text-align:center;padding:3rem;color:var(--text-muted);font-style:italic}.sources-info{margin-top:1.5rem;padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-sm)}.sources-info p{margin-bottom:.75rem}.sources-info ul{list-style:none;padding:0;margin:0}.sources-info li{padding:.25rem 0;color:#495057;font-size:.9rem}@media(max-width:768px){.add-source-row{flex-direction:column}.add-source-row>*{width:auto}.add-source-row{flex-wrap:wrap}.source-name-input{min-width:100%}.source-select{flex:1}.select-group{flex:1;min-width:100px}.add-sources-tabs{flex-wrap:wrap}.add-source-tab{padding:10px 12px;font-size:.85rem}.sources-filters-row{flex-direction:column}.sources-filter-select{width:100%}.sources-search-count{display:none}.sources-search-clear{right:10px}.sources-search-input{padding-right:36px}.sources-header{display:none}.source-item{flex-direction:column;align-items:flex-start;gap:.5rem}.source-info{width:100%;padding-right:0}.source-controls{width:100%;justify-content:flex-start;gap:1rem}.checkbox-label{width:auto;flex-direction:row;gap:.5rem}.checkbox-label:before{content:attr(data-label);font-size:.75rem;color:var(--text-tertiary)}.credibility-select{flex:1;max-width:120px}.source-actions{width:auto}.form-row{grid-template-columns:1fr}.manual-input-form{padding:var(--space-4)}.sources-filters{flex-direction:column}.search-wrapper{min-width:100%}}body.dark-mode .news-sources-manager{color:#e5e7eb}body.dark-mode .search-input,body.dark-mode .filter-select,body.dark-mode .manual-source-input,body.dark-mode .credibility-select{background:#1f2937;border-color:var(--text-secondary);color:#e5e7eb}body.dark-mode .sources-list{background:#374151}body.dark-mode .sources-header{background:#1f2937;border-bottom-color:var(--text-secondary);color:var(--text-muted)}body.dark-mode .source-item{border-bottom-color:var(--text-secondary)}body.dark-mode .source-item:hover{background:#1f2937}body.dark-mode .source-item.excluded{background:#78350f}body.dark-mode .source-name{color:#e5e7eb}body.dark-mode .source-category,body.dark-mode .source-language{background:#4b5563;color:var(--text-muted)}body.dark-mode .sources-info{background:#1f2937;color:#e5e7eb}body.dark-mode .sources-info li{color:var(--text-muted)}body.dark-mode .form-checkboxes{background:#1f2937}body.dark-mode .checkbox-option{color:#e5e7eb}body.dark-mode .modal-content{background:#1f2937;color:#e5e7eb}body.dark-mode .modal-content h3{color:#f3f4f6}body.dark-mode .modal-content p{color:#d1d5db}body.dark-mode .manual-source-select,body.dark-mode .manual-source-textarea{background:#374151;color:#e5e7eb;border-color:var(--text-secondary)}body.dark-mode .manual-source-select:focus,body.dark-mode .manual-source-textarea:focus{border-color:var(--brand-primary)}.manager-header{margin-bottom:1rem}.header-title-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.5rem}.header-title-row h2{margin:0;font-size:1.25rem;color:var(--text-primary, #333)}.btn-share-sources{padding:.5rem 1rem;background:var(--brand-primary, #4a90d9);color:#fff;border:none;border-radius:6px;font-size:.85rem;cursor:pointer;white-space:nowrap;transition:background .2s}.btn-share-sources:hover{background:var(--brand-primary-dark, #3a7bc8)}body.dark-mode .header-title-row h2{color:var(--text-primary, #fff)}.bias-words-manager{max-width:1200px;margin:0 auto;padding:var(--space-8)}.bias-words-manager.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:var(--space-4)}.bias-words-header{margin-bottom:var(--space-8);text-align:center}.bias-words-header h2{font-size:2rem;margin-bottom:var(--space-2);color:var(--text-primary, #2c3e50)}.bias-words-header .description{font-size:var(--text-base);color:var(--text-secondary, #7f8c8d);max-width:800px;margin:0 auto;line-height:1.6}.category-nav{display:flex;align-items:center;justify-content:center;gap:var(--space-6);margin-bottom:var(--space-8);padding:var(--space-4);background:var(--card-bg, white);border-radius:var(--radius-xl);box-shadow:0 2px 8px #0000001a}.nav-arrow{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;background:var(--primary-color, #3498db);color:#fff;border-radius:var(--radius-full);cursor:pointer;font-size:var(--text-xl);transition:var(--transition-normal);flex-shrink:0}.nav-arrow:hover{background:var(--primary-dark, #2980b9);transform:scale(1.1)}.nav-arrow:active{transform:scale(.95)}.category-current{display:flex;align-items:center;gap:var(--space-3);min-width:200px;justify-content:center}.category-current .category-icon{font-size:2rem}.category-current .category-label{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary, #2c3e50)}.category-current .category-position{font-size:var(--text-sm);color:var(--text-secondary, #7f8c8d)}.category-content{background:var(--card-bg, white);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:0 2px 8px #0000001a}.category-info{margin-bottom:var(--space-8);padding-bottom:1.5rem;border-bottom:1px solid var(--border-color, #e0e0e0)}.category-info h3{font-size:var(--text-2xl);margin-bottom:var(--space-2);color:var(--text-primary, #2c3e50);display:flex;align-items:center;gap:var(--space-2)}.word-count{font-size:.9rem;font-weight:400;color:var(--text-secondary, #7f8c8d)}.category-description{color:var(--text-secondary, #7f8c8d);font-size:.95rem;line-height:1.5}.add-word-section{margin-bottom:var(--space-8);padding:var(--space-6);background:var(--section-bg, #f8f9fa);border-radius:var(--radius-lg);border:2px dashed var(--border-color, #e0e0e0)}.add-word-section h4{font-size:1.1rem;margin-bottom:var(--space-4);color:var(--text-primary, #2c3e50)}.add-word-form{display:flex;gap:var(--space-3)}.add-word-form input{flex:1;padding:.75rem 1rem;border:2px solid var(--border-color, #e0e0e0);border-radius:var(--radius-md);font-size:var(--text-base);transition:border-color .2s}.add-word-form input:focus{outline:none;border-color:var(--primary-color, #3498db)}.add-word-form input:disabled{background:#f5f5f5;cursor:not-allowed}.add-button{padding:.75rem 2rem;background:var(--primary-color, #3498db);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:var(--transition-normal)}.add-button:hover:not(:disabled){background:var(--primary-hover, #2980b9);transform:translateY(-1px)}.add-button:disabled{background:#95a5a6;cursor:not-allowed;transform:none}.words-section{margin-bottom:var(--space-8)}.words-section h4{font-size:1.1rem;margin-bottom:var(--space-4);color:var(--text-primary, #2c3e50);display:flex;align-items:center;gap:var(--space-2)}.section-note{font-size:.9rem;color:var(--text-secondary, #7f8c8d);margin-bottom:var(--space-4);font-style:italic}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.expand-toggle{padding:.5rem 1rem;background:transparent;border:1px solid var(--border-color, #e0e0e0);border-radius:var(--radius-md);font-size:.9rem;color:var(--text-secondary, #7f8c8d);cursor:pointer;transition:var(--transition-normal)}.expand-toggle:hover{background:var(--hover-bg, #f8f9fa);border-color:var(--primary-color, #3498db);color:var(--primary-color, #3498db)}.show-more-hint{text-align:center;color:var(--text-secondary, #7f8c8d);font-size:.9rem;margin-top:1rem;font-style:italic}.words-grid{display:flex;flex-wrap:wrap;gap:var(--space-3)}.words-grid.collapsed{max-height:300px;overflow:hidden;position:relative}.words-grid.collapsed:after{content:"";position:absolute;bottom:0;left:0;right:0;height:80px;background:linear-gradient(to bottom,transparent,var(--card-bg, white));pointer-events:none}.words-grid.expanded{max-height:none}.word-chip{display:inline-flex;align-items:center;gap:var(--space-2);padding:.5rem .75rem;border-radius:20px;font-size:.9rem;transition:var(--transition-normal)}.word-chip.custom{background:#e3f2fd;border:2px solid #2196f3;color:#1565c0}.word-chip.removed{background:#ffebee;border:2px solid #ef5350;color:#c62828;text-decoration:line-through;opacity:.7}.word-chip.default{background:#f5f5f5;border:1px solid #e0e0e0;color:var(--text-primary, #2c3e50)}.word-chip:hover{transform:translateY(-2px);box-shadow:0 2px 8px #00000026}.word-text{-webkit-user-select:none;-moz-user-select:none;user-select:none}.word-action{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;border-radius:var(--radius-full);cursor:pointer;font-size:.85rem;transition:var(--transition-normal);padding:0;line-height:1;opacity:0;background:transparent}.word-chip:hover .word-action{opacity:1}.word-action.delete{color:#ef5350}.word-action.delete:hover{color:#c62828;transform:scale(1.2)}.word-action.restore{color:#66bb6a}.word-action.restore:hover{color:#43a047;transform:scale(1.2)}.word-action.remove{color:#ff9800}.word-action.remove:hover{color:#f57c00;transform:scale(1.2)}.reset-section{margin-top:3rem;padding:var(--space-6);background:#fff3cd;border:2px solid #ffc107;border-radius:var(--radius-lg);text-align:center}.reset-button{padding:.75rem 2rem;background:#dc3545;color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:var(--transition-normal);margin-bottom:var(--space-2)}.reset-button:hover{background:#c82333;transform:translateY(-1px)}.reset-note{font-size:.85rem;color:#856404;margin:0}.spinner{width:50px;height:50px;border:4px solid var(--border-color, #e0e0e0);border-top-color:var(--primary-color, #3498db);border-radius:var(--radius-full);animation:spin 1s linear infinite}.dark-mode .bias-words-manager,.dark-mode .bias-words-header h2{color:#e0e0e0}.dark-mode .category-content,.dark-mode .category-nav{background:#2a2a2a;box-shadow:0 2px 8px #0000004d}.dark-mode .category-current .category-label,.dark-mode .category-info h3,.dark-mode .words-section h4{color:#e0e0e0}.dark-mode .add-word-section{background:#1e1e1e;border-color:#444}.dark-mode .add-word-form input{background:#1e1e1e;border-color:#444;color:#e0e0e0}.dark-mode .add-word-form input:focus{border-color:var(--primary-color, #3498db)}.dark-mode .word-chip.default{background:#3a3a3a;border-color:#555;color:#e0e0e0}.dark-mode .words-grid.collapsed:after{background:linear-gradient(to bottom,transparent,#2a2a2a)}.dark-mode .reset-section{background:#3a2f00;border-color:#ffc107}@media(max-width:768px){.bias-words-manager{padding:var(--space-4)}.category-content{padding:var(--space-6)}.category-nav{gap:var(--space-3);padding:var(--space-3)}.nav-arrow{width:36px;height:36px;font-size:var(--text-base)}.category-current .category-icon{font-size:var(--text-2xl)}.category-current .category-label{font-size:var(--text-base)}.category-current .category-position{font-size:var(--text-xs)}.add-word-form{flex-direction:column}.add-button{width:100%}.words-grid{gap:var(--space-2)}.word-chip{font-size:.85rem;padding:.4rem .6rem}}.custom-feeds-manager{max-width:900px;margin:0 auto}.custom-feeds-loading{text-align:center;padding:40px;color:var(--text-tertiary)}.feeds-header{margin-bottom:30px}.feeds-header h2{font-size:24px;font-weight:var(--font-semibold);color:#1a1a2e;margin:0 0 10px}.feeds-description{color:var(--text-tertiary);font-size:15px;margin:0}.feeds-section{background:var(--bg-primary);border-radius:var(--radius-xl);padding:24px;margin-bottom:24px;box-shadow:0 2px 8px #00000014}.add-sources-section{padding:0;overflow:hidden}.add-sources-tabs{display:flex;border-bottom:1px solid var(--border-color, #e0e0e0);background:var(--bg-secondary, #f8f9fa)}.add-source-tab{flex:1;padding:14px 16px;border:none;background:transparent;cursor:pointer;font-size:.95rem;font-weight:500;color:var(--text-secondary, #666);transition:all .2s ease;border-bottom:3px solid transparent;margin-bottom:-1px}.add-source-tab:hover{background:var(--bg-tertiary, #f0f0f0);color:var(--text-primary, #333)}.add-source-tab.active{background:var(--bg-primary, #fff);color:var(--brand-primary, #4a90d9);border-bottom-color:var(--brand-primary, #4a90d9)}.add-sources-content{padding:20px 24px}.add-sources-content .feeds-section{box-shadow:none;padding:0;margin-bottom:16px;background:transparent}.add-sources-content .feeds-section h3{font-size:16px;margin-bottom:12px}body.dark-mode .add-sources-tabs{background:var(--bg-tertiary, #1a1a1a);border-bottom-color:var(--border-color, #333)}body.dark-mode .add-source-tab{color:var(--text-secondary, #aaa)}body.dark-mode .add-source-tab:hover{background:var(--bg-secondary, #252525);color:var(--text-primary, #fff)}body.dark-mode .add-source-tab.active{background:var(--bg-primary, #1e1e1e);color:var(--brand-primary, #6aa3e0);border-bottom-color:var(--brand-primary, #6aa3e0)}.feeds-section-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:8px}.feeds-section-header h3{margin:0!important}.feeds-search{display:flex;align-items:center;position:relative}.feeds-search-bar{display:flex;align-items:center;position:relative;margin-bottom:12px;background:var(--bg-secondary, #f5f5f5);border-radius:8px;padding:4px}.feeds-search-icon{position:absolute;left:12px;font-size:14px;pointer-events:none}.feeds-search-input{padding:10px 80px 10px 36px;border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:.95rem;width:100%;background:var(--bg-primary, #fff)}.feeds-search-input:focus{outline:none;border-color:var(--brand-primary, #4a90d9);box-shadow:0 0 0 2px #4a90d91a}.feeds-search-clear{position:absolute;right:100px;background:none;border:none;cursor:pointer;font-size:14px;color:var(--text-tertiary, #999);padding:4px 8px}.feeds-search-clear:hover{color:var(--text-primary, #333)}.feeds-search-count{position:absolute;right:12px;font-size:.8rem;color:var(--text-secondary, #666);white-space:nowrap}.feeds-search-input.search-error{border-color:#e53e3e;background-color:#fff5f5}.search-error-text{color:#e53e3e!important;font-size:.75rem!important}body.dark-mode .feeds-search-input.search-error{border-color:#fc8181;background-color:#2d1f1f}body.dark-mode .feeds-search-bar{background:var(--bg-tertiary, #1a1a1a)}body.dark-mode .feeds-search-input{background:var(--bg-secondary, #2a2a2a);border-color:var(--border-color, #444);color:var(--text-primary, #fff)}.feeds-section h3{font-size:18px;font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 8px}.section-description{color:var(--text-tertiary);font-size:14px;margin:0 0 20px}.quick-setup-form .form-row{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap}.quick-setup-form .form-group{flex:1;min-width:150px}.quick-setup-form label{display:block;font-size:13px;font-weight:var(--font-medium);color:#555;margin-bottom:6px}.city-input,.state-select{width:100%;padding:10px 14px;border:1px solid var(--border-light);border-radius:var(--radius-lg);font-size:14px;transition:border-color .2s}.city-input:focus,.state-select:focus{outline:none;border-color:#4a6fa5}.btn-create-feed{padding:10px 24px;background:linear-gradient(135deg,#4a6fa5,#3d5d8a);color:#fff;border:none;border-radius:var(--radius-lg);font-size:14px;font-weight:var(--font-semibold);cursor:pointer;transition:var(--transition-normal);white-space:nowrap}.btn-create-feed:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #4a6fa566}.btn-create-feed:disabled{opacity:.6;cursor:not-allowed}.sources-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin-top:12px}.source-card{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid #eee;min-height:60px;box-sizing:border-box}.source-info{display:flex;align-items:center;gap:12px;flex:1;min-width:0;overflow:hidden}.source-info>div{min-width:0;overflow:hidden}.source-icon{font-size:24px}.source-name{font-weight:var(--font-medium);color:var(--text-primary);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.source-city{font-size:12px;color:#888}.validation-status{display:flex;align-items:center;gap:8px;padding:16px;background:var(--bg-secondary);border-radius:var(--radius-lg);color:var(--text-secondary);font-size:14px}.validation-status.small{padding:8px 12px;font-size:13px;margin-bottom:12px}.validation-spinner{animation:spin 1s linear infinite}.no-sources-message{padding:16px;background:var(--bg-secondary);border-radius:var(--radius-lg);color:var(--text-secondary);font-size:14px;line-height:1.5}.source-added{color:#48bb78;font-size:13px;font-weight:var(--font-medium)}.btn-add-source{padding:6px 16px;background:#4a6fa5;color:#fff;border:none;border-radius:var(--radius-md);font-size:13px;cursor:pointer;transition:background .2s}.btn-add-source:hover:not(:disabled){background:#3d5d8a}.btn-add-source:disabled{opacity:.6}.custom-url-form-container .form-description{color:var(--text-secondary, #666);font-size:.9rem;margin:0 0 12px}.custom-url-form{display:flex;gap:12px}.url-input{flex:1;padding:10px 14px;border:1px solid var(--border-light);border-radius:var(--radius-lg);font-size:14px}.url-input:focus{outline:none;border-color:#4a6fa5}.btn-validate{padding:10px 20px;background:#4a6fa5;color:#fff;border:none;border-radius:var(--radius-lg);font-size:14px;font-weight:var(--font-medium);cursor:pointer;white-space:nowrap}.btn-validate:hover:not(:disabled){background:#3d5d8a}.btn-validate:disabled{opacity:.6;cursor:not-allowed}.no-feeds{text-align:center;padding:30px;color:#888;background:var(--bg-secondary);border-radius:var(--radius-lg)}.no-feeds-inline{text-align:center;padding:20px;color:#888;background:var(--bg-primary)}.feeds-list{display:flex;flex-direction:column;border:1px solid #e9ecef;border-radius:var(--radius-lg);overflow:hidden}.feeds-list-header{display:flex;align-items:center;padding:.75rem 1rem;background:var(--bg-secondary);border-bottom:2px solid #e9ecef;font-weight:var(--font-semibold);font-size:.75rem;color:#495057;text-transform:uppercase;letter-spacing:.5px}.feeds-list-header .header-source{flex:1;min-width:200px}.feeds-list-header .header-exclude,.feeds-list-header .header-paywall{width:70px;text-align:center}.feeds-list-header .header-credibility{width:100px;text-align:center}.feeds-list-header .header-actions{width:100px;margin-left:.5rem}.feed-item{display:flex;align-items:center;padding:.6rem 1rem;background:var(--bg-primary);border-bottom:1px solid #e9ecef;transition:var(--transition-normal)}.feed-item:hover{background:var(--bg-secondary)}.feed-item:last-child{border-bottom:none}.feed-item.excluded{opacity:.6;background:#fafafa}.feed-info{flex:1;min-width:0}.feed-name{font-weight:var(--font-medium);color:var(--text-primary);font-size:14px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.feed-owner-inline{font-size:11px;color:var(--text-tertiary, #888);font-weight:400}.feed-url{font-size:11px;color:var(--text-tertiary, #888);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:monospace;opacity:.7}.feed-url:hover{opacity:1}.feed-meta{display:flex;gap:16px;font-size:12px;color:#888;margin-top:4px;flex-wrap:wrap}.feed-controls{display:flex;align-items:center;gap:0}.feed-controls .checkbox-label{width:70px;display:flex;justify-content:center;align-items:center;cursor:pointer}.feed-controls .checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.feed-controls .credibility-select{width:100px;padding:.3rem .4rem;border:1px solid var(--border-light, #ddd);border-radius:var(--radius-sm, 4px);background:var(--bg-primary);cursor:pointer;font-size:.8rem;text-align:center}.feed-controls .credibility-select:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-secondary)}.feed-actions{display:flex;gap:4px;margin-left:8px;width:92px;justify-content:flex-end}.feeds-legend{display:flex;gap:24px;padding:12px 16px;background:var(--bg-secondary);border-radius:var(--radius-md);margin-top:16px;font-size:12px;color:var(--text-secondary, #666);flex-wrap:wrap}.feeds-legend span{white-space:nowrap}.feed-location{color:var(--text-tertiary)}.feed-error{color:#e53e3e}.feed-count{color:#48bb78}.btn-remove-feed{padding:6px 10px;background:transparent;color:#999;border:none;border-radius:var(--radius-sm);font-size:16px;cursor:pointer;transition:var(--transition-normal)}.btn-remove-feed:hover{background:#fee;color:#e53e3e}.feeds-help ul{margin:0;padding-left:20px}.feeds-help li{color:var(--text-tertiary);font-size:14px;margin-bottom:8px;line-height:1.5}body.dark-mode .feeds-header h2,body.dark-mode .feeds-section h3{color:#eee}body.dark-mode .feeds-description,body.dark-mode .section-description{color:var(--text-muted)}body.dark-mode .feeds-section{background:#2a2a2a;box-shadow:0 2px 8px #0000004d}body.dark-mode .city-input,body.dark-mode .state-select,body.dark-mode .url-input{background:#333;border-color:#444;color:#eee}body.dark-mode .city-input:focus,body.dark-mode .state-select:focus,body.dark-mode .url-input:focus{border-color:#4a6fa5}body.dark-mode .source-card,body.dark-mode .feed-item{background:var(--bg-primary, #1a1a1a);border-color:#444}body.dark-mode .feed-item:hover{background:#333}body.dark-mode .feeds-list-header{background:#333;border-color:#444;color:#aaa}body.dark-mode .feeds-list{border-color:#444}body.dark-mode .source-name,body.dark-mode .feed-name{color:#eee}body.dark-mode .source-city,body.dark-mode .feed-meta{color:#888}body.dark-mode .feed-url,body.dark-mode .feed-owner-inline{color:#777}body.dark-mode .feeds-legend{background:#333;color:#aaa}body.dark-mode .feed-controls .credibility-select{background:#2a2a2a;border-color:#444;color:#eee}body.dark-mode .no-feeds{background:#333;color:#888}body.dark-mode .feeds-help li,body.dark-mode .quick-setup-form label{color:var(--text-muted)}@media(max-width:640px){.quick-setup-form .form-row{flex-direction:column}.quick-setup-form .form-group,.btn-create-feed{width:100%}.custom-url-form{flex-direction:column}.btn-validate{width:100%}.sources-grid{grid-template-columns:1fr}.feed-meta{flex-direction:column;gap:4px}}.county-input{width:100%;padding:10px 12px;border:1px solid var(--border-light);border-radius:var(--radius-md);font-size:14px}.county-input:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 3px #4caf501a}.form-actions{margin-top:16px}.btn-preview-feeds{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:var(--radius-lg);font-size:15px;font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-normal)}.btn-preview-feeds:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-preview-feeds:disabled{opacity:.6;cursor:not-allowed}.feed-previews{margin-top:24px;padding-top:24px;border-top:1px solid #eee}.feed-previews h4{font-size:16px;font-weight:var(--font-semibold);margin:0 0 8px;color:var(--text-primary)}.preview-hint{color:var(--text-tertiary);font-size:13px;margin:0 0 16px}.preview-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.preview-item{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:var(--bg-secondary);border:2px solid transparent;border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-normal)}.preview-item:hover{background:#f0f4f8}.preview-item.selected{background:#e8f5e9;border-color:#4caf50}.preview-item input[type=checkbox]{margin-top:3px;width:18px;height:18px;cursor:pointer}.preview-info{flex:1}.preview-name{font-weight:var(--font-semibold);color:var(--text-primary);font-size:14px}.preview-desc{color:var(--text-tertiary);font-size:13px;margin-top:4px}.preview-actions{display:flex;gap:10px;flex-wrap:wrap}.btn-select-all,.btn-select-none{padding:8px 16px;background:#f0f0f0;border:1px solid var(--border-light);border-radius:var(--radius-md);font-size:13px;cursor:pointer;transition:var(--transition-normal)}.btn-select-all:hover,.btn-select-none:hover{background:#e0e0e0}.btn-add-selected{padding:10px 20px;background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;border:none;border-radius:var(--radius-lg);font-size:14px;font-weight:var(--font-medium);cursor:pointer;margin-left:auto;transition:var(--transition-normal)}.btn-add-selected:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #48bb7866}.btn-add-selected:disabled{opacity:.6;cursor:not-allowed}body.dark-mode .feed-previews{border-top-color:#3a3a4a}body.dark-mode .feed-previews h4{color:#e0e0e0}body.dark-mode .preview-hint{color:var(--text-muted)}body.dark-mode .preview-item{background:#2a2a3a}body.dark-mode .preview-item:hover{background:#3a3a4a}body.dark-mode .preview-item.selected{background:#1e3d2f;border-color:#48bb78}body.dark-mode .preview-name{color:#e0e0e0}body.dark-mode .preview-desc{color:var(--text-muted)}body.dark-mode .btn-select-all,body.dark-mode .btn-select-none{background:#3a3a4a;border-color:#4a4a5a;color:#e0e0e0}body.dark-mode .btn-select-all:hover,body.dark-mode .btn-select-none:hover{background:#4a4a5a}body.dark-mode .county-input{background:#2a2a3a;border-color:#3a3a4a;color:#e0e0e0}body.dark-mode .county-input:focus{border-color:#48bb78}.feed-item.excluded{opacity:.6;background:#fff5f5}body.dark-mode .feed-item.excluded{background:#3a2a2a}.feed-actions{display:flex;gap:8px;align-items:center}.btn-edit-feed{background:none;border:none;font-size:16px;cursor:pointer;padding:6px 8px;border-radius:var(--radius-md);transition:var(--transition-normal);opacity:.6}.btn-edit-feed:hover{background:#e8f5e9;opacity:1}body.dark-mode .btn-edit-feed:hover{background:#2a3a2a}.btn-move-feed{background:none;border:none;font-size:16px;cursor:pointer;padding:6px 8px;border-radius:var(--radius-md);transition:var(--transition-normal);opacity:.6}.btn-move-feed:hover{background:#e3f2fd;opacity:1}body.dark-mode .btn-move-feed:hover{background:#1a3a4a}.feed-badge{display:inline-block;font-size:10px;padding:2px 6px;border-radius:var(--radius-sm);margin-left:8px;font-weight:var(--font-medium);text-transform:uppercase}.feed-badge.excluded{background:#ffebee;color:#c62828}.feed-badge.paywall{background:#fff3e0;color:#e65100}body.dark-mode .feed-badge.excluded{background:#4a2a2a;color:#ff8a80}body.dark-mode .feed-badge.paywall{background:#4a3a2a;color:#ffb74d}.feed-properties{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.property-badge{font-size:10px;padding:2px 8px;border-radius:10px;font-weight:var(--font-medium)}.property-badge.credibility-very-high{background:#e8f5e9;color:#2e7d32}.property-badge.credibility-high{background:#e3f2fd;color:#1565c0}.property-badge.credibility-medium{background:#fff8e1;color:#f57f17}.property-badge.credibility-low{background:#fff3e0;color:#e65100}.property-badge.credibility-very-low{background:#ffebee;color:#c62828}.property-badge.factual-very-high{background:#e8f5e9;color:#2e7d32}.property-badge.factual-high{background:#e3f2fd;color:#1565c0}.property-badge.factual-mixed{background:#fff8e1;color:#f57f17}.property-badge.factual-low{background:#fff3e0;color:#e65100}.property-badge.factual-very-low{background:#ffebee;color:#c62828}.property-badge.bias-extreme-left{background:#e3f2fd;color:#0d47a1}.property-badge.bias-left{background:#e3f2fd;color:#1565c0}.property-badge.bias-left-center{background:#e8f5e9;color:#2e7d32}.property-badge.bias-center{background:#f5f5f5;color:#616161}.property-badge.bias-center-right{background:#e8f5e9;color:#2e7d32}.property-badge.bias-right{background:#ffebee;color:#c62828}.property-badge.bias-far-right{background:#ffebee;color:#b71c1c}.property-badge.bias-extreme-right{background:#ffcdd2;color:#b71c1c}body.dark-mode .property-badge.credibility-very-high,body.dark-mode .property-badge.factual-very-high{background:#1b4332;color:#6dd58c}body.dark-mode .property-badge.credibility-high,body.dark-mode .property-badge.factual-high{background:#1a3a5c;color:#64b5f6}body.dark-mode .property-badge.credibility-medium,body.dark-mode .property-badge.factual-mixed{background:#4a3a1a;color:#ffd54f}body.dark-mode .property-badge.credibility-low,body.dark-mode .property-badge.factual-low{background:#4a2a1a;color:#ffb74d}body.dark-mode .property-badge.credibility-very-low,body.dark-mode .property-badge.factual-very-low{background:#4a1a1a;color:#ff8a80}body.dark-mode .property-badge.bias-extreme-left,body.dark-mode .property-badge.bias-left{background:#1a3a5c;color:#64b5f6}body.dark-mode .property-badge.bias-left-center,body.dark-mode .property-badge.bias-center-right{background:#1b4332;color:#6dd58c}body.dark-mode .property-badge.bias-center{background:#3a3a3a;color:#bbb}body.dark-mode .property-badge.bias-right,body.dark-mode .property-badge.bias-far-right,body.dark-mode .property-badge.bias-extreme-right{background:#4a1a1a;color:#ff8a80}.form-row.checkboxes{display:flex;gap:24px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border-color, #e5e7eb)}.form-row.checkboxes .checkbox-label{width:auto;display:flex;align-items:center;gap:8px;cursor:pointer;white-space:nowrap;font-size:14px}.form-row.checkboxes .checkbox-label input[type=checkbox]{width:18px;height:18px;margin:0;cursor:pointer}.form-row.checkboxes .checkbox-label span{color:var(--text-primary, #333)}body.dark-mode .form-row.checkboxes{border-top-color:#444}body.dark-mode .form-row.checkboxes .checkbox-label span{color:#eee}.feed-ownership{margin-top:.25rem}.owner-badge{font-size:.75rem;color:var(--text-secondary, #666);display:inline-flex;align-items:center;gap:.25rem}.owner-badge .parent-company{opacity:.7}body.dark-mode .owner-badge{color:#aaa}.source-owner{font-size:.75rem;color:var(--text-secondary, #666);margin-left:.5rem}body.dark-mode .source-owner{color:#aaa}.feeds-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.feeds-header-text{flex:1;min-width:200px}.feeds-header-text h2{margin:0 0 .5rem}.feeds-header-actions{display:flex;gap:.5rem;flex-shrink:0}.btn-share-feeds{padding:.5rem 1rem;background:var(--brand-primary, #4a90d9);color:#fff;border:none;border-radius:6px;font-size:.9rem;cursor:pointer;white-space:nowrap;transition:background .2s}.btn-share-feeds:hover{background:var(--brand-primary-dark, #3a7bc8)}.btn-remove-all-feeds{padding:.5rem 1rem;background:var(--danger-color, #dc3545);color:#fff;border:none;border-radius:6px;font-size:.9rem;cursor:pointer;white-space:nowrap;transition:background .2s}.btn-remove-all-feeds:hover{background:var(--danger-color-dark, #c82333)}.share-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1100}.share-modal{background:var(--bg-primary, white);border-radius:12px;padding:1.5rem;width:90%;max-width:400px;box-shadow:0 4px 20px #00000026}.share-modal h3{margin:0 0 .5rem;font-size:1.2rem;color:var(--text-primary, #333)}.share-modal p{margin:0 0 1rem;font-size:.9rem;color:var(--text-secondary, #666)}.share-form input{width:100%;padding:.75rem;border:1px solid var(--border-color, #ddd);border-radius:6px;font-size:1rem;margin-bottom:1rem;box-sizing:border-box}.share-form input:focus{outline:none;border-color:var(--brand-primary, #4a90d9);box-shadow:0 0 0 2px #4a90d91a}.share-modal-actions{display:flex;gap:.5rem;justify-content:flex-end}.share-modal-actions .cancel-btn{padding:.6rem 1rem;background:var(--bg-tertiary, #e9ecef);color:var(--text-secondary, #666);border:none;border-radius:6px;font-size:.9rem;cursor:pointer}.share-modal-actions .share-btn{padding:.6rem 1.25rem;background:var(--brand-primary, #4a90d9);color:#fff;border:none;border-radius:6px;font-size:.9rem;cursor:pointer}.share-modal-actions .share-btn:hover:not(:disabled){background:var(--brand-primary-dark, #3a7bc8)}.share-modal-actions .share-btn:disabled{opacity:.6;cursor:not-allowed}.share-modal-actions .remove-all-btn{padding:.6rem 1.25rem;background:var(--danger-color, #dc3545);color:#fff;border:none;border-radius:6px;font-size:.9rem;cursor:pointer}.share-modal-actions .remove-all-btn:hover:not(:disabled){background:var(--danger-color-dark, #c82333)}.share-modal-actions .remove-all-btn:disabled{opacity:.6;cursor:not-allowed}.remove-all-modal p strong{color:var(--danger-color, #dc3545)}.share-modal-actions .move-btn{padding:.6rem 1.25rem;background:var(--brand-primary, #4a90d9);color:#fff;border:none;border-radius:6px;font-size:.9rem;cursor:pointer}.share-modal-actions .move-btn:hover:not(:disabled){background:var(--brand-primary-dark, #3a7bc8)}.share-modal-actions .move-btn:disabled{opacity:.6;cursor:not-allowed}.move-to-sources-modal p strong{color:var(--brand-primary, #4a90d9)}.modal-note{font-size:.85rem!important;color:var(--text-secondary, #666)!important;background:var(--bg-secondary, #f5f5f5);padding:.75rem;border-radius:6px;margin-top:.5rem!important}body.dark-mode .modal-note{background:var(--bg-tertiary, #2a2a2a)}.section-note{font-size:.85rem;color:var(--text-secondary, #666);margin:-.5rem 0 1rem}.section-note strong{color:var(--brand-primary, #4a90d9)}.share-note{font-size:.8rem!important;color:var(--text-tertiary, #999)!important;margin-top:.5rem!important}body.dark-mode .share-modal{background:var(--bg-primary, #1a1a1a)}body.dark-mode .share-modal h3{color:var(--text-primary, #fff)}body.dark-mode .share-form input{background:var(--bg-secondary, #252525);border-color:var(--border-color, #444);color:var(--text-primary, #fff)}body.dark-mode .share-modal-actions .cancel-btn{background:var(--bg-tertiary, #333);color:var(--text-secondary, #aaa)}.password-strength{margin-top:.5rem;font-size:.85rem}.strength-bar-container{height:4px;background:#e0e0e0;border-radius:2px;overflow:hidden;margin-bottom:var(--space-2)}.strength-bar{height:100%;transition:width .3s ease,background-color .3s ease;border-radius:2px}.strength-bar.strength-none{background:transparent}.strength-bar.strength-weak{background:#f44336}.strength-bar.strength-fair{background:#ff9800}.strength-bar.strength-good{background:#8bc34a}.strength-bar.strength-strong{background:#4caf50}.strength-label{font-weight:var(--font-semibold);margin-bottom:var(--space-2);font-size:.8rem}.strength-label.strength-weak{color:#f44336}.strength-label.strength-fair{color:#ff9800}.strength-label.strength-good{color:#8bc34a}.strength-label.strength-strong{color:#4caf50}.requirements-list{display:flex;flex-wrap:wrap;gap:.25rem .75rem}.requirement{display:flex;align-items:center;gap:.25rem;font-size:var(--text-xs);transition:color .2s ease}.requirement.met{color:#4caf50}.requirement.unmet{color:#999}.requirement-icon{font-size:.7rem;width:1em;text-align:center}.requirement-label{white-space:nowrap}.all-requirements-met{margin-top:.5rem;color:#4caf50;font-weight:var(--font-medium);font-size:.8rem}body.dark-mode .strength-bar-container{background:#444}body.dark-mode .requirement.unmet{color:#777}body.dark-mode .password-strength{color:#ccc}.blocked-users-section{padding:1.5rem}.blocked-users-section h2{margin:0 0 .5rem;font-size:1.25rem;color:var(--text-primary, #333)}.blocked-users-section h3{margin:0 0 .75rem;font-size:1rem;color:var(--text-secondary, #555)}.blocked-users-section .section-description{color:var(--text-tertiary, #666);font-size:.9rem;margin-bottom:1.5rem}.block-by-email-form{background:var(--bg-secondary, #f8f9fa);border-radius:8px;padding:1rem;margin-bottom:1.5rem}.block-by-email-form .form-row{display:flex;gap:.5rem}.block-by-email-form input{flex:1;padding:.6rem .75rem;border:1px solid var(--border-color, #ddd);border-radius:4px;font-size:.9rem}.block-by-email-form input:focus{outline:none;border-color:var(--color-primary, #007bff);box-shadow:0 0 0 2px #007bff1a}.block-by-email-form button{padding:.6rem 1rem;background:var(--color-error, #dc3545);color:#fff;border:none;border-radius:4px;font-size:.9rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .2s}.block-by-email-form button:hover:not(:disabled){background:#c82333}.block-by-email-form button:disabled{opacity:.6;cursor:not-allowed}.block-by-email-form .form-hint{margin:.5rem 0 0;font-size:.8rem;color:var(--text-tertiary, #999)}.blocked-users-section .empty-state{text-align:center;padding:2rem;background:var(--bg-secondary, #f8f9fa);border-radius:8px}.blocked-users-section .empty-state p{margin:0;color:var(--text-secondary, #666)}.blocked-users-section .empty-state .hint{font-size:.85rem;color:var(--text-tertiary, #999);margin-top:.5rem}.blocked-users-list{display:flex;flex-direction:column;gap:.75rem}.blocked-user-card{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:var(--bg-secondary, #f8f9fa);border-radius:8px;border:1px solid var(--border-color, #e5e5e5)}.blocked-user-info{display:flex;align-items:center;gap:.75rem}.blocked-user-avatar{width:40px;height:40px;border-radius:50%;background:var(--color-error, #dc3545);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem}.blocked-user-details{display:flex;flex-direction:column}.blocked-user-name{font-weight:600;color:var(--text-primary, #333);font-size:.95rem}.blocked-user-email{font-size:.8rem;color:var(--text-tertiary, #999)}.blocked-date{font-size:.75rem;color:var(--text-tertiary, #999);margin-top:.25rem}.unblock-btn{padding:.5rem 1rem;background:var(--bg-primary, white);border:1px solid var(--border-color, #ddd);border-radius:4px;font-size:.85rem;color:var(--text-secondary, #666);cursor:pointer;transition:all .2s}.unblock-btn:hover:not(:disabled){background:var(--color-primary, #007bff);border-color:var(--color-primary, #007bff);color:#fff}.unblock-btn:disabled{opacity:.6;cursor:not-allowed}.unblock-confirm-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1100}.unblock-confirm-dialog{background:var(--bg-primary, white);border-radius:8px;padding:1.5rem;width:90%;max-width:320px;box-shadow:0 4px 20px #00000026}.unblock-confirm-dialog h3{margin:0 0 .75rem;font-size:1.1rem;color:var(--text-primary, #333)}.unblock-confirm-dialog p{margin:0 0 .5rem;font-size:.9rem;color:var(--text-secondary, #666)}.unblock-info{font-size:.8rem!important;color:var(--text-tertiary, #999)!important;margin-bottom:1rem!important}.unblock-confirm-actions{display:flex;gap:.5rem;margin-top:1rem}.unblock-confirm-actions .cancel-btn,.unblock-confirm-actions .confirm-unblock-btn{flex:1;padding:.6rem;border:none;border-radius:4px;font-size:.9rem;font-weight:500;cursor:pointer}.unblock-confirm-actions .cancel-btn{background:var(--bg-tertiary, #e9ecef);color:var(--text-secondary, #666)}.unblock-confirm-actions .confirm-unblock-btn{background:var(--color-primary, #007bff);color:#fff}.unblock-confirm-actions .confirm-unblock-btn:hover:not(:disabled){background:#0056b3}.unblock-confirm-actions .confirm-unblock-btn:disabled{opacity:.6;cursor:not-allowed}.dark-mode .blocked-user-card{background:var(--bg-secondary, #252525);border-color:var(--border-color, #333)}.dark-mode .block-by-email-form{background:var(--bg-secondary, #252525)}.dark-mode .block-by-email-form input{background:var(--bg-primary, #1a1a1a);border-color:var(--border-color, #444);color:var(--text-primary, #fff)}.dark-mode .unblock-btn{background:var(--bg-tertiary, #333);border-color:var(--border-color, #444);color:var(--text-secondary, #aaa)}.dark-mode .unblock-confirm-dialog{background:var(--bg-primary, #1a1a1a)}@media(max-width:480px){.blocked-user-card{flex-direction:column;align-items:flex-start;gap:.75rem}.unblock-btn{width:100%}.block-by-email-form .form-row{flex-direction:column}.block-by-email-form button{width:100%}}.onboarding-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9997;pointer-events:none}.onboarding-highlight{background:transparent;box-shadow:0 0 0 9999px #000000bf;transition:var(--transition-slow);z-index:9998}.onboarding-tooltip{background:var(--bg-primary);border-radius:var(--radius-2xl);box-shadow:0 20px 60px #0000004d,0 8px 20px #0003;z-index:9999;pointer-events:auto;animation:tooltipFadeIn .3s ease;overflow:hidden}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.onboarding-tooltip-center{animation:tooltipCenterFadeIn .4s ease}@keyframes tooltipCenterFadeIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.onboarding-arrow{position:absolute;width:0;height:0;border:12px solid transparent}.onboarding-arrow-bottom{border-bottom-color:#fff;border-top:none}.onboarding-arrow-top{border-top-color:#fff;border-bottom:none}.onboarding-arrow-left{border-left-color:#fff;border-right:none}.onboarding-arrow-right{border-right-color:#fff;border-left:none}.onboarding-content{padding:28px 24px 20px;text-align:center}.onboarding-icon{font-size:48px;margin-bottom:16px;line-height:1}.onboarding-title{font-size:20px;font-weight:var(--font-bold);color:#1a1a2e;margin:0 0 12px;line-height:1.3}.onboarding-text{font-size:15px;color:#555;line-height:1.6;margin:0}.onboarding-footer{background:var(--bg-secondary);padding:16px 24px;border-top:1px solid #eee}.onboarding-progress{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.onboarding-step-indicator{font-size:12px;color:#888;font-weight:var(--font-medium)}.onboarding-dots{display:flex;gap:6px}.onboarding-dot{width:8px;height:8px;border-radius:var(--radius-full);background:#ddd;cursor:pointer;transition:var(--transition-normal)}.onboarding-dot:hover{background:#bbb;transform:scale(1.2)}.onboarding-dot.active{background:#4a6fa5;transform:scale(1.3)}.onboarding-dot.completed{background:#68d391}.onboarding-actions{display:flex;gap:10px;justify-content:flex-end}.onboarding-btn{padding:10px 20px;font-size:14px;font-weight:var(--font-semibold);border:none;border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-normal)}.onboarding-btn-skip{background:transparent;color:#888;padding:10px 12px}.onboarding-btn-skip:hover{color:#555;background:#eee}.onboarding-btn-prev{background:#e0e0e0;color:var(--text-primary)}.onboarding-btn-prev:hover{background:#d0d0d0}.onboarding-btn-next{background:linear-gradient(135deg,#4a6fa5,#3d5d8a);color:#fff;min-width:100px}.onboarding-btn-next:hover{background:linear-gradient(135deg,#3d5d8a,#2d4a6f);transform:translateY(-1px);box-shadow:0 4px 12px #4a6fa566}.onboarding-tooltip-center .onboarding-content{padding:36px 32px 24px}.onboarding-tooltip-center .onboarding-icon{font-size:64px;margin-bottom:20px}.onboarding-tooltip-center .onboarding-title{font-size:24px}.onboarding-tooltip-center .onboarding-text{font-size:16px}body.dark-mode .onboarding-tooltip{background:#2a2a2a;box-shadow:0 20px 60px #00000080,0 8px 20px #0006}body.dark-mode .onboarding-arrow-bottom{border-bottom-color:#2a2a2a}body.dark-mode .onboarding-arrow-top{border-top-color:#2a2a2a}body.dark-mode .onboarding-arrow-left{border-left-color:#2a2a2a}body.dark-mode .onboarding-arrow-right{border-right-color:#2a2a2a}body.dark-mode .onboarding-title{color:#eee}body.dark-mode .onboarding-text{color:var(--text-muted)}body.dark-mode .onboarding-footer{background:#222;border-top-color:var(--text-primary)}body.dark-mode .onboarding-step-indicator{color:#888}body.dark-mode .onboarding-dot{background:#444}body.dark-mode .onboarding-dot:hover{background:#555}body.dark-mode .onboarding-dot.completed{background:#48bb78}body.dark-mode .onboarding-btn-skip{color:#888}body.dark-mode .onboarding-btn-skip:hover{color:var(--text-muted);background:#333}body.dark-mode .onboarding-btn-prev{background:#444;color:#ddd}body.dark-mode .onboarding-btn-prev:hover{background:#555}@media(max-width:480px){.onboarding-tooltip{width:calc(100vw - 32px)!important;max-width:none!important;left:16px!important;right:16px!important;transform:none!important}.onboarding-tooltip-center{top:50%!important;transform:translateY(-50%)!important}.onboarding-content{padding:24px 20px 16px}.onboarding-icon{font-size:40px}.onboarding-title{font-size:18px}.onboarding-text{font-size:14px}.onboarding-footer{padding:14px 20px}.onboarding-actions{flex-wrap:wrap}.onboarding-btn{padding:10px 16px;font-size:13px}.onboarding-btn-skip{order:3;width:100%;margin-top:8px}}.onboarding-highlight{animation:highlightPulse 2s ease-in-out infinite}@keyframes highlightPulse{0%,to{box-shadow:0 0 0 9999px #000000bf,0 0 0 4px #4a6fa580}50%{box-shadow:0 0 0 9999px #000000bf,0 0 0 8px #4a6fa54d}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md)}.modal-content{background:var(--bg-primary, #ffffff);border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-xl, 0 25px 50px -12px rgba(0, 0, 0, .25));max-height:calc(100vh - 2rem);display:flex;flex-direction:column;overflow:hidden}.modal-small{width:100%;max-width:400px}.modal-medium{width:100%;max-width:560px}.modal-large{width:100%;max-width:800px}.modal-full{width:100%;max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md, 16px) var(--spacing-lg, 24px);border-bottom:1px solid var(--border-color, #e5e7eb);flex-shrink:0}.modal-title{margin:0;font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary, #111827)}.modal-close-btn{background:none;border:none;font-size:var(--text-xl);cursor:pointer;color:var(--text-tertiary, #9ca3af);padding:var(--spacing-xs, 4px);border-radius:var(--radius-sm, 4px);transition:var(--transition-normal);line-height:1}.modal-close-btn:hover{background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #111827)}.modal-body{padding:var(--spacing-lg, 24px);overflow-y:auto;flex:1}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-sm, 8px);padding:var(--spacing-md, 16px) var(--spacing-lg, 24px);border-top:1px solid var(--border-color, #e5e7eb);flex-shrink:0}.confirm-modal-message{margin:0;color:var(--text-secondary, #4b5563);font-size:var(--text-base);line-height:1.5}.confirm-modal-actions{display:flex;gap:var(--spacing-sm, 8px);width:100%;justify-content:flex-end}.alert-modal-message{margin:0;color:var(--text-secondary, #4b5563);font-size:var(--text-base);line-height:1.5}.form-modal-content{display:flex;flex-direction:column;gap:var(--spacing-md, 16px)}.form-modal-actions{display:flex;gap:var(--spacing-sm, 8px);justify-content:flex-end;margin-top:var(--spacing-lg, 24px);padding-top:var(--spacing-md, 16px);border-top:1px solid var(--border-color, #e5e7eb)}.btn-primary{background:var(--primary-color, #3b82f6);color:#fff;border:none;padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);border-radius:var(--radius-md, 8px);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-normal)}.btn-primary:hover:not(:disabled){background:var(--primary-hover, #2563eb)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #111827);border:1px solid var(--border-color, #e5e7eb);padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);border-radius:var(--radius-md, 8px);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-normal)}.btn-secondary:hover:not(:disabled){background:var(--bg-tertiary, #e5e7eb)}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-danger{background:var(--error-color, #ef4444);color:#fff;border:none;padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);border-radius:var(--radius-md, 8px);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-normal)}.btn-danger:hover:not(:disabled){background:#dc2626}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.btn-warning{background:var(--warning-color, #f59e0b);color:#fff;border:none;padding:var(--spacing-sm, 8px) var(--spacing-md, 16px);border-radius:var(--radius-md, 8px);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-normal)}.btn-warning:hover:not(:disabled){background:#d97706}.btn-warning:disabled{opacity:.6;cursor:not-allowed}body.dark-mode .modal-overlay{background:#000000b3}body.dark-mode .modal-content{background:var(--dark-bg-primary, #1f2937);border:1px solid var(--dark-border-color, #374151)}body.dark-mode .modal-header{border-bottom-color:var(--dark-border-color, #374151)}body.dark-mode .modal-title{color:var(--dark-text-primary, #f9fafb)}body.dark-mode .modal-close-btn{color:var(--dark-text-tertiary, #9ca3af)}body.dark-mode .modal-close-btn:hover{background:var(--dark-bg-secondary, #374151);color:var(--dark-text-primary, #f9fafb)}body.dark-mode .modal-footer{border-top-color:var(--dark-border-color, #374151)}body.dark-mode .confirm-modal-message,body.dark-mode .alert-modal-message{color:var(--dark-text-secondary, #d1d5db)}body.dark-mode .form-modal-actions{border-top-color:var(--dark-border-color, #374151)}body.dark-mode .btn-secondary{background:var(--dark-bg-secondary, #374151);color:var(--dark-text-primary, #f9fafb);border-color:var(--dark-border-color, #4b5563)}body.dark-mode .btn-secondary:hover:not(:disabled){background:var(--dark-bg-tertiary, #4b5563)}@media(max-width:640px){.modal-overlay{padding:var(--spacing-sm, 8px);align-items:flex-end}.modal-content{max-height:90vh;border-radius:var(--radius-lg, 12px) var(--radius-lg, 12px) 0 0}.modal-small,.modal-medium,.modal-large{max-width:100%}.confirm-modal-actions,.form-modal-actions{flex-direction:column}.confirm-modal-actions button,.form-modal-actions button{width:100%}}.settings-subtabs{display:flex;gap:.5rem;margin-bottom:1.5rem;padding:.5rem;background:var(--bg-secondary);border-radius:var(--radius-md);flex-wrap:wrap}.settings-subtab{display:flex;align-items:center;gap:.4rem;padding:.6rem 1rem;background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.9rem;color:var(--text-secondary);transition:all .2s ease}.settings-subtab:hover{background:var(--bg-primary);color:var(--text-primary)}.settings-subtab.active{background:var(--brand-primary);color:#fff;font-weight:var(--font-medium)}.subtab-icon{font-size:1rem}.subtab-label{font-size:.85rem}.settings-subtab-content{animation:fadeIn .2s ease;min-height:200px}.settings-actions{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-light)}body.dark-mode .settings-subtabs{background:#1f2937}body.dark-mode .settings-subtab{color:#9ca3af}body.dark-mode .settings-subtab:hover{background:#374151;color:#e5e7eb}body.dark-mode .settings-subtab.active{background:var(--brand-primary);color:#fff}@media(max-width:600px){.settings-subtabs{gap:.25rem;padding:.25rem}.settings-subtab{padding:.5rem .75rem;flex:1;justify-content:center;min-width:70px}.subtab-label{display:none}.subtab-icon{font-size:1.2rem}}.header-quote{margin:.4rem 0 .85rem;padding:.5rem .9rem;border-left:3px solid var(--accent-primary, #667eea);background:var(--bg-hover, rgba(102, 126, 234, .04));border-radius:0 6px 6px 0;max-width:720px;font-style:italic;color:var(--text-secondary, #4b5563);line-height:1.45;font-size:.92rem}.header-quote-mark{color:var(--accent-primary, #667eea);font-weight:700;font-size:1.1em;margin:0 .15rem;font-style:normal}.header-quote-text{font-style:italic}.header-quote-attribution{margin-top:.25rem;font-size:.8rem;font-style:normal;color:var(--text-tertiary, #6b7280)}.header-quote-context{color:var(--text-muted, #9ca3af)}.dark-mode .header-quote{background:#667eea14;color:var(--text-secondary);border-left-color:var(--accent-primary)}.dark-mode .header-quote-attribution{color:var(--text-tertiary)}@media(max-width:640px){.header-quote{font-size:.85rem;padding:.4rem .7rem}}.profile-settings{max-width:900px;margin:0 auto;padding:var(--space-8)}.profile-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-8);border-bottom:3px double #121212;padding-bottom:1rem}.profile-settings h1,.profile-header h1{font-family:Playfair Display,Georgia,serif;font-size:2.5rem;color:#1a1a1a;margin:0;font-weight:900;letter-spacing:-.5px}.profile-subtitle{font-family:Georgia,serif;font-style:italic;color:var(--text-tertiary);font-size:1rem;margin:0}body.dark-mode .profile-header,[data-theme=dark] .profile-header{border-bottom-color:#444}body.dark-mode .profile-settings h1,body.dark-mode .profile-header h1,[data-theme=dark] .profile-settings h1,[data-theme=dark] .profile-header h1{color:#e0e0e0}.tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-8);border-bottom:2px solid #e9ecef}.tab{padding:.75rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--text-tertiary);font-size:var(--text-base);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-slow);position:relative;bottom:-2px}.tab:hover{color:#007bff}.tab.active{color:#007bff;border-bottom-color:#007bff}.settings-section{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--space-8);box-shadow:var(--shadow-md);animation:fadeIn .3s ease-in}.settings-section h2{margin-bottom:var(--space-6);color:#555;font-size:var(--text-xl);font-weight:var(--font-medium)}.section-description{margin-bottom:var(--space-6);color:var(--text-tertiary);line-height:1.6}.form-group label{display:block;margin-bottom:var(--space-2);font-weight:var(--font-medium);color:var(--text-primary);font-size:.95rem}.form-group input,.form-group select{width:100%;padding:var(--space-3);border:1px solid var(--border-light);border-radius:var(--radius-sm);font-size:var(--text-base);transition:border-color .3s;font-family:inherit}.form-group input:focus,.form-group select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.category-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:.5rem}.chip{padding:.5rem 1rem;border:1px solid var(--border-light);border-radius:20px;background:var(--bg-primary);cursor:pointer;transition:var(--transition-slow);font-size:.9rem;font-weight:var(--font-medium)}.chip:hover{border-color:#007bff;background:#f0f8ff}.chip.active{background:#007bff;color:#fff;border-color:#007bff}.btn-primary{padding:.75rem 2rem;background:#007bff;color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--text-base);font-weight:var(--font-medium);cursor:pointer;transition:background .3s;margin-top:.5rem}.btn-primary:hover:not(:disabled){background:#0056b3}.btn-primary:disabled{background:#ccc;cursor:not-allowed}.message{padding:var(--space-4);border-radius:var(--radius-sm);margin-bottom:var(--space-6);font-size:.95rem;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.loading{text-align:center;padding:var(--space-8);font-size:1.2rem;color:var(--text-tertiary)}@media(max-width:768px){.profile-settings{padding:var(--space-4)}.profile-settings h1{font-size:var(--text-2xl)}.tabs{flex-direction:column;gap:0;border-bottom:none}.tab{border-bottom:1px solid #e9ecef;border-left:3px solid transparent;bottom:0;text-align:left}.tab.active{border-left-color:#007bff;border-bottom-color:#e9ecef;background:var(--bg-secondary)}.settings-section{padding:var(--space-6)}.settings-section h2{font-size:1.1rem}.category-chips{gap:.4rem}.chip{padding:.4rem .8rem;font-size:.85rem}.btn-primary{width:100%}}@media(max-width:480px){.profile-settings{padding:var(--space-2)}.settings-section{padding:var(--space-4);border-radius:var(--radius-sm)}}.saved-searches-manager{margin:1.5rem 0}.saved-search-item-profile{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4);background:var(--bg-primary);border:2px solid var(--border-light);border-radius:var(--radius-lg);margin-bottom:.75rem;transition:var(--transition-slow)}.saved-search-item-profile:hover{border-color:var(--brand-primary);box-shadow:0 2px 8px #667eea26}.saved-search-item-profile .search-info{display:flex;align-items:center;gap:var(--space-3);flex:1}.saved-search-item-profile .search-term{font-weight:var(--font-medium);color:var(--text-primary)}.saved-search-item-profile .search-match-badge{font-size:var(--text-xs);padding:.25rem .5rem;background:var(--brand-primary);color:#fff;border-radius:var(--radius-sm);font-weight:var(--font-medium);white-space:nowrap}.saved-search-item-profile .remove-btn{background:var(--color-error);color:#fff;border:none;padding:.5rem 1rem;border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-medium);transition:background .3s}.saved-search-item-profile .remove-btn:hover{background:#dc2626}.saved-search-item-profile .remove-saved-search-profile{padding:.5rem .75rem;border:none;background:none;cursor:pointer;color:var(--color-error);font-weight:700;font-size:var(--text-xl);transition:background .3s}.saved-search-item-profile .remove-saved-search-profile:hover{background:#fee2e2;border-radius:var(--radius-sm)}.no-searches{text-align:center;padding:var(--space-8);color:#999;font-style:italic}.search-input-with-criteria{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}.add-search-input{flex:1;min-width:250px}.add-search-match-criteria{padding:var(--space-2);border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--bg-primary);cursor:pointer;font-size:.9rem}.field-hint{margin-top:.5rem;font-size:.85rem;color:var(--text-tertiary);font-style:italic}.bookmarks-manager{margin-top:1rem}.bookmarks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-6);margin-top:1rem}.bookmark-card{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden;transition:box-shadow .2s}.bookmark-card:hover{box-shadow:var(--shadow-lg)}.bookmark-image{width:100%;height:180px;-o-object-fit:cover;object-fit:cover}.bookmark-content{padding:var(--space-4)}.bookmark-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.bookmark-source{font-size:var(--text-sm);color:var(--text-tertiary);font-weight:var(--font-medium)}.remove-bookmark-btn{background:none;border:none;color:var(--color-error);font-size:var(--text-xl);cursor:pointer;padding:var(--space-1);line-height:1;transition:transform .2s}.remove-bookmark-btn:hover{transform:scale(1.2)}.bookmark-title{font-size:var(--text-base);font-weight:var(--font-semibold);margin-bottom:var(--space-2);line-height:1.4}.bookmark-title a{color:#111827;text-decoration:none}.bookmark-description{font-size:var(--text-sm);color:var(--text-tertiary);margin-bottom:.75rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.bookmark-footer{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-xs);color:var(--text-muted)}.bookmark-date{font-weight:var(--font-medium)}.bookmarked-date{font-style:italic}.no-bookmarks{text-align:center;padding:3rem 1rem;color:var(--text-tertiary);font-size:var(--text-base)}@media(max-width:768px){.bookmarks-grid{grid-template-columns:1fr}}.dark-mode-toggle{padding:var(--space-4);background-color:#f9fafb;border-radius:var(--radius-lg);border:1px solid var(--border-light)}body.dark-mode .dark-mode-toggle{background-color:var(--bg-tertiary);border-color:var(--border-color)}.toggle-label{display:flex;align-items:center;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toggle-label input[type=checkbox]{width:20px;height:20px;margin-right:.75rem;cursor:pointer;accent-color:var(--color-info)}.toggle-text{font-size:var(--text-base);font-weight:var(--font-medium);color:var(--text-secondary)}body.dark-mode .toggle-text{color:var(--text-primary)}.toggle-description{margin:.5rem 0 0;font-size:var(--text-sm);color:var(--text-tertiary);padding-left:2rem}body.dark-mode .toggle-description{color:var(--text-secondary)}.add-search-section{margin-bottom:var(--space-8);padding:var(--space-6);background-color:var(--bg-secondary);border-radius:var(--radius-lg);border:2px dashed #dee2e6}body.dark-mode .add-search-section{background-color:#3b82f60d;border-color:#3b82f633}.add-search-section h3{margin-top:0;margin-bottom:var(--space-2);font-size:1.1rem;color:var(--text-primary)}body.dark-mode .add-search-section h3{color:var(--text-primary)}.add-search-section .help-text{font-size:.9rem;color:var(--text-tertiary);margin-bottom:var(--space-4);line-height:1.5}body.dark-mode .add-search-section .help-text{color:var(--text-secondary)}.add-search-section .form-group{display:flex;gap:var(--space-2);align-items:center}.add-search-input{flex:1;padding:var(--space-3);border:2px solid #dee2e6;border-radius:var(--radius-md);font-size:var(--text-base);transition:var(--transition-slow)}.add-search-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}body.dark-mode .add-search-input{background-color:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}body.dark-mode .add-search-input:focus{border-color:var(--color-info);box-shadow:0 0 0 3px #3b82f61a}.btn-add-search{padding:.75rem 1.5rem;background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-slow);white-space:nowrap}.btn-add-search:hover{transform:translateY(-2px);box-shadow:0 4px 12px #007bff4d}.btn-add-search:active{transform:translateY(0)}body.dark-mode .btn-add-search{background:linear-gradient(135deg,#3b82f6,#2563eb)}body.dark-mode .btn-add-search:hover{box-shadow:0 4px 12px #3b82f64d}.saved-searches-manager h3{margin-bottom:var(--space-4);font-size:1.1rem;color:var(--text-primary)}body.dark-mode .saved-searches-manager h3{color:var(--text-primary)}.beta-badge{display:inline-block;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:.7rem;font-weight:var(--font-semibold);padding:.15rem .4rem;border-radius:var(--radius-sm);margin-left:.5rem;text-transform:uppercase;letter-spacing:.5px;vertical-align:middle}.info-box{display:flex;gap:var(--space-3);margin-top:1rem;padding:var(--space-3);background:#f0f9ff;border:1px solid #bae6fd;border-radius:var(--radius-md);font-size:.9rem}body.dark-mode .info-box{background:#0c4a6e;border-color:#075985;color:#e0f2fe}.info-box .info-icon{font-size:1.2rem;flex-shrink:0}.info-box strong{display:block;margin-bottom:.25rem;color:#0369a1}body.dark-mode .info-box strong{color:#7dd3fc}.info-box p{margin:0;color:#0c4a6e;font-size:.85rem}body.dark-mode .info-box p{color:#bae6fd}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{flex:1;padding-right:45px}.password-toggle-btn{position:absolute;right:10px;background:none;border:none;cursor:pointer;padding:5px;font-size:1.2rem;opacity:.6;transition:opacity .2s;display:flex;align-items:center;justify-content:center}.password-toggle-btn:hover{opacity:1}.password-toggle-btn:focus{outline:none}.tour-restart-section{margin-top:30px;padding-top:20px;border-top:1px solid #eee}.tour-restart-section h3{font-size:16px;font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 8px}body.dark-mode .tour-restart-section{border-top-color:#444}body.dark-mode .tour-restart-section h3{color:#eee}.auth-container{min-height:calc(100vh - 200px);display:flex;justify-content:center;align-items:center;padding:var(--space-8)}.auth-card{background:var(--bg-card);padding:var(--space-10);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%;max-width:450px}.auth-card h2{text-align:center;margin-bottom:var(--space-8);color:var(--text-primary);font-size:var(--text-2xl)}.auth-subtitle{text-align:center;color:var(--text-tertiary);margin-bottom:var(--space-6);font-size:var(--text-sm);line-height:var(--leading-normal)}.error-message{background:var(--color-error-bg);color:var(--color-error-text);padding:var(--space-3);border-radius:var(--radius-md);margin-bottom:var(--space-6);border-left:4px solid var(--color-error);font-size:var(--text-sm)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.form-group{margin-bottom:var(--space-6)}.form-group label{display:block;margin-bottom:var(--space-2);font-weight:var(--font-medium);color:var(--text-primary);font-size:var(--text-sm)}.form-group input{width:100%;padding:var(--space-3);border:2px solid var(--border-light);border-radius:var(--radius-md);font-size:var(--text-base);transition:var(--transition-fast);background:var(--bg-input);color:var(--text-primary)}.form-group input:focus{outline:none;border-color:var(--brand-primary);box-shadow:var(--shadow-focus)}.form-group input::-moz-placeholder{color:var(--text-muted)}.form-group input::placeholder{color:var(--text-muted)}.full-width{width:100%;margin-top:var(--space-2)}.auth-link{text-align:center;margin-top:var(--space-6);color:var(--text-tertiary);font-size:var(--text-sm)}.auth-link a{color:var(--brand-primary);text-decoration:none;font-weight:var(--font-semibold)}.auth-link a:hover{text-decoration:underline}.btn-submit{width:100%;padding:var(--space-3) var(--space-4);background:var(--brand-gradient);color:var(--text-inverse);border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:var(--transition-fast)}.btn-submit:hover:not(:disabled){box-shadow:var(--shadow-lg);transform:translateY(-1px)}.btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.password-requirements{background:var(--bg-secondary);padding:var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-6);border:1px solid var(--border-light)}.password-requirements h4{margin:0 0 var(--space-3) 0;font-size:var(--text-sm);color:var(--text-primary);font-weight:var(--font-semibold)}.password-requirements ul{margin:0;padding-left:var(--space-6)}.password-requirements li{font-size:var(--text-xs);color:var(--text-tertiary);margin-bottom:var(--space-1);transition:var(--transition-fast)}.password-requirements li.valid{color:var(--color-success)}.password-requirements li.invalid{color:var(--text-muted)}.password-strength{margin-top:var(--space-2)}.strength-bar{height:4px;background:var(--bg-tertiary);border-radius:var(--radius-full);overflow:hidden;margin-bottom:var(--space-1)}.strength-fill{height:100%;transition:var(--transition-normal)}.strength-fill.weak{width:25%;background:var(--color-error)}.strength-fill.fair{width:50%;background:var(--color-warning)}.strength-fill.good{width:75%;background:#84cc16}.strength-fill.strong{width:100%;background:var(--color-success)}.strength-text{font-size:var(--text-xs);color:var(--text-muted)}.password-wrapper{position:relative}.password-toggle{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:var(--text-lg);padding:var(--space-1);transition:var(--transition-fast)}.password-toggle:hover{color:var(--text-secondary)}.remember-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6)}.remember-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer}.remember-label input{width:auto;margin:0}.forgot-link{font-size:var(--text-sm);color:var(--brand-primary);text-decoration:none}.forgot-link:hover{text-decoration:underline}.dark-mode .auth-card{background:var(--bg-card);border:1px solid var(--border-light)}.dark-mode .auth-card h2{color:var(--text-primary)}.dark-mode .form-group input{background:var(--bg-input);border-color:var(--border-medium);color:var(--text-primary)}.dark-mode .form-group input:focus{border-color:var(--brand-primary)}.dark-mode .password-requirements{background:var(--bg-tertiary);border-color:var(--border-medium)}.dark-mode .password-requirements h4{color:var(--text-primary)}.dark-mode .strength-bar{background:var(--bg-active)}.social-divider{display:flex;align-items:center;margin:var(--space-6) 0;color:var(--text-muted);font-size:var(--text-sm)}.social-divider:before,.social-divider:after{content:"";flex:1;height:1px;background:var(--border-light)}.social-divider span{padding:0 var(--space-4)}.social-buttons{display:flex;flex-direction:column;gap:var(--space-3)}.btn-social{display:flex;align-items:center;justify-content:center;gap:var(--space-3);width:100%;padding:var(--space-3);border:1px solid var(--border-medium);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-fast)}.btn-social:hover{background:var(--bg-hover);border-color:var(--border-dark)}.btn-social img{width:20px;height:20px}@media(max-width:768px){.auth-container{padding:var(--space-4)}.auth-card{padding:var(--space-6)}.form-row{grid-template-columns:1fr;gap:0}.remember-row{flex-direction:column;gap:var(--space-3);align-items:flex-start}}.security-notice{background:var(--color-info-bg);border:1px solid #93c5fd;border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-6)}.security-notice h4{display:flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-2) 0;font-size:var(--text-sm);color:var(--color-info-text)}.security-notice ul{margin:0;padding-left:var(--space-6);font-size:var(--text-xs);color:var(--color-info-text)}.security-notice li{margin-bottom:var(--space-1)}.dark-mode .security-notice{background:#3b82f61a;border-color:#3b82f64d}.success-message{background:var(--color-success-bg);color:var(--color-success-text);padding:var(--space-3);border-radius:var(--radius-md);margin-bottom:var(--space-6);border-left:4px solid var(--color-success);font-size:var(--text-sm)}.dark-mode .success-message{background:#10b9811a;border-color:var(--color-success)}.admin-container{max-width:1400px;margin:0 auto;padding:var(--space-8)}.admin-header{margin-bottom:var(--space-8)}.admin-header h1{font-size:2rem;color:#1a1a2e;margin-bottom:var(--space-2)}.admin-subtitle{color:var(--text-tertiary);font-size:1.1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-6);margin-bottom:var(--space-8)}.stat-card{background:var(--bg-primary);border-radius:var(--radius-xl);padding:var(--space-6);text-align:center;box-shadow:0 2px 10px #00000014;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-3px);box-shadow:0 4px 15px #0000001f}.stat-card.highlight{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.stat-card.highlight .stat-label{color:#ffffffe6}.admin-container .stat-icon{font-size:2rem;margin-bottom:var(--space-2)}.admin-container .stat-value{font-size:2rem;font-weight:var(--font-bold);color:#1a1a2e}.stat-card.highlight .stat-value{color:#fff}.admin-container .stat-label{color:var(--text-tertiary);font-size:.9rem;margin-top:.25rem}.admin-tabs{display:flex;gap:var(--space-4);margin-bottom:var(--space-6);border-bottom:2px solid #e5e7eb;padding-bottom:0}.tab-btn{background:none;border:none;padding:.75rem 1.5rem;font-size:var(--text-base);color:var(--text-tertiary);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;transition:var(--transition-normal)}.tab-btn:hover{color:var(--brand-primary)}.tab-btn.active{color:var(--brand-primary);border-bottom-color:var(--brand-primary);font-weight:var(--font-semibold)}.users-section{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:0 2px 10px #00000014;overflow:hidden}.users-toolbar{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:var(--bg-hover);border-bottom:1px solid #e5e7eb}.search-box{position:relative;flex:1;max-width:400px}.search-box input{width:100%;padding:.75rem 2.5rem .75rem 1rem;border:1px solid var(--border-light);border-radius:var(--radius-lg);font-size:.95rem}.search-box input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #667eea1a}.clear-search{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;color:#999;cursor:pointer;font-size:var(--text-base)}.users-count{color:var(--text-tertiary);font-size:.9rem}.users-table-container{overflow-x:auto}.users-table{width:100%;border-collapse:collapse}.users-table th{background:var(--bg-hover);padding:1rem 1.5rem;text-align:left;font-weight:var(--font-semibold);color:var(--text-secondary);font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e5e7eb}.users-table td{padding:1rem 1.5rem;border-bottom:1px solid #f0f0f0;vertical-align:middle}.users-table tr:hover{background:var(--bg-hover)}.users-table tr.admin-row{background:linear-gradient(90deg,rgba(102,126,234,.05) 0%,transparent 100%)}.user-cell{display:flex;align-items:center;gap:var(--space-3)}.user-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:var(--font-semibold)}.user-name{font-weight:var(--font-medium);color:#1a1a2e}.email-cell{color:var(--text-tertiary)}.date-cell{color:#888;font-size:.9rem}.bookmarks-cell{text-align:center}.badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:var(--font-medium)}.badge-admin{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.badge-user{background:#e5e7eb;color:var(--text-secondary)}.actions-cell{min-width:180px}.actions-wrapper{display:flex;gap:var(--space-2);align-items:center}.btn-admin-action{padding:.4rem .8rem;border-radius:var(--radius-md);border:none;font-size:.85rem;cursor:pointer;transition:var(--transition-normal);white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;min-width:-moz-fit-content;min-width:fit-content;min-height:32px;line-height:1.2}.btn-admin-impersonate{background-color:#dbeafe;color:#1d4ed8}.btn-admin-impersonate:hover{background-color:#bfdbfe}.btn-admin-delete{background-color:#fee2e2;color:#dc2626}.btn-admin-delete:hover{background-color:#fecaca}.btn-admin-delete.confirm{background-color:#dc2626;color:#fff;animation:pulse .5s infinite}.protected-label{color:var(--text-muted);font-size:.85rem;font-style:italic}.impersonation-banner{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:1rem 1.5rem;border-radius:var(--radius-xl);display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8);box-shadow:0 4px 15px #f59e0b4d}.impersonation-info{display:flex;align-items:center;gap:var(--space-4)}.impersonation-icon{font-size:var(--text-2xl)}.impersonated-user{display:block;font-weight:var(--font-semibold)}.btn-stop-impersonate{background:var(--bg-primary);color:#d97706;border:none;padding:.75rem 1.5rem;border-radius:var(--radius-lg);font-weight:var(--font-semibold);cursor:pointer;transition:var(--transition-normal)}.btn-stop-impersonate:hover{background:#fef3c7;transform:translateY(-2px)}.impersonation-notice{background:#fef3c7;border:1px solid #f59e0b;border-radius:var(--radius-lg);padding:var(--space-6);text-align:center}.impersonation-notice p{margin:.5rem 0;color:#92400e}.sources-section{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:0 2px 10px #00000014;padding:var(--space-4)}.system-section{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:0 2px 10px #00000014;padding:var(--space-8)}.system-info h3,.system-actions h3{margin-bottom:var(--space-4);color:#1a1a2e}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-bottom:var(--space-8)}.info-item{background:var(--bg-hover);padding:var(--space-4);border-radius:var(--radius-lg)}.info-label{display:block;color:var(--text-tertiary);font-size:.85rem;margin-bottom:.25rem}.info-value{font-weight:var(--font-semibold);color:#1a1a2e}.coming-soon{color:var(--text-muted);font-style:italic}.action-row{display:flex;flex-direction:column;gap:var(--space-2);align-items:flex-start}.action-btn{background:#1a1a2e;color:#fff;border:none;padding:.6rem 1.1rem;border-radius:var(--radius-lg);font-size:.9rem;font-weight:var(--font-semibold);cursor:pointer;transition:background .15s ease,transform .05s ease}.action-btn:hover:not(:disabled){background:#2a2a4e}.action-btn:active:not(:disabled){transform:translateY(1px)}.action-btn:disabled{opacity:.6;cursor:not-allowed}.action-hint{color:var(--text-tertiary);font-size:.82rem;margin:0;line-height:1.4}.loading-state{text-align:center;padding:4rem}.loading-spinner{font-size:3rem;animation:spin 1s linear infinite}.no-results{text-align:center;padding:3rem;color:var(--text-tertiary)}.dark-mode .admin-header h1{color:#f3f4f6}.dark-mode .admin-subtitle{color:var(--text-muted)}.dark-mode .stat-card{background:#1f2937;box-shadow:0 2px 10px #0000004d}.dark-mode .admin-container .stat-value{color:#f3f4f6}.dark-mode .admin-container .stat-label,.dark-mode .tab-btn{color:var(--text-muted)}.dark-mode .tab-btn.active{color:var(--brand-primary)}.dark-mode .admin-tabs{border-bottom-color:var(--text-secondary)}.dark-mode .users-section,.dark-mode .system-section,.dark-mode .sources-section{background:#1f2937}.dark-mode .users-toolbar{background:#111827;border-bottom-color:var(--text-secondary)}.dark-mode .search-box input{background:#374151;border-color:var(--text-secondary);color:#f3f4f6}.dark-mode .users-table th{background:#111827;color:#d1d5db;border-bottom-color:var(--text-secondary)}.dark-mode .users-table td{border-bottom-color:var(--text-secondary)}.dark-mode .users-table tr:hover{background:#111827}.dark-mode .btn-admin-action{font-weight:var(--font-medium)}.dark-mode .btn-admin-impersonate{background-color:#1e3a5f;color:#93c5fd}.dark-mode .btn-admin-impersonate:hover{background-color:#1e40af;color:#fff}.dark-mode .btn-admin-delete{background-color:#450a0a;color:#fca5a5}.dark-mode .btn-admin-delete:hover{background-color:#7f1d1d;color:#fff}.dark-mode .btn-admin-delete.confirm{background-color:#dc2626;color:#fff}.dark-mode .user-name{color:#f3f4f6}.dark-mode .email-cell{color:var(--text-muted)}.dark-mode .info-item{background:#111827}.dark-mode .info-value,.dark-mode .system-info h3,.dark-mode .system-actions h3{color:#f3f4f6}@media(max-width:1024px){.stats-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.admin-container{padding:var(--space-4)}.admin-header h1{font-size:1.5rem}.admin-tabs{flex-wrap:wrap;gap:var(--space-2)}.tab-btn{padding:.5rem 1rem;font-size:.9rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.stat-card{padding:var(--space-4)}.stat-value{font-size:var(--text-2xl)}.users-toolbar{flex-direction:column;gap:var(--space-4)}.search-box{max-width:100%}.users-table th,.users-table td{padding:.75rem 1rem}.actions-wrapper{flex-direction:column;gap:.25rem}.impersonation-banner{flex-direction:column;gap:var(--space-4);text-align:center}.impersonation-info{flex-direction:column}}@media(max-width:480px){.admin-container{padding:var(--space-3)}.admin-header h1{font-size:1.3rem}.admin-tabs{gap:var(--space-1)}.tab-btn{padding:.4rem .75rem;font-size:.8rem;flex:1;text-align:center}.stats-grid{grid-template-columns:1fr}.user-cell{flex-direction:column;align-items:flex-start;gap:.25rem}.user-avatar{width:28px;height:28px;font-size:.7rem}}.sources-section{background:var(--bg-primary);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:0 2px 10px #00000014}.customization-overview{margin-bottom:var(--space-8)}.customization-overview h3{color:var(--text-primary);font-size:1.25rem;margin-bottom:var(--space-2)}.section-description{color:var(--text-secondary);font-size:.9rem;margin-bottom:var(--space-4);max-width:600px}.customization-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-4);margin-top:var(--space-4)}.stat-card.small{padding:var(--space-4)}.stat-card.small .stat-value{font-size:1.5rem}.stat-card.small .stat-label{font-size:.75rem}.top-sources-section{margin-top:var(--space-6)}.top-sources-section h3{color:var(--text-primary);font-size:1.25rem;margin-bottom:var(--space-4)}.sources-table-container{overflow-x:auto;margin-top:var(--space-4);max-width:100%}.sources-table{width:100%;min-width:600px;border-collapse:collapse;font-size:.875rem;table-layout:fixed}.sources-table th{background:var(--bg-secondary);padding:var(--space-2) var(--space-3);text-align:left;font-weight:600;color:var(--text-secondary);white-space:nowrap;border-bottom:2px solid var(--border-color)}.sources-table th:nth-child(1){width:5%}.sources-table th:nth-child(2){width:23%}.sources-table th:nth-child(3){width:10%}.sources-table th:nth-child(4){width:10%}.sources-table th:nth-child(5){width:17%}.sources-table th:nth-child(6){width:18%}.sources-table th:nth-child(7){width:17%}.sources-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-color);vertical-align:middle;overflow:hidden;text-overflow:ellipsis}.sources-table tr:hover{background:var(--bg-hover)}.source-cell strong{color:var(--text-primary);word-break:break-word}.count-cell{font-weight:600;color:var(--text-primary);text-align:center}.direction-cell{white-space:nowrap}.direction-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:12px;font-size:.75rem;font-weight:500;margin-right:4px;white-space:nowrap}.direction-badge.left{background:#3b82f61a;color:#2563eb}.direction-badge.right{background:#ef44441a;color:#dc2626}.direction-badge.up{background:#22c55e1a;color:#16a34a}.direction-badge.down{background:#f973161a;color:#ea580c}.direction-badge.neutral{background:var(--bg-secondary);color:var(--text-tertiary)}.date-cell{color:var(--text-secondary);font-size:.8rem;white-space:nowrap}.filter-section{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--space-4);margin-top:var(--space-4)}.filter-section h4{margin:0 0 var(--space-3) 0;font-size:.9rem;color:var(--text-secondary)}.date-filter-row{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.date-filter-row label{display:flex;align-items:center;gap:var(--space-2);font-size:.875rem;color:var(--text-secondary)}.date-filter-row input[type=date]{padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:.875rem}.btn-text{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:var(--space-2);font-size:.875rem}.btn-text:hover{color:var(--text-primary);text-decoration:underline}.test-entry-section{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--space-4);margin-top:var(--space-4);border:1px dashed var(--border-color)}.test-entry-section h4{margin:0 0 var(--space-3) 0;font-size:.9rem;color:var(--text-secondary)}.test-entry-form{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end}.test-source-input{flex:1;min-width:200px;padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:.875rem}.test-entry-selects{display:flex;flex-wrap:wrap;gap:var(--space-3)}.test-entry-selects label{display:flex;align-items:center;gap:var(--space-2);font-size:.8rem;color:var(--text-secondary)}.test-entry-selects select{padding:var(--space-1) var(--space-2);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:.8rem}.no-data{text-align:center;padding:var(--space-8);color:var(--text-secondary)}.no-data p{max-width:400px;margin:0 auto}@media(max-width:768px){.customization-stats-grid{grid-template-columns:repeat(2,1fr)}.sources-table{font-size:.75rem;min-width:500px}.sources-table th,.sources-table td{padding:var(--space-1) var(--space-2)}.direction-badge{font-size:.7rem;padding:1px 4px}.date-filter-row,.date-filter-row label{flex-direction:column;align-items:stretch}.test-entry-form{flex-direction:column;align-items:flex-start}.test-entry-form .test-source-input{width:100%}.test-entry-form button{align-self:flex-start}.test-entry-selects{flex-direction:column;align-items:flex-start;width:100%}}.section-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.section-header-row h3{margin:0}.offer-controls{display:flex;align-items:center;gap:var(--space-3)}.flagged-count{font-size:.875rem;color:var(--color-warning);font-weight:500}.checkbox-col{width:40px;text-align:center}.checkbox-cell{text-align:center}.checkbox-cell input[type=checkbox]{width:18px;height:18px;cursor:pointer}.flagged-row{background:rgba(var(--color-warning-rgb),.1)}.flagged-row:hover{background:rgba(var(--color-warning-rgb),.15)}.active-offers-section{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border-color)}.active-offers-section h3{margin-bottom:var(--space-3)}.offers-table-container{overflow-x:auto;max-width:100%}.offers-table{width:100%;min-width:700px;border-collapse:collapse;font-size:.875rem}.offers-table th{background:var(--bg-secondary);padding:var(--space-2) var(--space-3);text-align:left;font-weight:600;color:var(--text-secondary);white-space:nowrap;border-bottom:2px solid var(--border-color)}.offers-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-color);vertical-align:middle}.offers-table tr:hover{background:var(--bg-hover)}.suggestion-cell{white-space:nowrap}.suggestion-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.75rem;font-weight:500;margin-right:4px}.suggestion-badge.credibility{background:var(--color-info-bg);color:var(--color-info)}.suggestion-badge.bias{background:var(--color-warning-bg);color:var(--color-warning)}.consensus-cell{white-space:nowrap}.consensus-badge{display:inline-block;padding:2px 6px;border-radius:4px;font-size:.75rem;font-weight:500}.consensus-badge.more_credible{background:var(--color-success-bg);color:var(--color-success)}.consensus-badge.less_credible{background:var(--color-error-bg);color:var(--color-error)}.consensus-badge.more_left{background:#e3f2fd;color:#1565c0}.consensus-badge.more_right{background:#ffebee;color:#c62828}.consensus-badge.mixed{background:var(--bg-secondary);color:var(--text-secondary)}.agreement{font-size:.7rem;color:var(--text-muted)}.responses-cell{white-space:nowrap}.response-count{display:inline-flex;align-items:center;gap:2px;font-size:.75rem;padding:2px 6px;border-radius:4px}.response-count.accepted{background:var(--color-success-bg);color:var(--color-success)}.response-count.rejected{background:var(--color-error-bg);color:var(--color-error)}.response-count.ignored{background:var(--bg-secondary);color:var(--text-muted)}.tooltip-wrapper{position:relative;display:inline-flex;align-items:center}.styled-tooltip{position:absolute;z-index:99999;padding:.5rem .75rem;font-size:.75rem;font-weight:500;color:#fff;background:#1f2937;border-radius:6px;box-shadow:0 4px 12px #00000026;white-space:pre-line;max-width:250px;pointer-events:none;animation:tooltipFadeIn .15s ease}.styled-tooltip-bottom{transform:translate(-50%)}.styled-tooltip-bottom:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-bottom-color:#1f2937}.styled-tooltip-top{transform:translate(-50%) translateY(-100%)}.styled-tooltip-top:before{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#1f2937}.styled-tooltip-left{transform:translate(-100%) translateY(-50%)}.styled-tooltip-left:before{content:"";position:absolute;left:100%;top:50%;transform:translateY(-50%);border:6px solid transparent;border-left-color:#1f2937}.styled-tooltip-right{transform:translateY(-50%)}.styled-tooltip-right:before{content:"";position:absolute;right:100%;top:50%;transform:translateY(-50%);border:6px solid transparent;border-right-color:#1f2937}@keyframes tooltipFadeIn{0%{opacity:0}to{opacity:1}}body.dark-mode .styled-tooltip{background:#374151;color:#f3f4f6}body.dark-mode .styled-tooltip-bottom:before{border-bottom-color:#374151}body.dark-mode .styled-tooltip-top:before{border-top-color:#374151}body.dark-mode .styled-tooltip-left:before{border-left-color:#374151}body.dark-mode .styled-tooltip-right:before{border-right-color:#374151}.credibility-badge-container{position:relative;display:inline-flex;align-items:center;gap:.5rem}.credibility-badge-compact-wrapper{position:relative;display:inline-flex;align-items:center;gap:.25rem}.credibility-badge-compact{display:inline-flex;height:1.5rem;width:1.5rem;cursor:help;align-items:center;justify-content:center;border-radius:9999px;font-size:.875rem;line-height:1.25rem}.credibility-badge{display:inline-flex;align-items:center;gap:.25rem;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500}.bias-badge{display:inline-flex;align-items:center;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500}.credibility-green{border-width:1px;--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.credibility-blue{border-width:1px;--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.credibility-teal{border-width:1px;--tw-border-opacity: 1;border-color:rgb(153 246 228 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(204 251 241 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(17 94 89 / var(--tw-text-opacity, 1))}.credibility-yellow{border-width:1px;--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.credibility-orange{border-width:1px;--tw-border-opacity: 1;border-color:rgb(254 215 170 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(154 52 18 / var(--tw-text-opacity, 1))}.credibility-red{border-width:1px;--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.credibility-gray{border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.bias-purple{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(107 33 168 / var(--tw-text-opacity, 1))}.bias-blue{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.bias-lightblue{--tw-bg-opacity: 1;background-color:rgb(224 242 254 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(7 89 133 / var(--tw-text-opacity, 1))}.bias-gray{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.bias-lightred{--tw-bg-opacity: 1;background-color:rgb(255 228 230 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(159 18 57 / var(--tw-text-opacity, 1))}.bias-red{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.bias-darkred{--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.badge-icon{font-size:.875rem;line-height:1.25rem;line-height:1}.badge-text{font-weight:500}.political-bias-badge-inline{display:inline-flex;align-items:center;padding:.1rem .4rem;border-radius:var(--radius-full);font-size:.65rem;font-weight:var(--font-semibold);border:1px solid;margin-left:.35rem;white-space:nowrap;cursor:help}body.dark-mode .political-bias-badge-inline{opacity:.9}.article-badges{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-xl);font-size:var(--text-xs);font-weight:var(--font-medium);white-space:nowrap;transition:var(--transition-fast)}.reading-time-badge{background-color:var(--color-info-bg);color:var(--color-info-text);border:1px solid #93c5fd}.reading-time-short{background-color:var(--color-success-bg);color:var(--color-success-text);border:1px solid #6ee7b7}.reading-time-medium{background-color:var(--color-info-bg);color:var(--color-info-text);border:1px solid #93c5fd}.reading-time-long{background-color:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid #fcd34d}.reading-time-badge:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.paywall-badge{background-color:var(--color-error-bg);color:var(--color-error-text);border:1px solid #fca5a5}.paywall-badge.subscribed{background-color:var(--color-success-bg, #dcfce7);color:var(--color-success-text, #166534);border:1px solid #86efac}.paywall-badge:hover{background-color:#fecaca;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.paywall-badge.subscribed:hover{background-color:#bbf7d0}.date-badge{background-color:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-medium);margin-left:auto}.date-badge:hover{background-color:var(--bg-active);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.read-badge{background-color:#dcfce7;color:#166534;border:1px solid #86efac}.read-badge:hover{background-color:#bbf7d0;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.dark-mode .reading-time-badge{background-color:#3b82f633;color:#93c5fd;border-color:#3b82f64d}.dark-mode .reading-time-short{background-color:#10b98133;color:#6ee7b7;border-color:#10b9814d}.dark-mode .reading-time-medium{background-color:#3b82f633;color:#93c5fd;border-color:#3b82f64d}.dark-mode .reading-time-long{background-color:#f59e0b33;color:#fcd34d;border-color:#f59e0b4d}.dark-mode .paywall-badge{background-color:#ef444433;color:#fca5a5;border-color:#ef44444d}.dark-mode .paywall-badge.subscribed{background-color:#16a34a33;color:#86efac;border-color:#16a34a4d}.dark-mode .date-badge{background-color:#6b728033;color:var(--text-tertiary);border-color:#6b72804d}.dark-mode .read-badge{background-color:#16a34a33;color:#86efac;border-color:#16a34a4d}@media(max-width:768px){.badge{font-size:.7rem;padding:var(--space-1) var(--space-2)}}.badge-inline{display:inline-flex;align-items:center;gap:2px;padding:1px 4px;border-radius:var(--radius-lg);font-size:.65rem;font-weight:var(--font-medium);white-space:nowrap;margin-right:2px}.badge-inline:last-child{margin-right:0}.reading-time-badge-inline{background-color:var(--color-info-bg);color:var(--color-info-text);border:1px solid #93c5fd}.reading-time-badge-inline.reading-time-short{background-color:var(--color-success-bg);color:var(--color-success-text);border:1px solid #6ee7b7}.reading-time-badge-inline.reading-time-medium{background-color:var(--color-info-bg);color:var(--color-info-text);border:1px solid #93c5fd}.reading-time-badge-inline.reading-time-long{background-color:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid #fcd34d}.paywall-badge-inline{background-color:var(--color-error-bg, #fee2e2);color:var(--color-error-text, #dc2626);border:1px solid #fca5a5;font-size:.7rem;padding:1px 4px}.paywall-badge-inline.subscribed{background-color:var(--color-success-bg, #dcfce7);color:var(--color-success-text, #166534);border:1px solid #86efac}.date-badge-inline{background-color:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-medium)}.read-badge-inline{background-color:#dcfce7;color:#166534;border:1px solid #86efac;font-weight:600}.dark-mode .reading-time-badge-inline{background-color:#3b82f633;color:#93c5fd;border-color:#3b82f64d}.dark-mode .reading-time-badge-inline.reading-time-short{background-color:#10b98133;color:#6ee7b7;border-color:#10b9814d}.dark-mode .reading-time-badge-inline.reading-time-medium{background-color:#3b82f633;color:#93c5fd;border-color:#3b82f64d}.dark-mode .reading-time-badge-inline.reading-time-long{background-color:#f59e0b33;color:#fcd34d;border-color:#f59e0b4d}.dark-mode .paywall-badge-inline{background-color:#ef444433;color:#f87171;border-color:#ef44444d}.dark-mode .paywall-badge-inline.subscribed{background-color:#16a34a33;color:#86efac;border-color:#16a34a4d}.dark-mode .date-badge-inline{background-color:#6b728033;color:var(--text-tertiary);border-color:#6b72804d}.dark-mode .read-badge-inline{background-color:#16a34a33;color:#86efac;border-color:#16a34a4d}.article-actions-btn{background:transparent;border:1px solid var(--border-light);border-radius:4px;padding:4px 8px;cursor:pointer;font-size:1rem;color:var(--text-secondary);transition:all .15s ease;display:flex;align-items:center;justify-content:center;min-width:32px;height:28px;letter-spacing:2px}.article-actions-btn:hover{background:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-medium)}.article-actions-btn.active{background:var(--bg-tertiary);color:var(--accent-color);border-color:var(--accent-color)}.article-actions-menu{position:fixed;z-index:10000;background:var(--bg-primary);border:1px solid var(--border-medium);border-radius:8px;box-shadow:0 4px 20px #00000040;min-width:220px;padding:6px 0 10px;animation:menuFadeIn .15s ease;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--border-medium) transparent}.article-actions-menu::-webkit-scrollbar{width:6px}.article-actions-menu::-webkit-scrollbar-track{background:transparent}.article-actions-menu::-webkit-scrollbar-thumb{background-color:var(--border-medium);border-radius:3px}.article-actions-menu::-webkit-scrollbar-thumb:hover{background-color:var(--text-tertiary)}@keyframes menuFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 14px;background:transparent;border:none;cursor:pointer;text-align:left;color:var(--text-primary);font-size:.9rem;transition:background .1s ease}.menu-item:hover{background:var(--bg-secondary)}.menu-item.active{background:var(--bg-tertiary);color:var(--accent-color)}.menu-item.active .menu-icon{transform:scale(1.1)}.menu-icon{font-size:1rem;width:20px;text-align:center;flex-shrink:0}.menu-text{flex:1;display:flex;flex-direction:column;min-width:0}.menu-label{flex:1}.menu-subtitle{font-size:.7rem;color:var(--text-muted);margin-top:1px;line-height:1.2}.menu-divider{height:1px;background:var(--border-light);margin:4px 0}.menu-group{padding:4px 0}.menu-group:not(:first-child){border-top:1px solid var(--border-light);margin-top:4px;padding-top:8px}.menu-group-title{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);padding:4px 14px 6px}[data-theme=dark] .article-actions-menu{background:var(--bg-secondary);border-color:var(--border-medium)}[data-theme=dark] .menu-item:hover{background:var(--bg-tertiary)}@media(max-width:767px){.article-actions-menu{min-width:240px}.menu-item{padding:10px 14px}}@media(min-width:768px)and (max-width:1024px){.article-actions-menu{min-width:250px;max-height:calc(100vh - 80px);max-height:calc(100dvh - 80px)}}.menu-recommendation-star{margin-left:4px;font-size:.9em;cursor:help;filter:saturate(1.2)}.article-action-panel-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10000;background:#0000004d;animation:overlayFadeIn .15s ease;overflow:hidden}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.article-action-panel{position:fixed;width:420px;max-width:calc(100vw - 32px);max-height:80vh;background:var(--bg-primary);border-radius:12px;box-shadow:0 8px 40px #00000040;display:flex;flex-direction:column;overflow:hidden;animation:panelSlideIn .2s ease}@keyframes panelSlideIn{0%{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.action-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border-light);background:var(--bg-secondary);flex-shrink:0}.action-panel-title{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.95rem;color:var(--text-primary)}.action-panel-icon{font-size:1.1rem}.action-panel-close{background:transparent;border:none;font-size:1.5rem;color:var(--text-tertiary);cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .15s ease;line-height:1;flex-shrink:0}.action-panel-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.action-panel-content{padding:16px;overflow-y:auto;overflow-x:hidden;flex:1;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.action-panel-content .article-info-panel-inline,.action-panel-content .ai-summary-panel{background:transparent;border:none;padding:0;margin:0;animation:none}.action-panel-content .ai-summary-header{display:none}.action-panel-content .fact-check-panel{padding:0}.action-panel-content .bias-indicator{margin:0}@media(max-width:500px){.article-action-panel{width:calc(100vw - 24px);left:12px!important;right:12px;max-height:70vh}}[data-theme=dark] .article-action-panel-overlay{background:#00000080}[data-theme=dark] .article-action-panel{background:var(--bg-secondary);border:1px solid var(--border-medium)}[data-theme=dark] .action-panel-header{background:var(--bg-tertiary)}body.dark-mode .article-action-panel-overlay{background:#00000080}body.dark-mode .article-action-panel{background:#1e293b;border:1px solid #334155}body.dark-mode .action-panel-header{background:#0f172a}.term-tooltip-trigger{position:relative;display:inline;cursor:help;outline:none}.term-tooltip-label{border-bottom:1px dotted currentColor}.term-tooltip-trigger:focus-visible .term-tooltip-label{outline:2px solid var(--accent-primary, #4ea1f5);outline-offset:2px;border-radius:2px}.term-tooltip-popup{display:none;position:absolute;bottom:calc(100% + 6px);left:0;width:280px;max-width:90vw;background:var(--bg-secondary, #1e1e1e);color:var(--text-primary, #f0f0f0);border:1px solid var(--border-default, #333);border-radius:6px;padding:10px 12px;font-size:13px;line-height:1.45;z-index:1000;box-shadow:0 4px 12px #0006;cursor:default}.term-tooltip-trigger:hover .term-tooltip-popup,.term-tooltip-trigger:focus-within .term-tooltip-popup{display:block}.term-tooltip-def{display:block;margin-bottom:8px;color:var(--text-secondary, #d0d0d0)}.term-tooltip-learn-more{display:inline-block;color:var(--accent-primary, #4ea1f5);text-decoration:none;font-size:12px;font-weight:500}.term-tooltip-learn-more:hover,.term-tooltip-learn-more:focus-visible{text-decoration:underline}@media(prefers-color-scheme:light){.term-tooltip-popup{background:var(--bg-secondary, #fafafa);color:var(--text-primary, #1a1a1a);border-color:var(--border-default, #d0d0d0);box-shadow:0 4px 12px #0000001f}.term-tooltip-def{color:var(--text-secondary, #404040)}}.source-edit-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .15s ease-out}.source-edit-dialog{background:var(--bg-primary, #fff);border-radius:12px;box-shadow:0 20px 40px #0000004d;width:90%;max-width:400px;max-height:85vh!important;display:flex!important;flex-direction:column!important;overflow:hidden;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.source-edit-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-color, #e5e7eb);flex-shrink:0}.source-edit-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #111)}.source-edit-header .close-btn{background:none;border:none;font-size:24px;color:var(--text-secondary, #666);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .15s}.source-edit-header .close-btn:hover{background:var(--bg-secondary, #f3f4f6)}.source-edit-content{padding:20px;flex:1 1 auto;overflow-y:auto;min-height:0;max-height:calc(85vh - 130px)}.source-name-display{display:flex;align-items:center;gap:8px;margin-bottom:20px;padding:12px;background:var(--bg-secondary, #f9fafb);border-radius:8px}.source-name-display .label{color:var(--text-secondary, #666);font-size:13px}.source-name-display .value{font-weight:600;color:var(--text-primary, #111);flex:1}.source-name-display .customized-badge{font-size:11px;padding:2px 8px;background:var(--accent-color, #3b82f6);color:#fff;border-radius:10px}.rating-field{margin-bottom:16px}.rating-field label{display:block;font-size:13px;font-weight:500;color:var(--text-secondary, #666);margin-bottom:6px}.rating-field select{width:100%;padding:10px 12px;font-size:14px;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;background:var(--bg-primary, #fff);color:var(--text-primary, #111);cursor:pointer;transition:border-color .15s,box-shadow .15s}.rating-field select:focus{outline:none;border-color:var(--accent-color, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.helper-text{font-size:12px;color:var(--text-muted, #999);margin-top:16px;text-align:center}.loading-state{padding:40px;text-align:center;color:var(--text-secondary, #666)}.source-edit-actions{display:flex;gap:12px;padding:16px 20px;border-top:1px solid var(--border-color, #e5e7eb);background:var(--bg-secondary, #f9fafb);flex-shrink:0}.source-edit-actions button{flex:1;padding:10px 16px;font-size:14px;font-weight:500;border-radius:8px;cursor:pointer;transition:all .15s}.source-edit-actions .btn-secondary{background:var(--bg-primary, #fff);border:1px solid var(--border-color, #e5e7eb);color:var(--text-primary, #111)}.source-edit-actions .btn-secondary:hover{background:var(--bg-hover, #f3f4f6)}.source-edit-actions .btn-primary{background:var(--accent-color, #3b82f6);border:none;color:#fff}.source-edit-actions .btn-primary:hover{background:var(--accent-hover, #2563eb)}.source-edit-actions button:disabled{opacity:.6;cursor:not-allowed}@media(prefers-color-scheme:dark){.source-edit-dialog{background:var(--bg-primary, #1f2937);border:1px solid var(--border-color, #374151)}.source-edit-header{border-color:var(--border-color, #374151)}.source-name-display{background:var(--bg-secondary, #111827)}.rating-field select,.source-edit-actions{background:var(--bg-secondary, #111827);border-color:var(--border-color, #374151)}}.exclude-section{margin-top:20px;padding-top:16px;border-top:1px solid var(--border-color, #e5e7eb)}.exclude-section h4{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--text-primary, #111)}.paywall-section{margin-top:20px;padding-top:16px;border-top:1px solid var(--border-color, #e5e7eb)}.paywall-section h4{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--text-primary, #111)}.checkbox-field{margin-bottom:12px}.checkbox-field label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:var(--text-primary, #111)}.checkbox-field input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--accent-color, #3b82f6)}.checkbox-field .field-hint{margin:4px 0 0 26px;font-size:11px;color:var(--text-muted, #999)}.subscription-field{margin-left:16px;padding-left:12px;border-left:2px solid var(--accent-color, #3b82f6)}.subscription-field label span{color:var(--success-color, #10b981)}.article-publisher-section{padding:12px 14px;margin:12px 0;border:1px solid var(--border-color, #e5e7eb);border-radius:6px;background:var(--bg-subtle, #fafafa)}.article-publisher-section h4{margin:0 0 6px;font-size:13px;font-weight:600;color:var(--text-color, #111827)}.article-publisher-section .field-hint{margin:0 0 10px;font-size:12px;color:var(--text-muted, #6b7280);line-height:1.4}.publisher-edit-row{display:flex;gap:8px;align-items:stretch}.publisher-edit-row .publisher-input{flex:1;padding:6px 10px;border:1px solid var(--border-color, #d1d5db);border-radius:4px;font-size:13px;background:var(--bg-color, #fff);color:var(--text-color, #111827)}.publisher-edit-row .publisher-input:focus{outline:none;border-color:var(--accent-color, #3b82f6);box-shadow:0 0 0 2px #3b82f626}.publisher-edit-row .btn-primary{flex-shrink:0}.rating-section-header{margin:16px 0 8px;padding-top:12px;border-top:1px solid var(--border-color, #e5e7eb);font-size:13px;font-weight:600;color:var(--text-color, #111827)}.source-edit-tabs{display:flex;gap:4px;margin:16px 0 0;padding-top:12px;border-top:1px solid var(--border-color, #e5e7eb)}.source-edit-tab{flex:1;background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-color, #e5e7eb);border-radius:8px 8px 0 0;padding:8px 12px;cursor:pointer;font-size:13px;font-weight:500;color:var(--text-secondary, #6b7280);display:flex;flex-direction:column;align-items:flex-start;gap:2px;transition:background .15s,border-color .15s,color .15s}.source-edit-tab:hover{background:var(--bg-primary, #fff);color:var(--text-color, #111827)}.source-edit-tab.is-active{background:var(--bg-primary, #fff);color:var(--text-color, #111827);border-color:var(--accent-color, #3b82f6);border-bottom-color:var(--bg-primary, #fff);font-weight:600}.source-edit-tab-sub{font-size:10px;font-weight:400;color:var(--text-tertiary, #9ca3af);text-transform:uppercase;letter-spacing:.5px}@media(max-width:480px){.source-edit-dialog{width:95%;max-height:90vh;margin:10px}.source-edit-content{max-height:calc(90vh - 120px);padding:16px}.source-edit-header,.source-edit-actions{padding:12px 16px}}.ai-usage-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;z-index:10001;display:flex;align-items:center;justify-content:center;padding:1rem}.ai-usage-dialog{background:var(--bg-primary, #fff);border-radius:12px;max-width:480px;width:100%;box-shadow:0 20px 60px #0000004d;overflow:hidden}.ai-usage-dialog-header{display:flex;align-items:center;gap:.75rem;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.ai-usage-dialog-header .ai-icon{font-size:1.5rem}.ai-usage-dialog-header h3{margin:0;font-size:1.1rem;font-weight:600}.ai-usage-dialog-content{padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.feature-info{background:var(--bg-secondary, #f8f9fa);padding:1rem;border-radius:8px}.feature-info h4{margin:0 0 .5rem;font-size:1rem;color:var(--text-primary, #333)}.feature-info p{margin:0 0 .75rem;font-size:.9rem;color:var(--text-secondary, #666);line-height:1.5}.estimated-cost{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.estimated-cost .label{color:var(--text-secondary, #666)}.estimated-cost .cost{font-weight:600;color:var(--brand-primary, #6366f1)}.tier-info{border:1px solid var(--border-color, #e0e0e0);border-radius:8px;padding:1rem}.tier-info h4{margin:0 0 .75rem;font-size:.95rem;color:var(--text-primary, #333)}.tier-details{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.tier-row{display:flex;justify-content:space-between;font-size:.85rem}.tier-row .label{color:var(--text-secondary, #666)}.tier-row .value{font-weight:500;color:var(--text-primary, #333)}.tier-note{margin:0;font-size:.8rem;color:var(--text-tertiary, #888);font-style:italic;padding-top:.5rem;border-top:1px solid var(--border-color, #e0e0e0)}.warning-box{display:flex;gap:.75rem;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;padding:1rem}.warning-box .warning-icon{font-size:1.25rem;flex-shrink:0}.warning-box p{margin:0;font-size:.85rem;color:#92400e;line-height:1.5}.ai-usage-dialog-actions{display:flex;gap:.75rem;padding:1rem 1.5rem;background:var(--bg-secondary, #f8f9fa);border-top:1px solid var(--border-color, #e0e0e0)}.ai-usage-dialog-actions button{flex:1;padding:.75rem 1rem;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel{background:#fff;border:1px solid var(--border-color, #ddd);color:var(--text-secondary, #666)}.btn-cancel:hover{background:var(--bg-secondary, #f0f0f0)}.btn-confirm{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;color:#fff}.btn-confirm:hover{opacity:.9;transform:translateY(-1px)}.btn-upgrade{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;color:#fff}.btn-upgrade:hover{opacity:.9;transform:translateY(-1px)}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;gap:1rem}.loading-state .loading-spinner{width:32px;height:32px;border:3px solid var(--border-color, #e0e0e0);border-top-color:#6366f1;border-radius:50%;animation:spin 1s linear infinite}.loading-state p{color:var(--text-secondary, #666);font-size:.9rem}.usage-bar-container{height:6px;background:var(--bg-secondary, #e5e7eb);border-radius:3px;margin-top:.75rem;overflow:hidden}.usage-bar{height:100%;background:linear-gradient(90deg,#10b981,#3b82f6);border-radius:3px;transition:width .3s ease}.usage-bar.high{background:linear-gradient(90deg,#f59e0b,#ea580c)}.usage-bar.over-limit{background:linear-gradient(90deg,#ef4444,#dc2626)}.low-remaining{color:#ef4444!important;font-weight:600}.tier-badge{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff!important;padding:.2rem .5rem;border-radius:4px;font-size:.8rem}.info-box{display:flex;gap:.75rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:1rem}.info-box .info-icon{font-size:1.25rem;flex-shrink:0}.info-box p{margin:0;font-size:.85rem;color:#1e40af;line-height:1.5}.limit-warning.approaching{display:flex;gap:.75rem;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;padding:1rem}.limit-warning.approaching .warning-icon{font-size:1.25rem;flex-shrink:0}.limit-warning.approaching p{margin:0;font-size:.85rem;color:#92400e;line-height:1.5}.limit-warning.over-limit{display:flex;gap:.75rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:1rem}.limit-warning.over-limit .warning-icon{font-size:1.25rem;flex-shrink:0}.limit-warning.over-limit p{margin:0;font-size:.85rem;color:#991b1b;line-height:1.5}.limit-warning.over-limit a{color:#dc2626;font-weight:600}body.dark-mode .ai-usage-dialog{background:var(--bg-primary, #1a1a1a)}body.dark-mode .feature-info{background:var(--bg-tertiary, #2a2a2a)}body.dark-mode .feature-info h4,body.dark-mode .tier-info h4{color:var(--text-primary, #eee)}body.dark-mode .tier-info{border-color:var(--border-color, #444)}body.dark-mode .tier-row .value{color:var(--text-primary, #eee)}body.dark-mode .tier-note{border-top-color:var(--border-color, #444)}body.dark-mode .warning-box{background:#422006;border-color:#92400e}body.dark-mode .warning-box p{color:#fcd34d}body.dark-mode .ai-usage-dialog-actions{background:var(--bg-secondary, #222);border-top-color:var(--border-color, #444)}body.dark-mode .btn-cancel{background:var(--bg-tertiary, #333);border-color:var(--border-color, #555);color:var(--text-secondary, #aaa)}body.dark-mode .btn-cancel:hover{background:var(--bg-secondary, #444)}body.dark-mode .loading-state .loading-spinner{border-color:var(--border-color, #444);border-top-color:#8b5cf6}body.dark-mode .usage-bar-container{background:var(--bg-tertiary, #333)}body.dark-mode .info-box{background:#1e3a5f;border-color:#3b82f6}body.dark-mode .info-box p{color:#93c5fd}body.dark-mode .limit-warning.approaching{background:#422006;border-color:#92400e}body.dark-mode .limit-warning.approaching p{color:#fcd34d}body.dark-mode .limit-warning.over-limit{background:#450a0a;border-color:#991b1b}body.dark-mode .limit-warning.over-limit p{color:#fca5a5}body.dark-mode .limit-warning.over-limit a{color:#f87171}@media(max-width:500px){.ai-usage-dialog{margin:.5rem;max-height:90vh;overflow-y:auto}.ai-usage-dialog-content,.ai-usage-dialog-actions{padding:1rem}}.watchlist-guide-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:10000}.watchlist-guide-dialog{background:var(--bg-primary, #fff);border-radius:12px;width:90%;max-width:440px;box-shadow:0 8px 32px #0003;overflow:hidden}.watchlist-guide-header{display:flex;align-items:center;gap:8px;padding:16px 20px;border-bottom:1px solid var(--border-color, #e5e7eb)}.watchlist-guide-header h3{margin:0;font-size:16px;flex:1}.guide-icon{font-size:20px}.guide-close{background:none;border:none;font-size:18px;cursor:pointer;color:var(--text-tertiary, #999);padding:4px}.watchlist-guide-body{padding:20px}.guide-intro{font-size:14px;color:var(--text-secondary, #555);margin:0 0 16px;line-height:1.5}.guide-search-preview{background:var(--bg-secondary, #f5f5f5);border-radius:8px;padding:10px 14px;margin-bottom:16px;display:flex;align-items:center;gap:8px}.preview-label{font-size:12px;color:var(--text-tertiary, #999);white-space:nowrap}.preview-query{font-size:14px;font-weight:600;color:var(--text-primary, #333)}.guide-steps{display:flex;flex-direction:column;gap:12px}.guide-step{display:flex;align-items:flex-start;gap:10px}.step-number{width:24px;height:24px;border-radius:50%;background:var(--accent-color, #4a90d9);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0}.step-text{font-size:13px;color:var(--text-secondary, #555);line-height:1.5;padding-top:2px}.watchlist-guide-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--border-color, #e5e7eb)}.guide-cancel-btn{padding:8px 16px;border:1px solid var(--border-color, #ddd);border-radius:6px;background:var(--bg-primary, #fff);color:var(--text-secondary, #666);cursor:pointer;font-size:13px}.guide-continue-btn{padding:8px 20px;border:none;border-radius:6px;background:var(--accent-color, #4a90d9);color:#fff;cursor:pointer;font-size:13px;font-weight:600}.guide-continue-btn:hover{opacity:.9}html[data-theme=dark] .watchlist-guide-dialog{background:#1e1e1e;border:1px solid #333}html[data-theme=dark] .guide-search-preview{background:#2a2a2a}.article-source{display:flex;align-items:center;gap:4px;min-width:0}.article-source .source-name{flex-shrink:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.article-source .source-edit-btn{flex-shrink:0}.add-article-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:10000;padding:16px}.add-article-modal{background:var(--card-bg, #ffffff);color:var(--text-primary, #1f2937);border-radius:10px;box-shadow:0 20px 50px #00000040;width:100%;max-width:540px;overflow:hidden;animation:add-article-enter .18s ease-out}@keyframes add-article-enter{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.add-article-header{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--border-color, #e5e7eb)}.add-article-header h2{margin:0;font-size:1.05rem;font-weight:600}.add-article-close{background:transparent;border:0;cursor:pointer;font-size:1.1rem;color:var(--text-muted, #6b7280);padding:4px 8px;border-radius:4px}.add-article-close:hover{background:var(--hover-bg, #f3f4f6);color:var(--text-primary, #1f2937)}.add-article-close:disabled{opacity:.4;cursor:not-allowed}.add-article-body{padding:20px 22px}.add-article-hint{margin:0 0 14px;font-size:.875rem;color:var(--text-muted, #6b7280);line-height:1.45}.add-article-input{width:100%;padding:10px 12px;font-size:.95rem;border:1px solid var(--border-color, #d1d5db);border-radius:6px;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937);font-family:inherit;box-sizing:border-box}.add-article-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea26}.add-article-input:disabled{opacity:.6;cursor:not-allowed}.add-article-source-input{width:100%;margin-top:10px;padding:10px 12px;font-size:.95rem;border:1px solid var(--border-color, #d1d5db);border-radius:6px;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937);font-family:inherit;box-sizing:border-box}.add-article-source-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea26}.add-article-source-input:disabled{opacity:.6;cursor:not-allowed}.add-article-source-input.add-article-source-input--autofilled{background:#f0fdf4;border-color:#86efac}.dark .add-article-source-input.add-article-source-input--autofilled,[data-theme=dark] .add-article-source-input.add-article-source-input--autofilled{background:#052e16;border-color:#166534}.add-article-source-hint{margin:4px 0 0;font-size:.78rem;color:var(--text-secondary, #6b7280);line-height:1.4}.dark .add-article-source-input,[data-theme=dark] .add-article-source-input{background:#111827;color:#f3f4f6;border-color:#374151}.dark .add-article-source-hint,[data-theme=dark] .add-article-source-hint{color:#9ca3af}.add-article-error{margin-top:10px;padding:8px 12px;background:#fef2f2;border:1px solid #fecaca;color:#991b1b;border-radius:6px;font-size:.85rem}.add-article-footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 22px;border-top:1px solid var(--border-color, #e5e7eb);background:var(--card-footer-bg, #f9fafb)}.add-article-cancel,.add-article-submit{padding:8px 16px;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;border:0;font-family:inherit}.add-article-cancel{background:transparent;color:var(--text-muted, #6b7280)}.add-article-cancel:hover:not(:disabled){background:var(--hover-bg, #f3f4f6);color:var(--text-primary, #1f2937)}.add-article-submit{background:#667eea;color:#fff}.add-article-submit:hover:not(:disabled){background:#5a67d8}.add-article-cancel:disabled,.add-article-submit:disabled{opacity:.5;cursor:not-allowed}.add-article-modal.manual-mode{max-width:640px}.add-article-shallow-notice{background:#fff7ed;border:1px solid #fed7aa;border-radius:6px;padding:12px 14px;margin:0 0 14px;font-size:.85rem;color:#7c2d12}.add-article-shallow-notice strong{display:block;margin-bottom:4px;color:#9a3412}.add-article-shallow-notice p{margin:4px 0;line-height:1.45}.add-article-shallow-hint{color:#92400e;font-size:.8rem}.add-article-choices{margin:6px 0 4px;padding-left:22px;line-height:1.5;list-style:decimal outside}.add-article-choices li{margin:4px 0}.add-article-choice-link{color:#c2410c;font-weight:600;text-decoration:underline}.add-article-choice-link:hover{color:#9a3412}.dark .add-article-choice-link,[data-theme=dark] .add-article-choice-link{color:#fdba74}.dark .add-article-choice-link:hover,[data-theme=dark] .add-article-choice-link:hover{color:#fed7aa}.add-article-textarea{width:100%;padding:10px 12px;font-size:.875rem;border:1px solid var(--border-color, #d1d5db);border-radius:6px;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937);font-family:inherit;resize:vertical;min-height:200px;box-sizing:border-box;line-height:1.5}.add-article-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea26}.add-article-textarea:disabled{opacity:.6;cursor:not-allowed}.add-article-charcount{margin-top:6px;font-size:.75rem;color:var(--text-muted, #6b7280);text-align:right}.add-article-charcount-warn{color:#b45309}.dark .add-article-shallow-notice,[data-theme=dark] .add-article-shallow-notice{background:#422006;border-color:#92400e;color:#fed7aa}.dark .add-article-shallow-notice strong,[data-theme=dark] .add-article-shallow-notice strong{color:#fdba74}.dark .add-article-shallow-hint,[data-theme=dark] .add-article-shallow-hint{color:#fcd34d}.dark .add-article-textarea,[data-theme=dark] .add-article-textarea{background:#111827;color:#f3f4f6;border-color:#374151}.news-add-article-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--border-color, #d1d5db);border-radius:6px;background:var(--card-bg, #ffffff);color:var(--text-primary, #1f2937);font-size:.8rem;font-weight:600;cursor:pointer;font-family:inherit}.news-add-article-btn:hover{background:var(--hover-bg, #f3f4f6);border-color:#667eea;color:#667eea}.deep-scanned-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:#dbeafe;color:#1e40af;border-radius:10px;font-size:.7rem;font-weight:600;letter-spacing:.02em;margin-right:6px;vertical-align:middle}.deep-scanned-badge--icon-only{background:transparent;padding:0;margin-right:2px;font-size:.85rem;border-radius:0}.dark .add-article-modal,[data-theme=dark] .add-article-modal{background:#1f2937;color:#f3f4f6}.dark .add-article-input,[data-theme=dark] .add-article-input{background:#111827;color:#f3f4f6;border-color:#374151}.dark .add-article-footer,[data-theme=dark] .add-article-footer{background:#111827;border-top-color:#374151}.dark .add-article-header,[data-theme=dark] .add-article-header{border-bottom-color:#374151}.dark .add-article-error,[data-theme=dark] .add-article-error{background:#450a0a;border-color:#991b1b;color:#fecaca}.dark .news-add-article-btn,[data-theme=dark] .news-add-article-btn{background:#1f2937;color:#f3f4f6;border-color:#374151}.dark .news-add-article-btn:hover,[data-theme=dark] .news-add-article-btn:hover{background:#374151;border-color:#818cf8;color:#818cf8}.dark .deep-scanned-badge,[data-theme=dark] .deep-scanned-badge{background:#1e3a8a;color:#bfdbfe}.add-article-promo-bar{display:flex;align-items:center;gap:14px;width:100%;padding:14px 18px;margin:0 0 16px;background:linear-gradient(135deg,#f5f3ff,#ede9fe);border:1px solid #ddd6fe;border-radius:10px;cursor:pointer;text-align:left;font-family:inherit;transition:background .15s ease,border-color .15s ease,transform .05s ease,box-shadow .15s ease;box-sizing:border-box}.add-article-promo-bar:hover{background:linear-gradient(135deg,#ede9fe,#ddd6fe);border-color:#c4b5fd;box-shadow:0 1px 3px #5b21b614}.add-article-promo-bar:active{transform:translateY(1px)}.add-article-promo-bar:focus-visible{outline:2px solid #7c3aed;outline-offset:2px}.add-article-promo-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:36px;height:36px;border-radius:50%;background:#7c3aed;color:#fff;font-size:1.4rem;font-weight:600;line-height:1}.add-article-promo-text{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}.add-article-promo-headline{font-size:1rem;font-weight:600;color:#4c1d95;letter-spacing:-.01em}.add-article-promo-subtitle{font-size:.85rem;color:#6d28d9;line-height:1.3}.add-article-promo-cta{display:inline-flex;align-items:center;flex:0 0 auto;padding:7px 14px;background:#7c3aed;color:#fff;border-radius:6px;font-size:.85rem;font-weight:600;letter-spacing:.01em;white-space:nowrap}.add-article-promo-bar:hover .add-article-promo-cta{background:#6d28d9}@media(max-width:600px){.add-article-promo-bar{gap:10px;padding:11px 14px;margin-bottom:12px}.add-article-promo-icon{width:30px;height:30px;font-size:1.2rem}.add-article-promo-subtitle{display:none}.add-article-promo-headline{font-size:.95rem}.add-article-promo-cta{padding:6px 11px;font-size:.8rem}}.dark .add-article-promo-bar,[data-theme=dark] .add-article-promo-bar{background:linear-gradient(135deg,#2e1065,#4c1d95);border-color:#5b21b6}.dark .add-article-promo-bar:hover,[data-theme=dark] .add-article-promo-bar:hover{background:linear-gradient(135deg,#4c1d95,#5b21b6);border-color:#7c3aed;box-shadow:0 1px 3px #0000004d}.dark .add-article-promo-headline,[data-theme=dark] .add-article-promo-headline{color:#ede9fe}.dark .add-article-promo-subtitle,[data-theme=dark] .add-article-promo-subtitle{color:#c4b5fd}.dark .add-article-promo-icon,[data-theme=dark] .add-article-promo-icon,.dark .add-article-promo-cta,[data-theme=dark] .add-article-promo-cta{background:#8b5cf6}.dark .add-article-promo-bar:hover .add-article-promo-cta,[data-theme=dark] .add-article-promo-bar:hover .add-article-promo-cta{background:#a78bfa}.news-container{max-width:1200px;margin:0 auto;padding:var(--space-8)}.news-header{margin-bottom:0;border-bottom:3px double #121212;padding-bottom:1rem}.news-header h1{font-family:Playfair Display,Georgia,serif;font-size:2.5rem;color:var(--text-primary);margin-bottom:0;font-weight:900;letter-spacing:-.5px}.search-section{margin:1.5rem 0;padding:var(--space-6);background:#fafafa;border:1px solid var(--border-light)}.search-form{display:flex;gap:10px;align-items:center;margin-bottom:.75rem}.search-form .search-input{width:50%}.search-form .match-criteria-select{width:130px}.search-buttons{display:flex;gap:6px}.search-buttons button{padding:8px 14px;background:#2563eb;color:#fff;border:1px solid #2563eb;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-xs);text-transform:uppercase;font-weight:var(--font-semibold)}.search-buttons button:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8}.search-buttons button:disabled{background:#9ca3af;border-color:var(--text-muted);cursor:not-allowed;opacity:.6}.search-hint{font-size:.85rem;color:var(--text-tertiary);font-style:italic;margin-top:.5rem;line-height:1.5}.search-hint code{font-family:Courier New,Courier,monospace;background:#f0f0f0;padding:.1rem .3rem;border-radius:3px;font-style:normal;color:var(--text-primary);font-size:.9em}.news-controls{display:flex;flex-direction:column;gap:var(--space-6);margin-bottom:var(--space-8);padding:var(--space-6);background:#fafafa;border:1px solid var(--border-light)}.category-filter,.search-container{display:flex;gap:var(--space-4);align-items:center;flex-wrap:wrap}.category-filter label,.search-container label{font-family:Franklin Gothic Medium,Arial,sans-serif;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);font-weight:var(--font-semibold)}.category-filter select{padding:.5rem 1rem;border:1px solid #ccc;background:var(--bg-primary);font-family:Georgia,serif;font-size:.9rem;color:var(--text-primary);border-radius:0;min-width:180px}.search-container{flex:1;min-width:300px}.search-input-wrapper{display:flex;gap:var(--space-4);flex:1;align-items:center}.search-input{flex:1;padding:.5rem 1rem;border:1px solid #ccc;font-family:Georgia,serif;font-size:.9rem;border-radius:0;margin-right:.5rem}.match-criteria-select{padding:.5rem .75rem;border:1px solid #ccc;background:var(--bg-primary);font-family:Georgia,serif;font-size:.85rem;color:var(--text-primary);border-radius:0;cursor:pointer;transition:var(--transition-slow);min-width:140px}.match-criteria-select:hover{border-color:var(--text-primary);background:#fafafa}.match-criteria-select:focus{outline:none;border-color:var(--text-primary);box-shadow:0 0 0 2px #1212121a}.match-criteria-note{margin-left:.5rem;padding-left:.5rem;border-left:2px solid #e2e2e2}.search-button,.save-search-button,.clear-button{padding:.5rem 1rem;background:#121212;color:#fff;border:1px solid #121212;cursor:pointer;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.5px;font-weight:var(--font-semibold);transition:var(--transition-slow);border-radius:0;margin-left:.25rem;margin-right:.25rem}.search-btn{padding:.5rem 1rem;background:#121212;color:#fff;border:1px solid #121212;cursor:pointer;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.3px;font-weight:var(--font-semibold);transition:var(--transition-slow);border-radius:var(--radius-sm);display:inline-block}.search-btn:hover:not(.disabled){background:var(--bg-primary);color:var(--text-primary)}.search-btn.disabled{background:#9ca3af;border-color:var(--text-muted);cursor:not-allowed;opacity:.6}.follow-topic-btn{padding:.5rem 1rem;background:#2563eb;color:#fff;border:1px solid #2563eb;cursor:pointer;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.3px;font-weight:var(--font-semibold);transition:var(--transition-slow);border-radius:var(--radius-sm);display:inline-block}.follow-topic-btn:hover:not(.disabled){background:#1d4ed8;border-color:#1d4ed8}.follow-topic-btn.disabled{background:#9ca3af;border-color:var(--text-muted);cursor:not-allowed;opacity:.6}.clear-search-btn{padding:.5rem 1rem;background:var(--bg-primary);color:#dc2626;border:1px solid #dc2626;cursor:pointer;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.3px;font-weight:var(--font-semibold);transition:var(--transition-slow);border-radius:var(--radius-sm);display:inline-block}.clear-search-btn:hover:not(.disabled){background:#dc2626;color:#fff}.clear-search-btn.disabled{background:#9ca3af;border-color:var(--text-muted);color:#fff;cursor:not-allowed;opacity:.6}.save-search-button{filter:grayscale(100%) contrast(1.2)}.search-button:hover,.save-search-button:hover,.clear-button{background:var(--bg-primary);color:var(--text-primary)}.clear-button:hover{background:#121212;color:#fff}.category-filter{display:flex;gap:var(--space-3);flex-wrap:wrap;padding:1.5rem 0;margin:0;border-bottom:1px solid #e2e2e2;background:#fafafa}.category-btn{padding:.6rem 1.25rem;background:var(--bg-primary);color:var(--text-primary);border:1px solid #121212;cursor:pointer;font-family:Franklin Gothic Medium,Arial,sans-serif;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.5px;font-weight:var(--font-semibold);transition:var(--transition-normal);border-radius:0;white-space:nowrap}.category-btn:hover{background:#121212;color:#fff;transform:translateY(-1px);box-shadow:var(--shadow-md)}.category-btn.active{background:#121212;color:#fff;font-weight:var(--font-bold);border-width:2px}.category-btn:focus{outline:2px solid #121212;outline-offset:2px}.category-filter-note{font-style:italic;color:var(--text-tertiary);margin-left:.5rem}.category-note{display:block;margin-top:.25rem;font-size:.85rem;color:var(--text-tertiary);font-style:italic}.saved-searches{margin-top:1rem}.saved-searches-list{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:.5rem}.saved-search-tag{display:inline-flex;align-items:center;gap:var(--space-2);padding:.4rem .8rem;background:#121212;color:#fff;border:1px solid #121212;font-size:var(--text-xs);cursor:pointer;transition:var(--transition-slow);font-family:Franklin Gothic Medium,Arial,sans-serif;text-transform:uppercase;letter-spacing:.3px}.saved-search-tag:hover{background:var(--bg-primary);color:var(--text-primary)}.saved-search-tag button{background:none;border:none;color:inherit;cursor:pointer;padding:0;font-size:var(--text-base);line-height:1}.saved-search-list{display:flex;flex-direction:column;gap:var(--space-2);margin-top:.75rem;max-width:40%;min-width:300px}.saved-search-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:.5rem .75rem;background:#f9f9f9;border:1px solid #e0e0e0;transition:var(--transition-normal)}.saved-search-item:hover{background:#f0f0f0;border-color:var(--text-primary)}.saved-search-text{flex:1;text-align:left;background:none;border:none;font-family:Georgia,serif;font-size:.9rem;color:var(--text-primary);cursor:pointer;padding:0;transition:color .2s}.saved-search-text:hover{color:var(--text-tertiary);text-decoration:underline}.boundary-indicator{color:#2e7d32;font-weight:var(--font-semibold);font-size:.85em;margin:0 1px}.remove-saved-search{background:none;border:none;font-size:1.1rem;cursor:pointer;padding:.25rem .5rem;color:#999;transition:var(--transition-normal);line-height:1;opacity:0;visibility:hidden}.saved-search-item:hover .remove-saved-search{opacity:1;visibility:visible}.remove-saved-search:hover{color:#d32f2f;transform:scale(1.1)}.saved-search-category{display:inline-block;margin-left:8px;padding:2px 6px;font-size:.7rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f0f0f0;color:var(--text-tertiary);border-radius:var(--radius-sm);text-transform:capitalize;vertical-align:middle}.saved-search-category.local{background:#e8f5e9;color:#2e7d32;font-weight:var(--font-medium)}body.dark-mode .saved-search-category{background:#3a3a4a;color:var(--text-muted)}body.dark-mode .saved-search-category.local{background:#1b4332;color:#6dd58c}.articles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-8);margin-top:2rem}.article-card{background:var(--bg-primary);border-bottom:1px solid #e2e2e2;padding-bottom:1rem;transition:none;display:flex;flex-direction:column;cursor:pointer;position:relative;box-sizing:border-box}.article-card:hover{border-bottom-color:var(--text-primary)}.article-image{width:100%;aspect-ratio:16 / 9;-o-object-fit:cover;object-fit:cover;-o-object-position:center 30%;object-position:center 30%;margin-bottom:var(--space-4)}.article-image-placeholder{width:100%;aspect-ratio:16 / 9;margin-bottom:var(--space-4);background:linear-gradient(135deg,#f3f4f6,#e5e7eb);display:flex;align-items:center;justify-content:center;position:relative}.article-image-placeholder-icon{font-size:2.5rem;opacity:.35;filter:grayscale(.3);-webkit-user-select:none;-moz-user-select:none;user-select:none}body.dark-mode .article-image-placeholder{background:linear-gradient(135deg,#1f2937,#111827)}body.dark-mode .article-image-placeholder-icon{opacity:.25}.article-content{flex:1;display:flex;flex-direction:column;padding:.5rem}.match-type-badge-container{margin-bottom:.75rem}.match-type-badge{display:inline-block;font-size:var(--text-xs);font-family:Franklin Gothic Medium,Arial,sans-serif;padding:.35rem .65rem;border-radius:3px;font-weight:var(--font-medium);letter-spacing:.3px;text-transform:uppercase}.match-type-title{background:#4caf50;color:#fff;border:1px solid #4caf50}.match-type-description{background:#2196f3;color:#fff;border:1px solid #2196f3}.match-type-content{background:#f5f5f5;color:var(--text-tertiary);border:1px solid var(--border-light)}.article-category{font-family:Franklin Gothic Medium,Arial,sans-serif;font-size:.7rem;color:#326891;text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-2);font-weight:var(--font-semibold)}.article-title{font-family:Playfair Display,Georgia,serif;font-size:var(--text-xl);color:var(--text-primary);margin-bottom:.75rem;font-weight:var(--font-bold);line-height:1.3;text-decoration:none}.article-title a{color:inherit;text-decoration:none;transition:color .2s ease}.article-title a:hover{color:#326891}.article-title a:visited{color:var(--text-tertiary)}.article-description{font-family:Georgia,serif;color:var(--text-tertiary);line-height:1.6;margin-bottom:var(--space-4);font-size:.95rem}.article-meta{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:#999;margin-top:auto;padding-top:.75rem;border-top:1px solid #f0f0f0}.article-card .article-source{font-family:Georgia,serif;font-style:italic;color:var(--text-primary);display:flex;align-items:center;gap:4px;min-width:0}.article-card .article-source .source-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:0}.article-card .article-source .source-edit-btn{flex-shrink:0}.article-date{font-family:Franklin Gothic Medium,Arial,sans-serif;font-size:var(--text-xs);color:#999}.article-actions{display:block;margin-top:1rem;overflow:hidden}.read-more,.bookmark-button{padding:.4rem 1rem;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.5px;font-weight:var(--font-semibold);border-radius:0;transition:var(--transition-slow);cursor:pointer;font-family:Franklin Gothic Medium,Arial,sans-serif}.read-more-btn{padding:.4rem 1rem;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.5px;font-weight:var(--font-semibold);border-radius:0;transition:var(--transition-slow);cursor:pointer;font-family:Franklin Gothic Medium,Arial,sans-serif;background:#121212;color:#fff;text-decoration:none;border:1px solid #121212;display:inline-block;float:right}.read-more-btn:hover{background:var(--bg-primary);color:var(--text-primary)}.read-more{background:#121212;color:#fff;text-decoration:none;border:1px solid #121212;display:inline-block;float:right}.read-more:hover{background:var(--bg-primary);color:var(--text-primary)}.bookmark-button{background:var(--bg-primary);color:var(--text-primary);border:1px solid #121212;display:inline-block;margin-right:.75rem}.bookmark-button:hover,.bookmark-button.bookmarked{background:#121212;color:#fff}.loading{text-align:center;padding:3rem;font-family:Georgia,serif;color:var(--text-tertiary);font-size:1.1rem;font-style:italic}.no-articles{text-align:center;padding:4rem 2rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:var(--radius-2xl);margin-top:1rem}.no-articles-icon{font-size:3rem;margin-bottom:var(--space-4)}.no-articles h3{color:var(--text-primary);margin-bottom:var(--space-2);font-size:1.3rem;font-family:Georgia,serif}.no-articles-hint{color:var(--text-tertiary);max-width:400px;margin:0 auto;font-family:Georgia,serif}body.dark-mode .no-articles{background:linear-gradient(135deg,#1e293b,#0f172a)}body.dark-mode .no-articles h3{color:#f1f5f9}body.dark-mode .no-articles-hint{color:var(--text-muted)}.error-message{background:#f8f8f8;border-left:3px solid #121212;padding:1rem 1.5rem;margin:2rem 0;font-family:Georgia,serif;color:var(--text-tertiary)}.language-filter-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:.5rem 1rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:20px;font-size:.85rem;font-weight:var(--font-medium);box-shadow:var(--shadow-md)}.language-filter-badge .badge-icon{font-size:var(--text-base)}.language-filter-badge .badge-text{font-weight:var(--font-medium)}.api-provider-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:.5rem 1rem;background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff;border-radius:20px;font-size:.85rem;font-weight:var(--font-medium);box-shadow:var(--shadow-md)}.api-provider-badge .badge-icon{font-size:var(--text-base)}.api-provider-badge .badge-text{font-weight:var(--font-medium)}.hide-read-toggle{display:inline-flex;align-items:center}.hide-read-toggle .toggle-label{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;padding:.5rem 1rem;background:var(--bg-secondary);border:1px solid #e0e0e0;border-radius:20px;font-size:.85rem;transition:var(--transition-normal)}.hide-read-toggle .toggle-label:hover{background:#e9ecef;border-color:#3498db}.hide-read-toggle input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#3498db}.hide-read-toggle .toggle-text{font-weight:var(--font-medium);color:#495057}.hide-read-toggle .hidden-count{margin-left:.25rem;font-weight:var(--font-normal);color:#6c757d;font-size:.8rem}.dark-mode .hide-read-toggle .toggle-label{background:#374151;border-color:var(--text-secondary)}.dark-mode .hide-read-toggle .toggle-label:hover{background:#4b5563;border-color:#60a5fa}.dark-mode .hide-read-toggle .toggle-text{color:#e5e7eb}.dark-mode .hide-read-toggle .hidden-count{color:var(--text-muted)}.news-controls-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin:1rem 0;padding:.5rem 0}.sort-order-control{display:inline-flex;align-items:center}.sort-order-control .sort-label{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;padding:.5rem .75rem;background:var(--bg-secondary);border:1px solid #e0e0e0;border-radius:20px;font-size:.85rem;transition:var(--transition-normal)}.sort-order-control .sort-label:hover{background:#e9ecef;border-color:#3498db}.sort-order-control .sort-icon{font-size:var(--text-base)}.sort-order-control .sort-select{border:none;background:transparent;font-size:.85rem;font-weight:var(--font-medium);color:#495057;cursor:pointer;padding-right:.5rem}.sort-order-control .sort-select:focus{outline:none}.dark-mode .sort-order-control .sort-label{background:#374151;border-color:var(--text-secondary)}.dark-mode .sort-order-control .sort-label:hover{background:#4b5563;border-color:#60a5fa}.dark-mode .sort-order-control .sort-select{color:#e5e7eb}@media(max-width:768px){.search-form{flex-direction:column;gap:var(--space-3)}.search-form .search-input{width:100%;order:1}.search-form .match-criteria-select{width:100%;order:2}.search-buttons{width:100%;order:3}.search-buttons button{flex:1}.news-controls{padding:var(--space-4)}.category-filter,.search-container{flex-direction:column;align-items:stretch;min-width:0}.news-controls-row{flex-direction:column;align-items:stretch;gap:var(--space-2)}.news-controls-row>*{width:100%;justify-content:center}.sort-order-control .sort-label{width:100%;justify-content:center}.sort-order-control .sort-select{flex:1;text-align:center}.hide-read-toggle .toggle-label{width:100%;justify-content:center}.articles-grid{grid-template-columns:1fr;gap:var(--space-6)}.news-header h1{font-size:2rem}.search-hint{font-size:.8rem}}@media(max-width:480px){.news-controls{padding:var(--space-3)}.search-section{padding:var(--space-3);margin:1rem 0}.search-form{gap:var(--space-2)}.search-form .search-input{padding:.6rem .75rem;font-size:1rem}.search-form .match-criteria-select{padding:.5rem;font-size:.85rem}.search-buttons{gap:4px}.search-buttons button{padding:.5rem;font-size:.7rem}.search-hint{font-size:.75rem}.news-header h1{font-size:1.5rem}.news-header .header-subtitle{font-size:.85rem}}.bias-feature-teaser{display:flex;align-items:center;gap:var(--space-4);margin-top:1rem;padding:var(--space-4);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-slow);box-shadow:0 2px 8px #00000026}.bias-feature-teaser:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0003}.bias-feature-teaser .teaser-icon{font-size:2rem;flex-shrink:0}.bias-feature-teaser .teaser-content{flex:1}.bias-feature-teaser strong{display:block;font-size:var(--text-base);margin-bottom:.25rem}.bias-feature-teaser p{margin:0;font-size:.85rem;opacity:.95}body.dark-mode .bias-feature-teaser{background:linear-gradient(135deg,#4c51bf,#553c9a);box-shadow:0 2px 8px #0000004d}body.dark-mode .bias-feature-teaser:hover{box-shadow:0 2px 8px #0006}body.dark-mode .search-hint code{background:#3a3a3a;color:#e0e0e0}.rss-badge{display:inline-flex;align-items:center;padding:2px 8px;background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;font-size:10px;font-weight:var(--font-semibold);border-radius:var(--radius-sm);margin-right:8px;text-transform:uppercase;letter-spacing:.5px}body.dark-mode .rss-badge{background:linear-gradient(135deg,#38a169,#2f855a)}.btn-add-feeds{display:inline-block;margin-top:16px;padding:10px 20px;background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;text-decoration:none;border-radius:var(--radius-lg);font-weight:var(--font-medium);transition:var(--transition-normal)}.btn-add-feeds:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0003}body.dark-mode .btn-add-feeds{background:linear-gradient(135deg,#38a169,#2f855a)}.refreshing-indicator{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;margin:0 auto 16px;background:var(--bg-hover);border-radius:var(--radius-lg);color:var(--text-secondary);font-size:.9rem;max-width:-moz-fit-content;max-width:fit-content}.refreshing-spinner{display:inline-block;animation:spin 1s linear infinite;font-size:1.1em}.pull-to-refresh-indicator{position:fixed;top:8px;left:50%;transform-origin:top center;margin-left:-90px;width:180px;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 14px;background:var(--bg-primary, #fff);border:1px solid var(--border-light, #e5e7eb);border-radius:999px;color:var(--text-secondary, #4b5563);font-size:.85rem;font-weight:500;box-shadow:0 4px 12px #00000014;z-index:1000;pointer-events:none;transition:opacity .15s ease-out}.pull-to-refresh-spinner{display:inline-block;font-size:1rem;line-height:1}.pull-to-refresh-spinner.spinning{animation:spin 1s linear infinite}body.dark-mode .pull-to-refresh-indicator,[data-theme=dark] .pull-to-refresh-indicator{background:var(--bg-primary, #1f2937);border-color:var(--border-medium, #374151);color:var(--text-secondary, #d1d5db);box-shadow:0 4px 12px #0006}body.dark-mode .refreshing-indicator{background:#1f2937;color:var(--text-muted)}.bookmark-btn,.topic-action-btn{padding:var(--space-2);background:var(--bg-secondary);border:1px solid #e0e0e0;border-radius:var(--radius-md);cursor:pointer;font-size:1.1rem;transition:var(--transition-normal);color:var(--text-tertiary);line-height:1}.bookmark-btn:hover{background:#fff4e5;border-color:var(--color-warning)}.topic-action-btn:hover{background:#e0f2fe;border-color:#0ea5e9;transform:scale(1.05)}body.dark-mode .bookmark-btn,body.dark-mode .topic-action-btn{background:#334155;border-color:#475569;color:#94a3b8}body.dark-mode .topic-action-btn:hover{background:#0c4a6e;border-color:#0ea5e9}.article-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.article-header-left{display:flex;align-items:center;gap:6px;flex-shrink:1;min-width:0}.article-header-center{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1 1 100%;justify-content:flex-start}@media(max-width:600px){.article-header-center{flex:0 1 auto}.article-header{gap:6px;margin-bottom:6px}}.article-header-right{display:flex;align-items:center;gap:6px;flex-shrink:0;position:absolute;top:12px;right:12px;z-index:10}.article-card .article-actions-btn{background:#ffffff80;box-shadow:0 2px 6px #00000040;border:1px solid rgba(0,0,0,.1)}.article-card .article-actions-btn:hover{background:#ffffffd9;box-shadow:0 3px 10px #0000004d}.dark-mode .article-card .article-actions-btn{background:#1e1e2e80;border:1px solid rgba(255,255,255,.15)}.dark-mode .article-card .article-actions-btn:hover{background:#1e1e2ed9}.article-card.no-image .article-actions-btn{box-shadow:none;border:1px solid var(--border-light)}.article-header .rss-badge{font-size:.85rem;margin-right:2px}@media(max-width:600px){.article-header{flex-direction:column;align-items:flex-start;gap:8px}.article-header-center{justify-content:flex-start;order:2}}.fact-check-loading{display:flex;align-items:center;gap:10px;padding:16px;color:var(--text-tertiary);font-size:.9rem}.loading-spinner-small{width:18px;height:18px;border:2px solid var(--border-light);border-top-color:var(--accent-color);border-radius:50%;animation:spin .8s linear infinite}body.dark-mode .bookmark-btn-inline:hover{background:#422006}.news-skeleton-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--space-4);padding:var(--space-4) 0}@media(max-width:768px){.news-skeleton-grid{grid-template-columns:1fr}}.reading-insights{background:#f8fafc;border-radius:var(--radius-xl);padding:var(--space-6);margin-bottom:var(--space-8);border:1px solid #e2e8f0}.insights-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6)}.insights-header h3{margin:0;font-size:var(--text-xl);color:#1e293b}.insights-controls{display:flex;align-items:center;gap:var(--space-3)}.backfill-btn{padding:.5rem 1rem;border:1px solid #3b82f6;border-radius:var(--radius-md);background:#eff6ff;color:var(--color-info);font-size:.85rem;cursor:pointer;transition:var(--transition-normal)}.backfill-btn:hover:not(:disabled){background:var(--color-info);color:#fff}.backfill-btn:disabled{opacity:.6;cursor:not-allowed}.month-selector{padding:.5rem 1rem;border:1px solid #cbd5e1;border-radius:var(--radius-md);background:var(--bg-primary);font-size:.9rem;cursor:pointer;color:#334155}.month-selector:hover{border-color:#94a3b8}.month-selector:focus{outline:none;border-color:var(--color-info);box-shadow:0 0 0 3px #3b82f61a}.insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-4)}.insight-card{background:var(--bg-primary);border-radius:10px;padding:1.25rem;box-shadow:0 1px 3px #00000014;border:1px solid #e2e8f0}.insight-card.articles-count,.insight-card.credibility{text-align:center}.insight-value{font-size:2.5rem;font-weight:var(--font-bold);color:#1e293b;line-height:1;margin-bottom:var(--space-2)}.insight-label{font-size:.85rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.insight-title{font-size:.9rem;font-weight:var(--font-semibold);color:#475569;margin-bottom:var(--space-4);text-transform:uppercase;letter-spacing:.03em}.insight-diff{font-size:.8rem;margin-top:.5rem}.insight-diff.positive{color:#22c55e}.insight-diff.negative{color:var(--color-error)}.insight-value.cred-very-high{color:#15803d}.insight-value.cred-high{color:#22c55e}.insight-value.cred-medium-high{color:#65a30d}.insight-value.cred-medium{color:#eab308}.insight-value.cred-low{color:#f97316}.insight-value.cred-very-low{color:var(--color-error)}.source-list{list-style:none;padding:0;margin:0}.source-list li{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;border-bottom:1px solid #f1f5f9}.source-list li:last-child{border-bottom:none}.source-rank{font-weight:var(--font-semibold);color:#94a3b8;min-width:30px;font-size:.85rem}.source-name{flex:1;color:#334155;font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.source-count{color:#64748b;font-size:.8rem;white-space:nowrap}.category-bars{display:flex;flex-direction:column;gap:.6rem}.category-bar-row{display:flex;align-items:center;gap:var(--space-2)}.category-name{width:80px;font-size:.8rem;color:#475569;text-transform:capitalize;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.category-bar-wrapper{flex:1;height:8px;background:#e2e8f0;border-radius:var(--radius-sm);overflow:hidden}.category-bar-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#6366f1);border-radius:var(--radius-sm);transition:width .3s ease}.category-percent{width:35px;text-align:right;font-size:var(--text-xs);color:#64748b}.bias-bar{display:flex;height:24px;border-radius:var(--radius-xl);overflow:hidden;background:#e2e8f0;margin-bottom:.75rem}.bias-segment{transition:width .3s ease;min-width:2px}.bias-segment.left{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.bias-segment.center{background:linear-gradient(90deg,#a855f7,#c084fc)}.bias-segment.right{background:linear-gradient(90deg,#ef4444,#f87171)}.bias-segment.unknown{background:#cbd5e1}.bias-labels{display:flex;justify-content:space-around;flex-wrap:wrap;gap:var(--space-2);font-size:var(--text-xs)}.bias-label{display:flex;align-items:center;gap:.25rem}.bias-label.left{color:var(--color-info)}.bias-label.center{color:#a855f7}.bias-label.right{color:var(--color-error)}.bias-label.unknown{color:#94a3b8}.cred-bars{display:flex;flex-direction:column;gap:var(--space-2)}.cred-bar-row{display:flex;align-items:center;gap:var(--space-2)}.cred-name{width:80px;font-size:var(--text-xs);font-weight:var(--font-medium);text-transform:capitalize}.cred-name.cred-very-high{color:#15803d}.cred-name.cred-high{color:#22c55e}.cred-name.cred-medium-high{color:#65a30d}.cred-name.cred-medium{color:#eab308}.cred-name.cred-low{color:#f97316}.cred-name.cred-very-low{color:var(--color-error)}.cred-name.cred-unknown{color:#94a3b8}.cred-bar-wrapper{flex:1;height:8px;background:#e2e8f0;border-radius:var(--radius-sm);overflow:hidden}.cred-bar-fill{height:100%;border-radius:var(--radius-sm);transition:width .3s ease}.cred-bar-fill.cred-very-high{background:#15803d}.cred-bar-fill.cred-high{background:#22c55e}.cred-bar-fill.cred-medium-high{background:#65a30d}.cred-bar-fill.cred-medium{background:#eab308}.cred-bar-fill.cred-low{background:#f97316}.cred-bar-fill.cred-very-low{background:var(--color-error)}.cred-bar-fill.cred-unknown{background:#94a3b8}.cred-percent{width:35px;text-align:right;font-size:var(--text-xs);color:#64748b}.no-data{text-align:center;color:#64748b;padding:var(--space-8);font-size:.95rem}.no-data-small{color:#94a3b8;font-size:.85rem;text-align:center;margin:0}body.dark-mode .reading-insights{background:#1e293b;border-color:#334155}body.dark-mode .insights-header h3{color:#f1f5f9}body.dark-mode .month-selector{background:#334155;border-color:#475569;color:#f1f5f9}body.dark-mode .month-selector:hover{border-color:#64748b}body.dark-mode .backfill-btn{background:#1e3a5f;border-color:#60a5fa;color:#60a5fa}body.dark-mode .backfill-btn:hover:not(:disabled){background:var(--color-info);color:#fff}body.dark-mode .insight-card{background:#334155;border-color:#475569}body.dark-mode .insight-value{color:#f1f5f9}body.dark-mode .insight-label{color:#94a3b8}body.dark-mode .insight-title{color:#cbd5e1}body.dark-mode .source-list li{border-color:#475569}body.dark-mode .source-name{color:#e2e8f0}body.dark-mode .source-count{color:#94a3b8}body.dark-mode .category-name{color:#cbd5e1}body.dark-mode .category-bar-wrapper,body.dark-mode .cred-bar-wrapper,body.dark-mode .bias-bar{background:#475569}body.dark-mode .category-percent,body.dark-mode .cred-percent,body.dark-mode .no-data,body.dark-mode .no-data-small{color:#94a3b8}body.dark-mode .bias-note{color:#64748b}@media(max-width:768px){.reading-insights{padding:var(--space-4)}.insights-header{flex-direction:column;gap:var(--space-4);align-items:flex-start}.insights-header h3{font-size:var(--text-lg)}.insights-controls{width:100%;flex-direction:column}.month-selector,.backfill-btn{width:100%}.insights-grid{grid-template-columns:1fr}.insight-card{padding:1rem}.insight-value{font-size:2rem}.category-name,.cred-name{width:70px;font-size:.7rem}.source-name{max-width:150px;font-size:.85rem}.bias-labels{gap:var(--space-1)}.bias-label{font-size:.65rem}}@media(max-width:480px){.reading-insights{padding:var(--space-3);border-radius:var(--radius-lg)}.insights-header h3{font-size:var(--text-base)}.insight-value{font-size:1.75rem}.insight-label{font-size:.75rem}.insight-title{font-size:.8rem}.category-name,.cred-name{width:60px;font-size:.65rem}.category-percent,.cred-percent{width:30px;font-size:.65rem}.source-list li{padding:.4rem 0}.source-rank{min-width:24px;font-size:.75rem}.source-name{max-width:120px;font-size:.8rem}.source-count{font-size:.7rem}}.history-container{max-width:1200px;margin:0 auto;padding:var(--space-8)}.history-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-8);border-bottom:3px double #121212;padding-bottom:1rem}@media(max-width:640px){.history-header{flex-direction:column;align-items:flex-start;gap:.4rem}.history-header h1{font-size:1.85rem}}.history-header h1{font-family:Playfair Display,Georgia,serif;font-size:2.5rem;color:#1a1a1a;margin:0;font-weight:900;letter-spacing:-.5px}.history-subtitle{font-family:Georgia,serif;font-style:italic;color:var(--text-tertiary);font-size:1rem;margin:0}body.dark-mode .history-header,[data-theme=dark] .history-header{border-bottom-color:#444}body.dark-mode .history-header h1,[data-theme=dark] .history-header h1{color:#e0e0e0}.history-tabs{display:flex;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-6);border-bottom:2px solid #e0e0e0;padding-bottom:0}.history-tab{display:flex;align-items:center;gap:var(--space-2);padding:.875rem 1.5rem;font-size:var(--text-base);font-weight:var(--font-medium);color:var(--text-tertiary);background:none;border:none;border-bottom:3px solid transparent;margin-bottom:-2px;cursor:pointer;transition:var(--transition-normal)}.history-tab:hover{color:#667eea;background:#667eea0d}.history-tab.active{color:#667eea!important;font-weight:700!important;border-bottom:3px solid #667eea!important;background:#667eea14}.history-tab .tab-count{background:#e8f0fe;color:#667eea;padding:.125rem .5rem;border-radius:10px;font-size:.85rem;font-weight:var(--font-semibold)}.history-tab.active .tab-count{background:#667eea;color:#fff}.insights-tab-content{animation:fadeIn .3s ease}body.dark-mode .history-tabs,[data-theme=dark] .history-tabs{border-bottom-color:#3a3a3a}body.dark-mode .history-tab,[data-theme=dark] .history-tab{color:#999}body.dark-mode .history-tab:hover,[data-theme=dark] .history-tab:hover{color:#818cf8;background:#818cf81a}body.dark-mode .history-tab.active,[data-theme=dark] .history-tab.active{color:#818cf8!important;font-weight:700!important;border-bottom-color:#818cf8!important;background:#818cf826}body.dark-mode .history-tab .tab-count,[data-theme=dark] .history-tab .tab-count{background:#818cf833;color:#818cf8}body.dark-mode .history-tab.active .tab-count,[data-theme=dark] .history-tab.active .tab-count{background:#818cf8;color:#1a1a1a}.history-search{position:relative;margin-bottom:var(--space-4)}.history-search .search-input{width:100%;padding:.875rem 2.5rem .875rem 1rem;font-size:var(--text-base);border:2px solid var(--border-light);border-radius:10px;background:var(--bg-primary);transition:var(--transition-slow)}.history-search .search-input:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 3px #0000000d}.history-search .clear-search-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:#e0e0e0;border:none;border-radius:var(--radius-full);width:24px;height:24px;cursor:pointer;color:var(--text-tertiary);font-size:14px;display:flex;align-items:center;justify-content:center;transition:var(--transition-normal)}.history-search .clear-search-btn:hover{background:#ccc;color:var(--text-primary)}body.dark-mode .history-search .search-input{background:#1e293b;border-color:var(--text-secondary);color:#f1f5f9}body.dark-mode .history-search .search-input::-moz-placeholder{color:var(--text-muted)}body.dark-mode .history-search .search-input::placeholder{color:var(--text-muted)}body.dark-mode .history-search .clear-search-btn{background:#374151;color:var(--text-muted)}.history-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8);flex-wrap:wrap;gap:var(--space-4)}.filter-buttons{display:flex;gap:var(--space-2);flex-wrap:wrap}.expand-controls{display:flex;gap:var(--space-2)}.expand-btn{padding:.4rem .75rem;background:var(--bg-secondary);border:1px solid #e0e0e0;border-radius:var(--radius-md);cursor:pointer;font-size:.85rem;font-weight:var(--font-medium);color:var(--text-tertiary);transition:var(--transition-normal)}.expand-btn:hover{background:#e9ecef;border-color:#4a90e2;color:#4a90e2}body.dark-mode .expand-btn{background:#334155;border-color:#475569;color:#94a3b8}body.dark-mode .expand-btn:hover{background:#475569;border-color:#64b5f6;color:#64b5f6}.filter-btn{padding:.5rem 1rem;border:2px solid var(--border-light);background:var(--bg-primary);border-radius:var(--radius-lg);cursor:pointer;font-weight:var(--font-medium);transition:var(--transition-normal)}.filter-btn:hover{border-color:#4a90e2;background:var(--bg-secondary)}.filter-btn.active{background:#4a90e2;color:#fff;border-color:#4a90e2}.clear-history-btn{padding:.5rem 1rem;background:#dc3545;color:#fff;border:none;border-radius:var(--radius-lg);cursor:pointer;font-weight:var(--font-medium);transition:background .2s}.clear-history-btn:hover{background:#c82333}.empty-history{text-align:center;padding:4rem 2rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:var(--radius-2xl);margin-top:2rem}.empty-icon{font-size:4rem;margin-bottom:var(--space-4)}.empty-history h3{font-size:var(--text-2xl);color:var(--text-primary);margin-bottom:var(--space-2)}.empty-history p{color:var(--text-tertiary);margin-bottom:var(--space-4)}.empty-history .empty-state-description{font-size:1.1rem;max-width:400px;margin:0 auto 1.5rem}.empty-history .empty-state-tips{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-6);max-width:400px;margin-left:auto;margin-right:auto}.empty-history .empty-state-tips .tip{background:var(--bg-primary);padding:.75rem 1rem;border-radius:var(--radius-lg);font-size:.9rem;color:#555;text-align:left}.empty-history .empty-state-action{display:inline-block;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.75rem 1.5rem;border-radius:var(--radius-lg);text-decoration:none;font-weight:var(--font-medium);transition:var(--transition-slow)}.empty-history .empty-state-action:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}body.dark-mode .empty-history{background:linear-gradient(135deg,#1e293b,#0f172a)}body.dark-mode .empty-history h3{color:#f1f5f9}body.dark-mode .empty-history p{color:var(--text-muted)}body.dark-mode .empty-history .empty-state-tips .tip{background:#334155;color:#cbd5e1}.history-groups{display:flex;flex-direction:column;gap:var(--space-6)}.history-timeline{display:flex;flex-direction:column;gap:var(--space-4)}.year-group{border:1px solid #e0e0e0;border-radius:var(--radius-xl);overflow:hidden;background:var(--bg-primary)}.year-header{display:flex;align-items:center;gap:var(--space-3);padding:1rem 1.25rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;width:100%;text-align:left;cursor:pointer;font-size:1.1rem;font-weight:var(--font-semibold);transition:var(--transition-normal)}.year-header:hover{filter:brightness(1.1)}.year-header .expand-icon{font-size:.8rem;transition:transform .2s}.year-header .year-label{flex:1}.year-header .year-count{font-size:.85rem;font-weight:var(--font-medium);opacity:.9;background:#fff3;padding:.25rem .75rem;border-radius:var(--radius-xl)}.year-content{padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-3)}.month-group{border:1px solid #e8e8e8;border-radius:10px;overflow:hidden;background:#fafafa}.month-header{display:flex;align-items:center;gap:var(--space-3);padding:.875rem 1rem;background:#f0f4f8;color:var(--text-primary);border:none;width:100%;text-align:left;cursor:pointer;font-size:var(--text-base);font-weight:var(--font-semibold);transition:var(--transition-normal)}.month-header:hover{background:#e4eaf0}.month-header .expand-icon{font-size:var(--text-xs);color:var(--text-tertiary)}.month-header .month-label{flex:1;color:#444}.month-header .month-count{font-size:.8rem;font-weight:var(--font-medium);color:var(--text-tertiary);background:#e0e7ef;padding:.2rem .6rem;border-radius:10px}.month-content{padding:var(--space-2);display:flex;flex-direction:column;gap:var(--space-2)}.week-group{border:1px solid #d0d7de;border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-secondary)}.week-header{display:flex;align-items:center;gap:var(--space-2);padding:.6rem .875rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);color:var(--text-primary);border:none;border-bottom:1px solid transparent;width:100%;text-align:left;cursor:pointer;font-size:.9rem;font-weight:var(--font-medium);transition:var(--transition-normal)}.week-header:hover{background:linear-gradient(135deg,#e9ecef,#dee2e6)}.week-header.expanded{border-bottom-color:#d0d7de}.week-header .expand-icon{font-size:.65rem;color:#666}.week-header .week-label{flex:1;color:#444;font-family:Georgia,serif}.week-header .week-count{font-size:var(--text-xs);font-weight:var(--font-medium);color:#666;background:#00000014;padding:.15rem .5rem;border-radius:var(--radius-lg)}.week-content{padding:var(--space-2);display:flex;flex-direction:column;gap:var(--space-2)}.day-group{border:1px solid #e0e0e0;border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-primary)}.day-header{display:flex;align-items:center;gap:var(--space-2);padding:.75rem 1rem;background:var(--bg-primary);color:var(--text-primary);border:none;border-bottom:1px solid transparent;width:100%;text-align:left;cursor:pointer;font-size:.95rem;font-weight:var(--font-medium);transition:var(--transition-normal)}.day-header:hover{background:var(--bg-secondary)}.day-header.expanded{border-bottom-color:#e0e0e0}.day-header .expand-icon{font-size:.7rem;color:#888}.day-header .day-label{flex:1;color:#555}.day-header .day-count{font-size:var(--text-xs);font-weight:var(--font-medium);color:#888;background:#f0f0f0;padding:.15rem .5rem;border-radius:var(--radius-lg)}.day-content{padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-4)}body.dark-mode .year-group{border-color:#3a3a3a;background:#1e293b}body.dark-mode .year-header{background:linear-gradient(135deg,#4a5568,#2d3748)}body.dark-mode .year-content{background:#1e293b}body.dark-mode .month-group{border-color:var(--text-secondary);background:#1a2332}body.dark-mode .month-header{background:#2d3748;color:#e2e8f0}body.dark-mode .month-header:hover{background:#374151}body.dark-mode .month-header .month-label{color:#e2e8f0}body.dark-mode .month-header .month-count{background:#374151;color:#94a3b8}body.dark-mode .month-content{background:#1a2332}body.dark-mode .week-group{border-color:var(--text-secondary);background:#152238}body.dark-mode .week-header{background:linear-gradient(135deg,#1e3a5f,#152238);color:#e2e8f0}body.dark-mode .week-header:hover{background:linear-gradient(135deg,#2d4a6f,#1e3a5f)}body.dark-mode .week-header .week-label{color:#cbd5e1}body.dark-mode .week-header .week-count{background:#ffffff1a;color:#94a3b8}body.dark-mode .week-content{background:#152238}body.dark-mode .day-group{border-color:var(--text-secondary);background:#0f172a}body.dark-mode .day-header{background:#0f172a;color:#cbd5e1}body.dark-mode .day-header:hover{background:#1e293b}body.dark-mode .day-header.expanded{border-bottom-color:var(--text-secondary)}body.dark-mode .day-header .day-label{color:#cbd5e1}body.dark-mode .day-header .day-count{background:#1e293b;color:#94a3b8}body.dark-mode .day-content{background:#0f172a}.period-delete-btn{background:none;border:none;cursor:pointer;font-size:.85rem;padding:2px 5px;border-radius:4px;margin-left:auto;opacity:0;transition:opacity .15s ease,background .15s ease;flex-shrink:0}.year-header:hover .period-delete-btn,.month-header:hover .period-delete-btn,.week-header:hover .period-delete-btn,.day-header:hover .period-delete-btn{opacity:.7}.year-header .period-delete-btn:hover,.month-header .period-delete-btn:hover,.week-header .period-delete-btn:hover,.day-header .period-delete-btn:hover{opacity:1!important;background:#00000026}body.dark-mode .period-delete-btn:hover{background:#ffffff1a}.article-item{background:var(--bg-primary);border-radius:10px;box-shadow:0 1px 4px #00000014;overflow:hidden;transition:box-shadow .2s;padding:1rem;display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4)}.article-item:hover{box-shadow:0 2px 8px #0000001f}body.dark-mode .article-item{background:#1e293b;box-shadow:0 1px 4px #0000004d}body.dark-mode .article-item:hover{box-shadow:0 2px 8px #0006}.article-group{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:0 2px 8px #0000001a;overflow:hidden;transition:box-shadow .2s}.article-group:hover{box-shadow:0 4px 12px #00000026}.main-article,.history-article{padding:1rem;display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);background:#f7fafc;border-radius:var(--radius-lg);border:1px solid #e2e8f0;margin-bottom:var(--space-3);max-width:100%;overflow:hidden;box-sizing:border-box}.history-article:hover{box-shadow:0 2px 8px #0000001a}body.dark-mode .history-article{background:#1e293b;border-color:#334155}body.dark-mode .history-article:hover{box-shadow:0 2px 8px #0000004d}.article-info{display:flex;gap:var(--space-4);flex:1;min-width:0;overflow:hidden}.article-thumbnail{width:120px;height:120px;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;border-radius:var(--radius-lg);flex-shrink:0}.article-details{flex:1;min-width:0;overflow:hidden}.article-meta{display:flex;gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap;align-items:center}.article-item .article-source{color:var(--text-primary);font-weight:var(--font-semibold);font-size:.9rem;max-width:260px;overflow:visible}.article-time{color:#999;font-size:.85rem}.recent-badge,.read-badge{font-size:var(--text-xs);padding:.2rem .5rem;border-radius:var(--radius-xl);font-weight:var(--font-semibold)}.recent-badge{background:#fff3cd;color:#856404}.read-badge{background:#d4edda;color:#155724}.match-badge{font-size:.65rem;padding:.15rem .4rem;border-radius:3px;font-weight:var(--font-medium);text-transform:uppercase;letter-spacing:.2px}.match-badge.match-type-title{background:#4caf50;color:#fff}.match-badge.match-type-description{background:#2196f3;color:#fff}.match-badge.match-type-content{background:#f5f5f5;color:#666;border:1px solid #ddd}body.dark-mode .match-badge.match-type-content{background:#334155;color:#94a3b8;border-color:#475569}.article-title{font-size:1.2rem;margin-bottom:var(--space-2);line-height:1.4;word-break:break-word;overflow-wrap:break-word}.article-title a{color:#1a1a1a;text-decoration:none;transition:color .2s}.article-title a:hover{color:#4a90e2}.article-description{color:var(--text-tertiary);font-size:.95rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;overflow-wrap:break-word}.article-actions{display:flex;flex-direction:row;gap:var(--space-2);flex-shrink:0;align-self:flex-start;margin-right:2px}.bookmark-btn-mobile-inline,.article-thumbnail-placeholder{display:none}.action-btn{padding:var(--space-2);background:var(--bg-secondary);border:1px solid #e0e0e0;border-radius:var(--radius-md);cursor:pointer;font-size:1.2rem;transition:var(--transition-normal)}.action-btn.remove{opacity:0;visibility:hidden}.main-article:hover .action-btn.remove,.article-group:hover .action-btn.remove{opacity:1;visibility:visible}.action-btn:hover{background:#e9ecef;transform:scale(1.1)}.action-btn.remove:hover{background:#ffe5e5;border-color:#dc3545}.action-btn.bookmark{color:var(--text-tertiary)}.action-btn.bookmark:hover{background:#fff4e5;border-color:var(--color-warning)}.action-btn.bookmark.bookmarked{background:#fef3c7;color:var(--color-warning);border-color:var(--color-warning)}.bookmark-btn{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:4px;padding:4px 8px;cursor:pointer;font-size:1rem;color:var(--text-secondary);transition:all .15s ease;display:flex;align-items:center;justify-content:center;min-width:32px;height:28px}.bookmark-btn:hover{background:#fff4e5;border-color:var(--color-warning);color:var(--color-warning)}.bookmark-btn.bookmarked{background:#fef3c7;color:var(--color-warning);border-color:var(--color-warning)}.share-btn,.email-btn{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:4px;padding:4px 8px;cursor:pointer;font-size:1rem;color:var(--text-secondary);transition:all .15s ease;display:flex;align-items:center;justify-content:center}.share-btn:hover{background:#dbeafe;border-color:#3b82f6;color:#3b82f6}.email-btn:hover{background:#d1fae5;border-color:#10b981;color:#10b981}.remove-btn{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:4px;padding:4px 8px;cursor:pointer;font-size:.9rem;color:var(--text-secondary);transition:all .15s ease;display:flex;align-items:center;justify-content:center;min-width:32px;height:28px}.remove-btn:hover{background:#ffe5e5;border-color:#dc3545;color:#dc3545}body.dark-mode .bookmark-btn,body.dark-mode .remove-btn{background:#334155;border-color:#475569;color:#94a3b8}body.dark-mode .bookmark-btn:hover{background:#422006;border-color:var(--color-warning)}body.dark-mode .remove-btn:hover{background:#450a0a;border-color:#dc3545;color:#f87171}.similar-articles{border-top:2px solid #f0f0f0;background:var(--bg-secondary);padding:1rem 1.5rem}.similar-header{font-weight:var(--font-semibold);color:var(--text-tertiary);margin-bottom:.75rem;font-size:.9rem}.similar-list{display:flex;flex-direction:column;gap:var(--space-3)}.similar-item{padding:var(--space-3);background:var(--bg-primary);border-radius:var(--radius-md);border-left:3px solid #4a90e2}.similar-info{display:flex;gap:var(--space-2);margin-bottom:.25rem;font-size:.8rem}.similar-source{color:#4a90e2;font-weight:var(--font-semibold)}.similar-time{color:#999}.similar-title{color:var(--text-primary);text-decoration:none;font-size:.9rem;display:block;transition:color .2s}.similar-title:hover{color:#4a90e2}.history-stats{margin-top:3rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-6);padding:var(--space-8);background:linear-gradient(135deg,#4a5568,#2d3748);border-radius:var(--radius-xl);color:#fff;box-shadow:0 4px 12px #00000026}.history-stats .stat{text-align:center;padding:var(--space-4)}.history-stats .stat-value{font-size:2.5rem;font-weight:800;margin-bottom:var(--space-2);text-shadow:0 2px 4px rgba(0,0,0,.3);color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.history-stats .stat-label{font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:1.5px;color:#e2e8f0;text-shadow:0 1px 2px rgba(0,0,0,.3)}@media(max-width:768px){.history-container{padding:var(--space-4)}.history-header{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.history-header h1{font-size:1.75rem}.history-subtitle{font-size:.9rem}.history-tabs{gap:0;width:100%}.history-tab{flex:1;justify-content:center;padding:.75rem .5rem;font-size:.9rem}.year-content,.month-content,.week-content{padding:var(--space-2);gap:var(--space-2)}.day-content{padding:var(--space-2);gap:var(--space-3)}.year-header{padding:.75rem 1rem;font-size:1rem}.month-header{padding:.6rem .75rem;font-size:.9rem}.week-header,.day-header{padding:.5rem .75rem;font-size:.85rem}.year-header .expand-icon,.month-header .expand-icon,.week-header .expand-icon,.day-header .expand-icon{font-size:.65rem;font-family:system-ui,-apple-system,sans-serif;line-height:1;display:inline-block;width:1rem;text-align:center}.article-item,.history-article{flex-direction:column;padding:var(--space-3);gap:var(--space-3)}.article-info{flex-direction:column;width:100%}.article-thumbnail{width:100%;height:180px}.article-thumbnail-placeholder{width:100%;height:180px;background:var(--bg-secondary, #f1f5f9);border-radius:8px;display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-3)}.article-thumbnail-placeholder-icon{font-size:2rem;opacity:.4}body.dark-mode .article-thumbnail-placeholder,[data-theme=dark] .article-thumbnail-placeholder{background:#2a3447}.article-details{width:100%}.article-title{font-size:1.1rem}.article-description{font-size:.9rem}.article-item{position:relative}.article-actions{position:absolute;top:8px;right:8px;align-self:auto;z-index:10;gap:4px}.article-actions .bookmark-btn{display:none}.article-item .article-actions-btn,.article-item .remove-btn{background:#ffffffd9;box-shadow:0 2px 6px #00000040;border:1px solid rgba(0,0,0,.08);border-radius:4px}body.dark-mode .article-item .article-actions-btn,body.dark-mode .article-item .remove-btn,[data-theme=dark] .article-item .article-actions-btn,[data-theme=dark] .article-item .remove-btn{background:#1e1e2ed9;border:1px solid rgba(255,255,255,.12)}.bookmark-btn-mobile-inline{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;padding:2px 4px;margin-left:auto;font-size:1.1rem;line-height:1;color:var(--text-tertiary)}.bookmark-btn-mobile-inline.bookmarked{color:#f59e0b}.article-meta{flex-wrap:wrap}.article-item .article-source{max-width:100%}.history-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.history-container{padding:var(--space-3)}.history-header h1{font-size:1.5rem}.year-content,.month-content,.week-content{padding:var(--space-1);gap:var(--space-1)}.day-content{padding:var(--space-2);gap:var(--space-2)}.year-header,.month-header,.week-header,.day-header{padding:.5rem .6rem}.year-header .expand-icon,.month-header .expand-icon,.week-header .expand-icon,.day-header .expand-icon{font-size:.6rem;font-family:system-ui,-apple-system,sans-serif;line-height:1;display:inline-block;width:.8rem;text-align:center}.year-header .year-count,.month-header .month-count,.week-header .week-count,.day-header .day-count{font-size:.7rem;padding:.1rem .4rem}.article-item,.history-article{padding:var(--space-2)}.article-thumbnail{height:150px}.article-title{font-size:1rem}.history-stats{grid-template-columns:1fr}.history-tab{padding:.6rem .25rem;font-size:.8rem}}.history-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:var(--text-tertiary)}.history-loading .loading-spinner{width:40px;height:40px;border:3px solid #f3f3f3;border-top:3px solid #667eea;border-radius:var(--radius-full);animation:spin 1s linear infinite;margin-bottom:var(--space-4)}.bs-banner-error{margin:0 0 1rem;padding:.5rem .875rem;background:#f59e0b14;border:1px solid #f59e0b;border-radius:var(--radius-md, 8px);display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#92400e;animation:bs-fade-in .25s ease}.bs-banner-error-icon{font-size:.95rem}.bs-banner-error-text{flex:1}.bs-banner-error-retry{padding:.25rem .65rem;background:#fff;border:1px solid #f59e0b;border-radius:4px;color:#92400e;font-size:.8rem;font-weight:500;cursor:pointer;transition:background .15s}.bs-banner-error-retry:hover{background:#fef3c7}.bs-banner{margin:0 0 1rem;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:var(--radius-xl, 12px);box-shadow:0 2px 8px #f59e0b26;overflow:hidden;animation:bs-fade-in .25s ease}@keyframes bs-fade-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.bs-banner-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.95rem 1.1rem .6rem;border-bottom:1px solid rgba(245,158,11,.3)}.bs-banner-header-text{flex:1;min-width:0}.bs-banner-eyebrow{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#92400e;margin-bottom:.2rem}.bs-banner-title{margin:0 0 .25rem;color:#78350f;font-size:1rem;font-weight:700;line-height:1.3}.bs-banner-subtitle{margin:0;color:#92400e;font-size:.82rem;line-height:1.4}.bs-banner-dismiss{background:#ffffffd9;border:1px solid #f59e0b;color:#92400e;font-size:1.2rem;line-height:1;width:28px;height:28px;border-radius:50%;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-weight:700;transition:background .15s ease,color .15s ease}.bs-banner-dismiss:hover{background:#dc2626;border-color:#dc2626;color:#fff}.bs-banner-body{padding:.6rem .7rem .7rem;display:flex;flex-direction:column;gap:.5rem;background:#ffffff8c}.bs-card{background:#fff;border:1px solid rgba(245,158,11,.4);border-radius:8px;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}.bs-card:hover{border-color:#f59e0b;box-shadow:0 1px 4px #f59e0b2e}.bs-card-header{width:100%;background:transparent;border:none;padding:.6rem .85rem;display:flex;justify-content:space-between;align-items:center;gap:.6rem;cursor:pointer;text-align:left;font-family:inherit;font-size:inherit}.bs-card-header-left{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;flex:1;min-width:0}.bs-card-topic{font-weight:600;color:#1f2937;font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.bs-card-tag{color:#fff;font-size:.7rem;font-weight:600;padding:.18rem .5rem;border-radius:999px;letter-spacing:.01em}.bs-card-toggle{color:#92400e;font-size:.7rem;flex-shrink:0}.bs-card-body{padding:.4rem .85rem .75rem;border-top:1px solid rgba(245,158,11,.2)}.bs-card-empty{margin:.3rem 0 0;color:var(--text-muted, #6b7280);font-size:.82rem;font-style:italic}.bs-article-list{list-style:none;margin:.4rem 0 0;padding:0;display:flex;flex-direction:column;gap:.35rem}.bs-article{border-left:3px solid #16a34a;padding-left:.6rem}.bs-article-link{display:flex;flex-direction:column;gap:.15rem;color:var(--text-primary, #1f2937);text-decoration:none;padding:.25rem 0}.bs-article-link:hover .bs-article-title{color:var(--accent-primary, #667eea);text-decoration:underline}.bs-article-title{font-size:.88rem;font-weight:500;line-height:1.35;color:var(--text-primary, #1f2937)}.bs-article-source{font-size:.72rem;color:var(--text-muted, #6b7280)}.dark-mode .bs-banner{background:linear-gradient(135deg,#f59e0b26,#f59e0b14);border-color:#f59e0b80}.dark-mode .bs-banner-eyebrow,.dark-mode .bs-banner-title,.dark-mode .bs-banner-subtitle{color:#fde68a}.dark-mode .bs-banner-body{background:#0003}.dark-mode .bs-card{background:var(--bg-card, #1f2937)}.dark-mode .bs-card-topic,.dark-mode .bs-article-title{color:var(--text-primary)}.dark-mode .bs-card-toggle{color:#fde68a}.dark-mode .bs-banner-dismiss{background:#0000004d;color:#fde68a}@media(max-width:640px){.bs-card-topic{max-width:140px}.bs-banner-title{font-size:.92rem}}.tracked-stories-container{max-width:1000px;margin:0 auto;padding:2rem 1rem}.stories-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color, #e0e0e0)}.stories-header h1{margin:0 0 .5rem;font-size:1.75rem;color:var(--text-primary, #333)}.stories-header p{margin:0;color:var(--text-secondary, #666)}.toggle-inactive{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-secondary, #666);cursor:pointer}.toggle-inactive input{width:16px;height:16px}.empty-state{text-align:center;padding:4rem 2rem;background:var(--bg-secondary, #f8f9fa);border-radius:12px}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h2{margin:0 0 .75rem;color:var(--text-primary, #333)}.empty-state p{color:var(--text-secondary, #666);max-width:400px;margin:0 auto;line-height:1.6}.stories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem}.story-card{display:flex;flex-direction:column;background:#fff;border-radius:12px;padding:1.25rem;text-decoration:none;border:1px solid var(--border-color, #e0e0e0);transition:transform .2s,box-shadow .2s}.story-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.story-card.inactive{opacity:.7;background:var(--bg-secondary, #f8f9fa)}.story-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.75rem}.story-card-header h3{margin:0;font-size:1.1rem;color:var(--text-primary, #333);line-height:1.4;flex:1}.story-card-actions{display:flex;gap:.25rem;flex-shrink:0}.btn-icon{width:28px;height:28px;border:none;background:var(--bg-secondary, #f0f0f0);border-radius:6px;cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center;transition:background .2s}.btn-icon:hover{background:var(--border-color, #ddd)}.btn-icon.btn-delete:hover{background:#fee2e2}.btn-icon.btn-refresh:hover{background:#dbeafe}.btn-icon.btn-auto-refresh{font-size:.75rem}.btn-icon.btn-auto-refresh.active{background:#dcfce7}.btn-icon.btn-auto-refresh:hover{background:#dbeafe}.btn-icon:disabled{opacity:.6;cursor:not-allowed}.stories-list-header{display:flex;justify-content:flex-end;margin-bottom:1rem}.refresh-all-stories-btn{display:flex;align-items:center;gap:.4rem;padding:.4rem .85rem;border:1px solid var(--border-color, #ddd);background:var(--bg-primary, #fff);border-radius:8px;font-size:.85rem;color:var(--text-secondary, #555);cursor:pointer;transition:all .2s}.refresh-all-stories-btn:hover{background:var(--bg-secondary, #f5f5f5);border-color:var(--brand-primary, #4a90d9);color:var(--brand-primary, #4a90d9)}.refresh-all-stories-btn:disabled{opacity:.6;cursor:not-allowed}.refresh-errors-panel{margin:.75rem 0 1rem;padding:.75rem 1rem;background:var(--surface-warning, #fef9c3);border:1px solid var(--border-warning, #facc15);border-radius:6px;font-size:.9rem;color:var(--text-primary, #1a1a1a)}.refresh-errors-panel>summary{cursor:pointer;font-weight:600;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.refresh-errors-dismiss{background:transparent;border:none;color:inherit;font-size:1.1rem;cursor:pointer;padding:0 .25rem;line-height:1;opacity:.7}.refresh-errors-dismiss:hover{opacity:1}.refresh-errors-list{margin:.5rem 0 0;padding-left:1.25rem;font-weight:400}.refresh-errors-list li{margin-bottom:.25rem}body.dark-mode .refresh-errors-panel{background:#facc151f;border-color:#facc1566;color:var(--text-primary, #f0f0f0)}.story-card-meta{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.85rem;color:var(--text-secondary, #666);margin-bottom:.75rem}.meta-item strong{color:var(--text-primary, #333)}.auto-refresh-status{font-size:.75rem;font-weight:600;padding:.1rem .4rem;border-radius:4px}.auto-refresh-status.active{color:#15803d;background:#dcfce7}.auto-refresh-status.paused{color:#92400e;background:#fef3c7}.story-keywords{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem}.keyword-tag{display:inline-block;padding:.2rem .6rem;background:var(--bg-secondary, #f0f0f0);border-radius:10px;font-size:.75rem;color:var(--text-secondary, #666)}.story-summary-preview{flex:1;margin-bottom:.75rem}.story-summary-preview p{margin:0;font-size:.85rem;color:var(--text-secondary, #555);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.story-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid var(--border-color, #eee);margin-top:auto}.tracking-since{font-size:.8rem;color:var(--text-secondary, #888)}.paused-badge{display:inline-block;padding:.2rem .5rem;background:#fef3c7;color:#92400e;border-radius:4px;font-size:.75rem;font-weight:500}.loading-state{text-align:center;padding:4rem;color:var(--text-secondary, #666)}body.dark-mode .stories-header{border-bottom-color:var(--border-color, #444)}body.dark-mode .stories-header h1{color:var(--text-primary, #fff)}body.dark-mode .empty-state{background:var(--bg-secondary, #1a1a1a)}body.dark-mode .empty-state h2{color:var(--text-primary, #fff)}body.dark-mode .story-card{background:var(--bg-secondary, #1a1a1a);border-color:var(--border-color, #444)}body.dark-mode .story-card.inactive{background:var(--bg-tertiary, #252525)}body.dark-mode .story-card-header h3{color:var(--text-primary, #fff)}body.dark-mode .btn-icon{background:var(--bg-tertiary, #333)}body.dark-mode .btn-icon:hover{background:var(--border-color, #444)}body.dark-mode .btn-icon.btn-delete:hover{background:#3a1a1a}body.dark-mode .btn-icon.btn-refresh:hover{background:#1e3a5f}body.dark-mode .btn-icon.btn-auto-refresh.active{background:#14532d}body.dark-mode .btn-icon.btn-auto-refresh:hover{background:#1e3a5f}body.dark-mode .auto-refresh-status.active{color:#4ade80;background:#14532d}body.dark-mode .auto-refresh-status.paused{color:#fbbf24;background:#422006}body.dark-mode .refresh-all-stories-btn{background:var(--bg-secondary, #2a2a2a);border-color:var(--border-color, #444);color:var(--text-secondary, #aaa)}body.dark-mode .refresh-all-stories-btn:hover{background:var(--bg-tertiary, #333);border-color:var(--brand-primary, #4a90d9);color:var(--brand-primary, #4a90d9)}body.dark-mode .meta-item strong{color:var(--text-primary, #eee)}body.dark-mode .story-card-footer{border-top-color:var(--border-color, #444)}body.dark-mode .paused-badge{background:#422006;color:#fbbf24}@media(max-width:768px){.tracked-stories-container{padding:1rem .75rem}.stories-header{flex-direction:column;gap:1rem}.stories-header h1{font-size:1.5rem}.stories-grid{grid-template-columns:1fr;gap:1rem}.story-card{padding:1rem}.story-card-header{flex-direction:column;align-items:flex-start;gap:.75rem}.story-card-header h3{font-size:1rem;width:100%}.story-card-actions{display:flex;gap:.5rem;width:100%;justify-content:flex-start}.btn-icon{width:36px;height:36px;font-size:1rem}.story-card-meta{font-size:.8rem}.story-keywords{gap:.3rem}.keyword-tag{font-size:.7rem;padding:.15rem .5rem}.story-summary-preview p{font-size:.8rem}.story-card-footer{flex-direction:column;align-items:flex-start;gap:.5rem}}@media(max-width:480px){.tracked-stories-container{padding:.75rem .5rem}.stories-header h1{font-size:1.3rem}.story-card{padding:.875rem}.story-card-header h3{font-size:.95rem}.btn-icon{width:32px;height:32px;font-size:.9rem}}.diff-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-modal-overlay, rgba(0, 0, 0, .5));z-index:var(--z-modal-backdrop, 300);display:flex;align-items:center;justify-content:center;padding:var(--space-4, 1rem);animation:diff-fade-in .15s ease;overflow:auto}@keyframes diff-fade-in{0%{opacity:0}to{opacity:1}}.diff-modal{background:var(--bg-card, #ffffff);color:var(--text-primary, #1f2937);border-radius:var(--radius-xl, 12px);box-shadow:var(--shadow-xl, 0 20px 60px rgba(0, 0, 0, .35));z-index:var(--z-modal, 400);max-width:880px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:diff-slide-up .2s ease}@keyframes diff-slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.diff-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem .85rem;border-bottom:1px solid var(--border-color, #e5e7eb);flex-shrink:0}.diff-modal-header-text{flex:1;min-width:0}.diff-modal-eyebrow{font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#f59e0b;margin-bottom:.25rem}.diff-modal-title{font-size:1.05rem;font-weight:600;margin:0 0 .25rem;line-height:1.3;color:var(--text-primary, #1f2937);word-wrap:break-word}.diff-modal-story{font-size:.78rem;color:var(--text-muted, #6b7280)}.diff-modal-close{background:none;border:none;font-size:1.5rem;line-height:1;color:var(--text-tertiary, #9ca3af);cursor:pointer;padding:.25rem .5rem;border-radius:4px;flex-shrink:0;transition:background .15s ease,color .15s ease;font-weight:400}.diff-modal-close:hover{background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #111827)}.diff-modal-body{padding:1rem 1.5rem;overflow-y:auto;flex:1 1 auto;min-height:0}.diff-summary{font-size:.85rem;color:var(--text-muted, #6b7280);font-style:italic;margin-bottom:1rem;padding:.6rem .85rem;background:var(--bg-hover, #f9fafb);border-radius:6px}.diff-correction-pill{background:#fffbeb;border-left:4px solid #f59e0b;padding:.7rem 1rem;border-radius:0 6px 6px 0;margin-bottom:1rem;font-size:.85rem}.diff-correction-label{font-weight:600;color:#92400e;margin-right:.4rem}.diff-correction-value{background:#fef3c7;padding:.15rem .4rem;border-radius:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em;color:#78350f}.diff-correction-hint{margin-top:.4rem;font-size:.78rem;color:#78350f;line-height:1.4}.diff-empty{text-align:center;padding:2rem 1rem;color:var(--text-muted, #6b7280)}.diff-empty p{margin:.4rem 0}.diff-empty-hint{font-size:.8rem;max-width:480px;margin:.4rem auto 0;line-height:1.5}.diff-empty code{background:var(--bg-hover, #f3f4f6);padding:.1rem .3rem;border-radius:3px;font-size:.85em}.diff-block{margin-bottom:1.25rem}.diff-block-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary, #6b7280);margin-bottom:.5rem}.diff-before,.diff-after{border-radius:0 6px 6px 0;padding:.6rem .85rem;margin-bottom:.4rem}.diff-before{background:#fef2f2;border-left:4px solid #dc2626}.diff-after{background:#f0fdf4;border-left:4px solid #16a34a}.diff-tag{font-size:.62rem;font-weight:700;margin-bottom:.3rem;letter-spacing:.04em}.diff-tag-before{color:#dc2626}.diff-tag-after{color:#16a34a}.diff-text{font-size:.9rem;line-height:1.5;color:var(--text-primary, #1f2937);word-wrap:break-word}.diff-content-header{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;margin-bottom:.5rem}.diff-content-header .diff-block-label{margin-bottom:0}.diff-content-stats{display:flex;gap:.5rem;font-size:.75rem;font-weight:600;margin-left:.5rem}.diff-stat{padding:.1rem .45rem;border-radius:4px}.diff-stat-added{background:#d1fae5;color:#065f46}.diff-stat-removed{background:#fee2e2;color:#991b1b}.diff-toggle{margin-left:auto;background:var(--bg-hover, #f3f4f6);border:1px solid var(--border-color, #e5e7eb);border-radius:4px;padding:.25rem .6rem;font-size:.75rem;cursor:pointer;color:var(--text-primary, #1f2937)}.diff-toggle:hover{background:var(--bg-tertiary, #e5e7eb)}.diff-content-body{background:var(--bg-hover, #f9fafb);border:1px solid var(--border-color, #e5e7eb);border-radius:6px;padding:.85rem 1rem;max-height:400px;overflow-y:auto;font-size:.85rem;line-height:1.6;white-space:pre-wrap;word-wrap:break-word}.diff-added{background:#d1fae5;color:#065f46;padding:1px 2px;border-radius:2px}.diff-removed{background:#fee2e2;color:#991b1b;text-decoration:line-through;padding:1px 2px;border-radius:2px}.diff-unchanged{color:var(--text-tertiary, #6b7280)}.diff-modal-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 1.5rem;border-top:1px solid var(--border-color, #e5e7eb);background:var(--bg-hover, #f9fafb);flex-shrink:0}.diff-modal-link{color:var(--accent-primary, #667eea);text-decoration:none;font-size:.85rem;font-weight:500}.diff-modal-link:hover{text-decoration:underline}.diff-modal-done{background:#1a1a2e;color:#fff;border:none;border-radius:6px;padding:.5rem 1.1rem;font-size:.85rem;font-weight:600;cursor:pointer}.diff-modal-done:hover{background:#2a2a4e}.dark-mode .diff-modal{color:var(--text-primary)}.dark-mode .diff-summary,.dark-mode .diff-content-body,.dark-mode .diff-modal-footer{background:var(--bg-tertiary, #16213e)}.dark-mode .diff-before{background:#dc26262e}.dark-mode .diff-after{background:#16a34a2e}.dark-mode .diff-added{background:#16a34a4d;color:#6ee7b7}.dark-mode .diff-removed{background:#dc26264d;color:#fca5a5}.dark-mode .diff-correction-pill{background:#f59e0b1f}.dark-mode .diff-correction-label,.dark-mode .diff-correction-hint{color:#fcd34d}.dark-mode .diff-correction-value{background:#f59e0b40;color:#fde68a}@media(max-width:640px){.diff-modal-overlay{padding:.5rem}.diff-modal{max-height:95vh}.diff-modal-header,.diff-modal-body,.diff-modal-footer{padding-left:1rem;padding-right:1rem}}.stealth-alerts-container{position:relative}.stealth-alerts-bell{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--bg-secondary, #f3f4f6);border:none;border-radius:8px;cursor:pointer;position:relative;transition:all .2s}.stealth-alerts-bell:hover{background:var(--bg-tertiary, #e5e7eb)}.stealth-alerts-bell.has-unread{background:#fef3c7}.bell-icon{font-size:1.2rem}.unread-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 5px;background:#ef4444;color:#fff;border-radius:9px;font-size:.7rem;font-weight:600;display:flex;align-items:center;justify-content:center}.stealth-alerts-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;z-index:99}.stealth-alerts-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:360px;max-height:480px;background:var(--bg-primary, white);border:1px solid var(--border-light, #e5e7eb);border-radius:12px;box-shadow:0 10px 40px #00000026;z-index:100;overflow:hidden}.alerts-header{padding:16px;border-bottom:1px solid var(--border-light, #e5e7eb);display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.alerts-header-text{flex:1;min-width:0}.alerts-header-close{background:none;border:none;color:var(--text-tertiary, #9ca3af);font-size:1.3rem;line-height:1;padding:.2rem .5rem;border-radius:4px;cursor:pointer;flex-shrink:0;font-weight:400;transition:background .15s ease,color .15s ease}.alerts-header-close:hover{background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #111827)}.alerts-header h4{margin:0;font-size:1rem;color:var(--text-primary, #1f2937)}.alerts-subtitle{font-size:.75rem;color:var(--text-tertiary, #9ca3af)}.alerts-loading,.alerts-empty{padding:30px;text-align:center;color:var(--text-tertiary, #9ca3af);font-size:.9rem}.alerts-list{max-height:380px;overflow-y:auto}.alert-item{display:flex;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border-light, #e5e7eb);cursor:pointer;transition:background .15s}.alert-item:hover{background:var(--bg-secondary, #f9fafb)}.alert-item.unread{background:#fef9c3}.alert-item.unread:hover{background:#fef08a}.alert-icon{font-size:1.2rem;flex-shrink:0}.alert-content{flex:1;min-width:0}.alert-type{font-size:.75rem;font-weight:600;color:#d97706;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.alert-title{font-size:.9rem;color:var(--text-primary, #1f2937);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alert-summary{font-size:.8rem;color:var(--text-secondary, #6b7280);margin-top:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.alert-time{font-size:.7rem;color:var(--text-tertiary, #9ca3af);margin-top:4px}.alert-view-diff{display:inline-flex;align-items:center;gap:.25rem;margin-top:6px;padding:.3rem .6rem;background:var(--accent-primary, #667eea);color:#fff;border:none;border-radius:4px;font-size:.72rem;font-weight:600;cursor:pointer;transition:background .15s ease,transform .05s ease;align-self:flex-start}.alert-view-diff:hover{background:var(--accent-primary-hover, #5568d3)}.alert-view-diff:active{transform:translateY(1px)}.alert-dismiss{flex-shrink:0;width:24px;height:24px;background:transparent;border:none;color:var(--text-tertiary, #9ca3af);font-size:1.2rem;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .15s}.alert-item:hover .alert-dismiss{opacity:1}.alert-dismiss:hover{background:var(--bg-tertiary, #e5e7eb);color:var(--text-primary, #1f2937)}html[data-theme=dark] .stealth-alerts-bell{background:#374151}html[data-theme=dark] .stealth-alerts-bell:hover{background:#4b5563}html[data-theme=dark] .stealth-alerts-bell.has-unread{background:#422006}html[data-theme=dark] .stealth-alerts-dropdown{background:#1f2937;border-color:#374151}html[data-theme=dark] .alerts-header,html[data-theme=dark] .alert-item{border-color:#374151}html[data-theme=dark] .alert-item:hover{background:#374151}html[data-theme=dark] .alert-item.unread{background:#422006}html[data-theme=dark] .alert-item.unread:hover{background:#713f12}html[data-theme=dark] .alert-dismiss:hover{background:#4b5563}@media(max-width:480px){.stealth-alerts-dropdown{position:fixed;top:auto;bottom:0;left:0;right:0;width:100%;max-height:60vh;border-radius:12px 12px 0 0}}.digest-container{max-width:1200px;margin:0 auto;padding:var(--space-8);animation:fadeIn .3s ease;overflow-x:hidden}.digest-header-centered{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-8);border-bottom:3px double #121212;padding-bottom:1rem}.digest-header-centered h1{font-family:Playfair Display,Georgia,serif;font-size:2.5rem;color:#1a1a1a;margin:0;font-weight:900;letter-spacing:-.5px}.digest-subtitle-centered{font-family:Georgia,serif;font-style:italic;color:var(--text-tertiary);font-size:1rem;margin:0}@media(max-width:640px){.digest-header-centered{flex-direction:column;align-items:flex-start;gap:.4rem}.digest-header-centered h1{font-size:1.85rem}}body.dark-mode .digest-header-centered,[data-theme=dark] .digest-header-centered{border-bottom-color:#444}body.dark-mode .digest-header-centered h1,[data-theme=dark] .digest-header-centered h1{color:#e0e0e0}.digest-tabs{display:flex;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-6);border-bottom:2px solid #e0e0e0;padding-bottom:0}.digest-tab{display:flex;align-items:center;gap:var(--space-2);padding:.875rem 1.5rem;font-size:var(--text-base);font-weight:var(--font-medium);color:var(--text-tertiary);background:none;border:none;border-bottom:3px solid transparent;margin-bottom:-2px;cursor:pointer;transition:var(--transition-normal)}.digest-tab:hover{color:#667eea;background:#667eea0d}.digest-tab.active{color:#667eea!important;font-weight:700!important;border-bottom:3px solid #667eea!important;background:#667eea14}.digest-tab .tab-count{background:#e8f0fe;color:#667eea;padding:.125rem .5rem;border-radius:10px;font-size:.85rem;font-weight:var(--font-semibold)}.digest-tab.active .tab-count{background:#667eea;color:#fff}body.dark-mode .digest-tabs,[data-theme=dark] .digest-tabs{border-bottom-color:#3a3a3a}body.dark-mode .digest-tab,[data-theme=dark] .digest-tab{color:#999}body.dark-mode .digest-tab:hover,[data-theme=dark] .digest-tab:hover{color:#818cf8;background:#818cf81a}body.dark-mode .digest-tab.active,[data-theme=dark] .digest-tab.active{color:#818cf8!important;font-weight:700!important;border-bottom-color:#818cf8!important;background:#818cf826}body.dark-mode .digest-tab .tab-count,[data-theme=dark] .digest-tab .tab-count{background:#818cf833;color:#818cf8}body.dark-mode .digest-tab.active .tab-count,[data-theme=dark] .digest-tab.active .tab-count{background:#818cf8;color:#1a1a1a}.trigger-btn{background:#2563eb;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--radius-md);font-weight:var(--font-semibold);cursor:pointer;transition:var(--transition-normal);font-size:.95rem;box-shadow:0 2px 4px #00000026}.trigger-btn:hover:not(:disabled){background:#1d4ed8;box-shadow:0 2px 8px #0003}.trigger-btn:disabled,.trigger-btn.running{background:#93c5fd;cursor:not-allowed;box-shadow:none}.header-actions{display:flex;gap:var(--space-4);align-items:center;flex-wrap:wrap}.share-topics-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--radius-md);font-weight:var(--font-semibold);cursor:pointer;transition:var(--transition-normal);font-size:.95rem;box-shadow:0 2px 4px #00000026}.share-topics-btn:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 2px 8px #0003}.share-topics-btn:disabled,.share-topics-btn.disabled{background:#a7f3d0;color:var(--text-tertiary);cursor:not-allowed;box-shadow:none}.digest-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6);flex-wrap:wrap;gap:var(--space-4)}.digest-title-section h1{font-size:2rem;margin:0 0 .5rem;color:var(--text-primary);font-family:Playfair Display,Georgia,serif;font-weight:900;letter-spacing:-.5px}.digest-subtitle{color:var(--text-tertiary);margin:0;font-size:var(--text-base);font-family:Georgia,serif;font-style:italic}.btn-trigger{background:#121212;color:#fff;border:1px solid #121212;padding:.75rem 1.5rem;border-radius:0;font-weight:var(--font-semibold);cursor:pointer;box-shadow:none;transition:var(--transition-slow);font-family:Franklin Gothic Medium,Arial,sans-serif;text-transform:uppercase;letter-spacing:.5px;font-size:var(--text-sm)}.btn-trigger:hover:not(:disabled){background:var(--bg-primary);color:var(--text-primary);box-shadow:none;transform:none}.btn-trigger:disabled{opacity:.6;cursor:not-allowed}.add-topic-form .btn-share{background:#121212;color:#fff;border:1px solid #121212;padding:.75rem 1.5rem;border-radius:0;font-weight:var(--font-semibold);cursor:pointer;box-shadow:none;transition:var(--transition-slow);font-family:Franklin Gothic Medium,Arial,sans-serif;text-transform:uppercase;letter-spacing:.5px;font-size:var(--text-sm)}.add-topic-form .btn-share:hover:not(:disabled){background:var(--bg-primary);color:var(--text-primary)}.add-topic-form .btn-share:disabled{opacity:.5;cursor:not-allowed}.digest-actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.btn-clear-all{background:transparent;color:#dc2626;border:1px solid #dc2626;padding:.75rem 1.5rem;border-radius:0;font-weight:var(--font-semibold);cursor:pointer;transition:var(--transition-slow);font-family:Franklin Gothic Medium,Arial,sans-serif;text-transform:uppercase;letter-spacing:.5px;font-size:var(--text-sm)}.btn-clear-all:hover{background:#dc2626;color:#fff}.clear-btn{background:transparent;border:none;cursor:pointer;padding:.15rem .4rem;margin-left:auto;font-size:.85rem;opacity:0;visibility:hidden;transition:var(--transition-normal);border-radius:3px}.year-header:hover .clear-btn,.month-header:hover .clear-btn,.day-header:hover .clear-btn{opacity:.8;visibility:visible}.year-header .period-count,.month-header .period-count,.week-header .period-count{font-size:var(--text-xs, 11px);font-weight:500;color:#888;background:#f0f0f0;padding:.15rem .5rem;border-radius:999px;margin-left:auto;margin-right:.5rem;white-space:nowrap}body.dark-mode .year-header .period-count,body.dark-mode .month-header .period-count,body.dark-mode .week-header .period-count{color:#aaa;background:#ffffff1a}.clear-btn:hover{opacity:1!important;background:#dc262626}.year-header .clear-btn{color:var(--text-secondary)}.year-header .clear-btn:hover{color:#dc2626;background:#dc262626}.month-header .clear-btn{color:var(--text-secondary)}.month-header .clear-btn:hover{color:#dc2626;background:#dc262626}.day-header .clear-btn{color:var(--text-tertiary)}.day-header .clear-btn:hover{color:#dc2626;background:#dc262626}.scheduler-status{background:linear-gradient(135deg,#f6f8fb,#e9ecef);border-radius:var(--radius-xl);padding:var(--space-6);display:flex;gap:var(--space-8);flex-wrap:wrap;margin-bottom:var(--space-8);box-shadow:0 2px 8px #0000000d}.status-item{display:flex;flex-direction:column;gap:.25rem}.status-label{font-size:var(--text-sm);color:#718096;font-weight:var(--font-medium)}.status-value{font-size:var(--text-base);color:#2d3748;font-weight:var(--font-semibold)}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:var(--text-sm);font-weight:var(--font-semibold)}.status-badge.active{background:#c6f6d5;color:#22543d}.view-toggle{display:flex;gap:var(--space-2);background:#f7fafc;padding:var(--space-2);border-radius:10px;width:-moz-fit-content;width:fit-content;flex-shrink:0}.toggle-btn{background:transparent;border:none;padding:.75rem 1.5rem;border-radius:var(--radius-lg);font-weight:var(--font-semibold);cursor:pointer;color:#718096;transition:var(--transition-normal)}.toggle-btn.active{background:var(--bg-primary);color:var(--brand-primary);box-shadow:var(--shadow-md)}.toggle-btn:hover:not(.active){color:#4a5568}.digest-content{animation:slideIn .3s ease}.digest-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6);padding:var(--space-4);background:#f7fafc;border-radius:var(--radius-lg)}.digest-date{font-weight:var(--font-semibold);color:#2d3748}.digest-age{color:#718096;font-size:var(--text-sm)}.searches-grid{display:grid;gap:var(--space-6)}.search-card{background:var(--bg-primary);border:2px solid #e2e8f0;border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:0 2px 8px #0000000d;transition:var(--transition-slow);max-width:100%;overflow:hidden;box-sizing:border-box}.search-card:hover{border-color:var(--brand-primary);box-shadow:0 2px 8px #0000001a}.search-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);padding-bottom:.75rem;border-bottom:2px solid #e2e8f0;transition:background-color .15s ease}.search-header.clickable{cursor:pointer;border-radius:var(--radius-md);padding:.5rem .75rem .75rem;margin:-.5rem -.75rem .5rem}.search-header.clickable:hover{background:#00000008}body.dark-mode .search-header.clickable:hover{background:#ffffff08}.topic-expand-icon{font-size:.75rem;color:var(--text-tertiary);width:16px;flex-shrink:0;transition:transform .15s ease}.search-card.collapsed .search-header{margin-bottom:0;border-bottom:none}.search-header h3{margin:0;color:#2d3748;font-size:var(--text-xl);flex:1}.word-boundary-term{display:inline-flex;align-items:center}.boundary-indicator{color:#2e7d32;font-weight:var(--font-semibold);font-size:.85em;margin:0 2px}body.dark-mode .boundary-indicator{color:#6dd58c}.article-count{color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium)}.article-count.pending{color:var(--color-warning);font-size:var(--text-xs);font-weight:var(--font-semibold)}.topic-category-badge{display:inline-block;padding:.15rem .5rem;font-size:.7rem;background:#f0f0f0;color:var(--text-tertiary);border-radius:var(--radius-sm);text-transform:capitalize;margin-left:.5rem}.topic-category-badge.local{background:#e8f5e9;color:#2e7d32;font-weight:var(--font-medium)}body.dark-mode .topic-category-badge{background:#3a3a4a;color:var(--text-muted)}body.dark-mode .topic-category-badge.local{background:#1b4332;color:#6dd58c}.topic-sort-control{margin-bottom:0}.topic-controls-bar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.topic-expand-controls{display:flex;gap:.25rem}.topic-added-date{font-size:var(--text-xs, .7rem);color:var(--text-tertiary, #999);margin-left:.5rem;white-space:nowrap}@media(max-width:600px){.topic-added-date{display:none}.topic-controls-bar{flex-wrap:wrap}}.topic-generate-btn,.topic-clear-btn,.topic-delete-btn{background:transparent;border:none;cursor:pointer;padding:.4rem .6rem;border-radius:var(--radius-md);font-size:var(--text-base);opacity:0;visibility:hidden;transition:var(--transition-normal)}.topic-generate-btn:disabled{cursor:wait;opacity:.7!important}.search-header:hover .topic-generate-btn,.search-header:hover .topic-clear-btn,.search-header:hover .topic-delete-btn{opacity:.5;visibility:visible}.topic-generate-btn:hover:not(:disabled){opacity:1!important;background:#dbeafe}.topic-clear-btn:hover{opacity:1!important;background:#fef3c7}.topic-delete-btn:hover{opacity:1!important;background:#fee2e2}.search-error{padding:var(--space-4);background:#fed7d7;color:#c53030;border-radius:var(--radius-lg);text-align:center}.articles-list{display:flex;flex-direction:column;gap:var(--space-4)}.article-item{position:relative;transition:transform .2s ease,box-shadow .2s ease;background:#f7fafc;border-radius:var(--radius-lg);margin-bottom:.75rem;border:1px solid #e2e8f0}.article-item:hover{box-shadow:0 2px 8px #0000001a}.article-link{display:flex;gap:var(--space-4);padding:var(--space-4);padding-right:110px;background:transparent;border-radius:0;text-decoration:none;color:inherit;transition:var(--transition-normal)}.article-link.no-thumbnail{padding-right:110px}.article-link.no-thumbnail .article-info{max-width:100%}.article-link.no-thumbnail .article-description{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.article-link:hover{background:#f8f9fa}.article-info{display:flex;gap:var(--space-4);flex:1;min-width:0}.digest-match-type-badge-container{margin-bottom:var(--space-2)}.digest-match-type-badge{display:inline-block;font-size:.7rem;font-family:Franklin Gothic Medium,Arial,sans-serif;padding:.3rem .55rem;border-radius:3px;font-weight:var(--font-medium);letter-spacing:.3px;text-transform:uppercase}.digest-match-type-badge.match-type-title{background:#4caf50;color:#fff;border:1px solid #4caf50}.digest-match-type-badge.match-type-description{background:#2196f3;color:#fff;border:1px solid #2196f3}.digest-match-type-badge.match-type-content{background:#f5f5f5;color:var(--text-tertiary);border:1px solid var(--border-light)}.article-title{margin:0 0 .5rem;color:#2d3748;font-size:1.1rem;font-weight:var(--font-semibold);line-height:1.4}.article-description{margin:0 0 .5rem;color:var(--text-tertiary);font-size:.95rem;line-height:1.5}.article-meta{display:flex;gap:var(--space-2);font-size:.85rem;color:#999;align-items:center;flex-wrap:wrap}.history-article .article-source{font-weight:var(--font-semibold);cursor:default;color:var(--text-primary);font-size:.9rem}.history-article .article-source .source-name{max-width:200px}.article-thumbnail{width:120px;height:80px;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;border-radius:var(--radius-lg);flex-shrink:0}.article-right-column{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0;overflow:visible;position:relative}.article-badges-row{display:flex;justify-content:space-between;align-items:center;width:120px;margin-top:4px;gap:4px;overflow:visible;position:relative}.article-badges-row.compact{width:auto;justify-content:flex-start;gap:8px;margin-top:0;margin-bottom:4px;flex-wrap:wrap}.badges-left{display:flex;align-items:center;gap:2px;overflow:visible;position:relative}.badges-right{display:flex;align-items:center;gap:4px;font-size:.7rem}.more-articles{padding:var(--space-3);text-align:center;color:var(--brand-primary);font-weight:var(--font-semibold);background:#f0f4ff;border-radius:var(--radius-lg)}.no-digest{text-align:center;padding:4rem 2rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:var(--radius-2xl);border:none}.no-digest-icon{font-size:4rem;margin-bottom:var(--space-4)}.no-digest h2{color:#2d3748;margin-bottom:var(--space-2)}.no-digest p{color:#718096;max-width:500px;margin:0 auto 1rem}.no-digest-description{font-size:1.1rem}.no-digest-tips{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-6);max-width:450px;margin-left:auto;margin-right:auto}.no-digest-tips .tip{background:var(--bg-primary);padding:.75rem 1rem;border-radius:var(--radius-lg);font-size:.9rem;color:#555;text-align:left}.history-view{animation:slideIn .3s ease}.history-list{display:flex;flex-direction:column;gap:var(--space-4)}.history-item{background:var(--bg-primary);border:2px solid #e2e8f0;border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:0 2px 8px #0000000d;transition:var(--transition-slow)}.history-item:hover{border-color:#cbd5e0;box-shadow:0 4px 12px #0000001a}.history-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.history-header h3{margin:0 0 .25rem;color:#2d3748;font-size:var(--text-lg)}.history-age{color:#718096;font-size:var(--text-sm);margin:0}.history-actions{display:flex;gap:var(--space-2)}.btn-view{background:var(--brand-primary);color:#fff;border:none;padding:.5rem 1rem;border-radius:var(--radius-md);font-weight:var(--font-semibold);cursor:pointer;transition:var(--transition-normal)}.btn-view:hover{background:#5568d3}.btn-delete{background:#fed7d7;color:#c53030;border:none;padding:.5rem .75rem;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-normal)}.btn-delete:hover{background:#feb2b2}.history-summary{color:#718096;font-size:var(--text-sm)}.no-history{text-align:center;padding:4rem 2rem;background:var(--bg-primary);border-radius:var(--radius-xl);border:2px dashed #e2e8f0}.no-history-icon{font-size:4rem;margin-bottom:var(--space-4)}.no-history h2{color:#2d3748;margin-bottom:var(--space-4)}.no-history p{color:#718096;max-width:500px;margin:0 auto}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem}.spinner{width:50px;height:50px;border:4px solid #e2e8f0;border-top-color:var(--brand-primary);border-radius:var(--radius-full);animation:spin .8s linear infinite}.loading-spinner p{margin-top:1rem;color:#718096}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}body.dark-mode .digest-container{color:#e2e8f0}body.dark-mode .digest-title-section h1{color:#f7fafc}body.dark-mode .digest-subtitle{color:#a0aec0}body.dark-mode .scheduler-status{background:linear-gradient(135deg,#2d3748,#1a202c)}body.dark-mode .btn-clear-all{color:#f87171;border-color:#f87171}body.dark-mode .btn-clear-all:hover{background:#f87171;color:#1a202c}body.dark-mode .clear-btn:hover{background:#f8717133}body.dark-mode .status-value{color:#e2e8f0}body.dark-mode .view-toggle{background:#2d3748}body.dark-mode .toggle-btn{color:#a0aec0}body.dark-mode .toggle-btn.active{background:#4a5568;color:#90cdf4}body.dark-mode .digest-meta{background:#2d3748}body.dark-mode .digest-date{color:#e2e8f0}body.dark-mode .search-card{background:#2d3748;border-color:#4a5568}body.dark-mode .search-card:hover{border-color:var(--brand-primary)}body.dark-mode .search-header h3{color:#e2e8f0}body.dark-mode .topic-generate-btn:hover:not(:disabled){background:#1e3a5f}body.dark-mode .topic-clear-btn:hover{background:#78350f}body.dark-mode .topic-delete-btn:hover{background:#7f1d1d}body.dark-mode .article-link{background:transparent}body.dark-mode .article-link:hover{background:#374151}body.dark-mode .article-title{color:#f7fafc}body.dark-mode .article-description{color:#cbd5e0}body.dark-mode .no-digest,body.dark-mode .no-history{background:linear-gradient(135deg,#1e293b,#0f172a);border-color:#4a5568}body.dark-mode .no-digest h2,body.dark-mode .no-history h2{color:#f7fafc}body.dark-mode .no-digest p,body.dark-mode .no-history p{color:var(--text-muted)}body.dark-mode .no-digest-tips .tip{background:#334155;color:#cbd5e1}body.dark-mode .history-item{background:#2d3748;border-color:#4a5568}body.dark-mode .history-header h3{color:#f7fafc}@media(max-width:768px){.digest-container{padding:var(--space-3);max-width:100%;width:100%;box-sizing:border-box}.digest-header{flex-direction:column}.digest-title-section h1{font-size:var(--text-2xl)}.scheduler-status{flex-direction:column;gap:var(--space-4)}.digest-tabs{gap:0;margin:0 0 var(--space-4) 0;padding:0;width:100%;box-sizing:border-box}.digest-tab{flex:1;padding:.6rem .25rem;font-size:.8rem;justify-content:center;text-align:center;white-space:nowrap}.digest-tab .tab-count{font-size:.7rem;padding:.1rem .35rem}.history-content{width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}.history-actions-bar{padding:var(--space-3);width:100%;box-sizing:border-box}.generate-summary-btn{width:100%;justify-content:center}.weekly-year-group{margin-bottom:1rem;width:100%;max-width:100%}.weekly-month-group{margin-left:0;width:100%;max-width:100%}.weekly-year-header.collapsible,.weekly-month-header.collapsible{padding:.5rem}.weekly-year-header.collapsible h2{font-size:1rem}.weekly-month-header.collapsible h3{font-size:.9rem}.weekly-summary-card{padding:var(--space-3);width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.weekly-header{flex-direction:column;gap:.5rem;width:100%}.weekly-info{width:100%}.weekly-info h3{font-size:1rem}.weekly-stats-row{gap:.5rem;flex-wrap:wrap}.weekly-stats-row .stat-item{font-size:.8rem}.weekly-actions{width:100%;display:flex;gap:.5rem;flex-wrap:wrap}.weekly-actions button,.weekly-actions .btn-expand,.weekly-actions .btn-regenerate,.weekly-actions .btn-delete-week{flex:1;min-width:0;font-size:.75rem;font-weight:400;padding:.4rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.weekly-summary-card.expanded{overflow:hidden}.weekly-topics-detail{width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.weekly-topic-row{flex-direction:column;align-items:flex-start;gap:.5rem;width:100%;box-sizing:border-box}.topic-info{width:100%}.topic-stats{width:100%;justify-content:flex-start}.bias-legend{flex-direction:column;gap:.25rem}.search-card{padding:var(--space-3);border-radius:var(--radius-lg)}.search-header{flex-wrap:wrap;gap:var(--space-2);padding-bottom:.5rem}.search-header h3{font-size:var(--text-lg);width:100%}.articles-grouped{margin-top:.5rem}.year-group,.month-group,.week-group,.day-group{border-radius:var(--radius-md)}.year-content,.month-content,.week-content{padding:var(--space-2);gap:var(--space-2)}.day-content{padding:var(--space-2);gap:var(--space-3)}.year-header{padding:.6rem .75rem;font-size:.95rem}.month-header{padding:.5rem .6rem;font-size:.85rem}.week-header{padding:.4rem .5rem;font-size:.8rem}.day-header{padding:.4rem .6rem;font-size:.8rem}.year-header .expand-icon,.month-header .expand-icon,.week-header .expand-icon,.day-header .expand-icon{font-size:.65rem;font-family:system-ui,-apple-system,sans-serif;line-height:1;display:inline-block;width:1rem;text-align:center}.article-link{flex-direction:column}.article-thumbnail{width:100%;height:150px}.history-article{flex-direction:column;padding:var(--space-3);gap:var(--space-3)}.article-info{flex-direction:column;width:100%}.article-details{width:100%}.digest-article{padding:var(--space-3);flex-direction:column}.digest-article-content{flex-direction:column;gap:var(--space-3);width:100%}.digest-article-thumbnail{width:100%;height:140px}.digest-article-info{width:100%}.digest-article-meta{gap:var(--space-1);flex-wrap:wrap}.digest-article-title{font-size:1rem}.digest-article-actions{align-self:flex-end}.history-header{flex-direction:column;gap:var(--space-4)}.history-actions{width:100%}.btn-view,.btn-delete{flex:1}}@media(max-width:480px){.digest-container,.search-card{padding:var(--space-2)}.search-header h3{font-size:var(--text-base)}.year-content,.month-content,.week-content,.day-content{padding:4px;gap:4px}.year-header,.month-header,.week-header,.day-header{padding:.4rem .5rem}.digest-article,.history-article{padding:var(--space-2)}.digest-article-thumbnail{height:120px}.digest-article-title{font-size:.95rem}.digest-tab{padding:.5rem .25rem;font-size:.75rem}.digest-tab .tab-count{display:none}.weekly-summary-card{padding:var(--space-2)}.weekly-info h3{font-size:.9rem}.week-dates,.weekly-stats-row .stat-item{font-size:.75rem}.weekly-actions button,.weekly-actions .btn-expand,.weekly-actions .btn-regenerate,.weekly-actions .btn-delete-week{font-size:.7rem;font-weight:400;padding:.3rem .35rem}.weekly-topics-detail h4{font-size:.8rem}.topic-term{font-size:.85rem}.article-count{font-size:.75rem}}.articles-grouped{margin-top:1rem;max-width:100%;overflow:hidden}.year-group{margin-bottom:var(--space-2);border:1px solid var(--border-light);border-radius:0;overflow:hidden;background:var(--bg-primary)}.year-header{display:flex;align-items:center;gap:var(--space-2);padding:.5rem .75rem;background:#e5e7eb;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:var(--transition-normal);font-family:Franklin Gothic Medium,Arial,sans-serif;text-transform:uppercase;letter-spacing:.5px}.year-header:hover{background:#d1d5db}.year-header h4{margin:0;font-size:.95rem;flex:1}.year-content{padding:0 .5rem;overflow:hidden}.month-group{margin:.35rem 0;border:1px solid var(--border-light);border-radius:0;overflow:hidden}.month-header{display:flex;align-items:center;gap:var(--space-2);padding:.4rem .75rem;background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:var(--transition-normal);font-family:Franklin Gothic Medium,Arial,sans-serif;text-transform:uppercase;letter-spacing:.5px;font-size:.8rem}.month-header:hover{background:#e5e7eb}.month-header h5{margin:0;font-size:.9rem;flex:1}.month-content{padding:.25rem .5rem;overflow:hidden}.day-group{margin:.25rem 0;border:1px solid var(--border-light);border-radius:0;overflow:hidden}.day-header{display:flex;align-items:center;gap:var(--space-2);padding:.35rem .75rem;background:var(--bg-hover);color:var(--text-tertiary);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:var(--transition-normal);font-family:Franklin Gothic Medium,Arial,sans-serif;text-transform:uppercase;letter-spacing:.5px;font-size:var(--text-xs)}.day-header:hover{background:var(--bg-tertiary)}.day-header .clear-day-btn{opacity:0;visibility:hidden;background:transparent;border:none;cursor:pointer;font-size:.85rem;padding:.2rem .4rem;margin-left:auto;transition:opacity .2s ease,visibility .2s ease}.day-header:hover .clear-day-btn{opacity:.6;visibility:visible}.day-header .clear-day-btn:hover{opacity:1}.day-header h6{margin:0;font-size:.85rem;flex:1}.day-content{padding:.5rem;overflow:hidden}.expand-icon{font-size:var(--text-xs);transition:transform .2s ease}.count-badge{background:#0000001a;padding:.2rem .5rem;border-radius:var(--radius-xl);font-size:.8rem;font-weight:var(--font-semibold)}.year-header .count-badge{background:#0000001a}.dark-mode .year-group,.dark-mode .month-group,.dark-mode .day-group{background:#2d3748;border-color:#4a5568}.dark-mode .year-header{background:#4a5568;color:#e5e7eb}.dark-mode .year-header:hover{background:#3a4558}.dark-mode .month-header{background:#5a6578;color:#f3f4f6}.dark-mode .month-header:hover{background:#4a5568}.dark-mode .day-header{background:#6b7588;color:#f9fafb}.dark-mode .day-header:hover{background:#5a6578}.dark-mode .year-header .clear-btn{color:var(--text-muted)}.dark-mode .year-header .clear-btn:hover{color:#f87171;background:#f8717133}.dark-mode .month-header .clear-btn{color:#d1d5db}.dark-mode .month-header .clear-btn:hover{color:#f87171;background:#f8717133}.dark-mode .day-header .clear-btn{color:#e5e7eb}.dark-mode .day-header .clear-btn:hover{color:#f87171;background:#f8717133}@media(max-width:768px){.year-header h4{font-size:.9rem}.month-header h5{font-size:.85rem}.day-header h6{font-size:.8rem}.count-badge{font-size:.7rem;padding:.15rem .4rem}.expand-icon{font-size:.65rem;font-family:system-ui,-apple-system,sans-serif;line-height:1;display:inline-block;width:1rem;text-align:center}}.article-item{position:relative}.digest-article-actions{position:absolute;top:10px;right:10px;display:flex;gap:6px;z-index:10;overflow:visible}.digest-bookmark-btn,.digest-delete-btn{padding:6px 10px;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:16px;transition:var(--transition-normal);background:#fffffff2;box-shadow:0 2px 6px #00000026}.digest-bookmark-btn{color:var(--text-tertiary)}.digest-bookmark-btn:hover{background:#fff4e5;color:var(--color-warning);transform:scale(1.05)}.digest-bookmark-btn.bookmarked{background:#fef3c7;color:var(--color-warning)}.digest-delete-btn{color:var(--text-tertiary)}.digest-delete-btn:hover{background:#ffe5e5;color:var(--color-error);transform:scale(1.05)}body.dark-mode .article-item{background:#1f2937;border-color:var(--text-secondary)}body.dark-mode .digest-bookmark-btn,body.dark-mode .digest-delete-btn{background:#374151f2;box-shadow:0 2px 6px #0000004d;color:var(--text-muted)}body.dark-mode .digest-bookmark-btn:hover,body.dark-mode .digest-bookmark-btn.bookmarked{background:#451a03;color:#fbbf24}body.dark-mode .digest-delete-btn:hover{background:#7f1d1d;color:#fca5a5}.article-bias-section{padding:0 1rem;margin-top:.5rem;margin-bottom:var(--space-2);position:relative;z-index:1}.article-item .bias-indicator{position:relative;z-index:1}.article-item{padding-bottom:.5rem}.btn-share-topics{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border:none;padding:.6rem 1.2rem;border-radius:var(--radius-lg);cursor:pointer;font-weight:var(--font-medium);display:flex;align-items:center;gap:var(--space-2);transition:var(--transition-normal)}.btn-share-topics:hover{background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 4px 12px #3b82f64d}.pending-topics-banner{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:var(--radius-xl);padding:1rem 1.5rem;margin-bottom:var(--space-6)}.pending-topics-info,.pending-topics-header{display:flex;align-items:center;justify-content:space-between;font-weight:var(--font-medium);color:#92400e;margin-bottom:var(--space-3)}.pending-topics-list{display:flex;flex-direction:column;gap:var(--space-3)}.pending-topic-item{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-md)}.pending-topic-header{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-2);color:var(--text-secondary)}.pending-topic-date{margin-left:auto;color:var(--text-tertiary);font-size:.85rem}.pending-topic-terms{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:.75rem}.topic-tag{background:#e0e7ff;color:#3730a3;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:var(--font-medium)}.pending-topic-actions{display:flex;gap:var(--space-2)}.btn-accept-topics{background:var(--color-success);color:#fff;border:none;padding:.4rem 1rem;border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-medium);transition:background .2s}.btn-accept-topics:hover{background:#059669}.btn-ignore-topics{background:#6b7280;color:#fff;border:none;padding:.4rem 1rem;border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-medium);transition:background .2s}.btn-ignore-topics:hover{background:#4b5563}.share-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:99999;padding:var(--space-4);box-sizing:border-box;animation:fadeIn .2s ease}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.share-modal{background:var(--bg-primary);border-radius:var(--radius-2xl);padding:var(--space-8);max-width:500px;width:100%;max-height:calc(100vh - 4rem);overflow-y:auto;box-shadow:0 25px 60px #0006;animation:modalSlideIn .3s ease}.share-modal h3{margin:0 0 .5rem;color:var(--text-primary);font-size:var(--text-2xl)}.share-modal p{color:var(--text-tertiary);margin-bottom:var(--space-6)}.topic-selection-list{display:flex;flex-direction:column;gap:var(--space-2);max-height:250px;overflow-y:auto;margin-bottom:var(--space-6);padding:var(--space-2);background:var(--bg-hover);border-radius:var(--radius-lg)}.topic-checkbox{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--bg-primary);border-radius:var(--radius-lg);cursor:pointer;transition:background .2s}.topic-checkbox:hover{background:var(--bg-tertiary)}.topic-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.topic-checkbox span{flex:1;color:var(--text-secondary)}.topic-article-count{color:var(--text-muted);font-size:.85rem}.share-email-input{margin-bottom:var(--space-6)}.share-email-input label{display:block;margin-bottom:var(--space-2);font-weight:var(--font-medium);color:var(--text-secondary)}.share-email-input input{width:100%;padding:.75rem 1rem;border:1px solid var(--border-medium);border-radius:var(--radius-lg);font-size:var(--text-base);transition:border-color .2s,box-shadow .2s}.share-email-input input:focus{outline:none;border-color:var(--color-info);box-shadow:0 0 0 3px #3b82f61a}.share-modal-actions{display:flex;justify-content:flex-end;gap:var(--space-3)}.share-modal-actions .btn-cancel{background:var(--bg-tertiary);color:var(--text-secondary);border:none;padding:.75rem 1.5rem;border-radius:var(--radius-lg);cursor:pointer;font-weight:var(--font-medium);transition:background .2s}.share-modal-actions .btn-cancel:hover{background:#e5e7eb}.share-modal-actions .btn-share{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:var(--radius-lg);cursor:pointer;font-weight:var(--font-medium);transition:var(--transition-normal)}.share-modal-actions .btn-share:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 4px 12px #3b82f64d}.share-modal-actions .btn-share:disabled{opacity:.5;cursor:not-allowed}body.dark-mode .pending-topics-banner{background:linear-gradient(135deg,#78350f,#92400e);border-color:#b45309}body.dark-mode .pending-topics-info,body.dark-mode .pending-topics-header{color:#fef3c7}body.dark-mode .pending-topic-item{background:#1f2937;box-shadow:0 2px 4px #0000004d}body.dark-mode .pending-topic-header{color:#e5e7eb}body.dark-mode .pending-topic-date{color:var(--text-muted)}body.dark-mode .topic-tag{background:#312e81;color:#c7d2fe}body.dark-mode .share-modal{background:#1f2937}body.dark-mode .share-modal h3{color:#f3f4f6}body.dark-mode .share-modal p{color:var(--text-muted)}body.dark-mode .topic-selection-list{background:#111827}body.dark-mode .topic-checkbox{background:#1f2937}body.dark-mode .topic-checkbox:hover{background:#374151}body.dark-mode .topic-checkbox span,body.dark-mode .share-email-input label{color:#e5e7eb}body.dark-mode .share-email-input input{background:#374151;border-color:var(--text-secondary);color:#f3f4f6}body.dark-mode .share-email-input input:focus{border-color:var(--color-info)}body.dark-mode .share-modal-actions .btn-cancel{background:#374151;color:#e5e7eb}body.dark-mode .share-modal-actions .btn-cancel:hover{background:#4b5563}.topic-select-checkbox{display:flex;align-items:center;cursor:pointer;margin-right:.5rem}.topic-select-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--color-info)}.search-card.selected{border:2px solid #3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-header{display:flex;align-items:center}.btn-clear-selection{background:#6b7280;color:#fff;border:none;padding:.6rem 1rem;border-radius:var(--radius-lg);cursor:pointer;font-weight:var(--font-medium);font-size:.85rem;transition:var(--transition-normal)}.btn-clear-selection:hover{background:#4b5563}.btn-share-topics.has-selection{background:linear-gradient(135deg,#10b981,#059669);animation:pulse-green 2s infinite}@keyframes pulse-green{0%,to{box-shadow:0 0 #10b98166}50%{box-shadow:0 0 0 8px #10b98100}}.selected-topics-preview{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-6);padding:var(--space-3);background:#f0fdf4;border-radius:var(--radius-lg);border:1px solid #bbf7d0}.no-topics-selected{color:#b45309;background:#fef3c7;padding:var(--space-4);border-radius:var(--radius-lg);margin-bottom:var(--space-4)}body.dark-mode .search-card.selected{border-color:var(--color-info);box-shadow:0 0 0 3px #3b82f633}body.dark-mode .selected-topics-preview{background:#064e3b;border-color:#047857}body.dark-mode .no-topics-selected{background:#78350f;color:#fef3c7}body.dark-mode .btn-clear-selection{background:#4b5563}body.dark-mode .btn-clear-selection:hover{background:#374151}.add-topic-section{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:var(--radius-xl);padding:1.25rem;margin-bottom:var(--space-6);border:1px solid #bae6fd}body.dark-mode .add-topic-section{background:linear-gradient(135deg,#1e3a5f,#1e3a8a);border-color:var(--color-info)}.add-topic-form{display:flex;gap:var(--space-3);margin-bottom:.75rem}.add-topic-form input[type=text]{flex:1;padding:.75rem 1rem;border:2px solid #cbd5e1;border-radius:var(--radius-lg);font-size:var(--text-base);transition:var(--transition-normal);background:var(--bg-primary)}.add-topic-form input[type=text]:focus{outline:none;border-color:var(--color-info);box-shadow:0 0 0 3px #3b82f61a}body.dark-mode .add-topic-form input[type=text]{background:#1f2937;border-color:var(--text-secondary);color:#f3f4f6}body.dark-mode .add-topic-form input[type=text]:focus{border-color:var(--color-info)}.add-topic-form button[type=submit]{padding:.75rem 1.5rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:var(--transition-normal);white-space:nowrap}.add-topic-form button[type=submit]:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px)}.add-topic-form button[type=submit]:disabled{opacity:.5;cursor:not-allowed}.add-topic-hint{font-size:.85rem;color:#64748b;margin:0}.add-topic-hint code{background:#3b82f61a;padding:.1rem .3rem;border-radius:var(--radius-sm);font-family:monospace}body.dark-mode .add-topic-hint{color:#94a3b8}body.dark-mode .add-topic-hint code{background:#3b82f633}@media(max-width:600px){.add-topic-form{flex-direction:column}.add-topic-form button[type=submit]{width:100%}}.latest-topics-controls{margin-bottom:1.5rem}.latest-topics-controls .add-topic-form{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap;margin-bottom:0}.latest-topics-controls .add-topic-form input{flex:1;min-width:200px}.latest-topics-controls .add-topic-form .btn-trigger,.latest-topics-controls .add-topic-form .btn-share{flex-shrink:0}@media(max-width:768px){.latest-topics-controls .add-topic-form{flex-direction:column;align-items:stretch}.latest-topics-controls .add-topic-form input{min-width:unset}.latest-topics-controls .add-topic-form button{width:100%}}.topics-view-controls{display:flex;gap:var(--space-2);margin-top:var(--space-3);justify-content:flex-end}.btn-expand-collapse{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease}.btn-expand-collapse:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--color-primary)}body.dark-mode .btn-expand-collapse{background:var(--bg-tertiary);border-color:var(--border-color)}body.dark-mode .btn-expand-collapse:hover{background:var(--bg-secondary);border-color:var(--color-primary)}@media(max-width:768px){.topics-view-controls{justify-content:center}}.history-item.expanded{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-color:var(--color-info)}body.dark-mode .history-item.expanded{background:linear-gradient(135deg,#1e3a5f,#1e3a8a)}.history-info{flex:1}.btn-expand{background:#e0e7ff;color:#4338ca;border:none;padding:.35rem .5rem;border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-medium);font-size:.85rem;transition:var(--transition-normal)}.btn-expand:hover{background:#c7d2fe}body.dark-mode .btn-expand{background:#4338ca;color:#e0e7ff}body.dark-mode .btn-expand:hover{background:#4f46e5}.history-topics{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0;overflow:hidden}body.dark-mode .history-topics{border-top-color:var(--text-secondary)}.history-topic-item{display:flex;align-items:center;gap:var(--space-2);padding:.5rem .75rem;background:var(--bg-primary);border-radius:var(--radius-md);margin-bottom:var(--space-2);font-size:.9rem}.history-topic-item:last-child{margin-bottom:0}body.dark-mode .history-topic-item{background:#1f2937}.history-topic-item .topic-icon{font-size:.85rem}.history-topic-item .topic-term{flex:1;font-weight:var(--font-medium);color:#1e293b}body.dark-mode .history-topic-item .topic-term{color:#f1f5f9}.history-topic-item .word-boundary-term{color:#7c3aed;font-family:monospace}.history-topic-item .topic-category{font-size:var(--text-xs);padding:.15rem .5rem;background:#f1f5f9;border-radius:var(--radius-sm);color:#64748b}.history-topic-item .topic-category.local{background:#dcfce7;color:#166534}body.dark-mode .history-topic-item .topic-category{background:#374151;color:var(--text-muted)}body.dark-mode .history-topic-item .topic-category.local{background:#166534;color:#dcfce7}.history-topic-item .topic-count{font-size:.8rem;color:#64748b;white-space:nowrap}body.dark-mode .history-topic-item .topic-count{color:var(--text-muted)}body.dark-mode .trigger-btn{background:var(--color-info);box-shadow:0 2px 4px #3b82f64d}body.dark-mode .trigger-btn:hover:not(:disabled){background:#2563eb;box-shadow:0 4px 8px #3b82f666}body.dark-mode .trigger-btn:disabled,body.dark-mode .trigger-btn.running{background:#1e40af;opacity:.7}body.dark-mode .share-topics-btn{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 4px #0000004d}body.dark-mode .share-topics-btn:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 2px 8px #0006}body.dark-mode .share-topics-btn:disabled,body.dark-mode .share-topics-btn.disabled{background:#065f46;color:var(--text-muted);opacity:.6}.weekly-summary-card{background:var(--card-bg, #fff);border-radius:12px;padding:1.25rem;margin-bottom:1rem;border:1px solid var(--border-color, #e5e7eb);transition:all .2s ease}.weekly-summary-card:hover{box-shadow:0 4px 12px #00000014}.weekly-summary-card.expanded{border-color:var(--primary-color, #3b82f6)}.weekly-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.weekly-info h3{font-size:1.1rem;font-weight:600;margin:0 0 .25rem;color:var(--text-primary, #1f2937)}.week-dates{font-size:.85rem;color:var(--text-secondary, #6b7280);margin:0 0 .75rem}.weekly-stats-row{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.75rem}.weekly-stats-row .stat-item{font-size:.9rem;color:var(--text-secondary, #6b7280)}.weekly-stats-row .bias-indicator{padding:.2rem .5rem;border-radius:4px;font-size:.8rem;font-weight:500}.weekly-stats-row .bias-indicator.balanced{background:#d1fae5;color:#065f46}.weekly-stats-row .bias-indicator.left-leaning{background:#dbeafe;color:#1e40af}.weekly-stats-row .bias-indicator.right-leaning{background:#fee2e2;color:#991b1b}.weekly-stats-row .bias-indicator.mixed{background:#fef3c7;color:#92400e}.weekly-bias-bar{margin:.75rem 0}.bias-distribution-bar{display:flex;height:8px;border-radius:4px;overflow:hidden;background:#e5e7eb}.bias-segment.bias-left{background:linear-gradient(90deg,#1e40af,#3b82f6)}.bias-segment.bias-center{background:linear-gradient(90deg,#059669,#10b981)}.bias-segment.bias-right{background:linear-gradient(90deg,#dc2626,#991b1b)}.bias-segment.bias-unknown{background:linear-gradient(90deg,#d1d5db,#9ca3af)}.bias-legend{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.25rem .75rem;font-size:.7rem;color:var(--text-muted, #9ca3af);margin-top:.25rem}.legend-left{color:#3b82f6}.legend-center{color:#10b981}.legend-right{color:#dc2626}.legend-unknown{color:#9ca3af;font-style:italic}.bias-hint{font-size:.65rem;color:var(--text-muted, #9ca3af);margin-top:.35rem;font-style:italic}.sharing-activity{display:flex;gap:1rem;margin-top:.5rem}.share-stat{font-size:.85rem;color:var(--text-secondary, #6b7280)}.weekly-actions{display:flex;gap:.5rem;flex-shrink:0}.weekly-actions .btn-regenerate{background:transparent;border:1px solid var(--border-color, #e5e7eb);padding:.35rem .5rem;border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .2s}.weekly-actions .btn-regenerate:hover:not(:disabled){background:var(--bg-secondary, #f3f4f6);border-color:var(--primary-color, #3b82f6)}.weekly-actions .btn-regenerate:disabled{opacity:.6;cursor:not-allowed}body.dark-mode .weekly-actions .btn-regenerate{border-color:#4b5563}body.dark-mode .weekly-actions .btn-regenerate:hover:not(:disabled){background:#374151;border-color:#60a5fa}.weekly-actions .btn-delete,.weekly-actions .btn-delete-week{background:transparent;border:1px solid var(--border-color, #e5e7eb);padding:.35rem .5rem;border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .2s;color:var(--text-secondary, #6b7280)}.weekly-actions .btn-delete:hover,.weekly-actions .btn-delete-week:hover{background:#fee2e2;border-color:#ef4444;color:#dc2626}body.dark-mode .weekly-actions .btn-delete-week{border-color:#4b5563;color:#9ca3af}body.dark-mode .weekly-actions .btn-delete-week:hover{background:#7f1d1d;border-color:#ef4444;color:#fca5a5}.weekly-topics-detail{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color, #e5e7eb)}.weekly-topics-detail h4{font-size:.9rem;font-weight:600;margin:0 0 .75rem;color:var(--text-primary, #1f2937)}.weekly-topic-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem;margin-bottom:.5rem;background:var(--bg-secondary, #f9fafb);border-radius:6px}.topic-info{display:flex;align-items:center;gap:.5rem}.topic-icon{font-size:.9rem}.topic-term{font-weight:500;color:var(--text-primary, #1f2937)}.topic-stats{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;justify-content:flex-end}.topic-bias-pcts{display:flex;gap:.5rem;font-size:.7rem;font-weight:500}.topic-bias-pcts span{white-space:nowrap}.topic-bias-mini{width:60px}.topic-bias-mini .bias-distribution-bar{height:6px}.weekly-year-group{margin-bottom:2rem}.weekly-year-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--primary-color, #3b82f6)}.weekly-year-header h2{font-size:1.25rem;font-weight:700;margin:0;color:var(--text-primary, #1f2937)}.weekly-month-group{margin-bottom:1.5rem;margin-left:1rem}.weekly-month-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.weekly-month-header h3{font-size:1rem;font-weight:600;margin:0;color:var(--text-secondary, #6b7280)}.weekly-month-header-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.weekly-month-header-row .weekly-month-header{flex:1;margin-bottom:0}.regenerate-month-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:1px solid var(--border-color, #e5e7eb);border-radius:6px;cursor:pointer;font-size:.85rem;opacity:.6;transition:all .2s ease}.regenerate-month-btn:hover:not(:disabled){opacity:1;background:var(--bg-secondary, #f3f4f6);border-color:var(--primary-color, #3b82f6)}.regenerate-month-btn:disabled{cursor:not-allowed;opacity:.4}body.dark-mode .regenerate-month-btn{border-color:var(--border-color, #374151)}body.dark-mode .regenerate-month-btn:hover:not(:disabled){background:var(--bg-tertiary, #374151)}.generate-summary-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--primary-color, #3b82f6);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.generate-summary-btn:hover:not(:disabled){background:#2563eb}.generate-summary-btn:disabled{opacity:.6;cursor:not-allowed}body.dark-mode .weekly-summary-card{background:var(--card-bg, #1f2937);border-color:var(--border-color, #374151)}body.dark-mode .weekly-info h3{color:var(--text-primary, #f3f4f6)}body.dark-mode .weekly-stats-row .bias-indicator.balanced{background:#065f46;color:#a7f3d0}body.dark-mode .weekly-stats-row .bias-indicator.left-leaning{background:#1e3a5f;color:#93c5fd}body.dark-mode .weekly-stats-row .bias-indicator.right-leaning{background:#7f1d1d;color:#fca5a5}body.dark-mode .weekly-topic-row{background:var(--bg-tertiary, #374151)}body.dark-mode .topic-term,body.dark-mode .weekly-year-header h2{color:var(--text-primary, #f3f4f6)}body.dark-mode .bias-distribution-bar{background:#374151}.history-actions-bar{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;padding:1rem;background:var(--bg-secondary, #f9fafb);border-radius:8px}.history-hint{font-size:.85rem;color:var(--text-muted, #9ca3af);margin:0}.empty-hint{font-size:.85rem;color:var(--text-muted, #9ca3af);margin-top:.5rem}body.dark-mode .history-actions-bar{background:var(--bg-tertiary, #374151)}.weekly-year-header.collapsible,.weekly-month-header.collapsible{display:flex;align-items:center;gap:.5rem;width:100%;background:none;border:none;padding:.75rem .5rem;cursor:pointer;text-align:left;border-radius:8px;transition:background-color .2s ease}.weekly-year-header.collapsible:hover,.weekly-month-header.collapsible:hover{background:var(--bg-hover, rgba(0, 0, 0, .05))}.weekly-year-header.collapsible{border-bottom:2px solid var(--primary-color, #3b82f6);margin-bottom:.5rem}.weekly-month-header.collapsible{padding:.5rem;margin-bottom:.5rem}.collapse-icon{font-size:.75rem;color:var(--text-muted, #9ca3af);width:1rem;transition:transform .2s ease}.weekly-year-header.collapsible h2,.weekly-month-header.collapsible h3{margin:0;flex:1}.group-count{font-size:.8rem;color:var(--text-muted, #9ca3af);font-weight:400;padding:.2rem .5rem;background:var(--bg-secondary, #f3f4f6);border-radius:12px}.year-content,.month-content{overflow:hidden}.month-content{padding-left:.5rem}body.dark-mode .weekly-year-header.collapsible:hover,body.dark-mode .weekly-month-header.collapsible:hover{background:#ffffff0d}body.dark-mode .group-count{background:var(--bg-tertiary, #374151)}.tracked-stories-section{margin-bottom:var(--space-8);background:var(--bg-secondary, #f8fafc);border-radius:12px;padding:var(--space-4);border:1px solid var(--border-light, #e2e8f0)}.tracked-stories-section .section-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:var(--space-2);margin:calc(-1 * var(--space-2));margin-bottom:var(--space-2);border-radius:8px;transition:background-color .2s ease}.tracked-stories-section .section-header:hover{background:#00000008}.tracked-stories-section .section-title{display:flex;align-items:center;gap:var(--space-2)}.tracked-stories-section .section-icon{font-size:1.25rem}.tracked-stories-section .section-title h3{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.tracked-stories-section .story-count{font-size:.85rem;color:var(--text-muted);font-weight:400}.tracked-stories-section .info-icon{font-size:.9rem;color:var(--text-muted);cursor:help;margin-left:var(--space-1)}.tracked-stories-section .collapse-btn{background:none;border:none;font-size:.75rem;color:var(--text-muted);cursor:pointer;padding:var(--space-1)}.tracked-stories-section .section-description{font-size:.85rem;color:var(--text-muted);margin:0 0 var(--space-3) 0;font-style:italic}.tracked-stories-section .stories-loading{text-align:center;padding:var(--space-4);color:var(--text-muted);font-size:.9rem}.stories-compact-list{display:flex;flex-direction:column;gap:var(--space-2)}.story-compact-card{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3);background:var(--bg-primary, white);border-radius:8px;text-decoration:none;color:inherit;border:1px solid var(--border-light, #e2e8f0);transition:all .2s ease}.story-compact-card:hover{border-color:var(--brand-primary, #667eea);box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.story-compact-content{flex:1;min-width:0}.story-compact-content h4{margin:0 0 var(--space-1) 0;font-size:.95rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.story-compact-meta{display:flex;align-items:center;gap:var(--space-2);font-size:.8rem;color:var(--text-muted)}.story-compact-meta .meta-dot{color:var(--border-medium)}.story-compact-actions{display:flex;gap:var(--space-1);margin-left:var(--space-3)}.story-compact-actions .btn-pause{background:none;border:none;padding:var(--space-1);cursor:pointer;opacity:.6;transition:opacity .2s;font-size:1rem}.story-compact-actions .btn-pause:hover{opacity:1}.view-all-stories,.manage-stories-link{display:inline-block;margin-top:var(--space-3);font-size:.85rem;color:var(--brand-primary, #667eea);text-decoration:none}.view-all-stories:hover,.manage-stories-link:hover{text-decoration:underline}.manage-stories-link{margin-left:var(--space-4);color:var(--text-muted)}body.dark-mode .tracked-stories-section{background:var(--bg-tertiary, #1e293b);border-color:var(--border-dark, #334155)}body.dark-mode .tracked-stories-section .section-header:hover{background:#ffffff0d}body.dark-mode .story-compact-card{background:var(--bg-secondary, #0f172a);border-color:var(--border-dark, #334155)}body.dark-mode .story-compact-card:hover{border-color:var(--brand-primary, #667eea)}.topics-section-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-light, #e2e8f0)}.topics-section-header .section-icon{font-size:1.25rem}.topics-section-header h3{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.topics-section-header .topic-count{font-size:.85rem;color:var(--text-muted);font-weight:400}.topics-section-header .info-icon{font-size:.9rem;color:var(--text-muted);cursor:help;margin-left:var(--space-1)}.topics-section-description{font-size:.85rem;color:var(--text-muted);margin:calc(-1 * var(--space-2)) 0 var(--space-4) 0;font-style:italic}body.dark-mode .topics-section-header{border-bottom-color:var(--border-dark, #334155)}.stories-view-container .tracked-stories-container{padding:0}.stories-view-container .stories-header{display:none}.stories-view-container .stories-grid{margin-top:0}.stories-view-container .empty-state{margin-top:var(--space-4)}.insights-section{margin-top:var(--space-8);padding-top:var(--space-6);border-top:2px solid var(--border-light, #e2e8f0)}body.dark-mode .insights-section{border-top-color:var(--border-dark, #334155)}.tab-description{text-align:center;margin-bottom:var(--space-6);padding:var(--space-3) var(--space-4);background:var(--bg-secondary, #f8fafc);border-radius:var(--radius-lg);border:1px solid var(--border-light, #e2e8f0)}.tab-description p{margin:0;font-size:.9rem;color:var(--text-secondary)}.tab-description strong{color:var(--text-primary)}body.dark-mode .tab-description{background:var(--bg-tertiary, #1e293b);border-color:var(--border-dark, #334155)}.story-share-modal{max-width:520px}.story-share-preview{background:var(--bg-hover);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-6)}.story-share-preview h4{margin:0 0 var(--space-2) 0;color:var(--text-primary);font-size:var(--text-lg)}.story-share-meta{color:var(--text-tertiary);font-size:.85rem;margin-bottom:var(--space-2)}.story-share-meta .meta-separator{margin:0 var(--space-2);opacity:.5}.story-share-keywords{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-2)}.share-form{display:flex;flex-direction:column;gap:var(--space-4)}.share-input-group{display:flex;flex-direction:column;gap:var(--space-2)}.share-input-group label{color:var(--text-secondary);font-weight:500;font-size:.9rem}.share-input-group input,.share-input-group textarea{padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-lg);font-size:1rem;background:var(--bg-primary);color:var(--text-primary);transition:border-color .2s,box-shadow .2s}.share-input-group input:focus,.share-input-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.share-input-group textarea{resize:vertical;min-height:80px}.share-hint{color:var(--text-muted);font-size:.8rem;margin:0}.share-error{background:#ef44441a;color:#ef4444;padding:var(--space-3);border-radius:var(--radius-lg);font-size:.9rem}.pending-stories-banner{background:linear-gradient(135deg,#dbeafe,#ede9fe);border:1px solid #93c5fd;border-radius:var(--radius-xl);padding:var(--space-5);margin-bottom:var(--space-6)}.pending-stories-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4);font-weight:600;color:#1e40af}.pending-stories-list{display:flex;flex-direction:column;gap:var(--space-4)}.pending-story-item{background:#fff;border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:0 1px 3px #0000001a}.pending-story-header{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3);color:var(--text-secondary);font-size:.9rem}.pending-story-header strong{color:var(--text-primary)}.pending-story-date{margin-left:auto;color:var(--text-muted);font-size:.8rem}.pending-story-details h4{margin:0 0 var(--space-2) 0;color:var(--text-primary);font-size:var(--text-lg)}.pending-story-meta{color:var(--text-tertiary);font-size:.85rem;margin-bottom:var(--space-2)}.pending-story-meta .meta-separator{margin:0 var(--space-2);opacity:.5}.pending-story-keywords{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-bottom:var(--space-2)}.pending-story-keywords .keyword-tag{font-size:.75rem;padding:2px 8px}.pending-story-message{color:var(--text-secondary);font-size:.9rem;margin-top:var(--space-2);padding:var(--space-2);background:var(--bg-hover);border-radius:var(--radius-md)}.pending-story-actions{display:flex;gap:var(--space-3);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border-color)}.btn-accept-story,.btn-reject-story{padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);font-weight:500;cursor:pointer;transition:all .2s}.btn-accept-story{background:#10b981;color:#fff;border:none}.btn-accept-story:hover:not(:disabled){background:#059669}.btn-reject-story{background:transparent;color:var(--text-tertiary);border:1px solid var(--border-color)}.btn-reject-story:hover:not(:disabled){background:#fee2e2;color:#dc2626;border-color:#fca5a5}.btn-accept-story:disabled,.btn-reject-story:disabled{opacity:.5;cursor:not-allowed}.sent-stories-section{margin-top:var(--space-6)}.sent-stories-section h4{color:var(--text-secondary);font-size:.95rem;margin:0 0 var(--space-3) 0}.sent-stories-list{display:flex;flex-direction:column;gap:var(--space-2)}.sent-story-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3);background:var(--bg-hover);border-radius:var(--radius-lg);font-size:.9rem}.sent-story-item.pending{background:#fef3c7;border:1px solid #fcd34d}.sent-story-item.accepted{background:#d1fae5}.sent-story-item.rejected{background:#fee2e2}.sent-story-item.cancelled{background:var(--bg-tertiary);opacity:.7}.sent-story-info{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.sent-story-title{font-weight:500;color:var(--text-primary)}.sent-story-recipient{color:var(--text-tertiary);font-size:.85rem}.sent-story-date{color:var(--text-muted);font-size:.8rem}.sent-story-status{font-weight:500;font-size:.8rem}.sent-story-status.status-accepted{color:#059669}.sent-story-status.status-rejected{color:#dc2626}.sent-story-status.status-cancelled{color:var(--text-muted)}.btn-cancel-share{padding:var(--space-1) var(--space-3);background:transparent;color:var(--text-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.8rem;cursor:pointer;transition:all .2s}.btn-cancel-share:hover:not(:disabled){background:#fee2e2;color:#dc2626;border-color:#fca5a5}.btn-cancel-share:disabled{opacity:.5;cursor:not-allowed}body.dark-mode .pending-stories-banner{background:linear-gradient(135deg,#1e3a5f,#312e81);border-color:#3b82f6}body.dark-mode .pending-stories-header{color:#93c5fd}body.dark-mode .pending-story-item{background:var(--bg-secondary)}body.dark-mode .pending-story-message,body.dark-mode .story-share-preview{background:var(--bg-tertiary)}body.dark-mode .share-input-group input,body.dark-mode .share-input-group textarea{background:var(--bg-tertiary);border-color:var(--border-dark)}body.dark-mode .share-error{background:#ef444433}body.dark-mode .sent-story-item.pending{background:#422006;border-color:#b45309}body.dark-mode .sent-story-item.accepted{background:#064e3b}body.dark-mode .sent-story-item.rejected{background:#450a0a}body.dark-mode .sent-story-item.cancelled{background:var(--bg-tertiary)}.shared-story-badge{display:inline-flex;align-items:center;gap:var(--space-2);background:linear-gradient(135deg,#dbeafe,#ede9fe);color:#4338ca;padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);font-size:.85rem;font-weight:500;margin-bottom:var(--space-2)}body.dark-mode .shared-story-badge{background:linear-gradient(135deg,#312e81,#1e3a8a);color:#a5b4fc}.bookmarks-container{max-width:1200px;margin:0 auto;padding:var(--space-8);box-sizing:border-box}.bookmarks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--space-6)}.bookmarks-header{margin-bottom:var(--space-8)}.bookmarks-header-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-4);border-bottom:3px double #121212;padding-bottom:1rem}@media(max-width:640px){.bookmarks-header-row{flex-direction:column;align-items:flex-start;gap:.4rem}.bookmarks-header-row h1,.bookmarks-header h1{font-size:1.85rem}}.bookmarks-header h1{font-family:Playfair Display,Georgia,serif;font-size:2.5rem;color:#1a1a1a;margin:0;font-weight:900;letter-spacing:-.5px}.bookmarks-subtitle{font-family:Georgia,serif;font-style:italic;color:var(--text-tertiary);font-size:1rem;margin:0}body.dark-mode .bookmarks-header-row,[data-theme=dark] .bookmarks-header-row{border-bottom-color:#444}body.dark-mode .bookmarks-header h1,[data-theme=dark] .bookmarks-header h1{color:#e0e0e0}.bookmarks-count{color:#0f3460;font-weight:var(--font-semibold);font-size:var(--text-base)}.bookmarks-filters{display:flex;gap:var(--space-4);margin-top:1.5rem;flex-wrap:wrap}.filter-btn{background:var(--bg-primary);border:2px solid var(--border-light);color:var(--text-tertiary);padding:.75rem 1.5rem;border-radius:10px;font-size:var(--text-base);font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-slow);display:flex;align-items:center;gap:var(--space-2)}.filter-btn:hover{border-color:var(--brand-primary);color:var(--brand-primary);transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.filter-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:var(--brand-primary);color:#fff;box-shadow:0 2px 8px #0003}.bookmark-card{background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid #e2e8f0;display:flex;flex-direction:column;position:relative;box-sizing:border-box;max-width:100%;margin-bottom:.75rem;transition:box-shadow .2s ease,border-color .2s ease}.bookmark-card:hover{box-shadow:0 2px 8px #0000001a;border-color:var(--text-secondary)}.bookmark-image{width:100%;height:auto;border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);-o-object-fit:cover;object-fit:cover}.bookmark-card.read{opacity:.85}.bookmark-card.read .bookmark-title a{color:var(--text-tertiary)}body.dark-mode .bookmark-card{background:#1e293b;border-color:#334155}body.dark-mode .bookmark-card:hover{box-shadow:0 2px 8px #0000004d;border-color:#475569}body.dark-mode .bookmark-card.read .bookmark-title a{color:var(--text-muted)}.bookmark-header-row{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);flex-wrap:wrap}.bookmark-source-row{display:flex;align-items:center;gap:.25rem;min-width:0;flex-shrink:1}.bookmark-badges{display:flex;align-items:center;gap:.5rem;flex:1;justify-content:center;flex-wrap:wrap}.bookmark-actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0;overflow:visible;position:absolute;top:12px;right:12px;z-index:10}.bookmark-card .article-actions-btn{background:#ffffff80;box-shadow:0 2px 6px #00000040;border:1px solid rgba(0,0,0,.1)}.bookmark-card .article-actions-btn:hover{background:#ffffffd9;box-shadow:0 3px 10px #0000004d}.dark-mode .bookmark-card .article-actions-btn{background:#1e1e2e80;border:1px solid rgba(255,255,255,.15)}.dark-mode .bookmark-card .article-actions-btn:hover{background:#1e1e2ed9}.bookmark-card.no-image .article-actions-btn{box-shadow:none;border:1px solid var(--border-light)}.bookmark-btn-inline{background:transparent;border:none;font-size:1rem;cursor:pointer;padding:2px 6px;border-radius:4px;transition:all .15s ease;color:var(--text-tertiary)}.bookmark-btn-inline:hover{background:var(--bg-secondary);color:#eab308}.bookmark-btn-inline.active{color:#eab308}.bookmark-content{padding:var(--space-4);padding-left:2.25rem;padding-right:1rem;box-sizing:border-box}.bookmark-title{font-size:1.1rem;font-weight:var(--font-semibold);margin:0 0 .5rem;color:#1a1a2e;line-height:1.4}.bookmark-title a{color:inherit;text-decoration:none;transition:color .2s ease}.bookmark-title a:hover{color:var(--brand-primary);text-decoration:underline}.bookmark-description{font-size:.9rem;color:var(--text-tertiary);line-height:1.5;margin:0 0 1rem}.bookmark-footer{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-4)}.bookmark-dates{display:flex;flex-direction:column;gap:.25rem}.bookmark-date,.bookmark-saved-date,.bookmark-read-date{color:#888;font-size:.85rem}.bookmark-saved-date{color:#0f3460;font-weight:var(--font-medium)}.bookmark-read-date{color:var(--color-success);font-weight:var(--font-medium);font-style:italic}.read-badge-inline{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:.35rem .75rem;border-radius:1rem;font-size:.8rem;font-weight:var(--font-semibold);white-space:nowrap;flex-shrink:0}.bookmark-read-btn{display:inline-block;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.6rem 1.2rem;border-radius:var(--radius-lg);text-decoration:none;font-weight:var(--font-medium);transition:transform .2s,box-shadow .2s}.bookmark-read-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.selection-controls{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);padding:.75rem 1rem;background:linear-gradient(135deg,#f0f4f8,#e2e8f0);border-radius:10px;border:1px solid #cbd5e1;flex-wrap:wrap}.dark-mode .selection-controls{background:linear-gradient(135deg,#374151,#1f2937);border-color:var(--text-secondary)}.select-all-btn{padding:.5rem 1rem;background:var(--bg-primary);border:1px solid #dee2e6;border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-medium);transition:var(--transition-normal)}.dark-mode .select-all-btn{background:#4b5563;border-color:var(--text-tertiary);color:#f3f4f6}.select-all-btn:hover{background:#e9ecef;border-color:#adb5bd}.dark-mode .select-all-btn:hover{background:#6b7280}.selected-count{color:#495057;font-weight:var(--font-semibold)}.dark-mode .selected-count{color:#d1d5db}.email-selected-btn{padding:.6rem 1.25rem;background:linear-gradient(135deg,#4a90e2,#357abd);color:#fff;border:none;border-radius:var(--radius-lg);cursor:pointer;font-size:.95rem;font-weight:var(--font-semibold);transition:var(--transition-normal);box-shadow:0 2px 4px #00000026}.email-selected-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #0003}.email-selected-btn:disabled,.email-selected-btn.disabled{background:#93c5fd;color:var(--text-tertiary);cursor:not-allowed;box-shadow:none;transform:none}.dark-mode .email-selected-btn:disabled,.dark-mode .email-selected-btn.disabled{background:#1e40af;color:var(--text-muted);opacity:.6}.article-checkbox{position:absolute;top:8px;left:8px;z-index:10;background:#ffffffe6;padding:4px;border-radius:var(--radius-sm);box-shadow:0 1px 3px #0000001a}.article-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#4a90e2}.bookmark-card.selected{border:2px solid #4a90e2;box-shadow:0 0 0 3px #0000000d}.email-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:99999}.email-modal{background:var(--bg-primary);padding:var(--space-8);border-radius:var(--radius-xl);max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.email-modal h2{margin:0 0 .5rem;color:#1a1a1a}.modal-subtitle{color:#6c757d;margin:0 0 1.5rem}.email-form{display:flex;flex-direction:column;gap:var(--space-4)}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-group label{font-weight:var(--font-semibold);color:#495057}.form-group input,.form-group textarea{padding:var(--space-3);border:1px solid #dee2e6;border-radius:var(--radius-md);font-size:var(--text-base);transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 3px #0000000d}.form-group input:disabled,.form-group textarea:disabled{background:var(--bg-secondary);cursor:not-allowed}.modal-buttons{display:flex;gap:var(--space-4);margin-top:1rem}.cancel-btn,.send-btn{flex:1;padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s ease}.cancel-btn{background:#e9ecef;color:#495057}.cancel-btn:hover:not(:disabled){background:#dee2e6}.send-btn{background:#4a90e2;color:#fff}.send-btn:hover:not(:disabled){background:#357abd;transform:translateY(-1px)}.send-btn:disabled,.cancel-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.bookmarks-container{padding:var(--space-4)}.bookmarks-grid{grid-template-columns:1fr;gap:var(--space-6)}.bookmarks-header h1{font-size:var(--text-2xl)}.bookmark-card{margin-bottom:0}}.share-selected-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:.6rem 1.25rem;border-radius:var(--radius-lg);font-size:.95rem;font-weight:var(--font-semibold);cursor:pointer;transition:var(--transition-normal);box-shadow:0 2px 4px #00000026}.share-selected-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #0003}.share-selected-btn:disabled,.share-selected-btn.disabled{background:#a7f3d0;color:var(--text-tertiary);cursor:not-allowed;box-shadow:none;transform:none}.dark-mode .share-selected-btn:disabled,.dark-mode .share-selected-btn.disabled{background:#065f46;color:var(--text-muted);opacity:.6}.shared-by-badge{position:absolute;top:8px;left:40px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:4px 10px;border-radius:var(--radius-xl);font-size:var(--text-xs);font-weight:var(--font-medium);z-index:2;white-space:nowrap}.pending-shares-section{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;border-radius:var(--radius-xl);margin-bottom:var(--space-8);overflow:hidden}.pending-shares-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;cursor:pointer;transition:background .2s}.pending-shares-header:hover{background:#f59e0b1a}.pending-shares-header h3{margin:0;color:#92400e;font-size:1.1rem}.toggle-icon{color:#92400e;font-size:.9rem}.pending-shares-list{border-top:1px solid rgba(245,158,11,.3)}.pending-share-item{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem 1.5rem;background:var(--bg-primary);border-bottom:1px solid #f0f0f0}.pending-share-item:last-child{border-bottom:none}.share-info{flex:1}.share-from{font-size:.95rem;color:var(--text-primary);margin-bottom:.25rem}.share-date{font-size:.8rem;color:#888;margin-bottom:var(--space-2)}.share-preview{margin-top:.5rem}.preview-title{font-size:.85rem;color:#555;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:400px}.preview-more{font-size:.8rem;color:#888;font-style:italic;margin-top:.25rem}.share-actions{display:flex;gap:var(--space-2);flex-shrink:0;margin-left:1rem}.accept-share-btn,.ignore-share-btn{padding:.5rem 1rem;border-radius:8px;border:none;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.accept-share-btn{background:var(--color-success);color:#fff}.accept-share-btn:hover{background:#059669;transform:translateY(-1px)}.ignore-share-btn{background:#e5e7eb;color:var(--text-tertiary)}.ignore-share-btn:hover{background:#d1d5db}.share-modal{max-width:500px}.field-hint{font-size:.8rem;color:#888;margin-top:.25rem}.share-preview-list{margin-top:1rem;padding:var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-lg);max-height:200px;overflow-y:auto}.share-preview-list label{display:block;font-weight:var(--font-medium);margin-bottom:var(--space-2);color:#555}.share-preview-item{font-size:.85rem;color:var(--text-primary);padding:.25rem 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.share-preview-more{font-size:.8rem;color:#888;font-style:italic;margin-top:.5rem}.share-send-btn{background:#10b981!important;color:#fff}.share-send-btn:hover:not(:disabled){background:#059669!important}.dark-mode .pending-shares-section{background:linear-gradient(135deg,#f59e0b33,#d9770633);border-color:#f59e0b80}.dark-mode .pending-shares-header h3,.dark-mode .toggle-icon{color:#fcd34d}.dark-mode .pending-share-item{background:#1f2937;border-bottom-color:var(--text-secondary)}.dark-mode .share-from{color:#e5e7eb}.dark-mode .preview-title{color:var(--text-muted)}.dark-mode .share-preview-list{background:#374151}.dark-mode .share-preview-list label{color:var(--text-muted)}.dark-mode .share-preview-item{color:#e5e7eb}.dark-mode .shared-by-badge{background:linear-gradient(135deg,#059669,#047857)}.bookmarks-search{position:relative;margin-bottom:var(--space-4)}.bookmarks-search .search-input{width:100%;padding:.875rem 2.5rem .875rem 1rem;font-size:var(--text-base);border:2px solid var(--border-light);border-radius:10px;background:var(--bg-primary);transition:var(--transition-slow)}.bookmarks-search .search-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #0000000d}.bookmarks-search .clear-search-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:#e0e0e0;border:none;border-radius:var(--radius-full);width:24px;height:24px;cursor:pointer;color:var(--text-tertiary);font-size:14px;display:flex;align-items:center;justify-content:center;transition:var(--transition-normal)}.bookmarks-search .clear-search-btn:hover{background:#ccc;color:var(--text-primary)}.no-bookmarks{text-align:center;padding:4rem 2rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:var(--radius-2xl);margin-top:2rem}.no-bookmarks-icon{font-size:4rem;margin-bottom:var(--space-4)}.no-bookmarks h2{color:var(--text-primary);margin-bottom:var(--space-2);font-size:var(--text-2xl)}.no-bookmarks p{color:var(--text-tertiary);margin-bottom:var(--space-4)}.empty-state-description{font-size:1.1rem;max-width:400px;margin:0 auto 1.5rem}.empty-state-tips{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-6);max-width:400px;margin-left:auto;margin-right:auto}.empty-state-tips .tip{background:var(--bg-primary);padding:.75rem 1rem;border-radius:var(--radius-lg);font-size:.9rem;color:#555;text-align:left}.empty-state-action{display:inline-block;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.75rem 1.5rem;border-radius:var(--radius-lg);text-decoration:none;font-weight:var(--font-medium);transition:var(--transition-slow);border:none;cursor:pointer;font-size:var(--text-base)}.empty-state-action:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}body.dark-mode .bookmarks-search .search-input{background:#1e293b;border-color:var(--text-secondary);color:#f1f5f9}body.dark-mode .bookmarks-search .search-input::-moz-placeholder{color:var(--text-muted)}body.dark-mode .bookmarks-search .search-input::placeholder{color:var(--text-muted)}body.dark-mode .bookmarks-search .clear-search-btn{background:#374151;color:var(--text-muted)}body.dark-mode .no-bookmarks{background:linear-gradient(135deg,#1e293b,#0f172a)}body.dark-mode .no-bookmarks h2{color:#f1f5f9}body.dark-mode .no-bookmarks p{color:var(--text-muted)}body.dark-mode .empty-state-tips .tip{background:#334155;color:#cbd5e1}body.dark-mode .bookmark-title{color:#f1f5f9}body.dark-mode .bookmark-title a{color:inherit}body.dark-mode .bookmark-title a:hover{color:#93c5fd}body.dark-mode .bookmark-description,body.dark-mode .bookmark-date,body.dark-mode .bookmark-saved-date{color:var(--text-muted)}body.dark-mode .bookmark-saved-date{color:#93c5fd}@media(max-width:768px){.pending-share-item{flex-direction:column}.share-actions{margin-left:0;margin-top:1rem;width:100%}.accept-share-btn,.ignore-share-btn{flex:1}.preview-title{max-width:100%}.shared-by-badge{left:35px;font-size:.7rem;padding:3px 8px}}.paywall-state{text-align:center;padding:3rem 2rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:var(--radius-2xl);max-width:500px;margin:2rem auto;box-shadow:0 4px 20px #0000001a}.paywall-icon{font-size:4rem;margin-bottom:var(--space-4)}.paywall-state h2{font-size:var(--text-2xl);color:var(--text-primary);margin-bottom:.75rem;font-weight:var(--font-semibold)}.paywall-description{color:var(--text-tertiary);font-size:var(--text-base);margin-bottom:var(--space-6);line-height:1.5}.paywall-features{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-8);text-align:left;max-width:320px;margin-left:auto;margin-right:auto}.paywall-feature{display:flex;align-items:center;gap:var(--space-3);padding:.5rem .75rem;background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:0 1px 3px #00000014}.paywall-feature .feature-icon{font-size:var(--text-xl)}.paywall-feature span:last-child{color:#444;font-size:.9rem}.paywall-cta{display:inline-block;padding:.875rem 2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;text-decoration:none;border-radius:var(--radius-lg);font-weight:var(--font-semibold);font-size:var(--text-base);transition:var(--transition-normal);box-shadow:0 2px 8px #00000026}.paywall-cta:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0003}.paywall-signup{margin-top:1rem;font-size:.9rem;color:var(--text-tertiary)}.paywall-signup a{color:var(--brand-primary);text-decoration:none;font-weight:var(--font-medium)}.paywall-signup a:hover{text-decoration:underline}body.dark-mode .paywall-state{background:linear-gradient(135deg,#1e293b,#0f172a);box-shadow:0 4px 20px #0000004d}body.dark-mode .paywall-state h2{color:#f1f5f9}body.dark-mode .paywall-description{color:#94a3b8}body.dark-mode .paywall-feature{background:#334155;box-shadow:0 1px 3px #0003}body.dark-mode .paywall-feature span:last-child{color:#cbd5e1}body.dark-mode .paywall-signup{color:#94a3b8}body.dark-mode .paywall-signup a{color:#818cf8}.bookmarks-skeleton-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--space-4);padding:var(--space-4) 0}@media(max-width:768px){.bookmarks-skeleton-grid{grid-template-columns:1fr}}.user-guide{padding:var(--space-8);max-width:1400px;margin:0 auto;min-height:100vh}.guide-header{text-align:center;margin-bottom:3rem}.guide-header h1{font-size:2.5rem;margin-bottom:var(--space-2);color:#2563eb}.guide-subtitle{font-size:1.1rem;color:#64748b}.guide-container{display:grid;grid-template-columns:250px 1fr;gap:var(--space-8);position:relative}.guide-sidebar{position:sticky;top:2rem;height:-moz-fit-content;height:fit-content;max-height:calc(100vh - 4rem);overflow-y:auto}.guide-nav h3{font-size:var(--text-base);margin-bottom:var(--space-4);color:#64748b;text-transform:uppercase;letter-spacing:.05em}.nav-item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:.75rem 1rem;background:transparent;border:none;border-left:3px solid transparent;color:#475569;font-size:.95rem;text-align:left;cursor:pointer;transition:var(--transition-normal)}.nav-item:hover{background:#f1f5f9;border-left-color:#2563eb;color:#1e293b}.nav-item.active{background:#eff6ff;border-left-color:#2563eb;color:#2563eb;font-weight:var(--font-semibold)}.nav-icon{font-size:1.2rem}.guide-content{padding:var(--space-4)}.guide-section{margin-bottom:4rem;padding-bottom:3rem;border-bottom:1px solid #e2e8f0}.guide-section:last-child{border-bottom:none}.guide-section h2{font-size:2rem;margin-bottom:var(--space-4);color:#1e293b}.guide-section h3{font-size:var(--text-2xl);margin-top:2rem;margin-bottom:var(--space-4);color:#334155}.guide-section h4{font-size:1.2rem;margin-top:1.5rem;margin-bottom:.75rem;color:#475569}.guide-section p{line-height:1.7;color:#475569;margin-bottom:var(--space-4)}.guide-section ul,.guide-section ol{margin-left:1.5rem;margin-bottom:var(--space-4)}.guide-section li{margin-bottom:var(--space-2);line-height:1.6;color:#475569}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-6);margin:2rem 0}.feature-highlight{padding:var(--space-6);background:linear-gradient(135deg,#eff6ff,#dbeafe);border-radius:var(--radius-xl);border:1px solid #bfdbfe;text-align:center}.highlight-icon{font-size:2.5rem;display:block;margin-bottom:var(--space-4)}.feature-highlight h4{color:#1e40af;margin:0 0 .5rem}.feature-highlight p{color:#475569;font-size:.9rem;margin:0}.quick-start{background:#f8fafc;padding:var(--space-8);border-radius:var(--radius-xl);border-left:4px solid #2563eb;margin-top:2rem}.quick-start h3{margin-top:0;color:#2563eb}.quick-start ol{margin-left:1.5rem}.quick-start li{margin-bottom:.75rem}.subsection{margin:2rem 0}.instruction-box{background:#f1f5f9;padding:var(--space-6);border-radius:var(--radius-lg);margin:1rem 0;border-left:3px solid #2563eb}.instruction-box h4{margin:0 0 .5rem;color:#1e293b}.instruction-box code{display:block;background:#1e293b;color:var(--color-success);padding:.75rem 1rem;border-radius:var(--radius-md);font-family:Courier New,monospace;margin:.5rem 0;font-size:.95rem}.instruction-box p{margin:.5rem 0 0;color:#64748b;font-size:.9rem}.action-list{list-style:none;margin-left:0}.action-list li{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-3);margin-bottom:.75rem;background:#f8fafc;border-radius:var(--radius-lg);border-left:3px solid #3b82f6}.action-icon{font-size:var(--text-2xl);flex-shrink:0}.action-list strong{color:#1e293b}.tip-box{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fcd34d;padding:1rem 1.5rem;border-radius:var(--radius-lg);margin:1.5rem 0;border-left:4px solid #f59e0b}.tip-box strong{color:#92400e}.tip-box p{color:#78350f;margin:.5rem 0 0}.tip-box.success{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#6ee7b7;border-left-color:var(--color-success)}.tip-box.success strong{color:#065f46}.tip-box.success p{color:#064e3b}.instruction-steps{display:flex;flex-direction:column;gap:var(--space-4);margin:1.5rem 0}.step{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);background:#f8fafc;border-radius:var(--radius-lg);border:1px solid #e2e8f0}.step-number{background:#2563eb;color:#fff;width:32px;height:32px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.step p{margin:0;color:#1e293b}.rating-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin:1.5rem 0}.rating-card{padding:var(--space-6);border-radius:var(--radius-lg);text-align:center;border:2px solid;transition:transform .2s}.rating-card:hover{transform:translateY(-4px)}.rating-card.very-high{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:var(--color-success)}.rating-card.high{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:var(--color-info)}.rating-card.medium{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:var(--color-warning)}.rating-card.low{background:linear-gradient(135deg,#fed7aa,#fdba74);border-color:#f97316}.rating-card.very-low{background:linear-gradient(135deg,#fecaca,#fca5a5);border-color:var(--color-error)}.rating-card.unknown{background:linear-gradient(135deg,#e2e8f0,#cbd5e1);border-color:#94a3b8}.rating-icon{font-size:2rem;display:block;margin-bottom:var(--space-2)}.rating-card h4{margin:.5rem 0;font-size:1.1rem}.rating-card p{margin:.5rem 0;font-size:.85rem}.rating-card small{display:block;margin-top:.5rem;opacity:.7;font-size:.8rem}.workflow-list{margin-left:1.5rem}.workflow-list>li{margin-bottom:var(--space-6)}.workflow-list ul{margin-top:.5rem;list-style-type:disc}.workflow-list ul li{margin-bottom:.25rem}.info-box{background:#eff6ff;padding:var(--space-6);border-radius:var(--radius-lg);border:1px solid #bfdbfe;margin:1.5rem 0}.info-box h4{margin:0 0 1rem;color:#1e40af}.info-box ul{margin:0}.shortcuts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin:1.5rem 0}.shortcut{padding:var(--space-4);background:#f1f5f9;border-radius:var(--radius-lg);text-align:center;border:1px solid #cbd5e1}.shortcut kbd{background:#1e293b;color:#fff;padding:.25rem .5rem;border-radius:var(--radius-sm);font-family:Courier New,monospace;font-size:.85rem;margin:0 .25rem}.shortcut p{margin:.75rem 0 0;font-size:.9rem;color:#475569}.shortcuts-note{margin-top:1rem;font-size:.85rem;color:#64748b;font-style:italic}.tip-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-6);margin:1.5rem 0}.tip-card{padding:var(--space-6);background:#f8fafc;border-radius:var(--radius-lg);border:1px solid #e2e8f0;border-left:4px solid #3b82f6}.tip-card h4{margin:0 0 .75rem;color:#1e40af}.tip-card p{margin:0;font-size:.9rem}.troubleshooting{display:flex;flex-direction:column;gap:var(--space-6)}.trouble-item{background:#fef2f2;padding:var(--space-6);border-radius:var(--radius-lg);border:1px solid #fecaca;border-left:4px solid #ef4444}.trouble-item h4{margin:0 0 1rem;color:#991b1b}.trouble-item ul{margin:0}body.dark-mode .user-guide{background:#0f172a;color:#e2e8f0}body.dark-mode .guide-header h1{color:#60a5fa}body.dark-mode .guide-subtitle{color:#94a3b8}body.dark-mode .nav-item{color:#cbd5e1}body.dark-mode .nav-item:hover{background:#1e293b;color:#f1f5f9}body.dark-mode .nav-item.active{background:#1e3a8a;color:#60a5fa}body.dark-mode .guide-section{border-bottom-color:#334155}body.dark-mode .guide-section h2{color:#f1f5f9}body.dark-mode .guide-section h3,body.dark-mode .guide-section h4{color:#e2e8f0}body.dark-mode .guide-section p,body.dark-mode .guide-section li{color:#cbd5e1}body.dark-mode .feature-highlight{background:linear-gradient(135deg,#1e3a8a,#1e40af);border-color:var(--color-info)}body.dark-mode .feature-highlight h4{color:#93c5fd}body.dark-mode .feature-highlight p{color:#cbd5e1}body.dark-mode .quick-start,body.dark-mode .instruction-box{background:#1e293b;border-left-color:var(--color-info)}body.dark-mode .action-list li{background:#1e293b;border-left-color:#60a5fa}body.dark-mode .step{background:#1e293b;border-color:#334155}body.dark-mode .step p{color:#e2e8f0}body.dark-mode .tip-card{background:#1e293b;border-color:#334155;border-left-color:#60a5fa}body.dark-mode .info-box,body.dark-mode .shortcut{background:#1e293b;border-color:#334155}body.dark-mode .trouble-item{background:#7f1d1d;border-color:#991b1b}.language-notice{background:#f0f9ff;border:1px solid #bae6fd;border-radius:var(--radius-lg);padding:.75rem 1rem;margin-top:1rem;color:#0369a1;font-size:.9rem;text-align:center;font-weight:var(--font-medium)}body.dark-mode .language-notice{background:#0c4a6e;border-color:#075985;color:#7dd3fc}@media(max-width:968px){.guide-container{grid-template-columns:1fr}.guide-sidebar{position:static;max-height:none}.guide-nav{display:flex;flex-wrap:wrap;gap:var(--space-2)}.nav-item{flex:0 0 auto;border-left:none;border-bottom:3px solid transparent;padding:.5rem 1rem}.nav-item:hover,.nav-item.active{border-left:none;border-bottom-color:#2563eb}.feature-grid,.rating-grid,.shortcuts-grid,.tip-grid{grid-template-columns:1fr}}@media(max-width:640px){.user-guide{padding:var(--space-4);overflow-x:hidden}.guide-header h1{font-size:1.75rem}.guide-section h2{font-size:var(--text-2xl)}.nav-item{padding:.4rem .75rem;font-size:.85rem}.guide-content{min-width:0}}@media(max-width:480px){.user-guide{padding:var(--space-3)}.guide-header h1{font-size:1.5rem}.guide-subtitle{font-size:.95rem}.guide-section h2{font-size:1.25rem}.guide-nav{gap:var(--space-1)}.nav-item{padding:.35rem .5rem;font-size:.8rem}}.comparison-table{overflow-x:auto;margin:var(--space-4) 0}.comparison-table table{width:100%;border-collapse:collapse;font-size:.9rem}.comparison-table th,.comparison-table td{padding:var(--space-3);text-align:left;border:1px solid var(--border-color, #e0e0e0)}.comparison-table th{background:var(--bg-secondary, #f5f5f5);font-weight:600}.comparison-table tbody tr:nth-child(2n){background:var(--bg-secondary, #f9f9f9)}body.dark-mode .comparison-table th,body.dark-mode .comparison-table td{border-color:var(--border-dark, #3a3a3a)}body.dark-mode .comparison-table th{background:var(--bg-tertiary, #2d2d2d)}body.dark-mode .comparison-table tbody tr:nth-child(2n){background:var(--bg-tertiary, #252525)}body.dark-mode .tip-box,html[data-theme=dark] .tip-box{background:linear-gradient(135deg,#422006,#713f12);border-color:#a16207;border-left-color:#f59e0b}body.dark-mode .tip-box strong,html[data-theme=dark] .tip-box strong{color:#fcd34d}body.dark-mode .tip-box p,html[data-theme=dark] .tip-box p{color:#fef3c7}body.dark-mode .tip-box.success,html[data-theme=dark] .tip-box.success{background:linear-gradient(135deg,#052e16,#14532d);border-color:#15803d;border-left-color:#22c55e}body.dark-mode .tip-box.success strong,html[data-theme=dark] .tip-box.success strong{color:#86efac}body.dark-mode .tip-box.success p,html[data-theme=dark] .tip-box.success p{color:#dcfce7}.about-container{max-width:900px;margin:0 auto;padding:var(--space-6) var(--space-4)}.about-hero{text-align:center;padding:var(--space-8) var(--space-4);margin-bottom:var(--space-8);background:linear-gradient(135deg,#667eea,#764ba2);border-radius:var(--radius-xl);color:#fff}.about-hero h1{font-size:2.5rem;font-weight:700;margin:0 0 var(--space-3) 0;font-family:Georgia,Times New Roman,serif}.about-hero .tagline{font-size:1.25rem;opacity:.95;margin:0}.about-content{display:flex;flex-direction:column;gap:var(--space-8)}.about-section{background:#1a1a24;padding:var(--space-6);border-radius:var(--radius-lg);border:1px solid #333}.about-section h2{font-size:1.5rem;font-weight:600;margin:0 0 var(--space-4) 0;color:#fff;font-family:Georgia,Times New Roman,serif}.about-section p{font-size:1.05rem;line-height:1.7;color:#f3f3f3;margin:0 0 var(--space-4) 0}.about-section p:last-child{margin-bottom:0}.about-section p strong{color:#fff}.problem-section{border-left:4px solid #e53e3e}.problem-section h2{color:#fff}.solution-section{border-left:4px solid #38a169}.solution-section h2{color:#fff}.solution-section p{color:#f3f3f3}.features-section{border-left:4px solid #667eea}.features-section h2{color:#fff}.features-hint{font-size:.9rem;color:#e2e8f0;margin-bottom:var(--space-2);font-style:italic}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-4);margin-top:var(--space-4)}button.feature-card{display:block;width:100%;text-align:left;background:#1e1e2e;padding:var(--space-4);border-radius:var(--radius-md);border:2px solid #3a3a4a;transition:all .2s ease;cursor:pointer;font-family:inherit;position:relative}button.feature-card:hover{transform:translateY(-2px);border-color:#818cf8;box-shadow:0 4px 12px #818cf84d;background:#252538}button.feature-card:focus{outline:none;border-color:#818cf8;box-shadow:0 0 0 3px #818cf84d}button.feature-card:active{transform:translateY(0)}button.feature-card.expanded{border-color:#818cf8;background:#252538}.feature-icon{font-size:2rem;margin-bottom:var(--space-2)}button.feature-card h3{font-size:1.1rem;font-weight:600;margin:0 0 var(--space-2) 0;color:#fff}button.feature-card p{font-size:.95rem;line-height:1.6;margin:0;color:#e2e8f0}.feature-example{margin-top:var(--space-3);padding:var(--space-3);background:#667eea40;border-radius:var(--radius-sm);font-size:.9rem;color:#f3f3f3;line-height:1.5}.example-label{margin-right:6px}.feature-expand-hint{display:block;margin-top:var(--space-3);font-size:.8rem;color:#a5b4fc;font-weight:500}.philosophy-section{border-left:4px solid #d69e2e;background:linear-gradient(135deg,#2d2a1f,#3d3520)}.philosophy-section h2{color:#fcd34d}.philosophy-section p{color:#fef3c7}.about-cta{text-align:center;padding:var(--space-8);background:#1a1a24;border-radius:var(--radius-lg);border:1px solid #333}.about-cta h2{font-size:1.5rem;margin:0 0 var(--space-4) 0;color:#fff}.cta-buttons{display:flex;gap:var(--space-4);justify-content:center;flex-wrap:wrap}.cta-button{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-size:1rem;font-weight:500;text-decoration:none;transition:all .2s ease}.cta-button.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.cta-button.primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.cta-button.secondary{background:#fff;color:#667eea;border:2px solid #667eea}.cta-button.secondary:hover{background:#667eea;color:#fff}body.dark-mode .about-hero,html[data-theme=dark] .about-hero{background:linear-gradient(135deg,#4c51bf,#553c9a)}body.dark-mode .about-section,html[data-theme=dark] .about-section{background:#1a1a24;border-color:#333}body.dark-mode .about-section h2,html[data-theme=dark] .about-section h2,.dark-mode .about-section h2,body.dark-mode .problem-section h2,html[data-theme=dark] .problem-section h2,.dark-mode .problem-section h2,body.dark-mode .solution-section h2,html[data-theme=dark] .solution-section h2,.dark-mode .solution-section h2,body.dark-mode .features-section h2,html[data-theme=dark] .features-section h2,.dark-mode .features-section h2,body.dark-mode .about-content .about-section h2{color:#fff!important}body.dark-mode .about-section p,html[data-theme=dark] .about-section p,.dark-mode .about-section p{color:#e2e8f0!important}body.dark-mode .about-section p strong,html[data-theme=dark] .about-section p strong,.dark-mode .about-section p strong{color:#fff!important}body.dark-mode .features-hint,html[data-theme=dark] .features-hint,.dark-mode .features-hint{color:#e2e8f0!important}body.dark-mode button.feature-card,html[data-theme=dark] button.feature-card{background:#1e1e2e;border-color:#3a3a4a}body.dark-mode button.feature-card h3,html[data-theme=dark] button.feature-card h3{color:#fff!important}body.dark-mode button.feature-card p,html[data-theme=dark] button.feature-card p{color:#e2e8f0!important}body.dark-mode button.feature-card:hover,html[data-theme=dark] button.feature-card:hover{background:#252538;border-color:#818cf8;box-shadow:0 4px 20px #6366f14d}body.dark-mode button.feature-card:hover h3,html[data-theme=dark] button.feature-card:hover h3{color:#fff}body.dark-mode button.feature-card:hover p,html[data-theme=dark] button.feature-card:hover p{color:#e2e8f0}body.dark-mode button.feature-card:focus,html[data-theme=dark] button.feature-card:focus{border-color:#818cf8;box-shadow:0 0 0 3px #818cf866}body.dark-mode button.feature-card.expanded,html[data-theme=dark] button.feature-card.expanded{background:#252538;border-color:#818cf8}body.dark-mode .feature-example,html[data-theme=dark] .feature-example{background:#818cf833!important;color:#fff!important}body.dark-mode .feature-expand-hint,html[data-theme=dark] .feature-expand-hint{color:#a5b4fc!important}body.dark-mode .philosophy-section,html[data-theme=dark] .philosophy-section{background:linear-gradient(135deg,#2d2a1f,#3d3520)}body.dark-mode .philosophy-section h2,html[data-theme=dark] .philosophy-section h2{color:#fcd34d}body.dark-mode .philosophy-section p,html[data-theme=dark] .philosophy-section p{color:#fef3c7}body.dark-mode .about-cta,html[data-theme=dark] .about-cta{background:#1a1a24;border-color:#333}body.dark-mode .about-cta h2,html[data-theme=dark] .about-cta h2{color:#f1f5f9}body.dark-mode .cta-button.secondary,html[data-theme=dark] .cta-button.secondary{background:#1a1a24;border-color:#818cf8;color:#818cf8}body.dark-mode .cta-button.secondary:hover,html[data-theme=dark] .cta-button.secondary:hover{background:#818cf8;color:#1a1a1a}@media(max-width:768px){.about-hero h1{font-size:2rem}.about-hero .tagline{font-size:1.1rem}.about-section{padding:var(--space-4)}.feature-grid{grid-template-columns:1fr}.cta-buttons{flex-direction:column;align-items:center}.cta-button{width:100%;max-width:280px;justify-content:center}}.about-container[data-theme=dark] .about-section h2{color:#fff!important}.about-container[data-theme=dark] .about-section p{color:#e2e8f0!important}.about-container[data-theme=dark] .about-section p strong{color:#fff!important}.about-container[data-theme=dark] .features-hint{color:#e2e8f0!important}.about-container[data-theme=dark] button.feature-card{background:#1e1e2e!important;border-color:#3a3a4a!important}.about-container[data-theme=dark] button.feature-card h3{color:#fff!important}.about-container[data-theme=dark] button.feature-card p{color:#e2e8f0!important}.about-container[data-theme=dark] button.feature-card:hover{background:#252538!important;border-color:#818cf8!important}.about-container[data-theme=dark] .feature-example{background:#818cf84d!important;color:#fff!important}.about-container[data-theme=dark] .feature-expand-hint{color:#a5b4fc!important}.about-container[data-theme=dark] .philosophy-section{background:linear-gradient(135deg,#2d2a1f,#3d3520)!important}.about-container[data-theme=dark] .philosophy-section h2{color:#fcd34d!important}.about-container[data-theme=dark] .philosophy-section p{color:#fef3c7!important}.about-container[data-theme=dark] .about-cta h2{color:#fff!important}.jefferson-section-about{background:linear-gradient(135deg,#667eea0a,#764ba20a);border-left:4px solid var(--accent-primary, #667eea);border-radius:0 12px 12px 0;padding:1.5rem 1.75rem!important}.jefferson-section-about .jefferson-intro,.jefferson-section-about .jefferson-outro{color:var(--text-secondary, #4b5563);font-size:.98rem;line-height:1.55}.jefferson-section-about .jefferson-outro{margin-top:1.25rem;font-style:italic}.about-jefferson-quote{margin:1.1rem 0;padding:.85rem 1.1rem;background:var(--bg-card, white);border-left:3px solid var(--accent-primary, #667eea);border-radius:0 8px 8px 0;box-shadow:0 1px 3px #0000000a}.about-jefferson-quote p{margin:0 0 .4rem;font-style:italic;font-size:1.02rem;line-height:1.45;color:var(--text-primary, #1f2937)}.about-jefferson-quote cite{display:block;font-style:normal;font-size:.78rem;color:var(--text-tertiary, #6b7280);letter-spacing:.01em}.about-container[data-theme=dark] .jefferson-section-about{background:linear-gradient(135deg,#667eea14,#764ba214)}.about-container[data-theme=dark] .about-jefferson-quote{background:#ffffff0a}.about-container[data-theme=dark] .about-jefferson-quote p,.about-container[data-theme=dark] .jefferson-section-about .jefferson-intro,.about-container[data-theme=dark] .jefferson-section-about .jefferson-outro{color:#fef3c7!important}.about-container[data-theme=dark] .about-jefferson-quote cite{color:#d1d5db!important}@media(max-width:640px){.jefferson-section-about{padding:1.25rem 1rem!important}.about-jefferson-quote{padding:.7rem .85rem}.about-jefferson-quote p{font-size:.95rem}}.kn-hub,.kn-chapter,.kn-article{--kn-gold: #c9a84c;--kn-indigo: #a5b4fc;--kn-indigo-hover: #c7d2fe;--kn-indigo-soft: rgba(99, 102, 241, .05);--kn-indigo-border: rgba(165, 180, 252, .4);--kn-rule: rgba(255, 255, 255, .05);--kn-card-bg: rgba(255, 255, 255, .02);--kn-card-border: rgba(255, 255, 255, .08);--kn-serif: Georgia, "Times New Roman", serif;--kn-example-bg: rgba(59, 130, 246, .04);--kn-example-border: var(--accent-color, #3b82f6);--kn-pullquote-rule: rgba(201, 168, 76, .4)}body:not(.dark-mode) .kn-hub,body:not(.dark-mode) .kn-chapter,body:not(.dark-mode) .kn-article{--kn-example-bg: rgba(59, 130, 246, .06)}.kn-hub{max-width:1100px;margin:0 auto;padding:0;color:var(--text-primary)}.kn-hub .kn-hub-hero{padding:80px 24px 60px;text-align:left;max-width:760px;margin:0 auto}.kn-hub .kn-hub-rule{height:1px;background:linear-gradient(90deg,transparent 0%,var(--kn-pullquote-rule) 50%,transparent 100%);margin:0 auto 40px;max-width:600px}.kn-hub .kn-hub-hero-content{margin:0 auto}.kn-hub .kn-hub-eyebrow{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--kn-gold);margin-bottom:20px;font-family:var(--kn-serif)}.kn-hub .kn-hub-quote{font-family:var(--kn-serif);font-size:clamp(1.5rem,3.5vw,2.4rem);font-style:italic;line-height:1.5;color:var(--text-primary);margin:0 0 32px;font-weight:400;quotes:none}.kn-hub .kn-hub-context{font-size:1.1rem;color:var(--text-secondary, #4b5563);line-height:1.7;margin:0;max-width:640px}.kn-hub .kn-hub-context strong{color:var(--text-primary);font-weight:600}.kn-hub .kn-hub-chapters,.kn-hub .kn-hub-articles,.kn-hub .kn-hub-further-reading{max-width:900px;margin:0 auto}.kn-hub .kn-hub-chapters{padding:60px 24px}.kn-hub .kn-hub-articles,.kn-hub .kn-hub-further-reading{padding:60px 24px 0}.kn-hub .kn-hub-section-label{display:inline-block;padding:6px 14px;background:#6366f11a;border-radius:100px;font-size:14px;font-weight:500;color:var(--kn-indigo);margin-bottom:16px;text-transform:uppercase;letter-spacing:.05em}.kn-hub .kn-hub-section-title{font-family:var(--kn-serif);font-size:clamp(28px,4vw,40px);font-weight:700;margin:0 0 16px;letter-spacing:-.01em;color:var(--text-primary)}.kn-hub .kn-hub-section-intro{font-size:1.05rem;line-height:1.65;color:var(--text-secondary, #4b5563);margin:0 0 40px;max-width:640px}.kn-hub .kn-hub-section-about{display:inline-block;font-size:.9rem;font-weight:500;color:var(--kn-indigo);text-decoration:none;margin:-24px 0 32px;padding-bottom:1px;border-bottom:1px solid rgba(165,180,252,.3);transition:color .15s,border-color .15s}.kn-hub .kn-hub-section-about:hover{color:var(--kn-indigo-hover);border-bottom-color:#c7d2fe99}.kn-hub .kn-hub-chapter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}.kn-hub .kn-hub-chapter-card{display:block;padding:32px;background:var(--kn-card-bg);border:1px solid var(--kn-card-border);border-radius:var(--radius-lg, 12px);text-decoration:none;color:inherit;transition:background .2s,border-color .2s,transform .15s}.kn-hub .kn-hub-chapter-card:hover{background:var(--kn-indigo-soft);border-color:var(--kn-indigo-border);transform:translateY(-2px)}.kn-hub .kn-hub-chapter-number{display:inline-block;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--kn-gold);font-family:var(--kn-serif);margin-bottom:12px}.kn-hub .kn-hub-chapter-title{font-family:var(--kn-serif);font-size:1.5rem;font-weight:700;margin:0 0 12px;color:var(--text-primary);letter-spacing:-.01em}.kn-hub .kn-hub-chapter-summary{font-size:.95rem;line-height:1.6;color:var(--text-secondary, #4b5563);margin:0 0 20px}.kn-hub .kn-hub-chapter-cta{font-size:.95rem;color:var(--kn-indigo);font-weight:500;display:inline-block;transition:transform .15s}.kn-hub .kn-hub-chapter-card:hover .kn-hub-chapter-cta{transform:translate(4px)}.kn-hub .kn-hub-article-list{display:flex;flex-direction:column;gap:20px}.kn-hub .kn-hub-article-card{display:block;padding:28px 32px;background:var(--kn-card-bg);border:1px solid var(--kn-card-border);border-radius:var(--radius-lg, 12px);text-decoration:none;color:inherit;transition:background .2s,border-color .2s}.kn-hub .kn-hub-article-card:hover{background:var(--kn-indigo-soft);border-color:var(--kn-indigo-border)}.kn-hub .kn-hub-article-meta{font-size:.85rem;color:var(--text-tertiary, #9ca3af);margin-bottom:8px;display:flex;align-items:center;flex-wrap:wrap;gap:6px}.kn-hub .kn-hub-article-author{font-weight:600;color:var(--text-secondary, #4b5563)}.kn-hub .kn-hub-article-meta-sep{opacity:.5}.kn-hub .kn-hub-article-title{font-family:var(--kn-serif);font-size:1.5rem;font-weight:700;margin:0 0 12px;color:var(--text-primary);letter-spacing:-.01em;line-height:1.3}.kn-hub .kn-hub-article-summary{font-size:1rem;line-height:1.6;color:var(--text-secondary, #4b5563);margin:0 0 16px}.kn-hub .kn-hub-article-cta{font-size:.95rem;color:var(--kn-indigo);font-weight:500;display:inline-block;transition:transform .15s}.kn-hub .kn-hub-article-card:hover .kn-hub-article-cta{transform:translate(4px)}.kn-hub .kn-hub-further-list{display:flex;flex-direction:column;gap:16px}.kn-hub .kn-hub-further-card{display:block;padding:24px 28px;background:var(--kn-card-bg);border:1px solid var(--kn-card-border);border-radius:var(--radius-lg, 12px);text-decoration:none;color:inherit;transition:background .2s,border-color .2s}.kn-hub .kn-hub-further-card:hover{background:var(--kn-indigo-soft);border-color:var(--kn-indigo-border)}.kn-hub .kn-hub-further-meta{display:flex;align-items:center;gap:8px;margin-bottom:8px}.kn-hub .kn-hub-further-source{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--kn-gold);font-family:var(--kn-serif);font-weight:600}.kn-hub .kn-hub-further-external-icon{font-size:.85rem;color:var(--text-tertiary, #9ca3af);font-weight:500}.kn-hub .kn-hub-further-title{font-family:var(--kn-serif);font-size:1.3rem;font-weight:700;margin:0 0 10px;color:var(--text-primary);letter-spacing:-.01em;line-height:1.3}.kn-hub .kn-hub-further-description{font-size:.95rem;line-height:1.6;color:var(--text-secondary, #4b5563);margin:0}.kn-hub .kn-hub-footer{max-width:760px;margin:40px auto 0;padding:60px 24px 80px;text-align:center;border-top:1px solid var(--kn-rule)}.kn-hub .kn-hub-footer-prose{font-family:var(--kn-serif);font-size:1.15rem;line-height:1.6;color:var(--text-secondary, #4b5563);margin:0 0 24px;font-style:italic}.kn-hub .kn-hub-footer-cta{display:inline-block;padding:14px 28px;background:var(--accent-color, #3b82f6);color:#fff;text-decoration:none;border-radius:100px;font-weight:600;transition:background .2s,transform .1s}.kn-hub .kn-hub-footer-cta:hover{background:var(--accent-hover, #2563eb);transform:translateY(-1px)}@media(max-width:640px){.kn-hub .kn-hub-hero{padding:50px 20px 40px}.kn-hub .kn-hub-quote{font-size:1.4rem}.kn-hub .kn-hub-chapters,.kn-hub .kn-hub-articles,.kn-hub .kn-hub-further-reading{padding:40px 20px 0}.kn-hub .kn-hub-chapters{padding-bottom:40px}.kn-hub .kn-hub-chapter-card{padding:24px}.kn-hub .kn-hub-chapter-title{font-size:1.3rem}.kn-hub .kn-hub-article-card{padding:22px 24px}.kn-hub .kn-hub-article-title{font-size:1.3rem}.kn-hub .kn-hub-further-card{padding:20px 22px}.kn-hub .kn-hub-further-title{font-size:1.15rem}}.kn-chapter,.kn-article{max-width:760px;margin:0 auto;padding:var(--space-6) var(--space-4) var(--space-10);color:var(--text-primary)}.kn-article{max-width:720px}.kn-chapter .kn-chapter-breadcrumb,.kn-article .kn-article-breadcrumb{margin-bottom:var(--space-6);padding-top:var(--space-4)}.kn-chapter .kn-chapter-breadcrumb a,.kn-article .kn-article-breadcrumb a{color:var(--kn-indigo);text-decoration:none;font-size:.9rem;font-weight:500;transition:color .15s}.kn-chapter .kn-chapter-breadcrumb a:hover,.kn-article .kn-article-breadcrumb a:hover{color:var(--kn-indigo-hover)}.kn-chapter .kn-chapter-header,.kn-article .kn-article-header{margin-bottom:var(--space-8);padding-bottom:var(--space-6);border-bottom:1px solid var(--border-light, #2a2a2a)}.kn-chapter .kn-chapter-header{margin-bottom:var(--space-10)}.kn-chapter .kn-chapter-number-tag{display:inline-block;font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:var(--kn-gold);font-family:var(--kn-serif);margin-bottom:16px}.kn-chapter .kn-chapter-title-h1,.kn-article .kn-article-title{font-family:var(--kn-serif);line-height:1.2;font-weight:700;margin:0;color:var(--text-primary);letter-spacing:-.015em}.kn-chapter .kn-chapter-title-h1{font-size:2.25rem}.kn-article .kn-article-title{font-size:clamp(2rem,4vw,2.6rem);line-height:1.15;margin-bottom:var(--space-4)}.kn-article .kn-article-dek{font-family:var(--kn-serif);font-style:italic;font-size:1.2rem;line-height:1.5;color:var(--text-secondary, #4b5563);margin:0 0 var(--space-5) 0}.kn-article .kn-article-byline{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:.9rem;color:var(--text-tertiary, #9ca3af)}.kn-article .kn-article-author{font-weight:600;color:var(--text-secondary, #4b5563)}.kn-article .kn-article-byline-sep{opacity:.5}.kn-chapter .kn-chapter-intro{font-size:1.05rem;line-height:1.65;color:var(--text-primary);margin:0}.kn-article .kn-article-body{font-size:1.1rem;line-height:1.7;color:var(--text-primary)}.kn-article .kn-article-body p{margin:0 0 var(--space-5) 0}.kn-article .kn-article-body h2{font-family:var(--kn-serif);font-size:1.4rem;font-weight:700;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:6px;margin:var(--space-7) 0 var(--space-3) 0;color:var(--text-primary)}.kn-article .kn-article-body h3{font-family:var(--kn-serif);font-size:1.2rem;font-weight:700;margin:var(--space-6) 0 var(--space-3) 0;color:var(--text-primary)}.kn-article .kn-article-body em,.kn-chapter .kn-tactic em{font-style:italic;color:var(--text-primary)}.kn-article .kn-article-body strong,.kn-chapter .kn-tactic strong{font-weight:600;color:var(--text-primary)}.kn-article .kn-article-body a{color:var(--kn-indigo);text-decoration:underline;text-decoration-color:#a5b4fc66;text-underline-offset:3px;transition:text-decoration-color .15s}.kn-article .kn-article-body a:hover{text-decoration-color:#a5b4fc}.kn-chapter .kn-tactic{margin-bottom:var(--space-8)}.kn-chapter .kn-tactic h2{font-family:var(--kn-serif);font-size:1.4rem;font-weight:600;margin:0 0 var(--space-3) 0;color:var(--text-primary)}.kn-chapter .kn-tactic p{font-size:1rem;line-height:1.6;margin:0 0 var(--space-3) 0;color:var(--text-primary)}.kn-chapter .kn-relief{margin-top:var(--space-4)!important}.kn-chapter .kn-example{margin:var(--space-4) 0;padding:var(--space-3) var(--space-5);border-left:3px solid var(--kn-example-border);background:var(--kn-example-bg);border-radius:0 var(--radius-sm, 6px) var(--radius-sm, 6px) 0}.kn-chapter .kn-example-label{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary, #9ca3af);margin:0 0 var(--space-2) 0!important;font-weight:600}.kn-chapter .kn-example p{font-size:.98rem;margin:0;color:var(--text-secondary, #4b5563);font-style:italic}.kn-article .kn-article-body .kn-article-pullquote{font-family:var(--kn-serif);font-style:italic;font-size:clamp(1.3rem,2.5vw,1.6rem);line-height:1.4;color:var(--text-primary);text-align:center;margin:var(--space-8) auto;padding:var(--space-5) var(--space-4);max-width:560px;border-top:1px solid var(--kn-pullquote-rule);border-bottom:1px solid var(--kn-pullquote-rule);quotes:none}.kn-chapter .kn-chapter-pagination{margin-top:var(--space-8);padding-top:var(--space-5);border-top:1px solid var(--border-light, #2a2a2a);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-4);font-size:.95rem}.kn-chapter .kn-chapter-prev,.kn-chapter .kn-chapter-next{color:var(--kn-indigo);text-decoration:none;font-weight:500;transition:color .15s;max-width:48%}.kn-chapter .kn-chapter-next{text-align:right;margin-left:auto}.kn-chapter .kn-chapter-prev:hover,.kn-chapter .kn-chapter-next:hover{color:var(--kn-indigo-hover)}.kn-chapter .kn-chapter-footer,.kn-article .kn-article-footer{margin-top:var(--space-10);padding-top:var(--space-6);border-top:1px solid var(--border-light, #2a2a2a);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-4)}.kn-chapter .kn-chapter-back,.kn-article .kn-article-back{color:var(--kn-indigo);text-decoration:none;font-size:1rem;font-weight:500;transition:color .15s}.kn-chapter .kn-chapter-back:hover,.kn-article .kn-article-back:hover{color:var(--kn-indigo-hover)}.kn-chapter .kn-chapter-cta,.kn-article .kn-article-cta{display:inline-block;padding:var(--space-3) var(--space-5);background:var(--accent-color, #3b82f6);color:#fff;text-decoration:none;border-radius:var(--radius-md, 8px);font-weight:600;transition:background .15s,transform .1s}.kn-chapter .kn-chapter-cta:hover,.kn-article .kn-article-cta:hover{background:var(--accent-hover, #2563eb);transform:translateY(-1px)}@media(max-width:640px){.kn-chapter,.kn-article{padding:var(--space-4) var(--space-3) var(--space-8)}.kn-chapter .kn-chapter-title-h1{font-size:1.75rem}.kn-article .kn-article-title{font-size:1.7rem}.kn-article .kn-article-dek{font-size:1.05rem}.kn-chapter .kn-tactic h2{font-size:1.2rem}.kn-chapter .kn-example{padding:var(--space-3) var(--space-4)}.kn-article .kn-article-body{font-size:1.05rem}.kn-article .kn-article-body .kn-article-pullquote{font-size:1.2rem;margin:var(--space-6) auto}.kn-chapter .kn-chapter-footer,.kn-article .kn-article-footer{flex-direction:column;align-items:stretch}}.tech-docs{max-width:1200px;margin:0 auto;padding:var(--space-4)}.tech-docs-header{text-align:center;padding:var(--space-6) var(--space-4);margin-bottom:var(--space-6);background:linear-gradient(135deg,#1e3a5f,#2d5a87);border-radius:var(--radius-xl);color:#fff}.tech-docs-header h1{font-size:2rem;font-weight:700;margin:0 0 var(--space-2) 0;font-family:Georgia,Times New Roman,serif}.tech-docs-subtitle{font-size:1.1rem;opacity:.9;margin:0}.tech-docs-container{display:flex;gap:var(--space-6)}.tech-docs-sidebar{flex:0 0 200px;position:sticky;top:var(--space-4);height:-moz-fit-content;height:fit-content}.tech-docs-nav{background:var(--bg-primary, white);border:1px solid var(--border-color, #e0e0e0);border-radius:var(--radius-lg);padding:var(--space-4)}.tech-docs-nav h3{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);margin:0 0 var(--space-3) 0}.tech-docs-nav .nav-item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);margin-bottom:var(--space-1);background:none;border:none;border-radius:var(--radius-md);font-size:.9rem;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;text-align:left}.tech-docs-nav .nav-item:hover{background:var(--bg-secondary, #f5f5f5);color:var(--text-primary)}.tech-docs-nav .nav-item.active{background:#e8f0fe;color:#1e3a5f;font-weight:500}.tech-docs-nav .nav-icon{font-size:1rem}.tech-docs-content{flex:1;min-width:0}.tech-section{background:var(--bg-primary, white);border:1px solid var(--border-color, #e0e0e0);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-6)}.tech-section h2{font-size:1.5rem;font-weight:600;margin:0 0 var(--space-4) 0;color:var(--text-primary);font-family:Georgia,Times New Roman,serif;border-bottom:2px solid #1e3a5f;padding-bottom:var(--space-2)}.tech-section p{font-size:1rem;line-height:1.7;color:var(--text-secondary);margin:0 0 var(--space-4) 0}.tech-section ul,.tech-section ol{margin:0 0 var(--space-4) 0;padding-left:var(--space-5);color:var(--text-secondary)}.tech-section li{margin-bottom:var(--space-2);line-height:1.6}.tech-section code{background:#f0f4f8;padding:.15em .4em;border-radius:4px;font-family:SF Mono,Monaco,Courier New,monospace;font-size:.9em;color:#1e3a5f}.subsection{margin-top:var(--space-5)}.subsection h3{font-size:1.15rem;font-weight:600;margin:0 0 var(--space-3) 0;color:var(--text-primary)}.tech-stack-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-3);margin-top:var(--space-4)}.stack-item{background:var(--bg-secondary, #f8f9fa);padding:var(--space-3);border-radius:var(--radius-md);border-left:4px solid #1e3a5f}.stack-label{display:block;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);margin-bottom:var(--space-1)}.stack-value{font-size:1rem;color:var(--text-primary);font-weight:500}.tech-table{width:100%;border-collapse:collapse;margin:var(--space-3) 0;font-size:.95rem}.tech-table th,.tech-table td{padding:var(--space-3);text-align:left;border-bottom:1px solid var(--border-color, #e0e0e0)}.tech-table th{background:var(--bg-secondary, #f8f9fa);font-weight:600;color:var(--text-primary)}.tech-table tbody tr:hover{background:var(--bg-secondary, #f8f9fa)}.code-block{background:#1e293b;color:#e2e8f0;padding:var(--space-4);border-radius:var(--radius-md);overflow-x:auto;font-family:SF Mono,Monaco,Courier New,monospace;font-size:.85rem;line-height:1.6;margin:var(--space-3) 0}body.dark-mode .tech-docs-header{background:linear-gradient(135deg,#0f172a,#1e3a5f)}body.dark-mode .tech-docs-nav{background:var(--bg-secondary, #1e1e1e);border-color:var(--border-dark, #333)}body.dark-mode .tech-docs-nav .nav-item:hover{background:var(--bg-tertiary, #2d2d2d)}body.dark-mode .tech-docs-nav .nav-item.active{background:#1e3a5f66;color:#64b5f6}body.dark-mode .tech-section{background:var(--bg-secondary, #1e1e1e);border-color:var(--border-dark, #333)}body.dark-mode .tech-section h2{border-bottom-color:#64b5f6}body.dark-mode .tech-section code{background:#2d3748;color:#90cdf4}body.dark-mode .stack-item{background:var(--bg-tertiary, #2d2d2d);border-left-color:#64b5f6}body.dark-mode .tech-table th,body.dark-mode .tech-table tbody tr:hover{background:var(--bg-tertiary, #2d2d2d)}body.dark-mode .tech-table th,body.dark-mode .tech-table td{border-bottom-color:var(--border-dark, #333)}body.dark-mode .code-block{background:#0f172a}@media(max-width:900px){.tech-docs-container{flex-direction:column}.tech-docs-sidebar{position:static;flex:none}.tech-docs-nav{display:flex;flex-wrap:wrap;gap:var(--space-2)}.tech-docs-nav h3{width:100%}.tech-docs-nav .nav-item{width:auto;margin-bottom:0}}@media(max-width:600px){.tech-docs-header h1{font-size:1.5rem}.tech-section{padding:var(--space-4)}.tech-table{font-size:.85rem}.tech-table th,.tech-table td{padding:var(--space-2)}.code-block{font-size:.75rem;padding:var(--space-3)}}.blindspot-container{max-width:1200px;margin:0 auto;padding:var(--space-8)}.blindspot-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-8);border-bottom:3px double #121212;padding-bottom:1rem}@media(max-width:640px){.blindspot-header{flex-direction:column;align-items:flex-start;gap:.4rem}.blindspot-header h1{font-size:1.85rem}}.blindspot-header h1{font-family:Playfair Display,Georgia,serif;font-size:2.5rem;color:#1a1a1a;margin:0;font-weight:900;letter-spacing:-.5px}.blindspot-subtitle{font-family:Georgia,serif;font-style:italic;color:var(--text-tertiary);font-size:1rem;margin:0}body.dark-mode .blindspot-header,[data-theme=dark] .blindspot-header{border-bottom-color:#444}body.dark-mode .blindspot-header h1,[data-theme=dark] .blindspot-header h1{color:#e0e0e0}.blindspot-header-section{text-align:center;margin-bottom:var(--space-8)}.blindspot-header-section h1{font-size:2rem;margin-bottom:var(--space-2);color:var(--text-primary)}.header-desc{color:var(--text-tertiary);font-size:1.1rem}.blindspot-help{margin-top:1rem;text-align:left;max-width:700px;margin-left:auto;margin-right:auto}.blindspot-help summary{cursor:pointer;color:var(--color-info);font-weight:var(--font-medium);padding:.5rem 1rem;background:#eff6ff;border-radius:var(--radius-lg);display:inline-block}.blindspot-help summary:hover{background:#dbeafe}.blindspot-help .help-content{margin-top:1rem;padding:1rem 1.5rem;background:var(--bg-hover);border-radius:var(--radius-lg);border:1px solid var(--border-light);font-size:.95rem;line-height:1.6}.blindspot-help .help-content p{margin:.5rem 0}.blindspot-help .help-content ul{margin:.75rem 0;padding-left:1.25rem}.blindspot-help .help-content li{margin:.5rem 0}.blindspot-help .help-content em{color:var(--text-tertiary);font-size:.9rem}.blindspot-tabs{display:flex;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-6);border-bottom:2px solid #e0e0e0;padding-bottom:0}.blindspot-tab{display:flex;align-items:center;gap:var(--space-2);padding:.875rem 1.5rem;font-size:var(--text-base);font-weight:var(--font-medium);color:var(--text-tertiary);background:none;border:none;border-bottom:3px solid transparent;margin-bottom:-2px;cursor:pointer;transition:var(--transition-normal)}.blindspot-tab:hover{color:#4a90e2;background:#4a90e20d}.blindspot-tab.active{color:#4a90e2;border-bottom-color:#4a90e2}.blindspot-refresh{display:inline-flex;align-items:center;gap:.4rem;margin-left:auto;padding:.5rem .9rem;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-tertiary);background:none;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;transition:var(--transition-normal);align-self:center;margin-bottom:4px}.blindspot-refresh:hover:not(:disabled){color:#4a90e2;border-color:#4a90e2;background:#4a90e20d}.blindspot-refresh:disabled{opacity:.5;cursor:not-allowed}body.dark-mode .blindspot-refresh,[data-theme=dark] .blindspot-refresh{border-color:#3a3a3a}body.dark-mode .blindspot-tabs,[data-theme=dark] .blindspot-tabs{border-bottom-color:#3a3a3a}body.dark-mode .blindspot-tab,[data-theme=dark] .blindspot-tab{color:#999}body.dark-mode .blindspot-tab:hover,[data-theme=dark] .blindspot-tab:hover{color:#64b5f6;background:#64b5f61a}body.dark-mode .blindspot-tab.active,[data-theme=dark] .blindspot-tab.active{color:#64b5f6;border-bottom-color:#64b5f6}.tab-btn{padding:.75rem 1.5rem;border:none;background:none;font-size:var(--text-base);cursor:pointer;color:var(--text-tertiary);border-radius:.5rem .5rem 0 0;transition:var(--transition-normal)}.tab-btn:hover{background:var(--bg-tertiary);color:var(--text-secondary)}.tab-btn.active{background:var(--brand-primary);color:#fff}.loading-state,.error-state,.empty-state{text-align:center;padding:3rem 1rem}.spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top-color:var(--brand-primary);border-radius:var(--radius-full);animation:spin 1s linear infinite;margin:0 auto 1rem}.empty-icon{font-size:3rem;margin-bottom:var(--space-4)}.empty-state h3{color:var(--text-secondary);margin-bottom:var(--space-2)}.empty-state p{color:var(--text-tertiary)}.hint{font-size:var(--text-sm);color:var(--text-muted);margin-top:1rem}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-4);margin-bottom:var(--space-8)}.stat-card{background:var(--bg-primary);border-radius:.75rem;padding:1.25rem;text-align:center;box-shadow:0 1px 3px #0000001a}.stat-card.score-card{grid-column:span 1}.blindspot-container .stat-value{font-size:2rem;font-weight:700;color:var(--brand-primary, #667eea);min-height:2.5rem}.blindspot-container .stat-label{font-size:var(--text-sm);color:var(--text-tertiary);margin-top:.25rem}.diversity-gauge{display:flex;flex-direction:column;align-items:center}.gauge-circle{position:relative;width:100px;height:100px}.gauge-circle svg{transform:rotate(-90deg)}.gauge-background{stroke:#e5e7eb}.gauge-progress{transition:stroke-dasharray .5s ease}.gauge-value{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.gauge-value .score{display:block;font-size:var(--text-2xl);font-weight:700;color:var(--text-secondary)}.gauge-value .label{font-size:.7rem;color:var(--text-tertiary)}.gauge-title{font-size:var(--text-sm);color:var(--text-tertiary);margin-top:.5rem}.bias-bar{display:flex;height:12px;border-radius:var(--radius-md);overflow:hidden;background:#e5e7eb}.bias-bar.large{height:24px;border-radius:var(--radius-xl)}.bias-segment{transition:width .3s ease}.bias-segment.left{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.bias-segment.center{background:linear-gradient(135deg,#9ca3af,#6b7280)}.bias-segment.right{background:linear-gradient(135deg,#ef4444,#b91c1c)}.bias-segment.unknown{background:linear-gradient(135deg,#d1d5db,#9ca3af);opacity:.7}.bias-labels{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.25rem;margin-top:.5rem;font-size:var(--text-sm)}.left-label{color:var(--color-info)}.center-label{color:var(--text-tertiary)}.right-label{color:var(--color-error)}.unknown-label{color:var(--text-tertiary);font-style:italic;font-size:var(--text-xs);opacity:.8}.analysis-section{background:var(--bg-primary);border-radius:.75rem;padding:var(--space-6);margin-bottom:var(--space-6);box-shadow:0 1px 3px #0000001a}.analysis-section h3{font-size:var(--text-lg);color:var(--text-secondary);margin-bottom:var(--space-4)}.section-desc{color:var(--text-tertiary);font-size:var(--text-sm);margin-bottom:var(--space-4)}.bias-lean-alert{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border-radius:.5rem;margin-top:1rem}.bias-lean-alert.slight{background:#fef3c7;color:#92400e}.bias-lean-alert.moderate{background:#fed7aa;color:#9a3412}.bias-lean-alert.strong{background:#fecaca;color:#991b1b}.alert-icon{font-size:var(--text-2xl)}.missing-perspectives{display:grid;gap:var(--space-4)}.perspective-card{padding:var(--space-4);border-radius:.5rem;border-left:4px solid}.perspective-card.left{background:#eff6ff;border-left-color:var(--color-info)}.perspective-card.right{background:#fef2f2;border-left-color:var(--color-error)}.perspective-card.center{background:var(--bg-hover);border-left-color:var(--text-tertiary)}.perspective-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.perspective-label{font-weight:var(--font-semibold);flex:1}.perspective-pct{font-size:var(--text-xl);font-weight:700;color:var(--text-muted)}.perspective-suggestion{font-size:var(--text-sm);color:var(--text-tertiary);margin:0}.top-sources-list{display:flex;flex-direction:column;gap:var(--space-2)}.source-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3);background:var(--bg-hover);border-radius:.5rem}.source-rank{font-weight:700;color:var(--text-muted);min-width:2rem}.source-name{flex:1;font-weight:var(--font-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px;min-width:0}.source-bias,.source-cred{font-size:var(--text-xs);padding:.25rem .5rem;border-radius:var(--radius-full)}.source-bias{background:#e5e7eb}.source-bias.left,.source-bias.center-left,.source-bias.left-center{background:#dbeafe;color:#1e40af}.source-bias.right,.source-bias.center-right,.source-bias.right-center{background:#fee2e2;color:#991b1b}.source-bias.center{background:var(--bg-tertiary);color:var(--text-secondary)}.source-cred{background:#d1fae5;color:#065f46}.source-cred.low,.source-cred.very-low{background:#fee2e2;color:#991b1b}.source-cred.medium{background:#fef3c7;color:#92400e}.source-count{color:var(--text-muted);font-size:var(--text-sm)}.category-blindspots{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4)}.category-card{padding:var(--space-4);background:var(--bg-hover);border-radius:.5rem}.category-name{font-weight:var(--font-semibold);text-transform:capitalize;margin-bottom:var(--space-2)}.category-stats{display:flex;justify-content:space-between;font-size:var(--text-xs);color:var(--text-tertiary);margin-bottom:var(--space-2)}.category-bar{height:8px;background:#e5e7eb;border-radius:var(--radius-sm);overflow:hidden}.category-fill{height:100%;background:linear-gradient(90deg,#f97316,#ea580c);max-width:100%}.recommendations-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4)}.recommendation-card{padding:var(--space-4);background:linear-gradient(135deg,#f0fdf4,#ecfdf5);border-radius:.5rem;border:1px solid #bbf7d0}.rec-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.rec-name{font-weight:var(--font-semibold);flex:1}.rec-bias{font-size:.7rem;padding:.2rem .5rem;border-radius:var(--radius-full);background:#e5e7eb}.rec-reason{font-size:var(--text-sm);color:var(--text-tertiary)}.period-selector{display:flex;align-items:center;gap:var(--space-2);margin-top:2rem;padding-top:1rem;border-top:1px solid #e5e7eb}.period-selector label{color:var(--text-tertiary);font-size:var(--text-sm)}.period-selector select{padding:.5rem 1rem;border:1px solid var(--border-medium);border-radius:.375rem;font-size:var(--text-sm)}.blindspot-feed{display:flex;flex-direction:column;gap:var(--space-6)}.feed-header h3{margin-bottom:.25rem}.feed-header p{color:var(--text-tertiary);font-size:var(--text-sm)}.blindspot-list{display:flex;flex-direction:column;gap:var(--space-4)}.blindspot-card{background:var(--bg-primary);border-radius:.75rem;padding:1.25rem;box-shadow:0 1px 3px #0000001a}.blindspot-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.blindspot-topic{font-weight:var(--font-semibold);font-size:var(--text-lg)}.blindspot-count{color:var(--text-muted);font-size:var(--text-sm)}.blindspot-alert{padding:var(--space-4);border-radius:.5rem;margin-bottom:var(--space-4)}.blindspot-alert.political.left{background:#eff6ff;border-left:4px solid #3b82f6}.blindspot-alert.political.right{background:#fef2f2;border-left:4px solid #ef4444}.blindspot-alert.credibility.warning{background:#fef3c7;border-left:4px solid #f59e0b}.blindspot-alert.credibility.caution{background:#fed7aa;border-left:4px solid #f97316}.blindspot-alert.credibility.verified{background:#d1fae5;border-left:4px solid #10b981}.alert-badge{display:inline-block;font-weight:var(--font-semibold);margin-bottom:var(--space-2)}.alert-message{font-size:var(--text-sm);color:var(--text-tertiary);margin:.5rem 0}.top-article{padding-top:1rem;border-top:1px solid #e5e7eb}.top-article a{color:var(--text-secondary);text-decoration:none;font-weight:var(--font-medium)}.top-article a:hover{color:var(--brand-primary);text-decoration:underline}.blindspot-container .article-source{display:block;font-size:var(--text-xs);color:var(--text-primary);margin-top:.25rem}.monthly-report{display:flex;flex-direction:column;gap:var(--space-6)}.month-selector{background:var(--bg-primary);padding:1rem 1.5rem;border-radius:.75rem;box-shadow:0 1px 3px #0000001a}.month-selector label{display:block;font-weight:var(--font-semibold);color:var(--text-secondary);margin-bottom:.75rem}.month-buttons{display:flex;gap:var(--space-2);flex-wrap:wrap}.month-btn{display:flex;flex-direction:column;align-items:center;padding:.75rem 1rem;border:2px solid var(--border-light);border-radius:.5rem;background:var(--bg-primary);cursor:pointer;transition:var(--transition-normal);min-width:80px;position:relative}.month-btn:hover{border-color:var(--color-info);background:#eff6ff}.month-btn.active{border-color:var(--color-info);background:var(--color-info);color:#fff}.month-btn.no-data{opacity:.5;cursor:not-allowed}.month-btn.no-data:hover{border-color:var(--border-light);background:var(--bg-primary)}.month-btn .month-name{font-weight:var(--font-semibold);font-size:.95rem}.month-btn .month-year{font-size:var(--text-xs);color:var(--text-tertiary)}.month-btn.active .month-year{color:#fffc}.month-btn .current-badge{position:absolute;top:-8px;right:-8px;background:var(--color-success);color:#fff;font-size:.6rem;padding:2px 6px;border-radius:10px;font-weight:var(--font-semibold)}.month-btn .article-count{font-size:.7rem;color:var(--text-muted);margin-top:2px}.month-btn.active .article-count{color:#ffffffb3}.report-period{color:var(--text-tertiary);font-size:.9rem}.current-label{font-size:var(--text-xs);background:#fef3c7;color:#92400e;padding:2px 8px;border-radius:10px;margin-left:.5rem;font-weight:var(--font-medium)}.no-data-message{text-align:center;padding:var(--space-8);background:var(--bg-hover);border-radius:.75rem;color:var(--text-tertiary)}.no-data-message p{margin:.5rem 0}.no-data-message .hint{font-size:.9rem;color:var(--text-muted)}.dark-mode .month-selector{background:#1f2937}.dark-mode .month-selector label{color:#f3f4f6}.dark-mode .month-btn{background:#374151;border-color:var(--text-secondary);color:#f3f4f6}.dark-mode .month-btn:hover{border-color:#60a5fa;background:#1e3a5f}.dark-mode .month-btn.active{background:var(--color-info);border-color:var(--color-info)}.dark-mode .month-btn .month-year{color:var(--text-muted)}.dark-mode .month-btn .article-count{color:var(--text-tertiary)}.dark-mode .current-label{background:#422006;color:#fcd34d}.dark-mode .no-data-message{background:#374151;color:#d1d5db}.weekly-report{display:flex;flex-direction:column;gap:var(--space-6)}.report-header{text-align:center}.report-header h3{margin-bottom:.25rem}.report-header p{color:var(--text-tertiary)}.summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--space-4)}.summary-stat{background:var(--bg-primary);padding:var(--space-4);border-radius:.5rem;text-align:center;box-shadow:0 1px 3px #0000001a}.summary-stat .stat-value{font-size:var(--text-2xl)}.report-section{background:var(--bg-primary);padding:var(--space-6);border-radius:.75rem;box-shadow:0 1px 3px #0000001a}.report-section h4{margin-bottom:var(--space-4);color:var(--text-secondary)}.weekly-blindspots-list{display:flex;flex-direction:column;gap:var(--space-2)}.weekly-blindspot{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3);background:var(--bg-hover);border-radius:.5rem}.weekly-blindspot.left{border-left:3px solid #3b82f6}.weekly-blindspot.right{border-left:3px solid #ef4444}.bs-topic{flex:1;font-weight:var(--font-medium)}.bs-type{font-size:var(--text-sm);color:var(--text-tertiary)}.bs-date{font-size:var(--text-xs);color:var(--text-muted)}.weekly-recommendations{display:grid;gap:var(--space-4)}.weekly-rec{padding:var(--space-4);background:#f0fdf4;border-radius:.5rem}.weekly-rec strong{margin-right:.5rem}.weekly-rec p{margin:.5rem 0 0;font-size:var(--text-sm);color:var(--text-tertiary)}.dark-mode .blindspot-header-section h1{color:#f3f4f6}.dark-mode .header-desc{color:var(--text-muted)}.dark-mode .blindspot-help summary{background:#1e3a5f;color:#60a5fa}.dark-mode .blindspot-help summary:hover{background:#1e4976}.dark-mode .blindspot-help .help-content{background:#1f2937;border-color:var(--text-secondary);color:#e5e7eb}.dark-mode .blindspot-help .help-content em,.dark-mode .tab-btn{color:var(--text-muted)}.dark-mode .tab-btn:hover{background:#374151;color:#f3f4f6}.dark-mode .tab-btn.active{background:var(--brand-primary);color:#fff}.dark-mode .stat-card,.dark-mode .analysis-section,.dark-mode .blindspot-card,.dark-mode .report-section,.dark-mode .summary-stat{background:#1f2937;box-shadow:0 1px 3px #0000004d}.dark-mode .analysis-section h3,.dark-mode .blindspot-container .stat-value,.dark-mode .perspective-label,.dark-mode .source-name,.dark-mode .category-name,.dark-mode .blindspot-topic,.dark-mode .report-section h4{color:#f3f4f6}.dark-mode .source-row,.dark-mode .category-card,.dark-mode .weekly-blindspot{background:#374151}.dark-mode .gauge-value .score{color:#f3f4f6}.dark-mode .bias-bar{background:#374151}.dark-mode .period-selector{border-top-color:var(--text-secondary)}.dark-mode .period-selector select{background:#374151;border-color:var(--text-secondary);color:#f3f4f6}.dark-mode .top-article{border-top-color:var(--text-secondary)}.dark-mode .top-article a{color:#f3f4f6}.dark-mode .recommendation-card{background:linear-gradient(135deg,#064e3b,#065f46);border-color:#059669}.dark-mode .weekly-rec{background:#064e3b}@media(max-width:768px){.blindspot-container{padding:var(--space-4)}.blindspot-header{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.blindspot-header h1{font-size:1.75rem}.blindspot-tabs{flex-wrap:wrap;gap:var(--space-1)}.blindspot-tab{flex:1;min-width:100px;padding:.6rem .75rem;font-size:var(--text-sm);justify-content:center}.tab-btn{flex:1;min-width:120px;padding:.5rem .75rem;font-size:var(--text-sm)}.stats-row{grid-template-columns:repeat(2,1fr)}.stat-card{padding:1rem}.blindspot-container .stat-value{font-size:1.5rem}.gauge-circle{width:80px;height:80px}.gauge-value .score{font-size:var(--text-xl)}.summary-stats{grid-template-columns:repeat(2,1fr)}.analysis-section{padding:var(--space-4)}.source-row{flex-wrap:wrap}.source-name{width:100%;margin-bottom:var(--space-2)}.perspective-card{padding:var(--space-3)}.perspective-header{flex-wrap:wrap;gap:var(--space-2)}.month-selector{padding:1rem}.month-buttons{justify-content:center}.month-btn{min-width:70px;padding:.5rem .75rem}.month-btn .month-name{font-size:.85rem}.bias-labels{font-size:var(--text-xs)}.blindspot-card{padding:var(--space-4)}.blindspot-topic{font-size:1rem}.weekly-blindspot{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.bs-topic{width:100%}}@media(max-width:480px){.blindspot-header h1{font-size:1.5rem}.stats-row,.summary-stats{grid-template-columns:1fr}.blindspot-tabs{flex-direction:column}.blindspot-tab{width:100%}.month-buttons{flex-direction:column}.month-btn{width:100%}}.analytics-dashboard{max-width:800px;margin:0 auto;padding:1.5rem}.analytics-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.analytics-header h1{margin:0;font-size:1.5rem;color:var(--text-primary, #1a1a1a)}.analytics-controls{display:flex;gap:.5rem;align-items:center}.analytics-controls select{padding:.4rem .75rem;border:1px solid var(--border-color, #e5e7eb);border-radius:6px;background:var(--bg-primary, #fff);color:var(--text-primary, #1a1a1a);font-size:.875rem}.refresh-btn,.export-btn{padding:.4rem .6rem;background:var(--bg-secondary, #f3f4f6);border:1px solid var(--border-color, #e5e7eb);border-radius:6px;cursor:pointer;font-size:.875rem}.refresh-btn:hover,.export-btn:hover{background:var(--bg-tertiary, #e5e7eb)}.pages-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:2rem}.page-section{background:var(--bg-primary, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;overflow:hidden}.page-header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--bg-secondary, #f9fafb);border-bottom:1px solid var(--border-color, #e5e7eb)}.page-icon{font-size:1.1rem}.page-name{font-weight:600;color:var(--text-primary, #1a1a1a);flex:1}.page-visits{font-size:.8rem;color:var(--primary-color, #2563eb);font-weight:600}.page-content{padding:.75rem 1rem}.page-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.5rem}.subsection-label{font-size:.7rem;color:var(--text-secondary, #9ca3af);text-transform:uppercase;letter-spacing:.03em}.tab-stat{font-size:.8rem;color:var(--text-secondary, #6b7280)}.tab-count{font-weight:600;color:var(--text-primary, #374151);margin-left:.25rem}.page-actions{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}.action-stat{font-size:.8rem;display:flex;gap:.35rem}.action-label{color:var(--text-secondary, #6b7280)}.action-count{font-weight:600;color:var(--text-primary, #374151)}.action-stat-zero{opacity:.45}.action-stat-zero .action-count{font-weight:400;color:var(--text-secondary, #9ca3af)}.no-activity{font-size:.8rem;color:var(--text-secondary, #9ca3af);font-style:italic}.sources-section{background:var(--bg-primary, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:1rem}.sources-section h2{margin:0 0 .75rem;font-size:1rem;color:var(--text-primary, #1a1a1a)}.sources-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.35rem 1rem}.source-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.source-rank{flex-shrink:0;color:var(--text-secondary, #9ca3af);width:1.5rem;font-size:.75rem}.source-name{flex:1;min-width:0;color:var(--text-primary, #374151);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.source-count{flex-shrink:0;font-weight:600;color:var(--text-secondary, #6b7280)}.analytics-loading,.analytics-error,.analytics-empty{display:flex;flex-direction:column;align-items:center;padding:3rem;color:var(--text-secondary, #6b7280)}.analytics-error button{margin-top:1rem;padding:.5rem 1rem;background:var(--primary-color, #2563eb);color:#fff;border:none;border-radius:6px;cursor:pointer}body.dark-mode .analytics-header h1,body.dark-mode .page-name,body.dark-mode .sources-section h2{color:#f3f4f6}body.dark-mode .analytics-controls select,body.dark-mode .refresh-btn,body.dark-mode .export-btn{background:#374151;border-color:#4b5563;color:#f3f4f6}body.dark-mode .page-section,body.dark-mode .sources-section{background:#1f2937;border-color:#374151}body.dark-mode .page-header{background:#374151;border-color:#4b5563}body.dark-mode .tab-count,body.dark-mode .action-count,body.dark-mode .source-name{color:#f3f4f6}@media(max-width:600px){.analytics-header{flex-direction:column;align-items:flex-start}.page-actions{flex-direction:column;gap:.25rem}.sources-grid{grid-template-columns:1fr;gap:.5rem}.source-item{display:flex;flex-direction:row;align-items:center;gap:.5rem;width:100%}.source-rank{flex-shrink:0}.source-name{flex:1;min-width:0}.source-count{flex-shrink:0}}@media(max-width:480px){.analytics-container{padding:1rem}.sources-section{padding:.75rem}.source-item{font-size:.8rem}}.analytics-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid var(--border-color, #e5e7eb);padding-bottom:0}.tab-btn{padding:.75rem 1.25rem;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--text-secondary, #6b7280);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:-2px}.tab-btn:hover{color:var(--text-primary, #374151);background:var(--bg-secondary, #f9fafb)}.tab-btn.active{color:var(--primary-color, #2563eb);border-bottom-color:var(--primary-color, #2563eb)}.api-calls-tab{display:flex;flex-direction:column;gap:2rem}.api-section h2{margin:0 0 .5rem;font-size:1.2rem;color:var(--text-primary, #1a1a1a)}.section-description{margin:0 0 1rem;font-size:.875rem;color:var(--text-secondary, #6b7280)}.api-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.api-card{background:var(--bg-primary, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:12px;padding:1.25rem;transition:box-shadow .2s ease}.api-card:hover{box-shadow:0 4px 12px #00000014}.api-card.unavailable{opacity:.6;background:var(--bg-secondary, #f9fafb)}.api-card.ai-card{grid-column:1 / -1;max-width:500px}.api-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.api-name{font-weight:600;font-size:1rem;color:var(--text-primary, #1a1a1a)}.api-status{font-size:.75rem;padding:.25rem .5rem;border-radius:4px}.api-status.available{background:#dcfce7;color:#166534}.api-status.unavailable{background:#fee2e2;color:#991b1b}.tier-badge{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;padding:.25rem .6rem;border-radius:4px;font-size:.75rem;font-weight:600}.api-description{margin:0 0 1rem;font-size:.85rem;color:var(--text-secondary, #6b7280);line-height:1.4}.api-usage{margin-bottom:.75rem}.usage-stats{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.85rem}.usage-count{font-weight:600;color:var(--text-primary, #374151)}.usage-remaining{color:var(--text-secondary, #6b7280)}.usage-remaining.low{color:#dc2626;font-weight:600}.api-calls-tab .usage-bar-container{height:8px;background:var(--bg-secondary, #e5e7eb);border-radius:4px;overflow:hidden}.api-calls-tab .usage-bar{height:100%;background:linear-gradient(90deg,#10b981,#3b82f6);border-radius:4px;transition:width .3s ease}.api-calls-tab .usage-bar.low{background:linear-gradient(90deg,#f59e0b,#ef4444)}.ai-cost-info{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color, #e5e7eb);font-size:.8rem;color:var(--text-secondary, #6b7280)}.cost-used{font-weight:600;color:var(--text-primary, #374151)}.feature-breakdown{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color, #e5e7eb)}.feature-breakdown h4{margin:0 0 .75rem;font-size:.85rem;color:var(--text-primary, #374151)}.feature-list{display:flex;flex-wrap:wrap;gap:.5rem 1rem}.feature-item{display:flex;gap:.35rem;font-size:.8rem}.feature-name{color:var(--text-secondary, #6b7280);text-transform:capitalize}.feature-count{font-weight:600;color:var(--text-primary, #374151)}body.dark-mode .tab-btn{color:#9ca3af}body.dark-mode .tab-btn:hover{color:#f3f4f6;background:#374151}body.dark-mode .tab-btn.active{color:#818cf8;border-bottom-color:#818cf8}body.dark-mode .analytics-tabs{border-color:#374151}body.dark-mode .api-section h2{color:#f3f4f6}body.dark-mode .api-card{background:#1f2937;border-color:#374151}body.dark-mode .api-card.unavailable{background:#111827}body.dark-mode .api-name,body.dark-mode .usage-count,body.dark-mode .cost-used,body.dark-mode .feature-breakdown h4,body.dark-mode .feature-count{color:#f3f4f6}body.dark-mode .api-status.available{background:#064e3b;color:#6ee7b7}body.dark-mode .api-status.unavailable{background:#450a0a;color:#fca5a5}body.dark-mode .api-calls-tab .usage-bar-container{background:#374151}body.dark-mode .ai-cost-info,body.dark-mode .feature-breakdown{border-color:#374151}.cache-overview{display:flex;flex-direction:column;gap:1rem}.cache-stat-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}.cache-stat-card{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:1rem;display:flex;flex-direction:column;align-items:center;gap:.25rem}.cache-stat-value{font-size:1.5rem;font-weight:700;color:#16a34a}.cache-stat-label{font-size:.8rem;color:#6b7280;text-align:center}.cache-ttl-table h4{margin:.5rem 0 .4rem;font-size:.9rem;color:#374151}.ttl-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.4rem}.ttl-item{display:flex;justify-content:space-between;align-items:center;padding:.4rem .75rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;font-size:.85rem}.ttl-api{font-weight:600;color:#374151;text-transform:capitalize}.ttl-value{color:#6b7280;font-family:monospace}body.dark-mode .cache-stat-card{background:#064e3b;border-color:#065f46}body.dark-mode .cache-stat-value{color:#6ee7b7}body.dark-mode .cache-stat-label{color:#9ca3af}body.dark-mode .cache-ttl-table h4{color:#d1d5db}body.dark-mode .ttl-item{background:#1f2937;border-color:#374151}body.dark-mode .ttl-api{color:#d1d5db}body.dark-mode .ttl-value{color:#9ca3af}.feature-item-row{display:flex;justify-content:space-between;align-items:center;padding:5px 0;border-bottom:1px solid var(--border-light, #f3f4f6);font-size:.85rem}.feature-item-row:last-child{border-bottom:none}.feature-item-row .feature-name{color:var(--text-primary, #374151);font-weight:500;text-transform:none}.feature-item-row .feature-count{font-weight:700;color:var(--accent-primary, #4f46e5);min-width:32px;text-align:right}.action-menu-table{font-size:.85rem;width:100%}.action-menu-header{display:flex;justify-content:space-between;padding:4px 8px 6px 12px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted, #9ca3af);border-bottom:2px solid var(--border-medium, #e5e7eb);margin-bottom:4px}.action-menu-group{margin-bottom:2px}.action-menu-group-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted, #9ca3af);padding:8px 8px 2px 12px}.action-menu-row{display:flex;justify-content:space-between;align-items:center;padding:4px 8px 4px 24px;border-radius:4px}.action-menu-row:hover{background:var(--bg-hover, #f9fafb)}.action-menu-item-label{color:var(--text-primary, #374151)}.action-menu-item-count{font-weight:700;font-variant-numeric:tabular-nums;min-width:40px;text-align:right;color:var(--accent-primary, #4f46e5)}.action-menu-item-count:not(:empty){font-size:.9rem}.cookie-consent-overlay{position:fixed;bottom:0;left:0;right:0;z-index:99999;padding:var(--space-4);animation:slideUp .3s ease-out}.cookie-consent-banner{max-width:900px;margin:0 auto;background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:0 -4px 20px #00000026;padding:var(--space-6);border:1px solid #e2e8f0}.cookie-consent-content{display:flex;gap:var(--space-4);margin-bottom:var(--space-4)}.cookie-icon{font-size:2.5rem;flex-shrink:0}.cookie-text h3{margin:0 0 .5rem;font-size:1.1rem;color:#1e293b}.cookie-text p{margin:0 0 .5rem;color:#475569;font-size:.9rem;line-height:1.5}.cookie-link{background:none;border:none;color:var(--color-info);cursor:pointer;font-size:.85rem;padding:0;text-decoration:underline}.cookie-link:hover{color:#2563eb}.cookie-text a{color:var(--color-info);font-size:.85rem}.cookie-consent-actions{display:flex;gap:var(--space-3);justify-content:flex-end}.cookie-btn{padding:.625rem 1.25rem;border-radius:var(--radius-lg);font-size:.9rem;font-weight:var(--font-medium);cursor:pointer;transition:var(--transition-normal);border:none}.cookie-btn-primary{background:var(--color-info);color:#fff}.cookie-btn-primary:hover{background:#2563eb}.cookie-btn-secondary{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.cookie-btn-secondary:hover{background:#e2e8f0}.cookie-preferences-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);padding-bottom:.75rem;border-bottom:1px solid #e2e8f0}.cookie-preferences-header h3{margin:0;font-size:1.1rem;color:#1e293b}.cookie-close-btn{background:none;border:none;font-size:var(--text-2xl);color:#64748b;cursor:pointer;padding:0;line-height:1}.cookie-close-btn:hover{color:#334155}.cookie-preferences-content{max-height:400px;overflow-y:auto;margin-bottom:var(--space-4)}.cookie-category{padding:var(--space-4);background:#f8fafc;border-radius:var(--radius-lg);margin-bottom:.75rem}.cookie-category:last-child{margin-bottom:0}.cookie-category-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4)}.cookie-category-info h4{margin:0 0 .25rem;font-size:.95rem;color:#1e293b}.cookie-category-info p{margin:0;font-size:.8rem;color:#64748b}.cookie-list{margin:.75rem 0 0;padding-left:1.25rem;font-size:.8rem;color:#475569}.cookie-list li{margin-bottom:.25rem}.cookie-toggle{flex-shrink:0}.cookie-toggle.disabled label{color:#94a3b8;font-size:var(--text-xs)}.cookie-toggle input[type=checkbox]{display:none}.cookie-toggle .toggle-label{display:block;width:48px;height:26px;background:#cbd5e1;border-radius:13px;position:relative;cursor:pointer;transition:background .2s}.cookie-toggle .toggle-label:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;background:var(--bg-primary);border-radius:var(--radius-full);transition:transform .2s;box-shadow:0 1px 3px #0003}.cookie-toggle input[type=checkbox]:checked+.toggle-label{background:var(--color-info)}.cookie-toggle input[type=checkbox]:checked+.toggle-label:after{transform:translate(22px)}.cookie-preferences-actions{display:flex;gap:var(--space-3);justify-content:flex-end;padding-top:.75rem;border-top:1px solid #e2e8f0}body.dark-mode .cookie-consent-banner{background:#1e293b;border-color:#334155}body.dark-mode .cookie-text h3,body.dark-mode .cookie-preferences-header h3{color:#f1f5f9}body.dark-mode .cookie-text p,body.dark-mode .cookie-category-info p{color:#94a3b8}body.dark-mode .cookie-category{background:#334155}body.dark-mode .cookie-category-info h4{color:#f1f5f9}body.dark-mode .cookie-list{color:#cbd5e1}body.dark-mode .cookie-btn-secondary{background:#334155;border-color:#475569;color:#e2e8f0}body.dark-mode .cookie-btn-secondary:hover{background:#475569}body.dark-mode .cookie-preferences-header,body.dark-mode .cookie-preferences-actions{border-color:#475569}body.dark-mode .cookie-close-btn{color:#94a3b8}body.dark-mode .cookie-close-btn:hover{color:#f1f5f9}body.dark-mode .cookie-toggle .toggle-label{background:#475569}@media(max-width:640px){.cookie-consent-overlay{padding:var(--space-2)}.cookie-consent-banner{padding:var(--space-4)}.cookie-consent-content{flex-direction:column;text-align:center}.cookie-consent-actions{flex-direction:column}.cookie-btn{width:100%}.cookie-category-header{flex-direction:column;gap:var(--space-2)}.cookie-toggle{align-self:flex-end}.cookie-preferences-actions{flex-direction:column}}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:300px;padding:40px 20px;background:linear-gradient(135deg,#fef3f3,#fff5f5);border-radius:var(--radius-xl);margin:20px}.error-boundary-content{text-align:center;max-width:500px}.error-icon{font-size:64px;margin-bottom:20px;animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.error-title{font-size:24px;font-weight:var(--font-semibold);color:#c53030;margin:0 0 12px}.error-message{font-size:16px;color:var(--text-tertiary);margin:0 0 16px;line-height:1.5}.error-component{font-size:14px;color:#888;margin:0 0 20px}.error-component code{background:#f0f0f0;padding:2px 8px;border-radius:var(--radius-sm);font-family:Consolas,Monaco,monospace;color:#c53030}.error-details{text-align:left;background:var(--bg-primary);border:1px solid #e0e0e0;border-radius:var(--radius-lg);padding:12px;margin:20px 0;max-height:200px;overflow:auto}.error-details summary{cursor:pointer;font-weight:var(--font-medium);color:var(--text-tertiary);padding:4px 0}.error-details summary:hover{color:var(--text-primary)}.error-details pre{font-size:12px;color:#c53030;white-space:pre-wrap;word-break:break-word;margin:10px 0 0;padding:10px;background:#fafafa;border-radius:var(--radius-sm)}.error-stack{font-size:11px;color:#888;max-height:150px;overflow:auto}.error-actions{display:flex;gap:12px;justify-content:center;margin:24px 0 16px}.error-btn{padding:12px 24px;font-size:14px;font-weight:var(--font-medium);border:none;border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition-normal)}.error-btn-primary{background:#4a6fa5;color:#fff}.error-btn-primary:hover{background:#3d5d8a;transform:translateY(-1px)}.error-btn-secondary{background:#e0e0e0;color:var(--text-primary)}.error-btn-secondary:hover{background:#d0d0d0}.error-help{font-size:13px;color:#999;margin:0}body.dark-mode .error-boundary{background:linear-gradient(135deg,#2d2020,#1f1a1a)}body.dark-mode .error-title{color:#fc8181}body.dark-mode .error-message,body.dark-mode .error-component{color:var(--text-muted)}body.dark-mode .error-component code{background:#333;color:#fc8181}body.dark-mode .error-details{background:#2a2a2a;border-color:#444}body.dark-mode .error-details summary{color:var(--text-muted)}body.dark-mode .error-details summary:hover{color:#ddd}body.dark-mode .error-details pre{background:#1a1a1a;color:#fc8181}body.dark-mode .error-btn-secondary{background:#444;color:#ddd}body.dark-mode .error-btn-secondary:hover{background:#555}body.dark-mode .error-help{color:#777}.error-boundary-inline{padding:20px;background:#fef3f3;border:1px solid #feb2b2;border-radius:var(--radius-lg);text-align:center}.error-boundary-inline .error-icon{font-size:32px;margin-bottom:10px}.error-boundary-inline .error-title{font-size:16px;margin-bottom:8px}.error-boundary-inline .error-message{font-size:14px;margin-bottom:12px}.error-boundary-inline .error-btn{padding:8px 16px;font-size:13px}body.dark-mode .error-boundary-inline{background:#2d2020;border-color:#744242}.pwa-install-banner{position:fixed;bottom:0;left:0;right:0;background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;padding:1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;z-index:9999;box-shadow:0 -4px 20px #0000004d;animation:slideUp .3s ease-out;padding-bottom:calc(1rem + env(safe-area-inset-bottom,0))}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.pwa-install-content{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.pwa-install-icon{font-size:2rem;flex-shrink:0}.pwa-install-text{display:flex;flex-direction:column;min-width:0}.pwa-install-text strong{font-size:1rem;font-weight:600}.pwa-install-text span{font-size:.85rem;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pwa-install-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.pwa-install-btn{background:#2563eb;color:#fff;border:none;padding:.6rem 1.25rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease}.pwa-install-btn:hover{background:#1d4ed8;transform:scale(1.02)}.pwa-install-btn:active{transform:scale(.98)}.pwa-dismiss-btn{background:transparent;border:none;color:#ffffffb3;font-size:1.25rem;cursor:pointer;padding:.5rem;border-radius:50%;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.pwa-dismiss-btn:hover{background:#ffffff1a;color:#fff}.pwa-ios-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:fadeIn .2s ease}.pwa-ios-modal{background:#fff;border-radius:16px;padding:1.5rem;max-width:360px;width:100%;position:relative;animation:scaleIn .25s ease;max-height:90vh;overflow-y:auto}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.pwa-ios-close{position:absolute;top:.75rem;right:.75rem;background:#f3f4f6;border:none;width:32px;height:32px;border-radius:50%;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6b7280;transition:all .2s ease}.pwa-ios-close:hover{background:#e5e7eb;color:#374151}.pwa-ios-modal h2{margin:0 0 .5rem;font-size:1.25rem;color:#1a1a2e;padding-right:2rem}.pwa-ios-subtitle{color:#6b7280;margin:0 0 1.25rem;font-size:.9rem}.pwa-ios-steps{list-style:none;padding:0;margin:0;counter-reset:step-counter}.pwa-ios-steps li{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 0;border-bottom:1px solid #f3f4f6;counter-increment:step-counter}.pwa-ios-steps li:last-child{border-bottom:none}.pwa-ios-steps .step-icon{width:40px;height:40px;background:#eff6ff;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0;color:#2563eb}.pwa-ios-steps .step-icon svg{width:20px;height:20px}.pwa-ios-steps .step-text{display:flex;flex-direction:column;padding-top:.25rem}.pwa-ios-steps .step-text strong{font-size:.95rem;color:#1a1a2e;margin-bottom:.125rem}.pwa-ios-steps .step-text span{font-size:.85rem;color:#6b7280}.pwa-ios-got-it{width:100%;background:#2563eb;color:#fff;border:none;padding:.875rem;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;margin-top:1rem;transition:all .2s ease}.pwa-ios-got-it:hover{background:#1d4ed8}.pwa-ios-got-it:active{transform:scale(.98)}@media(max-width:480px){.pwa-install-banner{flex-direction:column;align-items:stretch;gap:.75rem}.pwa-install-actions{justify-content:flex-end}.pwa-install-text span{white-space:normal}}body.dark-mode .pwa-ios-modal,[data-theme=dark] .pwa-ios-modal{background:#1a1a2e}body.dark-mode .pwa-ios-modal h2,[data-theme=dark] .pwa-ios-modal h2{color:#e5e7eb}body.dark-mode .pwa-ios-subtitle,[data-theme=dark] .pwa-ios-subtitle{color:#9ca3af}body.dark-mode .pwa-ios-close,[data-theme=dark] .pwa-ios-close{background:#374151;color:#9ca3af}body.dark-mode .pwa-ios-close:hover,[data-theme=dark] .pwa-ios-close:hover{background:#4b5563;color:#e5e7eb}body.dark-mode .pwa-ios-steps li,[data-theme=dark] .pwa-ios-steps li{border-bottom-color:#374151}body.dark-mode .pwa-ios-steps .step-icon,[data-theme=dark] .pwa-ios-steps .step-icon{background:#1e3a5f}body.dark-mode .pwa-ios-steps .step-text strong,[data-theme=dark] .pwa-ios-steps .step-text strong{color:#e5e7eb}body.dark-mode .pwa-ios-steps .step-text span,[data-theme=dark] .pwa-ios-steps .step-text span{color:#9ca3af}.notification-button-group{display:flex;align-items:center;gap:0;background:var(--bg-secondary, #f0f0f0);border-radius:6px;padding:2px}.notification-button{position:relative;background:transparent;border:none;padding:.4rem .5rem;cursor:pointer;font-size:1.1rem;color:var(--text-secondary, #666);transition:color .2s,background .2s;display:flex;align-items:center;justify-content:center;border-radius:4px}.notification-button:hover:not(:disabled){color:var(--text-primary, #333);background:var(--bg-tertiary, #e0e0e0)}.notification-button:disabled{cursor:wait}.notification-button.has-notifications{color:var(--color-primary, #007bff)}.notification-button.has-notifications:hover:not(:disabled){color:var(--color-primary-dark, #0056b3)}.notification-icon{display:inline-block}.notification-button.has-notifications:not(.loading) .notification-icon{animation:bell-shake .5s ease-in-out}.notification-button.loading .notification-icon{animation:bell-spin .8s linear infinite}@keyframes bell-shake{0%,to{transform:rotate(0)}20%{transform:rotate(15deg)}40%{transform:rotate(-15deg)}60%{transform:rotate(10deg)}80%{transform:rotate(-10deg)}}@keyframes bell-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.notification-badge{position:absolute;top:-2px;right:-2px;background:var(--color-error, #dc3545);color:#fff;font-size:.6rem;font-weight:600;min-width:1rem;height:1rem;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0 .2rem;box-shadow:0 1px 3px #0003}.refresh-button{background:transparent;border:none;padding:.4rem .5rem;cursor:pointer;font-size:1rem;color:var(--text-tertiary, #888);transition:color .2s,background .2s;display:flex;align-items:center;justify-content:center;border-radius:4px}.refresh-button:hover:not(:disabled){color:var(--text-primary, #333);background:var(--bg-tertiary, #e0e0e0)}.refresh-button:disabled{cursor:wait}.refresh-icon{display:inline-block;font-weight:700}.refresh-button.loading .refresh-icon{animation:refresh-spin .6s linear infinite}@keyframes refresh-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dark-mode .notification-button-group{background:var(--bg-secondary, #2a2a2a)}.dark-mode .notification-button{color:var(--text-secondary, #aaa)}.dark-mode .notification-button:hover:not(:disabled){color:var(--text-primary, #fff);background:var(--bg-tertiary, #333)}.dark-mode .notification-button.has-notifications{color:var(--color-primary, #4dabf7)}.dark-mode .refresh-button{color:var(--text-tertiary, #777)}.dark-mode .refresh-button:hover:not(:disabled){color:var(--text-primary, #fff);background:var(--bg-tertiary, #333)}.notification-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:flex-start;justify-content:center;padding-top:5rem;z-index:1000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.notification-dialog{background:var(--bg-primary, white);border-radius:12px;width:90%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0003;animation:slideIn .2s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.notification-dialog-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color, #e5e5e5)}.notification-dialog-header h2{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary, #333)}.close-button{background:none;border:none;font-size:1.5rem;color:var(--text-tertiary, #999);cursor:pointer;padding:0;line-height:1}.close-button:hover{color:var(--text-primary, #333)}.notification-dialog-content{flex:1;overflow-y:auto;padding:1rem}.no-notifications{text-align:center;padding:2rem;color:var(--text-tertiary, #999)}.no-notifications .empty-icon{font-size:3rem;display:block;margin-bottom:.5rem}.user-shares-group{background:var(--bg-secondary, #f8f9fa);border-radius:8px;margin-bottom:1rem;overflow:hidden}.user-shares-group:last-child{margin-bottom:0}.user-shares-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--bg-tertiary, #f0f0f0)}.user-info{display:flex;align-items:center;gap:.75rem}.user-avatar{width:36px;height:36px;border-radius:50%;background:var(--color-primary, #007bff);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem}.user-details{display:flex;flex-direction:column}.user-name{font-weight:600;color:var(--text-primary, #333);font-size:.95rem}.user-email{font-size:.75rem;color:var(--text-tertiary, #999)}.block-user-btn{background:none;border:none;font-size:1.1rem;cursor:pointer;opacity:.5;transition:opacity .2s;padding:.25rem}.block-user-btn:hover{opacity:1}.shares-list{padding:.5rem}.share-item{background:var(--bg-primary, white);border-radius:6px;padding:.75rem;margin-bottom:.5rem;border:1px solid var(--border-color, #e5e5e5)}.share-item:last-child{margin-bottom:0}.share-info{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.share-icon{font-size:1.1rem}.share-details{display:flex;flex-direction:column}.share-type-label{font-weight:500;color:var(--text-primary, #333);font-size:.9rem}.share-date{font-size:.75rem;color:var(--text-tertiary, #999)}.share-preview{background:var(--bg-secondary, #f8f9fa);border-radius:4px;padding:.5rem .75rem;margin-bottom:.75rem}.preview-list{list-style:none;padding:0;margin:0}.preview-item{font-size:.8rem;color:var(--text-secondary, #666);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:.15rem 0}.preview-item.topic{display:inline-block;background:var(--bg-tertiary, #e9ecef);padding:.15rem .5rem;border-radius:3px;margin-right:.25rem;margin-bottom:.25rem}.preview-more{font-size:.75rem;color:var(--text-tertiary, #999);font-style:italic}.share-actions{display:flex;gap:.5rem}.accept-btn,.deny-btn{flex:1;padding:.5rem;border:none;border-radius:4px;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .2s,transform .1s}.accept-btn{background:var(--color-success, #28a745);color:#fff}.accept-btn:hover:not(:disabled){background:#218838}.deny-btn{background:var(--bg-tertiary, #e9ecef);color:var(--text-secondary, #666)}.deny-btn:hover:not(:disabled){background:#ddd}.accept-btn:disabled,.deny-btn:disabled{opacity:.6;cursor:not-allowed}.block-confirm-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;border-radius:12px}.block-confirm-dialog{background:var(--bg-primary, white);border-radius:8px;padding:1.5rem;width:90%;max-width:320px;box-shadow:0 4px 20px #00000026}.block-confirm-dialog h3{margin:0 0 .75rem;font-size:1.1rem;color:var(--text-primary, #333)}.block-confirm-dialog p{margin:0 0 .5rem;font-size:.9rem;color:var(--text-secondary, #666)}.block-warning{font-size:.8rem!important;color:var(--color-warning, #856404)!important;background:#fff3cd;padding:.5rem;border-radius:4px;margin-bottom:1rem!important}.block-confirm-actions{display:flex;gap:.5rem;margin-top:1rem}.cancel-btn,.confirm-block-btn{flex:1;padding:.6rem;border:none;border-radius:4px;font-size:.9rem;font-weight:500;cursor:pointer}.cancel-btn{background:var(--bg-tertiary, #e9ecef);color:var(--text-secondary, #666)}.confirm-block-btn{background:var(--color-error, #dc3545);color:#fff}.confirm-block-btn:hover:not(:disabled){background:#c82333}.confirm-block-btn:disabled{opacity:.6;cursor:not-allowed}.dark-mode .notification-dialog{background:var(--bg-primary, #1a1a1a)}.dark-mode .notification-dialog-header{border-color:var(--border-color, #333)}.dark-mode .user-shares-group{background:var(--bg-secondary, #252525)}.dark-mode .user-shares-header{background:var(--bg-tertiary, #2a2a2a)}.dark-mode .share-item{background:var(--bg-primary, #1a1a1a);border-color:var(--border-color, #333)}.dark-mode .share-preview{background:var(--bg-tertiary, #2a2a2a)}.dark-mode .block-confirm-dialog{background:var(--bg-primary, #1a1a1a)}.dark-mode .block-warning{background:#332701;color:#ffc107!important}@media(max-width:480px){.notification-dialog-overlay{padding-top:0;align-items:flex-end}.notification-dialog{width:100%;max-width:none;max-height:85vh;border-radius:12px 12px 0 0}.share-actions{flex-direction:column}}.preview-item.story{display:flex;flex-direction:column;gap:4px}.preview-item.story strong{color:var(--text-primary);font-size:.95rem}.preview-item.story .story-meta{color:var(--text-muted);font-size:.8rem}.preview-item.story .story-message{color:var(--text-secondary);font-size:.85rem;font-style:italic;margin-top:4px}.share-item.story{border-left:3px solid #3b82f6}.loading-notifications{padding:var(--space-4, 16px);text-align:center;color:var(--text-muted)}.section-title{font-size:.9rem;font-weight:600;color:var(--text-secondary);margin:0 0 var(--space-3, 12px) 0;padding-bottom:var(--space-2, 8px);border-bottom:1px solid var(--border-color)}.offers-section{padding:var(--space-3, 12px);border-bottom:2px solid var(--border-color);background:linear-gradient(135deg,#a855f70d,#3b82f60d)}.shares-section{padding:var(--space-3, 12px)}.offers-list{display:flex;flex-direction:column;gap:var(--space-3, 12px)}.offer-item{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:var(--space-3, 12px)}.offer-info{margin-bottom:var(--space-2, 8px)}.offer-source{font-size:1rem;margin-bottom:4px}.offer-source strong{color:var(--color-primary)}.offer-details{display:flex;gap:var(--space-3, 12px);font-size:.8rem;color:var(--text-secondary);margin-bottom:var(--space-1, 4px)}.offer-consensus{font-weight:500}.offer-suggestion{font-size:.8rem;color:var(--text-secondary)}.offer-suggestion .suggestion-tag{display:inline-block;padding:1px 8px;background:var(--color-info-bg, #e0f2fe);color:var(--color-info, #0284c7);border-radius:4px;font-weight:500;margin-left:4px}.offer-actions{display:flex;gap:var(--space-2, 8px);margin-top:var(--space-2, 8px)}.drift-panel{background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-light, #e5e7eb);border-radius:12px;padding:20px;margin-top:16px;margin-bottom:32px}.drift-header{margin-bottom:16px}.drift-header h3{margin:0 0 4px;font-size:1.1rem;color:var(--text-primary, #1f2937)}.drift-subtitle{margin:0;font-size:.85rem;color:var(--text-tertiary, #9ca3af)}.drift-loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:40px;color:var(--text-tertiary, #9ca3af)}.drift-status{display:flex;gap:16px;margin-bottom:16px;padding:12px;background:var(--bg-primary, white);border-radius:8px}.status-item{display:flex;flex-direction:column;align-items:center;flex:1}.status-value{font-size:1.5rem;font-weight:700;color:var(--accent-color, #3b82f6)}.status-total{font-size:1rem;font-weight:500;color:var(--text-tertiary, #9ca3af)}.status-label{font-size:.75rem;color:var(--text-tertiary, #9ca3af)}.drift-actions{display:flex;gap:8px;margin-bottom:20px}.analyze-framing-btn,.analyze-drift-btn{padding:10px 16px;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.analyze-framing-btn{background:var(--bg-primary, white);border:1px solid var(--border-medium, #d1d5db);color:var(--text-primary, #1f2937)}.analyze-framing-btn:hover:not(:disabled){background:var(--bg-tertiary, #f3f4f6)}.analyze-drift-btn{background:var(--accent-color, #3b82f6);border:none;color:#fff;flex:1}.analyze-drift-btn:hover:not(:disabled){background:var(--accent-color-dark, #2563eb)}.analyze-framing-btn:disabled,.analyze-drift-btn:disabled{opacity:.5;cursor:not-allowed}.divergence-overview{background:var(--bg-primary, white);border-radius:12px;padding:20px;margin-bottom:16px}.divergence-score-card{text-align:center;margin-bottom:20px}.divergence-score{font-size:3rem;font-weight:800;line-height:1}.divergence-label{font-size:1rem;font-weight:600;color:var(--text-primary, #1f2937);margin-top:4px}.divergence-scale{font-size:.75rem;color:var(--text-tertiary, #9ca3af);margin-top:2px}.divergence-breakdown{display:flex;flex-direction:column;gap:12px}.divergence-bar{display:flex;align-items:center;gap:12px}.bar-label{width:70px;font-size:.85rem;color:var(--text-secondary, #6b7280)}.bar-track{flex:1;height:8px;background:var(--bg-tertiary, #f3f4f6);border-radius:4px;overflow:hidden}.bar-fill{height:100%;border-radius:4px;transition:width .5s ease}.bar-value{width:30px;text-align:right;font-size:.85rem;font-weight:600;color:var(--text-secondary, #6b7280)}.drift-summary{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-light, #e5e7eb)}.drift-summary p{margin:0;font-size:.9rem;color:var(--text-secondary, #6b7280);line-height:1.5}.drift-section{background:var(--bg-primary, white);border-radius:8px;margin-bottom:8px;overflow:hidden}.section-toggle{display:flex;justify-content:space-between;align-items:center;width:100%;padding:12px 16px;background:none;border:none;cursor:pointer;font-size:.9rem;font-weight:500;color:var(--text-primary, #1f2937);text-align:left}.section-toggle:hover{background:var(--bg-secondary, #f9fafb)}.toggle-icon{font-size:.7rem;color:var(--text-tertiary, #9ca3af)}.section-content{padding:0 16px 16px}.cluster-card{background:var(--bg-secondary, #f9fafb);border-radius:8px;padding:12px;margin-bottom:8px}.cluster-name{font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:8px}.cluster-sources{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.cluster-source{padding:2px 8px;background:var(--accent-color, #3b82f6);color:#fff;border-radius:12px;font-size:.75rem}.cluster-themes{display:flex;flex-wrap:wrap;gap:6px}.cluster-theme{padding:2px 8px;background:var(--bg-primary, white);border:1px solid var(--border-light, #e5e7eb);border-radius:4px;font-size:.75rem;color:var(--text-secondary, #6b7280)}.point-list{margin:0;padding-left:20px}.point-list li{margin-bottom:6px;font-size:.9rem;color:var(--text-secondary, #6b7280)}.consensus-list li::marker{color:#22c55e}.disputed-list li::marker{color:#f59e0b}.unique-claim{padding:8px 12px;background:var(--bg-secondary, #f9fafb);border-radius:6px;margin-bottom:6px}.claim-source{font-weight:600;color:var(--accent-color, #3b82f6);margin-right:8px}.claim-text{color:var(--text-secondary, #6b7280);font-size:.9rem}.snapshot-card{background:var(--bg-secondary, #f9fafb);border-radius:8px;padding:12px;margin-bottom:12px}.snapshot-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.snapshot-source{font-weight:600;color:var(--text-primary, #1f2937)}.snapshot-bias{padding:2px 6px;border-radius:4px;font-size:.7rem;font-weight:500}.snapshot-bias.bias-left{background:#dbeafe;color:#1e40af}.snapshot-bias.bias-left-center,.snapshot-bias.bias-center-left{background:#e0f2fe;color:#0369a1}.snapshot-bias.bias-center{background:#f3f4f6;color:#4b5563}.snapshot-bias.bias-right-center,.snapshot-bias.bias-center-right{background:#fef3c7;color:#92400e}.snapshot-bias.bias-right{background:#fee2e2;color:#991b1b}.snapshot-title{display:block;color:var(--accent-color, #3b82f6);font-size:.9rem;text-decoration:none;margin-bottom:12px;line-height:1.4}.snapshot-title:hover{text-decoration:underline}.snapshot-analysis{background:var(--bg-primary, white);border-radius:6px;padding:10px}.framing-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.framing-label{font-size:.8rem;color:var(--text-tertiary, #9ca3af);width:70px}.framing-value{font-size:.85rem;color:var(--text-primary, #1f2937);text-transform:capitalize}.sentiment-row{margin-top:8px}.sentiment-bar{flex:1;height:8px;background:linear-gradient(to right,#ef4444,#eab308,#22c55e);border-radius:4px;position:relative}.sentiment-fill{position:absolute;left:0;top:0;height:100%;border-radius:4px;opacity:0}.sentiment-marker{position:absolute;top:50%;transform:translate(-50%,-50%);width:12px;height:12px;background:#fff;border:2px solid #374151;border-radius:50%}.framing-claims{margin-top:10px;padding-top:10px;border-top:1px solid var(--border-light, #e5e7eb)}.claims-label{font-size:.8rem;font-weight:500;color:var(--text-secondary, #6b7280)}.framing-claims ul{margin:6px 0 0;padding-left:16px}.framing-claims li{font-size:.8rem;color:var(--text-secondary, #6b7280);margin-bottom:4px}.snapshot-unanalyzed{font-size:.85rem;color:var(--text-tertiary, #9ca3af);font-style:italic;padding:8px;background:var(--bg-primary, white);border-radius:6px}.status-value.analyzed{color:#10b981}.status-value.pending{color:#f59e0b}.status-value.failed{color:#ef4444}.snapshot-group{margin-bottom:20px}.group-header{font-size:.9rem;font-weight:600;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--border-color, #e5e7eb)}.failed-group .group-header{color:#ef4444;border-bottom-color:#fecaca}.analyzed-group .group-header{color:#10b981;border-bottom-color:#a7f3d0}.pending-group .group-header{color:#f59e0b;border-bottom-color:#fde68a}.snapshot-status{font-size:.75rem;padding:2px 8px;border-radius:4px}.snapshot-status.status-failed{background:#fef2f2;color:#dc2626}.snapshot-status.status-skipped{background:#fef3c7;color:#d97706}.snapshot-card.snapshot-failed{border-left:3px solid #ef4444}.snapshot-card.snapshot-pending{border-left:3px solid #f59e0b}.snapshot-error{font-size:.8rem;color:#dc2626;background:#fef2f2;padding:8px;border-radius:4px;margin-top:8px}.snapshot-pending-status{font-size:.85rem;color:#d97706;font-style:italic;padding:8px;background:#fffbeb;border-radius:6px}.snapshot-actions{display:flex;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--border-light, #f3f4f6)}.skip-btn,.retry-btn,.dismiss-btn{padding:4px 12px;font-size:.8rem;border-radius:4px;cursor:pointer;transition:all .2s}.skip-btn{background:#f3f4f6;color:#6b7280;border:1px solid #d1d5db}.skip-btn:hover{background:#e5e7eb}.retry-btn{background:#dbeafe;color:#1d4ed8;border:1px solid #93c5fd}.retry-btn:hover{background:#bfdbfe}.dismiss-btn{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.dismiss-btn:hover{background:#fee2e2}.no-analysis,.no-snapshots{text-align:center;padding:30px;color:var(--text-tertiary, #9ca3af)}.no-analysis p,.no-snapshots p{margin:0 0 8px;font-size:.9rem}.capture-existing-btn{margin-top:16px;padding:12px 24px;background:var(--accent-color, #3b82f6);color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s}.capture-existing-btn:hover:not(:disabled){background:var(--accent-color-dark, #2563eb)}.capture-existing-btn:disabled{opacity:.6;cursor:not-allowed}html[data-theme=dark] .drift-panel{background:#1f2937;border-color:#374151}html[data-theme=dark] .drift-status,html[data-theme=dark] .divergence-overview,html[data-theme=dark] .drift-section{background:#111827}html[data-theme=dark] .bar-track,html[data-theme=dark] .cluster-card,html[data-theme=dark] .snapshot-card,html[data-theme=dark] .unique-claim{background:#374151}html[data-theme=dark] .snapshot-analysis,html[data-theme=dark] .snapshot-unanalyzed{background:#1f2937}html[data-theme=dark] .cluster-theme{background:#1f2937;border-color:#4b5563}html[data-theme=dark] .section-toggle:hover{background:#374151}html[data-theme=dark] .group-header{border-bottom-color:#4b5563}html[data-theme=dark] .snapshot-error{background:#451a1a;color:#fca5a5}html[data-theme=dark] .snapshot-pending-status{background:#451a03;color:#fcd34d}html[data-theme=dark] .snapshot-status.status-failed{background:#451a1a;color:#fca5a5}html[data-theme=dark] .snapshot-status.status-skipped{background:#451a03;color:#fcd34d}html[data-theme=dark] .skip-btn{background:#374151;color:#9ca3af;border-color:#4b5563}html[data-theme=dark] .skip-btn:hover{background:#4b5563}html[data-theme=dark] .retry-btn{background:#1e3a5f;color:#93c5fd;border-color:#1d4ed8}html[data-theme=dark] .retry-btn:hover{background:#1e40af}html[data-theme=dark] .dismiss-btn{background:#450a0a;color:#fca5a5;border-color:#dc2626}html[data-theme=dark] .dismiss-btn:hover{background:#7f1d1d}html[data-theme=dark] .snapshot-actions{border-top-color:#374151}@media(max-width:600px){.drift-status{flex-wrap:wrap}.status-item{min-width:calc(50% - 8px)}.drift-actions{flex-direction:column}.divergence-score{font-size:2.5rem}}.framing-errors-panel{margin:.75rem 0 1rem;padding:.75rem 1rem;background:var(--surface-warning, #fef9c3);border:1px solid var(--border-warning, #facc15);border-radius:6px;font-size:.85rem;color:var(--text-primary, #1a1a1a)}.framing-errors-panel>summary{cursor:pointer;font-weight:600;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.framing-errors-dismiss{background:transparent;border:none;color:inherit;font-size:1.1rem;cursor:pointer;padding:0 .25rem;line-height:1;opacity:.7}.framing-errors-dismiss:hover{opacity:1}.framing-errors-list{margin:.5rem 0 0;padding-left:1.25rem;font-weight:400}.framing-errors-list li{margin-bottom:.25rem;word-break:break-word}body.dark-mode .framing-errors-panel{background:#facc151f;border-color:#facc1566;color:var(--text-primary, #f0f0f0)}.story-timeline-container{max-width:900px;margin:0 auto;padding:2rem 1rem;overflow-x:hidden}.story-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color, #e0e0e0)}.story-header h1{margin:0 0 .5rem;font-size:1.75rem;color:var(--text-primary, #333)}.story-meta{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.9rem;color:var(--text-secondary, #666)}.meta-separator{color:var(--border-color, #ccc)}.story-keywords{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.keyword-tag{display:inline-block;padding:.25rem .75rem;background:var(--bg-secondary, #f5f5f5);border-radius:12px;font-size:.8rem;color:var(--text-secondary, #666)}.story-actions{display:flex;flex-direction:column;gap:.5rem}.btn-back{padding:.5rem 1rem;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:.85rem;cursor:pointer;white-space:nowrap;transition:background .2s,border-color .2s;background:var(--bg-primary, white);color:var(--text-secondary, #666)}.btn-back:hover{background:var(--bg-secondary, #f0f0f0);border-color:var(--text-tertiary, #999)}.btn-primary,.btn-secondary,.btn-danger{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.85rem;cursor:pointer;white-space:nowrap;transition:background .2s,opacity .2s}.btn-primary{background:var(--brand-primary, #4a90d9);color:#fff}.btn-primary:hover:not(:disabled){background:var(--brand-primary-dark, #3a7bc8)}.btn-secondary{background:var(--bg-secondary, #f0f0f0);color:var(--text-primary, #333)}.btn-secondary:hover:not(:disabled){background:var(--border-color, #e0e0e0)}.btn-danger{background:#fee;color:#c53030}.btn-danger:hover:not(:disabled){background:#fdd}.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled{opacity:.6;cursor:not-allowed}.btn-auto-refresh-toggle{padding:.5rem 1rem;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:.85rem;cursor:pointer;white-space:nowrap;transition:background .2s,border-color .2s;background:#fef3c7;color:#92400e}.btn-auto-refresh-toggle:hover{background:#fde68a;border-color:#b45309}.btn-auto-refresh-toggle.active{background:#dcfce7;color:#15803d;border-color:#86efac}.btn-auto-refresh-toggle.active:hover{background:#bbf7d0;border-color:#15803d}.catch-me-up-section{background:var(--bg-secondary, #f8f9fa);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h2{margin:0;font-size:1.25rem;color:var(--text-primary, #333)}.ai-summary{background:#fff;border-radius:8px;padding:1.25rem;border:1px solid var(--border-color, #e0e0e0)}.ai-summary p{margin:0;line-height:1.7;color:var(--text-primary, #333);white-space:pre-wrap}.summary-date{display:block;margin-top:1rem;font-size:.8rem;color:var(--text-secondary, #888)}.no-summary{color:var(--text-secondary, #666);font-style:italic}.timeline-section{margin-bottom:2rem}.timeline{position:relative;padding-left:1rem}.timeline:before{content:"";position:absolute;left:6px;top:0;bottom:0;width:2px;background:var(--border-color, #e0e0e0)}.timeline-event{display:flex;gap:1.5rem;margin-bottom:1.5rem;position:relative}.event-marker{flex-shrink:0;width:80px;display:flex;flex-direction:column;align-items:flex-end;padding-right:1rem}.event-date{font-size:.8rem;color:var(--text-secondary, #666);white-space:nowrap}.marker-dot{position:absolute;left:0;top:.5rem;width:14px;height:14px;background:#fff;border:3px solid var(--brand-primary, #4a90d9);border-radius:50%}.timeline-event.importance-major .marker-dot{border-color:#f59e0b;background:#fef3c7}.timeline-event.importance-minor .marker-dot{border-color:var(--text-secondary, #888)}.timeline-event.unassigned .marker-dot{border-color:var(--border-color, #ccc)}.event-content{flex:1;min-width:0;background:#fff;border-radius:8px;padding:1rem;border:1px solid var(--border-color, #e0e0e0);overflow:hidden}.timeline-event.importance-major .event-content{border-color:#f59e0b;box-shadow:0 2px 8px #f59e0b26}.event-title{margin:0 0 .5rem;font-size:1rem;color:var(--text-primary, #333)}.event-summary{margin:0 0 1rem;color:var(--text-secondary, #666);font-size:.9rem;line-height:1.5}.event-articles{display:flex;flex-direction:column;gap:.5rem;min-width:0;width:100%}.article-link{display:flex;align-items:flex-start;gap:.75rem;padding:.5rem .75rem;background:var(--bg-secondary, #f8f9fa);border-radius:6px;text-decoration:none;transition:background .2s;min-width:0}.article-link:hover{background:var(--border-color, #e8e8e8)}.story-timeline-container .article-source{flex-shrink:1;font-size:.75rem;font-weight:600;color:var(--text-primary, #374151);max-width:120px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-top:.1rem}.article-title{flex:1;font-size:.85rem;color:var(--text-primary, #333);line-height:1.4;min-width:0;word-wrap:break-word;overflow-wrap:break-word}.article-date{flex-shrink:0;font-size:.75rem;color:var(--text-secondary, #888);padding-top:.1rem}.loading-state,.error-state,.no-events{text-align:center;padding:3rem;color:var(--text-secondary, #666)}body.dark-mode .story-header{border-bottom-color:var(--border-color, #444)}body.dark-mode .story-header h1{color:var(--text-primary, #fff)}body.dark-mode .keyword-tag{background:var(--bg-tertiary, #333);color:var(--text-secondary, #aaa)}body.dark-mode .catch-me-up-section{background:var(--bg-secondary, #1a1a1a)}body.dark-mode .ai-summary{background:var(--bg-tertiary, #222);border-color:var(--border-color, #444)}body.dark-mode .ai-summary p{color:var(--text-primary, #eee)}body.dark-mode .timeline:before{background:var(--border-color, #444)}body.dark-mode .marker-dot{background:var(--bg-primary, #121212)}body.dark-mode .event-content{background:var(--bg-secondary, #1a1a1a);border-color:var(--border-color, #444)}body.dark-mode .event-title{color:var(--text-primary, #fff)}body.dark-mode .article-link{background:var(--bg-tertiary, #252525)}body.dark-mode .article-link:hover{background:var(--border-color, #333)}body.dark-mode .article-title{color:var(--text-primary, #eee)}body.dark-mode .btn-secondary{background:var(--bg-tertiary, #333);color:var(--text-primary, #fff)}body.dark-mode .btn-secondary:hover:not(:disabled){background:var(--border-color, #444)}body.dark-mode .btn-danger{background:#3a1a1a;color:#f87171}body.dark-mode .btn-back{background:var(--bg-secondary, #2d3748);border-color:var(--border-color, #4a5568);color:var(--text-secondary, #a0aec0)}body.dark-mode .btn-back:hover{background:var(--bg-tertiary, #374151);border-color:var(--text-tertiary, #718096)}body.dark-mode .btn-auto-refresh-toggle{background:#422006;color:#fbbf24;border-color:#78350f}body.dark-mode .btn-auto-refresh-toggle:hover{background:#78350f}body.dark-mode .btn-auto-refresh-toggle.active{background:#14532d;color:#4ade80;border-color:#15803d}body.dark-mode .btn-auto-refresh-toggle.active:hover{background:#166534}@media(max-width:768px){.story-timeline-container{padding:1rem}.story-header{flex-direction:column;gap:1rem}.story-header h1{font-size:1.3rem}.story-actions{flex-direction:column;width:100%;gap:.5rem}.story-actions button,.story-actions .btn-back,.story-actions .btn-primary,.story-actions .btn-secondary,.story-actions .btn-danger,.story-actions .btn-auto-refresh-toggle{width:100%;justify-content:center;text-align:center}.section-header{flex-direction:column;align-items:flex-start;gap:.75rem}.event-marker{width:60px}.article-link{flex-direction:column;align-items:flex-start;gap:.35rem;padding:.75rem;margin-right:.25rem}.story-timeline-container .article-source{min-width:0;max-width:100%}.article-title{width:100%;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.4;padding-right:.25rem}.article-date{align-self:flex-end}.event-content{padding:.75rem}.event-articles{padding-right:.25rem}}@media(max-width:480px){.story-timeline-container{padding:.75rem}.story-header h1{font-size:1.15rem}.story-actions button,.story-actions .btn-back,.story-actions .btn-primary,.story-actions .btn-secondary,.story-actions .btn-danger,.story-actions .btn-auto-refresh-toggle{font-size:.8rem;padding:.6rem .75rem}.article-title{font-size:.8rem}.story-timeline-container .article-source,.story-timeline-container .article-date{font-size:.7rem}}.drift-section-toggle{display:flex;align-items:center;gap:12px;padding:12px 0;margin:0 0 16px;border-bottom:1px solid var(--border-light, #e5e7eb)}.drift-toggle-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;background:var(--bg-secondary, #f3f4f6);border:1px solid var(--border-light, #e5e7eb);border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:500;color:var(--text-primary, #1f2937);transition:all .2s}.drift-toggle-btn:hover{background:var(--bg-tertiary, #e5e7eb)}.drift-toggle-btn.active{background:var(--accent-color, #3b82f6);border-color:var(--accent-color, #3b82f6);color:#fff}.drift-toggle-hint{font-size:.85rem;color:var(--text-tertiary, #9ca3af)}html[data-theme=dark] .drift-toggle-btn{background:#374151;border-color:#4b5563}html[data-theme=dark] .drift-toggle-btn:hover{background:#4b5563}html[data-theme=dark] .drift-section-toggle{border-color:#374151}.collapsible-section{background:var(--bg-primary, white);border:1px solid var(--border-light, #e5e7eb);border-radius:12px;margin-bottom:16px;overflow:hidden}.section-toggle-btn{display:flex;justify-content:space-between;align-items:center;width:100%;padding:16px 20px;background:var(--bg-secondary, #f9fafb);border:none;cursor:pointer;font-size:1rem;font-weight:600;color:var(--text-primary, #1f2937);text-align:left;transition:background .2s}.section-toggle-btn:hover{background:var(--bg-tertiary, #f3f4f6)}.section-toggle-btn.expanded{border-bottom:1px solid var(--border-light, #e5e7eb)}.section-toggle-title{display:flex;align-items:center;gap:12px}.section-count{font-size:.85rem;font-weight:500;color:var(--text-tertiary, #9ca3af);background:var(--bg-primary, white);padding:2px 10px;border-radius:12px}.section-hint{font-size:.85rem;font-weight:400;color:var(--text-tertiary, #9ca3af)}.section-toggle-icon{font-size:.75rem;color:var(--text-tertiary, #9ca3af);transition:transform .2s}.section-content-wrapper{padding:16px 20px}.section-content-wrapper.drift-wrapper{padding:0}.drift-wrapper .drift-panel{border:none;border-radius:0;margin:0}.section-header-actions{display:flex;justify-content:flex-end;margin-bottom:16px}.coverage-articles{display:flex;flex-direction:column;gap:8px}.coverage-articles .article-link{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:12px 16px;background:var(--bg-secondary, #f9fafb);border-radius:8px;text-decoration:none;transition:background .15s}.coverage-articles .article-link:hover{background:var(--bg-tertiary, #f3f4f6)}.coverage-articles .article-source{font-size:.75rem;font-weight:600;color:var(--accent-color, #3b82f6);background:var(--bg-primary, white);padding:2px 8px;border-radius:4px;flex-shrink:0}.coverage-articles .article-title{flex:1;font-size:.9rem;color:var(--text-primary, #1f2937);min-width:200px}.coverage-articles .article-date{font-size:.75rem;color:var(--text-tertiary, #9ca3af);flex-shrink:0}.no-events{text-align:center;padding:30px;color:var(--text-tertiary, #9ca3af)}.no-events p{margin:0;font-size:.9rem}html[data-theme=dark] .collapsible-section{background:#1f2937;border-color:#374151}html[data-theme=dark] .section-toggle-btn{background:#374151;color:#f9fafb}html[data-theme=dark] .section-toggle-btn:hover{background:#4b5563}html[data-theme=dark] .section-toggle-btn.expanded{border-color:#4b5563}html[data-theme=dark] .section-count{background:#1f2937;color:#9ca3af}html[data-theme=dark] .section-hint{color:#6b7280}html[data-theme=dark] .coverage-articles .article-link{background:#374151}html[data-theme=dark] .coverage-articles .article-link:hover{background:#4b5563}html[data-theme=dark] .coverage-articles .article-source{background:#1f2937}html[data-theme=dark] .coverage-articles .article-title{color:#f9fafb}.collection-article-item{display:flex;align-items:flex-start;gap:12px;padding:12px;background:var(--card-bg, #fff);border:1px solid var(--border-color, #e0e0e0);border-radius:8px;transition:border-color .2s,box-shadow .2s}.collection-article-item:hover{border-color:var(--accent-color, #4f46e5);box-shadow:0 2px 8px #0000000d}.collection-article-item .article-info{flex:1;min-width:0;display:flex;gap:12px}.collection-article-item .article-thumbnail{width:80px;height:60px;-o-object-fit:cover;object-fit:cover;border-radius:6px;flex-shrink:0}.collection-article-item .article-details{flex:1;min-width:0}.collection-article-item .article-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}.collection-article-item .article-source{display:flex;align-items:center;gap:4px;max-width:150px;min-width:0;overflow:visible}.collection-article-item .article-source .source-name{font-weight:600;font-size:13px;color:var(--text-primary, #333);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:0}.collection-article-item .article-source .source-edit-btn{flex-shrink:0;opacity:0;background:none;border:none;padding:2px;cursor:pointer;font-size:11px;transition:opacity .2s}.collection-article-item .article-source:hover .source-edit-btn,.collection-article-item .article-source .source-edit-btn:focus{opacity:1}.collection-article-item .article-time{font-size:12px;color:var(--text-tertiary, #999)}.collection-article-item .badge-inline{display:inline-flex;align-items:center;gap:2px;padding:1px 4px;border-radius:4px;font-size:.65rem;font-weight:500;white-space:nowrap}.collection-article-item .paywall-badge-inline{background-color:#fee2e2;color:#dc2626;border:1px solid #fca5a5;font-size:.7rem;padding:1px 4px}html[data-theme=dark] .collection-article-item .paywall-badge-inline{background-color:#7f1d1d;color:#fca5a5;border-color:#991b1b}.collection-article-item .article-title{margin:0;font-size:14px;font-weight:500;line-height:1.4}.collection-article-item .article-title a{color:var(--text-primary, #333);text-decoration:none;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.collection-article-item .article-title a:hover{color:var(--accent-color, #4f46e5)}.collection-article-item .article-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.collection-article-item .bookmark-btn{width:32px;height:32px;border:none;background:none;cursor:pointer;font-size:18px;border-radius:6px;transition:all .2s;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary, #999)}.collection-article-item .bookmark-btn:hover{background:var(--bg-hover, #f5f5f5)}.collection-article-item .bookmark-btn.bookmarked{color:#f59e0b}.collection-article-item .remove-btn{width:32px;height:32px;border:none;background:none;cursor:pointer;font-size:16px;border-radius:6px;transition:all .2s;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary, #999)}.collection-article-item .remove-btn:hover{background:#fee2e2;color:#dc2626}html[data-theme=dark] .collection-article-item{--card-bg: #1e1e1e;--border-color: #333;--text-primary: #fff;--text-secondary: #aaa;--text-tertiary: #777;--bg-hover: #2a2a2a}html[data-theme=dark] .collection-article-item:hover{box-shadow:0 2px 8px #0000004d}@media(max-width:640px){.collection-article-item{flex-direction:column;gap:8px}.collection-article-item .article-info{width:100%}.collection-article-item .article-actions{width:100%;justify-content:flex-end;padding-top:8px;border-top:1px solid var(--border-color, #e0e0e0)}.collection-article-item .article-meta{flex-wrap:wrap}.collection-article-item .article-source{max-width:120px}}.shareable-collection{display:flex;flex-direction:column;gap:16px}.collection-stats{display:flex;gap:20px;padding:12px;background:var(--bg-secondary, #f5f5f5);border-radius:8px;flex-wrap:wrap}.shareable-collection .stat-item{display:flex;align-items:center;gap:8px}.shareable-collection .stat-icon{font-size:20px}.shareable-collection .stat-content{display:flex;flex-direction:column}.shareable-collection .stat-value{font-size:16px;font-weight:600;color:#1f2937}.shareable-collection .stat-label{font-size:11px;color:#6b7280;text-transform:uppercase}html[data-theme=dark] .shareable-collection .stat-value{color:#f3f4f6}html[data-theme=dark] .shareable-collection .stat-label{color:#9ca3af}.bias-stat{flex-direction:column;gap:4px;min-width:100px}.bias-bar{display:flex;width:100%;height:8px;border-radius:4px;overflow:hidden;background:#ddd}.bias-segment{height:100%;transition:width .3s ease}.bias-segment.left{background:#3b82f6}.bias-segment.center{background:#8b5cf6}.bias-segment.right{background:#ef4444}.visibility-section{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.visibility-toggle-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid var(--border-color, #e5e7eb);border-radius:20px;background:var(--card-bg, #fff);cursor:pointer;font-size:14px;transition:all .2s ease}.visibility-toggle-btn:hover{background:var(--bg-hover, #f9fafb)}.visibility-toggle-btn.public{border-color:#059669;color:#059669}.visibility-toggle-btn.private{border-color:var(--text-secondary, #6b7280);color:var(--text-secondary, #6b7280)}.share-link-section{display:flex;flex:1;min-width:200px;gap:8px}.share-link-input{flex:1;padding:8px 12px;border:1px solid var(--border-color, #e5e7eb);border-radius:6px;font-size:13px;background:var(--input-bg, white);color:var(--text-secondary, #6b7280)}.copy-link-btn{padding:8px 16px;background:var(--accent-color, #4a90d9);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:13px;white-space:nowrap;transition:all .2s ease}.copy-link-btn:hover{background:var(--accent-color-dark, #3a7bc8)}.copy-link-btn.copied{background:#059669}.share-buttons{display:flex;gap:8px}.share-btn{width:36px;height:36px;border:none;border-radius:50%;cursor:pointer;font-size:16px;font-weight:600;color:#fff;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,opacity .2s ease}.share-btn:hover{transform:scale(1.1);opacity:.9}.share-btn.twitter{background:#000}.share-btn.facebook{background:#1877f2}.share-btn.linkedin{background:#0077b5}.share-btn.email{background:#666}.kyn-insight{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:8px}.insight-icon{font-size:20px}.kyn-insight p{margin:0;font-size:14px;color:#0369a1;line-height:1.5}.collection-articles{margin-top:8px}.articles-heading{font-size:14px;font-weight:600;margin:0 0 12px;color:var(--text-primary, #1f2937)}.no-articles{padding:24px;text-align:center;background:var(--bg-secondary, #f5f5f5);border-radius:8px}.no-articles p{margin:0 0 8px;color:var(--text-secondary, #6b7280)}.no-articles .hint{font-size:13px;color:var(--text-tertiary, #9ca3af)}.articles-list{display:flex;flex-direction:column;gap:8px}.article-item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px;background:var(--card-bg, #fff);border:1px solid var(--border-color, #e0e0e0);border-radius:8px;transition:border-color .2s}.article-item:hover{border-color:var(--accent-color, #4f46e5)}.article-row{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.article-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.shareable-collection .article-source{display:flex;align-items:center;gap:4px;min-width:0;max-width:150px}.shareable-collection .article-source .source-name{font-weight:600;font-size:13px;color:var(--text-primary, #333);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shareable-collection .article-source .source-edit-btn{flex-shrink:0;opacity:0;background:none;border:none;padding:2px;cursor:pointer;font-size:11px;transition:opacity .2s}.shareable-collection .article-source:hover .source-edit-btn,.shareable-collection .article-source .source-edit-btn:focus{opacity:1}.cred-badge,.bias-badge{font-size:11px;padding:2px 6px;border-radius:4px;font-weight:500;white-space:nowrap}.cred-badge.high{background:#dcfce7;color:#166534}.cred-badge.mixed{background:#fef3c7;color:#92400e}.cred-badge.low{background:#fee2e2;color:#991b1b}.cred-badge.unknown{background:#f3f4f6;color:#6b7280}.bias-badge.left{background:#dbeafe;color:#1e40af}.bias-badge.center-left{background:#e0e7ff;color:#3730a3}.bias-badge.center{background:#f3e8ff;color:#6b21a8}.bias-badge.center-right{background:#fce7f3;color:#9d174d}.bias-badge.right{background:#ffe4e6;color:#be123c}.bias-badge.unknown{background:#f3f4f6;color:#6b7280}.article-title{font-size:14px;font-weight:500;color:var(--text-primary, #333);text-decoration:none;line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.article-title:hover{color:var(--accent-color, #4f46e5)}.article-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.remove-article-btn{width:32px;height:32px;border:none;background:none;color:var(--text-tertiary, #999);font-size:16px;cursor:pointer;border-radius:6px;transition:all .2s;display:flex;align-items:center;justify-content:center}.remove-article-btn:hover{background:#fee2e2;color:#dc2626}html[data-theme=dark] .shareable-collection{--bg-secondary: #2a2a2a;--card-bg: #1e1e1e;--border-color: #333;--text-primary: #fff;--text-secondary: #aaa;--text-tertiary: #777;--input-bg: #2a2a2a}html[data-theme=dark] .kyn-insight{background:linear-gradient(135deg,#1e3a5f,#1e293b);border-color:#334155}html[data-theme=dark] .kyn-insight p{color:#7dd3fc}@media(max-width:640px){.collection-stats{justify-content:space-around}.visibility-section{flex-direction:column;align-items:stretch}.share-link-section{flex-direction:column}.share-buttons{justify-content:center}.article-item{flex-direction:column;align-items:stretch;gap:8px}.article-actions{justify-content:flex-end;border-top:1px solid var(--border-color, #e0e0e0);padding-top:8px}.article-meta{flex-wrap:wrap}}.collections-page{max-width:900px;margin:0 auto;padding:24px 16px;min-height:calc(100vh - 120px)}.collections-header{margin-bottom:24px;text-align:center}.collections-header h1{font-size:28px;font-weight:700;margin:0 0 8px;color:var(--text-primary)}.collections-subtitle{font-size:16px;color:var(--text-secondary);margin:0 0 16px}.collections-ratings-note{font-size:12px;color:var(--text-tertiary, #999);margin:-8px 0 16px;font-style:italic}.create-collection-btn{background:var(--accent-color, #4a90d9);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.create-collection-btn:hover{background:var(--accent-color-dark, #3a7bc8);transform:translateY(-1px)}.collections-loading,.collections-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary)}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin 1s linear infinite}.collections-error button{margin-top:16px;padding:10px 20px;background:var(--accent-color);color:#fff;border:none;border-radius:6px;cursor:pointer}.collections-empty{text-align:center;padding:40px 20px;background:var(--card-bg);border-radius:12px;border:1px solid var(--border-color)}.collections-empty .empty-icon{font-size:64px;margin-bottom:16px}.collections-empty h2{font-size:24px;font-weight:700;margin:0 0 12px;color:var(--text-primary)}.collections-empty .empty-description{font-size:16px;color:var(--text-secondary);max-width:500px;margin:0 auto 32px;line-height:1.5}.empty-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:32px;text-align:left}.feature-item{display:flex;gap:12px;padding:16px;background:var(--bg-secondary, #f5f5f5);border-radius:8px}.feature-icon{font-size:20px;color:var(--accent-color)}.feature-content{display:flex;flex-direction:column;gap:4px}.feature-content strong{font-size:14px;color:var(--text-primary)}.feature-content span{font-size:13px;color:var(--text-secondary)}.collections-list{display:flex;flex-direction:column;gap:16px}.collection-card{background:var(--card-bg, #fff);border:1px solid var(--border-color, #e0e0e0);border-radius:12px;overflow:hidden;transition:box-shadow .2s ease}.collection-card:hover{box-shadow:0 4px 12px #0000001a}.collection-card.expanded{border-color:var(--accent-color, #4f46e5)}.collection-header{display:flex;align-items:center;gap:12px;padding:16px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.collection-header:hover{background:var(--bg-hover, rgba(0, 0, 0, .02))}.collection-header .expand-icon{font-size:12px;color:var(--text-tertiary, #999);width:16px;flex-shrink:0;transition:color .2s ease}.collection-card.expanded .collection-header .expand-icon{color:var(--accent-color, #4f46e5)}.collection-info{flex:1;min-width:0}.collection-name{font-size:16px;font-weight:600;margin:0 0 4px;color:var(--text-primary, #333);display:flex;align-items:center;gap:6px}.collection-description{font-size:13px;color:var(--text-secondary, #666);margin:0;padding:0 16px 12px 44px;line-height:1.4}.description-label{font-weight:600;color:var(--text-tertiary, #999);font-size:11px;text-transform:uppercase;letter-spacing:.03em}.collection-meta{display:flex;gap:12px;font-size:13px;color:var(--text-tertiary, #999)}.article-count{color:var(--text-secondary, #666)}.credibility-score{font-weight:500}.credibility-score.high{color:#22c55e}.credibility-score.mixed{color:#f59e0b}.credibility-score.low{color:#ef4444}.collection-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}.action-btn{background:none;border:none;padding:6px;cursor:pointer;opacity:.5;transition:opacity .2s ease;font-size:14px;border-radius:4px}.action-btn:hover{opacity:1;background:var(--bg-hover, rgba(0, 0, 0, .05))}.collection-expanded{border-top:1px solid var(--border-color, #e0e0e0);padding:16px;background:var(--bg-secondary, #fafafa)}.collection-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:600;color:var(--text-primary)}.form-group input,.form-group textarea{padding:12px;border:1px solid var(--border-color);border-radius:8px;font-size:14px;background:var(--input-bg, white);color:var(--text-primary);transition:border-color .2s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-color)}.form-group textarea{resize:vertical;min-height:80px}.visibility-options{display:flex;flex-direction:column;gap:12px}.visibility-option{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-secondary, #f5f5f5);border-radius:8px;cursor:pointer;transition:background .2s ease}.visibility-option:hover{background:var(--bg-hover, #ececec)}.visibility-option input{width:18px;height:18px;accent-color:var(--accent-color)}.visibility-icon{font-size:20px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.cancel-btn{padding:10px 20px;background:var(--bg-secondary, #f5f5f5);border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:14px;cursor:pointer;color:var(--text-primary, #333)}.cancel-btn:hover{background:var(--bg-hover, #ececec)}.submit-btn{padding:10px 20px;background:var(--accent-color, #4f46e5);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer}.submit-btn:hover{background:var(--accent-color-dark, #4338ca)}.delete-confirm{text-align:center}.delete-confirm p{margin:0 0 16px;color:var(--text-primary)}.delete-warning{color:var(--text-secondary);font-size:14px}.delete-btn{padding:10px 20px;background:#ef4444;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer}.delete-btn:hover{background:#dc2626}.add-to-collection{display:flex;flex-direction:column;gap:16px}.article-preview{padding:12px;background:var(--bg-secondary, #f5f5f5);border-radius:8px;display:flex;flex-direction:column;gap:4px}.article-preview strong{font-size:14px;color:var(--text-primary);line-height:1.4}.collections-page .article-source{font-size:12px;color:var(--text-secondary)}.no-collections{text-align:center;padding:20px}.no-collections p{margin:0 0 16px;color:var(--text-secondary)}.collection-select p{margin:0 0 12px;font-weight:500;color:var(--text-primary)}.collection-options{display:flex;flex-direction:column;gap:8px;max-height:300px;overflow-y:auto}.collection-option{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-secondary, #f5f5f5);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;text-align:left;transition:all .2s ease}.collection-option:hover{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.collection-option .collection-icon{font-size:20px}.collection-option .collection-name{flex:1;font-weight:500}.collection-option .collection-count{font-size:12px;opacity:.7}.create-new-btn{margin-top:12px;padding:10px;background:none;border:2px dashed var(--border-color);border-radius:8px;color:var(--text-secondary);cursor:pointer;font-size:14px;width:100%;transition:all .2s ease}.create-new-btn:hover{border-color:var(--accent-color);color:var(--accent-color)}html[data-theme=dark] .collections-page{--card-bg: #1e1e1e;--bg-secondary: #2a2a2a;--bg-hover: #333;--border-color: #333;--text-primary: #fff;--text-secondary: #aaa;--text-tertiary: #777;--input-bg: #2a2a2a}html[data-theme=dark] .feature-item{background:#2a2a2a}html[data-theme=dark] .collection-card:hover{box-shadow:0 4px 12px #0000004d}html[data-theme=dark] .collection-expanded{background:#252525}@media(max-width:640px){.collections-page{padding:16px 12px}.collections-header h1{font-size:24px}.empty-features{grid-template-columns:1fr}.collection-header{flex-wrap:wrap}.collection-info{flex:1 1 calc(100% - 50px);order:1}.collection-header .expand-icon{order:0}.collection-actions{order:2;margin-left:auto}.collection-description{padding-left:16px}.form-actions{flex-direction:column}.form-actions button{width:100%}}.public-view .public-collection-container{max-width:800px;margin:0 auto}.public-cta{text-align:center;padding:32px 24px;margin-top:32px;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:12px}.public-cta h3{margin:0 0 12px;font-size:1.25rem;color:var(--text-primary, #333)}.public-cta p{margin:0 0 20px;color:var(--text-secondary, #666);font-size:.95rem}.public-cta .btn-primary{display:inline-block;padding:12px 32px;background:var(--accent-color, #4f46e5);color:#fff;text-decoration:none;border-radius:8px;font-weight:600;transition:background .2s}.public-cta .btn-primary:hover{background:var(--accent-color-dark, #4338ca)}html[data-theme=dark] .public-cta{background:linear-gradient(135deg,#1e3a5f,#1e293b);border-color:#334155}html[data-theme=dark] .public-cta h3{color:#fff}html[data-theme=dark] .public-cta p{color:#94a3b8}.landing-page{min-height:100vh;background:#0a0a0f;color:#fff!important;overflow-x:hidden}.landing-page h1,.landing-page h2,.landing-page h3,.landing-page h4{color:#fff!important}.landing-page p{color:#e2e8f0!important}.hero-section{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:120px 24px 80px;overflow:hidden}.hero-background{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;z-index:0}.gradient-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.6;transition:transform .1s ease-out}.orb-1{width:600px;height:600px;background:linear-gradient(135deg,#6366f1,#8b5cf6);top:-200px;right:-100px}.orb-2{width:500px;height:500px;background:linear-gradient(135deg,#06b6d4,#3b82f6);bottom:-150px;left:-100px}.orb-3{width:400px;height:400px;background:linear-gradient(135deg,#f59e0b,#ef4444);top:40%;left:50%;opacity:.3}.hero-content{position:relative;z-index:1;text-align:center;max-width:800px}.hero-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#6366f126;border:1px solid rgba(99,102,241,.3);border-radius:100px;font-size:14px;color:#a5b4fc;margin-bottom:24px}.badge-icon{font-size:16px}.hero-title{font-size:clamp(40px,6vw,72px);font-weight:700;line-height:1.1;margin:0 0 24px;letter-spacing:-.02em}.gradient-text{background:linear-gradient(135deg,#6366f1,#06b6d4,#10b981);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:clamp(18px,2.5vw,22px);color:#e2e8f0;line-height:1.6;max-width:600px;margin:0 auto 40px}.hero-subtitle em{color:#f87171;font-style:normal;font-weight:600}.hero-cta{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-bottom:48px}.cta-primary{display:inline-flex;align-items:center;gap:8px;padding:16px 32px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:18px;font-weight:600;border-radius:12px;text-decoration:none;transition:all .3s ease;box-shadow:0 4px 24px #6366f166}.cta-primary:hover{transform:translateY(-2px);box-shadow:0 8px 32px #6366f180}.cta-primary.large{padding:20px 40px;font-size:20px}.cta-arrow{transition:transform .3s ease}.cta-primary:hover .cta-arrow{transform:translate(4px)}.cta-secondary{display:inline-flex;align-items:center;padding:16px 32px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#fff;font-size:18px;font-weight:500;border-radius:12px;text-decoration:none;transition:all .3s ease}.cta-secondary:hover{background:#ffffff1a;border-color:#fff3}.hero-stats{display:flex;align-items:center;justify-content:center;gap:32px;flex-wrap:wrap}.stat{text-align:center}.landing-page .stat-value{display:block;font-size:24px;font-weight:700;color:#fff}.landing-page .stat-label{font-size:14px;color:#94a3b8}.stat-divider{width:1px;height:40px;background:#ffffff1a}.hero-preview{position:relative;z-index:1;margin-top:60px;width:100%;max-width:900px;padding:0 24px}.preview-window{background:#1a1a24;border-radius:16px;border:1px solid rgba(255,255,255,.1);overflow:hidden;box-shadow:0 4px 6px #0000001a,0 20px 40px #0000004d,0 0 0 1px #ffffff0d inset}.preview-header{display:flex;align-items:center;padding:12px 16px;background:#12121a;border-bottom:1px solid rgba(255,255,255,.05)}.preview-dots{display:flex;gap:8px}.preview-dots span{width:12px;height:12px;border-radius:50%;background:#3a3a4a}.preview-dots span:nth-child(1){background:#ef4444}.preview-dots span:nth-child(2){background:#f59e0b}.preview-dots span:nth-child(3){background:#22c55e}.preview-url{flex:1;text-align:center;font-size:13px;color:#64748b}.preview-content{padding:24px;display:flex;gap:24px}.preview-article{flex:1;background:#0f0f17;border-radius:12px;padding:20px;border:1px solid rgba(255,255,255,.05)}.preview-source{display:flex;align-items:center;gap:12px;margin-bottom:12px}.preview-source-name{font-weight:600;color:#e2e8f0}.preview-badge{padding:4px 10px;border-radius:100px;font-size:12px;font-weight:500}.preview-badge.credibility-high{background:#22c55e26;color:#4ade80}.preview-badge.bias-center{background:#9ca3af26;color:#9ca3af}.preview-title{font-size:18px;font-weight:600;color:#fff;margin-bottom:16px;line-height:1.4}.preview-actions{display:flex;gap:12px;flex-wrap:wrap}.preview-action{padding:8px 12px;background:#6366f11a;border:1px solid rgba(99,102,241,.2);border-radius:8px;font-size:13px;color:#a5b4fc}.preview-analysis{flex:1;background:#0f0f17;border-radius:12px;padding:20px;border:1px solid rgba(99,102,241,.2)}.analysis-header{display:flex;align-items:center;gap:8px;font-weight:600;color:#a5b4fc;margin-bottom:16px;font-size:15px}.analysis-icon{font-size:18px}.analysis-content{background:#f8fafc;border-radius:8px;padding:16px}.qa-item{display:flex;flex-direction:column;gap:8px}.qa-item .q{color:#374151;font-size:14px}.qa-item .a{display:flex;align-items:center;gap:8px;color:#059669;font-weight:500}.problem-section{padding:120px 24px;background:linear-gradient(180deg,#0a0a0f,#0f0f17)}.section-content{max-width:1200px;margin:0 auto}.section-header{text-align:center;margin-bottom:64px}.section-label{display:inline-block;padding:6px 14px;background:#6366f11a;border-radius:100px;font-size:14px;font-weight:500;color:#a5b4fc;margin-bottom:16px}.landing-page .section-title{font-size:clamp(32px,4vw,48px);font-weight:700;margin:0 0 16px;letter-spacing:-.02em;color:#fff!important}.landing-page .section-subtitle{font-size:18px;color:#fff!important;max-width:600px;margin:0 auto;line-height:1.6}.problem-section .section-title{text-align:center;color:#fff!important}.problem-section .section-subtitle{text-align:center;margin-bottom:64px;color:#fff!important}.features-section .section-title,.how-section .section-title,.cta-section .section-title,.features-section .section-subtitle,.how-section .section-subtitle,.cta-section .section-subtitle{color:#fff!important}.problem-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px}.problem-section .problem-card{background:#ffffff08!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:16px;padding:32px}.problem-section .problem-icon{font-size:40px;margin-bottom:16px}.problem-section .problem-card h3{font-size:20px;font-weight:600;margin:0 0 12px;color:#fff!important}.problem-section .problem-card p{font-size:15px;color:#fff!important;line-height:1.6;margin:0}.features-section{padding:120px 24px;background:#0f0f17}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.features-section .feature-card{background:#ffffff0a!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:16px;padding:28px}.features-section .feature-icon{font-size:32px;margin-bottom:16px}.features-section .feature-card h3{font-size:20px;font-weight:600;margin:0 0 12px;color:#fff!important}.features-section .feature-card p{font-size:15px;color:#fff!important;line-height:1.6;margin:0}.how-section{padding:120px 24px;background:linear-gradient(180deg,#0f0f17,#0a0a0f)}.steps-container{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap;margin-top:64px}.how-section .step{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:240px;background:transparent!important;border:none!important;padding:0!important}.how-section .step-number{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#6366f1,#8b5cf6)!important;border-radius:50%;font-size:24px;font-weight:700;color:#fff!important;margin-bottom:20px}.how-section .step-content h3{font-size:20px;font-weight:600;margin:0 0 8px;color:#fff!important}.how-section .step-content p{font-size:15px;color:#e2e8f0!important;margin:0;line-height:1.5}.step-connector{width:80px;height:2px;background:linear-gradient(90deg,#6366f1,#8b5cf6);opacity:.3}.trust-section{padding:80px 24px;background:#0a0a0f}.trust-badges{display:flex;justify-content:center;gap:48px;flex-wrap:wrap}.trust-badge{display:flex;align-items:center;gap:12px;color:#fff;font-size:16px}.trust-icon{font-size:24px}.cta-section{padding:120px 24px;background:linear-gradient(180deg,#0a0a0f,#12121a);text-align:center}.cta-content h2{font-size:clamp(32px,4vw,48px);font-weight:700;margin:0 0 16px;color:#fff}.cta-content>p{font-size:18px;color:#fff;margin:0 0 40px}.cta-note{margin-top:16px;font-size:14px;color:#e2e8f0}.landing-page .landing-footer{padding:48px 24px;background:#0a0a0f;border-top:1px solid rgba(255,255,255,.05)}.landing-page .footer-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:24px}.landing-page .footer-brand{display:flex;align-items:center;gap:12px}.landing-page .footer-logo{font-size:24px;font-weight:700;color:#fff!important}.landing-page .footer-brand p{margin:0;color:#cbd5e1!important}.landing-page .footer-links{display:flex;gap:32px}.landing-page .footer-links a{color:#e2e8f0!important;text-decoration:none;font-size:15px;transition:color .2s}.landing-page .footer-links a:hover{color:#fff!important}.landing-page .footer-copyright{color:#cbd5e1!important;font-size:14px}@media(max-width:768px){.hero-section{padding:100px 20px 60px}.preview-content{flex-direction:column}.feature-card.featured{grid-column:span 1}.step-connector{display:none}.steps-container{flex-direction:column}.footer-content{flex-direction:column;text-align:center}.hero-stats{flex-direction:column;gap:16px}.stat-divider{display:none}}.jefferson-section{padding:64px 0 48px;background:#0f0f0f;text-align:center}.jefferson-rule{width:80px;height:2px;background:#c9a84c;margin:0 auto 32px}.jefferson-content{max-width:760px;margin:0 auto;padding:0 28px}.jefferson-eyebrow{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;color:#c9a84c;margin-bottom:20px;font-family:Georgia,serif}.jefferson-quote{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.5rem,3.5vw,2.4rem);font-style:italic;line-height:1.5;color:#f5f0e8;margin:0 0 24px;font-weight:400;quotes:none}.jefferson-context{font-size:1rem;color:#9ca3af;line-height:1.7;margin:0}.jefferson-context strong{color:#f5f0e8}.hero-tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px;justify-content:center}.tool-pill{background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#ffffffb3;padding:4px 12px;border-radius:100px;font-size:.75rem;letter-spacing:.02em}.demo-section{padding:80px 20px;background:#f8faff}[data-theme=dark] .demo-section{background:#111827}.demo-panel{max-width:680px;margin:0 auto;background:#fff;border-radius:12px;border:1px solid #e5e7eb;box-shadow:0 8px 40px #0000001a;overflow:hidden}[data-theme=dark] .demo-panel{background:#1f2937;border-color:#374151}.demo-panel-header{display:flex;align-items:center;gap:10px;padding:14px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.demo-panel-icon{font-size:1.1rem}.demo-panel-title{font-weight:600;font-size:.9rem}.demo-panel-source{margin-left:auto;font-size:.72rem;opacity:.8}.demo-quote-block{padding:16px 20px;background:#f0f4ff;border-left:4px solid #667eea;margin:0}[data-theme=dark] .demo-quote-block{background:#1a2436}.demo-quote-label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#6b7280;margin-bottom:6px}.demo-quote-text{font-style:italic;font-size:.9rem;color:#1f2937;line-height:1.5;margin-bottom:4px}[data-theme=dark] .demo-quote-text{color:#f3f4f6}.demo-quote-speaker{font-size:.78rem;color:#6b7280}.demo-verdict{display:flex;align-items:center;gap:10px;padding:14px 20px 4px}.demo-verdict-badge{color:#fff;padding:3px 12px;border-radius:100px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.demo-verdict-confidence{font-size:.78rem;color:#6b7280}.demo-explanation{padding:8px 20px 12px;font-size:.85rem;color:#374151;line-height:1.65;margin:0}[data-theme=dark] .demo-explanation{color:#d1d5db}.demo-claims-header{padding:8px 20px 6px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#6b7280;border-top:1px solid #f3f4f6}[data-theme=dark] .demo-claims-header{border-color:#374151}.demo-claim{display:flex;gap:12px;padding:8px 20px;align-items:flex-start}.demo-claim+.demo-claim{border-top:1px solid #f9fafb}[data-theme=dark] .demo-claim+.demo-claim{border-color:#2d3748}.demo-claim-status{font-weight:700;font-size:.9rem;min-width:16px;padding-top:1px}.demo-claim-text{font-size:.83rem;font-weight:600;color:#1f2937;margin-bottom:2px}[data-theme=dark] .demo-claim-text{color:#f3f4f6}.demo-claim-evidence{font-size:.78rem;color:#6b7280;line-height:1.5}.demo-sources{padding:10px 20px 14px;border-top:1px solid #f3f4f6}[data-theme=dark] .demo-sources{border-color:#374151}.demo-sources-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af;margin-bottom:6px}.demo-source-item{font-size:.78rem;color:#4f46e5;margin-bottom:3px}[data-theme=dark] .demo-source-item{color:#818cf8}.demo-panel-footer{padding:12px 20px;background:#f9fafb;border-top:1px solid #e5e7eb;font-size:.78rem;color:#6b7280;font-style:italic;text-align:center}[data-theme=dark] .demo-panel-footer{background:#111827;border-color:#374151}.cta-jefferson-mark{font-family:Georgia,serif;font-size:6rem;line-height:.5;color:#667eea4d;margin-bottom:16px;font-style:italic}.App{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-primary)}.navbar{background:var(--bg-primary);color:var(--text-primary);padding:var(--space-4) 0 var(--space-6) 0;border-bottom:4px double var(--border-dark);box-shadow:none}.nav-container{max-width:1280px;margin:0 auto;padding:0 var(--space-8);display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.brand-header{text-align:center}.nav-brand{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary);text-decoration:none;display:flex;align-items:center;gap:var(--space-2)}.brand-title{display:flex;flex-direction:column;line-height:1.1;text-align:center}.brand-main{font-family:Pinyon Script,cursive;font-size:2.8rem;font-weight:400;letter-spacing:1px;color:var(--text-primary);text-transform:none;-webkit-text-stroke:.5px var(--text-primary)}.brand-subtitle{font-family:Georgia,serif;font-size:.65rem;font-weight:var(--font-normal);letter-spacing:.5px;text-transform:uppercase;color:var(--text-tertiary);margin-top:2px;border-top:1px solid var(--border-light);padding-top:3px}.brand-version{font-family:SF Mono,Monaco,Consolas,monospace;font-size:.55rem;color:var(--text-quaternary, var(--text-tertiary));opacity:.7;margin-left:4px}.brand-version-check{background:none;border:none;padding:1px 6px;margin-left:6px;color:var(--brand-primary, #2563eb);opacity:.85;cursor:pointer;font-size:.6rem;font-family:inherit;font-weight:600;text-transform:uppercase;letter-spacing:.04em;line-height:1.2;vertical-align:middle;border-radius:3px;transition:background .15s,opacity .15s}.brand-version-check:hover{opacity:1;background:#2563eb1a}.nav-links{display:flex;gap:0;align-items:center}.nav-links>div{display:flex;align-items:center}.nav-links>div:not(:last-child):after{content:"";display:inline-block;width:1px;height:14px;background-color:var(--border-medium);margin:0 var(--space-4)}.nav-link{color:var(--text-primary);text-decoration:none;font-weight:var(--font-medium);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.3px;transition:var(--transition-fast);font-family:Franklin Gothic Medium,Arial Narrow,Arial,sans-serif;white-space:nowrap;position:relative;padding-bottom:6px}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:3px;background-color:#667eea;transform:scaleX(0);transform-origin:center;transition:transform .2s ease}.nav-link:hover:after{transform:scaleX(1)}.nav-link.active{color:#667eea!important;font-weight:700!important}.nav-link.active:after{transform:scaleX(1);background-color:#667eea}.nav-link:hover{color:#667eea}.nav-user{color:var(--text-tertiary);font-size:.75rem;font-family:Georgia,serif;font-style:italic;padding-left:var(--space-2);margin-right:var(--space-4)}.nav-logout{background:var(--text-primary);color:var(--text-inverse);border:1px solid var(--text-primary);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;font-weight:var(--font-medium);margin-left:var(--space-2);font-size:.7rem;text-transform:uppercase;letter-spacing:.5px;transition:var(--transition-fast)}.nav-logout:hover{background:var(--bg-primary);color:var(--text-primary)}.main-content{flex:1;padding:var(--space-8);background:var(--bg-primary);max-width:1280px;margin:0 auto;width:100%}.home{max-width:1200px;margin:0 auto}.hero{text-align:center;padding:var(--space-16) var(--space-8);border-bottom:3px double var(--text-primary);margin-bottom:var(--space-12)}.hero h1{font-size:var(--text-4xl);margin-bottom:var(--space-4);font-family:Playfair Display,Georgia,serif;color:var(--text-primary);font-weight:900;letter-spacing:-1px}.hero p{font-size:var(--text-lg);color:var(--text-tertiary);font-family:Georgia,serif;font-style:italic;max-width:600px;margin:0 auto var(--space-8) auto}.cta-button{display:inline-block;padding:var(--space-3) var(--space-8);background:var(--text-primary);color:var(--text-inverse);text-decoration:none;border-radius:var(--radius-sm);font-weight:var(--font-semibold);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.5px;transition:var(--transition-fast);border:2px solid var(--text-primary)}.cta-button:hover{background:var(--bg-primary);color:var(--text-primary)}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-8);padding:var(--space-8);margin-top:var(--space-8)}.feature-card{background:var(--bg-card);padding:var(--space-8);border-radius:0;border:1px solid var(--border-light);box-shadow:none;text-align:center;transition:var(--transition-fast)}.feature-card:hover{border-color:var(--text-primary)}.feature-card h3{font-family:Playfair Display,Georgia,serif;font-size:var(--text-2xl);margin-bottom:var(--space-4);color:var(--text-primary);font-weight:var(--font-bold)}.feature-card p{color:var(--text-tertiary);line-height:var(--leading-relaxed);font-family:Georgia,serif}.footer{background:var(--text-primary);color:var(--text-inverse);text-align:center;padding:var(--space-8);margin-top:var(--space-16);border-top:3px double var(--text-primary);font-family:Georgia,serif;font-size:var(--text-sm)}.footer-content{max-width:1200px;margin:0 auto}.footer-content p{margin:0 0 var(--space-3) 0}.footer-links{display:flex;justify-content:center;align-items:center;gap:var(--space-2);flex-wrap:wrap}.footer-links a{color:var(--text-muted);text-decoration:none;font-size:var(--text-xs);transition:var(--transition-fast)}.footer-links a:hover{color:var(--text-inverse);text-decoration:underline}.footer-divider{color:var(--text-muted);font-size:.75rem}.admin-badge{background:var(--brand-gradient);color:var(--text-inverse);font-size:.65rem;padding:2px 6px;border-radius:var(--radius-sm);margin-left:var(--space-2);font-style:normal;font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.5px}.nav-admin{background:var(--brand-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:var(--font-bold)!important}.nav-admin-plain{color:var(--text-primary)!important;font-weight:var(--font-semibold)!important;background:none!important;-webkit-text-fill-color:var(--text-primary)!important}.nav-admin-plain:hover{color:var(--text-secondary)!important;-webkit-text-fill-color:var(--text-secondary)!important}.impersonation-global-banner{background:linear-gradient(135deg,var(--color-warning) 0%,#d97706 100%);color:var(--text-inverse);padding:var(--space-3) var(--space-8);display:flex;justify-content:center;align-items:center;gap:var(--space-8);font-size:var(--text-sm)}.impersonation-global-banner strong{font-weight:var(--font-semibold)}.btn-return-admin{background:var(--bg-primary);color:#d97706;border:none;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-weight:var(--font-semibold);cursor:pointer;transition:var(--transition-fast);font-size:var(--text-sm)}.btn-return-admin:hover{background:var(--color-warning-bg);transform:translateY(-1px)}body.dark-mode .nav-admin-plain{color:var(--text-primary)!important;-webkit-text-fill-color:var(--text-primary)!important}body.dark-mode .nav-admin-plain:hover{color:var(--text-inverse)!important;-webkit-text-fill-color:var(--text-inverse)!important}@media(max-width:768px){.hero h1{font-size:2.5rem}.hero p{font-size:var(--text-base)}.nav-container{flex-direction:column;gap:var(--space-4)}.features{grid-template-columns:1fr;padding:var(--space-4)}.brand-main{font-size:2.2rem}.nav-links{flex-wrap:wrap;gap:var(--space-4);justify-content:center}.impersonation-global-banner{flex-direction:column;gap:var(--space-3);padding:var(--space-4);text-align:center}}@media(max-width:1200px){.nav-links>div:not(:last-child):after{margin:0 var(--space-2);height:12px}.nav-link{font-size:.7rem;letter-spacing:.2px}.nav-user{font-size:.65rem}.nav-logout{font-size:.65rem;padding:var(--space-1) var(--space-2)}}@media(max-width:900px){.nav-container{flex-direction:column;gap:var(--space-4)}.nav-links{flex-wrap:wrap;justify-content:center;gap:var(--space-1) 0}.nav-links>div:not(:last-child):after{margin:0 var(--space-2);height:10px}}.has-tooltip{position:relative}.has-tooltip:after{content:attr(data-tooltip);display:none;position:absolute;z-index:9999;padding:.5rem .75rem;font-size:.75rem;font-weight:400;color:#fff;background:#1f2937;border-radius:6px;box-shadow:0 4px 12px #00000026;white-space:nowrap;pointer-events:none;top:100%;left:50%;transform:translate(-50%);margin-top:6px}.has-tooltip:before{content:"";display:none;position:absolute;z-index:9999;bottom:0;left:50%;transform:translate(-50%) translateY(100%);border:6px solid transparent;border-bottom-color:#1f2937}.has-tooltip:hover:after,.has-tooltip:hover:before{display:block}.has-tooltip.tooltip-left:after{left:0;transform:none}.has-tooltip.tooltip-left:before{left:12px;transform:translateY(100%)}.has-tooltip.tooltip-right:after{left:auto;right:0;transform:none}.has-tooltip.tooltip-right:before{left:auto;right:12px;transform:translateY(100%)}body.dark-mode .has-tooltip:after{background:#374151}body.dark-mode .has-tooltip:before{border-bottom-color:#374151}.dark-mode{background-color:#121212;color:#e8e8e8}.dark-mode .navbar{background:#1a1a1a;border-bottom-color:#333}.dark-mode .brand-main{color:#fff}.dark-mode .brand-subtitle{color:#999;border-top-color:#333}.dark-mode .nav-link{color:#e8e8e8}.dark-mode .nav-link:hover{color:#6fa8dc}.dark-mode .nav-user{color:#999}.dark-mode .nav-logout{background:#fff;color:#121212;border-color:#fff}.dark-mode .nav-logout:hover{background:#121212;color:#fff}.dark-mode .nav-links>div:not(:last-child):after{background-color:#555}.dark-mode .main-content{background:#121212}.dark-mode .hero{border-bottom-color:#333}.dark-mode .hero h1{color:#fff}.dark-mode .hero p{color:#999}.dark-mode .cta-button{background:#fff;color:#121212;border-color:#fff}.dark-mode .cta-button:hover{background:#121212;color:#fff}.dark-mode .feature-card{background:#1a1a1a;border-color:#333}.dark-mode .feature-card:hover{border-color:#fff}.dark-mode .feature-card h3{color:#fff}.dark-mode .feature-card p{color:#999}.dark-mode .footer{background:#1a1a1a;border-top-color:#333;color:#e8e8e8}.dark-mode .news-header{border-bottom-color:#333}.dark-mode .news-header h1{color:#fff}.dark-mode .news-controls{background:#1a1a1a;border-color:#333}.dark-mode .category-filter label,.dark-mode .search-container label{color:#999}.dark-mode .category-filter select,.dark-mode .search-input{background:#121212;color:#e8e8e8;border-color:#333}.dark-mode .search-button,.dark-mode .save-search-button{background:#fff;color:#121212;border-color:#fff}.dark-mode .search-button:hover,.dark-mode .save-search-button:hover{background:#121212;color:#fff}.dark-mode .clear-button{background:#121212;color:#fff;border-color:#fff}.dark-mode .clear-button:hover{background:#fff;color:#121212}.dark-mode .saved-search-tag{background:#fff;color:#121212;border-color:#fff}.dark-mode .saved-search-tag:hover{background:#121212;color:#fff}.dark-mode .article-card{background:#1a1a1a;border-bottom-color:#333}.dark-mode .article-card:hover{border-bottom-color:#fff}.dark-mode .article-category{color:#6fa8dc}.dark-mode .article-title{color:#fff}.dark-mode .article-title a{color:inherit}.dark-mode .article-title a:hover{color:#6fa8dc}.dark-mode .article-title a:visited,.dark-mode .article-description{color:#999}.dark-mode .article-meta{border-top-color:#333}.dark-mode .article-source{color:#999}.dark-mode .article-date{color:#666}.dark-mode .read-more{background:#fff;color:#121212;border-color:#fff}.dark-mode .read-more:hover{background:#121212;color:#fff}.dark-mode .bookmark-button{background:#121212;color:#fff;border-color:#fff}.dark-mode .bookmark-button:hover,.dark-mode .bookmark-button.bookmarked{background:#fff;color:#121212}.dark-mode .loading,.dark-mode .no-articles{color:#999}.dark-mode .error-message{background:#1a1a1a;border-left-color:#fff;color:#999}.dark-mode .profile-container{background:#1a1a1a;color:#e8e8e8}.dark-mode input,.dark-mode textarea,.dark-mode select{background:#121212;color:#e8e8e8;border-color:#333}.dark-mode button{background:#fff;color:#121212}.dark-mode button:hover{background:#121212;color:#fff;border-color:#fff}.dark-mode .about-section{background:#1a1a24;border-color:#333}.dark-mode .about-section h2,.dark-mode .problem-section h2,.dark-mode .solution-section h2,.dark-mode .features-section h2,.dark-mode .about-content h2{color:#fff!important}.dark-mode .about-section p{color:#e2e8f0!important}.dark-mode .about-section p strong{color:#fff!important}.dark-mode .features-hint{color:#e2e8f0!important}.dark-mode .about-container button.feature-card,.dark-mode button.feature-card{background:#1e1e2e!important;border-color:#3a3a4a!important;color:#e2e8f0}.dark-mode .about-container button.feature-card:hover,.dark-mode button.feature-card:hover{background:#252538!important;border-color:#818cf8!important;color:#e2e8f0!important}.dark-mode .about-container button.feature-card h3,.dark-mode button.feature-card h3{color:#fff!important}.dark-mode .about-container button.feature-card p,.dark-mode button.feature-card p{color:#e2e8f0!important}.dark-mode .feature-example{background:#818cf840!important;color:#fff!important}.dark-mode .feature-expand-hint{color:#a5b4fc!important}.dark-mode .philosophy-section{background:linear-gradient(135deg,#2d2a1f,#3d3520)!important}.dark-mode .philosophy-section h2{color:#fcd34d!important}.dark-mode .philosophy-section p{color:#fef3c7!important}.dark-mode .about-cta{background:#1a1a24;border-color:#333}.dark-mode .about-cta h2{color:#f1f5f9!important}.dark-mode .landing-page .feature-card,.dark-mode .features-section .feature-card{background:#ffffff0a!important;border-color:#ffffff1a!important}.dark-mode .landing-page .feature-card h3,.dark-mode .features-section .feature-card h3,.dark-mode .landing-page .feature-card p,.dark-mode .features-section .feature-card p,.dark-mode .landing-page .section-title,.dark-mode .features-section .section-title,.dark-mode .how-section .section-title,.dark-mode .problem-section .section-title,.dark-mode .cta-section .section-title,.dark-mode .landing-page .section-subtitle,.dark-mode .cta-section p,.dark-mode .problem-card h3,.dark-mode .problem-card p,.dark-mode .step-content h3{color:#fff!important}.dark-mode .step-content p{color:#e2e8f0!important}.dark-mode .landing-footer,.dark-mode .landing-page footer{color:#e2e8f0!important}.dark-mode .footer-brand p{color:#94a3b8!important}.dark-mode .footer-links a{color:#e2e8f0!important}.dark-mode .footer-copyright{color:#94a3b8!important}.dark-mode .trust-badge{color:#fff!important}.dark-mode *{transition:background-color .3s ease,color .3s ease,border-color .3s ease}button,a,input,select,textarea{transition:all .2s ease}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #0000001a}button:active:not(:disabled){transform:translateY(0)}input:focus,select:focus,textarea:focus{transform:scale(1.01);box-shadow:0 0 0 3px #3b82f61a}.feature-card,.article-card,.auth-card{transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover,.article-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px #0000001a}a{position:relative;transition:color .2s ease}a:after{content:"";position:absolute;width:0;height:2px;bottom:-2px;left:0;background-color:currentColor;transition:width .3s ease}a:hover:after{width:100%}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner{animation:spin 1s linear infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.slide-in-right{animation:slideInRight .3s ease}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.slide-in-left{animation:slideInLeft .3s ease}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.scale-in{animation:scaleIn .3s ease}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.pulse{animation:pulse 2s ease-in-out infinite}.page-transition-enter{opacity:0;transform:translateY(20px)}.page-transition-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s,transform .3s}.page-transition-exit{opacity:1;transform:translateY(0)}.page-transition-exit-active{opacity:0;transform:translateY(-20px);transition:opacity .3s,transform .3s}.ripple{position:relative;overflow:hidden}.ripple:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff80;transform:translate(-50%,-50%);transition:width .6s,height .6s}.ripple:active:after{width:300px;height:300px}@keyframes skeleton{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.skeleton{animation:skeleton 1.5s ease-in-out infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200px 100%}@keyframes toastSlideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toastSlideOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.toast-enter{animation:toastSlideIn .3s ease}.toast-exit{animation:toastSlideOut .3s ease}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.card-hover:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--border-medium)}.card-clickable{cursor:pointer}.card-clickable:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--border-medium)}.card-clickable:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.card-sm{padding:var(--space-3)}.card-lg{padding:var(--space-6)}.card-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--space-3);margin-bottom:var(--space-3);border-bottom:1px solid var(--border-light)}.card-header-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.card-header-subtitle{font-size:var(--text-sm);color:var(--text-tertiary);margin-top:var(--space-1)}.card-body{flex:1}.card-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-3);margin-top:var(--space-3);border-top:1px solid var(--border-light)}.card-bordered{border-width:2px}.card-flat{box-shadow:none;border:1px solid var(--border-light)}.card-elevated{box-shadow:var(--shadow-lg);border:none}.article-card{display:flex;flex-direction:column;gap:var(--space-3)}.article-card-image{width:100%;height:180px;-o-object-fit:cover;object-fit:cover;border-radius:var(--radius-md);background:var(--bg-tertiary)}.article-card-content{flex:1;display:flex;flex-direction:column;gap:var(--space-2)}.article-card-source{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-tertiary)}.article-card-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary);line-height:var(--leading-tight);margin:0}.article-card-description{font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-normal);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.article-card-meta{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-xs);color:var(--text-muted);margin-top:auto}.source-card{display:flex;align-items:center;gap:var(--space-3)}.source-card-icon{width:48px;height:48px;border-radius:var(--radius-md);background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;font-size:var(--text-xl);flex-shrink:0}.source-card-info{flex:1;min-width:0}.source-card-name{font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.source-card-domain{font-size:var(--text-sm);color:var(--text-tertiary)}.source-card-badges{display:flex;gap:var(--space-2);flex-shrink:0}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-secondary) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:1em;margin-bottom:var(--space-2)}.skeleton-text-sm{height:.875em;width:60%}.skeleton-text-lg{height:1.25em}.skeleton-title{height:1.5em;width:80%;margin-bottom:var(--space-3)}.skeleton-paragraph{height:1em;margin-bottom:var(--space-2)}.skeleton-paragraph:last-child{width:70%}.skeleton-avatar{width:40px;height:40px;border-radius:var(--radius-full)}.skeleton-avatar-lg{width:64px;height:64px}.skeleton-image{width:100%;height:180px;border-radius:var(--radius-md)}.skeleton-button{width:100px;height:36px;border-radius:var(--radius-md)}.skeleton-badge{width:60px;height:20px;border-radius:var(--radius-sm)}.skeleton-article-card{padding:var(--space-4);background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg)}.skeleton-article-card .skeleton-image{margin-bottom:var(--space-3)}.skeleton-article-card .skeleton-badges{display:flex;gap:var(--space-2);margin-bottom:var(--space-2)}.skeleton-article-card .skeleton-meta{display:flex;gap:var(--space-3);margin-top:var(--space-3)}.skeleton-article-card .skeleton-meta .skeleton{width:60px;height:.75em}.skeleton-source-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-bottom:1px solid var(--border-light)}.skeleton-source-row:last-child{border-bottom:none}.skeleton-stat{padding:var(--space-4);background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg)}.skeleton-stat-value{height:2rem;width:60%;margin-bottom:var(--space-2)}.skeleton-stat-label{height:.875em;width:80%}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12) var(--space-6);text-align:center}.empty-state-icon{width:80px;height:80px;margin-bottom:var(--space-4);color:var(--text-muted);opacity:.5}.empty-state-icon svg{width:100%;height:100%}.empty-state-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 var(--space-2) 0}.empty-state-description{font-size:var(--text-sm);color:var(--text-tertiary);max-width:400px;margin:0 0 var(--space-6) 0;line-height:var(--leading-relaxed)}.empty-state-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center}.empty-state-sm{padding:var(--space-8) var(--space-4)}.empty-state-sm .empty-state-icon{width:48px;height:48px;margin-bottom:var(--space-3)}.empty-state-sm .empty-state-title{font-size:var(--text-base)}.empty-state-sm .empty-state-description{font-size:var(--text-xs);margin-bottom:var(--space-4)}.empty-state-inline{padding:var(--space-6);background:var(--bg-secondary);border:1px dashed var(--border-medium);border-radius:var(--radius-lg)}.loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffc;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal)}.dark-mode .loading-overlay{background:#121212cc}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-light);border-top-color:var(--brand-primary);border-radius:50%;animation:spin .8s linear infinite}.loading-spinner-sm{width:20px;height:20px;border-width:2px}.loading-spinner-lg{width:60px;height:60px;border-width:4px}@keyframes spin{to{transform:rotate(360deg)}}.loading-dots{display:flex;gap:var(--space-1)}.loading-dots span{width:8px;height:8px;background:var(--brand-primary);border-radius:50%;animation:loading-dots 1.4s ease-in-out infinite both}.loading-dots span:nth-child(1){animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}@keyframes loading-dots{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.divider{height:1px;background:var(--border-light);margin:var(--space-4) 0}.divider-vertical{width:1px;height:auto;align-self:stretch;margin:0 var(--space-4)}.divider-text{display:flex;align-items:center;gap:var(--space-3);color:var(--text-muted);font-size:var(--text-sm)}.divider-text:before,.divider-text:after{content:"";flex:1;height:1px;background:var(--border-light)}.user-added-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:#ede9fe;color:#5b21b6;border-radius:10px;font-size:.7rem;font-weight:600;letter-spacing:.02em;margin-right:6px;vertical-align:middle}.dark .user-added-badge,[data-theme=dark] .user-added-badge{background:#4c1d95;color:#ddd6fe}
