@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap";:root{--bg-primary:220 10% 8%;--bg-secondary:220 10% 12%;--bg-tertiary:220 8% 16%;--surface:220 10% 14% / .7;--surface-border:220 10% 20%;--surface-hover:220 10% 24% / .8;--primary:354 84% 54%;--primary-hover:354 84% 60%;--primary-glow:354 84% 54% / .3;--secondary:0 0% 90%;--secondary-glow:0 0% 90% / .15;--accent:0 0% 100%;--text-primary:210 40% 98%;--text-secondary:215 20% 75%;--text-muted:215 16% 50%;--success:142 70% 45%;--warning:38 92% 50%;--danger:350 89% 60%;--info:217 91% 60%;--font-sans:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-display:"Outfit", system-ui, -apple-system, sans-serif;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1)}[data-theme=light]{--bg-primary:210 20% 97%;--bg-secondary:0 0% 100%;--bg-tertiary:210 20% 94%;--surface:0 0% 100% / .85;--surface-border:214 32% 88%;--surface-hover:210 20% 92% / .9;--primary:354 84% 50%;--primary-hover:354 84% 42%;--primary-glow:354 84% 50% / .15;--secondary:220 12% 28%;--secondary-glow:220 12% 28% / .1;--accent:354 84% 45%;--text-primary:224 25% 12%;--text-secondary:220 15% 32%;--text-muted:220 12% 52%;--success:142 65% 32%;--warning:38 90% 38%;--danger:350 80% 48%;--info:217 85% 42%}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{background-color:hsl(var(--bg-primary));color:hsl(var(--text-primary));font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(at 0% 0%, hsla(var(--primary) / .08) 0px, transparent 50%), radial-gradient(at 100% 100%, hsla(var(--secondary) / .05) 0px, transparent 50%), radial-gradient(at 50% 50%, hsla(var(--accent) / .03) 0px, transparent 50%);background-attachment:fixed;min-height:100vh;line-height:1.6;overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:hsl(var(--bg-primary))}::-webkit-scrollbar-thumb{background:hsl(var(--surface-border));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:hsla(var(--primary) / .5)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:-.02em;color:hsl(var(--text-primary));font-weight:700}p{color:hsl(var(--text-secondary))}a,button,input,select,textarea{color:inherit;outline:none;font-family:inherit}button{cursor:pointer;transition:var(--transition-normal);background:0 0;border:none}.glass-panel{background:hsl(var(--surface));-webkit-backdrop-filter:blur(12px);border:1px solid hsl(var(--surface-border));transition:var(--transition-normal);border-radius:16px}.glass-panel:hover{border-color:hsla(var(--primary) / .3);box-shadow:0 8px 30px -10px hsla(var(--primary) / .15)}.btn{font-size:.9rem;font-weight:600;font-family:var(--font-display);transition:var(--transition-normal);-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;display:inline-flex}.btn-primary{background:linear-gradient(135deg, hsl(var(--primary)), hsla(var(--primary) / .8));color:#fff;box-shadow:0 4px 15px -3px hsla(var(--primary) / .4)}.btn-primary:hover{box-shadow:0 6px 20px -3px hsla(var(--primary) / .6);background:linear-gradient(135deg, hsl(var(--primary-hover)), hsl(var(--primary)));transform:translateY(-2px)}.btn-secondary{background:hsl(var(--bg-tertiary));border-color:hsl(var(--surface-border));color:hsl(var(--text-primary))}.btn-secondary:hover{background:hsla(var(--surface-hover));border-color:hsla(var(--primary) / .4);transform:translateY(-2px)}.btn-teal{background:linear-gradient(135deg, hsl(var(--secondary)), hsla(var(--secondary) / .8));color:hsl(var(--bg-primary));box-shadow:0 4px 15px -3px hsla(var(--secondary) / .3)}.btn-teal:hover{box-shadow:0 6px 20px -3px hsla(var(--secondary) / .5);transform:translateY(-2px)}.btn-danger{background:hsla(var(--danger) / .1);border:1px solid hsla(var(--danger) / .3);color:hsl(var(--danger))}.btn-danger:hover{background:hsl(var(--danger));color:#fff;box-shadow:0 4px 15px -3px hsla(var(--danger) / .4);transform:translateY(-2px)}.btn-icon{border:1px solid hsl(var(--surface-border));background:hsla(var(--bg-secondary) / .5);border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:flex}.btn-icon:hover{border-color:hsla(var(--primary) / .5);color:hsl(var(--primary-hover));background:hsla(var(--surface-hover))}.form-input{background:hsl(var(--bg-secondary));border:1px solid hsl(var(--surface-border));width:100%;color:hsl(var(--text-primary));transition:var(--transition-normal);border-radius:10px;padding:12px 16px;font-family:inherit}.form-input:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 3px hsla(var(--primary) / .2);background:hsl(var(--bg-tertiary))}.form-group{flex-direction:column;gap:8px;margin-bottom:18px;display:flex}.form-group label{font-family:var(--font-display);color:hsl(var(--text-secondary));font-size:.85rem;font-weight:500}.badge{font-size:.75rem;font-weight:600;font-family:var(--font-display);text-transform:uppercase;border-radius:6px;align-items:center;gap:4px;padding:4px 8px;display:inline-flex}.badge-positive{background:hsla(var(--success) / .15);color:hsl(var(--success));border:1px solid hsla(var(--success) / .3)}.badge-neutral{background:hsla(var(--warning) / .12);color:hsl(var(--warning));border:1px solid hsla(var(--warning) / .3)}.badge-negative{background:hsla(var(--danger) / .15);color:hsl(var(--danger));border:1px solid hsla(var(--danger) / .3)}.badge-pending{background:hsla(var(--info) / .12);color:hsl(var(--info));border:1px solid hsla(var(--info) / .3)}.badge-reviewing{background:hsla(var(--primary) / .15);color:hsl(var(--primary));border:1px solid hsla(var(--primary) / .3);animation:1.5s ease-in-out infinite pulse-border}.badge-failed{background:hsla(var(--danger) / .15);color:hsl(var(--danger));border:1px solid hsla(var(--danger) / .3)}.tag-pill{background:hsla(var(--primary) / .08);border:1px solid hsla(var(--primary) / .15);color:hsla(var(--text-primary) / .9);cursor:pointer;transition:var(--transition-fast);border-radius:20px;align-items:center;padding:4px 10px;font-size:.75rem;font-weight:500;display:inline-flex}.tag-pill:hover,.tag-pill.active{background:hsl(var(--primary));color:#fff;border-color:hsl(var(--primary));transform:translateY(-1px)}.topic-pill{background:hsla(var(--surface-border) / .5);border:1px solid hsl(var(--surface-border));color:hsl(var(--text-secondary));cursor:pointer;transition:var(--transition-fast);border-radius:8px;align-items:center;padding:6px 12px;font-size:.8rem;font-weight:500;display:inline-flex}.topic-pill:hover,.topic-pill.active{background:hsla(var(--secondary) / .15);border-color:hsl(var(--secondary));color:hsl(var(--secondary))}@keyframes pulse-border{0%,to{border-color:hsla(var(--primary) / .3);box-shadow:0 0 0 0 hsla(var(--primary) / .2)}50%{border-color:hsl(var(--primary));box-shadow:0 0 8px 1px hsla(var(--primary) / .3)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.skeleton{background:linear-gradient(90deg, hsl(var(--bg-tertiary)) 25%, hsla(var(--surface-border) / .6) 37%, hsl(var(--bg-tertiary)) 63%);background-size:400% 100%;border-radius:4px;animation:1.4s infinite skeleton-loading}@keyframes skeleton-loading{0%{background-position:100%}to{background-position:0%}}.glass-panel{transition:transform .3s cubic-bezier(.25,1,.5,1),border-color .3s,box-shadow .3s!important}.glass-panel:hover{transform:translateY(-2px);border-color:hsla(var(--primary) / .45)!important;box-shadow:0 12px 35px -12px hsla(var(--primary) / .25)!important}.metric-card{transition:transform .3s cubic-bezier(.25,1,.5,1),border-color .3s,box-shadow .3s!important}.metric-card:hover{transform:translateY(-3px);border-color:hsla(var(--secondary) / .45)!important;box-shadow:0 12px 30px -10px hsla(var(--secondary) / .2)!important}.tab-fade-in{animation:.4s cubic-bezier(.16,1,.3,1) tab-slide-in}@keyframes tab-slide-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.stacked-bar-chart{position:relative;box-shadow:inset 0 2px 5px #00000040}.stacked-bar-segment{cursor:help;transition:width .5s cubic-bezier(.16,1,.3,1),filter .2s;position:relative}.stacked-bar-segment:hover{filter:brightness(1.15)saturate(1.1)}.modal-body-scroll::-webkit-scrollbar{width:8px}.modal-body-scroll::-webkit-scrollbar-track{background:hsla(var(--bg-secondary) / .3);border-radius:4px}.modal-body-scroll::-webkit-scrollbar-thumb{background:hsla(var(--surface-border) / .8);border:2px solid hsl(var(--bg-secondary));border-radius:4px}.modal-body-scroll::-webkit-scrollbar-thumb:hover{background:hsl(var(--secondary))}.back-to-top-btn{cursor:pointer;z-index:999;justify-content:center;align-items:center;width:44px;height:44px;animation:.25s cubic-bezier(.34,1.56,.64,1) scale-up;display:flex;position:fixed;bottom:28px;right:28px;background:hsla(var(--bg-secondary) / .82)!important;border:1px solid hsl(var(--surface-border))!important;color:hsl(var(--text-primary))!important;border-radius:50%!important;transition:all .2s!important;box-shadow:0 8px 30px #00000040!important}.back-to-top-btn:hover{border-color:hsl(var(--primary))!important;color:hsl(var(--primary-hover))!important;box-shadow:0 12px 35px -5px hsla(var(--primary) / .35)!important;transform:translateY(-4px)scale(1.08)!important}.app-container{flex-direction:column;gap:24px;max-width:1400px;min-height:100vh;margin:0 auto;padding:24px;display:flex}.navbar{grid-template-columns:minmax(190px,auto) minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px 28px;display:grid}.nav-logo{cursor:pointer;align-items:center;gap:12px;min-width:0;transition:opacity .2s,transform .2s;display:flex}.nav-logo:hover{opacity:.95;transform:scale(1.02)}.logo-icon{background:linear-gradient(135deg, hsl(var(--primary)), hsl(var(--secondary)));color:#fff;width:42px;height:42px;box-shadow:0 4px 15px -3px hsla(var(--primary) / .5);border-radius:12px;justify-content:center;align-items:center;display:flex}.logo-text h1{background:linear-gradient(135deg, hsl(var(--text-primary)) 30%, hsl(var(--text-secondary)));-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.3rem;font-weight:800;line-height:1.1}.logo-text span{text-transform:uppercase;letter-spacing:.1em;color:hsl(var(--secondary));font-size:.72rem;font-weight:500}.nav-tabs{background:hsla(var(--bg-secondary) / .8);border:1px solid hsl(var(--surface-border));border-radius:12px;flex-wrap:nowrap;justify-content:center;justify-self:center;gap:4px;max-width:100%;padding:5px;display:flex;overflow:visible}.nav-tab-btn{color:hsl(var(--text-secondary));font-size:.82rem;font-weight:600;font-family:var(--font-display);white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:6px 10px;display:flex}.nav-tab-btn:hover{color:hsl(var(--text-primary));background:hsla(var(--surface-hover))}.nav-tab-btn.active{color:#fff;background:hsl(var(--primary));box-shadow:0 4px 12px -3px hsla(var(--primary) / .4)}.nav-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.lang-select-navbar{cursor:pointer;width:auto;min-width:76px;height:38px;padding:4px 8px;font-size:.8rem}.theme-toggle-btn{cursor:pointer;border-radius:10px;flex:none;justify-content:center;align-items:center;width:38px;height:38px;padding:0;display:flex}.queue-status-dot{border:1px solid hsl(var(--surface-border));background:hsla(var(--bg-secondary) / .55);width:34px;height:34px;color:hsl(var(--text-secondary));border-radius:10px;flex:none;justify-content:center;align-items:center;display:inline-flex;position:relative}.queue-status-dot.active{color:hsl(var(--primary-hover));border-color:hsla(var(--primary) / .35);background:hsla(var(--primary) / .1)}.queue-status-dot.idle{color:hsl(var(--secondary))}.queue-status-dot span{background:hsl(var(--primary));color:#fff;border:2px solid hsl(var(--bg-primary));border-radius:999px;justify-content:center;align-items:center;min-width:17px;height:17px;padding:0 4px;font-size:.62rem;font-weight:800;display:flex;position:absolute;top:-6px;right:-6px}.header-fetch-btn{width:34px;height:34px;box-shadow:0 4px 12px -3px hsla(var(--primary) / .4);cursor:pointer;border-radius:10px;flex:none;justify-content:center;align-items:center;padding:0;transition:transform .2s,box-shadow .2s,background .2s;display:flex;background:linear-gradient(135deg, hsl(var(--primary)), hsla(var(--primary) / .8))!important;color:#fff!important;border:none!important}.header-fetch-btn:hover{box-shadow:0 6px 16px -3px hsla(var(--primary) / .6);transform:translateY(-1px);background:linear-gradient(135deg, hsl(var(--primary-hover)), hsl(var(--primary)))!important}@media (width<=1180px){.navbar{grid-template-columns:1fr auto}.nav-tabs{flex-wrap:wrap;order:3;grid-area:2/1/auto/-1;justify-content:center;justify-self:stretch}.nav-actions{justify-self:end}}@media (width<=768px){.app-container{padding-bottom:80px!important}.navbar{justify-content:space-between!important;align-items:center!important;gap:8px!important;padding:10px 14px!important;display:flex!important}.logo-text span{display:none!important}.nav-logo h1{font-size:1.15rem!important}.logo-icon{width:36px!important;height:36px!important}.logo-icon svg{width:18px!important;height:18px!important}.nav-actions{flex-wrap:nowrap!important;gap:6px!important}.nav-actions .lang-select-navbar,.nav-actions .theme-toggle-btn,.user-profile-name{display:none!important}.user-profile-badge{box-shadow:none!important;background:0 0!important;border:none!important;gap:0!important;padding:0!important}.user-profile-badge>svg{display:none!important}.logout-btn{background:hsla(var(--bg-tertiary) / .8)!important;border:1px solid hsl(var(--surface-border))!important;width:34px!important;height:34px!important;color:hsl(var(--text-primary))!important;border-radius:8px!important;justify-content:center!important;align-items:center!important;margin:0!important;display:inline-flex!important}.lang-select-navbar{min-width:65px!important;height:34px!important;padding:2px 4px!important;font-size:.75rem!important}.theme-toggle-btn,.header-fetch-btn,.queue-status-dot{border-radius:8px!important;width:34px!important;height:34px!important}.queue-status-dot span{min-width:15px!important;height:15px!important;font-size:.58rem!important;top:-4px!important;right:-4px!important}.nav-tabs{background:hsla(var(--bg-secondary) / .96)!important;-webkit-backdrop-filter:blur(20px)!important;border-top:1px solid hsl(var(--surface-border))!important;z-index:9999!important;border-bottom:none!important;border-left:none!important;border-right:none!important;border-radius:0!important;flex-direction:row!important;justify-content:space-around!important;align-items:center!important;width:100%!important;max-width:100%!important;height:64px!important;margin:0!important;padding:0 12px!important;display:flex!important;position:fixed!important;bottom:0!important;left:0!important;right:0!important;overflow:visible!important;box-shadow:0 -4px 20px -5px #0006!important}.nav-tab-btn{box-shadow:none!important;color:hsl(var(--text-muted))!important;background:0 0!important;border:none!important;border-radius:0!important;flex-direction:column!important;flex:1!important;justify-content:center!important;align-items:center!important;gap:3px!important;padding:6px 0!important;font-size:.65rem!important}.nav-tab-btn.active{color:hsl(var(--secondary))!important;background:0 0!important}.nav-tab-btn:hover{color:hsl(var(--text-primary))!important;background:0 0!important}.nav-tab-btn svg{width:20px!important;height:20px!important}}@media (width<=720px){.app-container{padding:14px}.navbar{grid-template-columns:1fr;padding:14px}.nav-logo,.nav-actions{justify-content:center}}.icon-pulse{animation:2s ease-in-out infinite pulse-glow}@keyframes pulse-glow{0%,to{filter:drop-shadow(0 0 0px hsla(var(--primary) / 0));transform:scale(1)}50%{filter:drop-shadow(0 0 6px hsla(var(--primary) / .6));transform:scale(1.08)}}.content-container{flex-direction:column;flex:1;gap:20px;display:flex}.alert-banner{border-radius:12px;align-items:center;gap:12px;padding:12px 20px;font-size:.88rem;font-weight:500;display:flex}.alert-banner.info{background:hsla(var(--info) / .08);border:1px solid hsla(var(--info) / .2);color:hsl(var(--info))}.alert-banner.warning{background:hsla(var(--warning) / .08);border:1px solid hsla(var(--warning) / .2);color:hsl(var(--warning))}.banner-link-btn{color:hsl(var(--primary-hover));cursor:pointer;background:0 0;border:none;margin:0;padding:0;font-weight:700;text-decoration:underline}.banner-link-btn:hover{color:hsl(var(--secondary))}.dashboard-grid{flex-direction:column;gap:24px;display:flex}.metrics-row{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;display:grid}.metric-card{align-items:center;gap:16px;padding:20px;display:flex}.metric-icon{border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.metric-icon.purple{background:hsla(var(--primary) / .15);color:hsl(var(--primary-hover))}.metric-icon.teal{background:hsla(var(--secondary) / .15);color:hsl(var(--secondary))}.metric-icon.blue{background:hsla(var(--info) / .15);color:hsl(var(--info))}.metric-icon.rose{background:hsla(var(--danger) / .15);color:hsl(var(--danger))}.metric-info h3{font-size:1.6rem;line-height:1.2}.metric-info p{color:hsl(var(--text-muted));text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;font-weight:500}.dashboard-insights{grid-template-columns:1fr 1.2fr 1fr;gap:24px;display:grid}@media (width<=1200px){.dashboard-insights{grid-template-columns:1fr 1fr}.dashboard-insights>:last-child{grid-column:span 2}}@media (width<=800px){.dashboard-insights{grid-template-columns:1fr}.dashboard-insights>:last-child{grid-column:span 1}}.insight-box{flex-direction:column;gap:20px;padding:24px;display:flex}.insight-header h2{align-items:center;gap:8px;font-size:1.15rem;display:flex}.insight-header p{color:hsl(var(--text-muted));font-size:.78rem}.topics-list-container h3,.tags-cloud-container h3{text-transform:uppercase;color:hsl(var(--text-muted));letter-spacing:.05em;margin-bottom:12px;font-size:.85rem}.topics-grid{flex-wrap:wrap;gap:8px;margin-bottom:24px;display:flex}.pill-count{background:hsla(var(--text-primary) / .1);color:hsl(var(--text-secondary));border-radius:4px;padding:2px 6px;font-size:.7rem;font-weight:700}.topic-pill:hover .pill-count{background:hsla(var(--secondary) / .2);color:hsl(var(--secondary))}.tags-flex{flex-wrap:wrap;gap:8px;display:flex}.tag-count-sub{color:hsla(var(--text-primary) / .5);margin-left:4px;font-size:.68rem}.no-data-msg{color:hsl(var(--text-muted));font-size:.82rem;font-style:italic}.recent-dashboard-list{flex-direction:column;flex:1;gap:12px;display:flex}.empty-dashboard-list{color:hsl(var(--text-muted));flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:40px;font-size:.85rem;display:flex}.dash-article-item{background:hsla(var(--bg-secondary) / .4);border:1px solid hsl(var(--surface-border));transition:var(--transition-fast);border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;display:flex}.dash-article-item:hover{background:hsla(var(--bg-tertiary) / .6);border-color:hsla(var(--primary) / .25);transform:translate(3px)}.dash-article-main{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.dash-article-meta{align-items:center;gap:8px;font-size:.7rem;font-weight:600;display:flex}.dash-source-label{color:hsl(var(--secondary))}.dash-date-label{color:hsl(var(--text-muted))}.dash-article-title{cursor:pointer;-webkit-line-clamp:2;text-overflow:ellipsis;white-space:normal;-webkit-box-orient:vertical;font-size:.85rem;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.dash-article-title:hover{color:hsl(var(--primary-hover));text-decoration:underline}.dash-article-status{align-items:center;gap:8px;display:flex}.mini-btn{border-radius:6px;width:28px;height:28px}.btn-full{width:100%}.articles-layout{grid-template-columns:280px 1fr;align-items:start;gap:24px;display:grid}@media (width<=800px){.articles-layout{grid-template-columns:1fr}}.filters-sidebar{flex-direction:column;gap:20px;padding:20px;display:flex}@media (width<=800px){.filters-sidebar{display:none}.filters-sidebar.mobile-visible{display:flex}}.sidebar-header{border-bottom:1px solid hsl(var(--surface-border));justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.sidebar-header h2{align-items:center;gap:6px;font-size:1.05rem;display:flex}.reset-btn{color:hsl(var(--danger));font-size:.75rem;font-weight:700}.reset-btn:hover{text-decoration:underline}.filter-block{flex-direction:column;gap:8px;display:flex}.filter-section{border-top:1px solid hsl(var(--surface-border));flex-direction:column;gap:10px;padding-top:12px;display:flex}.filter-section-title{color:hsl(var(--text-primary));text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:800}.filter-block label{color:hsl(var(--text-muted));text-transform:uppercase;letter-spacing:.05em;font-size:.78rem;font-weight:600}.search-input-wrapper{align-items:center;display:flex;position:relative}.search-input-wrapper svg{color:hsl(var(--text-muted));pointer-events:none;position:absolute;left:12px}.search-input{padding-left:36px}.sidebar-scroll-list{flex-direction:column;gap:4px;max-height:180px;padding-right:4px;display:flex;overflow-y:auto}.sidebar-list-item{text-align:left;color:hsl(var(--text-secondary));transition:var(--transition-fast);border-radius:6px;justify-content:space-between;align-items:center;padding:6px 10px;font-size:.8rem;font-weight:500;display:flex}.sidebar-list-item:hover{background:hsla(var(--surface-hover));color:#fff}.sidebar-list-item.active{background:hsla(var(--primary) / .15);color:hsl(var(--primary-hover));border-left:2px solid hsl(var(--primary))}.list-item-badge{background:hsla(var(--text-primary) / .08);border-radius:4px;padding:1px 5px;font-size:.68rem;font-weight:700}.flex-tags{flex-flow:wrap;gap:6px;max-height:200px}.articles-feed,.simple-feed{flex-direction:column;gap:20px;display:flex}.simple-feed-list{flex-direction:column;gap:14px;display:flex}.simple-feed-item{cursor:pointer;contain:layout paint style;content-visibility:auto;contain-intrinsic-size:140px;grid-template-columns:180px 1fr;gap:18px;min-height:140px;padding:14px;display:grid}.simple-feed-item.state-read{opacity:.72}.simple-feed-item.state-not_interested{opacity:.55;border-color:hsla(var(--danger) / .28)}.simple-feed-image{aspect-ratio:16/10;background:linear-gradient(135deg, hsla(var(--primary) / .18), hsla(var(--secondary) / .18));width:100%;color:hsl(var(--text-primary));border-radius:8px;justify-content:center;align-items:center;font-size:2rem;font-weight:800;display:flex;overflow:hidden}.simple-feed-image img{object-fit:cover;width:100%;height:100%;display:block}.simple-feed-content{flex-direction:column;justify-content:center;gap:8px;min-width:0;display:flex}.simple-feed-meta{color:hsl(var(--text-muted));text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:10px;font-size:.72rem;font-weight:700;display:flex}.simple-feed-meta span:first-child{color:hsl(var(--secondary))}.simple-feed-content h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:1rem;font-weight:750;line-height:1.35;display:-webkit-box;overflow:hidden}.simple-feed-content p{color:hsl(var(--text-secondary));-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.84rem;line-height:1.45;display:-webkit-box;overflow:hidden}.simple-feed-link{width:fit-content;color:hsl(var(--primary-hover));align-items:center;gap:6px;font-size:.78rem;font-weight:700;display:inline-flex}.simple-feed-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.feed-state-btn{border:1px solid hsl(var(--surface-border));color:hsl(var(--text-secondary));background:hsla(var(--bg-secondary) / .35);border-radius:6px;align-items:center;gap:5px;padding:4px 7px;font-size:.72rem;font-weight:700;display:inline-flex}.feed-state-btn:hover,.feed-state-btn.active{color:hsl(var(--secondary));border-color:hsla(var(--secondary) / .35);background:hsla(var(--secondary) / .1)}.feed-state-btn.danger:hover,.feed-state-btn.danger.active{color:hsl(var(--danger));border-color:hsla(var(--danger) / .35);background:hsla(var(--danger) / .1)}.article-state-pill{text-transform:uppercase;letter-spacing:.04em;border:1px solid hsl(var(--surface-border));border-radius:999px;align-items:center;padding:2px 7px;font-size:.66rem;font-weight:800;display:inline-flex}.article-state-pill.state-unread{color:hsl(var(--primary-hover));background:hsla(var(--primary) / .08);border-color:hsla(var(--primary) / .24)}.article-state-pill.state-read{color:hsl(var(--secondary));background:hsla(var(--secondary) / .08);border-color:hsla(var(--secondary) / .24)}.article-state-pill.state-not_interested{color:hsl(var(--danger));background:hsla(var(--danger) / .08);border-color:hsla(var(--danger) / .24)}.simple-feed-link:hover{color:hsl(var(--secondary));text-decoration:underline}@media (width<=700px){.simple-feed-item{grid-template-columns:96px 1fr;gap:12px;min-height:112px}.simple-feed-content h3{font-size:.9rem}.simple-feed-content p{-webkit-line-clamp:1;font-size:.78rem}}@media (width<=500px){.simple-feed-item{grid-template-columns:1fr;gap:12px;min-height:auto;padding:16px}.simple-feed-image{aspect-ratio:16/9;width:100%;height:140px}}.feed-header{justify-content:space-between;align-items:center;display:flex}.feed-info h2{font-size:1.15rem}.feed-info p{color:hsl(var(--text-muted));font-size:.76rem}.feed-header-controls{justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.compact-filter{align-items:center;gap:6px;min-width:0;display:flex}.compact-filter label{color:hsl(var(--text-muted));text-transform:uppercase;white-space:nowrap;font-size:.7rem;font-weight:800}.article-state-filter{width:auto;min-width:130px;max-width:100%;height:32px;font-size:.78rem;border-radius:6px!important;padding:4px 28px 4px 8px!important}@media (width<=700px){.simple-feed>.feed-header{flex-direction:column;align-items:flex-start;gap:8px}.simple-feed .feed-header-controls{flex-flow:wrap!important;justify-content:flex-start!important;align-items:center!important;gap:6px!important;width:100%!important}.simple-feed .compact-filter{flex-direction:row!important;align-items:center!important;gap:0!important;width:auto!important}.simple-feed .compact-filter label{display:none!important}.simple-feed .article-state-filter{flex:auto!important;min-width:100px!important;height:32px!important}}.mobile-filter-toggle{display:none}@media (width<=800px){.mobile-filter-toggle{display:inline-flex}}.empty-feed{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:60px 40px;display:flex}.empty-feed p{max-width:400px;margin-bottom:8px}.articles-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.article-card{cursor:pointer;contain:layout paint style;content-visibility:auto;contain-intrinsic-size:260px;flex-direction:column;gap:14px;height:100%;min-height:260px;padding:20px;display:flex}.card-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.card-source-bar{flex-direction:column;gap:2px;display:flex}.card-source{text-transform:uppercase;letter-spacing:.05em;color:hsl(var(--secondary));font-size:.72rem;font-weight:700}.card-date{color:hsl(var(--text-muted));font-size:.7rem}.card-title{-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;flex-grow:0;font-size:.95rem;font-weight:700;line-height:1.4;display:-webkit-box;overflow:hidden}.card-ai-body{flex-direction:column;flex-grow:1;gap:10px;display:flex}.card-topic-wrapper{justify-content:space-between;align-items:center;gap:8px;display:flex}.card-topic{color:hsl(var(--text-primary));background:hsla(var(--text-primary) / .08);border-radius:4px;padding:2px 8px;font-size:.75rem;font-weight:600}.card-summary{color:hsl(var(--text-secondary));-webkit-line-clamp:3;text-overflow:ellipsis;-webkit-box-orient:vertical;font-size:.8rem;line-height:1.4;display:-webkit-box;overflow:hidden}.card-tags{flex-wrap:wrap;gap:4px;margin-top:auto;display:flex}.card-tag-badge{color:hsl(var(--primary-hover));background:hsla(var(--primary) / .06);border:1px solid hsla(var(--primary) / .1);border-radius:4px;padding:1px 6px;font-size:.68rem;font-weight:600}.card-tag-more{color:hsl(var(--text-muted));align-self:center;margin-left:2px;font-size:.65rem}.card-pending-body{border:1px dashed hsl(var(--surface-border));background:hsla(var(--bg-secondary) / .2);border-radius:8px;flex-grow:1;justify-content:center;align-items:center;padding:16px;font-size:.8rem;display:flex}.pending-state,.reviewing-state,.failed-state{text-align:center;flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.btn-xs{border-radius:6px;padding:4px 8px;font-size:.72rem}.btn-review-now{margin-top:4px}.truncate-error{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.75rem;overflow:hidden}.pagination-bar{justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.pagination-info{color:hsl(var(--text-secondary));font-size:.82rem;font-weight:600;font-family:var(--font-display)}.sources-container{flex-direction:column;gap:20px;display:flex}.sources-header{justify-content:space-between;align-items:center;display:flex}.sources-header h2{font-size:1.3rem}.sources-header p{color:hsl(var(--text-muted));font-size:.8rem}.source-form-card{padding:24px}.source-form-card h3{margin-bottom:4px;font-size:1.1rem}.form-tip-txt{color:hsl(var(--text-muted));margin-bottom:20px;font-size:.8rem}.form-error-banner{background:hsla(var(--danger) / .1);border:1px solid hsla(var(--danger) / .3);color:hsl(var(--danger));border-radius:8px;margin-bottom:18px;padding:10px 16px;font-size:.82rem;font-weight:500}.form-row-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=600px){.form-row-2{grid-template-columns:1fr;gap:0}}.border-left-teal{border-left:3px solid hsl(var(--secondary));padding-left:14px}.input-hint{color:hsl(var(--text-muted));margin-top:2px;font-size:.72rem}.form-actions-right{justify-content:flex-end;align-items:center;gap:12px;margin-top:10px;display:flex}.empty-sources{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:60px;display:flex}.sources-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;display:grid}.source-card{flex-direction:column;gap:12px;padding:20px;display:flex}.source-card.inactive{opacity:.6}.source-card-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.source-meta{flex-direction:column;gap:6px;min-width:0;display:flex}.source-name{white-space:nowrap;text-overflow:ellipsis;font-size:1rem;font-weight:700;overflow:hidden}.source-type-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:4px;align-self:flex-start;align-items:center;gap:4px;padding:2px 8px;font-size:.68rem;font-weight:700;display:inline-flex}.source-type-badge.rss{background:hsla(var(--primary) / .1);color:hsl(var(--primary-hover))}.source-type-badge.scrape{background:hsla(var(--secondary) / .1);color:hsl(var(--secondary))}.source-url-text{color:hsl(var(--text-muted));word-break:break-all;-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:.78rem;display:-webkit-box;overflow:hidden}.source-selector-info{background:hsla(var(--bg-secondary) / .5);border:1px solid hsl(var(--surface-border));border-radius:6px;flex-direction:column;gap:3px;padding:6px 12px;font-size:.72rem;display:flex}.source-selector-info code{color:hsl(var(--secondary))}.source-card-footer{border-top:1px solid hsl(var(--surface-border));justify-content:space-between;align-items:center;margin-top:auto;padding-top:12px;display:flex}.last-scraped-time{color:hsl(var(--text-muted));font-size:.7rem}.source-row-actions{gap:6px;display:flex}.delete-btn-hover:hover{background:hsla(var(--danger) / .15)!important;color:hsl(var(--danger))!important;border-color:hsla(var(--danger) / .3)!important}.active-switch{position:relative}.active-switch input{opacity:0;position:absolute}.active-switch label{background:hsl(var(--bg-tertiary));border:1px solid hsl(var(--surface-border));cursor:pointer;width:38px;height:20px;transition:var(--transition-normal);border-radius:20px;display:block;position:relative}.active-switch label:after{content:"";background:hsl(var(--text-muted));width:14px;height:14px;transition:var(--transition-normal);border-radius:50%;display:block;position:absolute;top:2px;left:2px}.active-switch input:checked+label{background:hsl(var(--secondary));border-color:hsl(var(--secondary))}.active-switch input:checked+label:after{background:hsl(var(--bg-primary));left:20px}.settings-container{flex-direction:column;gap:20px;display:flex}.settings-header h2{font-size:1.3rem}.settings-header p{color:hsl(var(--text-muted));font-size:.8rem}.settings-layout-grid{grid-template-columns:1.6fr 1fr;align-items:start;gap:24px;display:grid}@media (width<=900px){.settings-layout-grid{grid-template-columns:1fr}}.settings-form-card,.settings-stats-card{padding:24px}.settings-form-card h3,.settings-stats-card h3{margin-bottom:4px;font-size:1.1rem}.section-info-txt{color:hsl(var(--text-muted));margin-bottom:20px;font-size:.8rem}.api-key-input-wrapper{gap:10px;display:flex}.key-input{flex:1}.show-key-btn{padding:0 16px;font-size:.8rem}.textarea-prompt{resize:vertical;min-height:110px;font-family:inherit;line-height:1.5}.settings-success-text{color:hsl(var(--success));align-items:center;gap:4px;font-size:.85rem;font-weight:600;display:inline-flex}.status-metrics-list{flex-direction:column;gap:10px;margin-bottom:24px;display:flex}.status-metric-item{background:hsla(var(--bg-secondary) / .5);border:1px solid hsl(var(--surface-border));border-radius:10px;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.metric-label{font-size:.82rem;font-weight:600}.metric-badge{border-radius:6px;padding:3px 10px;font-size:.8rem;font-weight:800}.metric-badge.green{background:hsla(var(--success) / .12);color:hsl(var(--success))}.metric-badge.yellow{background:hsla(var(--warning) / .12);color:hsl(var(--warning))}.metric-badge.red{background:hsla(var(--danger) / .12);color:hsl(var(--danger))}.queue-action-box{background:hsla(var(--bg-secondary) / .4);border:1px dashed hsl(var(--surface-border));border-radius:12px;flex-direction:column;gap:10px;padding:16px;display:flex}.queue-action-box h4{font-size:.88rem}.queue-action-box p{color:hsl(var(--text-muted));font-size:.75rem}.queue-buttons{margin-top:4px}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10000;background:#040509bf;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{flex-direction:column;width:100%;max-width:860px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000080}.modal-header{border-bottom:1px solid hsl(var(--surface-border));justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.modal-source-meta{align-items:center;gap:8px;font-size:.78rem;font-weight:600;display:flex}.modal-source{color:hsl(var(--secondary));text-transform:uppercase;letter-spacing:.05em}.modal-separator,.modal-date,.modal-author{color:hsl(var(--text-muted))}.modal-close-btn{background:0 0;border:none}.modal-body-scroll{flex-direction:column;gap:20px;padding:24px;display:flex;overflow-y:auto}.modal-title{font-size:1.6rem;line-height:1.3}.modal-link-row{margin-top:-8px}.modal-external-link{color:hsl(var(--secondary));align-items:center;gap:6px;font-size:.8rem;font-weight:700;text-decoration:none;display:inline-flex}.modal-external-link:hover{color:hsl(var(--primary-hover));text-decoration:underline}.modal-ai-insights{background:linear-gradient(135deg, hsla(var(--primary) / .08), hsla(var(--secondary) / .04));border:1px solid hsla(var(--primary) / .2);border-radius:14px;flex-direction:column;gap:16px;padding:20px;display:flex}.ai-insights-header{justify-content:space-between;align-items:center;display:flex}.ai-insights-header h3{color:hsl(var(--primary-hover));align-items:center;gap:8px;font-size:.95rem;display:flex}.ai-summary-card{background:hsla(var(--bg-primary) / .6);border:1px solid hsl(var(--surface-border));border-radius:10px;padding:14px 18px}.ai-summary-label{text-transform:uppercase;color:hsl(var(--text-muted));letter-spacing:.05em;margin-bottom:4px;font-size:.72rem;font-weight:700}.ai-summary-content{color:hsl(var(--text-primary));font-size:.85rem;line-height:1.5}.ai-meta-grid{grid-template-columns:1fr 2fr;gap:16px;display:grid}@media (width<=600px){.ai-meta-grid{grid-template-columns:1fr}}.ai-meta-item{flex-direction:column;gap:4px;display:flex}.meta-label{text-transform:uppercase;color:hsl(var(--text-muted));letter-spacing:.05em;font-size:.72rem;font-weight:700}.meta-value-topic{color:hsl(var(--text-primary));font-size:.85rem;font-weight:700}.meta-value-explanation{color:hsl(var(--text-secondary));font-size:.82rem;font-style:italic}.ai-tags-row{align-items:center;gap:10px;display:flex}.tags-label{color:hsl(var(--text-muted));font-size:.75rem;font-weight:700}.ai-tags-list{flex-wrap:wrap;gap:6px;display:flex}.pending-insights{background:hsla(var(--bg-secondary) / .4);border:1px dashed hsl(var(--surface-border));justify-content:center;padding:40px 20px}.pending-insights-content{text-align:center;flex-direction:column;align-items:center;gap:12px;max-width:360px;margin:0 auto;display:flex}.pending-insights-content h3{font-size:1rem}.pending-insights-content p{margin-bottom:6px;font-size:.8rem}.article-body-content{border-top:1px solid hsl(var(--surface-border));margin-top:10px;padding-top:20px}.article-body-content h3{text-transform:uppercase;color:hsl(var(--text-muted));letter-spacing:.05em;margin-bottom:14px;font-size:.95rem}.article-paragraphs{flex-direction:column;gap:16px;display:flex}.article-paragraphs p{color:hsla(var(--text-primary) / .85);font-size:.92rem;line-height:1.65}.empty-content-msg{color:hsl(var(--text-muted));font-size:.85rem;font-style:italic}.login-overlay{background-image:radial-gradient(at 0% 0%, hsla(var(--primary) / .12) 0px, transparent 50%), radial-gradient(at 100% 100%, hsla(var(--secondary) / .08) 0px, transparent 50%);background-attachment:fixed;justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{flex-direction:column;gap:20px;width:100%;max-width:420px;padding:36px;animation:.4s ease-out slide-up;display:flex;box-shadow:0 20px 40px -15px #00000080}.login-header{text-align:center;border-bottom:1px solid hsl(var(--surface-border));flex-direction:column;align-items:center;gap:8px;padding-bottom:24px;display:flex}.login-header h2{background:linear-gradient(135deg, #fff, hsl(var(--text-secondary)));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-top:6px;font-size:1.8rem;font-weight:800}.login-header p{color:hsl(var(--secondary));text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;font-weight:600}.login-card h3{text-align:center;color:hsl(var(--text-primary));font-size:1.15rem;font-family:var(--font-display)}.login-footer{text-align:center;margin-top:10px}.toggle-auth-btn{color:hsl(var(--text-muted));cursor:pointer;transition:var(--transition-fast);background:0 0;border:none;font-size:.8rem;font-weight:600}.toggle-auth-btn:hover{color:hsl(var(--primary-hover));text-decoration:underline}.user-profile-badge{background:hsla(var(--bg-tertiary) / .8);border:1px solid hsl(var(--surface-border));color:hsl(var(--text-secondary));border-radius:10px;align-items:center;gap:8px;padding:6px 12px;font-size:.82rem;font-weight:600;display:flex}.user-profile-badge svg{color:hsl(var(--secondary))}.user-profile-name{white-space:nowrap;text-overflow:ellipsis;max-width:90px;color:hsl(var(--text-primary));overflow:hidden}.logout-btn{margin-left:4px}.logout-btn:hover{color:hsl(var(--danger))!important;border-color:hsla(var(--danger) / .3)!important;background:hsla(var(--danger) / .1)!important}@keyframes slide-up{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.scale-up{animation:.5s cubic-bezier(.34,1.56,.64,1) scale-up}@keyframes scale-up{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.sentiment-analytics-card{flex-direction:column;gap:20px;margin-top:24px;padding:24px;animation:.5s slide-up;display:flex}.sentiment-analytics-header{align-items:center;gap:10px;display:flex}.sentiment-analytics-header h2{align-items:center;gap:8px;margin:0;font-size:1.1rem;display:flex}.sentiment-grid-split{grid-template-columns:1fr 1fr;gap:32px;display:grid}@media (width<=968px){.sentiment-grid-split{grid-template-columns:1fr;gap:24px}}.overall-sentiment-section{flex-direction:column;justify-content:center;gap:16px;display:flex}.stacked-bar-chart{background:hsla(var(--bg-tertiary) / .5);border:1px solid hsl(var(--surface-border));border-radius:8px;height:28px;display:flex;overflow:hidden}.stacked-bar-segment{color:#fff;text-shadow:0 1px 2px #0006;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;transition:width .4s;display:flex}.stacked-bar-segment.pos{background:hsl(var(--success))}.stacked-bar-segment.neu{background:hsl(var(--text-muted))}.stacked-bar-segment.neg{background:hsl(var(--danger))}.sentiment-legend{justify-content:center;gap:20px;display:flex}.legend-item{color:hsl(var(--text-secondary));align-items:center;gap:8px;font-size:.82rem;display:flex}.legend-dot{border-radius:50%;width:10px;height:10px}.legend-dot.pos{background:hsl(var(--success))}.legend-dot.neu{background:hsl(var(--text-muted))}.legend-dot.neg{background:hsl(var(--danger))}.sources-sentiment-section h3,.overall-sentiment-section h3{color:hsl(var(--text-primary));margin-bottom:12px;font-size:.92rem;font-weight:600}.source-sentiment-row{border-bottom:1px solid hsla(var(--surface-border) / .4);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.source-sentiment-row:last-child{border-bottom:none}.source-sentiment-name{white-space:nowrap;text-overflow:ellipsis;width:130px;color:hsl(var(--text-secondary));font-size:.82rem;font-weight:600;overflow:hidden}.source-sentiment-bar-wrapper{flex-grow:1;align-items:center;gap:12px;display:flex}.mini-stacked-bar{background:hsla(var(--bg-tertiary) / .5);border-radius:4px;flex-grow:1;height:10px;display:flex;overflow:hidden}.mini-segment{height:100%}.mini-segment.pos{background:hsl(var(--success))}.mini-segment.neu{background:hsl(var(--text-muted))}.mini-segment.neg{background:hsl(var(--danger))}.source-sentiment-values{color:hsl(var(--text-muted));text-align:right;min-width:130px;font-size:.7rem;font-weight:500}
