/*! ============================================================================
 *  Air Bank – styly odpovědního formuláře Recruitis
 *  ----------------------------------------------------------------------------
 *  Načítá se parametrem ?css=<url> na https://app.recruitis.io/answer/form/…
 *  Markup formuláře (Bootstrap 3, select2 3.x, sky-forms) nemáme pod kontrolou,
 *  proto se selektory vážou na ID/třídy Recruitisu a kde je to nutné, přebíjí
 *  jejich pravidla vyšší specificitou nebo !important (inline styly).
 *
 *  Zdroj hodnot: Figma „Kariérní stránky“ – frame „v2“ (desktop 1920 / mobil 375)
 *  a design tokeny kariérního webu (ab-karierni-web-2025).
 *
 *  Fonty Unica 77 LL TT se načítají z kariera.airbank.cz/assets/fonts/, který
 *  posílá Access-Control-Allow-Origin: * (cross-origin fonty CORS vyžadují).
 *  Alternativně lze fonty vložit přímo do souboru jako base64 data URI.
 *  Logo Air Bank je vložené jako SVG data URI (pseudoelement nad kartou).
 * ========================================================================== */

/* ---------------------------------------------------------------------------
 * 1. Fonty
 * ------------------------------------------------------------------------ */
@font-face {
	font-family: "Unica 77 LL TT";
	src: url("https://kariera.airbank.cz/assets/fonts/Unica_77LLTT-Regular.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Unica 77 LL TT";
	src: url("https://kariera.airbank.cz/assets/fonts/Unica_77LLTT-Medium.woff2") format("woff2");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Unica 77 LL TT";
	src: url("https://kariera.airbank.cz/assets/fonts/Unica_77LLTT-Bold.woff2") format("woff2");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

/* ---------------------------------------------------------------------------
 * 2. Design tokeny (primitiva kariérního webu + komponentové tokeny formuláře)
 * ------------------------------------------------------------------------ */
:root {
	/* colors – primitives (ab-karierni-web-2025/_global-styles/tokens/primitives/_colors.scss) */
	--color-white: #FFFFFF;
	--color-black-text: #202224;
	--color-dark-green: #0A100D;
	--color-dark-green-2: #2D3525;
	--color-brand-green: #99CC33;
	--color-brand-green-text: #497D00;
	--color-brand-green-bg-light: #ECF6D1;
	--color-green-accent: #BFE274;
	--color-green-light-bg: #D9EEA8;
	--color-gray-text: #61666B;
	--color-light-border: #CDD2D7;
	--color-very-light-gray: #F5F6F7;
	--color-error: #FF3B24;

	/* typography */
	--font-family-base: "Unica 77 LL TT", "Unica77LL", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--font-size-caption: 12px;
	--font-size-body: 14px;
	--font-size-heading: 24px;
	--line-height-base: 1.35;
	--line-height-caption: 16px;
	--font-weight-regular: 400;
	--font-weight-medium: 500;
	--font-weight-bold: 700;

	/* radii & shadows */
	--radius-card: 8px;
	--radius-control: 6px;
	--radius-control-inner: 4px;
	--radius-pill: 100px;
	--shadow-popover: 0 8px 24px 0 rgba(32, 34, 36, 0.12);

	/* component tokens – answer form (rc = Recruitis) */
	--rc-page-bg: var(--color-brand-green-bg-light);
	--rc-page-gutter: 16px;
	--rc-logo-image: url("data:image/svg+xml,%3Csvg width='151.431' height='60' viewBox='0 0 151.431 60' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg id='Logo / Air Bank'%3E%3Cpath id='Vector' d='M6.19643 15.8649C6.1828 16.2804 6.25459 16.6943 6.40736 17.0809C6.56014 17.4676 6.79064 17.8187 7.08461 18.1127C7.37857 18.4067 7.72975 18.6372 8.11639 18.79C8.50303 18.9427 8.91692 19.0145 9.33243 19.0009C9.85325 18.9971 10.3673 18.8826 10.8404 18.6648C11.3135 18.447 11.7349 18.131 12.0764 17.7378C13.1653 16.344 13.296 14.6453 13.296 12.2933C9.1582 11.9449 6.19643 13.2516 6.19643 15.8649ZM14.1017 22.6595C13.9447 21.6658 13.8754 20.6601 13.8949 19.6542C13.2196 20.7717 12.2577 21.6881 11.1089 22.3084C9.96012 22.9288 8.66625 23.2305 7.36154 23.1822C4.18199 23.1822 2.74466 22.2675 1.91711 21.44C0.664468 20.145 -0.0245519 18.4068 0.000668758 16.6053C-0.00342299 15.1283 0.439561 13.6847 1.27138 12.4641C2.10319 11.2436 3.28489 10.3034 4.6611 9.76713C7.37243 8.54757 11.1944 8.54757 13.3722 8.54757C13.4389 7.56455 13.3357 6.57738 13.0673 5.62936C12.8322 5.06745 12.4307 4.59098 11.9168 4.26396C11.4029 3.93694 10.8012 3.77505 10.1926 3.80003C9.71782 3.79119 9.24792 3.89752 8.82314 4.1099C8.39837 4.32229 8.03137 4.63442 7.75354 5.01958C7.39101 5.60599 7.22331 6.29206 7.27443 6.97958H0.958889C0.919566 5.97881 1.12516 4.98358 1.55781 4.08032C1.99047 3.17706 2.6371 2.39308 3.44155 1.79648C5.42744 0.532502 7.75371 -0.0908754 10.1055 0.010704C11.9349 0.010704 15.7677 0.315592 17.9455 2.84181C19.0449 4.43665 19.5813 6.35242 19.47 8.28624V17.128C19.4154 18.9961 19.5577 20.8648 19.8946 22.7031H14.1453L14.1017 22.6595ZM23.6622 0.576925H30.1084V22.6595H23.6622V0.576925ZM40.431 4.8018L40.3004 0.576925H34.2461C34.3768 1.84003 34.551 5.01958 34.551 6.02136V22.6704H41.0408V11.7816C41.0408 9.03757 41.4328 5.6838 47.9661 6.33713V0.544258C42.7395 0.282926 41.3021 2.93981 40.4746 4.81269L40.431 4.8018ZM70.0814 22.4635C68.8811 22.4167 67.6873 22.6617 66.6025 23.1775C65.5177 23.6934 64.5742 24.4647 63.853 25.4253V15.7778H57.3741V44.7748H63.6025C63.7332 43.4246 63.7768 42.4773 63.8203 41.7804C64.5018 42.9055 65.4804 43.821 66.6483 44.4261C67.8163 45.0312 69.1285 45.3026 70.4407 45.2104C74.7963 45.2104 79.6309 42.3357 79.6309 34.1037C79.6309 26.6993 75.4061 22.4744 70.0487 22.4744L70.0814 22.4635ZM68.6114 40.8548C65.6932 40.8548 63.559 38.5028 63.559 33.592C63.559 32.2309 63.559 26.928 68.3174 26.928C73.0758 26.928 73.065 32.612 73.065 34.3106C73.065 35.3995 73.065 40.8439 68.6223 40.8439L68.6114 40.8548ZM101.234 30.4015C101.346 28.4677 100.809 26.5519 99.71 24.9571C97.5322 22.4309 93.6994 22.126 91.87 22.126C89.5182 22.0244 87.1919 22.6478 85.206 23.9118C84.4016 24.5084 83.755 25.2923 83.3223 26.1956C82.8896 27.0989 82.6841 28.0941 82.7234 29.0949H89.0389C88.9878 28.4073 89.1555 27.7213 89.518 27.1349C89.7959 26.7497 90.1629 26.4376 90.5876 26.2252C91.0124 26.0128 91.4823 25.9065 91.9571 25.9153C92.5657 25.8903 93.1674 26.0522 93.6813 26.3792C94.1952 26.7063 94.5967 27.1827 94.8318 27.7446C95.0997 28.692 95.202 29.6796 95.1367 30.6629C92.9589 30.6629 89.126 30.6629 86.4256 31.8824C85.0494 32.4187 83.8677 33.3589 83.0359 34.5794C82.2041 35.7999 81.7611 37.2436 81.7652 38.7206C81.7399 40.5221 82.429 42.2603 83.6816 43.5553C84.5527 44.3828 85.99 45.2975 89.126 45.2975C90.4305 45.3446 91.724 45.0424 92.8726 44.4222C94.0212 43.8019 94.9833 42.8862 95.6593 41.7695C95.6267 42.7745 95.6855 43.7807 95.8336 44.7748H101.616C101.278 42.9366 101.136 41.0679 101.191 39.1997L101.234 30.4015ZM93.9171 39.8966C93.5765 40.2909 93.1553 40.6077 92.682 40.8256C92.2087 41.0434 91.6942 41.1574 91.1731 41.1597C90.7576 41.1734 90.3437 41.1016 89.9571 40.9488C89.5705 40.796 89.2193 40.5655 88.9253 40.2715C88.6314 39.9776 88.4008 39.6264 88.2481 39.2398C88.0953 38.8531 88.0235 38.4392 88.0371 38.0237C88.0371 35.4104 90.9989 34.1037 95.1367 34.4522C95.1367 36.8042 95.0496 38.5028 93.9171 39.8966ZM125.549 26.2964C124.983 24.772 123.154 22.1587 118.842 22.1587C117.409 22.0588 115.978 22.3656 114.712 23.0438C113.447 23.7219 112.398 24.7437 111.688 25.9915L111.514 22.7249H105.285C105.416 24.2493 105.416 26.6449 105.416 26.732V44.7748H111.949V32.0675C111.88 30.8972 112.152 29.732 112.733 28.7138C113.111 28.1779 113.614 27.7429 114.198 27.4467C114.783 27.1506 115.432 27.0023 116.087 27.0151C116.735 26.9894 117.376 27.1528 117.933 27.4853C118.49 27.8179 118.938 28.3052 119.223 28.888C119.526 29.6478 119.646 30.4687 119.571 31.2835V44.7748H126.105V32.8733C126.105 28.7791 125.974 27.6466 125.495 26.34L125.549 26.2964Z' fill-rule='evenodd' clip-rule='evenodd' fill='black'/%3E%3Cpath id='Vector_2' d='M55.621 0.565941L32.4604 44.7421H39.1679L62.3286 0.565941H55.621Z' fill-rule='evenodd' clip-rule='evenodd' fill='%2399CC33'/%3E%3Cpath id='Vector_3' d='M150.703 22.6812H143.418L136.787 31.8279V15.6906H130.384V44.7747H136.787V32.7861L143.592 44.7747H151.214L143.189 32.2308L150.703 22.6812ZM37.3201 57.6693L37.3299 57.6987C37.3419 58.3521 37.1121 58.8998 36.6406 59.3397C36.1681 59.7796 35.5452 59.9995 34.7699 59.9995C33.9816 59.9995 33.3391 59.7208 32.8426 59.1622C32.3472 58.6047 32.1 57.8958 32.1 57.0389V55.7975C32.1 54.9406 32.3471 54.2317 32.8437 53.672C33.3391 53.1112 33.9816 52.8314 34.7699 52.8314C35.5572 52.8314 36.1844 53.0416 36.6504 53.4608C37.1154 53.88 37.3419 54.4364 37.3299 55.1289L37.3201 55.1573H36.4163C36.4163 54.6694 36.2726 54.2829 35.9851 53.9998C35.6977 53.7156 35.2926 53.5729 34.7699 53.5729C34.2429 53.5729 33.8237 53.7853 33.5112 54.2099C33.1987 54.6346 33.0429 55.1605 33.0429 55.7888V57.0378C33.0429 57.6726 33.1987 58.2029 33.5112 58.6275C33.8237 59.0511 34.2429 59.2634 34.7699 59.2634C35.2926 59.2634 35.6977 59.1219 35.9851 58.8388C36.2726 58.5568 36.4152 58.1669 36.4152 57.6693H37.3201ZM34.7743 51.5824L35.4777 50.8747H36.2911V50.9607L35.0607 52.1334H34.4923L33.2771 50.9705V50.8747H34.0719L34.7743 51.5824ZM41.668 59.1622H44.9652V59.8994H40.7261V52.9327H41.668V59.1622ZM52.276 56.6686H49.0844V59.1622H52.7649V59.8994H48.1404V52.9327H52.7104V53.6731H49.0833V55.9271H52.2738V56.6697L52.276 56.6686ZM61.2614 59.8994H60.3185L56.9647 54.5115L56.9353 54.5213V59.8994H55.9923V52.9327H56.9353L60.2891 58.3107L60.3185 58.3009V52.9327H61.2614V59.8994ZM73.4602 58.143C73.4628 57.9912 73.432 57.8407 73.3699 57.7022C73.3078 57.5637 73.2159 57.4406 73.1009 57.3416C72.8624 57.126 72.4378 56.9452 71.8291 56.7982C71.0919 56.624 70.517 56.3648 70.1043 56.0229C69.6905 55.6821 69.4836 55.2531 69.4836 54.7359C69.4836 54.1936 69.7068 53.7406 70.1522 53.3769C70.5965 53.0132 71.1736 52.8325 71.8814 52.8325C72.6436 52.8325 73.2512 53.0405 73.702 53.4586C74.1539 53.8767 74.3716 54.3624 74.3553 54.9134L74.3455 54.9417H73.4461C73.4461 54.5333 73.3111 54.2034 73.0421 53.9508C72.7721 53.7003 72.3855 53.5729 71.8814 53.5729C71.4131 53.5729 71.0538 53.6796 70.8034 53.892C70.6815 53.9924 70.5842 54.1194 70.5189 54.2632C70.4536 54.407 70.4221 54.5638 70.4266 54.7217C70.4266 55.0244 70.5627 55.277 70.8339 55.4807C71.105 55.6832 71.5449 55.8607 72.1547 56.0142C72.8886 56.1961 73.4461 56.4639 73.8294 56.8178C74.2116 57.1717 74.4032 57.6105 74.4032 58.1332C74.4032 58.695 74.1746 59.1458 73.714 59.4878C73.2544 59.8297 72.6556 59.9995 71.9151 59.9995C71.2561 60.0109 70.6105 59.8134 70.0705 59.4355C69.537 59.0587 69.2767 58.5546 69.2931 57.923L69.3029 57.8947H70.2023C70.2023 58.3412 70.3656 58.6809 70.6945 58.9139C71.0233 59.1469 71.4306 59.2624 71.9151 59.2624C72.391 59.2624 72.7666 59.1622 73.0443 58.9618C73.1766 58.8711 73.2841 58.7486 73.3568 58.6055C73.4294 58.4624 73.465 58.3034 73.4602 58.143ZM79.656 56.7557H78.8426V59.8994H77.8996V52.9327H78.8426V56.0142H79.57L82.0635 52.9327H83.1067L83.1208 52.9566L80.4171 56.3006L83.3168 59.8754L83.3027 59.8994H82.1779L79.656 56.7557ZM91.416 52.9327V57.6552C91.416 58.4141 91.1699 58.9945 90.6777 59.3974C90.1845 59.7992 89.5409 59.9995 88.7471 59.9995C87.9805 59.9995 87.3599 59.7981 86.8829 59.3941C86.406 58.9912 86.1675 58.4109 86.1675 57.6552V52.9327H87.1105V57.6552C87.1105 58.1811 87.2597 58.5807 87.5602 58.8529C87.8597 59.1262 88.2549 59.2634 88.7471 59.2634C89.2633 59.2634 89.6803 59.1262 89.9983 58.854C90.3151 58.5818 90.4741 58.1811 90.4741 57.6552V52.9327H91.4171H91.416ZM96.0242 57.1053V59.8994H95.0812V52.9327H97.7468C98.4894 52.9327 99.0665 53.1232 99.4781 53.5065C99.8897 53.8887 100.095 54.3929 100.095 55.019C100.095 55.6538 99.8897 56.1601 99.4781 56.538C99.0665 56.9158 98.4894 57.1042 97.7468 57.1042L96.0242 57.1053ZM96.0242 56.3681H97.7468C98.2183 56.3681 98.5711 56.2407 98.803 55.987C99.0371 55.7344 99.1536 55.4142 99.1536 55.0288C99.1536 54.6422 99.036 54.3199 98.8019 54.0618C98.5667 53.8027 98.215 53.6742 97.7457 53.6742H96.0242V56.3681ZM104.477 59.8994H103.53V52.9327H104.477V59.8994ZM113.646 59.8994H112.703L109.348 54.5115L109.319 54.5213V59.8994H108.376V52.9327H109.319L112.673 58.3107L112.703 58.3009V52.9327H113.645L113.646 59.8994ZM119.486 56.4737L121.305 52.9327H122.381L119.936 57.4494V59.8994H118.999V57.3873L116.592 52.9327H117.668L119.486 56.4737ZM130.963 57.1053V59.8994H130.02V52.9327H132.686C133.43 52.9327 134.007 53.1232 134.417 53.5065C134.83 53.8887 135.036 54.3929 135.036 55.019C135.036 55.6538 134.829 56.1601 134.418 56.538C134.007 56.9158 133.43 57.1042 132.686 57.1042L130.963 57.1053ZM130.963 56.3681H132.686C133.158 56.3681 133.51 56.2407 133.743 55.987C133.976 55.7344 134.092 55.4142 134.092 55.0288C134.092 54.6422 133.975 54.3199 133.741 54.0618C133.507 53.8027 133.155 53.6742 132.685 53.6742H130.963V56.3681ZM139.365 57.1053V59.8994H138.422V52.9327H141.088C141.83 52.9327 142.407 53.1232 142.819 53.5065C143.231 53.8887 143.436 54.3929 143.436 55.019C143.436 55.6538 143.231 56.1601 142.819 56.538C142.407 56.9158 141.83 57.1042 141.088 57.1042L139.365 57.1053ZM139.365 56.3681H141.088C141.559 56.3681 141.912 56.2407 142.144 55.987C142.378 55.7344 142.495 55.4142 142.495 55.0288C142.495 54.6422 142.377 54.3199 142.143 54.0618C141.908 53.8027 141.556 53.6742 141.087 53.6742H139.365V56.3681ZM150.943 56.8178H147.766V59.8994H146.823V52.9327H151.431V53.6731H147.766V56.0763H150.943V56.8178Z' fill-rule='evenodd' clip-rule='evenodd' fill='black'/%3E%3C/g%3E%3C/svg%3E");
	--rc-logo-width: 101px;
	--rc-logo-height: 40px;
	--rc-logo-gap: 24px;
	--rc-card-bg: var(--color-white);
	--rc-card-max-width: 800px;
	--rc-card-margin-top: 96px;
	--rc-card-margin-bottom: 32px;
	--rc-card-padding: 16px;
	--rc-block-gap: 24px;
	--rc-row-gap: 24px;
	--rc-label-col-width: 100%;
	--rc-control-height: 44px;
	--rc-control-bg: var(--color-very-light-gray);
	--rc-control-bg-focus: var(--color-white);
	--rc-control-ring-focus: inset 0 0 0 1px var(--color-brand-green-text);
	--rc-control-ring-error: inset 0 0 0 1px var(--color-error);
	--rc-control-color: var(--color-black-text);
	--rc-control-placeholder: var(--color-gray-text);
	--rc-addon-bg: var(--color-light-border);
	--rc-addon-color: var(--color-black-text);
	--rc-phone-code-width: 120px;
	--rc-button-bg: var(--color-brand-green);
	--rc-button-bg-hover: var(--color-green-accent);
	--rc-button-color: var(--color-dark-green-2);
	--rc-legal-align: left;
	--rc-error-bg: color-mix(in srgb, var(--color-error) 8%, var(--color-white));
}

/* ---------------------------------------------------------------------------
 * 3. Stránka, logo a karta formuláře
 * ------------------------------------------------------------------------ */
html body {
	background: var(--rc-page-bg) !important;
	color: var(--color-black-text);
	font-family: var(--font-family-base) !important;
	font-size: var(--font-size-body);
	line-height: var(--line-height-base);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

body > .container-fluid {
	padding-left: var(--rc-page-gutter);
	padding-right: var(--rc-page-gutter);
}

#answer-form-body {
	position: relative;
	width: auto;
	max-width: var(--rc-card-max-width);
	margin: var(--rc-card-margin-top) auto var(--rc-card-margin-bottom);
	padding: var(--rc-card-padding);
	background-color: var(--rc-card-bg);
	border-radius: var(--radius-card);
	box-shadow: none;
}

/* logo nad kartou (Recruitis má na ::before druhý „stín“, přepisujeme ho) */
#answer-form-body::before {
	content: "";
	position: absolute;
	top: calc(-1 * (var(--rc-logo-height) + var(--rc-logo-gap)));
	left: 50%;
	z-index: 1;
	width: var(--rc-logo-width);
	height: var(--rc-logo-height);
	background: var(--rc-logo-image) center / contain no-repeat;
	border-radius: 0;
	transform: translateX(-50%);
}

#answer-form-body h1 {
	margin: 0 0 var(--rc-block-gap);
	padding: 0;
	color: var(--color-brand-green-text);
	font-size: var(--font-size-heading);
	font-weight: var(--font-weight-bold);
	line-height: var(--line-height-base);
	letter-spacing: 0;
	text-align: left;
	overflow-wrap: anywhere;
}

#answer-form-body h1 span,
#answer-form-body h1 strong {
	font-weight: var(--font-weight-bold);
}

/* ---------------------------------------------------------------------------
 * 4. Řádky formuláře a popisky
 * ------------------------------------------------------------------------ */
#answer_form #answer-form-inner #form-answer-add {
	display: flex;
	flex-direction: column;
}

#answer_form #answer-form-inner .form-horizontal .form-group {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	margin-bottom: var(--rc-row-gap);
}

#answer_form #answer-form-inner .form-horizontal .control-label {
	position: static;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	width: var(--rc-label-col-width);
	min-height: 0;
	margin-bottom: 4px;
	padding: 0 15px;
	color: var(--color-black-text);
	font-size: var(--font-size-body);
	font-weight: var(--font-weight-medium);
	line-height: var(--line-height-base);
	text-align: left;
}

#answer_form #answer-form-inner .form-horizontal .control-label .required {
	position: static;
	flex-shrink: 0;
	color: var(--color-brand-green-text);
	font-size: var(--font-size-body);
	font-weight: var(--font-weight-medium);
	line-height: var(--line-height-base);
}

/* sloupec s polem */
#answer_form #answer-form-inner .form-horizontal .form-group > .col-xs-9 {
	width: 100%;
	padding: 0 15px;
}

/* telefon: předvolba + číslo */
#answer_form #answer-form-inner .form-horizontal .form-group .row {
	display: flex;
	gap: 12px;
	margin: 0;
}

/* clearfix pseudoelementy Bootstrapu by ve flexu přidaly mezery navíc */
#answer_form #answer-form-inner .form-horizontal .form-group .row::before,
#answer_form #answer-form-inner .form-horizontal .form-group .row::after {
	display: none;
}

#answer_form #answer-form-inner .form-horizontal .form-group .row > .col-xs-4 {
	flex: 0 0 var(--rc-phone-code-width);
	width: var(--rc-phone-code-width);
	padding: 0;
}

#answer_form #answer-form-inner .form-horizontal .form-group .row > .col-xs-8 {
	flex: 1 1 auto;
	width: auto;
	min-width: 0;
	padding: 0;
}

/* ---------------------------------------------------------------------------
 * 5. Textová pole
 * ------------------------------------------------------------------------ */
#answer_form #answer-form-inner .form-control {
	height: var(--rc-control-height);
	padding: 0 16px;
	background-color: var(--rc-control-bg);
	border: 0;
	border-radius: var(--radius-control);
	box-shadow: none;
	color: var(--rc-control-color);
	font-family: inherit;
	font-size: var(--font-size-caption);
	line-height: var(--line-height-caption);
	letter-spacing: 0;
	transition: box-shadow 0.2s ease, background-color 0.2s ease;
}

#answer_form #answer-form-inner .form-control::placeholder {
	color: var(--rc-control-placeholder);
	opacity: 1;
}

#answer_form #answer-form-inner textarea.form-control {
	height: 182px;
	padding: 14px 16px;
	resize: vertical;
}

#answer_form #answer-form-inner .form-control:focus,
#answer_form #answer-form-inner .form-control:focus:not(:read-only) {
	background-color: var(--rc-control-bg-focus);
	border: 0;
	box-shadow: var(--rc-control-ring-focus);
	outline: 0;
}

#answer_form #answer-form-inner .form-control:is(:-webkit-autofill, :autofill),
#answer_form #answer-form-inner .form-control:is(:-webkit-autofill, :autofill):focus {
	-webkit-text-fill-color: var(--color-black-text);
	box-shadow: 0 0 0 1000px var(--color-brand-green-bg-light) inset !important;
	transition: background-color 5000s ease-in-out 0s;
}

#answer_form #answer-form-inner .has-feedback .form-control {
	padding-right: 16px;
}

/* nápověda pod polem (inline style přebíjíme !important) */
#answer_form #answer-form-inner .form-group p {
	margin: 8px 0 0 !important;
	color: var(--color-gray-text) !important;
	font-size: var(--font-size-caption);
	line-height: var(--line-height-base);
}

/* ---------------------------------------------------------------------------
 * 6. Validace a hlášky
 * ------------------------------------------------------------------------ */
#answer_form #answer-form-inner .form-group .help-block {
	margin: 8px 0 0;
	color: var(--color-error);
	font-size: var(--font-size-caption);
	line-height: var(--line-height-base);
}

#answer_form #answer-form-inner .has-error .control-label,
#answer_form #answer-form-inner .has-error .checkbox {
	color: var(--color-black-text);
}

#answer_form #answer-form-inner .has-error .form-control,
#answer_form #answer-form-inner .has-error .form-control:focus,
#answer_form #answer-form-inner .has-error .select2-container.form-control {
	border: 0;
	box-shadow: var(--rc-control-ring-error);
}

#answer_form #answer-form-inner .alert {
	margin: 0 0 var(--rc-block-gap);
	padding: 12px 16px;
	border: 1px solid transparent;
	border-radius: var(--radius-control);
	color: var(--color-black-text);
	font-size: var(--font-size-body);
	line-height: var(--line-height-base);
}

#answer_form #answer-form-inner .alert-success {
	background-color: var(--color-brand-green-bg-light);
	border-color: var(--color-brand-green);
}

#answer_form #answer-form-inner .alert-info {
	background-color: var(--color-very-light-gray);
	border-color: var(--color-light-border);
}

#answer_form #answer-form-inner .alert-danger {
	background-color: var(--rc-error-bg);
	border-color: var(--color-error);
}

/* ---------------------------------------------------------------------------
 * 7. Výběrová pole (select2 – předvolba telefonu, lokalita)
 * ------------------------------------------------------------------------ */
#answer_form #answer-form-inner .select2-container.form-control {
	height: var(--rc-control-height);
	padding: 0;
	background-color: var(--rc-control-bg);
	border: 0;
	border-radius: var(--radius-control);
	box-shadow: none;
	transition: box-shadow 0.2s ease;
}

#answer_form #answer-form-inner .select2-container-active.form-control {
	box-shadow: var(--rc-control-ring-focus);
}

#answer_form #answer-form-inner .select2-container .select2-choice {
	position: static;
	top: 0;
	height: var(--rc-control-height);
	margin: 0;
	padding: 0 0 0 16px;
	background: transparent;
	border: 0 !important;
	border-radius: var(--radius-control);
	box-shadow: none;
	color: var(--color-black-text);
	font-family: inherit;
	font-size: var(--font-size-caption);
	line-height: var(--rc-control-height);
	letter-spacing: 0;
}

#answer_form #answer-form-inner .select2-container .select2-choice .select2-chosen {
	height: var(--rc-control-height);
	margin-right: 32px;
	padding: 0;
	line-height: var(--rc-control-height);
}

#answer_form #answer-form-inner .select2-container .select2-choice .select2-arrow {
	width: 32px;
	background: transparent;
	border: 0;
	border-radius: 0;
}

#answer_form #answer-form-inner .select2-container .select2-choice .select2-arrow b {
	position: relative;
	margin: 0;
	background: none;
}

/* šipka kresleným chevronem místo sprite obrázku */
#answer_form #answer-form-inner .select2-container .select2-choice .select2-arrow b::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 6px;
	height: 6px;
	border: solid var(--color-gray-text);
	border-width: 0 1.5px 1.5px 0;
	transform: translate(-50%, -70%) rotate(45deg);
	transition: transform 0.2s ease;
}

#answer_form #answer-form-inner .select2-dropdown-open .select2-choice .select2-arrow b::after {
	transform: translate(-50%, -30%) rotate(-135deg);
}

#answer_form #answer-form-inner .select2-dropdown-open.form-control {
	background-color: var(--color-white);
}

#answer_form #answer-form-inner .select2-dropdown-open .select2-choice {
	background: transparent;
	border: 0 !important;
	box-shadow: none;
}

#answer_form #answer-form-inner .select2-container .select2-choice abbr {
	display: none;
}

/* rozbalený seznam (select2 ho vkládá přímo do <body>) */
#select2-drop {
	margin-top: 4px;
	background: var(--color-white);
	border: 1px solid var(--color-light-border);
	border-radius: var(--radius-control);
	box-shadow: var(--shadow-popover);
	color: var(--color-black-text);
	font-family: var(--font-family-base);
}

#select2-drop.select2-drop-active,
#select2-drop.select2-drop-above.select2-drop-active {
	border: 1px solid var(--color-light-border);
}

#select2-drop .select2-search {
	padding: 8px 8px 4px;
}

#select2-drop .select2-search input {
	min-height: 40px;
	padding: 8px 12px;
	background: var(--color-white) !important;
	border: 1px solid var(--color-light-border);
	border-radius: var(--radius-control-inner);
	box-shadow: none;
	color: var(--color-black-text);
	font-family: inherit;
	font-size: var(--font-size-body);
	line-height: var(--line-height-base);
}

#select2-drop .select2-search input:focus {
	border-color: var(--color-brand-green-text);
	outline: 0;
}

#select2-drop .select2-results {
	margin: 4px 0;
	padding: 0 4px;
}

#select2-drop .select2-results .select2-result-label {
	padding: 10px 12px;
	border-radius: var(--radius-control-inner);
	font-size: var(--font-size-body);
	line-height: var(--line-height-base);
}

#select2-drop .select2-results .select2-highlighted {
	background: var(--color-brand-green-bg-light);
	color: var(--color-black-text);
}

#select2-drop .select2-results .select2-no-results,
#select2-drop .select2-results .select2-searching {
	padding: 10px 12px;
	background: transparent;
	color: var(--color-gray-text);
	font-size: var(--font-size-body);
}

#select2-drop .select2-results .select2-result-with-children > .select2-result-label {
	color: var(--color-gray-text);
	font-size: var(--font-size-caption);
	font-weight: var(--font-weight-medium);
	text-transform: uppercase;
}

/* ---------------------------------------------------------------------------
 * 8. Příloha životopisu (input-group)
 * ------------------------------------------------------------------------ */
#answer_form #answer-form-inner .input-group {
	position: relative;
	display: flex;
	align-items: stretch;
	height: var(--rc-control-height);
	border-radius: var(--radius-control);
	overflow: hidden;
}

/* další (zatím nepřidané) přílohy zůstávají skryté */
#answer_form #answer-form-inner .input-group.hidden-weak {
	display: none;
}

/* ukazatel průběhu nahrávání nesmí ovlivnit výšku řádku */
#answer_form #answer-form-inner .input-group > .progress-bar {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	margin-top: 0 !important;
}

#answer_form #answer-form-inner .input-group-btn {
	display: flex;
	width: auto;
}

#answer_form #answer-form-inner .input-group-btn > .btn.btn-default {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 78px;
	height: var(--rc-control-height);
	margin: 0;
	padding: 0 16px;
	background-color: var(--rc-addon-bg);
	border: 0;
	border-radius: 0 !important;
	box-shadow: none;
	color: var(--rc-addon-color);
	font-size: var(--font-size-caption);
	font-weight: var(--font-weight-regular);
	line-height: var(--line-height-caption);
	letter-spacing: 0;
	cursor: pointer;
	transition: background-color 0.2s ease;
}

#answer_form #answer-form-inner .input-group-btn > .btn.btn-default:hover,
#answer_form #answer-form-inner .input-group-btn > .btn.btn-default:focus-within {
	background-color: var(--color-green-light-bg);
}

#answer_form #answer-form-inner .input-group .form-control {
	flex: 1 1 0;
	width: 0;
	min-width: 0;
	height: var(--rc-control-height);
	border-radius: 0 !important;
}

#answer_form #answer-form-inner .input-group-addon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	padding: 0;
	background-color: var(--rc-addon-bg);
	border: 0;
	border-radius: 0 !important;
	color: var(--rc-addon-color);
	font-size: 10px;
	line-height: var(--line-height-caption);
	transition: background-color 0.2s ease;
}

#answer_form #answer-form-inner .input-group-addon:hover {
	background-color: var(--color-green-light-bg);
}

#answer_form #answer-form-inner .input-group + .input-group {
	margin-top: 8px !important;
}

/* ---------------------------------------------------------------------------
 * 9. Souhlas, tlačítko a právní text
 *    Design má pořadí: souhlas → tlačítko → právní text. V markupu je právní
 *    text spolu se souhlasem v jednom .form-group před tlačítkem, proto obaly
 *    rozpouštíme přes display: contents a bloky řadíme flexem (order).
 * ------------------------------------------------------------------------ */
#answer_form #answer-form-inner .form-horizontal .form-group:has(> #legal-text),
#answer_form #answer-form-inner #legal-text.sky-form,
#answer_form #answer-form-inner #legal-text > [data-find-me] {
	display: contents;
}

#answer_form #answer-form-inner .form-horizontal .form-group > .control-label:empty {
	display: none;
}

#answer_form #answer-form-inner #legal-text.sky-form {
	color: var(--color-black-text);
	font-family: inherit;
	font-size: var(--font-size-body);
	line-height: var(--line-height-base);
	letter-spacing: 0;
}

/* blok se souhlasem */
#answer_form #answer-form-inner #legal-text > [data-find-me]:first-child > div {
	order: 0;
	margin: calc(var(--rc-block-gap) - var(--rc-row-gap)) 0 var(--rc-block-gap) !important;
}

#answer_form #answer-form-inner #legal-text label {
	display: block;
	max-width: 100%;
	margin: 0;
	font-weight: var(--font-weight-regular);
	cursor: default;
}

#answer_form #answer-form-inner #legal-text .checkbox {
	min-height: 0;
	margin: 0 0 4px;
	padding: 0 0 0 36px;
	color: var(--color-black-text);
	font-size: var(--font-size-body);
	font-weight: var(--font-weight-regular);
	line-height: var(--line-height-base);
	letter-spacing: 0;
	cursor: pointer;
}

#answer_form #answer-form-inner #legal-text .checkbox i {
	top: 0 !important;
	left: 0;
	width: 24px;
	height: 24px;
	background: var(--color-white);
	border: 1px solid var(--color-light-border);
	border-radius: var(--radius-control-inner);
	transition: border-color 0.2s ease, background-color 0.2s ease;
}

#answer_form #answer-form-inner #legal-text .checkbox:hover i,
#answer_form #answer-form-inner #legal-text .checkbox input:focus + i {
	border-color: var(--color-brand-green-text);
}

#answer_form #answer-form-inner #legal-text .checkbox input:focus-visible + i {
	outline: 1px solid var(--color-brand-green-text);
	outline-offset: 2px;
}

#answer_form #answer-form-inner #legal-text .checkbox input:checked + i {
	background: var(--color-brand-green-text);
	border-color: var(--color-brand-green-text);
}

/* zaškrtnutí kresleným „háčkem“ místo ikony Font Awesome */
#answer_form #answer-form-inner #legal-text .checkbox input + i::after {
	content: "";
	top: 4px;
	left: 8px;
	width: 6px;
	height: 11px;
	border: solid var(--color-white);
	border-width: 0 2px 2px 0;
	font: 0/0 a;
	transform: rotate(45deg);
}

#answer_form #answer-form-inner #legal-text a {
	color: var(--color-brand-green-text) !important;
	font-weight: var(--font-weight-regular);
	text-decoration: underline;
	text-underline-offset: 2px;
	transition: color 0.2s ease;
}

#answer_form #answer-form-inner #legal-text a:hover,
#answer_form #answer-form-inner #legal-text a:focus-visible {
	color: var(--color-dark-green) !important;
}

#answer_form #answer-form-inner #legal-text .checkbox + a {
	display: inline-block;
	margin-left: 36px;
	font-size: var(--font-size-body);
	line-height: var(--line-height-base);
}

#answer_form #answer-form-inner #legal-text [id$="_ex_expander"] {
	padding-top: 8px !important;
	color: var(--color-gray-text);
	font-size: var(--font-size-caption);
	text-align: left;
}

/* tlačítko odeslat – uprostřed karty */
#answer_form #answer-form-inner #answerform-submitwrapper {
	order: 0;
	display: flex;
	justify-content: center;
	margin: 0 0 var(--rc-block-gap);
}

#answer_form #answer-form-inner #answerform-submitwrapper > .col-xs-9 {
	float: none;
	width: auto;
	margin: 0;
	padding: 0;
	text-align: center;
}

#answer_form #answer-form-inner #answerform-submitwrapper .btn.btn-primary {
	height: 56px;
	padding: 0 24px;
	background-color: var(--rc-button-bg);
	border: 0;
	border-radius: var(--radius-pill);
	box-shadow: none;
	color: var(--rc-button-color);
	font-size: var(--font-size-body);
	font-weight: var(--font-weight-medium);
	line-height: 1;
	letter-spacing: 0;
	transition: background-color 0.3s ease;
}

#answer_form #answer-form-inner #answerform-submitwrapper .btn.btn-primary:hover,
#answer_form #answer-form-inner #answerform-submitwrapper .btn.btn-primary:active {
	background-color: var(--rc-button-bg-hover);
	color: var(--rc-button-color);
}

#answer_form #answer-form-inner #answerform-submitwrapper .btn.btn-primary:focus {
	outline: 0;
}

#answer_form #answer-form-inner #answerform-submitwrapper .btn.btn-primary:focus-visible {
	outline: 1px solid var(--color-brand-green-text);
	outline-offset: 2px;
}

#answer_form #answer-form-inner #answerform-submitwrapper .btn.btn-primary:disabled {
	background-color: var(--color-green-light-bg);
	color: var(--color-gray-text);
	opacity: 1;
}

/* právní text – až pod tlačítkem */
#answer_form #answer-form-inner #legal-text > [data-find-me]:last-child > div {
	order: 1;
	margin: 0 !important;
	color: var(--color-gray-text);
	font-size: var(--font-size-caption);
	line-height: var(--line-height-base);
	text-align: var(--rc-legal-align);
}

#answer_form #answer-form-inner #legal-text > [data-find-me]:last-child label {
	color: inherit;
	cursor: default;
}

/* ---------------------------------------------------------------------------
 * 10. Datepicker (jQuery UI) – datum nástupu
 * ------------------------------------------------------------------------ */
#ui-datepicker-div.ui-datepicker {
	padding: 8px;
	background: var(--color-white);
	border: 1px solid var(--color-light-border);
	border-radius: var(--radius-control);
	box-shadow: var(--shadow-popover);
	color: var(--color-black-text);
	font-family: var(--font-family-base);
	font-size: var(--font-size-body);
}

#ui-datepicker-div .ui-datepicker-header {
	background: var(--color-very-light-gray);
	border: 0;
	border-radius: var(--radius-control-inner);
	color: var(--color-black-text);
	font-weight: var(--font-weight-medium);
}

#ui-datepicker-div .ui-datepicker-prev,
#ui-datepicker-div .ui-datepicker-next {
	border: 0;
	background: transparent;
	cursor: pointer;
}

#ui-datepicker-div th {
	color: var(--color-gray-text);
	font-size: var(--font-size-caption);
	font-weight: var(--font-weight-medium);
}

#ui-datepicker-div td .ui-state-default {
	background: transparent;
	border: 1px solid transparent;
	border-radius: var(--radius-control-inner);
	color: var(--color-black-text);
	text-align: center;
}

#ui-datepicker-div td .ui-state-hover {
	background: var(--color-brand-green-bg-light);
	border-color: var(--color-brand-green-bg-light);
}

#ui-datepicker-div td .ui-state-highlight {
	border-color: var(--color-brand-green);
}

#ui-datepicker-div td .ui-state-active {
	background: var(--color-brand-green);
	border-color: var(--color-brand-green);
	color: var(--color-black-text);
}

/* ---------------------------------------------------------------------------
 * 11. Responzivita – tablet a desktop (>= 768px): popisky vlevo ve sloupci
 *     Řádek .form-group má (Bootstrap) okraje -15px, sloupec popisku je tedy
 *     15 + 200 + 16 (mezera) = 231px z 734px (karta 800px) = 31.47 %.
 * ------------------------------------------------------------------------ */
@media (min-width: 768px) {
	:root {
		--font-size-heading: 32px;
		--rc-page-gutter: 24px;
		--rc-logo-width: 151.43px;
		--rc-logo-height: 60px;
		--rc-logo-gap: 36px;
		--rc-card-margin-top: 152px;
		--rc-card-margin-bottom: 56px;
		--rc-card-padding: 48px;
		--rc-row-gap: 16px;
		--rc-label-col-width: 31.47%;
		--rc-phone-code-width: 160px;
		--rc-legal-align: center;
	}

	#answer-form-body h1 {
		text-align: center;
	}

	#answer_form #answer-form-inner .form-horizontal .form-group {
		flex-direction: row;
		align-items: center;
	}

	/* řádky s vyšším obsahem (textarea, nápověda pod polem) mají popisek nahoře */
	#answer_form #answer-form-inner .form-horizontal .form-group:has(> div > textarea),
	#answer_form #answer-form-inner .form-horizontal .form-group:has(> div > p) {
		align-items: flex-start;
	}

	#answer_form #answer-form-inner .form-horizontal .control-label {
		justify-content: flex-end;
		margin-bottom: 0;
		padding: 14px 16px 14px 15px;
		text-align: right;
	}

	#answer_form #answer-form-inner .form-horizontal .form-group > .col-xs-9 {
		width: calc(100% - var(--rc-label-col-width));
		padding: 0 15px 0 0;
	}
}
