/* ============================================
   PagliucAI Community - Design System
   Charcoal / Amber / Warm Ivory
   ============================================ */

:root {
  --bg: #1A1A1F;
  --surface: #242429;
  --ink: #E8E4DD;
  --muted: #8A877F;
  --accent: #D4943A;
  --accent-hover: #E5A84E;
  --success: #4A9F6E;
  --border: #333338;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 16px;
  --space-lg: 32px;
  --space-xl: 64px;
  --font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --content-width: 1120px;
}

/* ---- GLOBAL RESETS ---- */
body.pagliucai-dark {
  background-color: var(--bg) !important;
  color: var(--ink) !important;
  font-family: var(--font) !important;
  font-size: 17px;
  line-height: 1.6;
}

body.pagliucai-dark *::selection {
  background: var(--accent);
  color: var(--bg);
}

/* ---- TYPOGRAPHY ---- */
body.pagliucai-dark h1,
body.pagliucai-dark h2,
body.pagliucai-dark h3,
body.pagliucai-dark h4 {
  color: var(--ink) !important;
  font-family: var(--font) !important;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -0.01em;
}

body.pagliucai-dark h1 { font-size: clamp(1.8rem, 4vw, 2.6rem); }
body.pagliucai-dark h2 { font-size: clamp(1.4rem, 3vw, 2rem); }
body.pagliucai-dark h3 { font-size: clamp(1.15rem, 2.5vw, 1.5rem); }

body.pagliucai-dark a {
  color: var(--accent);
  text-decoration: none;
  transition: color 0.15s;
}
body.pagliucai-dark a:hover { color: var(--accent-hover); }

body.pagliucai-dark p,
body.pagliucai-dark li,
body.pagliucai-dark td { color: var(--ink); }

/* ---- HEADER / NAV ---- */
body.pagliucai-dark header.wp-block-template-part,
body.pagliucai-dark .wp-block-navigation {
  background: var(--bg) !important;
  border-bottom: 1px solid var(--border);
}

body.pagliucai-dark .wp-block-navigation a {
  color: var(--ink) !important;
  font-size: 15px;
  font-weight: 500;
  padding: 8px 14px;
  border-radius: var(--radius-sm);
  transition: background 0.15s, color 0.15s;
}

body.pagliucai-dark .wp-block-navigation a:hover,
body.pagliucai-dark .wp-block-navigation a[aria-current="page"] {
  background: var(--surface);
  color: var(--accent) !important;
}

body.pagliucai-dark .wp-block-site-title a {
  color: var(--accent) !important;
  font-weight: 700;
  font-size: 20px;
}

/* ---- FOOTER ---- */
body.pagliucai-dark footer.wp-block-template-part {
  background: var(--surface) !important;
  border-top: 1px solid var(--border);
  color: var(--muted) !important;
}

/* ---- BUTTONS ---- */
body.pagliucai-dark .wp-block-button__link,
body.pagliucai-dark .wp-element-button,
body.pagliucai-dark button[type="submit"],
body.pagliucai-dark input[type="submit"],
body.pagliucai-dark #buddypress input[type="submit"],
body.pagliucai-dark #bbpress-forums .button {
  background: var(--accent) !important;
  color: var(--bg) !important;
  border: none !important;
  border-radius: var(--radius-sm) !important;
  font-family: var(--font) !important;
  font-weight: 600;
  font-size: 15px;
  padding: 10px 22px;
  cursor: pointer;
  transition: background 0.15s;
}

body.pagliucai-dark .wp-block-button__link:hover,
body.pagliucai-dark .wp-element-button:hover,
body.pagliucai-dark button[type="submit"]:hover,
body.pagliucai-dark input[type="submit"]:hover {
  background: var(--accent-hover) !important;
}

/* ---- FORMS / INPUTS ---- */
body.pagliucai-dark input[type="text"],
body.pagliucai-dark input[type="email"],
body.pagliucai-dark input[type="password"],
body.pagliucai-dark input[type="search"],
body.pagliucai-dark input[type="url"],
body.pagliucai-dark textarea,
body.pagliucai-dark select {
  background: var(--surface) !important;
  color: var(--ink) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-sm) !important;
  font-family: var(--font) !important;
  font-size: 16px;
  padding: 10px 14px;
  transition: border-color 0.15s;
}

body.pagliucai-dark input:focus,
body.pagliucai-dark textarea:focus,
body.pagliucai-dark select:focus {
  border-color: var(--accent) !important;
  outline: none;
  box-shadow: 0 0 0 2px rgba(212, 148, 58, 0.15);
}

body.pagliucai-dark label {
  color: var(--ink);
  font-weight: 500;
  font-size: 15px;
}

/* ---- CARDS ---- */
.pai-card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  padding: var(--space-lg);
  transition: border-color 0.2s;
}
.pai-card:hover {
  border-color: var(--accent);
}

/* ---- BUDDYPRESS ---- */
body.pagliucai-dark #buddypress {
  color: var(--ink);
}

body.pagliucai-dark #buddypress div.activity-list,
body.pagliucai-dark #buddypress .bp-list {
  background: transparent;
}

body.pagliucai-dark #buddypress .activity-list li,
body.pagliucai-dark #buddypress ul.item-list li {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  margin-bottom: var(--space-md);
  padding: var(--space-lg);
}

body.pagliucai-dark #buddypress .activity-header,
body.pagliucai-dark #buddypress .activity-header a {
  color: var(--ink) !important;
}

body.pagliucai-dark #buddypress .activity-meta a {
  color: var(--muted) !important;
  font-size: 13px;
}
body.pagliucai-dark #buddypress .activity-meta a:hover {
  color: var(--accent) !important;
}

body.pagliucai-dark #buddypress .activity-inner,
body.pagliucai-dark #buddypress .acomment-content {
  color: var(--ink);
}

body.pagliucai-dark #buddypress div#subnav.item-list-tabs,
body.pagliucai-dark #buddypress div.item-list-tabs {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  margin-bottom: var(--space-lg);
}

body.pagliucai-dark #buddypress div.item-list-tabs ul li a,
body.pagliucai-dark #buddypress div.item-list-tabs ul li span {
  color: var(--muted) !important;
  padding: 8px 16px;
}

body.pagliucai-dark #buddypress div.item-list-tabs ul li.selected a,
body.pagliucai-dark #buddypress div.item-list-tabs ul li.current a {
  color: var(--accent) !important;
  font-weight: 600;
}

body.pagliucai-dark #buddypress #whats-new-form textarea,
body.pagliucai-dark #buddypress .ac-input {
  background: var(--bg) !important;
  color: var(--ink) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-sm);
}

body.pagliucai-dark #buddypress img.avatar {
  border-radius: 50%;
  border: 2px solid var(--border);
}

body.pagliucai-dark #buddypress .item-title a {
  color: var(--ink) !important;
  font-weight: 600;
}
body.pagliucai-dark #buddypress .item-title a:hover {
  color: var(--accent) !important;
}

body.pagliucai-dark #buddypress .item-meta {
  color: var(--muted) !important;
}

/* ---- BBPRESS FORUMS ---- */
body.pagliucai-dark #bbpress-forums {
  color: var(--ink);
}

body.pagliucai-dark #bbpress-forums li.bbp-header,
body.pagliucai-dark #bbpress-forums li.bbp-footer {
  background: var(--surface) !important;
  border: 1px solid var(--border);
  border-radius: var(--radius-sm);
  color: var(--muted) !important;
}

body.pagliucai-dark #bbpress-forums li.bbp-body ul.forum,
body.pagliucai-dark #bbpress-forums li.bbp-body ul.topic {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  margin-bottom: var(--space-sm);
  padding: var(--space-md) var(--space-lg);
}

body.pagliucai-dark #bbpress-forums .bbp-forum-title,
body.pagliucai-dark #bbpress-forums .bbp-topic-title a {
  color: var(--ink) !important;
  font-weight: 600;
  font-size: 17px;
}

body.pagliucai-dark #bbpress-forums .bbp-forum-title:hover,
body.pagliucai-dark #bbpress-forums .bbp-topic-title a:hover {
  color: var(--accent) !important;
}

body.pagliucai-dark #bbpress-forums .bbp-forum-info .bbp-forum-content {
  color: var(--muted);
  font-size: 14px;
}

body.pagliucai-dark #bbpress-forums .bbp-topic-meta,
body.pagliucai-dark #bbpress-forums .bbp-forum-freshness {
  color: var(--muted) !important;
  font-size: 13px;
}

body.pagliucai-dark #bbpress-forums .bbp-topic-meta a {
  color: var(--muted) !important;
}
body.pagliucai-dark #bbpress-forums .bbp-topic-meta a:hover {
  color: var(--accent) !important;
}

body.pagliucai-dark #bbpress-forums div.bbp-the-content-wrapper textarea {
  background: var(--bg) !important;
  color: var(--ink) !important;
  border: 1px solid var(--border) !important;
}

body.pagliucai-dark #bbpress-forums fieldset.bbp-form {
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  padding: var(--space-lg);
  background: var(--surface);
}

/* ---- TUTOR LMS ---- */
body.pagliucai-dark .tutor-wrap {
  color: var(--ink);
}

body.pagliucai-dark .tutor-card,
body.pagliucai-dark .tutor-course-card {
  background: var(--surface) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-md) !important;
  overflow: hidden;
}

body.pagliucai-dark .tutor-card:hover,
body.pagliucai-dark .tutor-course-card:hover {
  border-color: var(--accent) !important;
}

body.pagliucai-dark .tutor-course-card .tutor-course-name a {
  color: var(--ink) !important;
  font-weight: 600;
}

body.pagliucai-dark .tutor-course-card .tutor-course-name a:hover {
  color: var(--accent) !important;
}

body.pagliucai-dark .tutor-course-card .tutor-course-meta,
body.pagliucai-dark .tutor-course-card .tutor-course-author {
  color: var(--muted) !important;
}

body.pagliucai-dark .tutor-btn,
body.pagliucai-dark .tutor-btn-primary {
  background: var(--accent) !important;
  color: var(--bg) !important;
  border: none !important;
  border-radius: var(--radius-sm) !important;
}

body.pagliucai-dark .tutor-btn:hover,
body.pagliucai-dark .tutor-btn-primary:hover {
  background: var(--accent-hover) !important;
}

/* Progress bars */
body.pagliucai-dark .tutor-progress-bar {
  background: var(--border) !important;
}
body.pagliucai-dark .tutor-progress-filled {
  background: var(--accent) !important;
}

/* ---- PAGINATION ---- */
body.pagliucai-dark .wp-block-query-pagination,
body.pagliucai-dark .pagination,
body.pagliucai-dark #buddypress .pagination-links {
  color: var(--muted);
}

body.pagliucai-dark .wp-block-query-pagination a,
body.pagliucai-dark .pagination a,
body.pagliucai-dark #buddypress .pagination-links a {
  color: var(--ink) !important;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-sm);
  padding: 6px 12px;
}

body.pagliucai-dark .wp-block-query-pagination a:hover,
body.pagliucai-dark .pagination a:hover {
  border-color: var(--accent);
  color: var(--accent) !important;
}

/* ---- REGISTRATION / LOGIN ---- */
body.pagliucai-dark #register-page,
body.pagliucai-dark #buddypress #signup-form {
  max-width: 520px;
  margin: 0 auto;
}

body.pagliucai-dark #buddypress #signup-form .register-section {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--radius-md);
  padding: var(--space-lg);
  margin-bottom: var(--space-lg);
}

/* ---- UTILITY ---- */
.text-muted { color: var(--muted) !important; }
.text-accent { color: var(--accent) !important; }
.bg-surface { background: var(--surface) !important; }
.border-subtle { border: 1px solid var(--border); }

/* ---- FRONT PAGE ---- */
body.pagliucai-dark.home .wp-block-post-title,
body.pagliucai-dark.page-id-39 .entry-title,
body.pagliucai-dark.home header.entry-header {
  display: none !important;
}

/* ---- RESPONSIVE ---- */
@media (max-width: 768px) {
  body.pagliucai-dark h1 { font-size: 1.7rem; }
  body.pagliucai-dark h2 { font-size: 1.3rem; }
  
  body.pagliucai-dark #buddypress .activity-list li,
  body.pagliucai-dark #buddypress ul.item-list li {
    padding: var(--space-md);
  }
  
  body.pagliucai-dark #bbpress-forums li.bbp-body ul.forum,
  body.pagliucai-dark #bbpress-forums li.bbp-body ul.topic {
    padding: var(--space-md);
  }
}
