/* Shared styles: responsive layer, forms, consent banner, community page */
.form-msg { font-family: 'JetBrains Mono', monospace; font-size: 12px; letter-spacing: 0.06em; min-height: 18px; color: #0A0A0A; }
.form-msg.err { color: #9B1C1C; }
.form-msg.ok { color: #14532D; }

.ma-consent { position: fixed; left: 16px; right: 16px; bottom: 16px; max-width: 580px; background: #0A0A0A; color: #F5F3EC; padding: 18px 20px; z-index: 9999; display: flex; gap: 16px; align-items: center; flex-wrap: wrap; font-family: 'Inter', sans-serif; font-size: 13px; line-height: 1.55; box-shadow: 0 8px 30px rgba(0,0,0,0.35); }
.ma-consent p { margin: 0; flex: 1 1 260px; }
.ma-consent a { border-bottom: 1px solid #F5F3EC; }
.ma-consent button { font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; padding: 11px 16px; border: 1px solid #F5F3EC; background: transparent; color: #F5F3EC; cursor: pointer; }
.ma-consent button.yes { background: #F5F3EC; color: #0A0A0A; }
.ma-consent button:hover { background: #39FF6A; color: #0A0A0A; border-color: #39FF6A; }

/* Community form */
.field { display: flex; flex-direction: column; gap: 8px; }
.field label, .field .lbl { font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: #6B6A64; }
.field input[type=text], .field input[type=email], .field textarea, .field select { background: transparent; border: none; border-bottom: 1px solid #0A0A0A; padding: 12px 0; font-size: 16px; font-family: 'Inter', sans-serif; color: #0A0A0A; border-radius: 0; width: 100%; }
.field textarea { border: 1px solid #0A0A0A; padding: 14px; min-height: 180px; resize: vertical; line-height: 1.6; }
.field input:focus, .field textarea:focus, .field select:focus { outline: none; border-color: #39FF6A; box-shadow: 0 1px 0 #39FF6A; }
.field input[type=file] { font-family: 'Inter', sans-serif; font-size: 14px; padding: 12px 0; }
.radios { display: flex; gap: 12px; flex-wrap: wrap; }
.radios label.opt { text-transform: none; letter-spacing: 0; font-family: 'Inter', sans-serif; font-size: 14px; color: #0A0A0A; border: 1px solid #0A0A0A; padding: 12px 18px; cursor: pointer; display: flex; align-items: center; gap: 10px; }
.radios label.opt:has(input:checked) { background: #0A0A0A; color: #F5F3EC; }
.radios input[type=radio] { accent-color: #39FF6A; margin: 0; }
.check { display: flex; gap: 12px; align-items: flex-start; font-size: 14px; line-height: 1.55; color: #2A2A28; cursor: pointer; }
.check input { margin-top: 3px; flex: none; }
.wall-card { border: 1px dashed rgba(10,10,10,0.35); min-height: 220px; display: flex; align-items: center; justify-content: center; padding: 24px; text-align: center; color: #6B6A64; font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; }

@media (max-width: 860px) {
  [style*="max-width: 1280px"] { padding-left: 20px !important; padding-right: 20px !important; padding-top: 44px !important; padding-bottom: 44px !important; }
  [style*="display: grid"]:not(.keep) { grid-template-columns: minmax(0, 1fr) !important; gap: 28px !important; }
  .pgrid.pgrid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 16px !important; }
  .pgrid > * { grid-column: auto !important; }
  .topbar.topbar { display: flex !important; justify-content: space-between; align-items: center; padding-top: 16px !important; padding-bottom: 16px !important; }
  .nav { display: none !important; }
  h1.disp { font-size: 30px !important; }
  h2.disp { font-size: 24px !important; }
  h3.disp { font-size: 22px !important; }
  [style*="justify-content: space-between"] { flex-wrap: wrap; gap: 12px; }
  .mono[style*="padding: 11px 40px"] { padding: 11px 16px !important; flex-wrap: wrap; justify-content: center; text-align: center; }
  .tile { height: 260px !important; }
  .card > .tile[style*="gap: 44px"] { flex-direction: column; height: auto !important; padding: 24px 0; gap: 20px !important; }
  [style*="font-size: 32px"], [style*="font-size: 30px; line-height: 1.34"] { font-size: 22px !important; }
  [style*="font-size: 40px; line-height: 1"] { font-size: 34px !important; }
  [style*="align-items: flex-end"] { flex-wrap: wrap !important; }
  input[type=email] { flex: 1 1 100% !important; min-width: 0; }
  button, .buy, .buy-inv, .btn-ink { white-space: normal; }
  [style*="align-items: flex-end; gap: 28px"] > a { flex: 1 1 100%; text-align: center; }
}
@media (max-width: 520px) {
  .pgrid.pgrid { grid-template-columns: minmax(0, 1fr) !important; }
  .pname { font-size: 13px; }
  [style*="width: 380px; height: 540px"] { width: 300px !important; height: 430px !important; }
  [style*="padding: 22px 40px"], [style*="padding: 19px 36px"] { padding-left: 22px !important; padding-right: 22px !important; }
  .ma-consent { left: 8px; right: 8px; bottom: 8px; }
}
