:root{--phase-primary: #BBBF45;--phase-primary-dark: #a2a53d;--phase-primary-light: #d4d6a3;--phase-secondary: #73645c;--phase-secondary-light: #a99a93;--primary-color: var(--phase-primary);--primary-dark: var(--phase-primary-dark);--primary-light: var(--phase-primary-light);--secondary-color: var(--phase-secondary);--secondary-light: var(--phase-secondary-light);--success-color: #22C55E;--error-color: #EF4444;--warning-color: #F59E0B;--info-color: #3B82F6;--background-color: #F8FAFC;--background-secondary: #F1F5F9;--surface-color: #FFFFFF;--surface-elevated: #F9FAFB;--text-primary: #1e293b;--text-secondary: #334155;--text-muted: #64748b;--text-on-primary: #FFFFFF;--border-color: #E2E8F0;--border-light: #F1F5F9;--border-focus: var(--phase-primary);--border-error: var(--error-color);--glow-primary: rgba(187, 191, 69, .25);--glow-primary-strong: rgba(187, 191, 69, .4);--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .04);--shadow-md: 0 4px 8px -2px rgb(0 0 0 / .08), 0 2px 4px -2px rgb(0 0 0 / .06);--shadow-lg: 0 10px 20px -5px rgb(0 0 0 / .1), 0 4px 8px -4px rgb(0 0 0 / .08);--shadow-xl: 0 20px 40px -10px rgb(0 0 0 / .12), 0 10px 20px -10px rgb(0 0 0 / .1);--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1.25rem;--radius-xl: 2rem;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: .75rem;--font-size-sm: .95rem;--font-size-base: 1.08rem;--font-size-lg: 1.22rem;--font-size-xl: 1.4rem;--font-size-2xl: 1.7rem;--font-size-3xl: 2.1rem;--spacing-xs: .3rem;--spacing-sm: .7rem;--spacing-md: 1.2rem;--spacing-lg: 2rem;--spacing-xl: 2.7rem;--spacing-2xl: 4rem}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family);background:radial-gradient(ellipse at 20% 0%,rgba(187,191,69,.06) 0%,transparent 50%),radial-gradient(ellipse at 80% 100%,rgba(115,100,92,.05) 0%,transparent 50%),linear-gradient(180deg,#fafbfc,#f1f3f5);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md);min-height:100vh;display:flex;flex-direction:column}.header{background:linear-gradient(135deg,#fff,#fdfef5,#fafbf0);border-bottom:2px solid rgba(187,191,69,.15);padding:var(--spacing-2xl) 0 var(--spacing-xl);margin-bottom:var(--spacing-xl);box-shadow:0 4px 20px -4px #bbbf451a,0 1px 3px #0000000a;border-radius:0 0 var(--radius-xl) var(--radius-xl);text-align:center;position:relative}.header-compact{padding:var(--spacing-md) var(--spacing-lg);margin:var(--spacing-sm) 0 var(--spacing-md);border:1px solid rgba(187,191,69,.16);border-radius:var(--radius-lg);text-align:center;background:#fff;box-shadow:0 6px 18px -10px #0f172a40,0 0 0 1px #bbbf4514}.compact-header-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm)}.compact-header-logo{width:105px;height:105px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.header-logo-image{width:105px;height:105px;object-fit:contain;display:block}.compact-header-content h1{font-size:var(--font-size-xl);line-height:1.2;margin:0;color:var(--text-primary);letter-spacing:-.015em}.compact-header-subtitle{margin:.2rem 0 0;color:var(--text-muted);font-size:var(--font-size-sm);font-weight:500}.header-compact .progress-container{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md)}.header-compact .progress-bar{margin-bottom:var(--spacing-md);height:5px}.header-compact .step-indicators{justify-content:center;gap:var(--spacing-sm)}.header-compact .step-indicators:before{display:none}.header-compact .step-label{font-size:.62rem}.header-compact .step-indicator{width:36px;height:36px;font-size:var(--font-size-sm);border-width:2px}.header-compact .step-indicator.active{transform:scale(1.05);animation:none;box-shadow:0 4px 12px #bbbf4547}.logo-section{display:flex;align-items:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-md);justify-content:center}.logo-section.center-header{flex-direction:column;align-items:center;gap:var(--spacing-md);text-align:center}.logo-section .logo{width:120px;height:120px;background:#fff;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--text-on-primary);font-weight:700;font-size:var(--font-size-lg);box-shadow:0 4px 16px #bbbf4533,0 0 40px #bbbf4514,var(--shadow-md);transition:box-shadow .3s ease}.logo-section .logo:hover{box-shadow:0 6px 24px #bbbf4547,0 0 60px #bbbf451f,var(--shadow-lg)}.logo-section .brand-text h1{font-size:var(--font-size-3xl);font-weight:700;color:var(--primary-color);margin-bottom:var(--spacing-xs);letter-spacing:-.025em;text-align:center}.logo-section .brand-text .tagline{font-size:var(--font-size-sm);color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.05em}.subtitle{font-size:var(--font-size-lg);color:var(--secondary-color);font-weight:600;margin-top:var(--spacing-sm);text-align:center}.progress-container{margin-top:var(--spacing-xl);padding:var(--spacing-lg) 0;text-align:center}.progress-bar{width:80%;margin-left:auto;margin-right:auto;height:6px;background-color:var(--border-light);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--spacing-xl);position:relative}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary-color) 0%,var(--primary-light) 50%,var(--primary-color) 100%);background-size:200% 100%;border-radius:var(--radius-lg);transition:width .5s cubic-bezier(.4,0,.2,1);width:16.67%;box-shadow:0 0 12px #bbbf4566;animation:progressShimmer 3s ease infinite}@keyframes progressShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.step-indicators{display:flex;justify-content:center;gap:var(--spacing-lg);align-items:center;position:relative}.step-indicators:before{content:"";position:absolute;top:50%;left:26px;right:26px;height:2px;background:var(--border-color);transform:translateY(-50%);z-index:0}.step-indicator{width:52px;height:52px;border-radius:50%;background-color:#fff;color:var(--text-muted);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--font-size-base);transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;border:2.5px solid var(--border-color);z-index:1}.step-indicator.active{background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));color:var(--text-on-primary);transform:scale(1.15);border-color:var(--primary-color);box-shadow:0 4px 16px #bbbf4559,0 0 0 4px #bbbf451f;animation:stepPulse 2s ease-in-out infinite}@keyframes stepPulse{0%,to{box-shadow:0 4px 16px #bbbf4559,0 0 0 4px #bbbf451f}50%{box-shadow:0 4px 20px #bbbf4573,0 0 0 8px #bbbf4514}}.step-indicator.completed{background:linear-gradient(135deg,var(--success-color),#16A34A);color:var(--text-on-primary);border-color:var(--success-color);box-shadow:0 3px 12px #22c55e40}.step-indicator.completed:after{content:none}.step-indicator-wrapper{display:flex;flex-direction:column;align-items:center;gap:.35rem;z-index:1}.step-label{font-size:.7rem;font-weight:600;color:var(--text-muted);letter-spacing:.02em;white-space:nowrap}.step-indicator-wrapper:has(.step-indicator.active) .step-label{color:var(--primary-dark)}.step-indicator-wrapper:has(.step-indicator.completed) .step-label{color:var(--success-color)}.main-content{flex:1;background:#fff;border-radius:var(--radius-xl);padding:var(--spacing-2xl);box-shadow:0 1px 3px #0000000a,0 8px 32px -8px #0000000f;margin-bottom:var(--spacing-xl);border:1px solid rgba(187,191,69,.08)}.form-step{display:none;animation:fadeIn .3s ease-in-out}.form-step.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes shake{0%{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}to{transform:translate(0)}}@keyframes errorFadeIn{0%{background:transparent}to{background:#ef444414}}.step-header{margin-bottom:var(--spacing-2xl);padding-bottom:var(--spacing-lg);border-bottom:none;background:linear-gradient(135deg,#fafbf0,#f5f6e8 40%,#f0f1e3);padding:var(--spacing-xl) var(--spacing-xl) var(--spacing-lg);border-radius:var(--radius-lg);margin:0 calc(-1 * var(--spacing-xl)) var(--spacing-2xl) calc(-1 * var(--spacing-xl));box-shadow:0 2px 12px #bbbf4514,inset 0 -2px #bbbf4526;border-left:5px solid var(--primary-color);position:relative}.step-header h2{font-size:var(--font-size-3xl);font-weight:800;color:var(--secondary-color);margin-bottom:var(--spacing-sm);letter-spacing:-.03em}.step-description{font-size:var(--font-size-lg);color:var(--text-secondary);font-weight:500;opacity:.85}.form-section{margin-bottom:var(--spacing-2xl);padding:var(--spacing-xl);border:1px solid #F0F1F3;border-left:4px solid transparent;border-image:linear-gradient(180deg,var(--primary-color),var(--primary-light)) 1;border-image-slice:0 0 0 1;border-radius:var(--radius-lg);background:#fff;box-shadow:0 1px 3px #00000008,0 4px 16px -4px #0000000a;transition:all .3s cubic-bezier(.4,0,.2,1)}.form-section:hover{box-shadow:0 2px 8px #0000000f,0 8px 24px -8px #bbbf451f;border-image:linear-gradient(180deg,var(--primary-color),var(--secondary-color)) 1;border-image-slice:0 0 0 1}.form-section h3{font-size:var(--font-size-xl);font-weight:700;color:var(--secondary-color);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm);border-bottom:2px solid rgba(187,191,69,.2);display:flex;align-items:center;gap:var(--spacing-sm)}.form-section h3:before{content:"";width:5px;height:28px;background:linear-gradient(180deg,var(--primary-color),var(--primary-dark));border-radius:3px;flex-shrink:0}.section-note{font-size:var(--font-size-sm);color:var(--text-secondary);font-style:italic;margin-bottom:var(--spacing-lg);padding:var(--spacing-lg);background:linear-gradient(135deg,#fafbfc,#f3f4f6);border-left:4px solid var(--primary-color);border-radius:var(--radius-md);border:1px solid #E5E7EB}.section-note--warning{background:#fff3cd;border:1px solid #ffc107;border-radius:8px;padding:1rem 1.25rem;margin-bottom:1.5rem;font-style:normal;color:#856404}.section-note--warning-title{display:block;margin-bottom:.5rem}.section-note--warning p{margin:0 0 .5rem}.section-note--warning p:last-child{margin-bottom:0}.section-note--warning ul{margin:0 0 .5rem 1rem;padding:0}.form-group{margin-bottom:var(--spacing-xl)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.form-row.three-col{grid-template-columns:1fr 1fr 1fr}label{display:block;font-weight:700;color:var(--primary-color);margin-bottom:var(--spacing-sm);font-size:var(--font-size-lg);letter-spacing:.025em;opacity:1!important;transition:color .2s}label.required:after{content:" *";color:var(--error-color);font-weight:700}.field-help{font-size:.8rem;color:var(--text-secondary);margin-top:.35rem}input[type=text],input[type=email],input[type=tel],input[type=date],input[type=number],select,textarea{width:100%;padding:var(--spacing-md) var(--spacing-lg);border:2px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:var(--font-family);background-color:#fff!important;transition:all .3s cubic-bezier(.4,0,.2,1);color:#1e293b!important;font-weight:500}input[type=text]::placeholder,input[type=email]::placeholder,input[type=tel]::placeholder,input[type=date]::placeholder,input[type=number]::placeholder,textarea::placeholder{color:var(--text-muted)!important;opacity:.7}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 4px var(--glow-primary),0 4px 12px -2px #bbbf4526;background:linear-gradient(180deg,#fff,#fdfef8)!important;transform:translateY(-1px);color:#1e293b!important}input:hover:not(:focus):not(:read-only),select:hover:not(:focus),textarea:hover:not(:focus){border-color:var(--primary-light);box-shadow:var(--shadow-sm)}input:read-only{background:linear-gradient(135deg,var(--background-secondary) 0%,#F3F4F6 100%);color:var(--text-muted);cursor:not-allowed;border-color:var(--border-light)}textarea{resize:vertical;min-height:100px;line-height:1.6}select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem}.radio-group{display:flex;gap:1rem;flex-wrap:wrap}.radio-label{display:flex;align-items:center;cursor:pointer;font-weight:400;margin-bottom:0}.radio-label input[type=radio]{display:none}.radio-custom{width:22px;height:22px;border:2px solid var(--border-color);border-radius:50%;margin-right:var(--spacing-sm);position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);background:var(--surface-color)}.radio-label:hover .radio-custom{border-color:var(--primary-light);box-shadow:0 0 0 4px #a4b82f1a}.radio-label input[type=radio]:checked+.radio-custom{border-color:var(--primary-color);background:linear-gradient(135deg,var(--primary-color),var(--primary-light));box-shadow:0 2px 8px #a4b82f4d}.radio-label input[type=radio]:checked+.radio-custom:after{content:"";width:8px;height:8px;background-color:var(--text-on-primary);border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 1px 2px #0000001a}.checkbox-label{display:flex;align-items:flex-start;cursor:pointer;font-weight:400;margin-bottom:0;gap:.75rem}.checkbox-label--top-space{margin-top:.75rem}.checkbox-label input[type=checkbox]{display:none}.checkbox-custom{width:22px;height:22px;border:2px solid var(--border-color);border-radius:var(--radius-sm);position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);flex-shrink:0;margin-top:2px;background:var(--surface-color)}.checkbox-label:hover .checkbox-custom{border-color:var(--primary-light);box-shadow:0 0 0 4px #a4b82f1a}.checkbox-label input[type=checkbox]:checked+.checkbox-custom{border-color:var(--primary-color);background:linear-gradient(135deg,var(--primary-color),var(--primary-light));box-shadow:0 2px 8px #a4b82f4d}.checkbox-label input[type=checkbox]:checked+.checkbox-custom:after{content:"\2713";color:var(--text-on-primary);font-size:14px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-shadow:0 1px 2px rgba(0,0,0,.1)}.error-message{color:var(--error-color);font-size:1rem;margin-top:.5rem;font-weight:600;background:#ef444414;border-left:4px solid var(--error-color);padding:.5rem 1rem;border-radius:0 var(--radius-sm) var(--radius-sm) 0;display:none;transition:background .3s,border-color .3s;animation:errorFadeIn .4s}.error-message.show{display:block}.form-group.error input,.form-group.error select,.form-group.error textarea{border-color:var(--error-color);box-shadow:0 0 0 4px #ef44442e;background:#fff0f1;animation:shake .25s}.add-entry-btn{background:linear-gradient(135deg,#fafbf0,#f5f6e8);border:2px dashed rgba(187,191,69,.35);color:var(--primary-dark);padding:1rem 1.25rem;border-radius:var(--radius-md);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%;margin-top:1rem}.add-entry-btn:hover{border-color:var(--primary-color);background:linear-gradient(135deg,#f5f6e8,#eceece);box-shadow:0 2px 8px #bbbf4526;transform:translateY(-1px)}.education-entry,.membership-entry,.training-entry,.previous-employment-entry,.voluntary-work-entry,.disciplinary-entry,.employment-gap-entry{padding:1.25rem;border:1px solid var(--border-color);border-left:3px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:1rem;background:var(--surface-color);position:relative;transition:all .25s ease}.education-entry:hover,.membership-entry:hover,.training-entry:hover,.previous-employment-entry:hover,.voluntary-work-entry:hover,.disciplinary-entry:hover,.employment-gap-entry:hover{border-left-color:var(--primary-color);box-shadow:0 2px 12px #bbbf451a;transform:translate(2px)}.education-entry:not(:first-child),.membership-entry:not(:first-child),.training-entry:not(:first-child),.previous-employment-entry:not(:first-child),.voluntary-work-entry:not(:first-child),.disciplinary-entry:not(:first-child),.employment-gap-entry:not(:first-child){border-top:2px solid rgba(187,191,69,.2)}.entry-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid rgba(187,191,69,.2)}.entry-number{font-weight:700;font-size:.9rem;color:var(--primary-dark);letter-spacing:.01em}.entry-actions{display:flex;gap:.35rem}.reorder-btn{background:linear-gradient(135deg,#fafbf0,#f0f1e0);border:1px solid rgba(187,191,69,.35);color:var(--primary-dark);width:28px;height:28px;border-radius:var(--radius-sm, 4px);font-size:.7rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;line-height:1;padding:0}.reorder-btn:hover:not(:disabled){background:linear-gradient(135deg,#eceece,#e0e1c8);border-color:var(--primary-color);box-shadow:0 1px 4px #bbbf4533;transform:translateY(-1px)}.reorder-btn:active:not(:disabled){transform:translateY(0);box-shadow:none}.reorder-btn:disabled{opacity:.3;cursor:not-allowed}.references-container{display:grid;gap:2rem}.reference-entry{padding:1.75rem;border:1px solid #E5E7EB;border-left:4px solid var(--primary-color);border-radius:var(--radius-md);background:linear-gradient(135deg,#fff,#fafbf8);box-shadow:0 1px 4px #0000000a;transition:all .25s ease}.reference-entry:hover{box-shadow:0 4px 16px #bbbf451a;border-left-width:5px}.reference-entry h4{color:var(--secondary-color);font-size:1.15rem;margin-bottom:1.25rem;padding-bottom:.5rem;border-bottom:2px solid rgba(187,191,69,.15);font-weight:700}.legal-notice,.info-box,.declaration-text,.final-notice{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:1px solid rgba(245,158,11,.3);border-left:4px solid #F59E0B;border-radius:var(--radius-md);padding:1.25rem 1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 4px #f59e0b14}.legal-notice{background:linear-gradient(135deg,#fff5f5,#fee2e2);border-color:#fca5a566;border-left-color:#ef4444;box-shadow:0 1px 4px #ef444414}.info-box{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#93c5fd66;border-left-color:#3b82f6;box-shadow:0 1px 4px #3b82f614}.declaration-text{background:linear-gradient(135deg,#fafbf0,#f5f6e8);border-color:#bbbf454d;border-left-color:var(--primary-color);box-shadow:0 1px 4px #bbbf4514}.legal-notice p,.info-box p,.declaration-text p,.final-notice p{margin-bottom:.5rem}.legal-notice p:last-child,.info-box p:last-child,.declaration-text p:last-child,.final-notice p:last-child{margin-bottom:0}.final-notice ul{margin-left:1.5rem;margin-top:.5rem}.final-notice li{margin-bottom:.25rem}.word-count,.character-count{font-size:.75rem;color:var(--text-secondary);text-align:right;margin-top:.25rem;font-weight:500;transition:color .3s ease}.form-navigation{display:flex;justify-content:space-between;align-items:center;margin-top:2rem;padding-top:2rem;border-top:2px solid var(--border-color)}.nav-btn{padding:var(--spacing-lg) var(--spacing-2xl);border:none;border-radius:var(--radius-xl);font-size:var(--font-size-xl);font-weight:700;cursor:pointer;transition:all .35s cubic-bezier(.4,0,.2,1);min-width:180px;position:relative;overflow:hidden;letter-spacing:.03em;box-shadow:0 2px 8px #00000014,0 4px 16px -4px #bbbf4526}.prev-btn{background:var(--surface-color);color:var(--text-secondary);border:2px solid var(--border-color);box-shadow:var(--shadow-sm)}.prev-btn:hover:not(:disabled){background:var(--background-secondary);border-color:var(--secondary-color);color:var(--secondary-color);transform:translateY(-2px);box-shadow:var(--shadow-md)}.next-btn{background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-dark) 100%);color:var(--text-on-primary);border:none;box-shadow:0 4px 14px #bbbf454d,inset 0 1px #fff3;text-shadow:0 1px 2px rgba(0,0,0,.1)}.submit-btn{background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);color:var(--text-on-primary);border:none;box-shadow:0 6px 20px #bbbf4559,inset 0 1px #fff3;text-shadow:0 1px 2px rgba(0,0,0,.15);font-size:calc(var(--font-size-xl) + .1rem);padding:calc(var(--spacing-lg) + .2rem) var(--spacing-2xl)}.next-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary-color) 100%);transform:translateY(-3px) scale(1.02);box-shadow:0 8px 28px #bbbf4566,inset 0 1px #ffffff40}.submit-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-dark) 0%,var(--secondary-color) 100%);transform:translateY(-3px) scale(1.03);box-shadow:0 10px 36px #bbbf4573,inset 0 1px #ffffff40}.nav-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.nav-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.nav-btn:hover:before{left:100%}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:1000}.loading-spinner{width:56px;height:56px;border:4px solid rgba(255,255,255,.15);border-top:4px solid var(--primary-color);border-right:4px solid var(--primary-light);border-radius:50%;animation:spin .8s cubic-bezier(.5,0,.5,1) infinite;margin-bottom:1.5rem;box-shadow:0 0 24px #bbbf454d}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-overlay p{color:#fff;font-size:1.2rem;font-weight:600;text-shadow:0 1px 4px rgba(0,0,0,.3);letter-spacing:.02em}.retrieve-banner{text-align:center;margin-bottom:1rem;padding:10px 16px;background:var(--surface-elevated);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.retrieve-banner a{color:var(--phase-primary-dark);font-weight:500}.retrieve-banner a:hover{color:var(--phase-primary);text-decoration:underline}.footer{text-align:center;padding:var(--spacing-xl) 0 var(--spacing-2xl);color:var(--text-muted);font-size:var(--font-size-sm);border-top:none;margin-top:auto;background:transparent;font-weight:500;letter-spacing:.02em}.footer:before{content:"";display:block;width:80px;height:3px;background:linear-gradient(90deg,transparent,var(--primary-color),transparent);margin:0 auto var(--spacing-lg) auto;border-radius:var(--radius-sm)}.application-page .container{max-width:1040px}.application-page .main-content{padding:clamp(.95rem,1.8vw,1.4rem);border-radius:var(--radius-lg);margin-bottom:var(--spacing-md);box-shadow:0 1px 2px #0000000a,0 6px 20px -12px #0f172a2e}.application-page .step-header{margin:0 0 1rem;padding:.9rem 1rem;border-radius:var(--radius-md);border-left:3px solid var(--primary-color);background:linear-gradient(135deg,var(--surface-elevated) 0%,var(--background-secondary) 100%);box-shadow:0 1px 6px var(--glow-primary)}.application-page .step-header h2{font-size:clamp(1.05rem,2vw,1.35rem);margin-bottom:.2rem;font-weight:700;color:var(--secondary-color)}.application-page .step-description{font-size:.92rem;font-weight:500;color:var(--text-secondary);opacity:.9}.application-page .form-section{margin-bottom:1rem;padding:1rem;border-radius:var(--radius-md);border-left:3px solid var(--phase-primary);box-shadow:0 1px 2px #00000008,0 4px 10px -8px #0f172a38}.application-page .form-section:hover{box-shadow:0 2px 8px #0f172a14,0 6px 14px -10px #bbbf4538}.application-page .form-section h3{font-size:1.02rem;margin-bottom:.8rem;padding-bottom:.45rem;border-bottom-width:1px}.application-page .form-section h3:before{width:4px;height:18px}.application-page .section-note{margin-bottom:.9rem;padding:.75rem .85rem}.application-page .form-group,.application-page .form-row{margin-bottom:.9rem}.application-page .form-row{gap:.9rem}.application-page label{font-size:.92rem;margin-bottom:.35rem;font-weight:600;letter-spacing:.012em}.application-page input[type=text],.application-page input[type=email],.application-page input[type=tel],.application-page input[type=date],.application-page input[type=number],.application-page select,.application-page textarea{padding:.66rem .82rem;font-size:.95rem;border-width:1.5px;border-radius:var(--radius-sm)}.application-page textarea{min-height:84px;line-height:1.45}.application-page .radio-group{gap:.7rem}.application-page .radio-custom,.application-page .checkbox-custom{width:18px;height:18px}.application-page .error-message{font-size:.82rem;padding:.4rem .65rem;border-left-width:3px;margin-top:.35rem}.application-page .education-entry,.application-page .membership-entry,.application-page .training-entry,.application-page .previous-employment-entry,.application-page .voluntary-work-entry,.application-page .disciplinary-entry,.application-page .employment-gap-entry{padding:.9rem;margin-bottom:.75rem}.application-page .reference-entry{padding:1rem}.application-page .reference-entry h4{font-size:1rem;margin-bottom:.8rem}.application-page .legal-notice,.application-page .info-box,.application-page .declaration-text,.application-page .final-notice{padding:.9rem 1rem;margin-bottom:.9rem}.application-page .word-count,.application-page .character-count{font-size:.72rem}.application-page .form-navigation{margin-top:1.25rem;padding-top:1.1rem;border-top-width:1px}.application-page .nav-btn{min-width:132px;padding:.78rem 1.1rem;border-radius:.9rem;font-size:.95rem;letter-spacing:.01em;box-shadow:0 1px 4px #00000014,0 2px 10px -6px #bbbf4540}.application-page .submit-btn{font-size:.98rem;padding:.8rem 1.15rem}.application-page .prev-btn:hover:not(:disabled),.application-page .next-btn:hover:not(:disabled),.application-page .submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #0f172a24,0 6px 16px -10px #bbbf4547}.confirmation-container{text-align:center;max-width:800px;margin:0 auto;padding:2rem}.success-icon{margin-bottom:2rem}.confirmation-container h2{font-size:2rem;color:var(--success-color);margin-bottom:2rem}.confirmation-message{font-size:1.125rem;color:var(--text-secondary);margin-bottom:2rem;line-height:1.7}.duplicate-submission-notice{margin:1rem 0;padding:.75rem .875rem;border-radius:var(--radius-md);border:1px solid var(--warning-color);background:#fffbeb;color:#92400e;font-size:.95rem;line-height:1.4}.email-delivery-warning-notice{margin:1rem 0;padding:.75rem .875rem;border-radius:var(--radius-md);border:1px solid #f97316;background:#fff7ed;color:#9a3412;font-size:.95rem;line-height:1.4}.reference-info{background:var(--background-color);border:2px solid var(--success-color);border-radius:var(--radius-md);padding:1.5rem;margin-bottom:2rem}.reference-info h3{color:var(--text-primary);margin-bottom:1rem}.reference-number{font-size:1.5rem;font-weight:700;color:var(--success-color);font-family:Courier New,monospace;margin-bottom:.5rem}.reference-note{font-size:.875rem;color:var(--text-secondary)}.next-steps,.important-notes,.contact-details{text-align:left;margin-bottom:2rem;padding:1.5rem;background:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--radius-md)}.next-steps h3,.important-notes h3,.contact-details h3{color:var(--primary-color);margin-bottom:1rem;font-size:1.25rem}.next-steps ul{margin-left:1.5rem}.next-steps li{margin-bottom:.5rem;line-height:1.6}.info-grid{display:grid;gap:1rem;margin-top:1rem}.info-item h4{color:var(--text-primary);margin-bottom:.5rem;font-size:1rem}.info-item p{color:var(--text-secondary);font-size:.875rem;line-height:1.5}.contact-info p{margin-bottom:.25rem;color:var(--text-secondary)}.action-buttons{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.btn{padding:.75rem 1.5rem;border:none;border-radius:var(--radius-sm);font-size:1rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all .2s ease;display:inline-block}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--surface-color);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--background-color);border-color:var(--text-secondary)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mt-0{margin-top:0}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.hidden{display:none}.visible{display:block}@media(max-width:1024px){.container{padding:0 1.5rem}.main-content{padding:1.5rem}.application-page .main-content{padding:1rem}.application-page .step-header{padding:.8rem .9rem;margin-bottom:.9rem}.application-page .step-header h2{font-size:1.1rem}.application-page .form-section{padding:.9rem;margin-bottom:.85rem}.application-page .form-section h3{font-size:.98rem}.application-page label{font-size:.88rem}.application-page input[type=text],.application-page input[type=email],.application-page input[type=tel],.application-page input[type=date],.application-page input[type=number],.application-page select,.application-page textarea{font-size:.92rem}.form-row{grid-template-columns:1fr;gap:.75rem}.form-row.three-col{grid-template-columns:1fr}.step-header h2{font-size:1.5rem}.logo-section h1{font-size:2rem}.references-container{gap:1.5rem}.action-buttons{flex-direction:column;align-items:center}.btn{width:100%;max-width:300px}}@media(max-width:768px){.container{padding:0 1rem}.header{padding:1.5rem 0;margin-bottom:1.5rem}.header-compact{padding:1rem;margin:1rem 0;border-radius:var(--radius-md)}.header-compact .compact-header-content{gap:.75rem}.header-compact .compact-header-logo{width:48px;height:48px}.header-compact .header-logo-image{width:36px;height:36px}.header-compact .compact-header-text h1{font-size:1.1rem}.header-compact .compact-header-text p{font-size:.82rem}.header-compact .progress-container{margin-top:.75rem;padding:.7rem .85rem}.header-compact .step-indicator{width:32px;height:32px}.application-page .main-content{padding:.85rem}.application-page .step-header{padding:.72rem .8rem;margin-bottom:.8rem}.application-page .step-header h2{font-size:1rem}.application-page .step-description{font-size:.8rem}.application-page .form-section{padding:.8rem;margin-bottom:.8rem}.application-page .form-section h3{font-size:.95rem;margin-bottom:.65rem}.application-page label{font-size:.85rem}.application-page input[type=text],.application-page input[type=email],.application-page input[type=tel],.application-page input[type=date],.application-page input[type=number],.application-page select,.application-page textarea{padding:.58rem .65rem;font-size:.9rem}.application-page textarea{min-height:74px}.application-page .form-navigation{margin-top:.95rem;padding-top:.9rem;gap:.75rem}.application-page .nav-btn{padding:.8rem 1rem;font-size:.92rem}.logo-section h1{font-size:1.75rem}.subtitle{font-size:1rem}.progress-container{margin-top:1.5rem}.step-indicators{gap:.5rem}.step-indicator{width:35px;height:35px;font-size:.75rem}.main-content{padding:1rem;margin-bottom:1rem}.step-header{margin-bottom:1.5rem;padding-bottom:.75rem}.step-header h2{font-size:1.25rem}.step-description{font-size:.875rem}.form-section{padding:1rem;margin-bottom:1.5rem}.form-section h3{font-size:1.125rem}.form-group,.form-row{margin-bottom:1rem}.radio-group{flex-direction:column;gap:.75rem}.reference-entry,.education-entry,.membership-entry,.training-entry,.previous-employment-entry,.voluntary-work-entry,.disciplinary-entry,.employment-gap-entry{padding:.75rem}.form-navigation{flex-direction:row;flex-wrap:nowrap;gap:.6rem;margin-top:1.25rem;padding:.6rem .75rem;padding-bottom:calc(.6rem + env(safe-area-inset-bottom,0px));position:sticky;bottom:0;background:var(--surface-color, #fff);border-top:1px solid var(--border-color, #e5e7eb);box-shadow:0 -4px 12px #0000000f;z-index:10}.nav-btn{flex:1 1 0;min-width:0;padding:.9rem .5rem;font-size:1rem}.form-step{padding-bottom:1rem}.confirmation-container{padding:1rem}.confirmation-container h2{font-size:1.5rem}.reference-number{font-size:1.25rem}.info-grid{grid-template-columns:1fr}.next-steps,.important-notes,.contact-details{padding:1rem}.footer{padding:1.5rem 0}}@media(max-width:768px){.step-label{display:none}}@media(max-width:480px){.container{padding:0 .75rem}.header{padding:1rem 0}.header-compact{padding:.75rem;margin:.75rem 0}.header-compact .compact-header-text p{display:none}.header-compact .step-indicators{gap:.4rem}.header-compact .step-indicator{width:28px;height:28px;font-size:.7rem}.application-page .main-content{padding:.65rem}.application-page .step-header{padding:.62rem .7rem;margin-bottom:.7rem}.application-page .step-header h2{font-size:.94rem}.application-page .step-description{font-size:var(--font-size-xs);line-height:1.3}.application-page .form-section{padding:.7rem;margin-bottom:.72rem}.application-page .form-section h3{font-size:.9rem}.application-page label{font-size:.82rem}.application-page input[type=text],.application-page input[type=email],.application-page input[type=tel],.application-page input[type=date],.application-page input[type=number],.application-page select,.application-page textarea{padding:.54rem .6rem;font-size:.86rem}.application-page .form-navigation{gap:.65rem;margin-top:.8rem;padding-top:.8rem}.application-page .nav-btn{padding:.72rem .85rem;font-size:.86rem;border-radius:.75rem}.logo-section h1{font-size:1.5rem}.subtitle{font-size:.875rem}.step-indicators{justify-content:space-around}.step-indicator{width:30px;height:30px;font-size:.7rem}.main-content{padding:.75rem;border-radius:var(--radius-sm)}.step-header h2{font-size:1.125rem}.form-section{padding:.75rem}.form-section h3{font-size:1rem}input[type=text],input[type=email],input[type=tel],input[type=date],input[type=number],select,textarea{padding:.625rem;font-size:.875rem}.add-entry-btn{padding:.625rem .75rem;font-size:.8rem}.legal-notice,.info-box,.declaration-text,.final-notice{padding:.75rem;font-size:.875rem}.confirmation-container{padding:.75rem}.confirmation-container h2{font-size:1.25rem;margin-bottom:1.5rem}.confirmation-message{font-size:1rem}.reference-info{padding:1rem}.reference-number{font-size:1.125rem}.next-steps,.important-notes,.contact-details{padding:.75rem}.next-steps h3,.important-notes h3,.contact-details h3{font-size:1.125rem}.action-buttons{gap:.75rem}.btn{padding:.875rem 1rem;font-size:.875rem}}@media print{body{background:#fff;color:#000;font-size:12pt;line-height:1.4}.container{max-width:none;padding:0}.header{border-bottom:2px solid #000;margin-bottom:1rem;padding-bottom:1rem}.progress-container,.form-navigation,.loading-overlay,.add-entry-btn,.entry-actions,.remove-entry-btn,.retrieve-banner{display:none!important}.main-content{box-shadow:none;border:1px solid #000;padding:1rem}.form-step{display:block!important;page-break-inside:avoid}.form-section{border:1px solid #ccc;margin-bottom:1rem;page-break-inside:avoid}.step-header{page-break-after:avoid}.reference-entry,.education-entry,.membership-entry,.training-entry,.previous-employment-entry,.voluntary-work-entry,.disciplinary-entry,.employment-gap-entry{border:1px solid #ccc;page-break-inside:avoid}.legal-notice,.info-box,.declaration-text,.final-notice{border:2px solid #000;background:#f5f5f5!important}.confirmation-container{text-align:left}.success-icon,.action-buttons{display:none}.reference-info{border:2px solid #000;background:#f0f0f0!important}.reference-number{color:#000!important}}@media(prefers-contrast:high){:root{--primary-color: #0000ff;--primary-dark: #000080;--text-primary: #000000;--text-secondary: #333333;--border-color: #000000;--background-color: #ffffff;--surface-color: #ffffff;--error-color: #cc0000;--success-color: #008000}.form-section,input[type=text],input[type=email],input[type=tel],input[type=date],input[type=number],select,textarea,.radio-custom,.checkbox-custom{border:2px solid var(--border-color)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.form-step{animation:none}.loading-spinner{animation:none;border:4px solid var(--primary-color)}}@supports selector(:focus-visible){input:focus,select:focus,textarea:focus,button:focus{outline:none}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}}@media(max-width:768px)and (orientation:landscape){.header{padding:1rem 0}.header-compact{padding:.75rem 1rem}.header-compact .progress-container{margin-top:.6rem}.progress-container{margin-top:1rem}.main-content{margin-bottom:.5rem}.form-section{margin-bottom:1rem}.form-navigation{margin-top:1rem;padding-top:1rem}}@media(hover:none)and (pointer:coarse){.nav-btn,.add-entry-btn,.btn{min-height:44px;padding:.75rem 1rem}.radio-custom,.checkbox-custom{width:24px;height:24px}.step-indicator{width:44px;height:44px}input[type=text],input[type=email],input[type=tel],input[type=date],input[type=number],select,textarea{min-height:44px;padding:.75rem}}
