/*
 * Trillion Club warm & safe theme
 *
 * Purpose:
 * - Make the forum feel warmer, safer, and more trustworthy.
 * - Keep Misago structure unchanged.
 * - Loaded through Misago's theme CSS system after default CSS.
 */

:root {
  --tc-bg: #fffaf3;
  --tc-bg-soft: #fff4e6;
  --tc-card: #ffffff;
  --tc-border: #eadfce;

  --tc-primary: #2f6f73;
  --tc-primary-dark: #235457;
  --tc-primary-soft: #e4f2f1;

  --tc-accent: #c9893f;
  --tc-accent-soft: #fff1dc;

  --tc-text: #263238;
  --tc-muted: #6d7a7a;

  --tc-danger-soft: #fff0ed;
  --tc-success-soft: #edf8f3;

  --tc-radius: 16px;
  --tc-shadow: 0 10px 30px rgba(62, 47, 31, 0.08);
}

/* Whole page */
body {
  background:
    radial-gradient(circle at top left, rgba(255, 226, 183, 0.55), transparent 34rem),
    radial-gradient(circle at top right, rgba(190, 230, 224, 0.55), transparent 34rem),
    var(--tc-bg);
  color: var(--tc-text);
}

/* Links */
a {
  color: var(--tc-primary);
}

a:hover,
a:focus {
  color: var(--tc-primary-dark);
}

/* Main navbar / header */
.navbar,
.navbar-default,
.navbar-misago,
.site-navbar {
  background: linear-gradient(135deg, #fff7ea 0%, #f2e6d0 60%, #e6d3b2 100%) !important;
  border: 0 !important;
  box-shadow: 0 8px 24px rgba(124, 92, 42, 0.12);
}

.navbar a,
.navbar-brand,
.navbar-nav > li > a {
  color: #4a3a28 !important;
}

.navbar a:hover,
.navbar-brand:hover,
.navbar-nav > li > a:hover {
  color: #8a6a2f !important;
}

.navbar-brand,
.site-branding-text {
  font-weight: 800;
  letter-spacing: 0.015em;
}

.navbar-brand::before,
.site-branding-text::before {
  content: "✦";
  display: inline-block;
  margin-right: 0.45rem;
  color: #8a6a2f;
}

/* Forum title / page headers */
.page-header,
.misago-page-header {
  border-bottom-color: var(--tc-border);
}

.page-header h1,
.misago-page-header h1,
h1,
h2,
h3 {
  color: #223f41;
}

.page-header,
.page-header-bg-image,
.page-header-banner,
.page-header-banner-bg-image {
  background:
    radial-gradient(circle at 12% 18%, rgba(255, 248, 233, 0.72), transparent 28%),
    linear-gradient(135deg, rgba(255, 247, 234, 0.98), rgba(242, 230, 208, 0.96) 55%, rgba(230, 211, 178, 0.98));
}

.page-header-bg-overlay,
.page-header-banner-bg-overlay {
  background:
    radial-gradient(circle at 12% 18%, rgba(255, 255, 255, 0.42), transparent 28%),
    radial-gradient(circle at 85% 25%, rgba(255, 246, 228, 0.36), transparent 30%);
}

.page-header h1,
.page-header .breadcrumbs,
.page-header .breadcrumbs a,
.page-header-details,
.page-header-details a {
  color: #4a3a28;
}

.page-header h1 {
  text-shadow: none;
}

.page-header-details {
  border-top-color: rgba(138, 106, 47, 0.18);
}

/* Cards / panels / forum rows */
.panel,
.card,
.well,
.list-group,
.forum-list,
.threads-list,
.posts-list,
.category,
.category-body,
.categories-list,
.modal-content,
.dropdown-menu {
  border-radius: var(--tc-radius);
  border-color: var(--tc-border) !important;
  box-shadow: var(--tc-shadow);
}

.panel,
.card,
.well,
.list-group-item,
.modal-content,
.dropdown-menu {
  background-color: rgba(255, 255, 255, 0.92);
}

/* Category headers */
.panel-heading,
.card-header,
.category-header,
.modal-header {
  background: linear-gradient(135deg, var(--tc-primary-soft), #fff8ef) !important;
  border-color: var(--tc-border) !important;
  color: #223f41 !important;
  border-top-left-radius: var(--tc-radius);
  border-top-right-radius: var(--tc-radius);
}

.panel-footer,
.modal-footer {
  background: var(--tc-bg-soft);
  border-color: var(--tc-border);
}

/* Buttons */
.btn-primary,
.button-primary,
.open > .dropdown-toggle.btn-primary {
  background-color: var(--tc-primary) !important;
  border-color: var(--tc-primary) !important;
  color: #ffffff !important;
  border-radius: 999px;
  box-shadow: 0 6px 16px rgba(47, 111, 115, 0.2);
}

.btn-primary:hover,
.btn-primary:focus,
.button-primary:hover,
.button-primary:focus {
  background-color: var(--tc-primary-dark) !important;
  border-color: var(--tc-primary-dark) !important;
}

.btn-default,
.btn-secondary,
.btn-outline {
  border-radius: 999px;
}

@media (min-width: 768px) {
  .btn-sign-in,
  .btn-register {
    color: #ffffff !important;
  }

  .btn-sign-in:hover,
  .btn-sign-in:focus,
  .btn-register:hover,
  .btn-register:focus {
    color: #ffffff !important;
  }
}

/* Inputs */
.form-control,
input,
textarea,
select {
  border-radius: 12px !important;
  border-color: var(--tc-border) !important;
}

.form-control:focus,
input:focus,
textarea:focus,
select:focus {
  border-color: var(--tc-primary) !important;
  box-shadow: 0 0 0 3px rgba(47, 111, 115, 0.14) !important;
}

/* Alerts */
.alert-info,
.list-group-message,
.message-panel {
  background-color: var(--tc-primary-soft);
  border-color: #c7e4e1;
  color: #235457;
}

.alert-warning {
  background-color: var(--tc-accent-soft);
  border-color: #f0d2a5;
  color: #78501f;
}

.alert-danger {
  background-color: var(--tc-danger-soft);
}

.item-title,
.thread-title,
.threads-list-item-title,
.category-title {
  color: var(--tc-text);
  font-weight: 700;
}

.text-muted,
.item-meta,
.thread-meta,
.category-description,
.page-lead {
  color: var(--tc-muted);
}

.threads-list-category-label,
.label,
.badge {
  border-radius: 999px;
}

.post-side,
.post-heading,
.thread-toolbar-third {
  background-color: rgba(255, 250, 243, 0.72);
}

.user-avatar,
.poster-avatar {
  box-shadow: 0 0 0 3px #fffaf3, 0 0 0 5px rgba(47, 111, 115, 0.2);
}

/* Footer */
footer,
.footer,
.page-footer,
.site-footer {
  background: transparent;
  color: var(--tc-muted);
}

/* Small trust feeling */
.tc-trust-note {
  background: var(--tc-success-soft);
  border: 1px solid #ccebdc;
  border-radius: var(--tc-radius);
  padding: 14px 18px;
  color: #2c5f4a;
  box-shadow: var(--tc-shadow);
}

/* Mobile polish */
@media (max-width: 768px) {
  .panel,
  .card,
  .well,
  .list-group {
    border-radius: 12px;
  }

  .btn-primary,
  .btn-default,
  .btn-secondary {
    border-radius: 14px;
  }
}