:root{--primary-red: #c12b2b;--primary-blue: #0068b3;--dark-blue: #104566;--accent-orange: #d4681a;--light-gray: #f4f7fa;--border-color: #ccd5de;--text-color: #333;--white: #fff;--black: #000;--bg-color: #f0f4f8}body{margin:0;font-family:Roboto,sans-serif;background-color:var(--bg-color);color:var(--text-color);min-height:100vh;box-sizing:border-box}#root{width:100%}.page-content{width:100%;max-width:1568px;display:flex;flex-direction:column;margin:0 auto;padding:2rem;box-sizing:border-box}.top-bar{background-color:var(--dark-blue);box-shadow:0 4px 14px #10456633}.top-bar-content{display:flex;justify-content:space-between;align-items:center;padding:.75rem 2rem;max-width:1568px;margin:0 auto;box-sizing:border-box}.social-links{display:flex;align-items:center;gap:1.25rem}.social-links a{color:var(--light-gray);text-decoration:none;font-size:1.2rem;transition:color .3s ease,transform .3s ease}.social-links a:hover{color:var(--primary-red);transform:translateY(-2px)}.language-switcher{display:flex;align-items:center;gap:.5rem}.lang-btn{background:none;border:none;color:var(--light-gray);cursor:pointer;font-family:Montserrat,sans-serif;font-size:.9rem;font-weight:500;padding:.25rem;transition:color .3s}.lang-btn.active{color:var(--white);font-weight:700}.lang-btn:not(.active):hover{color:var(--white)}.lang-separator{color:var(--primary-blue);font-size:1rem}.site-header{text-align:center;padding-bottom:2rem}.site-header img{max-width:180px;height:auto;opacity:.9}.site-header h1{font-family:Montserrat,sans-serif;font-size:2.2rem;color:var(--dark-blue);margin-top:1rem;margin-bottom:0;font-weight:700}.form-container{background-color:var(--white);padding:2.5rem 3rem;border-radius:16px;box-shadow:0 10px 25px -5px #1045661a,0 10px 10px -5px #1045660a;width:100%;box-sizing:border-box;border:1px solid #e5eaf0}.progress-bar{display:flex;justify-content:space-between;list-style:none;padding:0;margin-bottom:2rem;position:relative}.progress-bar:before{content:"";position:absolute;top:20px;left:0;width:100%;height:2px;background-color:var(--border-color);transform:translateY(-50%)}.progress-bar .progress-line{position:absolute;top:20px;left:0;height:2px;background-color:var(--primary-blue);transform:translateY(-50%);z-index:1;transition:width .4s ease-in-out}.step{position:relative;z-index:2;text-align:center;flex:1}.step-icon{width:40px;height:40px;border-radius:50%;background-color:var(--white);border:2px solid var(--border-color);display:flex;justify-content:center;align-items:center;margin:0 auto 10px;font-size:1.1rem;color:var(--border-color);transition:all .4s ease}.step-label{font-family:Montserrat,sans-serif;font-size:.85rem;color:#a0aec0;font-weight:600;transition:all .4s ease}.step.active .step-icon{border-color:var(--primary-blue);color:var(--primary-blue)}.step.active .step-label{color:var(--primary-blue)}.step.completed .step-icon{background-color:var(--primary-blue);color:var(--white);border-color:var(--primary-blue)}.step.completed .step-label{color:var(--dark-blue)}.step-header{text-align:center;margin-bottom:2.5rem}.step-header h2{font-family:Montserrat,sans-serif;font-size:1.8rem;color:var(--dark-blue);margin:0 0 .5rem;font-weight:700}.step-header p{font-size:1.05rem;color:#5a6e82;margin:0 auto;max-width:550px}.form-step{animation:fadeIn .5s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.form-section-header{grid-column:1 / -1;font-family:Montserrat,sans-serif;color:var(--dark-blue);margin-top:2rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color);font-size:1rem;font-weight:700}.form-section-header:first-of-type{margin-top:0}.form-group{margin-bottom:1.75rem}.form-group label{display:block;font-family:Montserrat,sans-serif;font-weight:600;font-size:.9rem;margin-bottom:.5rem;color:var(--dark-blue)}.form-group input,.form-group select{width:100%;padding:.8rem 1rem;border-radius:8px;border:1px solid var(--border-color);font-size:1rem;font-family:Roboto,sans-serif;box-sizing:border-box;background-color:#fdfdff;transition:border-color .2s,box-shadow .2s;color:var(--text-color)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #0068b333}.form-group.error label{color:var(--primary-red)}.form-group.error input,.form-group.error select,.form-group.error textarea{border-color:var(--primary-red);background-color:#fff8f8}.form-group.error input:focus,.form-group.error select:focus,.form-group.error textarea:focus{border-color:var(--primary-red);box-shadow:0 0 0 3px #c12b2b33}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 1.5rem}.form-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:0 1.5rem}.form-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:0 1.5rem}.form-group-nested{grid-column:1 / -1;margin-top:-1rem;animation:fadeIn .5s ease-in-out}.form-group.full-width{grid-column:1 / -1}.form-group select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23667085' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1.2em;padding-right:2.5em}.button-group{display:flex;justify-content:space-between;align-items:center;margin-top:3rem;padding-top:1.5rem;border-top:1px solid #e2e8f0}.btn{padding:.8rem 1.75rem;border:none;border-radius:8px;font-size:1rem;font-family:Montserrat,sans-serif;font-weight:700;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem}.btn:disabled{background-color:#ccc;cursor:not-allowed;transform:none}.btn:disabled:hover{background-color:#ccc;box-shadow:none}.btn-primary{background-color:var(--primary-red);color:var(--white);box-shadow:0 4px 14px #c12b2b33}.btn-primary:not(:disabled):hover{background-color:#a52424;transform:translateY(-2px);box-shadow:0 6px 16px #c12b2b40}.btn-secondary{background-color:var(--white);color:var(--dark-blue);border:1px solid var(--border-color)}.btn-secondary:not(:disabled):hover{background-color:#f8f9fa;border-color:#b6c1ce}.review-section{background-color:#f8fafc;border-radius:8px;padding:1.5rem;border:1px solid #e2e8f0}.review-section h3{font-family:Montserrat,sans-serif;color:var(--dark-blue);border-bottom:1px solid var(--border-color);padding-bottom:.75rem;margin-top:0;margin-bottom:1.5rem;font-size:1.2rem}.review-details{display:grid;grid-template-columns:max-content auto;gap:.75rem 2rem}.review-details dt{font-weight:600;color:var(--dark-blue);font-size:.9rem;grid-column:1}.review-details dd{margin-left:0;color:#555;font-size:.9rem;grid-column:2;word-break:break-word}.review-details hr{grid-column:1 / -1;border:none;border-top:1px solid #e2e8f0;margin:.5rem 0}.percentage-summary{margin-top:2.5rem;padding:1.5rem;border-radius:8px;background-color:var(--light-gray);border:1px solid var(--border-color);text-align:center;font-family:Montserrat,sans-serif}.percentage-total{font-size:1.2rem;color:var(--dark-blue);margin-bottom:.75rem}.percentage-total strong{font-size:1.5rem;color:var(--primary-blue);font-weight:700}.percentage-warning{color:var(--accent-orange);font-weight:600;font-size:.95rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.percentage-summary.error .percentage-warning{padding:.5rem;border:1px solid var(--accent-orange);border-radius:8px;background-color:#fffaf5}.form-question{margin-bottom:2rem;padding:1.5rem;border-radius:12px;background-color:#f8fafc;border:1px solid #e2e8f0}.form-question:last-of-type{margin-bottom:0}.form-question p{margin:0 0 1rem;font-weight:600;color:var(--dark-blue);line-height:1.5;font-size:1rem}.switch-group{display:flex;align-items:center;gap:.75rem}.switch-group span{font-size:.9rem;color:var(--text-color);font-weight:500}.switch-btn{position:relative;display:inline-block;width:52px;height:28px}.switch-btn input{opacity:0;width:0;height:0}.switch-btn .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;-webkit-transition:.4s;transition:.4s;border-radius:28px}.switch-btn .slider:before{position:absolute;content:"";height:20px;width:20px;left:4px;bottom:4px;background-color:#fff;-webkit-transition:.4s;transition:.4s;border-radius:50%;box-shadow:0 1px 3px #0003}.switch-btn input:checked+.slider{background-color:var(--primary-blue)}.switch-btn input:focus+.slider{box-shadow:0 0 1px var(--primary-blue)}.switch-btn input:checked+.slider:before{-webkit-transform:translateX(24px);-ms-transform:translateX(24px);transform:translate(24px)}.explanation-field{margin-top:1rem;animation:fadeIn .5s ease-in-out}.explanation-field label{display:block;font-family:Montserrat,sans-serif;font-weight:600;font-size:.85rem;margin-bottom:.5rem;color:var(--dark-blue)}.explanation-field textarea{width:100%;padding:.8rem 1rem;border-radius:8px;border:1px solid var(--border-color);font-size:1rem;font-family:Roboto,sans-serif;box-sizing:border-box;background-color:var(--white);transition:border-color .2s,box-shadow .2s;resize:vertical;min-height:80px;color:var(--text-color)}.explanation-field textarea:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #0068b333}.explanation-field.error label{color:var(--primary-red)}.explanation-field.error textarea{border-color:var(--primary-red);background-color:#fff8f8}.explanation-field.error textarea:focus{border-color:var(--primary-red);box-shadow:0 0 0 3px #c12b2b33}.parent-history-grid{display:grid;grid-template-columns:1fr 2fr;gap:0 1.5rem;align-items:start;margin-top:2rem}.parent-history-grid .form-grid{margin-top:0}.parent-history-grid .form-group{margin-bottom:0}.parent-history-grid+.parent-history-grid{margin-top:1.75rem}.auth-text{margin-top:2.5rem;padding:1.5rem;border-radius:8px;background-color:#f8fafc;border:1px solid var(--border-color);font-size:.9rem;color:#5a6e82;line-height:1.6;text-align:center}.success-container{text-align:center;padding:4rem 2rem;background-color:var(--white);border-radius:16px;box-shadow:0 10px 25px -5px #1045661a;animation:fadeIn .5s ease-in-out}.success-container .icon{font-size:4rem;color:var(--primary-blue);margin-bottom:1.5rem}.success-container h2{font-family:Montserrat,sans-serif;font-size:2rem;color:var(--dark-blue);margin-bottom:1rem}.success-container p{font-size:1.1rem;color:#5a6e82;max-width:500px;margin:0 auto;line-height:1.6}@media (max-width: 1200px) and (min-width: 769px){.form-grid-4{grid-template-columns:1fr 1fr}.form-grid-3{grid-template-columns:1fr}}@media (max-width: 820px){.progress-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem 1rem}.progress-bar:before,.progress-bar .progress-line{display:none}.step{flex:initial}}@media (max-width: 768px){.site-header h1{font-size:1.8rem}.form-grid,.form-grid-3,.form-grid-4{grid-template-columns:1fr;gap:0}.parent-history-grid{grid-template-columns:1fr;gap:0;margin-top:0}.parent-history-grid .form-group{margin-bottom:1.75rem}.parent-history-grid+.parent-history-grid{margin-top:0}.review-details{grid-template-columns:1fr;gap:.25rem}.review-details dt,.review-details dd{grid-column:auto}.review-details dd{margin-bottom:.75rem}.step-header h2{font-size:1.6rem}.step-header p{font-size:1rem}}@media (max-width: 600px){.page-content{padding:1rem}.top-bar-content{flex-direction:column;gap:1rem;align-items:center;padding:1rem}.form-container{padding:1.5rem;border-radius:12px}.site-header{padding-bottom:1.5rem}.site-header img{max-width:150px}.site-header h1{font-size:1.5rem}.step-label{display:none}.button-group{flex-direction:column-reverse;gap:.75rem}.btn{width:100%;justify-content:center}}.address-checkbox-group{display:flex;align-items:center;gap:.5rem;margin-top:.5rem;margin-bottom:1.75rem}.address-checkbox-group input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--primary-blue);cursor:pointer}.address-checkbox-group label{font-size:.85rem;color:var(--dark-blue);font-weight:500;margin-bottom:0;cursor:pointer;-webkit-user-select:none;user-select:none}
