.service-editor .ck-editor__editable { min-height: 200px; max-height: 600px; }
.service-editor textarea { width: 100%; min-height: 180px; }
.service-editor .ck-content img { max-width: 100%; }
.tour-service-admin { margin: 20px 0; }
.tour-service-admin legend { font-size: 20px; }
.tour-service-admin__offer { display: flex; gap: 8px; align-items: center; margin: 12px 0; }
.service-popup { position: fixed; inset: 0; z-index: 12000; padding: 20px; background: rgba(0,0,0,.6); display: flex; align-items: center; justify-content: center; }
.service-popup[v-cloak] { display: none; }
.service-popup,.service-popup * { font-family: "Nunito Sans",Arial,sans-serif; }
.service-popup__dialog { position: relative; width: max-content; min-width: min(340px,100%); max-width: min(760px,100%); max-height: calc(100vh - 40px); max-height: calc(100dvh - 40px); overflow-y: auto; background: #fff; border-radius: 20px; padding: 44px 32px 28px; box-sizing: border-box; box-shadow: 0 12px 36px #0003; color: #151515; }
.service-popup__close { position: absolute; top: 8px; right: 10px; width: 36px; height: 36px; border: 0; background: transparent; color: #777; font: 34px/1 Arial,sans-serif; cursor: pointer; }
.service-popup__title { font-size: 26px; line-height: 1.2; margin: 0 30px 18px 0; overflow-wrap: anywhere; }
.service-popup__name { font-size: 20px; font-weight: 700; margin-bottom: 12px; }
.service-richtext { font-size: 16px; line-height: 1.45; overflow-wrap: anywhere; display: flow-root; }
.service-richtext > :first-child { margin-top: 0; }
.service-richtext > :last-child { margin-bottom: 0; }
.service-richtext p,.service-richtext blockquote,.service-richtext figure { margin: 0 0 1em; }
.service-richtext ul,.service-richtext ol { margin: 0 0 1em; padding-left: 1.6em; }
.service-richtext a { color: #308b36; text-decoration: underline; }
.service-richtext img { max-width: 100%; height: auto; }
.service-richtext .image { display: table; clear: both; margin: 1em auto; text-align: center; max-width: 100%; }
.service-richtext .image img { display: block; margin: 0 auto; }
.service-richtext .image_resized { display: block; box-sizing: border-box; }
.service-richtext .image_resized img { width: 100%; }
.service-richtext .image-style-align-left { float: left; margin: 0 1em 1em 0; }
.service-richtext .image-style-align-right,.service-richtext .image-style-side { float: right; margin: 0 0 1em 1em; }
.service-richtext figcaption { font-size: .85em; padding: .5em; background: #f4f4f4; }
.service-richtext .table { max-width: 100%; overflow-x: auto; }
.service-richtext table { border-collapse: collapse; max-width: 100%; }
.service-richtext td,.service-richtext th { border: 1px solid #ccc; padding: .4em; }
.service-popup__price { margin: 16px 0; font-weight: 700; }
.service-popup__tourists { margin: 18px 0; border: 0; padding: 0; min-width: 0; }
.service-popup__tourists legend { font-size: 18px; font-weight: 700; margin-bottom: 10px; }
.service-popup__tourist { display: flex; gap: 10px; align-items: flex-start; margin: 10px 0; cursor: pointer; }
.service-popup__tourist input { flex: 0 0 20px; width: 20px; height: 20px; margin-top: 2px; accent-color: #308b36; }
.service-popup__buttons { display: flex; gap: 12px; margin-top: 20px; }
.service-popup__buttons button { flex: 1; padding: 13px 18px; border-radius: 28px; border: 1px solid #308b36; background: #308b36; color: white; font-size: 17px; font-weight: 700; cursor: pointer; }
.service-popup__buttons button:last-child { background: #fff; color: #308b36; }
.service-popup__buttons button:disabled { opacity: .45; cursor: default; }
.service-popup button:focus-visible,.service-popup input:focus-visible,.service-popup a:focus-visible { outline: 3px solid #ff7c32; outline-offset: 3px; }
.single__service-description { border: 0; background: none; padding: 0; color: #151515; font: inherit; font-size: 14px; line-height: 135%; text-align: left; text-decoration: underline dotted; cursor: pointer; }
@media(max-width:700px) {
  .service-popup { padding: 12px; }
  .service-popup__dialog { padding: 42px 18px 20px; max-height: calc(100vh - 24px); max-height: calc(100dvh - 24px); border-radius: 16px; }
  .service-popup__title { font-size: 22px; }
  .service-popup__buttons { flex-direction: column; }
}
.confirm__pay {border:0;font-family:inherit;cursor:pointer;}
.confirm__pay:disabled {opacity:.65;cursor:wait;}
