/* ============================================================================
   Tyler Forge design tokens for PBB Strategist
   ----------------------------------------------------------------------------
   Values are copied verbatim from Tyler's published design system
   (@tylertech/forge 3.16.1, dist/theme/forge-theme.css and
   dist/typography/forge-typography.css). Do not hand-tune them; if Forge
   changes, re-pull from the package.

   Loaded BEFORE each template's inline <style>, so component rules still win.
   Its job is to (a) set the Roboto baseline and (b) publish the tokens so new
   work can use var(--forge-*) instead of inventing another hex.
   ========================================================================= */

:root {
  /* -- brand / primary ---------------------------------------------------- */
  --forge-theme-brand:                        #283593;
  --forge-theme-on-brand:                     #ffffff;
  --forge-theme-primary:                      #3f51b5;
  --forge-theme-primary-container-minimum:    #f7f8fc;
  --forge-theme-primary-container-low:        #e8eaf6;
  --forge-theme-primary-container:            #d1d5ed;
  --forge-theme-primary-container-high:       #b6bde3;
  --forge-theme-on-primary:                   #ffffff;
  --forge-theme-on-primary-container:         #222c62;

  /* -- secondary (amber accent) ------------------------------------------- */
  --forge-theme-secondary:                    #ffc107;
  --forge-theme-secondary-container-minimum:  #fffdf5;
  --forge-theme-secondary-container-low:      #fff8e1;
  --forge-theme-secondary-container:          #fff0c3;
  --forge-theme-secondary-container-high:     #ffe7a1;
  --forge-theme-on-secondary:                 #000000;
  --forge-theme-on-secondary-container:       #8a6804;

  /* -- status ------------------------------------------------------------- */
  --forge-theme-success:                      #2e7d32;
  --forge-theme-success-container-minimum:    #f7faf7;
  --forge-theme-success-container-low:        #e6efe6;
  --forge-theme-success-container:            #cde0ce;
  --forge-theme-success-container-high:       #b0ceb1;
  --forge-theme-on-success:                   #ffffff;
  --forge-theme-on-success-container:         #19441b;

  --forge-theme-error:                        #b00020;
  --forge-theme-error-container-minimum:      #fcf5f6;
  --forge-theme-error-container-low:          #f6e0e4;
  --forge-theme-error-container:              #ecc2c9;
  --forge-theme-error-container-high:         #e19eaa;
  --forge-theme-on-error:                     #ffffff;
  --forge-theme-on-error-container:           #5f0011;

  --forge-theme-warning:                      #d14900;
  --forge-theme-warning-container-minimum:    #fdf8f5;
  --forge-theme-warning-container-low:        #f9e9e0;
  --forge-theme-warning-container:            #f4d3c2;
  --forge-theme-warning-container-high:       #eeba9e;
  --forge-theme-on-warning:                   #ffffff;
  --forge-theme-on-warning-container:         #712700;

  --forge-theme-info:                         #1565c0;
  --forge-theme-info-container-minimum:       #f6f9fc;
  --forge-theme-info-container-low:           #e3edf7;
  --forge-theme-info-container:               #c7daf0;
  --forge-theme-info-container-high:          #a6c4e7;
  --forge-theme-on-info:                      #ffffff;
  --forge-theme-on-info-container:            #0b3768;

  /* -- surface / outline / text ------------------------------------------- */
  --forge-theme-surface:                      #ffffff;
  --forge-theme-surface-bright:               #ffffff;
  --forge-theme-surface-dim:                  #fafafa;
  --forge-theme-surface-container-minimum:    #f5f5f5;
  --forge-theme-surface-container-low:        #ebebeb;
  --forge-theme-surface-container:            #e0e0e0;
  --forge-theme-surface-container-medium:     #c2c2c2;
  --forge-theme-surface-container-high:       #9e9e9e;
  --forge-theme-surface-inverse:              #333333;

  --forge-theme-outline:                      #e0e0e0;
  --forge-theme-outline-low:                  #9e9e9e;
  --forge-theme-outline-medium:               #757575;
  --forge-theme-outline-high:                 #212121;

  --forge-theme-text-high:                    rgba(0, 0, 0, 0.87);
  --forge-theme-text-medium:                  rgba(0, 0, 0, 0.6);
  --forge-theme-text-low:                     rgba(0, 0, 0, 0.38);
  --forge-theme-text-high-inverse:            rgba(255, 255, 255, 0.87);
  --forge-theme-text-medium-inverse:          rgba(255, 255, 255, 0.6);

  /* -- typography --------------------------------------------------------- */
  --forge-typography-font-family: "Roboto", -apple-system, BlinkMacSystemFont,
                                 "Segoe UI", Arial, sans-serif;
  --forge-typography-font-family-mono: "Roboto Mono", Consolas, "Courier New", monospace;
  --forge-typography-font-size: 1rem;

  --forge-typography-weight-light:    300;
  --forge-typography-weight-regular:  400;
  --forge-typography-weight-medium:   500;
  --forge-typography-weight-bold:     700;

  /* -- short aliases used by this app ------------------------------------- */
  --tyler-brand:        var(--forge-theme-brand);
  --tyler-brand-deep:   var(--forge-theme-on-primary-container);
  --tyler-primary:      var(--forge-theme-primary);
  --tyler-accent:       var(--forge-theme-secondary);
  --tyler-font:         var(--forge-typography-font-family);
  --tyler-header-bg:    linear-gradient(135deg, #283593 0%, #222c62 100%);
}

/* Baseline only. Component rules live in each template's inline <style> and
   override these, which is intended - this is a floor, not a reset. */
body {
  font-family: var(--forge-typography-font-family);
  color: var(--forge-theme-text-high);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Forge sets headings in Roboto Medium rather than Bold. */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--forge-typography-font-family);
  font-weight: var(--forge-typography-weight-medium);
}

button, input, select, textarea {
  font-family: var(--forge-typography-font-family);
}

code, pre, kbd, samp {
  font-family: var(--forge-typography-font-family-mono);
}
