/* 2026-10-16: Фирменный вращающийся контур и всплывающие подсказки не меняют размеры формы. */
@property --guest-ring-angle{syntax:'<angle>';inherits:false;initial-value:0deg}
.guest-fields-target{scroll-margin-top:22px}.guest-field-control{position:relative;display:block;min-width:0;width:100%;border-radius:10px;isolation:isolate}.guest-field-control>input,.guest-field-control>select,.guest-field-control>textarea{position:relative;display:block;z-index:1;margin-bottom:0}.guest-field-control::after{content:'';position:absolute;inset:-2px;z-index:2;padding:2px;border-radius:inherit;background:conic-gradient(from var(--guest-ring-angle),#fff3aa,#70e5c3,#8fbfff,#b783f0,#fff3aa);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:0;transition:opacity .5s ease,filter .5s ease;filter:drop-shadow(0 0 0 #70bfa300)}
.guest-field-control.is-invalid::after{opacity:1;filter:drop-shadow(0 0 4px #71b5a14d);animation:guest-ring-turn 3s linear infinite}.guest-field-control.is-invalid>input,.guest-field-control.is-invalid>select{border-color:#b5d3c4;box-shadow:none}
.guest-field-hint{position:absolute;z-index:3;right:8px;top:-17px;max-width:calc(100% - 16px);opacity:0;pointer-events:none;transition:opacity .3s ease;line-height:1.2}.guest-field-control.has-hint .guest-field-hint{opacity:1}.guest-field-control.hint-dismiss-fast .guest-field-hint{transition-duration:.12s}.guest-field-hint__bubble{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 9px 4px 5px;border:1px solid #dfc27d;border-radius:9px;background:linear-gradient(180deg,#fff6dc,#ffe7ac);box-shadow:0 4px 12px #31533d1f;color:#285b46;font:600 11px/1.2 Arial,sans-serif}.guest-field-control.has-hint .guest-field-hint__bubble{animation:guest-hint-enter .28s ease-out both}.guest-field-hint__icon{display:grid;place-items:center;flex:none;width:20px;height:20px;border-radius:6px;background:linear-gradient(180deg,#4ca18a,#28745b);color:#fff;font:800 16px/1 Arial,sans-serif}.guest-field-hint__message{min-width:0}.guest-fields-status{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap;border:0}
/* 2026-10-16: Одно появление по действию пользователя; время показа задаёт JS, циклической подсказки нет. */
.guest-field-control>input::placeholder,.guest-field-control>textarea::placeholder{color:#87968e;opacity:1}
.guest-email-offer{display:block;margin-top:7px;color:#61776b;font:400 12px/1.4 Arial,sans-serif}
@keyframes guest-ring-turn{to{--guest-ring-angle:360deg}}@keyframes guest-hint-enter{from{opacity:0;transform:translateY(5px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.guest-field-control::after,.guest-field-hint,.guest-field-control.hint-dismiss-fast .guest-field-hint{transition:none}.guest-field-control.is-invalid::after,.guest-field-control.has-hint .guest-field-hint__bubble{animation:none}}

/* 2026-10-18: Ошибка имеет собственное место под label; исчезновение пузырька не двигает ошибочное поле. */
.guest-field-row{display:grid;grid-template-rows:auto 0;min-width:0;align-content:start}.guest-field-row>label{min-width:0;margin-bottom:0}.guest-field-row>.guest-field-hint{position:static;display:block;justify-self:start;max-width:100%;max-height:0;overflow:hidden;line-height:1.2;opacity:0;pointer-events:none;right:auto;top:auto}.guest-field-row.has-error{grid-template-rows:auto minmax(28px,auto);row-gap:4px}.guest-field-row.has-error>.guest-field-hint{max-height:none;overflow:visible}.guest-field-row.has-hint>.guest-field-hint{opacity:1}.guest-field-row.has-hint .guest-field-hint__bubble{animation:guest-hint-enter .28s ease-out both}.guest-field-row .guest-field-hint__bubble{font-size:11px;box-shadow:none}.guest-field-row:has(.hint-dismiss-fast)>.guest-field-hint{transition-duration:.12s}
@media(prefers-reduced-motion:reduce){.guest-field-row>.guest-field-hint{transition:none}.guest-field-row.has-hint .guest-field-hint__bubble{animation:none}}
