/*
Theme Name: TCB Training
Theme URI:
Author:
Description: Custom standalone theme for TCB Training.
Version: 1.0.0
Text Domain: tcb-training
*/

/* ================================
   RESET / BASE
   ================================ */

   *,
   *::before,
   *::after {
     box-sizing: border-box;
   }
   
   html,
   body {
     margin: 0;
     padding: 0;
   }
   
   /* ✅ Ensure full-height base for fixed background layer */
   html {
     height: 100%;
   }
   
   body {
     min-height: 100%;
     font-family: "Raleway", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
       Roboto, Oxygen, Ubuntu, Cantarell, "Helvetica Neue", Arial, sans-serif;
     line-height: 1.5;
     color: #ffffff;
   
     /* ✅ We'll render the page background via body::before (stable fixed effect) */
     background: transparent;
   }
   
   /* ✅ Premium fixed background layer (works reliably) */
   body::before {
     content: "";
     position: fixed;
     inset: 0;
     z-index: -1;
     pointer-events: none;
   
     background-image: var(--tcb-bg-desktop);
     background-size: cover;
     background-position: center;
     background-repeat: no-repeat;
   }
   
   @media (max-width: 768px) {
     body::before {
       background-image: var(--tcb-bg-mobile, var(--tcb-bg-desktop));
     }
   }
   
   h1, h2, h3, h4, h5, h6 {
     font-family: inherit;
     font-weight: 700;
   }
   
   /* ================================
      MAIN WRAPPER
      ================================ */
   
   main.tcb-main,
   main {
     width: 100%;
   }
   
   /* ================================
      AUTO-CENTER PAGES WITH GLASS
      (no wrappers needed)
      ================================ */
   
   .tcb-has-glass main,
   .tcb-has-glass .entry-content {
     min-height: 100vh;
     display: flex;
     flex-direction: column;
     justify-content: center;
     gap: 26px;
     padding: 36px 16px;
   }
   
   /* ================================
      UNIVERSAL GLASS CONTAINER
      APPLY THIS CLASS TO ANY BLOCK
      ================================ */
   
      .tcb-glass {
        width: 100%;
        max-width: var(--tcb-glass-width, 520px);
        margin: 0 auto;
        padding: 28px;
      
        border-radius: 18px;
        background: rgba(255, 255, 255, 0.3);
        border: 1px solid rgba(255, 255, 255, 0.22);
      
        backdrop-filter: blur(14px);
        -webkit-backdrop-filter: blur(14px);
      
        box-shadow: 0 10px 35px rgba(0, 0, 0, 0.25);
      }
      /* ================================
   Glass width presets
   ================================ */
.glass-xs { --tcb-glass-width: 360px; }
.glass-sm { --tcb-glass-width: 440px; }
.glass-md { --tcb-glass-width: 520px; } /* default */
.glass-lg { --tcb-glass-width: 640px; }
.glass-xl { --tcb-glass-width: 100%; }

   
   /* ================================
      READABILITY INSIDE GLASS
      ================================ */
   
   .tcb-glass,
   .tcb-glass * {
     color: #ffffff
   }
   
   .tcb-glass h1,
   .tcb-glass h2,
   .tcb-glass h3 {
     margin-top: 0;
     margin-bottom: 16px;
   }
   
   .tcb-glass label {
     display: inline-block;
     margin: 10px 0 6px;
     font-weight: 600;
     text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
   }
   
   /* ================================
      FORM FIELDS
      ================================ */
   
   .tcb-glass input[type="text"],
   .tcb-glass input[type="email"],
   .tcb-glass input[type="password"],
   .tcb-glass input[type="tel"],
   .tcb-glass input[type="number"],
   .tcb-glass select,
   .tcb-glass textarea {
     width: 100%;
     max-width: 100%;
     padding: 12px 14px;
   
     border-radius: 12px;
     border: 1px solid rgba(255, 255, 255, 0.28);
     background: rgba(0, 0, 0, 0.22);
   
     outline: none;
   }
   
   .tcb-glass input::placeholder,
   .tcb-glass textarea::placeholder {
     color: rgba(255, 255, 255, 0.75);
   }
   
   .tcb-glass input:focus,
   .tcb-glass select:focus,
   .tcb-glass textarea:focus {
     border-color: rgba(255, 255, 255, 0.55);
     box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.18);
   }
   
   /* ================================
      CHECKBOX / REMEMBER ME
      ================================ */
   
   .tcb-glass input[type="checkbox"] {
     margin-right: 6px;
   }
   
   /* ================================
      BUTTONS
      ================================ */
   
   .tcb-glass button,
   .tcb-glass input[type="submit"],
   .tcb-glass .wp-block-button__link {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: 100%;
   
     padding: 12px 18px;
     margin-top: 14px;
   
     border-radius: 12px;
     border: 1px solid rgba(255, 255, 255, 0.28);
     background: rgba(255, 255, 255, 0.18);
   
     font-weight: 700;
     cursor: pointer;
   }
   
   .tcb-glass button:hover,
   .tcb-glass input[type="submit"]:hover,
   .tcb-glass .wp-block-button__link:hover {
     background: rgba(255, 255, 255, 0.26);
   }
   
   /* ================================
      LINKS INSIDE GLASS
      ================================ */
   
   .tcb-glass a {
     color: inherit;
     text-decoration: underline;
   }
   
   /* ================================
      SMALL SCREENS TWEAK
      ================================ */
   
   @media (max-width: 480px) {
     .tcb-glass {
       padding: 22px;
     }
   }
   
   /* ================================
      CM Registration - force full width inside glass
      ================================ */
   
   .tcb-glass > *,
   .tcb-glass form,
   .tcb-glass .cmreg-form,
   .tcb-glass .cm-registration,
   .tcb-glass .cm-registration-form {
     width: 100%;
     max-width: 100%;
   }
   
   /* ================================
      TCB Header
      ================================ */
   
   .tcb-header {
     position: sticky;
     top: 0;
     z-index: 1000;
     padding: 14px 16px;
   
     /* твоя цвят */
     background: rgba(4, 118, 107, 0.989);
   
     border-bottom: 1px solid rgba(255, 255, 255, 0.12);
     backdrop-filter: blur(10px);
     -webkit-backdrop-filter: blur(10px);
   }
   
   .tcb-header__inner {
     width: min(1200px, 100%);
     margin: 0 auto;
   
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 18px;
   }
   
   .tcb-header__logo {
     display: flex;
     align-items: center;
     min-width: 160px;
   }
   
   .tcb-logo-link {
     display: inline-flex;
     align-items: center;
     gap: 10px;
     text-decoration: none;
   }
   
   .tcb-logo-text {
     font-weight: 800;
     letter-spacing: 0.3px;
     color: #fff;
   }
   
   .custom-logo {
     height: 44px;
     width: auto;
     display: block;
   }
   
   /* ================================
      Header nav links (hardcoded)
      ================================ */
   
   .tcb-header__nav {
     display: flex;
     align-items: center;
     gap: 8px;
   }
   
   .tcb-nav-link {
     text-decoration: none !important;
     color: #ffffff !important;
   
     font-weight: 600;
     padding: 8px 10px;
   
     display: inline-flex;
     align-items: center;
   }
   
   /* Mobile: simple wrap (без бургер засега) */
   @media (max-width: 900px) {
     .tcb-header__inner {
       flex-wrap: nowrap;
     }
   
     .tcb-header__nav {
       width: auto;
       justify-content: flex-end;
     }
   }

