

@media screen and (max-width: 449px){
.web { margin-top: 1em; } 
.container { background: white; padding: 2%; border-radius: 10px; width: 94%; ; text-align: center; margin: 0 auto; } 
h2 { margin-top:0;margin-bottom: 20px;font-size:2.3em;font-weight:600 } 
label { font-weight: 500; display: block; margin-top: 10px;font-size:1.3em} 
input, select { width: 90%; padding: 10px; margin-top: 5px; border: 1px solid #ccc; border-radius: 5px; height:20px;font-size:1.1em} 
select { height: 40px; } 
button { padding: 10px; border: none; border-radius: 5px; cursor: pointer; margin-top: 15px; font-size: 16px; transition: background-color 0.3s; } 
button:hover { opacity: 0.9; } 
.kroky-nav { display: flex; justify-content: space-between; align-items: center; margin-top: 20px; } 
.kroky-nav .zpet { background-color: #666; color: white; width: 20%; } 
.kroky-nav .pokracovat { background-color: #007bff; color: white; width: 70%; } 
.kroky-nav .pokracovat-uvod { background-color: #007bff; color: white; width: 70%; margin: 0 auto; } 
.kroky-nav .odeslat { background-color: #28a745; color: white; width: 70%; } 
.firma-btn { background-color: #d5d5d5; color: black; font-weight: normal; width: 50%; } 
.firma-btn:hover { background-color: #c4c4c4; color: black; } 
.designy { margin-top: 10px;} 
.design-option { position: relative; cursor: pointer; border: 2px solid transparent; border-radius: 5px; overflow: hidden; transition: transform 0.2s, border-color 0.3s;margin:0 auto } 
.designy label { font-size: 1.0em; font-weight: 300; margin-bottom: 10px; } 
.design-option input { display: none; } 
.design-option img { width: 95%; height: auto; border-radius: 5px; transition: transform 0.2s; display: block; margin: 0 auto; } 
.design-option:hover { transform: scale(1.05); } 
.design-option input:checked + img { border: 3px solid #28a745; } 
#vlastniHodnota { width: 70%; font-size: 0.9em; text-align: center; font-weight: normal; padding: 10px; margin: 10px auto; display: block; border: 2px solid #28a745; border-radius: 5px; } 
#vlastniHodnota:focus, input, select { box-shadow: none; outline: none; } 
.platba-doruceni { text-align: center; margin-top: 20px; } 
.platba-doruceni .option { display: inline-block; width: 100%; padding: 15px 0; border: 2px solid #ccc; border-radius: 5px; cursor: pointer; font-weight: bold; transition: background-color 0.3s, border-color 0.3s; } 
.platba-doruceni .option.active { background-color: #28a745; color: white; border-color: #28a745; } 
.platba-doruceni .text { position: relative; top: 7px; text-align: left;font-size:1.2em;font-weight:600 } 
textarea { width: 90%; resize: vertical; min-height: 80px; padding: 10px; border: 1px solid #ccc; border-radius: 5px; margin-top: 5px; font-size: 1em; } 
.souhrn-cena { font-size: 18px; font-weight: bold; margin-top: 10px; } 
.options-group { display: flex; flex-direction: column; gap: 10px; } 
.option { display: flex; align-items: center; padding: 10px 0; border: 2px solid #ccc; border-radius: 5px; cursor: pointer; font-size: 14px; font-weight: 500; transition: 0.3s; justify-content: space-between; width: 100%; } 
.option img.ikonka { width: 40px; height: 40px; margin-right: 30px; float: left; margin-left: 20px; } 
.option .cena { float: right; position: relative; left: -30px; font-weight: bold; } 
.option.active { border-color: #007bff; background-color: #f0f8ff; } 
.rekapitulace { background: #f8f9fa; padding: 15px; border-radius: 10px; margin-top: 20px; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); } 
#krok4 h3 { font-size: 22px; margin-bottom: 10px; } 
#krok4 p { font-size: 1.2em; margin: 10px 0;text-align: left;  } 
#krok4 .rekap-img { width: 250px; height: auto; margin-top: 10px; border-radius: 5px; } 

.hodnota-options { margin-top: 10px; } 
.hodnota-option { cursor: pointer; border: 2px solid #ccc; padding: 10px 10px 20px 10px; border-radius: 5px; text-align: center; transition: 0.3s; font-size: 16px; background: white; height: 16px; text-align: left; } 
.hodnota-option.active { border-color: #28a745; background: #28a745; color: #fff; } 
.hodnota-option:hover { border-color: #28a745; } 
.hodnota-option span { float: left; margin-left: 10px; width: 60%; } 
.hodnota-option span.full { margin-left: 10px; width: 80%; } 
.hodnota-option strong { float: right; margin-right: 10px; } 
#vlastniHodnota { width: 90%; font-size: 1em; text-align: center; padding: 10px; margin: 10px auto; display: block; border: 2px solid #28a745; border-radius: 5px; }

}



@media screen and (min-width: 450px){
.web { margin-top: 1em; } 
.container{background: white; padding: 20px; border-radius: 10px; width: 100%; max-width: 450px; text-align: center; margin: 0 auto; } 
h2 { margin-top: 3em;margin-bottom: 20px;font-size:2.3em;font-weight:600 } 
label { font-weight: 500; display: block; margin-top: 10px;font-size:1.3em} 
input, select { width: 90%; padding: 10px; margin-top: 5px; border: 1px solid #ccc; border-radius: 5px; height:20px;font-size:1.1em} 
select { height: 40px; } 
button { padding: 10px; border: none; border-radius: 5px; cursor: pointer; margin-top: 15px; font-size: 16px; transition: background-color 0.3s; } 
button:hover { opacity: 0.9; } 
.kroky-nav { display: flex; justify-content: space-between; align-items: center; margin-top: 20px; } 
.kroky-nav .zpet { background-color: #666; color: white; width: 20%; } 
.kroky-nav .pokracovat { background-color: #007bff; color: white; width: 70%; } 
.kroky-nav .pokracovat-uvod { background-color: #007bff; color: white; width: 70%; margin: 0 auto; } 
.kroky-nav .odeslat { background-color: #28a745; color: white; width: 70%; } 
.firma-btn { background-color: #d5d5d5; color: black; font-weight: normal; width: 50%; } 
.firma-btn:hover { background-color: #c4c4c4; color: black; } 
.designy { margin-top: 10px;} 
.design-option { position: relative; cursor: pointer; border: 2px solid transparent; border-radius: 5px; overflow: hidden; transition: transform 0.2s, border-color 0.3s;margin:0 auto } 
.designy label { font-size: 1.0em; font-weight: 300; margin-bottom: 10px; } 
.design-option input { display: none; } 
.design-option img { width: 95%; height: auto; border-radius: 5px; transition: transform 0.2s; display: block; margin: 0 auto; } 
.design-option:hover { transform: scale(1.05); } 
.design-option input:checked + img { border: 3px solid #28a745; } 
#vlastniHodnota { width: 70%; font-size: 0.9em; text-align: center; font-weight: normal; padding: 10px; margin: 10px auto; display: block; border: 2px solid #28a745; border-radius: 5px; } 
#vlastniHodnota:focus, input, select { box-shadow: none; outline: none; } 
.platba-doruceni { text-align: center; margin-top: 20px; } 
.platba-doruceni .option { display: inline-block; width: 100%; padding: 15px 0; border: 2px solid #ccc; border-radius: 5px; cursor: pointer; font-weight: bold; transition: background-color 0.3s, border-color 0.3s; } 
.platba-doruceni .option.active { background-color: #28a745; color: white; border-color: #28a745; } 
.platba-doruceni .text { position: relative; top: 7px; text-align: left;font-size:1.2em;font-weight:600 } 
textarea { width: 90%; resize: vertical; min-height: 80px; padding: 10px; border: 1px solid #ccc; border-radius: 5px; margin-top: 5px; font-size: 1em; } 
.souhrn-cena { font-size: 18px; font-weight: bold; margin-top: 10px; } 
.options-group { display: flex; flex-direction: column; gap: 10px; } 
.option { display: flex; align-items: center; padding: 10px 0; border: 2px solid #ccc; border-radius: 5px; cursor: pointer; font-size: 14px; font-weight: 500; transition: 0.3s; justify-content: space-between; width: 100%; } 
.option img.ikonka { width: 40px; height: 40px; margin-right: 30px; float: left; margin-left: 20px; } 
.option .cena { float: right; position: relative; left: -30px; font-weight: bold; } 
.option.active { border-color: #007bff; background-color: #f0f8ff; } 
.rekapitulace { background: #f8f9fa; padding: 15px; border-radius: 10px; margin-top: 20px; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); } 
#krok4 h3 { font-size: 22px; margin-bottom: 10px; } 
#krok4 p { font-size: 1.2em; margin: 10px 0;text-align: left;  } 
#krok4 .rekap-img { width: 250px; height: auto; margin-top: 10px; border-radius: 5px; } 

.hodnota-options { margin-top: 10px; } 
.hodnota-option { cursor: pointer; border: 2px solid #ccc; padding: 10px 10px 20px 10px; border-radius: 5px; text-align: center; transition: 0.3s; font-size: 16px; background: white; height: 16px; text-align: left; } 
.hodnota-option.active { border-color: #28a745; background: #28a745; color: #fff; } 
.hodnota-option:hover { border-color: #28a745; } 
.hodnota-option span { float: left; margin-left: 10px; width: 60%; } 
.hodnota-option span.full { margin-left: 10px; width: 80%; } 
.hodnota-option strong { float: right; margin-right: 10px; } 
#vlastniHodnota { width: 90%; font-size: 1em; text-align: center; padding: 10px; margin: 10px auto; display: block; border: 2px solid #28a745; border-radius: 5px; }

}