:root{--bg-primary: #f8f9fa;--bg-secondary: #ffffff;--bg-card: #ffffff;--text-primary: #1a1a2e;--text-secondary: #4a4a68;--text-muted: #6c757d;--accent: #0066cc;--accent-hover: #0052a3;--border: #e9ecef;--header-bg: #1a1a2e;--header-text: #ffffff;--success: #28a745;--warning: #ffc107;--danger: #dc3545}[data-theme=dark]{--bg-primary: #1a1a2e;--bg-secondary: #16213e;--bg-card: #1f2940;--text-primary: #e4e6eb;--text-secondary: #b0b3b8;--text-muted: #8a8d91;--accent: #4dabf7;--accent-hover: #74c0fc;--border: #2d3748;--header-bg: #0f0f1a}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.6;color:var(--text-primary);background:var(--bg-primary);transition:background .3s ease,color .3s ease}a{color:var(--accent);text-decoration:none;transition:color .2s ease}a:hover{color:var(--accent-hover)}.site-header{background:var(--header-bg);padding:0 20px;position:sticky;top:0;z-index:100;box-shadow:0 2px 4px #0000001a}.header-container{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;height:60px}.site-logo{font-size:1.25rem;font-weight:700;color:var(--header-text);text-decoration:none}.site-logo:hover{color:var(--header-text);opacity:.9}.header-nav{display:flex;align-items:center;gap:24px}.header-nav a{color:var(--header-text);opacity:.85;font-size:.95rem;transition:opacity .2s ease}.header-nav a:hover,.header-nav a.active{opacity:1}.nav-divider{width:1px;height:20px;background:#fff3}.theme-toggle{background:none;border:none;color:var(--header-text);cursor:pointer;padding:8px;opacity:.85;font-size:1.1rem}.theme-toggle:hover{opacity:1}.main-content{max-width:900px;margin:0 auto;padding:30px 20px}.page-title{font-size:1.75rem;font-weight:600;margin-bottom:8px;color:var(--text-primary)}.page-subtitle{color:var(--text-muted);margin-bottom:24px}.news-list{list-style:none}.news-item{padding:16px 0;border-bottom:1px solid var(--border);display:flex;gap:12px}.news-item:last-child{border-bottom:none}.news-rank{color:var(--text-muted);font-size:.9rem;min-width:28px;text-align:right}.news-content{flex:1}.news-title{font-size:1rem;font-weight:500;color:var(--text-primary);line-height:1.4;margin-bottom:4px}.news-title:hover{color:var(--accent)}.news-title:visited{color:var(--text-secondary)}.news-meta{font-size:.85rem;color:var(--text-muted)}.news-source{color:var(--text-secondary)}.tenant-tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:1px solid var(--border);padding-bottom:16px}.tenant-tab{padding:8px 16px;border-radius:6px;font-size:.9rem;color:var(--text-secondary);background:transparent;border:1px solid var(--border);cursor:pointer;transition:all .2s ease;text-decoration:none}.tenant-tab:hover{background:var(--bg-secondary);color:var(--text-primary)}.tenant-tab.active{background:var(--accent);color:#fff;border-color:var(--accent)}.admin-container{max-width:1000px;margin:0 auto;padding:30px 20px}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border)}.admin-header h1{font-size:1.5rem;font-weight:600}.admin-actions{display:flex;gap:12px;align-items:center}.admin-filters{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:16px;margin-bottom:24px}.filter-group{display:flex;align-items:center;gap:12px;margin-bottom:12px}.filter-group:last-child{margin-bottom:0}.filter-group label{font-weight:500;color:var(--text-secondary);min-width:60px}.filter-group button{padding:6px 12px;border:1px solid var(--border);border-radius:4px;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;font-size:.85rem;transition:all .2s ease}.filter-group button:hover{background:var(--bg-primary)}.filter-group button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.article-card{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:16px;margin-bottom:12px;transition:box-shadow .2s ease}.article-card:hover{box-shadow:0 2px 8px #00000014}.article-card.excluded{opacity:.6;background:#dc35450d}.article-card.unpublished{background:#ffc1070d}.article-status{margin-bottom:8px}.badge{font-size:.7rem;padding:3px 8px;border-radius:4px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge.published{background:#28a74526;color:var(--success)}.badge.unpublished{background:#ffc10726;color:#856404}.badge.excluded{background:#dc354526;color:var(--danger)}.article-title{font-size:1rem;font-weight:500;margin-bottom:6px}.article-title a{color:var(--text-primary)}.article-title a:hover{color:var(--accent)}.article-meta{font-size:.85rem;color:var(--text-muted);margin-bottom:12px}.article-actions{display:flex;gap:8px}.btn{padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;gap:6px}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);color:#fff}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--bg-primary)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#c82333}.btn-small{padding:4px 10px;font-size:.8rem}.login-container{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 60px)}.login-form{max-width:360px;width:100%;padding:32px;background:var(--bg-card);border-radius:12px;border:1px solid var(--border);box-shadow:0 4px 12px #00000014}.login-form h2{text-align:center;margin-bottom:8px;font-size:1.5rem}.login-form p{text-align:center;color:var(--text-muted);margin-bottom:24px}.loading{text-align:center;padding:40px;color:var(--text-muted)}.error{text-align:center;padding:20px;color:var(--danger);background:#dc35451a;border-radius:8px}.site-footer{text-align:center;padding:24px;color:var(--text-muted);font-size:.85rem;border-top:1px solid var(--border);margin-top:40px}.site-footer a{color:var(--text-secondary)}@media(max-width:640px){.header-nav{gap:16px}.header-nav a{font-size:.85rem}.tenant-tabs{flex-wrap:wrap}.page-title{font-size:1.5rem}}
