/*
 Theme Name:   Blocksy Child — Collins Radio S-Line
 Theme URI:    https://vk6ada.com.au
 Description:  Collins Radio S-Line / KWM-2 inspired child theme for Blocksy. Color palette derived from St. James Gray wrinkle finish, S-Line front panel dark gray, cabinet medium gray, and the iconic Collins emblem crimson red.
 Author:       Mike Peace VK6ADA
 Author URI:   https://vk6ada.com.au
 Template:     blocksy
 Version:      1.3.0
 License:      GNU General Public License v2 or later
 License URI:  https://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  blocksy-child-collins
 Tags:         amateur-radio, collins-radio, vintage, ham-radio
*/


/* =============================================================================
   COLLINS RADIO S-LINE / KWM-2 INSPIRED THEME — v1.3
   ─────────────────────────────────────────────────────
   v1.3 CHANGE: Fixed search icon contrast in header
                 (Trim Gray #B3B0AB default, Collins White #F5F3F0 on hover)
   v1.2 CHANGE: Page background → Light Warm Gray #DFDDD9
                 (replaces Ivory #EBE8E3)

   Author: Mike Peace VK6ADA / r390a.net Administrator
   ============================================================================= */


/* ---------------------------------------------------------------------------
   1. CSS CUSTOM PROPERTIES — Collins Design Tokens
   --------------------------------------------------------------------------- */
:root {
  /* ── St. James Gray Family ─────────────────────────────────────────── */
  --collins-st-james-gray:        #7B7570;
  --collins-st-james-gray-light:  #8E8883;
  --collins-st-james-gray-dark:   #625D59;

  /* ── S-Line Grays ──────────────────────────────────────────────────── */
  --collins-cabinet-gray:         #9C9994;
  --collins-trim-gray:            #B3B0AB;
  --collins-panel-dark:           #3E3B38;
  --collins-panel-charcoal:       #4A4643;
  --collins-shadow-gray:          #2C2926;

  /* ── Collins Emblem Red ────────────────────────────────────────────── */
  --collins-red:                  #C0272D;
  --collins-red-dark:             #9B1B20;
  --collins-red-light:            #D94F54;
  --collins-red-glow:             rgba(192, 39, 45, 0.15);

  /* ── Neutrals ──────────────────────────────────────────────────────── */
  --collins-white:                #F5F3F0;
  --collins-light-gray:           #DFDDD9;  /* Page background           */
  --collins-black:                #1A1816;
  --collins-text:                 #2C2926;
  --collins-text-muted:           #6B6662;

  /* ── Functional Accents ────────────────────────────────────────────── */
  --collins-meter-amber:          #D4A84B;
  --collins-dial-cream:           #E8DFD0;
  --collins-chassis-silver:       #C8C5C0;
}


/* ---------------------------------------------------------------------------
   2. GLOBAL FOUNDATION
   --------------------------------------------------------------------------- */
body.collins-radio-theme {
  background-color: var(--collins-light-gray) !important;
  color: var(--collins-text);
  line-height: 1.7;
}

::selection {
  background-color: var(--collins-red);
  color: var(--collins-white);
}


/* ---------------------------------------------------------------------------
   3. HEADINGS
   --------------------------------------------------------------------------- */
body.collins-radio-theme h1,
body.collins-radio-theme h2,
body.collins-radio-theme h3,
body.collins-radio-theme h4,
body.collins-radio-theme h5,
body.collins-radio-theme h6,
body.collins-radio-theme .entry-title,
body.collins-radio-theme .page-title {
  color: var(--collins-panel-dark);
  font-weight: 700;
  line-height: 1.3;
}

body.collins-radio-theme .entry-content h2,
body.collins-radio-theme .page-content h2 {
  padding-left: 0.75em;
  border-left: 4px solid var(--collins-red);
  margin-top: 2em;
  margin-bottom: 1em;
}

body.collins-radio-theme .entry-content h3,
body.collins-radio-theme .page-content h3 {
  color: var(--collins-st-james-gray-dark);
}


/* ---------------------------------------------------------------------------
   4. LINKS
   --------------------------------------------------------------------------- */
body.collins-radio-theme a {
  color: var(--collins-red);
  transition: color 0.25s ease;
}

body.collins-radio-theme a:hover {
  color: var(--collins-red-dark);
}

body.collins-radio-theme .entry-content a {
  color: var(--collins-red);
  text-decoration: none;
  border-bottom: 1px solid var(--collins-red-glow);
  transition: all 0.25s ease;
}

body.collins-radio-theme .entry-content a:hover {
  color: var(--collins-red-dark);
  border-bottom-color: var(--collins-red-dark);
}


/* ---------------------------------------------------------------------------
   5. BUTTONS
   --------------------------------------------------------------------------- */
body.collins-radio-theme .wp-element-button,
body.collins-radio-theme .wp-block-button__link,
body.collins-radio-theme .ct-button,
body.collins-radio-theme button[type="submit"],
body.collins-radio-theme input[type="submit"] {
  background-color: var(--collins-red) !important;
  color: var(--collins-white) !important;
  border: none;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  border-radius: 3px;
  transition: all 0.25s ease;
  box-shadow: 0 2px 8px rgba(192, 39, 45, 0.2);
}

body.collins-radio-theme .wp-element-button:hover,
body.collins-radio-theme .wp-block-button__link:hover,
body.collins-radio-theme .ct-button:hover,
body.collins-radio-theme button[type="submit"]:hover,
body.collins-radio-theme input[type="submit"]:hover {
  background-color: var(--collins-red-dark) !important;
  box-shadow: 0 4px 16px rgba(192, 39, 45, 0.3);
  transform: translateY(-1px);
}

body.collins-radio-theme .wp-block-button.is-style-outline .wp-block-button__link {
  background-color: transparent !important;
  color: var(--collins-panel-dark) !important;
  border: 2px solid var(--collins-st-james-gray) !important;
}

body.collins-radio-theme .wp-block-button.is-style-outline .wp-block-button__link:hover {
  background-color: var(--collins-panel-dark) !important;
  color: var(--collins-white) !important;
  border-color: var(--collins-panel-dark) !important;
}


/* ---------------------------------------------------------------------------
   6. CONTENT CARDS & ARTICLES
   --------------------------------------------------------------------------- */
body.collins-radio-theme .ct-container article,
body.collins-radio-theme .entries > article,
body.collins-radio-theme [data-cards] article {
  background-color: var(--collins-white);
  border-radius: 6px;
  box-shadow: 0 2px 8px rgba(44, 41, 38, 0.10);
  overflow: hidden;
  transition: box-shadow 0.25s ease, transform 0.25s ease;
}

body.collins-radio-theme .ct-container article:hover,
body.collins-radio-theme .entries > article:hover {
  box-shadow: 0 4px 16px rgba(44, 41, 38, 0.18);
}

body.collins-radio-theme .entry-meta,
body.collins-radio-theme .ct-meta {
  color: var(--collins-text-muted);
  font-size: 0.85rem;
}

body.collins-radio-theme .entry-meta a:hover,
body.collins-radio-theme .ct-meta a:hover {
  color: var(--collins-red);
}

body.collins-radio-theme .ct-meta .ct-categories a,
body.collins-radio-theme .entry-categories a {
  background-color: var(--collins-red);
  color: var(--collins-white);
  padding: 0.15em 0.55em;
  border-radius: 3px;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-decoration: none;
}


/* ---------------------------------------------------------------------------
   7. IMAGES
   --------------------------------------------------------------------------- */
body.collins-radio-theme .entry-content img,
body.collins-radio-theme .wp-block-image img {
  border: 3px solid var(--collins-panel-charcoal);
  border-radius: 3px;
  box-shadow: 0 2px 8px rgba(44, 41, 38, 0.12);
  transition: all 0.25s ease;
}

body.collins-radio-theme .entry-content img:hover,
body.collins-radio-theme .wp-block-image img:hover {
  border-color: var(--collins-st-james-gray);
  box-shadow: 0 4px 16px rgba(44, 41, 38, 0.2);
}

body.collins-radio-theme figcaption,
body.collins-radio-theme .wp-element-caption {
  color: var(--collins-text-muted);
  font-size: 0.85rem;
  font-style: italic;
}


/* ---------------------------------------------------------------------------
   8. SIDEBAR & WIDGETS
   --------------------------------------------------------------------------- */
body.collins-radio-theme .ct-sidebar .ct-widget,
body.collins-radio-theme .ct-sidebar .widget {
  padding: 1.25em;
  margin-bottom: 1.5em;
  background-color: var(--collins-white);
  border-radius: 6px;
  border: 1px solid rgba(123, 117, 112, 0.12);
  box-shadow: 0 1px 4px rgba(44, 41, 38, 0.06);
}

body.collins-radio-theme .ct-sidebar .widget-title,
body.collins-radio-theme .ct-sidebar .ct-widget h2 {
  color: var(--collins-panel-dark);
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding-bottom: 0.5em;
  margin-bottom: 0.75em;
  border-bottom: 2px solid var(--collins-red);
}


/* ---------------------------------------------------------------------------
   9. FOOTER WIDGET TITLES
   --------------------------------------------------------------------------- */
body.collins-radio-theme .ct-footer .widget-title,
body.collins-radio-theme footer .widget-title {
  color: var(--collins-white) !important;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  border-bottom: 2px solid var(--collins-red);
  padding-bottom: 0.5em;
  margin-bottom: 0.75em;
}


/* ---------------------------------------------------------------------------
   10. FORMS & INPUTS
   --------------------------------------------------------------------------- */
body.collins-radio-theme input[type="text"],
body.collins-radio-theme input[type="email"],
body.collins-radio-theme input[type="url"],
body.collins-radio-theme input[type="tel"],
body.collins-radio-theme input[type="number"],
body.collins-radio-theme input[type="password"],
body.collins-radio-theme input[type="search"],
body.collins-radio-theme textarea,
body.collins-radio-theme select {
  background-color: var(--collins-white);
  border: 1px solid var(--collins-trim-gray);
  border-radius: 3px;
  color: var(--collins-text);
  transition: all 0.25s ease;
}

body.collins-radio-theme input:focus,
body.collins-radio-theme textarea:focus,
body.collins-radio-theme select:focus {
  outline: none;
  border-color: var(--collins-red) !important;
  box-shadow: 0 0 0 3px var(--collins-red-glow);
}


/* ---------------------------------------------------------------------------
   11. TABLES
   --------------------------------------------------------------------------- */
body.collins-radio-theme .entry-content table thead th,
body.collins-radio-theme .wp-block-table thead th {
  background-color: var(--collins-panel-dark) !important;
  color: var(--collins-white) !important;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  padding: 0.75em 1em;
  text-align: left;
}

body.collins-radio-theme .entry-content table tbody td,
body.collins-radio-theme .wp-block-table tbody td {
  padding: 0.65em 1em;
  border-bottom: 1px solid rgba(123, 117, 112, 0.12);
}

body.collins-radio-theme .entry-content table tbody tr:nth-child(even),
body.collins-radio-theme .wp-block-table tbody tr:nth-child(even) {
  background-color: rgba(123, 117, 112, 0.04);
}

body.collins-radio-theme .entry-content table tbody tr:hover,
body.collins-radio-theme .wp-block-table tbody tr:hover {
  background-color: var(--collins-red-glow);
}


/* ---------------------------------------------------------------------------
   12. BLOCKQUOTES & PULLQUOTES
   --------------------------------------------------------------------------- */
body.collins-radio-theme blockquote,
body.collins-radio-theme .wp-block-quote {
  border-left: 4px solid var(--collins-red) !important;
  background-color: rgba(123, 117, 112, 0.06);
  padding: 1em 1.5em;
  border-radius: 0 4px 4px 0;
  font-style: italic;
  color: var(--collins-st-james-gray-dark);
}

body.collins-radio-theme blockquote cite,
body.collins-radio-theme .wp-block-quote cite {
  color: var(--collins-text-muted);
  font-size: 0.85rem;
  font-style: normal;
}

body.collins-radio-theme .wp-block-pullquote {
  border-top: 4px solid var(--collins-red) !important;
  border-bottom: 4px solid var(--collins-red) !important;
  border-left: none !important;
}


/* ---------------------------------------------------------------------------
   13. CODE BLOCKS
   --------------------------------------------------------------------------- */
body.collins-radio-theme code {
  font-family: 'Courier New', Courier, monospace;
  background-color: rgba(62, 59, 56, 0.08);
  color: var(--collins-panel-dark);
  padding: 0.15em 0.4em;
  border-radius: 3px;
  font-size: 0.9em;
}

body.collins-radio-theme pre,
body.collins-radio-theme .wp-block-code {
  background-color: var(--collins-panel-dark) !important;
  color: var(--collins-dial-cream) !important;
  padding: 1.25em 1.5em;
  border-radius: 6px;
  border-left: 4px solid var(--collins-red);
  overflow-x: auto;
}

body.collins-radio-theme pre code,
body.collins-radio-theme .wp-block-code code {
  background: none !important;
  color: inherit !important;
  padding: 0;
}


/* ---------------------------------------------------------------------------
   14. PAGINATION
   --------------------------------------------------------------------------- */
body.collins-radio-theme .ct-pagination .page-numbers.current,
body.collins-radio-theme .ct-pagination a:hover {
  background-color: var(--collins-red) !important;
  color: var(--collins-white) !important;
  border-color: var(--collins-red) !important;
}


/* ---------------------------------------------------------------------------
   15. COMMENTS
   --------------------------------------------------------------------------- */
body.collins-radio-theme .ct-comments .comment-author .fn {
  color: var(--collins-panel-dark);
  font-weight: 600;
}

body.collins-radio-theme .ct-comments .reply a {
  color: var(--collins-red);
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}


/* ---------------------------------------------------------------------------
   16. SCROLLBAR
   --------------------------------------------------------------------------- */
::-webkit-scrollbar {
  width: 10px;
}

::-webkit-scrollbar-track {
  background: var(--collins-light-gray);
}

::-webkit-scrollbar-thumb {
  background: var(--collins-st-james-gray);
  border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--collins-st-james-gray-dark);
}


/* ---------------------------------------------------------------------------
   17. UTILITY CLASSES
   --------------------------------------------------------------------------- */
.bg-panel-dark      { background-color: var(--collins-panel-dark) !important; color: var(--collins-white) !important; }
.bg-st-james        { background-color: var(--collins-st-james-gray) !important; color: var(--collins-white) !important; }
.bg-cabinet-gray    { background-color: var(--collins-cabinet-gray) !important; }
.bg-light-gray      { background-color: var(--collins-light-gray) !important; }
.bg-red             { background-color: var(--collins-red) !important; color: var(--collins-white) !important; }
.bg-dial-cream      { background-color: var(--collins-dial-cream) !important; }

.text-red           { color: var(--collins-red) !important; }
.text-st-james      { color: var(--collins-st-james-gray) !important; }
.text-panel-dark    { color: var(--collins-panel-dark) !important; }
.text-muted         { color: var(--collins-text-muted) !important; }
.text-white         { color: var(--collins-white) !important; }

.border-red         { border-color: var(--collins-red) !important; }
.border-st-james    { border-color: var(--collins-st-james-gray) !important; }
.border-panel       { border-color: var(--collins-panel-dark) !important; }

.collins-callout {
  background-color: var(--collins-dial-cream);
  border: 1px solid var(--collins-trim-gray);
  border-left: 4px solid var(--collins-red);
  border-radius: 4px;
  padding: 1.25em 1.5em;
  margin: 1.5em 0;
}


/* ---------------------------------------------------------------------------
   18. RESPONSIVE
   --------------------------------------------------------------------------- */
@media (max-width: 768px) {
  body.collins-radio-theme h1 { font-size: 1.75rem; }
  body.collins-radio-theme h2 { font-size: 1.4rem; }
  body.collins-radio-theme h3 { font-size: 1.15rem; }

  body.collins-radio-theme .entry-content h2 {
    padding-left: 0.5em;
    border-left-width: 3px;
  }
}
