/* Registration shortcode styles, owned by the child theme. */

    .spioP {
      --spio-primary: var(--spio-lime, #9fd63a);
      --spio-primary-dark: #8cc32e;
      --spio-bg: #eaf6b6;
      --spio-text: var(--spio-navy, #183c66);
      --spio-text-muted: #64748b;
    }
    .spioP{max-width:680px;margin:0 auto;padding:24px 16px;font-family:'Source Sans Pro',Arial,sans-serif;color:var(--spio-text);font-size:16px;line-height:1.45;}
    .spioP,.spioP *{box-sizing:border-box;font-family:'Source Sans Pro',Arial,sans-serif;}
    .spioShell{background:transparent;padding:0;overflow:visible;}
    
    .spioHeader{text-align:center;margin-bottom:30px;transition:opacity .3s ease;}
    .spioCardImg{max-width:280px;width:100%;border-radius:16px;transition:transform .3s ease;}
    .spioCardImg:hover{transform:scale(1.02);}
    .spioSubWelcome{margin-top:16px;font-size:16px;color:var(--spio-text-muted);font-weight:500;}
    .spioSubWelcome strong{color:var(--spio-primary-dark);}

    .spioSteps{display:flex;justify-content:center;gap:8px;margin-bottom:30px;}
    .spioStep{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:99px;background:rgba(255,255,255,0.6);color:var(--spio-text-muted);font-size:13px;font-weight:600;transition:all .2s ease;backdrop-filter:blur(4px);}
    .spioStep span{display:flex;align-items:center;justify-content:center;width:20px;height:20px;background:rgba(0,0,0,0.05);border-radius:50%;font-size:11px;font-weight:800;}
    .spioStep.isActive{background:#fff;color:var(--spio-text);box-shadow:0 4px 10px rgba(0,0,0,0.05);transform:translateY(-1px);}
    .spioStep.isActive span{background:var(--spio-primary);color:#fff;}

    .spioCard{background:#fff;border:1px solid rgba(15,23,42,.07);border-radius:20px;padding:32px 40px;box-shadow:0 18px 46px -24px rgba(15,23,42,.28);animation:spioFade .4s cubic-bezier(0.4, 0, 0.2, 1);}
    @media(max-width:480px){ .spioCard{padding:24px 20px;} }
    @keyframes spioFade{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}
    
    .spioCardTitle{font-weight:800;font-size:22px;letter-spacing:-.03em;color:var(--spio-text);}
    .spioCardSub{margin-top:6px;color:var(--spio-text-muted);font-size:15px;line-height:1.4;}

    .spioRow{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px;}
    @media(max-width:480px){.spioRow{grid-template-columns:1fr;}}
    .spioGrid{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;margin-top:24px;}
    .spioField{grid-column:span 6;}
    .spioWide{grid-column:span 12;}
    @media(max-width:480px){.spioField{grid-column:span 12;}}

    .spioP label{display:block;font-size:13px;color:var(--spio-text);margin-bottom:7px;font-weight:700;letter-spacing:.01em;}
    .spioP input:not([type="checkbox"]):not([type="hidden"]),.spioP select{display:block;width:100%;min-height:52px;padding:13px 15px;border-radius:12px;border:1.5px solid #dbe3ec;background:#fff;outline:none;font-size:16px;font-weight:400;line-height:1.35;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;color:#25364c;box-shadow:none;appearance:none;}
    .spioP select{padding-right:42px;background-image:linear-gradient(45deg,transparent 50%,#64748b 50%),linear-gradient(135deg,#64748b 50%,transparent 50%);background-position:calc(100% - 20px) 22px,calc(100% - 14px) 22px;background-size:6px 6px,6px 6px;background-repeat:no-repeat;}
    .spioP input[type="date"]{appearance:auto;color-scheme:light;}
    .spioP input:focus,.spioP select:focus{border-color:var(--spio-primary);background-color:#fff;box-shadow:0 0 0 4px rgba(159,214,58,.16);}
    .spioP input::placeholder{color:#9aa9ba;opacity:1;}
    .spioP input[readonly]{background:#f3f6f9;color:#64748b;border-color:#dbe3ec;}

    .spioHint{margin-top:6px;font-size:13px;color:#94a3b8;}
    .spioErr{min-height:18px;margin-top:4px;font-size:13px;color:#ef4444;font-weight:600;}

    .spioActions{display:flex;align-items:center;gap:12px;margin-top:32px;}
    
    
    .spioInline{margin-left:auto;font-size:14px;color:var(--spio-text);display:flex;align-items:center;gap:8px;}
    .spioSpin{width:20px;height:20px;border-radius:50%;border:3px solid rgba(0,0,0,0.1);border-top-color:var(--spio-primary);animation:spioSpinAnim .8s linear infinite;}
    .spioSpinBig{width:60px;height:60px;border-radius:50%;border:5px solid rgba(159, 214, 58, 0.2);border-top-color:var(--spio-primary);animation:spioSpinAnim .8s linear infinite;box-shadow:0 0 30px rgba(159, 214, 58, 0.3);}
    @keyframes spioSpinAnim{to{transform:rotate(360deg);}}

    .spioSeg{display:flex;gap:4px;background:#f1f5f9;padding:6px;border-radius:16px;}
    .spioSegBtn{flex:1;padding:12px;border-radius:12px;border:none;background:transparent;font-weight:700;color:#64748b;cursor:pointer;transition:all .2s ease;font-size:14px;}
    .spioSegBtn.isOn{background:#fff;color:var(--spio-primary-dark);box-shadow:0 4px 10px rgba(0,0,0,0.05);transform:scale(1.02);}

    .spioDivider{height:1px;background:#e2e8f0;margin:32px 0 24px;}
    .spioGrid2{display:grid;grid-template-columns:repeat(12,1fr);gap:20px;margin-top:0;}
    .spioGrid2 .spioField{grid-column:span 6;}
    .spioGrid2 .spioWide{grid-column:span 12;}
	.spioOtpWrap{display:flex;justify-content:center;gap:10px;margin:28px auto 8px;max-width:430px;}
	.spioP :is(.spioOtpDigit,.spioPinDigit){width:54px!important;min-width:0!important;height:62px!important;min-height:62px!important;padding:0!important;text-align:center;font-size:28px!important;font-weight:800!important;line-height:62px!important;border-radius:14px!important;border:2px solid #dbe3ec!important;background:#fff!important;color:var(--spio-text)!important;caret-color:var(--spio-primary);}
	.spioP :is(.spioOtpDigit,.spioPinDigit):focus{border-color:var(--spio-primary)!important;box-shadow:0 0 0 4px rgba(159,214,58,.16)!important;}
	.spioPinStack{display:flex;flex-direction:column;gap:20px;margin-top:18px;}
	.spioPinStack .spioField{width:100%;}
	.spioPinStack > .spioField > input:not([type="hidden"]){width:100%;min-height:52px;padding:13px 15px;border-radius:12px;}
	.spioPinOtpWrap{justify-content:flex-start;margin:10px 0 8px;}
	@media(max-width:480px){.spioGrid2 .spioField{grid-column:span 12;}.spioOtpWrap{gap:6px}.spioP :is(.spioOtpDigit,.spioPinDigit){width:44px!important;height:56px!important;min-height:56px!important;font-size:24px!important;line-height:56px!important;border-radius:12px!important;}}


    .spioCheck{display:flex;gap:16px;align-items:flex-start;margin-top:16px;padding:16px;border-radius:16px;border:2px solid #f1f5f9;background:#fff;font-weight:600;color:var(--spio-text);cursor:pointer;transition:all .2s;}
    .spioCheck:hover{border-color:var(--spio-primary);background:#fcfdf7;}
    .spioCheck input{width:22px;height:22px;margin:1px 0 0;accent-color:var(--spio-primary);flex-shrink:0;}
    #pregBlock{background:#f7f9fc!important;border:1px solid #e2e8f0!important;border-radius:16px!important;padding:20px!important;}
	#pregBlock input:not([type="checkbox"]):not([type="hidden"]),#pregBlock select{background-color:#fff!important;}
	.spioP.isBooting .spioShell>*:not(#spioOverlay){visibility:hidden!important;}

    .spioDone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:40px 0;}
    .spioDoneIcon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:32px;color:#fff;background:var(--spio-primary);box-shadow:0 10px 25px rgba(159, 214, 58, 0.4);}

    /* MODAL */
    .spioModal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);z-index:9999;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);animation:spioFadeIn .2s ease;}
    .spioModalBox{background:#fff;width:90%;max-width:400px;border-radius:24px;padding:24px;box-shadow:0 20px 40px rgba(0,0,0,0.2);transform:scale(0.95);animation:spioPop .2s ease forwards;}
    @keyframes spioFadeIn{from{opacity:0;}to{opacity:1;}}
    @keyframes spioPop{to{transform:scale(1);}}
    .spioModalTitle{font-size:20px;font-weight:800;color:var(--spio-text);margin-bottom:10px;}
    .spioModalText{font-size:15px;color:var(--spio-text-muted);line-height:1.5;}
    .spioModalActions{display:flex;flex-direction:column;gap:10px;margin-top:20px;}
    .spioModalActions .spioBtn{width:100%;justify-content:center;}

    /* DATE MASK STYLES */
    .spioMaskField { position: relative; width: 100%; }
    .spioMaskBg {
      position: absolute; top: 0; left: 0; width: 100%; height: 100%;
      padding: 14px 16px;
      border: 2px solid #f1f5f9;
      background: #f8fafc;
      border-radius: 14px;
      color: #cbd5e1;
      font-family: 'Source Sans Pro', Arial, sans-serif;
      font-size: 18px; 
      line-height: 24px;
      letter-spacing: 4px;
      display: flex; align-items: center;
      box-sizing: border-box;
      z-index: 1;
      transition: all .2s ease;
      pointer-events: none;
    }
    #view_nascita {
      position: relative; z-index: 2;
      background: transparent !important;
      border-color: transparent !important;
      color: #334155;
      font-family: 'Source Sans Pro', Arial, sans-serif;
      font-size: 18px;
      line-height: 24px;
      letter-spacing: 4px;
      padding: 14px 16px;
      width: 100%;
      box-sizing: border-box;
      box-shadow: none !important;
    }
    /* Focus State Mirroring */
    .spioMaskField:focus-within .spioMaskBg {
      border-color: var(--spio-primary);
      background: #fff;
      box-shadow: 0 0 0 4px rgba(159, 214, 58, 0.15);
    }
/* Static presentation formerly embedded in the snippet. */
.spioP .spioPregnancyPanel {background:#f8fafc;padding:20px;border-radius:16px;margin-top:20px;border:1px solid #e2e8f0;grid-column:1/-1;}
.spioP .spioSectionTitle {font-size:16px;margin-top:2px;}
.spioP .spioLoadingOverlay {position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(255,255,255,0.86);backdrop-filter:blur(8px);z-index:99999;align-items:center;justify-content:center;flex-direction:column;animation:spioFadeIn .3s ease;}
.spioP .spioLoadingText {margin-top:20px;font-size:18px;font-weight:700;color:var(--spio-text);}
.spioP .spioModalEmailField {margin: 16px 0;}
.spioP .spioModalMarketing {margin-bottom: 16px;}
.spioP .spioModalConsent {margin:0;padding:12px;border:1px solid #e2e8f0;font-size:14px;}
.spioP .spioActions { flex-wrap: wrap; }
.spioP .spioAlternative { display:flex; align-items:center; gap:12px; margin:24px 0 16px; color:#667085; font:600 13px/1.2 "Source Sans Pro",sans-serif; text-transform:uppercase; letter-spacing:.08em; }
.spioP .spioAlternative::before,.spioP .spioAlternative::after { content:""; flex:1; height:1px; background:rgba(17,24,39,.14); }
.spioP #btnWithoutCard { width:100%; justify-content:center; }
.spioP .spioRecoveryChoice { display:flex; flex-direction:column; align-items:flex-start; gap:10px; margin-top:14px; }
.spioP .spioRecoveryChoice p { margin:0; }

.spioIdentityModal { position:fixed; inset:0; z-index:2147483000; align-items:center; justify-content:center; padding:20px; font-family:"Source Sans Pro",sans-serif; }
.spioIdentityModal.is-open { display:flex !important; }
.spioIdentityBackdrop { position:absolute; inset:0; background:rgba(10,18,28,.72); backdrop-filter:blur(8px); }
.spioIdentityDialog { position:relative; z-index:1; width:min(100%,460px); padding:34px 28px 28px; border-radius:24px; background:#fff; box-shadow:0 28px 90px rgba(4,13,24,.32); text-align:center; }
.spioIdentityDialog h2 { margin:12px 0 10px; font-family:"Right Grotesk","Source Sans Pro",sans-serif; font-size:clamp(28px,7vw,38px); line-height:1; color:#101828; }
.spioIdentityDialog p { margin:0 0 12px; color:#344054; font-size:17px; line-height:1.45; }
.spioIdentityDialog .spioBtn { display:flex; width:100%; justify-content:center; margin-top:20px; }
.spioIdentityEmailBox{display:flex;flex-direction:column;align-items:center;gap:5px;margin:20px 0 4px;padding:15px 18px;border:2px solid var(--spio-primary);border-radius:16px;background:#f5fbe8;color:#183c66;}
.spioIdentityEmailBox span{font-size:12px;font-weight:800;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;}
.spioIdentityEmailBox strong{font-family:"Right Grotesk","Source Sans Pro",sans-serif;font-size:clamp(20px,5vw,27px);font-weight:800;line-height:1.15;overflow-wrap:anywhere;}
.spioIdentityDialog .spioIdentityStatus{margin:12px 0 0;font-size:14px;font-weight:700;line-height:1.4;}
.spioIdentityStatus:empty{display:none;}
.spioIdentityStatus.is-success{color:#39730d;}
.spioIdentityStatus.is-error{color:#b42318;}
.spioIdentityIcon { display:grid; place-items:center; width:52px; height:52px; margin:0 auto; border-radius:50%; background:#fff2cc; color:#8a5a00; font:800 28px/1 "Right Grotesk","Source Sans Pro",sans-serif; }
.spioIdentityClose { position:absolute; top:12px; right:14px; width:40px; height:40px; border:0; background:transparent; color:#667085; font-size:30px; line-height:1; cursor:pointer; }
body.spioIdentityModalOpen { overflow:hidden; }
.spioP .spioInline { overflow-wrap: anywhere; }
.spioP .spioField { min-width: 0; }
.spioP .spioStep.isActive span, .spioP .spioDoneIcon { color: var(--spio-text); }
.spioP .spioSegBtn { min-height: 44px; font-family: var(--spio-body); }
.spioP .spioSegBtn.isOn { background: var(--spio-soft-lime); color: var(--spio-navy); }
.spioP .spioSegBtn:focus-visible { outline: 3px solid var(--spio-blue); outline-offset: 2px; }
.spioP .spioModal { overflow-y: auto; padding: 20px 0; }
.spioP .spioModalBox { max-height: calc(100dvh - 40px); overflow-y: auto; }
@media (max-width: 480px) {
 .spioP .spioActions .spioBtn { width: 100%; }
 .spioP .spioSteps { gap: 4px; }
 .spioP .spioStep { padding: 6px; font-size: 11px; }
}
@media (prefers-reduced-motion: reduce) {
 .spioP *, .spioP *::before, .spioP *::after { animation: none !important; transition: none !important; }
 .spioP .spioModalBox { transform: none; }
}
