.container{max-width:1200px;margin:0 auto;padding:0 20px}.score-fill,.score-bar-fill{height:100%;transition:width .5s ease;border-radius:6px}.fill-excellent,.score-fill-20{background:linear-gradient(90deg,var(--color-low-gradient) 0%,var(--color-low) 100%)}.fill-good,.score-fill-40{background:linear-gradient(90deg,var(--color-moderate-gradient) 0%,var(--color-moderate) 100%)}.fill-moderate,.score-fill-60{background:linear-gradient(90deg,var(--color-warning-gradient) 0%,var(--color-warning) 100%)}.fill-poor,.score-fill-80{background:linear-gradient(90deg,var(--color-high-gradient) 0%,var(--color-high) 100%)}.fill-critical,.score-fill-100{background:linear-gradient(90deg,var(--color-critical-gradient) 0%,var(--color-critical) 100%)}.score-card{background:var(--light-background);border:1px solid var(--primary-color);border-radius:15px;padding:1.5rem;box-shadow:0 5px 15px var(--shadow-color);border-left:4px solid var(--sage-medium)}.score-card h3{margin-bottom:1rem;text-align:center}.score-card.score-excellent,.score-card.score-20{border-left:4px solid var(--color-low)}.score-card.score-good,.score-card.score-40{border-left:4px solid var(--color-moderate)}.score-card.score-moderate,.score-card.score-60{border-left:4px solid var(--color-warning)}.score-card.score-poor,.score-card.score-80{border-left:4px solid var(--color-high)}.score-card.score-critical,.score-card.score-100{border-left:4px solid var(--color-critical)}.text-excellent,.score-20b{border:2px solid var(--color-low)}.text-good,.score-40b{border:2px solid var(--color-moderate)}.text-moderate,.score-60b{border:2px solid var(--color-warning)}.text-poor,.score-80b{border:2px solid var(--color-high)}.text-critical,.score-100b{border:2px solid var(--color-critical)}.score-bar-container{height:12px;min-height:12px;width:100%;margin-top:12px;background:var(--color-white);border-radius:4px;border:1px solid var(--primary-color)}.score-value,.score-value-center{font-size:1.5rem;font-weight:500;color:var(--sage-dark);margin-bottom:.5rem}.score-value-center{text-align:center}.score-description{font-size:1rem;text-align:center;color:var(--slate-gray);border-radius:10px;margin:0}.scores-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.score-summary{margin-bottom:3rem}.score-summary h2{color:var(--sage-dark);margin-bottom:2rem;text-align:center}.progress-container,.progress-bar{width:100%;height:8px;background-color:var(--light-background);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary-color) 0%,var(--accent-color) 100%);transition:width .5s ease;border-radius:4px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.spinner{width:6rem;height:6rem;border:4px solid var(--color-off-white);border-top-color:var(--color-sage-dark);border-radius:50%;animation:spin 1s linear infinite}.grid-auto-fit{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.grid-auto-fit-250{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.grid-auto-fit-200{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.modal-overlay{position:fixed;inset:0;background-color:var(--modal-overlay);display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem}.modal-content{background:var(--color-white);border-radius:1rem;max-width:900px;width:100%;max-height:80vh;overflow-y:auto;box-shadow:0 10px 25px var(--shadow-overlay);animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:2px solid var(--color-sage-light);background:var(--color-off-white);border-radius:1rem 1rem 0 0}.modal-header h2{font-size:1.5rem;font-weight:700;color:var(--color-sage-dark);margin:0}.modal-header .modal-close{background:none;border:none;font-size:2rem;color:var(--color-gray-500);cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.modal-header .modal-close:hover{color:var(--color-sage-dark)}.modal-body{padding:2rem}.modal-footer{display:flex;justify-content:center;padding-top:1.5rem;border-top:1px solid var(--color-sage-light)}.modal-footer .close-button,.modal-footer .modal-close-btn{padding:.5rem 1rem;background-color:var(--color-sage-dark);color:var(--color-white);border:none;border-radius:.375rem;font-size:.625rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px var(--shadow-color)}.modal-footer .close-button:hover,.modal-footer .modal-close-btn:hover{background-color:var(--color-sage-pale);box-shadow:0 4px 6px var(--shadow-medium);transform:translateY(-1px)}.modal-footer .close-button:active,.modal-footer .modal-close-btn:active{transform:translateY(0);box-shadow:0 2px 4px var(--shadow-color)}@media(max-width:768px){.modal-content{max-width:100%;max-height:90vh;margin:.5rem}.modal-header{padding:1rem 1.5rem}.modal-header h2{font-size:1.25rem}.modal-body{padding:1.5rem}}.btn-base,.toggle-button,.btn-secondary,.btn-primary,.submit-button,.btn-submit,.close-button,.btn-close,.view-button,.action-button{padding:.5rem 1rem;border:none;border-radius:.375rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px var(--shadow-color);font-size:.875rem}.btn-base:hover:not(:disabled),.toggle-button:hover:not(:disabled),.btn-secondary:hover:not(:disabled),.btn-primary:hover:not(:disabled),.submit-button:hover:not(:disabled),.btn-submit:hover:not(:disabled),.close-button:hover:not(:disabled),.btn-close:hover:not(:disabled),.view-button:hover:not(:disabled),.action-button:hover:not(:disabled){box-shadow:0 4px 6px var(--shadow-medium);transform:translateY(-1px)}.btn-base:active:not(:disabled),.toggle-button:active:not(:disabled),.btn-secondary:active:not(:disabled),.btn-primary:active:not(:disabled),.submit-button:active:not(:disabled),.btn-submit:active:not(:disabled),.close-button:active:not(:disabled),.btn-close:active:not(:disabled),.view-button:active:not(:disabled),.action-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 4px var(--shadow-color)}.btn-base:disabled,.toggle-button:disabled,.btn-secondary:disabled,.btn-primary:disabled,.submit-button:disabled,.btn-submit:disabled,.close-button:disabled,.btn-close:disabled,.view-button:disabled,.action-button:disabled{opacity:.6;cursor:not-allowed}.btn-primary,.submit-button,.btn-submit,.close-button,.btn-close,.view-button,.action-button{background-color:var(--color-sage-dark);color:var(--color-white)}.btn-primary:hover:not(:disabled),.submit-button:hover:not(:disabled),.btn-submit:hover:not(:disabled),.close-button:hover:not(:disabled),.btn-close:hover:not(:disabled),.view-button:hover:not(:disabled),.action-button:hover:not(:disabled){background-color:var(--color-sage-pale)}.btn-secondary{background-color:var(--color-sage-light);color:var(--color-sage-dark)}.btn-secondary:hover:not(:disabled){background-color:var(--color-sage-pale);color:var(--color-white)}.btn-sm,.close-button,.btn-close,.action-button{font-size:.625rem;padding:.5rem 1rem}.btn-lg{font-size:1rem;padding:.75rem 1.5rem}.toggle-button{background:var(--color-off-white);color:var(--color-sage-dark);border:1px solid var(--color-sage-light);display:flex;align-items:center;gap:.5rem;font-size:.875rem}.toggle-button:hover:not(:disabled){background:var(--color-sage-light);border-color:var(--color-sage-dark)}.toggle-button .arrow{transition:transform .3s ease;display:inline-block}.toggle-button.expanded .arrow{transform:rotate(180deg)}.submit-button,.btn-submit{width:100%;padding:1rem 2rem;font-size:1rem}.more-button{background:none;border:none;color:var(--color-sage-dark);cursor:pointer;font-weight:600;padding:.25rem .5rem;text-decoration:underline;transition:color .2s ease}.more-button:hover{color:var(--color-sage-pale)}.content-page{min-height:100vh;background:var(--background-color);padding:2rem}.content-page .page-hero{text-align:center;margin-bottom:3rem;padding-bottom:2rem;border-bottom:2px solid var(--color-sage-light)}.content-page .page-hero h1{font-size:2.25rem;font-weight:700;color:var(--text-color);margin-bottom:1rem}.content-page .page-hero .hero-subtitle{font-size:1.0625rem;color:var(--color-gray-500);max-width:52rem;margin:0 auto;line-height:1.7}.content-page .content-body{max-width:52rem;margin:0 auto}.content-page .content-section{margin-bottom:1.75rem}.content-page .content-section h2{font-size:1.5rem;font-weight:700;color:var(--color-sage-dark);margin-bottom:0;padding:.875rem 1.25rem;background:var(--color-off-white);border-left:4px solid var(--color-sage-dark);border-radius:.75rem .75rem 0 0}.content-page .content-section .section-body{border-radius:0 0 .75rem .75rem;padding:1.25rem 1.5rem;box-shadow:var(--shadow-card-subtle)}.content-page .content-section .section-body p{color:var(--text-color);line-height:1.75;margin-bottom:1rem;font-size:.9375rem}.content-page .content-section .section-body p:last-child{margin-bottom:0}.content-page .content-section .section-body ul{padding-left:1.5rem;margin:0}.content-page .content-section .section-body ul li{color:var(--text-color);line-height:1.7;margin-bottom:.75rem;font-size:.9375rem}.content-page .content-section .section-body ul li strong{color:var(--color-sage-dark)}.content-page .cta-box{margin:2rem 0;padding:1.5rem;background:var(--color-off-white);border-radius:.75rem;border-left:4px solid var(--color-sage-dark);display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.content-page .cta-box p{margin:0;flex:1;color:var(--text-color);line-height:1.7;font-size:.9375rem}.content-page .cta-box a.btn-primary{white-space:nowrap}@media(max-width:768px){.content-page{padding:1rem}.content-page .page-hero h1{font-size:1.75rem}.content-page .cta-box{flex-direction:column;align-items:flex-start}}:root{--color-sage-light: #a7bfbf;--color-charcoal: #3e3e3e;--color-charcoal-light: #463c3c;--color-grey-dark: #575757;--color-grey-light: #859494;--color-grey-medium: #778b8b;--color-sage-medium: #6b8e8e;--color-sage-dark: #5a7d7d;--color-success: #3117c2;--color-grey-lighter: #a5a5a5;--color-light-grey: #e9f1f1;--color-sage-pale: #b8c9c9;--color-off-white: #f5f9f9;--color-error-message: #e74c3c;--color-low: #103fd6;--color-low-gradient: #aeb9db;--color-moderate: #0dccda;--color-moderate-gradient: #bbe5e7;--color-warning: #eb8f06e8;--color-warning-gradient: #e7cba0e8;--color-high: #e0634d;--color-high-gradient: #e2a69c;--color-critical: var(--color-error-message);--color-critical-gradient: #ecbeb9;--color-white: #ffffff;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-900: #111827;--color-indigo-100: #e0e7ff;--color-indigo-200: #c7d2fe;--color-indigo-500: #6366f1;--color-indigo-600: #4f46e5;--color-indigo-700: #4338ca;--color-green-500: #22c55e;--color-green-600: #16a34a;--color-yellow-500: #eab308;--color-alert-success-from: #d4edda;--color-alert-success-to: #c3e6cb;--color-alert-success-text: #155724;--color-alert-success-accent: #28a745;--color-alert-error-from: #f8d7da;--color-alert-error-to: #f5c6cb;--color-alert-error-text: #721c24;--color-alert-error-accent: #dc3545;--color-blue-50: #eff6ff;--color-blue-200: #bfdbfe;--color-blue-800: #1e40af;--color-red-50: #fef2f2;--color-red-200: #fecaca;--color-red-600: #dc2626;--color-form-success-bg: #d1fae5;--color-form-success-border: #6ee7b7;--color-form-success-text: #065f46;--color-form-error-bg: #fee2e2;--color-form-error-border: #fca5a5;--color-form-error-text: #991b1b;--color-input-border: #d0d0d0;--color-input-bg: #f8f8f8;--color-input-error-bg: #fff5f5;--color-near-charcoal: #5a5a5a;--shadow-color: rgba(0, 0, 0, .1);--shadow-color-dark: rgba(0, 0, 0, .25);--shadow-medium: rgba(0, 0, 0, .15);--shadow-overlay: rgba(0, 0, 0, .3);--shadow-sage-faint: rgba(107, 142, 142, .05);--shadow-sage-light: rgba(107, 142, 142, .1);--shadow-sage: rgba(107, 142, 142, .3);--shadow-sage-strong: rgba(107, 142, 142, .4);--shadow-indigo: rgba(99, 102, 241, .3);--shadow-indigo-strong: rgba(99, 102, 241, .4);--shadow-error: rgba(220, 38, 38, .2);--shadow-error-subtle: rgba(220, 38, 38, .01);--shadow-error-faint: rgba(220, 38, 38, .03);--shadow-success: rgba(34, 197, 94, .4);--shadow-charcoal: rgba(44, 44, 44, .15);--shadow-soft: rgba(0, 0, 0, .08);--shadow-error-medium: rgba(231, 76, 60, .5);--color-white-dim: rgba(255, 255, 255, .3);--color-border-light: #e0e0e0;--color-error-dark: #c53030;--shadow-card-subtle: 0 4px 10px rgba(0, 0, 0, .07), 0 1px 3px rgba(0, 0, 0, .05);--modal-overlay: rgba(0, 0, 0, .6);--primary-color: var(--color-sage-medium);--secondary-color: var(--color-charcoal);--accent-color: var(--color-sage-light);--text-color: var(--color-charcoal);--background-color: var(--color-sage-pale);--light-background: var(--color-light-grey);--light-white: var(--color-off-white)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;color:var(--text-color);background-color:var(--background-color)}h3{color:var(--sage-dark);margin-bottom:1rem;font-size:1.1rem}.site-link{color:var(--text-color);text-decoration:none;font-weight:500;transition:color .3s ease}.site-link:hover{color:var(--primary-color);cursor:pointer}.btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:.5rem;background:var(--primary-color);color:var(--color-white)}.btn:hover:not(:disabled){background:var(--color-grey-dark);transform:translateY(-2px)}.btn:disabled{opacity:.6;cursor:not-allowed}.btn .fa-spin{animation:spin 1s linear infinite}.btn-primary{background:linear-gradient(135deg,var(--color-sage-medium) 0%,var(--color-sage-dark) 100%)}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 16px var(--shadow-color-dark)}.btn-primary{color:var(--color-white)}.btn-secondary{background:var(--color-white);color:var(--color-sage-medium);border:2px solid var(--color-sage-light)}.btn-secondary:hover:not(:disabled){background:var(--color-sage-light);color:var(--text-color)}.btn-preview{background:var(--secondary-color);color:var(--color-white)}.btn-preview:hover:not(:disabled){background:var(--primary-color);transform:translateY(-2px);box-shadow:0 8px 16px var(--shadow-color)}.btn-edit{background:var(--accent-color);color:var(--color-white);padding:.5rem 1rem;font-size:.9rem}.btn-edit:hover:not(:disabled){background:var(--primary-color);transform:translateY(-2px);box-shadow:0 4px 8px var(--shadow-medium)}.error-message{color:var(--color-error-message);font-size:.9rem;margin-top:.5rem;display:flex;align-items:center;gap:.5rem}.error-text{color:var(--color-error-message);font-size:.85rem;margin-top:.5rem;display:flex;align-items:center;gap:.25rem}.alert{padding:1rem 1.5rem;border-radius:8px;margin-bottom:2rem;display:flex;align-items:center;gap:.75rem;font-size:1rem;animation:slideInDown .4s ease-out;box-shadow:0 4px 12px var(--shadow-medium)}.alert i{font-size:1.2rem}.alert-success{background:linear-gradient(135deg,var(--color-alert-success-from) 0%,var(--color-alert-success-to) 100%);color:var(--color-alert-success-text);border:2px solid var(--color-alert-success-accent);font-weight:600}.alert-success i{color:var(--color-alert-success-accent)}.alert-error{background:linear-gradient(135deg,var(--color-alert-error-from) 0%,var(--color-alert-error-to) 100%);color:var(--color-alert-error-text);border:2px solid var(--color-alert-error-accent);font-weight:600}.alert-error i{color:var(--color-alert-error-accent)}@keyframes slideInDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:.875rem;margin-bottom:2rem}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1/-1}.form-group.span-2{grid-column:span 2}.form-label{color:var(--secondary-color);font-weight:700;margin-bottom:.375rem;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.form-label .required{color:var(--color-error-message);font-size:.9rem}.form-input{padding:.5rem .75rem;border:1px solid var(--color-input-border);border-radius:4px;font-size:.9rem;background-color:var(--color-input-bg);box-shadow:inset 0 1px 3px var(--shadow-color);transition:all .2s ease;font-family:inherit}.form-input:focus{outline:none;border-color:var(--primary-color);background-color:var(--color-white);box-shadow:inset 0 1px 3px var(--shadow-color),0 0 0 3px var(--shadow-sage-light)}.form-input.ng-invalid.ng-touched{border-color:var(--color-error-message);background-color:var(--color-input-error-bg)}textarea.form-input{resize:vertical;min-height:80px}.char-counter{color:var(--color-grey-dark);font-size:.85rem;margin-top:.5rem;text-align:right;font-style:italic}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 0}.loading-container .spinner{width:50px;height:50px;border:4px solid var(--light-background);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.loading-container p{color:var(--color-grey-dark);font-size:1.1rem}.empty-state{text-align:center;padding:4rem 2rem;background:var(--light-white);border-radius:12px}.empty-state i{font-size:4rem;color:var(--color-grey-dark);margin-bottom:1rem;opacity:.5}.empty-state p{color:var(--secondary-color);font-size:1.2rem;margin-bottom:.5rem}.empty-state .empty-subtext{color:var(--color-grey-dark);font-size:1rem}.modal-overlay{position:fixed;inset:0;background:var(--modal-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease;padding:1rem}.modal-content{background:var(--color-white);border-radius:12px;box-shadow:0 8px 32px var(--shadow-overlay);width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;animation:slideIn .3s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:2px solid var(--light-background)}.modal-header h2{color:var(--secondary-color);margin:0;font-size:1.6rem}.modal-header .modal-close{background:none;border:none;font-size:1.5rem;color:var(--color-grey-dark);cursor:pointer;padding:.5rem;transition:color .2s ease}.modal-header .modal-close:hover{color:var(--color-error-message)}.modal-body{padding:2rem;overflow-y:auto;flex:1}.modal-footer{display:flex;justify-content:flex-end;padding:1.5rem 2rem;border-top:2px solid var(--light-background)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translateY(-50px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:768px){.assessment-container{padding:1rem}.section-title{flex-direction:column;text-align:center}.section-title h2{font-size:1.5rem}.question-container{padding:1.5rem}.answer-label{padding:.75rem 1rem}}@media(max-width:480px){.progress-header{flex-direction:column;align-items:flex-start;gap:.5rem}.question-text{font-size:1.1rem}.answer-text{font-size:1rem}}.profileName{font-weight:700;font-size:28px;color:var(--color-sage-dark);text-align:center}.profileNameDescription{font-weight:700;font-size:20px;color:var(--color-sage-dark);text-align:center}.headerTitle{font-weight:700;font-size:18px;padding-top:20px;margin-bottom:-6px;color:var(--color-sage-dark)}.title{font-weight:700;font-size:16px;margin:10px 0 0 4px;color:var(--color-sage-dark)}.newP{margin:10px 0 4px 12px}.bullet{margin-left:1.3rem}.bulletedList{padding:1.3rem 0}
