.ysh-form-shell{--ysh-red:#C8102E;--ysh-navy:#0D1B2A;--ysh-mist:#E6E8EB;max-width:920px;margin:0 auto}.ysh-form{background:#fff;border:1px solid #e1e6ea;border-radius:26px;padding:30px}.ysh-form__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.ysh-field-wrap{display:grid;gap:7px}.ysh-field-wrap.is-wide{grid-column:1/-1}.ysh-field-wrap>label{font-size:14px;font-weight:800;color:var(--ysh-navy)}.ysh-field-wrap input:not([type=checkbox]):not([type=radio]),.ysh-field-wrap select,.ysh-field-wrap textarea{width:100%;border:1px solid #ccd4da!important;border-radius:14px!important;background:#fbfcfd!important;min-height:52px!important;padding:12px 14px!important;color:var(--ysh-navy)!important;box-shadow:none!important}.ysh-field-wrap textarea{min-height:130px!important;resize:vertical}.ysh-field-wrap input:focus,.ysh-field-wrap select:focus,.ysh-field-wrap textarea:focus{border-color:var(--ysh-red)!important;outline:2px solid rgba(200,16,46,.08)!important}.ysh-check{display:flex;gap:10px;align-items:flex-start;padding:14px 15px;background:#f6f8fa;border-radius:14px}.ysh-check input{margin-top:3px}.ysh-options{display:flex;gap:14px;flex-wrap:wrap}.ysh-submit{margin-top:22px;min-height:54px;border:0;border-radius:999px;background:var(--ysh-red);color:#fff;font-weight:800;font-size:15px;padding:0 24px;cursor:pointer;box-shadow:0 10px 24px rgba(200,16,46,.18)}.ysh-submit span{margin-left:8px}.ysh-alert{padding:14px 16px;border-radius:14px;margin-bottom:14px}.ysh-alert--success{background:#e9f8ef;color:#086b37}.ysh-alert--error{background:#fdecef;color:#9d1027}.ysh-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}@media(max-width:767px){.ysh-form{padding:22px 18px;border-radius:20px}.ysh-form__grid{grid-template-columns:1fr}.ysh-field-wrap.is-wide{grid-column:auto}.ysh-submit{width:100%}}

.ysh-field-wrap.is-wide{grid-column:1/-1}.ysh-submit{border-radius:8px}.ysh-form{box-shadow:0 14px 40px rgba(13,27,42,.06)}

/* v0.5.0 test registration page */
.ysh-test-page{--ysh-shell:min(1100px,calc(100% - 48px));width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);background:#f4f6f8;overflow:hidden}.ysh-test-shell{width:var(--ysh-shell);margin:0 auto}.ysh-test-hero{background:linear-gradient(135deg,#06192b,#0d2d4a);padding:70px 0 64px;color:#fff}.ysh-test-hero>div>span,.ysh-test-heading>span{display:block;color:#ff9eae;font-size:11px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.ysh-test-hero h1{color:#fff;font-size:clamp(46px,6vw,74px);line-height:.96;letter-spacing:-.05em;max-width:800px;margin:13px 0 15px}.ysh-test-hero p{max-width:740px;color:#dce6ed;font-size:17px;line-height:1.55;margin:0}.ysh-test-content{padding:48px 0 70px}.ysh-test-heading{margin-bottom:18px}.ysh-test-heading h2{margin:6px 0 0;color:#0D1B2A;font-size:36px;letter-spacing:-.035em}.ysh-test-page .ysh-form-shell{max-width:none}.ysh-test-page .ysh-form{border-radius:24px;padding:28px;box-shadow:0 18px 42px rgba(13,27,42,.07)}.ysh-test-page .ysh-submit{border-radius:14px;min-height:56px}.ysh-test-page .ys-site-footer{margin-top:0}
@media(max-width:767px){.ysh-test-page{--ysh-shell:calc(100% - 28px)}.ysh-test-hero{padding:48px 0 44px}.ysh-test-hero h1{font-size:42px}.ysh-test-hero p{font-size:15px}.ysh-test-content{padding:34px 0 50px}.ysh-test-heading h2{font-size:30px}.ysh-test-page .ysh-form{padding:20px 16px}}

/* YesSwimming Hub v0.6.0 */
.ysh-form-shell{max-width:none!important;width:100%!important;margin:0!important}.ysh-form{border-radius:22px!important;padding:26px!important;box-shadow:0 18px 42px rgba(13,27,42,.07)!important}.ysh-form__grid{gap:15px!important}.ysh-field-wrap>label{font-size:14px!important;line-height:1.35!important}.ysh-field-wrap input:not([type=checkbox]):not([type=radio]),.ysh-field-wrap select,.ysh-field-wrap textarea{font-size:16px!important;min-height:54px!important;border-radius:13px!important}.ysh-submit{width:100%!important;min-height:56px!important;border-radius:13px!important;font-size:15px!important}
.ysh-registration-page{--ysh-shell:min(1100px,calc(100% - 40px));width:100%!important;max-width:none!important;margin:0!important;background:#f3f5f7!important;overflow:hidden!important}.ysh-registration-shell{width:var(--ysh-shell)!important;margin:0 auto!important}.ysh-registration-hero{background:linear-gradient(135deg,#071a2c,#0e3151)!important;padding:58px 0 54px!important;color:#fff!important}.ysh-registration-hero>div>span,.ysh-registration-heading>span{display:block;color:#ff9bad;font-size:10px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.ysh-registration-hero h1{font-size:clamp(46px,5.6vw,68px)!important;line-height:.97!important;letter-spacing:-.045em!important;color:#fff!important;max-width:760px!important;margin:12px 0 14px!important}.ysh-registration-hero p{font-size:16px!important;line-height:1.55!important;color:#dce6ee!important;max-width:760px!important;margin:0!important}.ysh-registration-content{padding:42px 0 64px!important}.ysh-registration-heading{margin-bottom:16px!important}.ysh-registration-heading h2{font-size:36px!important;line-height:1.05!important;letter-spacing:-.035em!important;color:#0d1b2a!important;margin:6px 0 0!important}.ysh-registration-page .ys-site-footer{margin-top:0!important}
.ys-contact-form-section .ysh-form{padding:24px!important}.ys-contact-form-section .ysh-submit{background:#C8102E!important}
@media(max-width:767px){.ysh-registration-page{--ysh-shell:calc(100% - 28px)}.ysh-registration-hero{padding:40px 0 38px!important}.ysh-registration-hero h1{font-size:40px!important}.ysh-registration-hero p{font-size:14px!important}.ysh-registration-content{padding:32px 0 48px!important}.ysh-registration-heading h2{font-size:30px!important}.ysh-form{padding:18px 14px!important;border-radius:18px!important}.ysh-form__grid{grid-template-columns:1fr!important;gap:13px!important}.ysh-field-wrap.is-wide{grid-column:auto!important}.ysh-field-wrap>label{font-size:14px!important}.ysh-field-wrap input:not([type=checkbox]):not([type=radio]),.ysh-field-wrap select,.ysh-field-wrap textarea{font-size:16px!important;min-height:52px!important;padding:11px 12px!important}.ysh-check{font-size:13px!important;line-height:1.45!important}.ysh-submit{font-size:14px!important}}

/* YesSwimming Hub v0.7.0 — full-width background / boxed content normalization */
.ysh-registration-page{position:relative!important;left:50%!important;width:100vw!important;max-width:100vw!important;margin-left:-50vw!important;margin-right:-50vw!important;overflow-x:clip!important;background:#f3f5f7!important}
.ysh-registration-hero{position:relative!important;left:50%!important;width:100vw!important;max-width:100vw!important;margin-left:-50vw!important;margin-right:-50vw!important;background:#0d2f4d!important}
.ysh-registration-shell{width:min(var(--ys-content-max,1180px),calc(100% - 40px))!important;margin-left:auto!important;margin-right:auto!important}
.ysh-registration-content{padding-top:42px!important;padding-bottom:64px!important}
.ysh-form{max-width:none!important;width:100%!important}
@media(max-width:767px){.ysh-registration-shell{width:calc(100% - 28px)!important}.ysh-registration-content{padding-top:28px!important;padding-bottom:46px!important}.ysh-form,.ysh-form input,.ysh-form select,.ysh-form textarea,.ysh-form button{font-size:16px!important}.ysh-form input,.ysh-form select{min-height:48px!important}.ysh-form textarea{min-height:130px!important}}

/* YesSwimming Hub v0.8.4 — registration uses Admin boxed mini-hero */
.ysh-registration-page{height:auto!important;min-height:100vh!important;overflow:visible!important;background:#f3f5f7!important}
.ysh-registration-page>.ys-page-intro{padding-top:38px!important}
.ysh-registration-page .ys-page-intro__card{min-height:340px!important}
.ysh-registration-content{width:min(var(--ys-content-max,1180px),calc(100% - 40px))!important;max-width:var(--ys-content-max,1180px)!important;margin-left:auto!important;margin-right:auto!important;padding-top:38px!important;padding-bottom:64px!important}
.ysh-registration-page>.ys-site-footer{margin-top:0!important}
body.ysa-layout-shortcode-page .ysh-registration-page{overflow:visible!important}
@media(max-width:767px){
  .ysh-registration-page>.ys-page-intro{padding-top:18px!important}
  .ysh-registration-page .ys-page-intro__card{min-height:0!important}
  .ysh-registration-content{width:calc(100% - 28px)!important;padding-top:28px!important;padding-bottom:46px!important}
}

/* v0.9.0 — sumar înscriere */
.ysh-registration-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px;max-width:820px}
.ysh-registration-summary>div{padding:16px 18px;border-radius:18px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(8px)}
.ysh-registration-summary strong,.ysh-registration-summary span{display:block;color:#fff}
.ysh-registration-summary strong{font-size:16px;margin-bottom:4px}.ysh-registration-summary span{font-size:14px;line-height:1.45;color:#dce6ee}
@media(max-width:700px){.ysh-registration-summary{grid-template-columns:1fr}}

/* v0.10.0 — acorduri și formular înscriere */
.ysh-check span a{color:#c8102e!important;text-decoration:underline;text-underline-offset:2px;font-weight:800}
.ysh-check span a:hover{color:#8f0b22!important}
.ysh-form input[type="date"]{min-height:54px}

/* v0.11.0 — abonament selectat + flow clarity */
.ysh-selected-plan{margin:0 0 18px;padding:20px 22px;border:1px solid #dfe6eb;border-left:4px solid #C8102E;border-radius:20px;background:linear-gradient(145deg,#fff,#f7f9fb);box-shadow:0 10px 28px rgba(13,27,42,.055)}
.ysh-selected-plan__top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.ysh-selected-plan__kicker{display:block;color:#C8102E;font-size:10px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;margin-bottom:5px}.ysh-selected-plan h3{margin:0;color:#0D1B2A;font-size:24px;line-height:1.08;letter-spacing:-.02em}.ysh-selected-plan__top>a{color:#C8102E!important;text-decoration:none!important;font-weight:800;font-size:13px;white-space:nowrap}.ysh-selected-plan__meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:12px}.ysh-selected-plan__meta>span{padding:11px 12px;background:#eef3f6;border-radius:12px}.ysh-selected-plan__meta small,.ysh-selected-plan__meta strong{display:block}.ysh-selected-plan__meta small{font-size:9px;letter-spacing:.1em;color:#778692;margin-bottom:3px}.ysh-selected-plan__meta strong{font-size:13px;color:#0D1B2A}.ysh-selected-plan__prices{display:grid;gap:7px}.ysh-selected-plan__prices>div{display:flex;justify-content:space-between;gap:15px;padding:9px 11px;border-radius:10px;background:#fff;border:1px solid #edf1f3}.ysh-selected-plan__prices strong{color:#0D1B2A}
@media(max-width:767px){.ysh-selected-plan{padding:17px 15px;border-radius:17px}.ysh-selected-plan__top{flex-direction:column;gap:8px}.ysh-selected-plan__top>a{white-space:normal}.ysh-selected-plan__meta{grid-template-columns:1fr}.ysh-selected-plan h3{font-size:21px}}

/* v0.13.0 — frecvență selectată și acorduri */
.ysh-field-help{display:block;margin-top:7px;color:#687785;font-size:12px;line-height:1.45}
.ysh-frequency-empty{padding:14px 16px;border:1px dashed #d3dce3;border-radius:12px;background:#f8fafb;color:#5f6f7e;line-height:1.5}
.ysh-frequency-empty a{color:#C8102E!important;font-weight:800;text-decoration:none!important}
.ysh-check span{line-height:1.55}
.ysh-check span strong{font-weight:800}
.ysh-check span a{color:#C8102E!important;text-decoration:underline!important;text-underline-offset:2px}

/* v0.13.1 — frecvența se alege direct din card, fără dropdown */
.ysh-frequency-picker{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    margin-top:14px;
}
.ysh-frequency-option{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    width:100%;
    min-height:62px;
    padding:14px 17px;
    border:1px solid #dfe6eb;
    border-radius:14px;
    background:#fff;
    color:#0D1B2A;
    font:inherit;
    text-align:left;
    cursor:pointer;
    transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease;
}
.ysh-frequency-option:hover,
.ysh-frequency-option:focus-visible{
    border-color:#C8102E;
    box-shadow:0 9px 22px rgba(200,16,46,.10);
    outline:none;
    transform:translateY(-1px);
}
.ysh-frequency-option span{font-size:16px;font-weight:700}
.ysh-frequency-option strong{font-size:17px;font-weight:900;white-space:nowrap}
.ysh-frequency-option i{
    display:none;
    align-items:center;
    justify-content:center;
    width:25px;
    height:25px;
    flex:0 0 25px;
    border-radius:50%;
    background:#C8102E;
    color:#fff;
    font-style:normal;
    font-size:13px;
    font-weight:900;
}
.ysh-frequency-option.is-selected{
    border-color:#C8102E;
    background:#fff7f8;
    box-shadow:0 10px 24px rgba(200,16,46,.12);
}
.ysh-frequency-option.is-selected i{display:inline-flex}
.ysh-frequency-picker.has-error .ysh-frequency-option{border-color:#C8102E}
.ysh-frequency-picker__help{
    margin:10px 0 0;
    color:#637483;
    font-size:12px;
    line-height:1.5;
}
@media(max-width:767px){
    .ysh-frequency-picker{grid-template-columns:1fr;gap:8px}
    .ysh-frequency-option{min-height:58px;padding:13px 15px}
    .ysh-frequency-option span{font-size:15px}
    .ysh-frequency-option strong{font-size:16px}
}


/* v0.13.2 — contrast clar pentru frecvența selectată / hover */
.ysh-frequency-option,
.ysh-frequency-option:hover,
.ysh-frequency-option:focus,
.ysh-frequency-option:focus-visible,
.ysh-frequency-option:active,
.ysh-frequency-option.is-selected,
.ysh-frequency-option.is-selected:hover,
.ysh-frequency-option.is-selected:focus,
.ysh-frequency-option.is-selected:focus-visible {
    color:#0D1B2A !important;
}
.ysh-frequency-option span,
.ysh-frequency-option strong,
.ysh-frequency-option:hover span,
.ysh-frequency-option:hover strong,
.ysh-frequency-option:focus span,
.ysh-frequency-option:focus strong,
.ysh-frequency-option:active span,
.ysh-frequency-option:active strong,
.ysh-frequency-option.is-selected span,
.ysh-frequency-option.is-selected strong {
    color:#0D1B2A !important;
    opacity:1 !important;
}
.ysh-frequency-option.is-selected {
    background:#fff7f8 !important;
}
