/* MKNexasoft application form pages */
.f-hero{position:relative;padding:80px 0 60px;overflow:hidden;text-align:center}
.f-hero-glow{position:absolute;inset:0;background:radial-gradient(620px 380px at 75% 15%,rgba(43,123,255,.2),transparent 70%)}
.f-hero .wrap{position:relative;z-index:2}
.f-hero h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(32px,4.5vw,48px);font-weight:700;margin:16px 0}
.f-hero h1 .grad{background:linear-gradient(96deg,var(--blue-glow),#9ec4ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.f-hero p{color:var(--muted);font-size:17px;max-width:640px;margin:0 auto 20px}
.f-chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:20px}
.f-chip{background:var(--panel-2);border:1px solid var(--line);padding:8px 14px;border-radius:20px;font-size:13px;color:var(--muted)}

.f-page{padding:0 0 80px;margin-top:-24px;position:relative;z-index:3}
.f-card{background:var(--panel-2);border:1px solid var(--line);border-radius:20px;padding:32px 28px}
.f-card h2{font-family:'Space Grotesk',sans-serif;font-size:22px;font-weight:700;margin:0 0 6px}
.f-card .hint{color:var(--muted-2);font-size:13px;margin-bottom:24px}
.f-section{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--blue-glow);border-bottom:1px solid var(--line);padding-bottom:10px;margin:28px 0 16px}
.f-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.f-grid .full{grid-column:1/-1}
@media(max-width:680px){.f-grid{grid-template-columns:1fr}}

.f-label{display:block;font-size:14px;font-weight:600;margin-bottom:6px;color:var(--text)}
.f-label .req{color:#ff8a8a}
.f-input,.f-select,.f-textarea{width:100%;background:var(--ink);border:1px solid var(--line);border-radius:10px;padding:12px 14px;color:var(--text);font-family:'Inter',sans-serif;font-size:15px}
.f-textarea{min-height:120px;resize:vertical}
.f-input:focus,.f-select:focus,.f-textarea:focus{outline:none;border-color:var(--blue)}
.f-input.err,.f-select.err,.f-textarea.err{border-color:#ff8a8a}
.f-error{color:#ff8a8a;font-size:13px;margin-top:4px;display:block}
.f-alert{background:rgba(198,40,40,.12);border:1px solid rgba(255,138,138,.35);color:#ffb4b4;border-radius:10px;padding:14px 16px;margin-bottom:20px;font-size:14px}
.f-alert ul{margin:8px 0 0;padding-left:18px}

.f-radios{display:flex;flex-wrap:wrap;gap:10px}
.f-radio{display:flex;align-items:center;gap:8px;background:var(--ink);border:1px solid var(--line);border-radius:10px;padding:10px 14px;cursor:pointer;font-size:14px;transition:.15s}
.f-radio:has(input:checked){border-color:var(--blue);background:rgba(43,123,255,.1)}
.f-radio input{accent-color:var(--blue)}

.f-upload{background:rgba(43,123,255,.04);border:2px dashed var(--line);border-radius:12px;padding:24px 18px;text-align:center;cursor:pointer;transition:.15s}
.f-upload:hover,.f-upload.dragover{border-color:var(--blue);background:rgba(43,123,255,.08)}
.f-upload.err{border-color:#ff8a8a;background:rgba(198,40,40,.06)}
.f-upload.has-file{border-color:var(--blue);border-style:solid;background:rgba(43,123,255,.06)}
.f-upload-icon{color:var(--blue-glow);margin-bottom:10px;display:flex;justify-content:center}
.f-upload-title{font-size:14.5px;font-weight:600;color:var(--text);margin-bottom:4px}
.f-upload-hint,.f-upload p{color:var(--muted);font-size:12.5px;margin:0 0 12px}
.f-upload-btn{display:inline-block;padding:7px 18px;border:1px solid var(--blue);border-radius:999px;font-size:13px;font-weight:600;color:var(--blue-glow);background:transparent;pointer-events:none}
.f-upload .fname{color:var(--blue-glow);font-size:13px;margin-top:10px;font-weight:600;word-break:break-all}
.f-upload-preview{margin-top:10px}
.f-upload-preview img{max-height:80px;max-width:100%;border-radius:8px;border:1px solid var(--line)}

.f-conditional{overflow:hidden;max-height:0;opacity:0;transition:.3s ease}
.f-conditional.show{max-height:220px;opacity:1;margin-top:14px}
.f-conditional-box{background:rgba(43,123,255,.08);border:1px solid rgba(43,123,255,.25);border-radius:12px;padding:16px}

.f-note{background:rgba(43,123,255,.1);border:1px solid rgba(43,123,255,.25);border-radius:12px;padding:16px;margin-top:20px;font-size:14px}
.f-note b{color:var(--blue-glow)}

.f-submit{margin-top:24px}
.f-submit .btn{width:100%;justify-content:center;font-size:16px;padding:15px}

.g-recaptcha{margin:16px 0}
.mb-3{margin-bottom:14px}
.mt-3{margin-top:14px}
.d-none{display:none}
.f-course-price{color:var(--blue-glow);font-size:13px;font-weight:600;margin-top:8px;min-height:18px}
.f-multiselect{position:relative}
.f-multiselect.err .f-multiselect-trigger{border-color:#ff8a8a}
.f-multiselect-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;cursor:pointer}
.f-multiselect-trigger:focus{outline:none;border-color:var(--blue)}
.f-multiselect-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted-2)}
.f-multiselect-text.has-value{color:var(--text)}
.f-multiselect-chevron{width:10px;height:10px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);margin-top:-4px;flex-shrink:0;transition:transform .2s}
.f-multiselect.open .f-multiselect-chevron{transform:rotate(-135deg);margin-top:4px}
.f-multiselect-dropdown{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:30;background:var(--panel-2);border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 32px rgba(0,0,0,.35);max-height:240px;overflow-y:auto;padding:6px}
.f-multiselect-option{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;cursor:pointer;transition:background .15s}
.f-multiselect-option:hover{background:var(--ink)}
.f-multiselect-option input{position:absolute;opacity:0;pointer-events:none}
.f-multiselect-check{width:18px;height:18px;border:1px solid var(--line);border-radius:4px;background:var(--ink);flex-shrink:0;position:relative}
.f-multiselect-option input:checked + .f-multiselect-check{background:var(--blue);border-color:var(--blue)}
.f-multiselect-option input:checked + .f-multiselect-check::after{content:'';position:absolute;left:5px;top:2px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.f-multiselect-option-text{flex:1;font-size:14px;line-height:1.35}
.f-multiselect-price{color:var(--blue-glow);font-weight:600;margin-left:4px}
