/*
Theme Name: Astra GALSTUK (Autoclub)
Template: astra
Author: IRT (irti.ru)
Version: 2.0
Description: Brand skin - dark charcoal + amber (KP style), Montserrat, hero, UM forms.
*/

/* GK-BRAND v12 */

/* ===== Club assistant chatbot ===== */
#gk-bot-fab{
  position:fixed; right:22px; bottom:96px; z-index:99990;
  height:52px; border-radius:999px; border:0; cursor:pointer;
  background:var(--gk-amber); display:flex; align-items:center; justify-content:center;
  gap:9px; padding:0 20px 0 16px;
  box-shadow:0 6px 20px rgba(19,22,26,.30); transition:transform .15s ease, background .15s ease;
}
.gk-bot-fab-label{
  font-family:var(--gk-font); font-size:14.5px; font-weight:700; color:var(--gk-dark);
  letter-spacing:.2px; white-space:nowrap;
}
#gk-bot-fab:hover{ background:var(--gk-amber-d); transform:scale(1.04); }
#gk-bot-fab:hover .gk-bot-fab-label{ color:#fff; }
#gk-bot-fab.hidden{ display:none; }
#gk-bot-panel{
  position:fixed; right:22px; bottom:22px; z-index:99991;
  width:min(370px, calc(100vw - 24px)); height:min(540px, calc(100vh - 90px));
  background:#fff; border-radius:16px; box-shadow:0 12px 44px rgba(19,22,26,.35);
  display:none; flex-direction:column; overflow:hidden;
  font-family:var(--gk-font); font-size:14px;
}
#gk-bot-panel.open{ display:flex; }
.gk-bot-head{
  background:var(--gk-dark); color:#fff; padding:14px 16px;
  display:flex; align-items:center; gap:10px; flex:0 0 auto;
}
.gk-bot-dot{ width:10px; height:10px; border-radius:50%; background:#3BC55A; flex:0 0 auto; }
.gk-bot-title{ font-weight:700; font-size:15px; line-height:1.2; }
.gk-bot-sub{ font-size:11.5px; color:#9AA0A6; }
.gk-bot-close{
  margin-left:auto; background:transparent !important; border:0; color:#9AA0A6 !important;
  font-size:26px; line-height:1; cursor:pointer; padding:0 4px !important;
}
.gk-bot-close:hover{ color:var(--gk-amber) !important; background:transparent !important; }
.gk-bot-msgs{ flex:1 1 auto; overflow-y:auto; padding:14px; background:#FCFBF7; }
.gk-bot-msg{ max-width:86%; margin:0 0 10px; padding:10px 13px; border-radius:12px; line-height:1.45; word-wrap:break-word; }
.gk-bot-msg.bot{ background:var(--gk-cream); color:var(--gk-text); border-bottom-left-radius:4px; }
.gk-bot-msg.bot a{ color:var(--gk-amber-d); font-weight:600; text-decoration:underline; }
.gk-bot-msg.user{ background:var(--gk-amber); color:var(--gk-dark); margin-left:auto; border-bottom-right-radius:4px; font-weight:600; }
.gk-bot-msg.typing{ color:#8A8A8A; font-style:italic; background:transparent; padding:4px 13px; }
.gk-bot-chips{ flex:0 0 auto; padding:8px 12px 4px; display:flex; flex-wrap:wrap; gap:6px; background:#FCFBF7; border-top:1px solid #F0EBDD; }
.gk-bot-chip{
  background:#fff !important; border:1.5px solid var(--gk-amber) !important; color:var(--gk-amber-d) !important;
  border-radius:999px; padding:6px 12px !important; font-size:12.5px !important; font-weight:600 !important; cursor:pointer;
}
.gk-bot-chip:hover{ background:var(--gk-amber) !important; color:var(--gk-dark) !important; }
.gk-bot-inputrow{ flex:0 0 auto; display:flex; gap:8px; padding:10px 12px; background:#fff; border-top:1px solid #F0EBDD; }
#gk-bot-input{
  flex:1 1 auto; border:1.5px solid #DDD6C4; border-radius:10px; padding:10px 12px;
  font-family:var(--gk-font); font-size:14px; outline:none;
}
#gk-bot-input:focus{ border-color:var(--gk-amber); box-shadow:0 0 0 3px rgba(235,170,18,.15); }
#gk-bot-send{
  flex:0 0 auto; width:44px; border-radius:10px !important; border:0; cursor:pointer;
  background:var(--gk-amber) !important; color:var(--gk-dark) !important; font-size:16px;
}
#gk-bot-send:hover{ background:var(--gk-amber-d) !important; color:#fff !important; }
@media (max-width:600px){
  #gk-bot-fab{ right:14px; bottom:86px; height:46px; padding:0 16px 0 13px; }
  .gk-bot-fab-label{ font-size:13px; }
  #gk-bot-panel{ right:12px; bottom:12px; }
}

/* ===== One-row compact header: logo + all menu + auth last ===== */
.ast-primary-header-bar .ast-builder-grid-row{
  display:flex !important; flex-wrap:nowrap !important; align-items:center;
  gap:10px; grid-template-columns:none !important;
}
.site-header-primary-section-left{ flex:0 0 auto; min-width:0; }
.site-header-primary-section-right{ flex:1 1 auto; min-width:0; justify-content:flex-end; }
.main-header-bar-navigation, .site-navigation, .main-navigation{ min-width:0; }
.main-header-menu{ flex-wrap:nowrap !important; white-space:nowrap; }
.main-header-menu .menu-item{ flex:0 0 auto; }
.main-header-menu .menu-link{ font-size:13.5px !important; padding:22px 9px !important; }
.main-header-menu .gk-auth-item{ order:99; margin-left:8px; }
@media (min-width:922px) and (max-width:1240px){
  .main-header-menu .menu-link{ font-size:12.5px !important; padding:20px 6px !important; }
  .site-branding .site-title a{ font-size:17px !important; letter-spacing:.2px; }
  .site-branding .site-title::before{ width:74px !important; height:47px !important; }
}

/* ===== Dynamic auth button (Войти / Выйти) in menu ===== */
.main-header-menu .gk-auth-item{ display:flex; align-items:center; margin-left:10px; }
.main-header-menu .gk-auth-btn{
  background:var(--gk-amber) !important; color:var(--gk-dark) !important;
  font-weight:700 !important; border-radius:7px; padding:7px 13px !important;
  font-size:13px !important; line-height:1 !important; transition:background .15s ease;
}
.main-header-menu .gk-auth-btn:hover{
  background:var(--gk-amber-d) !important; color:#fff !important;
}
.main-header-menu .gk-auth-logout .gk-auth-btn{
  background:transparent !important; color:var(--gk-amber) !important;
  box-shadow:inset 0 0 0 2px var(--gk-amber);
}
.main-header-menu .gk-auth-logout .gk-auth-btn:hover{
  background:var(--gk-amber) !important; color:var(--gk-dark) !important;
}
.ast-mobile-popup-drawer .gk-auth-btn{ display:inline-block; margin:8px 0; }

/* ===== Sticky header (always visible, all pages) ===== */
html{ scroll-padding-top:96px; }
.site-header{
  position:-webkit-sticky; position:sticky; top:0; z-index:9999;
  box-shadow:0 2px 14px rgba(19,22,26,.20); transition:box-shadow .2s ease;
}
.admin-bar .site-header{ top:32px; }
@media (max-width:782px){ .admin-bar .site-header{ top:46px; } }
.main-header-menu .sub-menu{ z-index:10000; background:#1B1F24; }
.main-header-menu .sub-menu a{ color:#F2F2F2 !important; }
.main-header-menu .sub-menu a:hover{ color:var(--gk-amber) !important; }
.ast-mobile-popup-drawer .main-header-menu{ background:var(--gk-dark); }

:root, body{
  --ast-global-color-0:#C7900B; --ast-global-color-1:#EBAA12;
  --ast-global-color-2:#13161A; --ast-global-color-3:#2B2B2B;
  --gk-amber:#EBAA12; --gk-amber-d:#C7900B; --gk-dark:#13161A; --gk-cream:#FAF4E2; --gk-text:#2B2B2B;
  --gk-font:'Montserrat', -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
}

/* ===== Typography (KP font) ===== */
body, button, input, select, textarea, .ast-container,
.main-header-menu, .ast-builder-menu, #af-wrapper, .um, .um-form{
  font-family:var(--gk-font);
}
h1,h2,h3,h4,h5,h6,.entry-title,.site-title,.widget-title{ font-family:var(--gk-font); font-weight:700; }
body{ color:var(--gk-text); }

/* ===== Header + LOGO lockup ===== */
.site-header, .main-header-bar, .ast-primary-header-bar,
.ast-above-header-wrap, .ast-below-header-wrap, .ast-mobile-header-wrap{
  background-color:var(--gk-dark) !important;
}
.main-header-bar{ border-bottom:3px solid var(--gk-amber) !important; }
.site-branding, .ast-site-identity, .ast-site-title-wrap{ display:flex; align-items:center; }
.site-branding .site-title{ display:flex; align-items:center; gap:14px; margin:0; line-height:1; }
.site-branding .site-title::before{
  content:""; width:92px; height:59px; flex:0 0 auto;
  background:url('gk-logo.png?v=2') center/contain no-repeat;
}
.site-branding .site-title a, .site-title a:hover, .site-title a:focus{
  color:#fff !important; font-weight:800; letter-spacing:.6px; text-transform:uppercase; font-size:21px;
  white-space:nowrap; display:inline-flex; align-items:center;
}
.site-header .site-description{ color:#9AA0A6 !important; }
.main-header-menu .menu-link, .main-header-menu a{ color:#F2F2F2 !important; font-weight:600; }
.main-header-menu .menu-link:hover,
.main-header-menu .current-menu-item > .menu-link,
.main-header-menu .current_page_item > .menu-link,
.main-header-menu .current-menu-ancestor > .menu-link{ color:var(--gk-amber) !important; }
.ast-mobile-menu-buttons-minimal, .menu-toggle .menu-toggle-icon{ color:var(--gk-amber) !important; }

/* ===== Buttons ===== */
button, input[type=button], input[type=submit], input[type=reset],
.button, .ast-button, .wp-block-button__link, .wp-element-button{
  background-color:var(--gk-amber) !important; border-color:var(--gk-amber) !important;
  color:var(--gk-dark) !important; font-weight:700;
}
button:hover, input[type=submit]:hover, .button:hover, .ast-button:hover, .wp-block-button__link:hover{
  background-color:var(--gk-amber-d) !important; border-color:var(--gk-amber-d) !important; color:#fff !important;
}

/* ===== Links ===== */
a{ color:var(--gk-amber-d); }
a:hover{ color:var(--gk-amber); }

/* ===== Headings + amber marker ===== */
.entry-content h2, .entry-content h3, .widget-title{
  color:var(--gk-dark); font-weight:700; position:relative; padding-left:16px;
}
.entry-content h2::before, .entry-content h3::before, .widget-title::before{
  content:""; position:absolute; left:0; top:.12em; bottom:.12em; width:5px; background:var(--gk-amber);
}
.entry-title{ color:var(--gk-dark); font-weight:700; }

/* ===== Cream callouts ===== */
blockquote, .wp-block-quote, .gk-callout{
  background:var(--gk-cream); border-left:5px solid var(--gk-amber);
  padding:16px 20px; color:var(--gk-text); border-radius:0 8px 8px 0;
}

/* ===== HERO (KP first-page style) ===== */
.gk-hero{
  background:linear-gradient(135deg,#1B1F24 0%,#13161A 55%,#0E1013 100%);
  border-radius:16px; padding:46px 42px; margin:6px 0 30px;
  position:relative; overflow:hidden;
}
.gk-hero::before{ content:""; position:absolute; left:0; top:0; width:6px; height:100%; background:var(--gk-amber); z-index:2; }
.gk-hero::after{
  content:""; position:absolute; right:-50px; top:-50px; width:200px; height:200px;
  background:var(--gk-amber); opacity:.08; transform:rotate(25deg); border-radius:28px;
}
.gk-hero > *{ position:relative; z-index:2; }
.gk-hero-eyebrow{ color:#8A8A8A; text-transform:uppercase; letter-spacing:2px; font-size:12px; font-weight:600; margin:0 0 10px; padding:0; }
.gk-hero-title{ color:#fff !important; font-weight:800; font-size:40px; line-height:1.04; margin:0 0 14px; padding:0 !important; }
.gk-hero-title::before{ display:none !important; }
.gk-hero-title span{ color:var(--gk-amber); }
.gk-hero-sub{ color:#C9CDD2; font-size:17px; line-height:1.55; max-width:660px; margin:0; }
@media (max-width:600px){ .gk-hero{ padding:30px 22px; } .gk-hero-title{ font-size:28px; } }

/* ===== Footer ===== */
.site-footer, .ast-small-footer, footer.site-footer{ background-color:var(--gk-dark) !important; color:#B9BDC2 !important; }
.site-footer a, .ast-small-footer a{ color:var(--gk-amber) !important; }

/* ===== Ultimate Member: login / register ===== */
.um{ font-family:var(--gk-font); }
.um .um-form{
  max-width:470px; margin:26px auto; background:#fff; border:1px solid #ECE7DA;
  border-radius:14px; padding:28px 26px; box-shadow:0 8px 28px rgba(19,22,26,.07);
}
.um .um-field-label label, .um .um-field label{ color:var(--gk-dark); font-weight:600; }
.um .um-form input[type=text], .um .um-form input[type=password],
.um .um-form input[type=email], .um .um-form input[type=tel],
.um .um-form input[type=number], .um-field-area input, .um textarea{
  border:1px solid #DDD6C4 !important; border-radius:8px !important;
}
.um .um-form input:focus, .um-field-area input:focus{
  border-color:var(--gk-amber) !important; box-shadow:0 0 0 3px rgba(235,170,18,.15) !important;
}
.um-button, .um .um-button, input.um-button, a.um-button{
  background:var(--gk-amber) !important; border-color:var(--gk-amber) !important;
  color:var(--gk-dark) !important; font-weight:700 !important; border-radius:8px !important; text-transform:none !important;
  font-size:13px !important; white-space:nowrap !important; padding:10px 12px !important;
  line-height:1.2 !important; height:auto !important; letter-spacing:0 !important;
}
@media (max-width:480px){
  .um-button, .um .um-button, input.um-button, a.um-button{ font-size:12px !important; padding:10px 8px !important; }
}
.um-button:hover, a.um-button:hover{ background:var(--gk-amber-d) !important; color:#fff !important; }
.um a{ color:var(--gk-amber-d); }
.um .um-col-alt, .um .um-center{ text-align:center; }

/* =================== Asgaros forum =================== */
#af-wrapper{ color:var(--gk-text); }
#af-wrapper a{ color:var(--gk-amber-d); }
#af-wrapper a:hover{ color:var(--gk-amber); }
#af-wrapper .forum-name a{ font-weight:700; color:var(--gk-dark); }
#af-wrapper .forum-name a:hover{ color:var(--gk-amber-d); }
#af-wrapper .forum-title{ font-weight:700; color:var(--gk-dark); }
#af-wrapper .forum-title:hover{ color:var(--gk-amber-d); }
#af-wrapper .content-element.forum{ border-left:3px solid var(--gk-amber); }
#af-wrapper .content-element.forum:hover{ background:#FCFAF3; }
#af-wrapper .main-title{ color:var(--gk-dark); font-weight:800; }
#af-wrapper .title-element{
  background:var(--gk-dark) !important; color:#fff !important; border:0 !important; border-radius:8px 8px 0 0;
}
#af-wrapper .title-element a, #af-wrapper .title-element span, #af-wrapper .title-element .last-post-headline{ color:#fff !important; }
#af-wrapper .home-link, #af-wrapper .members-link, #af-wrapper .activity-link,
#af-wrapper .login-link, #af-wrapper .register-link{ color:var(--gk-amber-d) !important; font-weight:600; }
#af-wrapper .home-link:hover, #af-wrapper .members-link:hover, #af-wrapper .activity-link:hover,
#af-wrapper .login-link:hover, #af-wrapper .register-link:hover{ color:var(--gk-amber) !important; }
#af-wrapper .search-icon, #af-wrapper .fa-bars{ color:var(--gk-amber) !important; }
#af-wrapper .forum-status.unread{ color:var(--gk-amber) !important; }
#af-wrapper .forum-status.read{ color:#B9BDC2 !important; }
#af-wrapper .breadcrumb-icon{ color:var(--gk-amber) !important; }
#af-wrapper .button, #af-wrapper input[type=submit], #af-wrapper button, #af-wrapper a.button,
#af-wrapper .pagination .current{
  background:var(--gk-amber) !important; border-color:var(--gk-amber) !important; color:var(--gk-dark) !important;
}
