:root{
.search{display:flex;gap:8px;margin-bottom:16px}
.search input{flex:1;padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.15);background:#0b1220;color:var(--ink)}
.search button{padding:10px 14px;border-radius:10px;border:0;background:var(--brand);color:#fff}


.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.cover{width:100%;height:180px;object-fit:cover;border-radius:12px;border:1px solid rgba(255,255,255,.08)}


.meta{color:var(--muted);font-size:.9rem}
.muted{color:var(--muted)}


/* Editor */
.toolbar{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.toolbar button,.upload-btn{padding:8px 10px;border-radius:10px;background:#1f2937;border:1px solid rgba(255,255,255,.12);color:#fff;cursor:pointer}
.toolbar .upload-btn{display:inline-flex;align-items:center;gap:6px}


.editor{min-height:360px;background:#0b1220;border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:14px;overflow:auto}
.editor:focus{outline:2px solid rgba(124,58,237,.35)}
.editor img{max-width:100%;height:auto;border-radius:8px}
.editor a{color:#93c5fd}
.editor h2{margin-top:1em}
.editor h3{margin-top:.8em}


label{display:block;margin:10px 0}
input[type="text"], input[type="url"], input[type="password"], input[type="file"], input[type="search"], input[type="email"], input[type="datetime-local"], textarea, #uploadResult{
width:100%;padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.15);background:#0b1220;color:var(--ink)
}


.alert{padding:10px 12px;border-radius:10px;margin-bottom:10px}
.alert.error{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.4)}


.post .content{font-size:1.08rem}
.post .content blockquote{border-left:3px solid rgba(255,255,255,.25);padding-left:10px;color:#cbd5e1}


@media (max-width:640px){
.search{flex-direction:column}
.cover{height:150px}
}