:root{--bg:#f0f2f5;--surface:#fff;--text:#1c1e21;--text-2:#65676b;--text-3:#8a8d91;--line:#e4e6eb;--accent:#1877f2;--accent-soft:#e7f0fd;--like:#1877f2;--save:#e6a700;--radius:10px;--shadow:0 1px 2px #00000014, 0 1px 1px #0000000a;color:var(--text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#18191a;--surface:#242526;--text:#e4e6eb;--text-2:#b0b3b8;--text-3:#8a8d91;--line:#3a3b3c;--accent:#5b9cff;--accent-soft:#263951;--shadow:0 1px 2px #0006}}*{box-sizing:border-box}html,body{background:var(--bg);margin:0;padding:0}#root{min-height:100dvh}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app{min-height:100dvh}.topbar{z-index:20;background:var(--surface);box-shadow:var(--shadow);position:sticky;top:0}.topbar__inner{justify-content:space-between;align-items:center;max-width:680px;height:56px;margin:0 auto;padding:0 16px;display:flex}.logo{letter-spacing:-.5px;color:var(--text);margin:0;font-size:22px}.logo span{color:var(--accent)}.me{background:linear-gradient(135deg, var(--accent), #8b5cf6);color:#fff;border-radius:50%;place-items:center;width:36px;height:36px;font-size:15px;font-weight:700;display:grid}.feed{flex-direction:column;gap:14px;max-width:680px;margin:0 auto;padding:16px 12px 80px;display:flex}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 16px 6px}.card__head{align-items:flex-start;gap:10px;display:flex}.avatar{color:#fff;-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;place-items:center;width:40px;height:40px;font-size:14px;font-weight:700;display:grid}.card__meta{flex:1;min-width:0}.card__author{align-items:center;gap:4px;margin:0;font-size:15px;font-weight:600;display:flex}.card__sub{color:var(--text-2);margin:1px 0 0;font-size:12.5px}.card__verified{display:inline-flex}.card__menu-wrap{position:relative}.icon-btn{cursor:pointer;width:36px;height:36px;color:var(--text-2);background:0 0;border:0;border-radius:50%;font-size:20px;line-height:1}.icon-btn:hover,.icon-btn:focus-visible{background:var(--line)}.menu{z-index:10;background:var(--surface);border:1px solid var(--line);border-radius:8px;flex-direction:column;min-width:180px;padding:4px;display:flex;position:absolute;top:40px;right:0;box-shadow:0 4px 16px #00000026}.menu button{text-align:left;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:10px 12px;font-size:14px}.menu button:hover,.menu button:focus-visible{background:var(--accent-soft)}.card__text{white-space:pre-wrap;margin:10px 0 12px;font-size:15px;line-height:1.45}.card__image{aspect-ratio:16/9;object-fit:cover;border-radius:8px;width:100%;height:auto;margin-bottom:12px;display:block}.link-preview{border:1px solid var(--line);color:inherit;background:var(--bg);border-radius:8px;flex-direction:column;gap:3px;margin-bottom:12px;padding:12px 14px;text-decoration:none;display:flex}.link-preview:hover,.link-preview:focus-visible{border-color:var(--accent)}.link-preview__domain{text-transform:uppercase;letter-spacing:.4px;color:var(--text-3);font-size:12px}.link-preview__title{font-size:15.5px;font-weight:700}.link-preview__desc{color:var(--text-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;display:-webkit-box;overflow:hidden}.tags{flex-wrap:wrap;gap:6px;margin:0 0 8px;padding:0;list-style:none;display:flex}.tag{color:var(--accent);background:var(--accent-soft);cursor:pointer;border-radius:999px;padding:3px 10px;font-size:12.5px;font-weight:600}.tag:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.card__actions{border-top:1px solid var(--line);gap:4px;padding:4px 0;display:flex}.action{color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:7px;padding:9px 4px;font-size:14px;font-weight:600;display:flex}.action:hover,.action:focus-visible{background:var(--bg)}.card__actions .action:first-child.action--active{color:var(--like)}.card__actions .action:nth-child(2).action--active{color:var(--save)}.action__count{color:var(--text-3);font-weight:400}.card--skeleton{flex-direction:column;gap:10px;padding-bottom:16px;display:flex}.sk{background:linear-gradient(90deg, var(--line) 25%, var(--bg) 50%, var(--line) 75%);background-size:200% 100%;border-radius:6px;animation:1.4s linear infinite shimmer}.sk--avatar{border-radius:50%;flex:none;width:40px;height:40px}.sk--line{height:12px}.sk--block{border-radius:8px;height:170px}.sk--w25{width:25%}.sk--w30{width:30%}.sk--w40{width:40%}.sk--w80{width:80%}.sk--w95{width:95%}.card--skeleton .card__head{gap:10px;margin-bottom:2px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.sk{animation:none}}.end-of-feed{text-align:center;color:var(--text-3);padding:18px 0 8px;font-size:13px}.empty{text-align:center;padding:48px 16px}.empty__title{margin:0 0 6px;font-size:18px;font-weight:700}.empty__sub{color:var(--text-2);margin:0}.interaction-chip{background:var(--text);color:var(--bg);z-index:30;border-radius:999px;padding:7px 14px;font-size:12.5px;position:fixed;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 4px 14px #00000040}.topbar__right{align-items:center;gap:10px;display:flex}.refresh-btn{background:var(--accent-soft);color:var(--accent);cursor:pointer;border:0;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600}.refresh-btn:hover,.refresh-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.sentinel{height:1px}.banner-wrap{z-index:15;pointer-events:none;justify-content:center;display:flex;position:sticky;top:62px}.new-posts-banner{pointer-events:auto;background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:999px;padding:9px 18px;font-size:14px;font-weight:600;animation:.25s ease-out dropIn;box-shadow:0 4px 14px #1877f266}.new-posts-banner:focus-visible{outline:2px solid var(--text);outline-offset:2px}@keyframes dropIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.new-posts-banner{animation:none}}.error-state{text-align:center;padding:40px 16px}.error-state__title{margin:0 0 4px;font-size:17px;font-weight:700}.error-state__sub{color:var(--text-2);margin:0 0 14px;font-size:14px}.retry-btn{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:600}@media (width>=700px){.feed{padding-top:24px}}
