/*
Theme Name: CraftCZ Basic
Author: domzan
Version: 1.0.0
Text Domain: craftcz
*/

    :root{
      --container: 1200px;
      --gutter: 24px;
      --radius: 16px;

      --bg: #ffffff;
      --surface: #f6f7f9;
      --text: #101828;
      --muted: #667085;
      --border: #e5e7eb;

      --accent: #2563eb;
      --accent-contrast: #ffffff;

      --header-height: 72px;
    }

    *{ box-sizing:border-box; }
    html, body{ margin:0; padding:0; }
    body{
      font-family: system-ui, -apple-system, Segoe UI, Roboto, Inter, Arial, sans-serif;
      color: var(--text);
      background: var(--bg);
      line-height: 1.6;
    }

    a{ color: inherit; text-decoration: none; }
    a:hover{ text-decoration: underline; }

    .container{
      max-width: var(--container);
      margin: 0 auto;
      padding-left: var(--gutter);
      padding-right: var(--gutter);
    }


/* ====== 1. PC VERZE (ponecháno beze změn) ====== */
.site-header {
    position: sticky;
    top: 0;
    z-index: 50;
    background: transparent;
    border-bottom: 1px solid transparent;
    transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

body.is-scrolled .site-header {
    background: rgba(255,255,255,0.9);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid var(--border);
    box-shadow: 0 4px 12px rgba(15,23,42,0.06);
}

.header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    min-height: var(--header-height);
}

.brand {
    display: flex;
    align-items: center;
    gap: 12px;
    flex: 0 0 auto;
}

.custom-logo {
    display: block;
    max-height: 40px;
    width: auto;
    height: auto;
}

.brand .site-title {
    font-weight: 700;
    letter-spacing: -0.02em;
    font-size: 18px;
    margin: 0;
}

.primary-nav {
    flex: 1 1 auto;
}

.primary-nav ul {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 14px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.primary-nav a {
    display: inline-block;
    padding: 10px 10px;
    border-radius: 10px;
    color: #333333;
    font-weight: 600;
}

.primary-nav a:hover {
    text-decoration: none;
    background: var(--surface);
    color: var(--text);
}

.header-actions {
    flex: 0 0 auto;
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 14px;
    border-radius: 10px;
    border: 1px solid var(--border);
    background: var(--bg);
    font-weight: 700;
    white-space: nowrap;
    cursor: pointer;
}

.btn-primary {
    background: var(--accent);
    color: var(--accent-contrast);
    border-color: transparent;
}



/* Na PC schováme hamburger a mobilní verzi tlačítka */
.menu-toggle, 
.mobile-only-actions { 
    display: none; 
}

@media (max-width: 991px) {
    /* Schováme původní kontejner mimo nav, který dělal neplechu */
    .header-actions { 
        display: none !important; 
    }

    /* 1. Hamburger - křížek */
    .menu-toggle {
        display: flex !important;
        flex-direction: column;
        justify-content: space-between;
        width: 28px;
        height: 20px;
        background: transparent;
        border: none;
        cursor: pointer;
        padding: 0;
        z-index: 100010 !important; 
        margin-left: auto;
        position: relative;
    }
    
    .menu-toggle span {
        width: 100%;
        height: 3px;
        background: #333;
        border-radius: 4px;
        transition: 0.3s;
    }

    /* 2. Panel menu - Kompaktní a smrštěný */
    .primary-nav {
        all: unset;
        position: fixed !important;
        top: 0 !important;
        right: -280px !important;
        width: 260px !important; 
        
        height: auto !important; 
        max-height: 100dvh !important; 
        
        background: #fff !important;
        z-index: 100000 !important;
        transition: right 0.3s ease-in-out !important;
        display: flex !important;
        flex-direction: column !important;
        padding: 70px 0 0 0 !important; 
        box-shadow: -10px 10px 30px rgba(0,0,0,0.08);
        visibility: hidden;
        pointer-events: none;
        box-sizing: border-box !important;
        
        border-bottom-left-radius: 20px;
        overflow: hidden;
    }

    /* 3. Spodní sekce pro tlačítko */
    .mobile-only-actions {
        display: flex !important;
        padding: 15px 20px 25px 20px !important;
        background: #f9f9f9 !important;
        border-top: 1px solid #eee !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    /* Aktivní stav menu */
    body.menu-is-open .primary-nav {
        right: 0 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    /* Seznam odkazů */
    .primary-nav ul {
        all: unset;
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow-y: auto;
    }
    
    .primary-nav a {
        display: block !important;
        padding: 14px 20px !important;
        color: #333 !important;
        font-weight: 600 !important;
        border-bottom: 1px solid #f8f8f8 !important;
        font-size: 16px !important;
        text-decoration: none !important;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    /* 4. Tlačítka (Profil vs Přihlášení) */
    .mobile-only-actions .header-login-btn {
        display: flex !important;
        width: 100% !important;
        height: 44px !important;
        border-radius: 10px !important;
        font-weight: 700 !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        text-decoration: none !important;
        font-size: 15px !important;
        box-sizing: border-box !important;
        transition: 0.2s;
        
        /* Výchozí styl (Přihlášený profil - bílý) */
        background: #fff !important;
        color: #333 !important;
        border: 1px solid #ddd !important;
    }

    /* Styl pro NEPŘIHLÁŠENÉHO (Modré tlačítko přes třídu btn-primary) */
    .mobile-only-actions .header-login-btn.btn-primary {
        background: var(--accent) !important;
        color: #fff !important;
        border: none !important;
    }

    /* Animace křížku */
    .menu-toggle.is-active span:nth-child(1) { transform: translateY(8.5px) rotate(45deg); }
    .menu-toggle.is-active span:nth-child(2) { opacity: 0; }
    .menu-toggle.is-active span:nth-child(3) { transform: translateY(-8.5px) rotate(-45deg); }
    }





    /* ====== Main & footer ====== */
    .site-main{
      padding: 0 0 56px; /* nahoře 0 – hero je nalepený pod headerem */
    }

    .site-footer{
      border-top: 1px solid var(--border);
      background: var(--bg);
    }
    .footer-inner{
      padding: 28px 0;
      display:flex;
      gap: 16px;
      align-items:center;
      justify-content:center;
      flex-wrap: wrap;
      color: var(--muted);
      font-size: 14px;
      text-align:center;
    }

    /* Gate (info box pro nepřihlášené) */
    .gate{
      margin: 40px 0;
      padding: 18px 20px;
      border-radius: 10px;
      border: 1px solid var(--border);
      background: var(--surface);
    }
    .gate h1{
      margin-top: 0;
      margin-bottom: 8px;
      font-size: 26px;
    }


    /* ====== Hero ====== */
    .hero{
      position: relative;
      margin-top: calc(-1 * var(--header-height));          /* posune background pod header */
      padding: calc(80px + var(--header-height)) 0 40px;    /* obsah zůstane níž */
      background-image: url('http://server-craft.cz/wp-content/uploads/2025/07/web_hero2.png');
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat;
      border-bottom: 1px solid var(--border);
      overflow: hidden;
    }

    /* clona přes hero – upraveno na rgb(100,100,100, 40 %) */
    .hero-overlay{
      position:absolute;
      inset:0;
      background: rgba(100,100,100,0.4);
      pointer-events:none;
    }

    .hero-inner{
      position: relative;
      z-index: 1;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      min-height: 260px;
    }

    .hero-main{
      max-width: 640px;
      margin: 0 auto;
      text-align: center;
    }

    .hero-title{
      margin: 0 0 12px;
      font-size: 40px;
      line-height: 1.1;
      letter-spacing: -0.02em;
      color: #ffffff; /* upraveno na bílé */
    }

    .hero-title-accent{
      color:#00b1ff;
    }

    .hero-text{
      margin: 0 0 16px;
      color: #f9fafb;
      font-size: 15px;
      max-width: 640px;
    }

    .hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap: 10px;
      justify-content: center;
      margin-top: 40px;
    }

    .hero-bottom{
      margin-top: 28px;
      color: #ffffff; /* upraveno na bílé */
      font-size: 18px;
      display:flex;
      justify-content:center;
    }
    .hero-bottom strong{
      font-weight: 700;
    }

    .home-section{
      padding-top: 32px;
    }

    .home-content{
      margin-bottom: 32px;
    }

    @media (max-width: 900px){
      .hero{
        padding: calc(60px + var(--header-height)) 0 30px;
      }
      .hero-title{
        font-size: 30px;
      }
      .hero-text{
        font-size: 14px;
      }
      .hero-inner{
        min-height: 0;
      }
    }

    @media (max-width: 820px){
      .header-inner{
        flex-wrap: wrap;
      }
      .primary-nav{
        order: 3;
        flex: 1 1 100%;
      }
      .primary-nav ul{
        justify-content:flex-start;
        flex-wrap: wrap;
      }
    }





    /* ====== Novinky na landing page ====== */
    .news-section{
      padding: 64px 0;
      text-align: left;
    }

    .news-header{
      max-width: 720px;
      margin: 0 0 32px;
      text-align: left;
    }

    .news-title{
      margin: 0 0 12px;
      font-size: 32px;
      line-height: 1.2;
      letter-spacing: -0.02em;
      color: #0f172a;
    }

    .news-lead{
      margin: 0;
      color: #4b5563;
      font-size: 15px;
    }

    .news-lead a{
      color: #0ea5e9;
      font-weight: 600;
    }

    .news-grid{
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
      gap: 16px;
      margin-bottom: 24px;
    }

    .news-card{
      background: #f9fafb;
      border: 1px solid #e5e7eb;
      border-radius: 10px;
      padding: 16px 18px;
      display: flex;
      flex-direction: column;
      gap: 8px;
    }

    .news-card-title{
      margin: 0;
      font-size: 18px;
      font-weight: 700;
      color: #111827;
    }

    .news-card-meta{
      font-size: 13px;
      color: #9ca3af;
    }

    .news-card-excerpt{
      font-size: 14px;
      color: #4b5563;
      flex: 1;
    }

    .news-card-btn{
      margin-top: 8px;
      align-self: flex-start;
    }

    .news-more{
      display: flex;
      justify-content: center;
      margin: 12px 0 24px;
    }

    .news-tip{
      display: flex;
      align-items: flex-start;
      gap: 10px;
      padding: 12px 14px;
      border-radius: 10px;
      background: #eff6ff;
      color: #374151;
      font-size: 14px;
    }

    .news-tip-icon{
      width: 22px;
      height: 22px;
      border-radius: 10px;
      border: 1px solid #c7d2fe;
      display: flex;
      align-items: center;
      justify-content: center;
      font-weight: 700;
      font-size: 13px;
    }

    .news-tip-text a{
      color: #2563eb;
      font-weight: 600;
      text-decoration: none;
    }
    .news-tip-text a:hover{
      text-decoration: underline;
    }

    @media (max-width: 640px){
      .news-title{
        font-size: 26px;
      }
    }





/* ====== Profil – hlavičkový blok ====== */
.profile-page{
  padding-top: 32px;
  padding-bottom: 64px;
  /* padding vlevo a vpravo nepíšeme vůbec, aby se použil ten z .container */
}

.profile-title{
  margin: 0 0 24px;
  font-size: 32px;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #0f172a;
}

.profile-header-row{
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center; /* zarovnání všech tří sloupců na střed */
}

.profile-avatar{
  width: 180px;
  height: 180px;
  border-radius: 16px;
  overflow: hidden;
  background: #e5e7eb;
  box-shadow: 0 12px 30px rgba(15,23,42,0.18);
}

.profile-avatar img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.profile-main-card{
  background: #f9fafb;
  border-radius: 18px;
  border: 1px solid #e5e7eb;
  padding: 18px 20px;
  box-shadow: 0 10px 25px rgba(15,23,42,0.08);
  display:flex;
  flex-direction:column;
  gap: 10px;
}

.profile-main-top p,
.profile-main-bottom p{
  margin: 0 0 4px;
  font-size: 14px;
  color: #111827;
}

.profile-main-bottom{
  margin-top: 6px;
}

.profile-label{
  font-weight: 700;
  color: #111827;
}

.profile-value{
  margin-left: 4px;
  color: #374151;
}

.profile-nick{
  color: #2563eb;
  font-weight: 600;
  text-decoration: none;
}
.profile-nick:hover{
  text-decoration: underline;
}

.profile-role{
  font-weight: 700;
}

/* HRÁČ (default) - &7 */
.profile-role-default{
  color: #9ca3af; /* šedá */
}

/* VIP - &6 */
.profile-role-vip{
  color: #f59e0b; /* zlatá/oranžová */
}

/* EVIP - &b */
.profile-role-evip{
  color: #38bdf8; /* aqua */
}

/* YOUTUBER - &c */
.profile-role-youtuber{
  color: #ef4444; /* červená */
}

/* BUILDER - &9 */
.profile-role-builder{
  color: #2563eb; /* modrá */
}

/* MOD - &2 */
.profile-role-mod{
  color: #16a34a; /* tmavě zelená */
}

/* VEDENI - &c */
.profile-role-vedeni{
  color: #ef4444; /* červená */
}



.profile-divider{
  border: none;
  border-top: 2px solid #d1d5db;
  margin: 8px 0 10px;
}

/* pravý sloupec – tlačítka */
.profile-settings{
  display:flex;
  flex-direction: column;      /* tlačítka pod sebe */
  align-items: flex-start;     /* zarovnání k levé straně */
  gap: 8px;                    /* mezera mezi Nastavení / Odhlásit se */
}

.profile-settings-btn{
  display:inline-flex;
  align-items:center;
  gap: 6px;
  padding-inline: 18px;
  background:#005b94;
  border-color:#005b94;
}

.profile-settings-icon{
  font-size: 16px;
}

@media (max-width: 900px){
  .profile-header-row{
    grid-template-columns: 1fr;
    align-items: flex-start; /* na mobilu se bloky skládají pod sebe */
  }
  .profile-avatar{
    width: 160px;
    height: 160px;
  }
  .profile-settings{
    justify-content:flex-start;
  }
  .profile-section-title{
    font-size: 24px;
  }
}






    /* ====== Profil – blok Informace ====== */
    .profile-info-section{
      margin-top: 40px;
    }

    .profile-section-title{
      margin: 0 0 20px;
      font-size: 28px;
      line-height: 1.2;
      letter-spacing: -0.02em;
      color: #0f172a;
    }

    .profile-info-grid{
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
      gap: 18px;
    }

    .profile-info-card{
      background: #f9fafb;
      border-radius: 16px;
      border: 2px solid #00b1ff;
      padding: 18px 20px 20px;
      position: relative;
      display: flex;
      flex-direction: column;
      gap: 8px;
    }

    .profile-info-icon{
      width: 44px;
      height: 44px;
      border-radius: 999px;
      background: #00b1ff;
      display:flex;
      align-items:center;
      justify-content:center;
      font-size: 20px;
      margin-bottom: 10px;
    }

    .profile-info-title{
      margin: 0 0 8px;
      font-size: 20px;
      font-weight: 700;
      color: #111827;
    }

    .profile-info-card p{
      margin: 0 0 4px;
      font-size: 14px;
      color: #111827;
    }

    .profile-info-divider{
      border: none;
      border-top: 2px solid #d1d5db;
      margin: 8px 0 6px;
    }

    /* ====== Profil – blok Statistiky ====== */
    .profile-stats-section{
      margin-top: 48px;
    }

    .profile-stats-intro{
      max-width: 720px;
      margin-bottom: 24px;
    }

    .profile-stats-text{
      margin: 0;
      font-size: 15px;
      color: #4b5563;
    }

    .profile-stats-grid{
      display:grid;
      grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
      gap:20px;
      margin-bottom: 28px;
    }

    .profile-stats-card{
      background:#00b1ff;
      border-radius:16px;
      padding:18px 22px 20px;
      color:#0b1120;
      box-shadow:0 12px 30px rgba(15,23,42,0.2);
    }

    .profile-stats-card h3{
      margin:0 0 10px;
      font-size:20px;
      color:#0b1120;
    }

    .profile-stats-card-icon{
      display:inline-flex;
      align-items:center;
      margin-right:8px;
    }

    .profile-stats-card ul{
      margin:0;
      padding-left:18px;
      font-size:14px;
    }

    .profile-stats-card li{
      margin-bottom:4px;
    }

    .profile-stats-card b{
      font-weight:700;
    }

    .profile-stats-divider{
      border:none;
      border-top:2px solid #d1d5db;
      margin: 4px 0 28px;
    }

    .profile-stats-summary{
      display:grid;
      grid-template-columns: repeat(auto-fit,minmax(180px,1fr));
      gap:20px;
      margin-top: 8px;
    }

    .profile-stats-summary-item{
      text-align:center;
    }

    .profile-stats-summary-value{
      font-size:34px;
      font-weight:700;
      color:#111827;
      margin-bottom:4px;
    }

    .profile-stats-summary-label{
      font-size:15px;
      font-weight:600;
      color:#4b5563;
    }

    .profile-stats-summary-desc{
      font-size:13px;
      color:#6b7280;
    }

    /* ====== Profil – blok Historie objednávek ====== */
    .profile-orders-section{
      margin-top: 56px;
    }

    .profile-orders-intro{
      max-width: 720px;
      margin-bottom: 16px;
    }

    .profile-orders-text{
      margin:0;
      font-size:15px;
      color:#4b5563;
    }

    .profile-orders-table-wrapper{
      margin-top:16px;
      border-radius:16px;
      overflow:hidden;
      box-shadow:0 12px 25px rgba(15,23,42,0.08);
      background:#ffffff;
    }

    .profile-orders-table{
      width:100%;
      border-collapse:collapse;
      min-width:600px;
    }

    .profile-orders-table thead{
      background:#f3f4f6;
    }

    .profile-orders-table th,
    .profile-orders-table td{
      padding:12px 16px;
      font-size:14px;
      text-align:left;
      border-bottom:1px solid #e5e7eb;
    }

    .profile-orders-table th{
      font-weight:700;
      color:#111827;
    }

    .profile-orders-table tbody tr:nth-child(even){
      background:#f9fafb;
    }

    .profile-orders-table a{
      color:#2563eb;
      font-weight:600;
      text-decoration:none;
    }
    .profile-orders-table a:hover{
      text-decoration:underline;
    }

    .profile-order-status{
      font-weight:600;
      display:inline-flex;
      align-items:center;
      gap:4px;
    }

    .profile-order-status-icon{
      font-size:14px;
    }

    .profile-order-status--completed,
    .profile-order-status--refunded{
      color:#16a34a;
    }

    .profile-order-status--processing,
    .profile-order-status--on-hold{
      color:#0ea5e9;
    }

    .profile-order-status--pending{
      color:#f59e0b;
    }

    .profile-order-status--failed,
    .profile-order-status--cancelled{
      color:#dc2626;
    }

    @media (max-width: 768px){
      .profile-orders-table-wrapper{
        overflow-x:auto;
      }
      .profile-orders-table{
        min-width:520px;
      }
    }

    /* ====== Profil – Nastavení (/profil/nastaveni) ====== */
    .profile-settings-page{
      padding:64px 0;
    }

    .profile-settings-flash-wrapper{
      margin-bottom:16px;
      display:flex;
      flex-direction:column;
      gap:8px;
    }

    .profile-settings-flash{
      padding:10px 12px;
      border-radius:10px;
      font-size:14px;
    }

    .profile-settings-flash--success{
      background:#ecfdf3;
      color:#166534;
      border:1px solid #bbf7d0;
    }

    .profile-settings-flash--error{
      background:#fef2f2;
      color:#b91c1c;
      border:1px solid #fecaca;
    }

    .profile-settings-grid{
      display:grid;
      grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
      gap:24px;
      align-items:flex-start;
    }

    .profile-settings-card{
      background:#f9fafb;
      border-radius:18px;
      border:1px solid #e5e7eb;
      padding:18px 20px 20px;
      box-shadow:0 10px 25px rgba(15,23,42,0.06);
    }

    .profile-settings-text{
      margin:0 0 16px;
      font-size:14px;
      color:#4b5563;
    }

    .profile-settings-form{
      margin-top:8px;
      display:flex;
      flex-direction:column;
      gap:10px;
    }

    .profile-settings-form-row{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
    }

    .profile-settings-form-row--two .profile-settings-field{
      flex:1 1 0;
    }

    .profile-settings-field{
      flex:1 1 100%;
      min-width:0;
    }

    .profile-settings-label{
      display:block;
      margin-bottom:4px;
      font-size:13px;
      font-weight:600;
      color:#111827;
    }

    .profile-settings-input{
      width:100%;
      padding:8px 10px;
      border-radius:10px;
      border:1px solid #d1d5db;
      font-size:14px;
      background:#ffffff;
    }

    .profile-settings-input:focus{
      outline:none;
      border-color:#2563eb;
      box-shadow:0 0 0 1px rgba(37,99,235,0.3);
    }

    .profile-settings-help{
      margin:4px 0 0;
      font-size:12px;
      color:#6b7280;
    }

    .profile-settings-steps{
      margin:0 0 14px 18px;
      padding:0;
      font-size:13px;
      color:#4b5563;
    }

    .profile-settings-steps li{
      margin-bottom:4px;
    }

    .profile-back-btn{
      margin-bottom: 16px;
      padding-inline: 14px;
      font-size: 14px;
    }

    /* inline input + tlačítko "Zaslat kód" */
    .profile-settings-inline{
      display:flex;
      gap:8px;
      align-items:center;
    }

    .profile-settings-inline .profile-settings-input{
      flex:1 1 auto;
    }

    .profile-settings-code-btn{
      flex:0 0 auto;
      padding-inline:12px;
      font-size:13px;
      white-space:nowrap;
    }

    @media (max-width: 520px){
      .profile-settings-inline{
        flex-direction:column;
        align-items:stretch;
      }
      .profile-settings-code-btn{
        width:100%;
        justify-content:center;
      }
    }

    @media (max-width: 768px){
      .profile-settings-page{
        padding:40px 0;
      }
    }




/* ===== Store (/store) – layout shopu ===== */

.store-page {
  padding-top: 32px;
  padding-bottom: 64px;
  /* padding vlevo a vpravo nepíšeme vůbec, aby se použil ten z .container */
}

.store-header{
  margin-bottom: 16px;
}

.store-title{
  margin: 0 0 8px;
  font-size: 32px;
  line-height: 1.2;
  letter-spacing: -0.02em;
  color: #0f172a;
}

.store-intro{
  margin: 0 0 12px;
  font-size: 14px;
  color: #4b5563;
}

/* Horní řádek: Řadit + Košík – aby to vypadalo jako jeden prvek */
.store-toolbar{
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin-bottom: 16px;
}

/* světlý „chip“ kolem filtru + tlačítka */
.store-sort-form{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  border-radius: 12px;
  background: #f3f4f6;
  box-shadow: 0 0 0 1px #e5e7eb;
}

.store-sort-label{
  font-size: 14px;
  color: #6b7280;
}

/* select a tlačítko mají podobnou výšku i radius */
.store-sort-select{
  padding: 6px 10px;
  border-radius: 10px;
  border: 1px solid #d1d5db;
  font-size: 14px;
  background: #ffffff;
}

/* Košík – menší, hranatější, sedí k selectu */
.store-cart-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 14px;
  border-radius: 10px;
  background: #005b94;
  border: 1px solid #005b94;
  color: #ffffff;
  font-weight: 600;
  font-size: 14px;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
}

.store-cart-btn:hover{
  filter: brightness(0.95);
}

/* Sekce podle Woo kategorií (VIP, Klíče, Ostatní, …) */
.store-section{
  margin-top: 32px;
}

.store-section-header{
  margin-bottom: 12px;
}

.store-section-title{
  margin: 0 0 4px;
  font-size: 24px;
  letter-spacing: -0.02em;
  color: #0f172a;
}

.store-section-desc{
  margin: 0;
  font-size: 14px;
  color: #6b7280;
}

/* GRID produktů uvnitř sekcí – menší kartičky vedle sebe */
.store-section-products ul.products{
  display: flex !important;      /* přepíšeme default Woo */
  flex-wrap: wrap;
  gap: 24px 18px;
  list-style: none;
  margin: 0;
  padding: 0;
  justify-content: flex-start;
}

.store-section-products ul.products::before,
.store-section-products ul.products::after{
  content: none !important;
}

/* Karta produktu – zarovnání NA STŘED + menší vertikální mezery */
.store-section-products ul.products li.product{
  float: none !important;
  margin: 0 !important;
  width: 180px !important;
  max-width: 100%;
  display: flex !important;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

/* Všechno uvnitř produktu chceme centrovat */
.store-section-products ul.products li.product a{
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Obrázek – na střed karty, menší mezera dolů */
.store-section-products ul.products li.product img{
  max-width: 140px;
  margin: 0 auto 4px;   /* dřív 8px */
}

/* Titulek + cena – menší mezery (cca polovina) */
.store-section-products ul.products li.product .woocommerce-loop-product__title{
  font-size: 14px;
  font-weight: 700;
  margin: 2px 0 2px;    /* zmenšený spacing */
}

.store-section-products ul.products li.product .price{
  font-weight: 700;
  margin: 2px 0 4px;    /* menší mezera nad/pod */
}

/* Tlačítko "Přidat do košíku" přes celou kartu */
.store-section-products ul.products li.product .button{
  width: 100%;
  max-width: 140px;
  margin: 4px auto 0;
  border-radius: 10px;
  display: inline-block;
}



/* Mobilní úpravy - dvě položky vedle sebe */
@media (max-width: 640px){
  .store-toolbar{
    justify-content: flex-start;
    flex-wrap: wrap;
  }

  .store-sort-form{
    margin-bottom: 6px;
  }

  .store-section{
    margin-top: 24px;
  }

  /* Upravený grid pro mobil */
  .store-section-products ul.products {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr); /* Dva sloupce vedle sebe */
    gap: 16px 10px; 
    justify-content: stretch;
  }

  .store-section-products ul.products li.product {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
  }

  /* Trochu zmenšíme obrázek */
  .store-section-products ul.products li.product img {
    max-width: 110px;
  }

  /* Tlačítko */
  .store-section-products ul.products li.product .button {
    width: auto !important;      
    min-width: 120px;            
    max-width: 90%;              
    margin: 4px auto 0;
    border-radius: 10px;         
    font-size: 13px;
    padding: 8px 12px;           
  }
} /* <--- TATO ZÁVORKA TADY CHYBĚLA A TA OPRAVÍ CELÝ WEB NA PC! */







/* =========================================================
   WooCommerce – KOŠÍK (/kosik) - KOMPLETNÍ
   ========================================================= */

/* Odsazení stránky košíku */
body.woocommerce-cart .site-main {
  padding: 40px 0 72px;
}

/* Wrapper WooCommerce zarovnat jako ostatní obsah */
body.woocommerce-cart .woocommerce {
  max-width: 1100px;
  margin: 0 auto;
}

/* --- BOX S POLOŽKAMI (PC VERZE) --- */

body.woocommerce-cart .woocommerce-cart-form {
  background: #f9fafb;
  border-radius: 18px;
  border: 1px solid #e5e7eb;
  padding: 18px 24px 24px;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
  margin-bottom: 24px;
}

/* Tabulka v košíku – bez defaultních rámů */
body.woocommerce-cart table.shop_table {
  border: 0;
  margin: 0;
}

body.woocommerce-cart table.shop_table thead th {
  border-bottom: 1px solid #e5e7eb;
  font-weight: 600;
  padding: 8px 6px 10px;
}

body.woocommerce-cart table.shop_table td {
  border-top: 0;
  padding: 14px 6px;
  vertical-align: middle;
}

/* Obrázek + název */
body.woocommerce-cart td.product-thumbnail {
  width: 80px;
}

body.woocommerce-cart td.product-name,
body.woocommerce-cart td.product-name a {
  font-weight: 500;
  color: #111827;
}

/* Množství */
body.woocommerce-cart td.product-quantity {
  width: 130px;
}

body.woocommerce-cart .quantity .qty {
  max-width: 80px;
}

/* Ikonka X – trochu uhlazená */
body.woocommerce-cart td.product-remove a.remove {
  color: #9ca3af !important;
  background: #f3f4f6;
  border-radius: 999px;
  width: 26px;
  height: 26px;
  line-height: 24px;
  text-align: center;
  font-size: 15px;
}

body.woocommerce-cart td.product-remove a.remove:hover {
  background: #fee2e2;
  color: #b91c1c !important;
}

/* Schovat kupónový řádek a aktualizaci košíku */
body.woocommerce-cart table.shop_table tr.coupon {
  display: none !important;
}

body.woocommerce-cart .actions .button[name="update_cart"],
body.woocommerce-cart .actions input[name="update_cart"] {
  display: none !important;
}

/* --- BOX „CELKEM K PLATBĚ“ --- */

body.woocommerce-cart .cart-collaterals {
  max-width: 420px;
  margin: 0 0 0 auto;
}

body.woocommerce-cart .cart_totals {
  background: #ffffff;
  border-radius: 18px;
  border: 1px solid #e5e7eb;
  padding: 18px 24px 24px;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
}

body.woocommerce-cart .cart_totals h2 {
  margin: 0 0 14px;
  font-size: 18px;
  font-weight: 700;
  color: #111827;
}

body.woocommerce-cart .cart_totals .shop_table tr th,
body.woocommerce-cart .cart_totals .shop_table tr td {
  border: 0;
  padding: 6px 0;
}

body.woocommerce-cart .cart_totals .shop_table tr th {
  font-weight: 500;
  color: #4b5563;
}

body.woocommerce-cart .cart_totals .order-total th,
body.woocommerce-cart .cart_totals .order-total td {
  font-weight: 700;
  padding-top: 10px;
}

/* Tlačítko „Objednat a zaplatit“ */
body.woocommerce-cart .wc-proceed-to-checkout {
  padding-top: 16px;
}

body.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 26px;
  background: #f3f4ff;
  color: #111827 !important;
  border-radius: 10px;
  border: 1px solid #e5e7eb;
  font-weight: 600;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
  text-decoration: none;
  transition: all 0.2s ease;
}

body.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover {
  background: #e5e7ff;
  transform: translateY(-1px);
}


/* =========================================================
   ÚPRAVA PRO MOBILE (Dole)
   ========================================================= */

@media (max-width: 768px) {
  body.woocommerce-cart .woocommerce {
    padding-inline: 16px;
  }

  /* 1. Produkty v košíku jako karty */
  body.woocommerce-cart .woocommerce-cart-form table.shop_table thead {
    display: none;
  }

  body.woocommerce-cart .woocommerce-cart-form table.shop_table tr.cart_item {
    display: block;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    padding: 12px;
    margin-bottom: 16px;
    position: relative;
    box-shadow: 0 4px 10px rgba(0,0,0,0.03);
  }

  body.woocommerce-cart .woocommerce-cart-form table.shop_table td {
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    border: 0;
    padding: 8px 0 !important;
    text-align: right !important;
  }

  /* Popisky polí v kartě */
  body.woocommerce-cart .woocommerce-cart-form table.shop_table td::before {
    content: attr(data-title);
    font-weight: 700;
    color: #6b7280;
    font-size: 12px;
    text-transform: uppercase;
  }

  /* Úprava fotky a jména v kartě */
  body.woocommerce-cart .woocommerce-cart-form td.product-thumbnail {
    justify-content: center;
    width: 100%;
    border-bottom: 1px solid #f3f4f6;
  }
  body.woocommerce-cart .woocommerce-cart-form td.product-thumbnail::before { display: none; }

  body.woocommerce-cart .woocommerce-cart-form td.product-name {
    justify-content: center;
    width: 100%;
    font-weight: 700;
  }
  body.woocommerce-cart .woocommerce-cart-form td.product-name::before { display: none; }

  /* Křížek do rohu */
  body.woocommerce-cart .woocommerce-cart-form td.product-remove {
    position: absolute;
    top: 8px;
    right: 8px;
    padding: 0 !important;
  }
  body.woocommerce-cart .woocommerce-cart-form td.product-remove::before { display: none; }

  /* 2. Fix pro tabulku „Celkem k platbě“ - musí zůstat tabulkou */
  body.woocommerce-cart .cart-collaterals {
    max-width: 100%;
    margin-top: 30px;
  }

  body.woocommerce-cart .cart_totals .shop_table {
    display: table !important;
    width: 100% !important;
  }

  body.woocommerce-cart .cart_totals .shop_table tr {
    display: table-row !important;
  }

  body.woocommerce-cart .cart_totals .shop_table th,
  body.woocommerce-cart .cart_totals .shop_table td {
    display: table-cell !important;
    text-align: left !important;
    padding: 10px 0 !important;
    border-bottom: 1px solid #f3f4f6 !important;
  }

  body.woocommerce-cart .cart_totals .shop_table td {
    text-align: right !important;
  }

  body.woocommerce-cart .cart_totals .shop_table td::before {
    display: none !important;
  }
}





/* ==============================
   Woo – zprávy v košíku (/kosik)
   ============================== */

body.woocommerce-cart .woocommerce-notices-wrapper {
  max-width: 1100px;            /* zarovnání na stejnou šířku jako košík */
  margin: 0 auto 24px;
}

/* základní vzhled zpráv (přidáno / odebráno / info) */
body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-cart .woocommerce-info {
  position: relative;
  border-radius: 16px;
  border: 1px solid rgba(34, 197, 94, 0.25);  /* jemný zelený okraj */
  background: #ecfdf5;                         /* světle zelené pozadí */
  padding: 10px 16px;
  font-size: 14px;
  color: #14532d;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
}

/* schovat defaultní ikonku z Woo */
body.woocommerce-cart .woocommerce-message::before,
body.woocommerce-cart .woocommerce-error::before,
body.woocommerce-cart .woocommerce-info::before {
  display: none !important;
}

/* tlačítko "Zobrazit košík" / podobná uvnitř hlášky jako malé pilulkové */
body.woocommerce-cart .woocommerce-message .button,
body.woocommerce-cart .woocommerce-error .button,
body.woocommerce-cart .woocommerce-info .button {
  border-radius: 999px;
  padding: 6px 16px;
  font-size: 13px;
  font-weight: 500;
  background: #f3f4ff;
  color: #111827;
  border: 1px solid #e5e7eb;
}

body.woocommerce-cart .woocommerce-message .button:hover,
body.woocommerce-cart .woocommerce-error .button:hover,
body.woocommerce-cart .woocommerce-info .button:hover {
  background: #e5e7ff;
}
/* Woo – košík: schovat kupón v tabulce pod produkty (vlevo) */
body.woocommerce-cart .woocommerce-cart-form .coupon,
body.woocommerce-cart table.shop_table .coupon {
  display: none !important;
}
/* Tlačítko "Zpět do storu" vedle Objednat a zaplatit */
body.woocommerce-cart .wc-proceed-to-checkout .craftcz-back-to-store {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 10px;
  padding: 8px 18px;
  border-radius: 10px;
  border: 1px solid #e5e7eb;
  background: #f9fafb;
  color: #111827;
  font-weight: 500;
  text-decoration: none;
}

body.woocommerce-cart .wc-proceed-to-checkout .craftcz-back-to-store:hover {
  background: #e5e7ff;
}




/* Košík tlačítko v /store – bez podtržení */
.store-cart-btn,
.craftcz-store-cart-btn {
  text-decoration: none;
}

.store-cart-btn:hover,
.craftcz-store-cart-btn:hover,
.store-cart-btn:focus,
.craftcz-store-cart-btn:focus {
  text-decoration: none;   /* zruší podtržení i při hoveru/focusu */
}





/* =========================================
   CraftCZ – pravý box "Celkem k platbě"
   (cart-totals.php – .craftcz-cart-summary)
   ========================================= */

body.woocommerce-cart .craftcz-cart-summary {
  max-width: 420px;
  margin: 40px 0 0 auto;
  background: #ffffff;
  border-radius: 18px;
  border: 1px solid #e5e7eb;
  padding: 20px 24px 26px;
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
}

/* Nadpis "Celkem k platbě" */
body.woocommerce-cart .craftcz-cart-summary__title {
  margin: 0 0 18px;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: #111827;
}

/* ===============================
   Slevový kupón – label + input
   =============================== */

body.woocommerce-cart .craftcz-cart-summary__coupon {
  margin-bottom: 16px;
}

body.woocommerce-cart .craftcz-cart-summary__coupon-inner {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
}

body.woocommerce-cart .craftcz-cart-summary__coupon-left {
  flex: 1 1 auto;
}

body.woocommerce-cart .craftcz-cart-summary__coupon-label {
  font-size: 13px;
  font-weight: 600;
  color: #374151;
  margin-bottom: 4px;
}

body.woocommerce-cart .craftcz-cart-summary__coupon-left .input-text {
  width: 100%;
  max-width: 100%;
  padding: 8px 10px;
  border-radius: 10px;
  border: 1px solid #d1d5db;
  font-size: 14px;
}

/* Modré tlačítko "Aplikovat" */
body.woocommerce-cart .craftcz-cart-summary__coupon-btn {
  white-space: nowrap;
  padding: 9px 18px;
  border-radius: 10px;
  border: 1px solid #005b94;
  background: #005b94;
  color: #ffffff;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  transition: background 0.15s ease, border-color 0.15s ease,
              transform 0.1s ease, box-shadow 0.15s ease;
}

body.woocommerce-cart .craftcz-cart-summary__coupon-btn:hover {
  background: #0369a1;
  border-color: #0369a1;
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.22);
}

/* ===============================
   Tabulka souhrnu (Mezisoučet, Celkem…)
   =============================== */

body.woocommerce-cart .craftcz-cart-summary__totals {
  border: 0;
  margin: 0;
  width: 100%;
}

body.woocommerce-cart .craftcz-cart-summary__totals tr th,
body.woocommerce-cart .craftcz-cart-summary__totals tr td {
  border: 0;
  padding: 6px 0;
  font-size: 14px;
  color: #111827;
}

body.woocommerce-cart .craftcz-cart-summary__totals .cart-subtotal th {
  font-weight: 500;
  color: #4b5563;
}

/* řádek s kuponem (např. "Kupon: vanoce2025") */
body.woocommerce-cart .craftcz-cart-summary__totals .cart-discount th {
  font-weight: 500;
  color: #b91c1c;
}

body.woocommerce-cart .craftcz-cart-summary__totals .cart-discount td {
  color: #b91c1c;
}

/* Celkem k úhradě – zvýraznit */
body.woocommerce-cart .craftcz-cart-summary__totals .order-total th,
body.woocommerce-cart .craftcz-cart-summary__totals .order-total td {
  font-weight: 700;
  padding-top: 10px;
}

body.woocommerce-cart .craftcz-cart-summary__totals .order-total td {
  font-size: 15px;
}

/* ===============================
   Spodní tlačítka – "Zpět do obchodu" & "K pokladně"
   =============================== */

body.woocommerce-cart .craftcz-cart-summary__checkout {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-top: 18px;
}

/* Šedé tlačítko "Zpět do obchodu" */
body.woocommerce-cart .craftcz-cart-summary__back {
  flex: 1 1 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 16px;
  border-radius: 10px;
  border: 1px solid #d1d5db;
  background: #f9fafb;
  color: #374151;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

body.woocommerce-cart .craftcz-cart-summary__back:hover {
  background: #f3f4f6;
  border-color: #cbd5e1;
  color: #111827;
}

/* Zlaté tlačítko "K pokladně" – MENŠÍ zaoblení, BEZ záření */
body.woocommerce-cart .craftcz-cart-summary__checkout .wc-proceed-to-checkout {
  flex: 1 1 0;
  text-align: right;
}

/* WooCommerce generuje .checkout-button.button.alt uvnitř .wc-proceed-to-checkout */
body.woocommerce-cart
  .craftcz-cart-summary__checkout .wc-proceed-to-checkout .button.alt,
body.woocommerce-cart
  .craftcz-cart-summary__checkout .wc-proceed-to-checkout .checkout-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 9px 18px;
  border-radius: 10px !important;        /* stejné rohy jako ostatní tlačítka */
  background: #fbbf24 !important;       /* zlatá / žlutá */
  border: 1px solid #f59e0b !important;
  color: #111827 !important;            /* tmavý text kvůli kontrastu */
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  box-shadow: none !important;          /* bez zářícího stínu */
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease,
              transform 0.1s ease;
}

body.woocommerce-cart
  .craftcz-cart-summary__checkout .wc-proceed-to-checkout .button.alt:hover,
body.woocommerce-cart
  .craftcz-cart-summary__checkout .wc-proceed-to-checkout .checkout-button:hover {
  background: #f59e0b !important;
  border-color: #d97706 !important;
  transform: translateY(-1px);
}

/* ===============================
   Responsivita – mobil
   =============================== */

@media (max-width: 768px) {
  body.woocommerce-cart .craftcz-cart-summary {
    max-width: none;
    margin: 24px 0 0;
  }

  body.woocommerce-cart .craftcz-cart-summary__checkout {
    flex-direction: column-reverse;
  }

  body.woocommerce-cart .craftcz-cart-summary__back,
  body.woocommerce-cart
    .craftcz-cart-summary__checkout .wc-proceed-to-checkout .button.alt,
  body.woocommerce-cart
    .craftcz-cart-summary__checkout .wc-proceed-to-checkout .checkout-button {
    width: 100%;
  }
}

/* === FINÁLNÍ OVERRIDY PRO BOX "CELKEM K PLATBĚ" === */

/* Modré tlačítko "Aplikovat" */
body.woocommerce-cart .craftcz-cart-summary .craftcz-cart-summary__coupon-btn {
  background: #005b94 !important;     /* modrá */
  border: 1px solid #005b94 !important;
  color: #ffffff !important;
  border-radius: 10px !important;
}

/* Zlaté tlačítko "K pokladně" vpravo dole */
body.woocommerce-cart .craftcz-cart-summary .wc-proceed-to-checkout .button,
body.woocommerce-cart .craftcz-cart-summary .wc-proceed-to-checkout .button.alt,
body.woocommerce-cart .craftcz-cart-summary .wc-proceed-to-checkout .checkout-button {
  background: #fbbf24 !important;     /* zlatá/žlutá */
  border: 1px solid #f59e0b !important;
  color: #111827 !important;
  border-radius: 10px !important;      /* stejné rohy jako ostatní */
  box-shadow: none !important;        /* žádné záření */
}

/* Modré "Aplikovat" je OK – tady jen pro jistotu */
body.woocommerce-cart .craftcz-cart-summary .craftcz-cart-summary__coupon-btn {
  background: #005b94 !important;
  border: 1px solid #005b94 !important;
  color: #ffffff !important;
  border-radius: 10px !important;
}

/* Zlaté tlačítko "K pokladně" v pravém boxu */
body.woocommerce-cart .craftcz-cart-summary .wc-proceed-to-checkout .checkout-button,
body.woocommerce-cart .craftcz-cart-summary .wc-proceed-to-checkout .button.checkout-button,
body.woocommerce-cart .craftcz-cart-summary a.checkout-button.button.alt {
  background: #fbbf24 !important;      /* zlatá */
  border-color: #f59e0b !important;    /* trochu tmavší okraj */
  color: #111827 !important;           /* tmavý text */
  background-image: none !important;   /* žádné přechody */
  box-shadow: none !important;         /* žádná záře */
  text-shadow: none !important;
  /* border-radius NECHÁVÁME – bere se z obecného tlačítka,
     takže bude stejné jako ostatní (jen barva je jiná) */
}




/* =========================================
   WooCommerce – Pokladna (/pokladna)
   ========================================= */

/* Celá stránka pokladny – stejné odsazení jako jinde */
body.woocommerce-checkout .site-main {
  padding: 40px 0 80px;
}

/* Zúžení obsahu na rozumnou šířku */
body.woocommerce-checkout .woocommerce {
  max-width: 1100px;
  margin: 0 auto;
}

/* Schovat původní info box "Máte kupon?" – kupón řešíme jinde */
body.woocommerce-checkout .woocommerce-info {
  display: none;
}

/* ------------------------------
   LEVÝ CARD – fakturační údaje + kupón
   ------------------------------ */

body.woocommerce-checkout #customer_details {
  background: #f9fafb;
  border-radius: 10px;
  border: 1px solid #e5e7eb;
  padding: 22px 24px 24px;
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
  margin: 0 0 24px;
}

/* Nadpisy uvnitř levého cardu */
body.woocommerce-checkout #customer_details h3 {
  font-size: 20px;
  margin: 0 0 18px;
}

/* Zrušit staré Woo floaty uvnitř customer_details */
body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2 {
  width: 100%;
  float: none;
}

/* Mezery mezi řádky formuláře */
body.woocommerce-checkout #customer_details .form-row {
  margin-bottom: 14px;
}

/* Labely + inputy */
body.woocommerce-checkout #customer_details label {
  font-size: 13px;
  font-weight: 500;
  color: #374151;
  margin-bottom: 4px;
}

body.woocommerce-checkout #customer_details input.input-text,
body.woocommerce-checkout #customer_details textarea,
body.woocommerce-checkout #customer_details select {
  border-radius: 10px;
  border: 1px solid #d1d5db;
  padding: 8px 10px;
  font-size: 14px;
}

body.woocommerce-checkout #customer_details textarea {
  min-height: 90px;
}

/* ------------------------------
   INLINE KUPÓN uvnitř fakturačních údajů
   (input + Aplikovat vedle sebe)
   ------------------------------ */

body.woocommerce-checkout #customer_details .craftcz-checkout-coupon-inline {
  margin: 0 0 18px;
  padding-bottom: 12px;
  border-bottom: 1px solid #e5e7eb;
}

.craftcz-checkout-coupon-inline__label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 4px;
}

.craftcz-checkout-coupon-inline__row {
  display: flex;
  align-items: center;
  gap: 8px;
}

.craftcz-checkout-coupon-inline__row input.input-text {
  flex: 1 1 auto;
}

/* modré tlačítko Aplikovat – jako na /store */
body.woocommerce-checkout .craftcz-checkout-coupon-inline__btn {
  background: #005b94;
  border-color: #005b94;
  color: #ffffff;
  font-weight: 600;
  padding: 8px 18px;
  border-radius: 999px;
  white-space: nowrap;
}

body.woocommerce-checkout .craftcz-checkout-coupon-inline__btn:hover {
  background: #0369a1;
  border-color: #0369a1;
}

/* mobily – tlačítko pod input */
@media (max-width: 600px) {
  .craftcz-checkout-coupon-inline__row {
    flex-direction: column;
    align-items: stretch;
  }

  body.woocommerce-checkout .craftcz-checkout-coupon-inline__btn {
    width: 100%;
    text-align: center;
  }
}

/* ------------------------------
   PRAVÝ CARD – Vaše objednávka + platební metoda
   ------------------------------ */

body.woocommerce-checkout #order_review_heading {
  display: none;
}

body.woocommerce-checkout #order_review {
  background: #ffffff;
  border-radius: 18px;
  border: 1px solid #e5e7eb;
  padding: 22px 24px 24px;
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
  margin: 0 0 24px;
}

/* Vlastní nadpis „Vaše objednávka“ */
body.woocommerce-checkout #order_review::before {
  content: "Vaše objednávka";
  display: block;
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 16px;
  color: #111827;
}

/* Tabulka souhrnu */
body.woocommerce-checkout .woocommerce-checkout-review-order-table {
  border: 0;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td {
  border: 0;
  padding: 8px 0;
  font-size: 14px;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
  font-weight: 700;
  padding-top: 10px;
}

/* ------------------------------
   DVOUSLOUPCOVÝ LAYOUT – FLOATY
   (PRÁVĚ TOHLE POSUNE VAŠI OBJEDNÁVKU DOPRAVA)
   ------------------------------ */

@media (min-width: 960px) {

  /* Levý card vlevo */
  body.woocommerce-checkout #customer_details {
    float: left;
    width: 60%;
    margin-right: 2%;
  }

  /* Pravý card vpravo */
  body.woocommerce-checkout #order_review {
    float: right;
    width: 38%;
  }

  /* Vyčištění floatů */
  body.woocommerce-checkout form.checkout::after {
    content: "";
    display: block;
    clear: both;
  }
}

/* Na mobilech pod sebou – zrušit floaty */
@media (max-width: 959px) {
  body.woocommerce-checkout #customer_details,
  body.woocommerce-checkout #order_review {
    float: none;
    width: 100%;
  }
}

/* ------------------------------
   Horní "Zpět do košíku"
   ------------------------------ */

.woocommerce-checkout .craftcz-checkout-topbar {
  max-width: 1100px;
  margin: 0 auto 16px;
}

.woocommerce-checkout .craftcz-checkout-back {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 7px 16px;
  border-radius: 10px;
  background: #e5e7eb;
  border-color: #e5e7eb;
  color: #111827;
  font-weight: 500;
  text-decoration: none;
}

.woocommerce-checkout .craftcz-checkout-back:hover {
  background: #d1d5db;
  border-color: #d1d5db;
}

/* ------------------------------
   Zlaté tlačítko "Objednat a zaplatit"
   ------------------------------ */

body.woocommerce-checkout #payment .place-order {
  margin-top: 16px;
}

body.woocommerce-checkout #payment .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 26px;
  border-radius: 10px;
  font-weight: 600;
  border: none;
  cursor: pointer;

  background: #fbbf24;   /* zlatá */
  color: #111827;
  box-shadow: none;
  text-decoration: none;
  transition: background 0.15s ease, transform 0.1s ease;
}

body.woocommerce-checkout #payment .button:hover {
  background: #f59e0b;   /* trochu tmavší na hover */
  transform: translateY(-1px);
}




/* Oprava login stránky - zjednodušené selektory */
.page-login-main {
    padding: 60px 0 100px;
    background: #fdfdfd;
}

.login-page-wrapper {
    max-width: 500px;
    margin: 0 auto;
}

.login-page-wrapper .page-title {
    font-size: 32px;
    font-weight: 800;
    margin-bottom: 25px;
    text-align: left;
    color: #111827;
}

.login-card {
    background: #ffffff !important;
    border-radius: 16px !important;
    border: 1px solid #e5e7eb !important;
    padding: 30px !important;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05) !important;
}

.craftcz-login-form .form-row {
    margin-bottom: 18px;
}

.craftcz-login-form label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #374151;
    margin-bottom: 6px;
}

.craftcz-login-form input.input-text {
    width: 100%;
    border-radius: 8px;
    border: 1px solid #d1d5db;
    padding: 10px 12px;
    font-size: 15px;
    transition: border-color 0.2s;
}

.craftcz-login-form input.input-text:focus {
    border-color: #005b94;
    outline: none;
}

.form-row--inline {
    display: flex;
    align-items: flex-end;
    gap: 12px;
}

.form-field--button .btn-secondary {
    height: 40px;
    white-space: nowrap;
    background: #f3f4f6;
    border: 1px solid #d1d5db;
    padding: 0 15px;
    border-radius: 8px;
    font-weight: 600;
    cursor: pointer;
}

.form-help {
    font-size: 13px;
    color: #6b7280;
    line-height: 1.5;
    margin-top: 8px;
}

.btn-primary {
    background: #005b94;
    color: #fff;
    padding: 12px 20px;
    border-radius: 8px;
    font-weight: 700;
    border: none;
    cursor: pointer;
    transition: background 0.2s;
}

.btn-primary:hover {
    background: #004a7a;
}

/* Notice box */
.craftcz-login-notice {
    display: flex;
    align-items: center;
    gap: 12px;
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    padding: 15px;
    border-radius: 10px;
    margin-bottom: 20px;
}





/* --- Úprava stránky produktu (WooCommerce) --- */

/* 1. SROVNÁNÍ ŠÍŘKY S LOGEM A PROFILEM */
/* Tady cílíme na .col-full, což je ten viník ze screenshotu */
.single-product .col-full,
.single-product .site-content,
.single-product #primary {
    max-width: var(--container) !important; /* Těch tvých 1200px */
    margin: 0 auto !important;
    padding-left: var(--gutter) !important;
    padding-right: var(--gutter) !important;
    width: 100% !important;
    float: none !important;
}

/* Horní navigační lišta (Zpět + Košík) */
.craftcz-product-nav-bar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 20px 0 25px 0;
    width: 100%;
}

/* Styl pro tlačítko Zpět */
.btn-back {
    display: inline-flex;
    align-items: center;
    background-color: var(--surface);
    color: var(--text);
    padding: 8px 16px;
    border-radius: 10px;
    border: 1px solid var(--border);
    font-weight: 600;
    font-size: 14px;
    transition: all 0.2s ease;
    text-decoration: none !important;
}

.btn-back:hover {
    background-color: var(--border);
    transform: translateX(-4px);
}

/* Styl pro tlačítko Košík */
.store-cart-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 18px;
    border-radius: 10px;
    background: #005b94;
    border: 1px solid #005b94;
    color: #ffffff !important;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none !important;
    white-space: nowrap;
    cursor: pointer;
    transition: filter 0.2s;
}

.store-cart-btn:hover {
    filter: brightness(0.9);
}

/* Hlavní kontejner produktu */
.single-product div.product {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 40px;
    margin-top: 0;
    margin-bottom: 10px !important;
    align-items: flex-start;
    width: 100% !important;
}

/* Levá strana: Obrázek (350px) */
.single-product div.product .woocommerce-product-gallery {
    flex: 0 0 350px;
    background: var(--surface);
    border-radius: var(--radius);
    padding: 15px;
    border: 1px solid var(--border);
    margin-bottom: 0 !important;
}

.single-product div.product .woocommerce-product-gallery img {
    width: 100%;
    height: auto;
    object-fit: contain;
}

/* Pravá strana: Informace */
.single-product div.product .summary {
    flex: 1;
    padding: 0;
}

/* Nadpis, Cena a Tlačítko Do košíku */
.single-product .product_title { font-size: 32px; font-weight: 800; margin-bottom: 10px; color: var(--text); }
.single-product .price { font-size: 24px !important; color: var(--accent) !important; font-weight: 700; margin-bottom: 20px; display: block; }

.single-product .cart .button {
    background-color: var(--accent) !important; color: #fff !important; padding: 12px 30px !important; 
    font-size: 16px !important; font-weight: 700 !important; border-radius: 12px !important; border: none !important;
}

/* --- Sekce PODROBNÝ POPIS --- */
.craftcz-full-description {
    flex: 0 0 100% !important; /* Drží popis pod produktem */
    width: 100% !important;
    margin-top: 10px !important;
    padding-top: 20px !important;
    border-top: 1px solid var(--border);
}

.craftcz-full-description h2 {
    display: none;
}

.craftcz-full-description ul {
    margin-top: 5px !important;
    padding-left: 0;
}


/* ====== ÚPRAVA MOBILNÍ VERZE (Podobně jako PC) ====== */
@media (max-width: 768px) {
    .single-product div.product {
        flex-direction: row !important; /* Držíme je vedle sebe i na mobilu */
        flex-wrap: wrap !important;
        gap: 15px; /* Menší mezera na mobilu */
    }

    /* Obrázek na mobilu zmenšíme, aby nezabíral celou šířku */
    .single-product div.product .woocommerce-product-gallery {
        flex: 0 0 120px !important; /* Malý čtverec s obrázkem vlevo */
        padding: 8px;
    }

    /* Info na mobilu vedle obrázku */
    .single-product div.product .summary {
        flex: 1 !important;
        min-width: 150px;
    }

    /* Zmenšení textů na mobilu, aby se to tam vešlo */
    .single-product .product_title { font-size: 20px; }
    .single-product .price { font-size: 18px !important; margin-bottom: 10px; }
    .single-product .cart .button { 
        padding: 8px 16px !important; 
        font-size: 14px !important; 
    }

    /* Popis zůstane pod tím na celou šířku */
    .craftcz-full-description {
        flex: 0 0 100% !important;
        margin-top: 15px !important;
    }
}



/* --- MODERNÍ WIKI DESIGN --- */

.server-wiki {
    max-width: var(--container);
    margin: 40px auto;
}

/* Hlavní nadpisy okruhů */
.wiki-main-title {
    font-size: 26px;
    font-weight: 900;
    color: var(--text);
    margin: 40px 0 20px 0;
    display: flex;
    align-items: center;
    gap: 15px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Linka vedle nadpisu pro lepší vzhled */
.wiki-main-title::after {
    content: "";
    flex: 1;
    height: 3px;
    background: linear-gradient(to right, var(--accent), transparent);
    border-radius: 2px;
}

/* Kontejner pro kategorii */
.wiki-category {
    background: var(--bg);
    border: 1px solid var(--border);
    border-radius: 12px;
    margin-bottom: 12px;
    transition: all 0.2s ease-in-out;
    box-shadow: 0 2px 4px rgba(0,0,0,0.02);
}

/* Stav při rozbalení - přidáme jemný stín a zvýrazníme okraj */
.wiki-category[open] {
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    border-color: var(--accent);
}

/* HLAVNÍ LIŠTA (Summary) */
.wiki-category summary {
    padding: 18px 24px;
    font-weight: 700;
    font-size: 17px;
    cursor: pointer; /* TA TVOJE CHŇAPKA */
    list-style: none;
    display: flex;
    align-items: center;
    user-select: none; /* Zabrání nechtěnému označování textu při klikání */
    color: var(--text);
    transition: background 0.2s;
}

/* Skrytí výchozí šipky v Safari/Chrome */
.wiki-category summary::-webkit-details-marker {
    display: none;
}

/* Vlastní stylová šipka */
.wiki-category summary::before {
    content: '→'; /* Modernější šipka nebo použij ► */
    margin-right: 15px;
    font-size: 18px;
    color: var(--accent);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    display: inline-block;
}

/* Animace šipky při rozbalení */
.wiki-category[open] summary::before {
    transform: rotate(90deg);
    color: var(--accent);
}

/* Hover efekt na lištu */
.wiki-category summary:hover {
    background: var(--surface);
}

/* OBSAH WIKI */
.wiki-content {
    padding: 0 24px 24px 58px; /* Odsazení zleva aby text lícoval pod nadpisem */
    line-height: 1.8;
    color: var(--muted);
    font-size: 15px;
    animation: slideDown 0.3s ease-out;
}

/* Jednoduchá animace rozbalení textu */
@keyframes slideDown {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Styl pro seznamy uvnitř wiki */
.wiki-content ul {
    margin: 10px 0;
    padding-left: 20px;
    list-style-type: square;
}

.wiki-content li {
    margin-bottom: 8px;
}

/* Zvýraznění příkazů (např. /spawn) */
.wiki-content code {
    background: var(--surface);
    padding: 2px 6px;
    border-radius: 4px;
    color: var(--accent);
    font-weight: 600;
    font-family: monospace;
}

/* Responzivita */
@media (max-width: 768px) {
    .wiki-content { padding: 0 20px 20px 20px; }
    .wiki-category summary { padding: 15px; }
}



/* --- Úprava sekce TLauncher ve Wiki --- */

/* Flexbox pro TLauncher sekci */
.wiki-flex-content {
    display: flex;
    gap: 25px;
    align-items: flex-start;
    margin-top: 25px;
}

.wiki-image {
    flex: 0 0 400px; /* Šířka obrázku */
}

.wiki-image img {
    width: 100%;
    height: auto;
    border-radius: 8px;
    border: 1px solid var(--border);
}

.wiki-text {
    flex: 1;
}

/* Styl pro odkaz na Úkoly (tlačítko) */
.wiki-link-btn {
    display: inline-block;
    margin-top: 10px;
    padding: 10px 20px;
    background: var(--accent);
    color: #fff !important;
    border-radius: 8px;
    font-weight: 700;
    text-decoration: none !important;
    transition: filter 0.2s;
}

.wiki-link-btn:hover {
    filter: brightness(1.1);
}

/* Styl pro seznam příkazů u Residencí */
.wiki-cmd-list {
    list-style: none !important;
    padding-left: 0 !important;
}

.wiki-cmd-list li {
    margin-bottom: 12px;
    padding: 8px 12px;
    background: var(--surface);
    border-radius: 6px;
    border-left: 3px solid var(--accent);
}

/* Responzivita pro mobilní telefony */
@media (max-width: 600px) {
    .wiki-flex-content {
        flex-direction: column;
        align-items: flex-start;
    }
    .wiki-image {
        flex: none;
        width: 100%;
        max-width: 250px;
        margin-bottom: 15px;
    }
}






/* --- WIKI RECEPTY --- */

.wiki-recipes-container {
    padding-top: 10px;
}

.wiki-recipe {
    padding: 15px 0;
}

.wiki-recipe-grid {
    display: flex;
    gap: 25px;
    align-items: center;
}

/* Obrázek receptu (šířka kolem 360px) */
.wiki-recipe-img {
    flex: 0 0 360px;
    max-width: 360px;
}

.wiki-recipe-img img {
    width: 100%;
    height: auto;
    border-radius: 6px;
    border: 1px solid var(--border);
    display: block;
}

.wiki-recipe-text {
    flex: 1;
}

.wiki-recipe-text h3 {
    margin: 0 0 8px 0;
    font-size: 18px;
    color: var(--text);
    font-weight: 800;
}

.wiki-recipe-text p {
    margin: 0;
    font-size: 15px;
}

/* Jemný, ale zřetelný modrý oddělovač mezi recepty */
.wiki-recipe-divider {
    border: 0;
    height: 2px; /* 3px už by mohlo být moc humpolácké, 2px je ideální pro čistou linku */
    background: linear-gradient(to right, transparent, var(--accent), transparent);
    margin: 20px 0; /* Trochu jsem zvětšil mezery kolem, aby recepty měly vzduch */
    opacity: 0.8; /* Plná viditelnost barvy */
}

/* Responzivita pro menší obrazovky */
@media (max-width: 700px) {
    .wiki-recipe-grid {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }
    .wiki-recipe-img {
        flex: none;
        width: 100%;
        max-width: 360px;
    }
}



/* --- WIKI MOBOVÉ --- */

.wiki-mobs-container {
    padding-top: 10px;
}

.wiki-mob-card {
    padding: 15px 0;
}

.wiki-mob-grid {
    display: flex;
    gap: 30px;
    align-items: center;
}

/* Prostor pro obrázek/gif moba */
.wiki-mob-img {
    flex: 0 0 180px; /* Šířka pro obrázek moba */
    display: flex;
    justify-content: center;
    background: var(--surface);
    border-radius: 10px;
    padding: 10px;
    border: 1px solid var(--border);
}

.wiki-mob-img img {
    max-width: 100%;
    height: auto;
    image-rendering: pixelated; /* Minecraft styl pro ostré gify */
}

.wiki-mob-info {
    flex: 1;
}

.wiki-mob-info h3 {
    margin: 0 0 10px 0;
    font-size: 20px;
    color: var(--text);
    font-weight: 800;
}

/* Štítky se statistikami */
.wiki-mob-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
}

.wiki-tag {
    background: var(--border);
    color: var(--text);
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

/* Speciální barvy pro důležité štítky */
.tag-biome { background: #2e7d32; color: #fff; } /* Zelená pro biomy */
.tag-water { background: #0288d1; color: #fff; } /* Modrá pro vodu */
.tag-nether { background: #eb5449; color: #fff; } /* Červená pro nether */

.wiki-mob-info p {
    margin: 0;
    font-size: 14px;
    color: var(--muted);
    line-height: 1.6;
}

/* Responzivita pro moby */
@media (max-width: 600px) {
    .wiki-mob-grid {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    .wiki-mob-stats {
        justify-content: center;
    }
}