:root{--bg:#0e0f12;--card:#17191e;--text:#e7e7ea;--muted:#a8a8ac;--accent:#6ca0ff;--accent-strong:#86b4ff;--ok:#45c09f;--warn:#ffb74d;--err:#ff6b6b}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Inter,Helvetica,Arial,sans-serif;line-height:1.6;font-size:16px}
h1{font-size:28px;margin:0 0 12px}
h2{font-size:24px;margin:0 0 10px}
h3{font-size:20px;margin:0 0 8px}
p{margin:0 0 12px}
a{color:var(--accent)}
a:hover{color:var(--accent-strong)}
.container{max-width:960px;margin:0 auto;padding:16px}
.site-header,.site-footer{background:var(--card);border-bottom:1px solid #222}
.site-header a{color:var(--text);text-decoration:none}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.site-title{margin:0;font-size:22px}
.menu-toggle{background:var(--accent);border:1px solid transparent;color:#08101f;border-radius:8px;padding:8px 12px;cursor:pointer}
.menu-toggle:focus{outline:2px solid var(--accent);outline-offset:2px}
.nav{display:none;margin-top:8px}
.nav.open{display:block}
.nav a{display:block;color:var(--muted);padding:8px 0}
.lead{background:var(--card);padding:20px;border-radius:12px;margin:16px 0}
.newsletter{margin:12px 0}
input,textarea,button{width:100%;padding:12px;margin:6px 0;border-radius:10px;border:1px solid #2a2d36;background:#0b0c10;color:var(--text);font-size:16px}
input:focus,textarea:focus,button:focus{outline:2px solid var(--accent);outline-offset:2px}
button{cursor:pointer;background:var(--accent);border:none;color:#08101f}
button:hover{background:var(--accent-strong)}
.inline-form{display:flex;gap:10px;align-items:flex-start;flex-wrap:wrap}
.inline-form input{flex:1;min-width:240px}
label{display:block;font-size:14px;color:var(--muted);margin-top:6px}
.comment-form input[type=number]{max-width:140px}
.post-list{list-style:none;padding:0}
.post-list li{background:var(--card);margin:12px 0;padding:16px;border-radius:12px}
.post .body{white-space:pre-wrap}
.table{width:100%;border-collapse:collapse}
.table th,.table td{padding:10px;border-bottom:1px solid #2a2d36}
.stats{display:flex;gap:12px;margin:8px 0;color:var(--muted)}
.btn{display:inline-block;background:var(--accent);color:#08101f;padding:10px 14px;border-radius:10px;text-decoration:none;margin-right:8px;border:1px solid transparent}
.btn:hover{background:var(--accent-strong)}
.btn:focus{outline:2px solid var(--accent);outline-offset:2px}
.flash{margin:8px 0}
.flash-item{padding:10px;border-radius:10px;margin:6px 0}
.flash-item.success{background:#0e2f29;color:#8be4c3}
.flash-item.error{background:#3b1414;color:#ffb3b3}
.flash-item.info{background:#0f2238;color:#a5c8ff}
.linklike{background:none;border:none;color:#ff9b9b;text-decoration:underline;cursor:pointer}
label.checkbox{display:flex;align-items:center;gap:8px}

/* Comments */
.comment-meta{color:var(--muted);margin-bottom:4px}
.comment-body{margin-bottom:6px}
.comment-actions{margin-top:6px}
.hidden{display:none}

/* Minimal centered layout used for standalone pages */
.page-minimal{min-height:100vh;display:flex;flex-direction:column}
.main-center{flex:1;display:flex;align-items:center;justify-content:center;padding:24px}
.card{max-width:760px;width:100%;background:var(--card);border:1px solid #222;border-radius:12px;padding:24px;box-shadow:0 1px 2px rgba(0,0,0,.25)}
.muted{color:var(--muted)}
.footer{padding:16px;text-align:center;color:var(--muted);font-size:14px}
