.sidebar{width:280px;min-width:280px;background:var(--bg-secondary);border-right:1px solid var(--border);display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:16px;padding-top:max(16px,env(safe-area-inset-top));border-bottom:1px solid var(--border)}.sidebar-header h1{margin:0;font-size:18px;color:var(--accent);font-weight:700}.header-actions{display:flex;gap:4px}.theme-btn,.settings-btn{background:none;border:none;color:var(--text-secondary);font-size:18px;cursor:pointer;padding:4px 8px;border-radius:6px;line-height:1}.theme-btn:hover,.settings-btn:hover{background:var(--hover-bg)}.add-feed-form{display:flex;padding:12px;gap:8px;border-bottom:1px solid var(--border)}.add-feed-form input{flex:1;padding:8px 10px;border-radius:6px;border:1px solid var(--border);background:var(--input-bg);color:var(--text-primary);font-size:13px;outline:none;min-width:0}.add-feed-form input:focus{border-color:var(--accent)}.add-feed-form button{width:34px;height:34px;border-radius:6px;border:none;background:var(--accent);color:#fff;font-size:20px;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center}.add-feed-form button:disabled{opacity:.5}.feed-list{flex:1;overflow-y:auto;padding:8px 0;padding-bottom:max(8px,env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch}.feed-list .empty-hint{color:var(--text-muted);text-align:center;padding:24px 16px;font-size:13px}.feed-item{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;cursor:pointer;transition:background .15s;border-left:3px solid transparent}.feed-item:hover{background:var(--hover-bg)}.feed-item.active{background:var(--active-bg);border-left-color:var(--accent)}.feed-item-main{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.feed-title{color:var(--text-primary);font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.unread-badge{background:var(--accent);color:#fff;font-size:11px;font-weight:700;padding:1px 6px;border-radius:10px;flex-shrink:0}.feed-loading,.feed-error{font-size:14px;flex-shrink:0}.feed-item-actions{display:flex;gap:2px;opacity:0;transition:opacity .15s}.feed-item:hover .feed-item-actions{opacity:1}.action-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:16px;padding:2px 4px;border-radius:4px;line-height:1}.action-btn:hover{color:var(--text-primary);background:var(--hover-bg)}.action-btn.danger:hover{color:var(--accent)}@media(max-width:768px){.sidebar{width:100%;min-width:0;height:100%}.feed-item-actions{opacity:1}.feed-item{padding:12px 16px}}.article-list{flex:1;overflow-y:auto;padding:20px 24px;padding-bottom:max(20px,env(safe-area-inset-bottom));height:100vh;height:100dvh;box-sizing:border-box;-webkit-overflow-scrolling:touch}.article-list.empty{display:flex;flex-direction:column;align-items:center;justify-content:center}.article-list-title{margin:0 0 16px;font-size:20px;color:var(--accent)}.article-card{padding:14px 16px;margin-bottom:8px;border-radius:8px;background:var(--bg-card);cursor:pointer;transition:background .15s,border-color .15s;border:1px solid var(--border);box-shadow:var(--shadow)}.article-card:hover{background:var(--hover-bg)}.article-card.active{border-color:var(--accent);background:var(--active-bg)}.article-card.unread{border-left:3px solid var(--dot-color)}.article-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.article-card-header h3{margin:0;font-size:15px;color:var(--text-primary);line-height:1.4}.dot{width:8px;height:8px;border-radius:50%;background:var(--dot-color);flex-shrink:0;margin-top:6px}.article-card-meta{display:flex;align-items:center;gap:10px;margin-top:6px;font-size:12px;color:var(--text-muted)}.translated-tag{color:var(--accent-green);font-size:11px;border:1px solid var(--accent-green);padding:0 6px;border-radius:3px}.translate-btn{background:transparent;border:1px solid var(--accent);color:var(--accent);font-size:11px;padding:2px 8px;border-radius:3px;cursor:pointer;transition:background .15s,color .15s}.translate-btn:hover{background:var(--accent);color:#fff}.article-card-snippet{margin:8px 0 0;font-size:13px;color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media(max-width:768px){.article-list{padding:12px 16px;height:100%}.article-list-title{font-size:17px;margin-bottom:10px}.article-card{padding:12px 14px}.article-card-header h3{font-size:14px}}.article-view-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-overlay);z-index:1000;display:flex;align-items:center;justify-content:center;animation:fadeIn .15s}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.article-view{width:100%;height:100%;background:var(--bg-primary);overflow-y:auto;display:flex;flex-direction:column;-webkit-overflow-scrolling:touch}.article-view-header{padding:24px 32px 16px;padding-top:max(24px,env(safe-area-inset-top));border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg-primary);z-index:10}.article-view-header h1{margin:8px 0 4px;font-size:22px;color:var(--text-primary);line-height:1.4}.close-btn{position:absolute;top:16px;right:16px;background:var(--border);border:none;color:var(--text-primary);font-size:18px;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.close-btn:hover{background:var(--accent);color:#fff}.article-view-meta{display:flex;gap:16px;align-items:center;font-size:13px;color:var(--text-muted);flex-wrap:wrap}.article-view-meta a{color:var(--accent);text-decoration:none}.article-view-meta a:hover{text-decoration:underline}.article-view-content{flex:1;padding:24px 32px 48px;max-width:900px;margin:0 auto;width:100%;box-sizing:border-box}.article-view-content h2{font-size:16px;color:var(--accent);margin:0 0 12px;font-weight:600}.content-body{color:var(--text-secondary);font-size:15px;line-height:1.8;word-wrap:break-word}.content-body img{max-width:100%;height:auto}.content-body pre{background:var(--input-bg);padding:12px;border-radius:6px;overflow-x:auto;font-size:13px;line-height:1.6}.content-body code{background:var(--input-bg);padding:2px 6px;border-radius:3px;font-size:13px;color:var(--text-primary)}.content-body blockquote{border-left:3px solid var(--accent);margin:12px 0;padding:4px 16px;color:var(--text-secondary)}.content-body a{color:var(--accent)}.translation-divider{display:flex;align-items:center;justify-content:center;margin:24px 0;border-top:1px solid var(--border);padding-top:16px}.start-translation-btn{background:var(--accent);border:none;color:#fff;padding:10px 32px;border-radius:24px;font-size:15px;cursor:pointer;transition:background .15s;font-weight:500}.start-translation-btn:hover{background:var(--accent-hover)}.toggle-translation-btn{background:var(--border);border:none;color:var(--text-primary);padding:6px 20px;border-radius:20px;font-size:13px;cursor:pointer;transition:background .15s}.toggle-translation-btn:hover{background:var(--accent);color:#fff}.translation-content{border-left:3px solid var(--accent-green);padding-left:16px}.translation-body{color:var(--text-secondary)}.translating-hint{color:var(--text-muted);font-style:italic}@media(max-width:768px){.article-view-header,.article-view-content{padding:16px}.article-view-header h1{font-size:18px;padding-right:40px}.content-body{font-size:14px}}:root{--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-card: #ffffff;--bg-overlay: rgba(0, 0, 0, .6);--border: #e0e0e0;--text-primary: #1a1a1a;--text-secondary: #555;--text-muted: #999;--accent: #d63850;--accent-hover: #c03146;--accent-green: #2da87a;--shadow: 0 1px 3px rgba(0,0,0,.08);--input-bg: #f0f0f0;--hover-bg: rgba(0,0,0,.04);--active-bg: rgba(214,56,80,.08);--dot-color: #d63850}:root.dark{--bg-primary: #1a1a2e;--bg-secondary: #16213e;--bg-card: #16213e;--bg-overlay: rgba(0, 0, 0, .85);--border: #0f3460;--text-primary: #eee;--text-secondary: #aaa;--text-muted: #888;--accent: #e94560;--accent-hover: #d63850;--accent-green: #4ecca3;--shadow: none;--input-bg: #1a1a2e;--hover-bg: rgba(255,255,255,.04);--active-bg: rgba(233,69,96,.12);--dot-color: #e94560}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{height:100%;background:var(--bg-primary);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-tap-highlight-color:transparent}.app{display:flex;height:100vh;height:100dvh;overflow:hidden}.main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-primary)}.settings-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-overlay);z-index:2000;display:flex;align-items:center;justify-content:center}.settings-dialog{background:var(--bg-card);border-radius:12px;padding:24px;width:90%;max-width:420px;border:1px solid var(--border)}.settings-dialog h2{margin:0 0 16px;color:var(--accent);font-size:18px}.settings-dialog label{display:block;font-size:13px;color:var(--text-secondary);margin-bottom:12px}.settings-dialog label input,.settings-dialog label select{display:block;width:100%;margin-top:4px;padding:8px 10px;border-radius:6px;border:1px solid var(--border);background:var(--input-bg);color:var(--text-primary);font-size:13px;outline:none}.settings-dialog label input:focus,.settings-dialog label select:focus{border-color:var(--accent)}.settings-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.settings-actions button{padding:8px 20px;border-radius:6px;border:none;font-size:14px;cursor:pointer;background:var(--accent);color:#fff}.settings-actions button.secondary{background:var(--border);color:var(--text-primary)}.mobile-back-btn{display:none;align-items:center;gap:6px;padding:12px 16px;padding-top:max(12px,env(safe-area-inset-top));background:var(--bg-secondary);border:none;border-bottom:1px solid var(--border);color:var(--accent);font-size:15px;cursor:pointer}.empty-hint{color:var(--text-muted);text-align:center;padding:48px 16px;font-size:15px;line-height:1.6}@media(max-width:768px){.app{flex-direction:column}.main-content{flex:1;min-height:0}.mobile-back-btn{display:flex}}
