/*
 Theme Name:   Travel Tour Child
 Theme URI:    https://kurzypreludi.sk/
 Description:  Child téma pre TravelTour (Goodlayers). Obsahuje všetky vlastné
               úpravy webu kurzypreludi.sk, aby update parent témy nič neprepísal.
 Author:       Goodlayers / kurzypreludi.sk
 Author URI:   https://kurzypreludi.sk/
 Template:     traveltour
 Version:      2.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, right-sidebar, responsive-layout
 Text Domain:  traveltour-child
*/

/* ============================================================================
 * POZOR – tento súbor NEENQUEUUJEME v child functions.php.
 * Parent to robí sám: traveltour/include/include-script.php:47-49
 *   if( is_child_theme() ){ wp_enqueue_style('traveltour-child-theme-style', get_stylesheet_uri()); }
 *
 * PORADIE CSS NA FRONTENDE (overené na živom webe, kurzypreludi.sk, HTML head):
 *   1. traveltour/css/style-core.css              (parent, byte 29596)
 *   2. uploads/traveltour-style-custom.css        (GENEROVANÉ z Theme Options, byte 29801)
 *   3. TENTO SÚBOR  (child style.css)             ← nový, vloží sa hneď za #2
 *   4. <style id="wp-custom-css">                 (Customizer Additional CSS, byte 32622)
 *
 * Čiže child style.css prebíja generovaný súbor z Theme Options pri rovnakej
 * špecificite – presne to potrebujeme. Customizer Additional CSS ostáva
 * posledný a je zámerne PRÁZDNY (viď DB-ZMENY.md, post 1902).
 * ========================================================================= */


/* ============================================================================
 * BLOK A – prevzaté 1:1 z Theme Option  traveltour_plugin['additional-mobile-css']
 *          (949 B, DB kurzypreludi.sk, stav 2026-09-10)
 *
 * Téma túto option obaľuje do  @media only screen and (max-width: 767px){ … }
 * (dôkaz: x-theme/traveltour/include/options/plugin-settings.php:126-132) a
 * vypisuje ju do generovaného súboru – dnes uploads/traveltour-style-custom.css:480.
 *
 * PREČO SEM: option je „druhé, neviditeľné miesto pravdy" mimo gitu; po
 * presune do style.css máme responzívnu typografiu na jednom mieste.
 * Option sa vyprázdni (viď DB-ZMENY.md, krok 2).
 *
 * PREČO PRÁVE TU (pred blokom B): kopíruje dnešné poradie súborov
 * (generovaný CSS pred wp-custom-css). Poznámka: pri konfliktoch nižšie
 * NEROZHODUJE poradie ale ŠPECIFICITA – viď komentár v bloku B.
 * ========================================================================= */
@media only screen and (max-width: 767px) {
	.traveltour-body h1{font-size:26px}.traveltour-body h2{font-size:24px}.traveltour-body h3{font-size:21px}.traveltour-body h4{font-size:19px}.traveltour-body h5{font-size:17px}.traveltour-body h6{font-size:15px}.gdlr-core-blog-title>a{font-size:19px}.traveltour-page-title-wrap.traveltour-style-custom .traveltour-page-title{font-size:25px}.traveltour-blog-title-wrap .traveltour-single-article-title{font-size:25px}.form-control,.select2,.wpcf7 textarea,.wpcf7-form-control,input[type=color],input[type=date],input[type=datetime-local],input[type=datetime],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,select:focus,textarea{font-size:16px}.hp_hero .gdlr-core-title-item .gdlr-core-title-item-title{font-size:25px!important}.hp_hero .gdlr-core-title-item .gdlr-core-title-item-caption{font-size:20px!important}
}


/* ============================================================================
 * BLOK B – prevzaté 1:1 z Customizer „Additional CSS" parent témy
 *          = wp_posts.ID 169, post_type=custom_css, post_title='traveltour'
 *          8 725 B, post_modified 2026-06-14 14:46:38 (DB kurzypreludi.sk)
 *
 * Toto je AKTUÁLNA živá práca. Po prepnutí na child by WP načítal
 * custom_css post 1902 (child, stará verzia z 2020-04-14) → preto sa obsah
 * sťahuje sem do style.css a post 1902 sa vyprázdni (viď DB-ZMENY.md).
 *
 * ZNÁMY KONFLIKT (blok A vs blok B), rozhoduje ŠPECIFICITA, nie poradie:
 *   • generovaný Theme-Option CSS má `.traveltour-body h1{font-size:35px}`
 *     (špecificita 0,0,1,1; uploads/traveltour-style-custom.css:160)
 *     a v mobilnom bloku `.traveltour-body h1{font-size:26px}` (0,0,1,1).
 *   • blok B nižšie má `h1{font-size:clamp(26px,4.6vw,35px)}` (0,0,0,1).
 *   • <body> má triedu `traveltour-body` (overené v HTML živého webu),
 *     takže 0,0,1,1 > 0,0,0,1 ⇒ clamp() pre h1..h6 sa NIKDY neuplatní.
 *     Rovnako pri hero: `.hp_hero .gdlr-core-title-item .gdlr-core-title-item-title`
 *     (0,0,3,0 !important) prebíja `.hp_hero .gdlr-core-title-item-title`
 *     (0,0,2,0 !important) pod 767px.
 *   → Zachovávame BEZ ZMENY (baseline = dnešné živé správanie).
 *     Ak sa clamp() má naozaj uplatniť, treba mu dvihnúť špecificitu na
 *     `.traveltour-body h1{…}` – to je ale ZMENA VZHĽADU, nie migrácia.
 * ========================================================================= */
.center{text-align:center}.grecaptcha-badge{display:none!important}.center-kurzy-thumbnails .gdlr-core-portfolio-thumbnail-wrap{text-align:center}span .wpcf7-not-valid{border:1px solid red}span .wpcf7-checkbox{border:none}div.wpcf7-validation-errors{background:#ffe2e2;border:1px solid red;color:#c10000}span.wpcf7-not-valid-tip{color:red!important}div.wpcf7-response-output{margin-bottom:20px!important;border-radius:5px;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.reCap{margin-bottom:20px}.prihlaska_form{text-align:left;color:#000}.prihlaska_form input{padding:5px 5px 5px 15px}.prihlaska_form input[type=submit]{padding:15px 22px}.prihlaska_tab .gdlr-core-tab-item-title{width:200px}.privacy_checkbox .wpcf7-list-item{margin-left:0}input,select{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}input[type=date],select{display:block;width:100%;height:38px;border-width:1px 1px 2px 1px;border-style:solid;background-color:#fff}input[type=date]{-webkit-appearance:none}@media only screen and (max-device-width:480px){.reCap{width:304px;margin:0 auto 20px auto;text-align:center}input[type=submit]{width:100%!important}}.tab-center .gdlr-core-tab-item-content-wrap{text-align:left}.wpcf7-acceptance.wpcf7-not-valid{border:none;color:red}#menu-footer-menu-2-stlpec li:last-child{border:none}
.traveltour-top-bar-left a i {
	margin-right: 7px;
}
.traveltour-top-bar-left a {
	margin-right: 10px
}

#menu-mobile-menu ul .menu-item:last-child, .sub-menu {
	border-bottom: none;
}

.gdlr-core-tab-style1-horizontal .gdlr-core-tab-item-title {
    padding: 17px 24px 14px;
}
.traveltour-top-bar-right {
	display: none;
}
@media only screen and (max-width: 767px) {
	.traveltour-mobile-header-wrap .traveltour-top-bar-left {
		margin-bottom: 0px;
	}
}


/* KPL responzívne nadpisy */
h1{font-size:clamp(26px,4.6vw,35px);line-height:1.25;}
h2{font-size:clamp(22px,4vw,31px);line-height:1.3;}
h3{font-size:clamp(20px,3.4vw,28px);line-height:1.3;}
h4{font-size:clamp(18px,2.8vw,23px);}
h5{font-size:clamp(16px,2.2vw,19px);}
h6{font-size:clamp(15px,2vw,16px);}
/* KPL end */

/* KPL hero */
.hp_hero .gdlr-core-title-item-title{font-size:clamp(30px,7vw,52px)!important;line-height:1.12;}
.hp_hero .gdlr-core-title-item-caption{font-size:clamp(17px,3.6vw,32px)!important;line-height:1.3;}
/* KPL hero end */


/* KPL kontrast odkazov */
.gdlr-core-column-service-content a,.gdlr-core-text-box-content a,.gdlr-core-blog-content a,.gdlr-core-blog-full-content a,.gdlr-core-portfolio-content a,.gdlr-core-page-builder-body p a,.tt-page-content a,.entry-content a{color:#2563eb !important;}
.gdlr-core-column-service-content a:hover,.gdlr-core-text-box-content a:hover,.gdlr-core-page-builder-body p a:hover,.entry-content a:hover{color:#1d4ed8 !important;}
/* KPL kontrast end */

/* KPL zarovnanie footer kontakt ikon */
.traveltour-footer-wrapper .textwidget a i.fa{ display:inline-block; width:18px; margin-right:8px !important; text-align:center; }

/* KPL kontrast caption+button */
.gdlr-core-title-item-caption a{ color:#2563eb !important; }
.gdlr-core-button-solid{ background:#2563eb !important; }
.gdlr-core-button-solid:hover{ background:#1d4ed8 !important; }

/* KPL kontrast 2 (interne odkazy + cf7) */
nav.kpl-courses a{ color:#2563eb !important; }
.wpcf7-submit{ background:#2563eb !important; background-image:none !important; }
.wpcf7-submit:hover{ background:#1d4ed8 !important; }

/* KPL kontrast footer copyright */
.traveltour-copyright-wrapper{ color:#b3b3b3 !important; }
.traveltour-copyright-wrapper a.footer_link, .footer_link{ color:#8ab4f8 !important; }


/* ===== KPL UI v2: buttony + moderné formuláre + FAQ ===== */
.gdlr-core-button.gdlr-core-button-solid,
.gdlr-core-button.gdlr-core-button-gradient{
  background:#2563eb !important; background-image:none !important; color:#fff !important;
  font-size:14px !important; font-weight:600 !important; text-transform:none !important; letter-spacing:normal !important;
  padding:16px 40px !important; border-radius:29px !important; border:none !important;
  transition:background-color .2s ease, box-shadow .2s ease, transform .04s ease !important;
}
.gdlr-core-button.gdlr-core-button-solid:hover,
.gdlr-core-button.gdlr-core-button-gradient:hover{
  background:#1d4ed8 !important; background-image:none !important; color:#fff !important;
  box-shadow:0 6px 16px rgba(37,99,235,.30) !important; transform:translateY(-1px) !important;
}
.traveltour-body .wpcf7-form span.wpcf7-not-valid-tip{ margin-bottom:0 !important; }
.wpcf7-form p{ margin-bottom:16px; }
.prihlaska_form label{ display:block; font-weight:600; font-size:14px; color:#374151; margin-bottom:14px; }
.wpcf7-form .wpcf7-list-item label{ display:inline !important; font-weight:400 !important; color:#374151; margin-bottom:0 !important; }
.wpcf7-form input[type=text], .wpcf7-form input[type=email], .wpcf7-form input[type=tel],
.wpcf7-form input[type=url], .wpcf7-form input[type=number], .wpcf7-form input[type=date],
.wpcf7-form select, .wpcf7-form textarea{
  width:100% !important; box-sizing:border-box !important; display:block !important; height:auto !important;
  padding:12px 14px !important; margin-top:6px !important; font-size:16px !important; line-height:1.4 !important;
  color:#1f2937 !important; background-color:#fff !important; border:1px solid #d1d5db !important;
  border-radius:10px !important; box-shadow:none !important; -webkit-appearance:none; appearance:none;
  transition:border-color .15s ease, box-shadow .15s ease !important;
}
.wpcf7-form textarea{ min-height:130px; resize:vertical; }
.wpcf7-form input::placeholder, .wpcf7-form textarea::placeholder{ color:#9ca3af; }
.wpcf7-form input:focus, .wpcf7-form select:focus, .wpcf7-form textarea:focus{
  border-color:#2563eb !important; box-shadow:0 0 0 3px rgba(37,99,235,.15) !important; outline:none !important;
}
.wpcf7-form select{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important; background-position:right 14px center !important; padding-right:40px !important;
}
.wpcf7-form .wpcf7-list-item{ display:block; margin:0 0 6px 0; }
.wpcf7-form input[type=checkbox], .wpcf7-form input[type=radio]{ margin-right:8px; accent-color:#2563eb; } /* šírku/výšku dáva BLOK E (2026-09-10) */
.wpcf7-form .wpcf7-acceptance .wpcf7-list-item{ margin-left:0; }
.prihlaska_form b{ display:block; margin:16px 0 4px; color:#374151; }
.prihlaska_form hr{ border:none; border-top:1px solid #e5e7eb; margin:22px 0; }
.wpcf7-form input[type=submit], .wpcf7-form .wpcf7-submit{
  display:inline-block; width:auto !important; background:#2563eb !important; background-image:none !important;
  color:#fff !important; font-size:14px !important; font-weight:600 !important; text-transform:none !important;
  letter-spacing:normal !important; border:none !important; border-radius:29px !important; padding:16px 40px !important;
  margin-top:4px; cursor:pointer; transition:background-color .2s ease, box-shadow .2s ease, transform .04s ease !important;
}
.wpcf7-form input[type=submit]:hover, .wpcf7-form .wpcf7-submit:hover{
  background:#1d4ed8 !important; box-shadow:0 6px 16px rgba(37,99,235,.30) !important; transform:translateY(-1px) !important;
}
.wpcf7-form .wpcf7-response-output{ border-radius:8px; padding:12px 16px !important; }
@media (max-width:600px){ .wpcf7-form input[type=submit], .wpcf7-form .wpcf7-submit{ width:100% !important; } }
@media (max-width:1024px){ nav.kpl-courses ul{ margin-left:0 !important; padding-left:20px !important; } }

/* ===== KPL UI v2b: doladenie formulárov ===== */
.wpcf7-form select{ -webkit-appearance:none !important; -moz-appearance:none !important; appearance:none !important; }
.wpcf7-form-indicator{ display:none !important; }
.kpl-req{ color:#dc2626; font-weight:700; margin-left:3px; }
.prihlaska_form hr{ margin:8px 0 !important; }
.prihlaska_form br{ display:none; }
.wpcf7-form input[type=submit], .wpcf7-form .wpcf7-submit{ display:block !important; width:fit-content !important; margin:22px auto 0 !important; }
.wpcf7-form .cf7-cf-turnstile{ display:flex !important; justify-content:center !important; margin:18px 0 0 !important; }
@media (max-width:600px){ .wpcf7-form input[type=submit], .wpcf7-form .wpcf7-submit{ width:100% !important; } }
.wpcf7[id^="wpcf7-f50-"] .wpcf7-form br{ display:none; }
.wpcf7[id^="wpcf7-f50-"] .wpcf7-form .wpcf7-form-control-wrap{ display:block; margin-bottom:10px; }
.wpcf7[id^="wpcf7-f50-"] .wpcf7-form input, .wpcf7[id^="wpcf7-f50-"] .wpcf7-form textarea{ margin-top:0 !important; }

/* Farba odkazov (#2563eb) je Theme Option traveltour_color[link-color] a generuje sa do
   uploads/traveltour-style-custom.css. Tu ju ZÁMERNE neopakujeme: pravidlo .traveltour-body a
   na konci kaskády by prebilo rovnako špecifické pravidlá témy (napr. biele odkazy v pätičke).
   Overené rehearsalom 2026-09-10 – pätička 404 zmodrela. */

/* ============================================================================
 * BLOK D – dátumové pole vo formulároch na iOS (2026-09-10, Filo z iPhonu)
 *
 * Blok B dáva input[type=date] `-webkit-appearance:none`. Na iOS Safari tým prázdny
 * dátum stratí natívnu výšku: vnútorný box ::-webkit-date-and-time-value je bez hodnoty
 * nulový a pole sa zmrští na padding + rám (~26 px), kým textové polia vedľa majú ~48 px.
 * Na desktope sa to neprejaví (Chromium/Firefox dávajú vnútornému boxu výšku vždy).
 *
 * Oprava: vnútorný box dostane min. výšku riadku a zarovnanie vľavo (iOS ho centruje),
 * pole samotné min-height rovnú textovým poliam (1.4em riadok + 2×12px padding + 2×1px rám).
 * Bez !important – selektor s triedou aj atribútom (0,2,1) prebíja pravidlá pluginu aj témy.
 * ========================================================================= */
.wpcf7 .wpcf7-form-control[type="date"] {
	min-height: calc(1.4em + 26px);
	height: auto;
	line-height: 1.4;
}
.wpcf7 .wpcf7-form-control[type="date"]::-webkit-date-and-time-value {
	min-height: 1.4em;
	text-align: left;
}

/* ============================================================================
 * BLOK E – checkboxy a rádiá vo formulároch (2026-09-10, Filo z iPhonu)
 *
 * TravelTour 5.4.9 pridal do generovaného CSS `.wpcf7 input { padding: 24px 22px; }`. Chromium
 * a Firefox padding pri natívnom checkboxe ignorujú (13×13 px), iOS Safari ho pripočíta k boxu
 * a checkbox „Súhlasím so spracovaním…" mal ~45 px. Pred updateom bolo `.wpcf7 input` 15px 22px
 * (style-core), takže problém existoval v menšej miere aj predtým.
 *
 * Explicitná veľkosť + nulový padding zjednotí všetky prehliadače; appearance ostáva natívna,
 * farbu dáva accent-color z bloku B. Selektor (0,2,1) prebíja `.wpcf7 input` (0,1,1).
 * ========================================================================= */
.wpcf7 input[type="checkbox"],
.wpcf7 input[type="radio"] {
	-webkit-appearance: auto;
	appearance: auto;
	width: 18px;
	height: 18px;
	min-height: 0;
	padding: 0;
	margin: 0 8px 0 0;
	vertical-align: middle;
	border-radius: 3px;
}
.wpcf7 input[type="radio"] {
	border-radius: 50%;
}
