body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.App{display:flex;flex-direction:column;min-height:100vh}.navbar{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 10px #0000001a;color:#fff;padding:1rem 0}.nav-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 2rem}.nav-title{font-size:1.5rem;font-weight:600}.nav-buttons{display:flex;gap:1rem}.nav-btn{background:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .3s ease}.nav-btn:hover{background:#fff3;transform:translateY(-1px)}.nav-btn.active{background:#ffffff4d;border-color:#fff6}.nav-btn.logout{background:#dc3545cc;border-color:#dc3545e6}.nav-btn.logout:hover{background:#dc3545}.main-content{flex:1 1;margin:0 auto;max-width:1200px;padding:2rem;width:100%}.card{background:#fff;border:1px solid #e1e5e9;border-radius:12px;box-shadow:0 4px 6px #00000012;padding:1.5rem;transition:all .3s ease}.card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.btn{border:none;border-radius:6px;cursor:pointer;display:inline-block;font-size:.9rem;font-weight:500;padding:.75rem 1.5rem;text-align:center;text-decoration:none;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#5a6268;transform:translateY(-1px)}.btn-success{background:#28a745;color:#fff}.btn-success:hover{background:#218838;transform:translateY(-1px)}.btn-danger{background:#dc3545;color:#fff}.btn-danger:hover{background:#c82333;transform:translateY(-1px)}.form-group{margin-bottom:1rem}.form-label{font-weight:500}.form-control{border:1px solid #ddd;border-radius:6px;font-size:1rem;padding:.75rem;transition:border-color .3s ease}.client-mode .navbar{background:linear-gradient(135deg,#667eea,#764ba2)}.client-mode .nav-title{color:#fff}.client-mode .nav-btn{background:#fff3;border:1px solid #ffffff4d;color:#fff}.client-mode .nav-btn:hover{background:#ffffff4d}.client-instructions{background:#e8f4fd;border:1px solid #bee5eb;border-radius:8px;color:#0c5460;margin:1rem 0;padding:1rem}.client-instructions p{font-size:.95rem;margin:0}.loading-screen{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh}.loading-container{background:#fff;border-radius:20px;box-shadow:0 20px 40px #0000001a;max-width:400px;padding:3rem;text-align:center;width:90%}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:50px;margin:0 auto 2rem;width:50px}.loading-container h2{color:#333;margin-bottom:1rem}.loading-container p{color:#666;margin-bottom:1rem}.loading-container .error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#721c24;margin-top:1rem;padding:1rem}.loading-container .error-message button{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;margin-top:.5rem;padding:.5rem 1rem}.loading-container .error-message button:hover{background:#c82333}@media (max-width:768px){.nav-container{flex-direction:column;gap:1rem;padding:0 1rem}.nav-buttons{flex-wrap:wrap;justify-content:center}.main-content{padding:1rem}.loading-container{margin:1rem;padding:2rem}}.client-dashboard{margin:0 auto;max-width:1200px}.dashboard-header{margin-bottom:2rem;text-align:center}.dashboard-header h2{color:#333;font-size:2rem;font-weight:600;margin-bottom:.5rem}.dashboard-header p{color:#666;font-size:1.1rem}.search-section{margin-bottom:2rem}.search-container{margin:0 auto;max-width:500px;text-align:center}.search-input{background:#fff;border:2px solid #ddd;border-radius:12px;font-size:1.1rem;padding:1rem;transition:all .3s ease;width:100%}.search-input:focus{border-color:#667eea;box-shadow:0 0 0 4px #667eea1a;outline:none}.search-results{color:#666;font-size:.9rem;margin-top:.5rem}.clients-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-bottom:2rem}.client-card{background:#fff;border:1px solid #e1e5e9;border-radius:16px;box-shadow:0 4px 12px #00000014;padding:1.5rem;position:relative;transition:all .3s ease}.client-card:hover{box-shadow:0 8px 25px #0000001f;transform:translateY(-4px)}.client-header{justify-content:space-between;margin-bottom:1rem}.client-header,.client-id{align-items:center;display:flex}.client-id{gap:.5rem}.client-icon{font-size:1.2rem}.client-number{color:#333;font-size:1.3rem;font-weight:600}.session-count{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;font-size:.8rem;font-weight:500;padding:.3rem .8rem}.client-dates{background:#f8f9fa;border-radius:8px;color:#666;font-size:.9rem;margin-bottom:1.5rem;padding:.5rem;text-align:center}.scores-grid{grid-gap:.8rem;display:grid;gap:.8rem;grid-template-columns:1fr 1fr;margin-bottom:1.5rem}.score-item{align-items:center;background:#f8f9fa;border-left:4px solid #0000;border-radius:8px;display:flex;justify-content:space-between;padding:.8rem}.score-item:has(.fit-score){border-left-color:#28a745}.score-item:has(.bai-score){border-left-color:#ffc107}.score-item:has(.bdi-score){border-left-color:#dc3545}.score-label{color:#666;font-size:.85rem;font-weight:500}.score-value{font-size:1.1rem;font-weight:600}.fit-score{color:#28a745}.bai-score{color:#ffc107}.bdi-score{color:#dc3545}.view-progress-btn{align-items:center;border-radius:8px;display:flex;font-size:.9rem;gap:.5rem;justify-content:center;padding:.8rem;width:100%}.no-clients{color:#666;padding:3rem;text-align:center}.no-clients p{font-size:1.1rem}@media (max-width:768px){.clients-grid{gap:1rem;grid-template-columns:1fr}.client-card{padding:1rem}.dashboard-header h2{font-size:1.5rem}.scores-grid{gap:.5rem;grid-template-columns:1fr}}.client-detail{margin:0 auto;max-width:1200px}.detail-header{justify-content:space-between;margin-bottom:2rem}.detail-header,.header-left,.header-right{align-items:center;display:flex;gap:1rem}.pdf-btn{font-weight:500;white-space:nowrap}.detail-header h2{color:#333;font-size:1.8rem;font-weight:600;margin:0}.back-btn{font-size:.9rem;padding:.5rem 1rem}.stats-grid{grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.stat-card{background:#fff;border:1px solid #e1e5e9;border-radius:12px;box-shadow:0 4px 6px #00000012;gap:1rem;padding:1.5rem}.stat-card,.stat-icon{align-items:center;display:flex}.stat-icon{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;font-size:2rem;height:60px;justify-content:center;width:60px}.stat-content{flex:1 1}.stat-number{color:#333;font-size:1.8rem;font-weight:600}.stat-label,.stat-number{margin-bottom:.25rem}.stat-detail{color:#888;font-size:.8rem}.chart-section{background:#fff;border:1px solid #e1e5e9;border-radius:12px;box-shadow:0 4px 6px #00000012;margin-bottom:2rem;padding:2rem}.chart-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.chart-section h3{color:#333;font-size:1.3rem;font-weight:600;margin:0;text-align:left}.chart-controls{display:flex;gap:.5rem}.toggle-btn{background:#fff;border:2px solid #007bff;border-radius:6px;color:#007bff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:all .3s ease}.toggle-btn:hover{background:#f8f9fa;transform:translateY(-1px)}.toggle-btn.active{background:#007bff;color:#fff}.chart-container{margin-bottom:1rem}.score-ranges{grid-gap:2rem;border-top:1px solid #eee;display:grid;gap:2rem;grid-template-columns:1fr 1fr;margin-top:2rem;padding-top:1.5rem}.range-section h4{color:#333;font-size:1rem;font-weight:600;margin-bottom:.5rem}.ranges{display:flex;flex-direction:column;gap:.25rem}.range-item{color:#666;font-size:.85rem;padding:.25rem 0}.session-data-section{background:#fff;border:1px solid #e1e5e9;border-radius:12px;box-shadow:0 4px 6px #00000012;padding:2rem}.session-data-section h3{color:#333;font-size:1.3rem;font-weight:600;margin-bottom:.5rem}.session-data-section p{color:#666;margin-bottom:1.5rem}.table-container{margin-bottom:1.5rem;overflow-x:auto}.session-table{border-collapse:collapse;font-size:.9rem;width:100%}.session-table td,.session-table th{border-bottom:1px solid #eee;padding:.75rem .5rem;text-align:left}.session-table th{color:#333;font-weight:600;position:-webkit-sticky;position:sticky;top:0}.session-table th,.session-table tr:hover{background:#f8f9fa}.pagination{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.pagination-info{color:#666;font-size:.9rem}.pagination-controls{align-items:center;display:flex;gap:.5rem}.pagination-btn{font-size:.9rem;min-width:40px;padding:.5rem .75rem}.pagination-btn:disabled{cursor:not-allowed;opacity:.5}.assessment-type{border-radius:4px;font-size:.85rem;font-weight:500;padding:.25rem .5rem}.assessment-type.bai{background-color:#fff3cd;color:#856404}.assessment-type.bdi{background-color:#f8d7da;color:#721c24}.severity-level{border-radius:4px;font-size:.85rem;font-weight:500;padding:.25rem .5rem}.severity-level.minimal{background-color:#d4edda;color:#155724}.severity-level.mild{background-color:#fff3cd;color:#856404}.severity-level.moderate{background-color:#ffeaa7;color:#b8860b}.severity-level.severe{background-color:#f8d7da;color:#721c24}@media (max-width:768px){.detail-header{align-items:flex-start;flex-direction:column;gap:.5rem}.stats-grid{gap:1rem;grid-template-columns:1fr}.chart-section,.stat-card{padding:1rem}.score-ranges{gap:1rem;grid-template-columns:1fr}.session-data-section{padding:1rem}.pagination{align-items:stretch;flex-direction:column}.pagination-controls{justify-content:center}}@media (max-width:480px){.pagination-controls{flex-wrap:wrap}.pagination-btn{font-size:.8rem;min-width:35px;padding:.4rem .6rem}}.csv-import{margin:0 auto;max-width:800px}.import-header{margin-bottom:2rem;text-align:center}.import-header h2{color:#333;font-size:2rem;font-weight:600;margin-bottom:.5rem}.import-header p{color:#666;font-size:1.1rem}.current-data-card,.import-card{background:#fff;border:1px solid #e1e5e9;border-radius:12px;box-shadow:0 4px 6px #00000012;margin-bottom:2rem;padding:2rem}.current-data-card h3,.import-card h3{color:#333;font-size:1.3rem;font-weight:600;margin-bottom:1rem}.current-data-card p,.import-card p{color:#666;line-height:1.6;margin-bottom:1.5rem}.file-upload-area{border:2px dashed #ddd;border-radius:12px;margin:1.5rem 0;padding:3rem;text-align:center;transition:all .3s ease}.file-upload-area:hover{background:#667eea05;border-color:#667eea}.file-input{display:none}.file-label{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;cursor:pointer;display:inline-block;font-weight:500;padding:1rem 2rem;transition:all .3s ease}.file-label:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.loading-message{align-items:center;background:#f8f9fa;border-radius:8px;color:#666;display:flex;font-weight:500;gap:1rem;justify-content:center;padding:1.5rem}.spinner{animation:spin 1s linear infinite;border:2px solid #ddd;border-radius:50%;border-top-color:#667eea;height:20px;width:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.import-results{background:#f8f9fa;border-radius:8px;margin-top:1.5rem;padding:1.5rem}.import-results h4{color:#333;font-size:1.1rem;font-weight:600;margin-bottom:1rem}.results-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:1rem}.result-item{background:#fff;border-left:4px solid;border-radius:8px;padding:1rem;text-align:center}.result-item.success{border-left-color:#28a745}.result-item.error{border-left-color:#dc3545}.result-item.total{border-left-color:#6c757d}.result-number{color:#333;display:block;font-size:1.5rem;font-weight:600;margin-bottom:.25rem}.result-label{color:#666;font-size:.9rem}.success-message{background:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724;font-weight:500;padding:1rem}.current-data-card{text-align:center}@media (max-width:768px){.csv-import{padding:0 1rem}.current-data-card,.import-card{padding:1.5rem}.file-upload-area{padding:2rem 1rem}.results-grid{gap:.5rem;grid-template-columns:1fr}.import-header h2{font-size:1.5rem}}.format-help{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin:1rem 0;padding:1rem}.format-help h4{color:#495057;font-size:1rem;margin:0 0 .75rem}.format-info{gap:.75rem}.format-info,.format-item{display:flex;flex-direction:column}.format-item{gap:.25rem}.format-item strong{color:#28a745;font-size:.9rem}.format-item span{color:#6c757d;font-family:Courier New,monospace;font-size:.85rem}.format-item small{color:#868e96;font-size:.8rem;font-style:italic}.file-help-text{color:#6c757d;font-size:.9rem;font-style:italic;margin-top:10px;text-align:center}.files-processed{background:#e3f2fd;border:1px solid #bbdefb;border-radius:6px;color:#1976d2;font-weight:600;margin-bottom:15px;padding:8px 12px;text-align:center}.result-item.duplicate{background:#fff3cd;border-color:#ffeaa7}.result-item.duplicate .result-number{color:#856404}.duplicate-info{color:#856404;font-size:.9rem;font-style:italic;margin-top:8px}.spq-container{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;font-family:Arial,sans-serif;line-height:1.4;margin:0 auto;max-width:800px;overflow:hidden}.spq-instructions{background:#b3e5fc;border-bottom:1px solid #81d4fa;margin:0;padding:20px}.spq-instructions h3{color:#0277bd;font-size:16px;font-weight:700;margin:0 0 15px}.spq-instructions ul{color:#01579b;margin:0;padding-left:20px}.spq-instructions li{font-size:14px;margin-bottom:5px}.spq-progress-section{background:#fff;border-bottom:1px solid #e0e0e0;padding:15px 20px}.spq-progress-text{color:#666;font-size:14px;font-weight:700;margin-bottom:8px}.spq-progress-bar{background-color:#e0e0e0;border-radius:10px;height:20px;overflow:hidden;width:100%}.spq-progress-fill{background:#4caf50;height:100%;transition:width .3s ease}.spq-question-section{background:#fff;padding:30px 20px}.spq-question-box{align-items:center;background:#ffab91;border-radius:8px;display:flex;justify-content:center;margin-bottom:30px;min-height:160px;overflow:hidden;padding:40px 60px;position:relative}.spq-question-box:before{left:15px;top:5px}.spq-question-box:after,.spq-question-box:before{color:#bf360c99;content:'"';font-family:Georgia,serif;font-size:80px;line-height:1;position:absolute;z-index:1}.spq-question-box:after{bottom:-30px;right:15px}.spq-question-text{color:#bf360c;font-size:18px;font-weight:500;line-height:1.4;margin:0;max-width:100%;position:relative;text-align:center;z-index:2}.spq-rating-section{margin-bottom:30px;text-align:center}.spq-rating-labels{color:#666;display:flex;font-size:14px;justify-content:space-between;margin-bottom:15px}.spq-scale-container{display:flex;gap:8px;justify-content:center;margin-bottom:20px}.spq-scale-option{position:relative}.spq-scale-option input[type=radio]{display:none}.spq-scale-option label{background:#4db6ac;border:2px solid #4db6ac;border-radius:8px;color:#fff;cursor:pointer;display:block;font-size:24px;font-weight:700;height:60px;line-height:60px;text-align:center;transition:all .2s ease;width:60px}.spq-scale-option label:hover{background:#26a69a;border-color:#26a69a;transform:translateY(-2px)}.spq-scale-option input[type=radio]:checked+label{background:#00695c;border-color:#00695c;transform:translateY(-2px)}.spq-bottom-section{background:#fff;border-top:1px solid #e0e0e0;padding:20px;text-align:center}.spq-nav-buttons{display:flex;gap:15px;justify-content:center;margin-bottom:20px}.spq-nav-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:12px 24px;transition:all .2s ease}.spq-back-btn{background:#757575;color:#fff}.spq-back-btn:hover:not(:disabled){background:#616161}.spq-skip-btn{background:#2196f3;color:#fff}.spq-skip-btn:hover:not(:disabled){background:#1976d2}.spq-next-btn{background:#4caf50;color:#fff}.spq-next-btn:hover:not(:disabled){background:#45a049}.spq-nav-btn:disabled{background:#ccc;cursor:not-allowed;opacity:.6}.spq-submit-container{background:#f8f9fa;border-radius:8px;margin:20px 0;padding:20px}.spq-submit-info{margin-bottom:15px}.spq-submit-info p{font-size:14px;font-weight:500;margin:0}.spq-submit-btn{background:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:15px 30px;transition:background .2s ease}.spq-submit-btn:hover:not(:disabled){background:#45a049}.spq-submit-btn:disabled{background:#ccc;cursor:not-allowed}.spq-footer{border-top:1px solid #e0e0e0;margin-top:20px;padding-top:20px}.spq-back-to-menu{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px;transition:background .2s ease}.spq-back-to-menu:hover{background:#5a6268}@media (max-width:768px){.spq-container{border-radius:4px;margin:10px}.spq-question-box{min-height:120px;padding:30px 20px}.spq-question-box:after,.spq-question-box:before{font-size:60px}.spq-question-text{font-size:16px}.spq-scale-container{gap:6px}.spq-scale-option label{font-size:18px;height:50px;line-height:50px;width:50px}.spq-nav-buttons{flex-direction:column;gap:10px}.spq-nav-btn{width:100%}}.assessments{margin:0 auto;max-width:900px;padding:1rem}.fit-header{background:#1abc9c;border-radius:8px 8px 0 0;color:#fff;margin-bottom:0;padding:1rem 2rem}.fit-header h1{font-size:1.5rem;font-weight:600;margin:0}.client-info{display:flex;flex-wrap:wrap;gap:2rem;margin-top:1rem}.info-field{align-items:center;display:flex;gap:.5rem}.info-field label{font-weight:500}.assessment-section{background:#fff;border:1px solid #ddd;border-radius:0 0 8px 8px;border-top:none;padding:2rem}.assessment-section h2{color:#333;font-size:1.4rem;font-weight:600;margin-bottom:1rem}.section-description{color:#666;font-size:.95rem;line-height:1.6;margin-bottom:2rem}.question-container{margin-bottom:2rem}.question-number{color:#333;font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.question-description{color:#666;font-size:.95rem;line-height:1.5;margin-bottom:2rem}.slider-container{margin:2rem 0}.slider-labels{color:#666;display:flex;font-size:.9rem;justify-content:space-between;margin-bottom:1rem}.slider-label-left,.slider-label-right{max-width:45%;text-align:center}.slider-track{margin:1rem 0;position:relative}.slider{-webkit-appearance:none;appearance:none;background:#ddd;border-radius:4px;cursor:pointer;height:8px;outline:none;width:100%}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#1abc9c;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0003;cursor:pointer;height:20px;width:20px}.slider::-moz-range-thumb{background:#1abc9c;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px #0003;cursor:pointer;height:20px;width:20px}.slider-markers{display:flex;justify-content:space-between;margin-top:.5rem;position:relative}.slider-marker{color:#999;font-size:.8rem;position:absolute;text-align:center;transform:translateX(-50%)}.slider-value{color:#1abc9c;font-size:1.1rem;font-weight:600;margin-top:1rem;text-align:center}.question-actions{margin-top:2rem;text-align:center}.next-btn{background:#1abc9c;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 2rem;transition:all .3s ease}.next-btn:hover{background:#16a085;transform:translateY(-1px)}.progress-info{align-items:center;border-top:1px solid #eee;color:#666;display:flex;font-size:.9rem;justify-content:space-between;margin-top:2rem;padding-top:1rem}.completion-info{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;color:#495057;margin-top:1rem;padding:1rem;text-align:center}.assessment-header{margin-bottom:2rem;text-align:center}.assessment-header h2{color:#333;font-size:2rem;font-weight:600;margin-bottom:.5rem}.assessment-header p{color:#666;font-size:1.1rem}.assessment-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:2rem}.assessment-card{background:#fff;border:1px solid #e1e5e9;border-radius:16px;box-shadow:0 4px 12px #00000014;cursor:pointer;padding:2rem;text-align:center;transition:all .3s ease}.assessment-card:hover{box-shadow:0 8px 25px #0000001f;transform:translateY(-4px)}.assessment-icon{font-size:3rem;margin-bottom:1rem}.assessment-card h3{color:#333;font-size:1.3rem;font-weight:600;margin-bottom:1rem}.assessment-card p{color:#666;line-height:1.6;margin-bottom:1.5rem}.assessment-details{display:flex;gap:1rem;justify-content:center}.assessment-details span{background:#f8f9fa;border-radius:20px;color:#666;font-size:.85rem;font-weight:500;padding:.5rem 1rem}.client-id-card,.completion-card{background:#fff;border:1px solid #e1e5e9;border-radius:16px;box-shadow:0 4px 12px #00000014;margin:0 auto;max-width:500px;padding:3rem;text-align:center}.completion-card{text-align:center}.completion-icon{font-size:4rem;margin-bottom:1rem}.completion-card h2{color:#28a745;margin-bottom:1rem}.back-btn{margin-bottom:1.5rem}.assessment-progress{background:#fff;border:1px solid #e1e5e9;border-radius:12px;box-shadow:0 4px 6px #00000012;margin-bottom:2rem;padding:1.5rem}.progress-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.progress-header h2{color:#333;font-size:1.3rem;font-weight:600;margin:0}.progress-text{color:#666;font-size:.9rem;font-weight:500}.progress-bar{background:#e9ecef;border-radius:4px;height:8px;overflow:hidden;width:100%}.progress-fill{background:linear-gradient(135deg,#667eea,#764ba2);height:100%;transition:width .3s ease}.question-card{background:linear-gradient(135deg,#fff,#f8f9fa);border:2px solid #e1e5e9;border-radius:24px;box-shadow:0 8px 25px #0000001a;overflow:hidden;padding:3.5rem;position:relative;text-align:center}.question-card:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0}.question-card h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#2c3e50;font-size:1.8rem;font-weight:700;line-height:1.4;margin-bottom:2.5rem;text-shadow:0 2px 4px #0000001a}.response-options{grid-gap:1.5rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6;border-radius:20px;box-shadow:0 4px 15px #0000000d;display:grid;gap:1.5rem;grid-template-columns:repeat(4,1fr);justify-content:center;margin:2rem auto;max-width:700px;padding:2rem}.response-btn{align-items:center;background:linear-gradient(135deg,#fff,#f8f9fa);border:3px solid #e1e5e9;border-radius:16px;box-shadow:0 4px 12px #00000014;color:#333;cursor:pointer;display:flex;font-size:1.4rem;font-weight:700;justify-content:center;min-height:80px;min-width:80px;overflow:hidden;padding:1.5rem 1rem;position:relative;text-shadow:0 1px 2px #0000001a;transition:all .4s cubic-bezier(.4,0,.2,1)}.response-btn:before{background:linear-gradient(90deg,#0000,#fff6,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.response-btn:hover:before{left:100%}.response-btn:hover{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;box-shadow:0 12px 30px #667eea66;color:#fff;text-shadow:0 2px 4px #0000004d;transform:translateY(-6px) scale(1.05)}.response-btn:active{transform:translateY(-3px) scale(1.02);transition:all .1s ease}@media (max-width:768px){.assessments{padding:0 1rem}.assessment-grid{gap:1rem;grid-template-columns:1fr}.assessment-card{padding:1.5rem}.client-id-card,.completion-card,.question-card{padding:2rem}.progress-header{flex-direction:column;gap:.5rem;text-align:center}.progress-header h2{font-size:1.1rem}.question-card h3{font-size:1.2rem}.response-options{gap:.5rem}.response-btn{font-size:1rem;min-width:50px;padding:.8rem 1.2rem}}@media (max-width:480px){.assessment-header h2{font-size:1.5rem}.assessment-details{flex-direction:column;gap:.5rem}.response-options{gap:1rem;grid-template-columns:repeat(2,1fr);padding:1.5rem}.response-btn{font-size:1.2rem;min-height:70px;padding:1.2rem .8rem}.beck-assessment-header{border-radius:16px 16px 0 0;padding:1.5rem}.beck-assessment-header h1{font-size:1.4rem}.beck-progress-info{border-radius:0 0 16px 16px;font-size:.9rem;padding:.8rem 1.5rem}.question-card{border-radius:20px;padding:2.5rem 1.5rem}.question-card h3{font-size:1.4rem;margin-bottom:2rem}}.beck-assessment-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px 20px 0 0;color:#fff;overflow:hidden;padding:2rem;position:relative;text-align:center}.beck-assessment-header:before{animation:shimmer 3s ease-in-out infinite;background:radial-gradient(circle,#ffffff1a 0,#0000 70%);content:"";height:200%;left:-50%;position:absolute;top:-50%;width:200%}@keyframes shimmer{0%,to{transform:rotate(0deg)}50%{transform:rotate(180deg)}}.beck-assessment-header h1{font-size:1.8rem;font-weight:700;margin:0;position:relative;text-shadow:0 2px 4px #0000004d;z-index:1}.beck-progress-info{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:0 0 20px 20px;box-shadow:0 4px 15px #667eea4d;color:#fff;font-weight:600;padding:1rem 2rem;text-align:center}.assessment-submit{background:#f8f9fa;border:2px dashed #dee2e6;border-radius:8px;margin:2rem 0;padding:2rem;text-align:center}.submit-btn{border-radius:8px;box-shadow:0 4px 6px #0000001a;font-weight:600;transition:all .3s ease}.submit-btn:hover:not(:disabled){box-shadow:0 6px 12px #00000026;transform:translateY(-2px)}.submit-btn:disabled{cursor:not-allowed;opacity:.7}.assessments .question-container{background:#fff;border-left:4px solid #1abc9c;border-radius:8px;box-shadow:0 2px 4px #0000000d;margin-bottom:2.5rem;padding:1.5rem}.assessments .question-container:last-child{margin-bottom:1rem}.assessments .assessment-section h2{border-bottom:2px solid #1abc9c;color:#1abc9c;font-size:1.4rem;margin-bottom:1.5rem;padding-bottom:.5rem}.assessments .progress-info{background:#e8f5e8;border:1px solid #28a745;border-radius:8px;margin-top:1rem;padding:1rem;text-align:center}.assessments .progress-info span{color:#155724;display:inline-block;font-weight:500;margin:0 1rem}.spq-header{background:#6f42c1;border-radius:8px 8px 0 0;color:#fff;margin-bottom:0;padding:1rem 2rem}.spq-header h1{font-size:1.5rem;font-weight:600;margin:0}.spq-response-options{margin-top:2rem;text-align:center}.scale-labels{color:#666;display:flex;font-size:14px;font-style:italic;justify-content:space-between;margin-bottom:1rem}.response-buttons{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.spq-btn{background:#f8f9fa;border:2px solid #dee2e6;border-radius:8px;color:#495057;cursor:pointer;font-size:16px;font-weight:600;min-width:50px;padding:1rem;transition:all .2s ease}.spq-btn:hover{background:#e9ecef}.spq-btn.selected,.spq-btn:hover{border-color:#6f42c1;transform:translateY(-2px)}.spq-btn.selected{background:#6f42c1;box-shadow:0 4px 8px #6f42c14d;color:#fff}.question-text{color:#333;font-size:18px;line-height:1.6;margin:1.5rem 0}.scale-info{background:#f8f9ff;border-radius:4px;color:#6f42c1;font-size:14px;font-weight:500;margin-bottom:1rem;padding:.5rem;text-align:center}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:2rem}.login-card{background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000001a;max-width:400px;padding:3rem;text-align:center;width:100%}.login-header h1{color:#333;font-size:1.8rem;font-weight:600;margin-bottom:.5rem}.login-header p{color:#666;font-size:1rem;margin-bottom:2rem}.login-form{text-align:left}.login-btn{font-size:1rem;margin-top:1rem;padding:1rem;width:100%}.login-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24;font-size:.9rem;padding:.75rem}.login-footer{border-top:1px solid #eee;margin-top:2rem;padding-top:1.5rem}.login-footer p{color:#888;font-size:.85rem;margin:0}.access-levels{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-top:1rem;padding:1rem;text-align:left}.access-levels small{color:#666;line-height:1.4}@media (max-width:480px){.login-card{margin:1rem;padding:2rem}.login-header h1{font-size:1.5rem}}.client-portal-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.client-portal-card{animation:slideUp .6s ease-out;background:#fff;border-radius:20px;box-shadow:0 20px 40px #0000001a;max-width:600px;padding:2rem;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.client-portal-header{margin-bottom:2rem;text-align:center}.client-portal-header h1{color:#333;font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.client-portal-header p{color:#666;font-size:1.2rem;font-weight:500}.client-portal-info{margin-bottom:2rem}.info-box{background:#f8f9fa;border-left:4px solid #667eea;border-radius:12px;padding:1.5rem}.info-box h3{color:#333;font-size:1.2rem;margin-bottom:1rem}.info-box ul{list-style:none;margin:0;padding:0}.info-box li{border-bottom:1px solid #e9ecef;color:#555;padding:.5rem 0}.info-box li:last-child{border-bottom:none}.client-portal-form{margin-bottom:2rem}.form-group{margin-bottom:1.5rem}.form-label{color:#333;display:block;font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.form-control{border:2px solid #e1e5e9;border-radius:12px;box-sizing:border-box;font-size:1.1rem;padding:1rem;transition:all .3s ease;width:100%}.form-control:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-help{color:#666;display:block;font-size:.9rem;margin-top:.5rem}.error-message{background:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;font-weight:500;margin-bottom:1rem;padding:1rem}.client-login-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1.2rem;font-weight:600;letter-spacing:.5px;padding:1rem 2rem;text-transform:uppercase;transition:all .3s ease;width:100%}.client-login-btn:hover:not(:disabled){box-shadow:0 8px 20px #667eea4d;transform:translateY(-2px)}.client-login-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.client-portal-footer{border-top:1px solid #e9ecef;padding-top:2rem}.privacy-notice{background:#e8f5e8;border-left:4px solid #28a745;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.privacy-notice h4{color:#155724;font-size:1.1rem;margin-bottom:1rem}.privacy-notice ul{list-style:none;margin:0;padding:0}.privacy-notice li{color:#155724;padding:.3rem 0 .3rem 1.5rem;position:relative}.privacy-notice li:before{color:#28a745;content:"✓";font-weight:700;left:0;position:absolute}.support-info{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;padding:1rem;text-align:center}.support-info p{color:#856404;font-size:.95rem;margin:0}@media (max-width:768px){.client-portal-container{padding:10px}.client-portal-card{padding:1.5rem}.client-portal-header h1{font-size:2rem}.form-control{font-size:1rem;padding:.8rem}.client-login-btn{font-size:1.1rem;padding:.8rem 1.5rem}}.admin-panel{margin:0 auto;max-width:1400px;padding:2rem}.admin-header{margin-bottom:2rem;text-align:center}.admin-header h2{color:#333;font-size:2.5rem;margin-bottom:.5rem}.admin-header p{color:#666;font-size:1.2rem}.admin-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:2rem}.admin-card{background:#fff;border:1px solid #e1e5e9;border-radius:16px;box-shadow:0 4px 12px #00000014;padding:2rem;transition:all .3s ease}.admin-card:hover{box-shadow:0 8px 25px #0000001f;transform:translateY(-2px)}.admin-card h3{color:#333;font-size:1.4rem;margin-bottom:1rem}.admin-card p{color:#666;line-height:1.6;margin-bottom:1.5rem}.stats-card{border-left:4px solid #28a745}.stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-bottom:1.5rem}.stat-item{background:#f8f9fa;border-radius:8px;padding:1rem;text-align:center}.stat-number{color:#28a745;display:block;font-size:2rem;font-weight:700;margin-bottom:.5rem}.stat-label{color:#666;font-size:.9rem;font-weight:500}.date-range{background:#e8f5e8;border:1px solid #c3e6cb;border-radius:8px;padding:1rem}.date-range p{color:#155724;font-size:.95rem;margin:0}.export-card{border-left:4px solid #007bff}.export-buttons{display:flex;flex-direction:column;gap:.8rem;margin-bottom:1rem}.export-btn{font-weight:500;justify-content:flex-start;padding:.8rem 1.2rem;text-align:left}.export-note{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;color:#666;display:block;font-style:italic;padding:1rem}.danger-card{border-left:4px solid #dc3545}.confirm-clear{background:#fff5f5;border:1px solid #fed7d7;border-radius:8px;margin-top:1rem;padding:1.5rem}.confirm-clear p{color:#c53030;margin-bottom:1rem}.confirm-clear code{background:#fed7d7;border-radius:4px;color:#c53030;font-family:monospace;padding:.2rem .4rem}.confirm-buttons{display:flex;gap:1rem;margin-top:1rem}.confirm-buttons .btn{flex:1 1}.info-card{border-left:4px solid #17a2b8}.access-info{display:flex;flex-direction:column;gap:1.5rem}.access-level{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:1rem}.access-level h4{color:#333;font-size:1.1rem;margin-bottom:.8rem}.access-level p{color:#555;font-size:.9rem;margin:.3rem 0}.access-level p strong{color:#333;display:inline-block;min-width:80px}.user-role{font-size:.8rem;font-weight:500;opacity:.8}.btn-warning{background:#ffc107;border:none;color:#212529}.btn-warning:hover{background:#e0a800;transform:translateY(-1px)}@media (max-width:768px){.admin-panel{padding:1rem}.admin-grid{gap:1.5rem;grid-template-columns:1fr}.admin-card{padding:1.5rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.export-buttons{gap:.6rem}.confirm-buttons{flex-direction:column}.access-info{gap:1rem}}
/*# sourceMappingURL=main.fd844f54.css.map*/