.application-page{min-height:100vh;background:radial-gradient(circle at 12% 2%,rgba(20,71,230,.07),transparent 32%),radial-gradient(circle at 88% 18%,rgba(13,148,136,.08),transparent 28%),linear-gradient(180deg,#f7f9ff,#eef3ff);padding-bottom:var(--sp-12)}.application-header{padding-top:var(--sp-9);padding-bottom:var(--sp-4)}.application-kicker{margin:0 0 var(--sp-2) 0;text-transform:uppercase;letter-spacing:.08em;color:#0f3fbc;font-weight:700;font-size:.75rem}.application-header h1{margin:0 0 var(--sp-2) 0;font-size:clamp(1.45rem,2.8vw,2rem);font-family:var(--font-heading);color:var(--text-primary)}.application-header p{margin:0;color:var(--text-secondary)}.auth-loading,.auth-denied,.profile-gate{margin-top:var(--sp-4)}.auth-loading{display:flex;align-items:center;justify-content:center;gap:var(--sp-3);color:var(--text-secondary)}.loading-spinner{width:30px;height:30px;border:3px solid var(--border-soft);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.blocked-card{border:1px solid var(--border-medium);border-radius:var(--radius-xl);background:var(--surface-card);box-shadow:var(--shadow-xs);padding:var(--sp-6)}.blocked-card h2{margin:0 0 var(--sp-2) 0;font-family:var(--font-heading);color:var(--text-primary)}.blocked-card p{margin:0;color:var(--text-secondary)}.blocked-card-danger{border-color:#ef444440;background:linear-gradient(180deg,#ef44440f,#fff)}.missing-list{margin:var(--sp-4) 0;padding-left:var(--sp-5);color:var(--text-secondary);display:grid;gap:var(--sp-1)}.blocked-actions{display:flex;gap:var(--sp-3);flex-wrap:wrap}.application-shell{margin-top:var(--sp-4)}.application-form{display:grid;gap:var(--sp-4)}.card{border:1px solid rgba(15,42,97,.14);background:#ffffffe6;border-radius:20px;box-shadow:0 18px 45px #122d7314;padding:var(--sp-6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-4)}.card-header.compact{margin-bottom:var(--sp-3)}.section-kicker{margin:0 0 6px;color:#244ea8;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.card-title{margin:0;font-size:1.2rem;font-family:var(--font-heading);color:#102049}.card-subtitle{margin:var(--sp-1) 0 0 0;color:#516184}.payment-warning-note{margin:var(--sp-3) 0 var(--sp-4);padding:10px 12px;border-radius:10px;font-size:.9rem;color:#7a3f00;background:#fff4db;border:1px solid #ffd89a}.summary-card{border:1px solid rgba(13,46,117,.22);background:linear-gradient(118deg,#f6f9fff5,#fffffff5)}.summary-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(240px,.55fr);gap:var(--sp-4)}.summary-grid{border:1px solid rgba(41,71,135,.24);border-radius:14px;overflow:hidden;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:#fff}.summary-cell{padding:var(--sp-3) var(--sp-4);border-right:1px solid rgba(108,133,186,.2);border-bottom:1px solid rgba(108,133,186,.2);min-height:78px;display:flex;flex-direction:column;justify-content:center;gap:5px}.summary-cell:nth-child(2n){border-right:none}.summary-cell:nth-last-child(-n+2){border-bottom:none}.summary-cell span{color:#607093;font-size:.76rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.summary-cell strong{color:#0f295f;font-size:.97rem}.summary-media{display:grid;gap:var(--sp-3)}.photo-card,.qr-card{border:1px solid rgba(41,71,135,.2);border-radius:14px;background:#fff;padding:var(--sp-3)}.photo-card.important{box-shadow:inset 0 0 0 2px #1042bb1a}.photo-card p,.qr-card p{margin:0 0 var(--sp-2) 0;color:#5f6f90;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.photo-box,.qr-box{display:grid;justify-items:center;gap:var(--sp-2)}.photo-box img{width:148px;height:192px;object-fit:cover;border-radius:12px;border:1px solid rgba(15,42,97,.25)}.qr-box img{width:124px;height:124px;border-radius:10px;border:1px solid rgba(15,42,97,.15)}.qr-box small{color:#67789c;text-align:center;font-size:.75rem}.qr-warning{margin-top:var(--sp-2);border:1px solid rgba(194,65,12,.25);background:linear-gradient(180deg,#ffedd58c,#ffffffeb);border-radius:10px;padding:9px 10px;display:grid;gap:4px}.qr-warning strong{color:#9a3412;font-size:.76rem;text-transform:uppercase;letter-spacing:.05em}.qr-warning span{color:#7c2d12;font-size:.8rem;line-height:1.35}.inline-link{color:#1f4ac7;font-size:.8rem;font-weight:600}.placeholder-note{color:#607093;font-size:.83rem}.info-grid{display:grid;gap:var(--sp-3)}.info-grid.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.info-item{border:1px solid rgba(37,67,130,.16);border-radius:12px;background:linear-gradient(180deg,#f8fafe,#f3f6fd);padding:var(--sp-3)}.info-item.full-width{grid-column:1 / -1}.info-item span{display:block;color:#6a7b9d;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;margin-bottom:5px;font-weight:700}.info-item strong{color:#102759;font-size:.95rem}.payment-grid .info-item{background:linear-gradient(180deg,#f6f9ff,#f0f5ff)}.payment-grid .form-group.full-width textarea{min-height:76px}#payment-admin-details-box strong{display:block;white-space:pre-line;line-height:1.55}.form-grid{display:grid;gap:var(--sp-4)}.form-grid.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.full-width{grid-column:1 / -1}.form-group label,.input-group-title{font-size:.82rem;color:#576991;font-weight:700;letter-spacing:.03em}.input-group-title{margin:0 0 var(--sp-2) 0}.form-group input,.form-group select,.form-group textarea{width:100%;border:1.5px solid rgba(26,58,124,.25);border-radius:12px;background:#fff;color:#0f234f;padding:11px 12px;font-family:var(--font-body)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#1d4ed8;box-shadow:0 0 0 3px #1d4ed81f}.form-group input[readonly]{background:#f6f8ff}.purpose-layout{display:grid;gap:var(--sp-4)}.option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-2)}.option-card{border:1px solid rgba(26,58,124,.2);border-radius:12px;background:#fff;padding:10px 11px;display:flex;align-items:center;gap:8px;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background-color .16s ease}.option-card:hover{border-color:#1d4ed85c;transform:translateY(-1px)}.option-card.selected{border-color:#1d4ed8;background:#1d4ed814}.option-card input{margin:0}.doc-type-row{margin-top:var(--sp-3);margin-bottom:var(--sp-3);border:1px dashed rgba(32,72,155,.28);border-radius:12px;background:#f7f9fe;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.doc-type-row span{color:#5f7094;font-size:.82rem}.doc-type-row strong{color:#183777}.document-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-3)}.doc-card{border:1px solid rgba(25,61,135,.22);border-radius:14px;padding:var(--sp-3);background:linear-gradient(180deg,#fff,#f8fafe);display:grid;gap:var(--sp-2)}.doc-card h4{margin:0;color:#142f69;font-size:.9rem}.doc-preview{border-radius:10px;overflow:hidden;border:1px solid rgba(26,58,124,.15);background:#f5f8ff;min-height:190px;display:flex;align-items:center;justify-content:center}.doc-preview img{width:100%;height:190px;object-fit:cover}.media-placeholder{width:100%;min-height:190px;display:flex;align-items:center;justify-content:center;color:#5e7094;text-align:center;padding:var(--sp-3);background:#eef3ff}.media-placeholder.warning{color:#9a3009;background:#ffedd5bf}.doc-actions{display:flex;align-items:center;justify-content:flex-start}.doc-hint{color:#6b7e9f;font-size:.8rem}.review-mode{border-color:#1449b23d}.review-sheet{display:grid;gap:var(--sp-3)}.review-block{border:1px solid rgba(34,67,136,.17);border-radius:12px;padding:var(--sp-3);background:#f9fbff}.review-block h4{margin:0 0 var(--sp-2) 0;color:#12306a;font-size:.93rem}.review-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-3);padding:7px 0;border-bottom:1px dashed rgba(52,83,147,.22)}.review-row:last-child{border-bottom:none}.review-row span{color:#667aa1;font-size:.84rem}.review-row strong{color:#162f67;font-size:.9rem;text-align:right}.confirm-list{margin-top:var(--sp-4);display:grid;gap:var(--sp-2)}.checkbox-row{display:flex;align-items:flex-start;gap:var(--sp-2);color:var(--text-secondary)}.inline-status{border-radius:12px;padding:10px 12px;font-size:.9rem}.inline-status.hidden{display:none}.inline-status.error{background:#ef44441f;color:var(--danger)}.inline-status.info{background:#1f6feb1f;color:#1249c8}.inline-status.success{background:#10b98121;color:var(--success)}.action-panel{position:sticky;bottom:14px;z-index:10;border:1px solid rgba(21,64,150,.24);border-radius:16px;background:#fffffff0;padding:var(--sp-3);display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-2);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);flex-wrap:wrap}.application-form.review-active>.card:not(.summary-card):not(.review-mode){display:none}.success-state{margin-top:var(--sp-4)}.success-card{border-radius:var(--radius-xl);border:1px solid rgba(16,185,129,.25);background:linear-gradient(180deg,#10b9811f,#fff);padding:var(--sp-7)}.success-card h2{margin:0 0 var(--sp-2) 0;color:var(--text-primary);font-family:var(--font-heading)}.success-card p{margin:0;color:var(--text-secondary)}.success-actions{margin-top:var(--sp-4);display:flex;gap:var(--sp-3);flex-wrap:wrap}.hidden{display:none!important}@media (max-width: 1100px){.summary-layout{grid-template-columns:1fr}.summary-media,.option-grid,.document-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 820px){.card{padding:var(--sp-4)}.summary-grid,.info-grid.two-col,.form-grid.two-col,.option-grid,.document-grid,.summary-media{grid-template-columns:1fr}.summary-cell{border-right:none}.summary-cell:not(:last-child){border-bottom:1px solid rgba(108,133,186,.2)}.photo-box img{width:100%;max-width:230px;height:auto;aspect-ratio:3 / 4}.qr-box img{width:150px;height:150px}.review-row{flex-direction:column;gap:4px}.review-row strong{text-align:left}.blocked-actions{flex-direction:column}.blocked-actions .btn{width:100%;justify-content:center;white-space:normal}}
