*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #0a0a0a;--bg-card: #141414;--bg-hover: #1a1a1a;--border: #222;--text: #e0e0e0;--text-dim: #666;--text-muted: #444;--accent: #4af;--accent-hover: #5bf;--green: #0f8;--red: #f44;--orange: #fa0;--radius: 8px}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;min-height:100vh}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}button{cursor:pointer;border:none;border-radius:var(--radius);font-size:14px;padding:8px 16px;transition:all .15s;font-family:inherit}.btn-primary{background:var(--accent);color:#000;font-weight:600}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:var(--bg-hover);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{border-color:var(--text-dim)}input,textarea,select{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);padding:10px 14px;font-size:14px;width:100%;outline:none;font-family:inherit;transition:border-color .15s}input:focus,textarea:focus,select:focus{border-color:var(--accent)}textarea{resize:vertical;min-height:80px}.container{max-width:1200px;margin:0 auto;padding:0 20px}.nav{background:var(--bg-card);border-bottom:1px solid var(--border);padding:12px 0;position:sticky;top:0;z-index:100}.nav .container{display:flex;align-items:center;justify-content:space-between}.nav-logo{font-size:20px;font-weight:700;color:var(--text);letter-spacing:-.5px}.nav-logo span{color:var(--accent)}.nav-actions{display:flex;align-items:center;gap:12px}.nav-avatar{width:32px;height:32px;border-radius:50%;border:2px solid var(--border);cursor:pointer;object-fit:cover}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;transition:border-color .15s}.card:hover{border-color:var(--text-muted)}.card-body{padding:12px}.card-title{font-size:15px;font-weight:600;margin-bottom:4px;color:var(--text)}.card-meta{font-size:12px;color:var(--text-dim)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;padding:20px 0}.feed-list{max-width:640px;margin:0 auto;padding:10px 0;display:flex;flex-direction:column;gap:24px}.feed-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.feed-header{display:flex;align-items:center;gap:10px;padding:12px 14px}.feed-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.feed-username{font-weight:600;font-size:14px;color:var(--text);text-decoration:none}.feed-username:hover{color:var(--accent)}.feed-time{font-size:12px;color:var(--text-muted);margin-left:8px}.feed-media{display:block;overflow:hidden}.feed-media-vertical{max-height:70vh}.feed-info{padding:12px 14px}.feed-title{font-size:16px;font-weight:600;color:var(--text);text-decoration:none;display:block;margin-bottom:4px}.feed-title:hover{color:var(--accent)}.feed-meta{font-size:12px;color:var(--text-dim)}@media(min-width:900px){.feed-list{max-width:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.feed-list .feed-item{display:flex;flex-direction:column}.feed-list .feed-media{aspect-ratio:16/9;position:relative}.feed-list .feed-media video,.feed-list .feed-media img{width:100%!important;height:100%!important;max-height:none!important;object-fit:cover}.feed-list .feed-media>div{width:100%;height:100%}.feed-list .feed-media-vertical{max-height:none;background:#000}.feed-list .feed-media-vertical video,.feed-list .feed-media-vertical img{object-fit:contain!important}.feed-list .feed-header{padding:8px 12px}.feed-list .feed-avatar{width:24px;height:24px}.feed-list .feed-username{font-size:13px}.feed-list .feed-info{padding:8px 12px}.feed-list .feed-title{font-size:14px;margin-bottom:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}.tag{display:inline-block;padding:3px 10px;background:var(--bg-hover);border:1px solid var(--border);border-radius:20px;font-size:12px;color:var(--text-dim);margin:2px}.tag-tool{background:#1a1a2e;border-color:#2a2a4e;color:var(--accent)}.tag-opensource{background:#0a1a0a;border-color:#0a3a0a;color:var(--green)}.tool-stack{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.dropzone{border:2px dashed var(--border);border-radius:var(--radius);padding:40px;text-align:center;cursor:pointer;transition:border-color .15s;color:var(--text-dim)}.dropzone:hover,.dropzone.active{border-color:var(--accent);color:var(--text)}.thumb-container{position:relative;width:100%;aspect-ratio:16/9;background:#000;overflow:hidden}.thumb-container.vertical{aspect-ratio:9/16;max-height:400px}.thumb-container img,.thumb-container video{width:100%;height:100%;object-fit:cover}.duration-badge{position:absolute;bottom:6px;right:6px;background:#000c;padding:2px 6px;border-radius:4px;font-size:11px;color:#fff}.page-header{padding:30px 0 20px;border-bottom:1px solid var(--border);margin-bottom:20px}.page-header h1{font-size:24px;font-weight:700}.filters{display:flex;gap:8px;padding:16px 0;flex-wrap:wrap;justify-content:center}.filter-btn{padding:6px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:20px;color:var(--text-dim);font-size:13px;cursor:pointer}.filter-btn.active{border-color:var(--accent);color:var(--accent)}.hero{text-align:center;padding:60px 0 40px}.hero h1{font-size:36px;font-weight:700;margin-bottom:12px}.hero p{font-size:16px;color:var(--text-dim);max-width:600px;margin:0 auto}.comment{padding:12px 0;border-bottom:1px solid var(--border)}.comment:last-child{border-bottom:none}.comment-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.comment-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover}.comment-name{font-size:13px;font-weight:600}.comment-time{font-size:11px;color:var(--text-dim)}.comment-body{font-size:14px}.upload-form{max-width:700px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.upload-form label{font-size:13px;color:var(--text-dim);margin-bottom:4px;display:block}.tool-selector{display:flex;gap:8px;align-items:center;margin-bottom:8px}.tool-selector select{width:auto;min-width:120px}
