*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #14181c;--surface: #1b2228;--surface2: #242c34;--text: #9ab;--text-bright: #def;--text-dim: #678;--accent: #00e054;--accent-hover: #40bcf4;--border: #2c3440;--star: #00e054;--heart: #ff9010;--link: #40bcf4}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;background:var(--bg);color:var(--text);min-height:100dvh}a{color:var(--link);text-decoration:none}a:hover,strong a{color:var(--text-bright)}button{cursor:pointer;border:none;font:inherit}.login-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100dvh;gap:16px;padding:20px}.login-screen h1{font-size:2rem;letter-spacing:-.02em;color:var(--text-bright)}.login-screen p{color:var(--text-dim)}#login-form{display:flex;gap:8px;width:100%;max-width:360px}#username-input{flex:1;padding:10px 14px;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text-bright);font-size:1rem;outline:none}#username-input:focus{border-color:var(--accent)}#login-form button{padding:10px 20px;border-radius:8px;background:var(--accent);color:#14181c;font-weight:600}.error{color:#e94;font-size:.875rem}.feed-header{position:sticky;top:0;z-index:10;background:var(--bg);border-bottom:1px solid var(--border);padding:12px 16px;display:flex;align-items:center;justify-content:space-between}.feed-header h1{font-size:1.2rem;color:var(--text-bright)}.header-controls{display:flex;align-items:center;gap:10px}.current-user{color:var(--text-dim);font-size:.875rem}.view-modes{display:flex;gap:2px;background:var(--surface);border-radius:6px;padding:2px}.mode-btn{padding:5px 10px;border-radius:4px;font-size:.75rem;background:transparent;color:var(--text-dim)}.mode-btn:hover{color:var(--text)}.mode-btn.active{background:var(--surface2);color:var(--text-bright)}.change-user-btn{padding:6px 12px;border-radius:6px;font-size:.8rem;background:var(--surface2);color:var(--text)}.change-user-btn:hover{background:var(--border)}.feed{max-width:640px;margin:0 auto;padding:8px 16px}.activity-card{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--border)}.card-left{flex-shrink:0}.card-body{flex:1;min-width:0}.card-header{display:flex;gap:8px;align-items:center}.header-text{font-size:.875rem;line-height:1.4}.header-text strong{color:var(--text-bright)}.avatar{width:20px;height:20px;border-radius:50%;flex-shrink:0;object-fit:cover}.avatar.placeholder{background:var(--surface2);display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:.6rem;color:var(--text-dim)}.poster{width:60px;border-radius:4px}.stars{color:var(--star);font-size:.85rem}.year{color:var(--text-dim);font-size:.8rem}.time{color:var(--text-dim);font-size:.75rem;white-space:nowrap}.rewatch{color:var(--text-dim)}.liked{color:var(--heart)}.card-meta{margin-top:2px}.review-text{margin-top:6px;font-size:.825rem;color:var(--text-dim);line-height:1.5}.inline-review{margin-top:4px}.expand-review-btn{background:none;color:var(--link);font-size:.75rem;padding:0;margin-top:2px}.expand-review-btn:hover{color:var(--text-bright)}.group-card{padding:10px 0;border-bottom:1px solid var(--border)}.group-header{display:flex;gap:8px;align-items:center}.group-header strong{color:var(--text-bright)}.group-summary{color:var(--text-dim);font-size:.825rem}.expand-btn{margin-left:auto;flex-shrink:0;padding:3px 8px;border-radius:4px;font-size:.7rem;background:var(--surface2);color:var(--text-dim)}.expand-btn:hover{background:var(--border)}.group-details{display:none;margin-top:6px;padding-left:28px}.group-details.expanded{display:block}.group-details .activity-card{padding:6px 0}.group-details .poster{width:44px}#load-more-container{text-align:center;padding:20px}.load-more-btn{padding:10px 24px;border-radius:8px;background:var(--surface2);color:var(--text);font-size:.9rem}.load-more-btn:hover{background:var(--border)}.loading{text-align:center;padding:20px;color:var(--text-dim)}@media(max-width:480px){.feed-header{flex-direction:column;gap:8px;align-items:stretch}.header-controls{justify-content:space-between}.poster{width:48px}}
