/*
Theme Name:  Stream School Online Child
Template:    Divi
Description: Joe Humphreys' Fly Fishing Stream School — Online School (Divi 5)
Version:     2.0.0
Author:      The Stream School
Requires at least: 6.0
Requires PHP: 7.4
*/

/* =========================================================
   Design Tokens — mirror these as Divi 5 Global Design
   Variables (Divi > Theme Builder > Design Variables)
   ========================================================= */
:root {
  /* Penn State brand palette - brand.psu.edu (accent hexes are best-known; verify vs the official PDF) */
  --ss-blue:         #1E407C;   /* Beaver Blue - primary */
  --ss-blue-dark:    #001E44;   /* Nittany Navy */
  --ss-green:        #1E8757;   /* PSU green accent */
  --ss-orange:       #E98300;   /* Invent Orange accent */
  --ss-slate:        #44525E;   /* PA Slate */
  --ss-dark:         #001E44;   /* Nittany Navy */
  --ss-pugh:         #96BEE6;   /* Pugh Blue - secondary */
  --ss-bg:           #F3F4F6;
  --ss-white:        #FFFFFF;   /* White Out */
  --ss-text:         #374151;
  --ss-text-light:   #6B7280;
  --ss-border:       #E5E7EB;

  /* Age-tier identity colors (PSU accents) */
  --ss-spark:        #E98300;   /* Spark 6-10 - Invent Orange */
  --ss-develop:      #1E8757;   /* Development 11-13 - PSU green */
  --ss-mastery:      #1E407C;   /* Mastery 14-17 - Beaver Blue */

  /* Proxima Nova is PSU's primary digital font (Adobe Fonts kit required);
     Roboto is PSU's free web alternative and loads now. */
  --ss-font:         'proxima-nova', 'Roboto', -apple-system, BlinkMacSystemFont, sans-serif;
  --ss-radius:       8px;
  --ss-radius-lg:    16px;
  --ss-shadow:       0 4px 24px rgba(0,0,0,0.10);
  --ss-shadow-lg:    0 8px 48px rgba(0,0,0,0.14);
}

body { font-family: var(--ss-font); color: var(--ss-text); }
h1, h2, h3, h4, h5, h6 { font-family: var(--ss-font); line-height: 1.15; }

/* =========================================================
   Navigation
   ========================================================= */
#main-header, .et-fixed-header { background: var(--ss-blue) !important; }
#main-header .nav li a { color: rgba(255,255,255,0.9) !important; font-weight: 500; }
#main-header .nav li a:hover { color: var(--ss-orange) !important; }

/* =========================================================
   Lesson / School Components
   ========================================================= */
.ss-week-card {
  background: var(--ss-white);
  border-radius: var(--ss-radius-lg);
  box-shadow: var(--ss-shadow);
  overflow: hidden;
}
.ss-week-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px; height: 44px;
  border-radius: 50%;
  font-weight: 800;
  font-size: 17px;
  color: #fff;
}
.ss-lesson-objective {
  border-left: 4px solid var(--ss-orange);
  background: #FFF7ED;
  padding: 16px 20px;
  border-radius: 0 var(--ss-radius) var(--ss-radius) 0;
}
.ss-homework-box {
  border: 2px dashed var(--ss-border);
  border-radius: var(--ss-radius-lg);
  padding: 24px;
  background: #FAFAFA;
}
.ss-badge {
  display: inline-block;
  padding: 6px 16px;
  border-radius: 100px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: #fff;
}
.ss-badge.spark   { background: var(--ss-spark); }
.ss-badge.develop { background: var(--ss-develop); }
.ss-badge.mastery { background: var(--ss-mastery); }

/* Print buttons (hidden on the printed page itself) */
.ss-print-btn, .ss-print-sheet {
  display: inline-flex; align-items: center; gap: 8px; cursor: pointer;
  font-family: var(--ss-font); font-weight: 600; text-decoration: none;
  border: none; border-radius: var(--ss-radius); color: #fff !important;
}
.ss-print-btn   { background: var(--ss-orange); padding: 13px 26px; font-size: 15px; }
.ss-print-sheet { background: var(--ss-blue);   padding: 8px 16px;  font-size: 13px; }
.ss-print-btn:hover, .ss-print-sheet:hover { filter: brightness(0.93); }
.ss-pdf-btn {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: var(--ss-font); font-weight: 700; font-size: 15px; text-decoration: none;
  background: var(--ss-green); color: #fff !important;
  padding: 14px 28px; border-radius: var(--ss-radius); box-shadow: var(--ss-shadow);
}
.ss-pdf-btn::before { content: "\2193"; font-weight: 700; }
.ss-pdf-btn:hover { filter: brightness(0.93); }

/* Print styles for homework pages */
@media print {
  #main-header, #main-footer, .ss-no-print,
  .ss-print-btn, .ss-print-sheet { display: none !important; }
  .ss-homework-box { border-color: #999; }
  body { font-size: 12pt; }
  /* "Print this sheet": show only the chosen section, hide the rest */
  body.ss-print-one .et_pb_section { display: none !important; }
  body.ss-print-one .et_pb_section.ss-print-target { display: block !important; }
}

/* =========================================================
   Tips Hub
   ========================================================= */
.ss-tip-card {
  background: var(--ss-white);
  border-radius: var(--ss-radius-lg);
  box-shadow: var(--ss-shadow);
  transition: transform .2s, box-shadow .2s;
  overflow: hidden;
}
.ss-tip-card:hover { transform: translateY(-4px); box-shadow: var(--ss-shadow-lg); }
.ss-share-row a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none !important;
  background: var(--ss-bg);
  color: var(--ss-text) !important;
  margin-right: 8px;
}
.ss-share-row a:hover { background: var(--ss-border); }

/* =========================================================
   Footer
   ========================================================= */
#main-footer { background: var(--ss-dark) !important; }
#main-footer .footer-widget h4 { color: var(--ss-white) !important; font-weight: 700; }
#main-footer .footer-widget p, #main-footer .footer-widget li a { color: rgba(255,255,255,0.65) !important; }
#main-footer .footer-widget li a:hover { color: var(--ss-orange) !important; }
#footer-bottom { background: #070F1C !important; }
#footer-bottom p { color: rgba(255,255,255,0.4) !important; font-size: 13px; }

@media (max-width: 767px) {
  .ss-week-number { width: 36px; height: 36px; font-size: 15px; }
}
