:root{--bg: #ffffff;--text: #333333;--muted: #666666;--line: #e2e2e2;--card-bg: #ffffff;--accent: #000000;--header-bg: #fff}body.dark-mode{--bg: #0f1113;--text: #dcdcdc;--muted: #a8a8a8;--line: #232526;--card-bg: #121214;--accent: #f5f5f5;--header-bg: #0b0c0d}.dashboard-container{max-width:1200px;margin:0 auto;padding:32px 16px}.dashboard-header{margin-bottom:32px;padding-bottom:16px;border-bottom:2px solid var(--line)}.dashboard-title{font-family:Georgia,serif;font-size:36px;font-weight:700;color:var(--text);margin-bottom:8px}.dashboard-subtitle{font-family:Arial,sans-serif;font-size:14px;color:var(--muted)}.dashboard-grid{display:grid;grid-template-columns:1fr;gap:24px;margin-bottom:40px}@media(min-width:768px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.dashboard-grid{grid-template-columns:repeat(3,1fr)}}.dashboard-card{background:var(--card-bg);border:1px solid var(--line);padding:24px;transition:all .3s ease;cursor:pointer}.dashboard-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}body.dark-mode .dashboard-card:hover{box-shadow:0 4px 12px #ffffff0d}.dashboard-card-icon{width:48px;height:48px;margin-bottom:16px;stroke:var(--accent)}.dashboard-card-title{font-family:Georgia,serif;font-size:20px;font-weight:700;color:var(--text);margin-bottom:8px}.dashboard-card-description{font-family:Arial,sans-serif;font-size:14px;color:var(--muted);line-height:1.5;margin-bottom:12px}.dashboard-card-stat{font-family:Arial,sans-serif;font-size:12px;font-weight:600;color:var(--accent);text-transform:uppercase}.section-title{font-family:Arial,sans-serif;font-size:12px;font-weight:600;text-transform:uppercase;color:var(--muted);margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--line);letter-spacing:.5px}.interests-container{margin-bottom:40px}.interests-grid{display:flex;flex-wrap:wrap;gap:12px}.interest-tag{font-family:Arial,sans-serif;font-size:13px;padding:8px 16px;background:var(--card-bg);border:1px solid var(--line);color:var(--text);transition:all .2s ease}.interest-tag:hover{background:var(--accent);color:var(--bg)}.dashboard-btn{font-family:Arial,sans-serif;font-size:14px;font-weight:600;padding:12px 24px;background:var(--accent);color:var(--bg);border:none;cursor:pointer;text-decoration:none;display:inline-block;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px}.dashboard-btn:hover{opacity:.8}.dashboard-btn-secondary{background:transparent;color:var(--accent);border:1px solid var(--accent)}.dashboard-btn-secondary:hover{background:var(--accent);color:var(--bg)}.feed-article{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid var(--line);transition:opacity .2s}.feed-article:hover{opacity:.8}.feed-article:last-child{border-bottom:none}.feed-article-link{text-decoration:none;color:inherit;display:block}.feed-article-image{width:100%;height:200px;object-fit:cover;margin-bottom:12px}.feed-article-title{font-family:Georgia,serif;font-size:24px;font-weight:700;line-height:1.3;color:var(--text);margin-bottom:12px}.feed-article-description{font-family:Georgia,serif;font-size:15px;line-height:1.6;color:var(--muted);margin-bottom:8px}.feed-article-meta{font-family:Arial,sans-serif;font-size:11px;color:var(--muted);text-transform:uppercase}.saved-articles-list{display:grid;grid-template-columns:1fr;gap:24px}.saved-article-card{display:grid;grid-template-columns:120px 1fr auto;gap:16px;align-items:start;padding:16px;background:var(--card-bg);border:1px solid var(--line);transition:all .2s ease}.saved-article-card:hover{box-shadow:0 2px 8px #0000001a}body.dark-mode .saved-article-card:hover{box-shadow:0 2px 8px #ffffff0d}.saved-article-image{width:120px;height:80px;object-fit:cover}.saved-article-content{flex:1}.saved-article-title{font-family:Georgia,serif;font-size:18px;font-weight:700;line-height:1.3;color:var(--text);margin-bottom:8px}.saved-article-meta{font-family:Arial,sans-serif;font-size:11px;color:var(--muted);text-transform:uppercase}.remove-btn{font-family:Arial,sans-serif;font-size:12px;padding:6px 12px;background:transparent;color:var(--muted);border:1px solid var(--line);cursor:pointer;transition:all .2s ease}.remove-btn:hover{background:#dc3545;color:#fff;border-color:#dc3545}.settings-section{margin-bottom:40px;padding-bottom:40px;border-bottom:1px solid var(--line)}.settings-section:last-child{border-bottom:none}.settings-form-group{margin-bottom:20px}.settings-label{font-family:Arial,sans-serif;font-size:13px;font-weight:600;color:var(--text);display:block;margin-bottom:8px}.settings-input{width:100%;max-width:400px;padding:10px 12px;font-family:Arial,sans-serif;font-size:14px;background:var(--card-bg);border:1px solid var(--line);color:var(--text)}.settings-input:focus{outline:none;border-color:var(--accent)}.settings-checkbox{margin-right:8px}.newsletter-option{display:flex;align-items:center;padding:12px;margin-bottom:8px;background:var(--card-bg);border:1px solid var(--line)}.newsletter-option label{font-family:Arial,sans-serif;font-size:14px;color:var(--text)}.empty-state{text-align:center;padding:60px 20px}.empty-state-icon{width:80px;height:80px;margin:0 auto 20px;stroke:var(--muted)}.empty-state-title{font-family:Georgia,serif;font-size:24px;color:var(--text);margin-bottom:12px}.empty-state-text{font-family:Arial,sans-serif;font-size:14px;color:var(--muted);margin-bottom:20px}.loading-state{text-align:center;padding:40px 20px}.loading-spinner{width:40px;height:40px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 16px}@keyframes spin{to{transform:rotate(360deg)}}.alert{padding:12px 16px;margin-bottom:20px;border:1px solid;font-family:Arial,sans-serif;font-size:14px}.alert-success{background:#d4edda;border-color:#c3e6cb;color:#155724}.alert-error{background:#f8d7da;border-color:#f5c6cb;color:#721c24}.alert-info{background:#d1ecf1;border-color:#bee5eb;color:#0c5460}body.dark-mode .alert-success{background:#1e4620;border-color:#2d5f2f;color:#a3e4a9}body.dark-mode .alert-error{background:#4a1a1f;border-color:#6b2c33;color:#f5a9b0}body.dark-mode .alert-info{background:#1a3a44;border-color:#2c5a69;color:#a3d9f0}@media(max-width:768px){.dashboard-container{padding:20px 12px}.dashboard-title{font-size:28px}.saved-article-card{grid-template-columns:1fr}.saved-article-image{width:100%;height:150px}.feed-article-title{font-size:20px}}.btn-danger{background:#dc3545;color:#fff;border:1px solid #dc3545}.btn-danger:hover{background:#c82333;border-color:#bd2130;opacity:1}.feed-article{display:flex;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.feed-article:hover{background:var(--hover-bg, #f9f9f9);margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px}.feed-article-link{display:contents;text-decoration:none}.feed-article-image{width:200px;height:130px;object-fit:cover;flex-shrink:0}.feed-article-content{flex:1;display:flex;flex-direction:column}.feed-article-category{font-family:Arial,sans-serif;font-size:11px;font-weight:600;text-transform:uppercase;color:var(--accent);margin-bottom:8px;letter-spacing:.5px}.feed-article-title{font-family:Georgia,serif;font-size:20px;font-weight:700;line-height:1.3;color:var(--text);margin-bottom:8px}.feed-article-description{font-family:Georgia,serif;font-size:15px;line-height:1.5;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:8px}.feed-article-meta{font-family:Arial,sans-serif;font-size:11px;color:var(--muted);text-transform:uppercase;margin-top:auto}@media(max-width:768px){.feed-article{flex-direction:column;gap:12px}.feed-article-image{width:100%;height:200px}}.language-filter{border-top:1px solid var(--line);padding-top:24px}.language-tabs{display:flex;gap:12px;flex-wrap:wrap}.language-tab{padding:10px 20px;border:1px solid var(--line);background:var(--bg);color:var(--text);font-family:Arial,sans-serif;font-size:14px;cursor:pointer;transition:all .3s ease}.language-tab:hover{background:var(--hover-bg, #f5f5f5)}.language-tab.active{background:var(--accent, #000);color:var(--bg, #fff);border-color:var(--accent, #000)}body.dark-mode .language-tab.active{background:var(--text);color:var(--bg)}
