/* Layout bazowy + sticky footer */
html, body { height: 100%; }
* { box-sizing: border-box; margin: 0; padding: 0; }
body {
  min-height: 100vh;
  display: flex; flex-direction: column;
  font-family: Arial, system-ui, Segoe UI, sans-serif;
  background: #111; color: #eee; line-height: 1.7;
}

/* Header */
header {
  background:#1a1a1a; border-bottom:2px solid #333;
}
.top {
  max-width:1000px; margin:0 auto; padding:14px 20px;
  display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.brand { display:flex; align-items:center; gap:12px; }
.brand img { width:48px; height:48px; border-radius:8px; }
.brand h1 { font-size:1.2rem; font-weight:700; color:#fff; }

/* Main (rozpycha stopkę) */
main { flex: 1; }
.wrap { max-width:1000px; margin:0 auto; padding:20px; }

/* Karty postów */
.card {
  background:#1b1b1b; border:1px solid #2a2a2a; border-radius:12px;
  padding:16px; margin-bottom:14px;
}
.card h3 { font-size:1.15rem; margin-bottom:6px; }
.meta { font-size:.9rem; color:#a8a8a8; margin-bottom:10px; }
.content { white-space:pre-wrap; }

/* Zdjęcia w poście – mniejsze i responsywne */
.post-img {
  width:100%; max-width:640px; height:auto;
  display:block; margin:10px auto; border-radius:10px; border:1px solid #2a2a2a;
}

/* Załączniki */
.attach { margin-top:8px; }
.attach strong { display:block; margin-bottom:6px; }
.attach a {
  display:inline-block; padding:8px 10px; margin:4px 6px 0 0;
  border:1px solid #2a2a2a; border-radius:8px; text-decoration:none; color:#e6e6e6;
}
.attach a:hover { background:#fff; color:#000; }

/* Komunikaty */
.notice {
  background:#121212; border:1px dashed #2a2a2a; color:#bdbdbd;
  border-radius:10px; padding:14px; text-align:center;
}

/* Formularze / przyciski */
form, .login {
  background:#1b1b1b; border:1px solid #2a2a2a; border-radius:12px; padding:18px;
}
label { display:block; margin:6px 0; color:#cfcfcf; }
input, textarea {
  width:100%; background:#0f0f0f; color:#eaeaea;
  border:1px solid #2a2a2a; border-radius:8px; padding:10px; margin-bottom:12px;
}
.btn {
  display:inline-block; background:#fff; color:#000;
  border-radius:10px; padding:10px 14px; border:none; cursor:pointer;
}
.btn:hover { background:#e1e1e1; }

/* Footer przyklejony na dole */
footer {
  background:#1a1a1a; border-top:2px solid #333; color:#a7a7a7;
}
footer .wrap { padding:16px 20px; text-align:center; }
