.n30f-signup-shell {
 position:relative;
 display:flex;
 flex-direction:column;
 background:#ffffff;
 padding:35px 30px;
 border-radius:12px;
 box-shadow:0px 15px 35px rgba(0,0,0,0.12);
 max-width:500px;
 margin:40px auto;
 border-top:5px solid #e10019;
 font-family:'Inter',sans-serif;
 box-sizing:border-box
}
.important-box {
 background-color:#fffbeb;
 border-left:4px solid #f59e0b;
 padding:15px 20px;
 margin-bottom:25px;
 color:#555;
 font-size:15px;
 border-radius:0 8px 8px 0;
 line-height:1.5
}
.fomo-box {
 background-color:#fdf2f8;
 border-left:4px solid #be185d;
 padding:18px 20px;
 margin-bottom:25px;
 color:#831843;
 font-size:16px;
 border-radius:4px;
 line-height:1.5
}
.fomo-box strong {
 font-weight:800
}
.n30f-veil {
 position:absolute;
 inset:0;
 z-index:10;
 background:rgba(255,255,255,0.85);
 display:flex;
 align-items:center;
 justify-content:center;
 opacity:0;
 pointer-events:none;
 transition:opacity 0.3s ease;
 border-radius:12px
}
.n30f-veil.n30f-is-active {
 opacity:1;
 pointer-events:auto
}
.n30f-wait-ring {
 width:40px;
 height:40px;
 border:4px solid #f3f3f3;
 border-top:4px solid #e10019;
 border-radius:50%;
 display:none
}
.n30f-wait-ring.n30f-is-active {
 display:block;
 animation:spin 0.8s linear infinite
}
.n30f-note-card {
 display:none;
 background:#ffffff;
 padding:30px 20px;
 border-radius:12px;
 box-shadow:0 10px 25px rgba(0,0,0,0.15);
 width:80%;
 max-width:320px;
 text-align:center;
 position:relative
}
.n30f-note-card.n30f-is-active {
 display:block;
 animation:fadeInUp 0.4s ease-out forwards
}
@keyframes spin {
 0% {
 transform:rotate(0deg)
}
100% {
 transform:rotate(360deg)
}
}
@keyframes fadeInUp {
 from {
 opacity:0;
 transform:translateY(20px)
}
to {
 opacity:1;
 transform:translateY(0)
}
}
.n30f-note-x {
 position:absolute;
 top:8px;
 right:12px;
 cursor:pointer;
 font-weight:bold;
 color:#888
}
.n30f-signup-title {
 color:#e10019;
 font-weight:900;
 text-align:center;
 font-size:20px;
 margin-bottom:25px;
 text-transform:uppercase
}
.n30f-signup-grid {
 background:transparent;
 padding:0;
 box-shadow:none
}
.n30f-signup-grid input[type='text'],.n30f-signup-grid input[type='email'],.n30f-signup-grid input[type='password'] {
 width:100%;
 padding:16px;
 border:1px solid #ccc;
 border-radius:8px;
 box-sizing:border-box;
 font-size:16px;
 background-color:#f8fafc;
 transition:all 0.2s ease
}
.n30f-signup-grid input[type='tel'] {
 width:100%;
 padding-top:16px;
 padding-bottom:16px;
 padding-right:12px;
 padding-left:90px !important;
 border:1px solid #ccc;
 border-radius:8px;
 box-sizing:border-box;
 font-size:16px;
 background-color:#f8fafc;
 transition:all 0.2s ease
}
.n30f-signup-grid input:focus {
 border-color:#e10019;
 background-color:#ffffff;
 box-shadow:0 0 0 3px rgba(225,0,25,0.2);
 outline:none
}
.n30f-signup-grid .iti {
 display:block;
 width:100%
}
#n30f-signup-blocked {
 margin:0
}
.n30f-consent-row {
 display:flex;
 align-items:flex-start;
 font-size:13px;
 color:#444
}
.n30f-signup-grid input[type='checkbox'] {
 min-width:18px;
 height:18px;
 margin-right:10px;
 cursor:pointer;
 accent-color:#e10019
}
.n30f-signup-grid button[type='submit'] {
 background-color:#e10019;
 color:white;
 font-weight:800;
 text-transform:uppercase;
 border-radius:8px;
 border:none;
 padding:18px;
 cursor:pointer;
 font-size:18px;
 width:100%;
 transition:all 0.3s cubic-bezier(0.4,0,0.2,1);
 margin-top:10px;
 box-shadow:0 4px 15px rgba(225,0,25,0.3)
}
.n30f-signup-grid button[type='submit']:hover {
 background-color:#c80016;
 transform:translateY(-2px)
}
.n30f-ref-slot {
 position:absolute !important;
 left:-9999px !important;
 top:auto;
 width:1px;
 height:1px;
 overflow:hidden;
 opacity:0;
 pointer-events:none
}
