
:root{
  --bg:#ffffff; --text:#14181f; --muted:#5d6b7c; --soft:#f5f7fb; --brand:#1a73e8;
  --card:#ffffff; --line:#e9edf3; --danger:#e03e3e; --ok:#1fbf7b;
}
*{box-sizing:border-box}
html{font-size:16px}
body{margin:0;background:var(--bg);color:var(--text);font-family:Vazirmatn,IRANSans,Segoe UI,system-ui,sans-serif;line-height:1.9}
a{color:#1a73e8;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:2px}
a:hover{color:#1257b7}
.container{max-width:980px;margin:0 auto;padding:0 18px}
.navbar{position:sticky;top:0;background:#fff;border-bottom:1px solid var(--line);z-index:50}
.navbar .brand{font-weight:900;letter-spacing:.2px;color:var(--text);text-decoration:none}
.nav-actions a{margin-inline-start:8px}
.searchbar{display:flex;gap:8px;align-items:center}
.searchbar input{width:100%;padding:.55rem .8rem;border-radius:12px;border:1px solid var(--line)}
.btn{display:inline-block;padding:.6rem .9rem;border-radius:12px;border:1px solid var(--line);background:#fff;transition:.15s;font-weight:700;text-decoration:none}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--brand);color:#fff;border-color:var(--brand)}
.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger)}
.btn-ghost{background:transparent}
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 1px 0 #f2f5f9; overflow-wrap:anywhere; word-break:break-word}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.meta{color:var(--muted);font-size:.9rem}
.badge{display:inline-block;background:var(--soft);border:1px solid var(--line);padding:2px 8px;border-radius:999px;font-size:.8rem;margin-inline-end:6px}
.flash{padding:10px;border-radius:12px;margin:10px 0}
.flash.success{background:#eafaf3;border:1px solid #cbf1dc}
.flash.warning{background:#fff8e6;border:1px solid #ffe8a3}
.flash.danger{ background:#ffecec; border:1px solid #ffc4c4}
input[type=text], input[type=password], .form-control, textarea{width:100%;padding:12px;border-radius:12px;border:1px solid var(--line);background:#fff;color:var(--text)}
label{display:block;margin:8px 0 6px;font-weight:800}
hr{border:0;height:1px;background:var(--line);margin:24px 0}
.content{overflow-wrap:anywhere; word-break:break-word}
.content img{max-width:100%; height:auto; display:block; margin:8px auto; border-radius:12px; border:1px solid var(--line)}
.content pre{background:#0f172a; color:#e2e8f0; padding:12px; border-radius:12px; overflow:auto; white-space:pre-wrap}
.content blockquote{border-right:4px solid var(--line); padding:6px 12px; margin:8px 0; color:#334155; background:#f8fafc; border-radius:12px}
.card h3 a{color:#1a73e8}
.card h3 a:hover{color:#1257b7}
.excerpt{color:#283041;opacity:.85}
.tags{margin-top:6px}
.cover{width:100%; height:190px; object-fit:cover; border-radius:14px; border:1px solid var(--line); margin-bottom:10px}
.footer{margin-top:36px; padding:18px; color:#667085; border-top:1px solid var(--line); text-align:center; font-size:.9rem}
.spoiler{background:#000; color:transparent; border-radius:10px; padding:0 6px; cursor:pointer; transition:.15s; text-shadow:0 0 8px rgba(0,0,0,.6)}
.spoiler.revealed{color:#111; background:#eee; text-shadow:none}
.ta-left  { text-align:left; }
.ta-center{ text-align:center; }
.ta-right { text-align:right; }
.cover{
  width:100%;
  display:block;
  border-radius:14px;
  border:1px solid var(--line);
}

.card-cover{
  height:190px;
  object-fit:cover;
  margin-bottom:10px;
}

.post-cover{
  height:auto;
  margin:12px 0;
}


    