body{color:#fff;background-image:linear-gradient(#020917,#101725);margin:0;font-family:Inter,Avenir,Helvetica,Arial,sans-serif}.content{text-align:center;flex-direction:column;justify-content:center;min-height:100vh;line-height:1.1;display:flex}.content h1{font-size:3.6rem;font-weight:700}.content p{opacity:.5;font-size:1.2rem;font-weight:400}.content button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:5px;margin:20px auto;padding:12px 30px;font-size:16px;font-weight:600;transition:transform .2s,box-shadow .2s}.content button:hover{transform:translateY(-2px);box-shadow:0 5px 15px #667eea66}.login-container{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-form{background:#fff;border-radius:10px;width:100%;max-width:400px;padding:40px;box-shadow:0 10px 25px #0003}.login-form h1{text-align:center;color:#333;margin:0 0 30px;font-size:28px}.form-group label{color:#555;margin-bottom:8px;font-size:14px;font-weight:500;display:block}.form-group input{box-sizing:border-box;border:1px solid #ddd;border-radius:5px;width:100%;padding:12px;font-size:14px;transition:border-color .3s}.form-group input:focus{border-color:#667eea;outline:none}.form-group input:disabled{cursor:not-allowed;background-color:#f5f5f5}.submit-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:5px;width:100%;padding:12px;font-size:16px;font-weight:600;transition:transform .2s,box-shadow .2s}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 15px #667eea66}.submit-button:disabled{opacity:.6;cursor:not-allowed}.error-message{color:#c33;background-color:#fee;border:1px solid #fcc;border-radius:5px;margin-bottom:20px;padding:12px;font-size:14px}.recommendation-form-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0;overflow-y:auto}.recommendation-form{background:#fff;border-radius:8px;width:100%;max-width:700px;max-height:90vh;padding:30px;overflow-y:auto;box-shadow:0 4px 20px #00000026}.recommendation-form h3{color:#333;margin-top:0;margin-bottom:8px}.form-subtitle{color:#666;margin-bottom:24px;font-size:14px}.form-group{margin-bottom:20px}.form-group label{color:#333;margin-bottom:6px;font-weight:500;display:block}.form-group input,.form-group textarea{box-sizing:border-box;border:1px solid #ddd;border-radius:4px;width:100%;padding:10px;font-family:inherit;font-size:14px}.form-group input:focus,.form-group textarea:focus{border-color:#007bff;outline:none}.languages-section{margin-top:24px}.languages-section h4{color:#333;margin-bottom:16px;font-size:16px}.error-message{color:#c33;background:#fee;border:1px solid #fcc;border-radius:4px;margin-bottom:16px;padding:12px}.form-actions{border-top:1px solid #eee;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;display:flex}.form-actions button{cursor:pointer;border:none;border-radius:4px;padding:10px 24px;font-size:14px;font-weight:500;transition:background-color .2s}.form-actions button[type=button]{color:#fff;background:#6c757d}.form-actions button[type=button]:hover:not(:disabled){background:#5a6268}.form-actions button[type=submit]{color:#fff;background:#007bff}.form-actions button[type=submit]:hover:not(:disabled){background:#0056b3}.form-actions button:disabled{opacity:.6;cursor:not-allowed}.phase-section{background:#fff;border-radius:8px;margin-bottom:24px;padding:24px;box-shadow:0 2px 8px #0000001a}.phase-title{color:#2c3e50;border-bottom:3px solid #007bff;margin:0 0 20px;padding-bottom:12px;font-size:24px}.recommendations-container{grid-template-columns:1fr 1fr;gap:24px;display:grid}@media (max-width:768px){.recommendations-container{grid-template-columns:1fr}}.recommendations-list{background:#fafafa;border:1px solid #e0e0e0;border-radius:6px;padding:16px}.list-header{border-bottom:2px solid #e0e0e0;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.list-header h4{color:#34495e;margin:0;font-size:18px}.btn-add{color:#fff;cursor:pointer;background:#28a745;border:none;border-radius:4px;padding:8px 16px;font-size:14px;font-weight:500;transition:background-color .2s}.btn-add:hover{background:#218838}.empty-state{color:#999;text-align:center;padding:20px;font-style:italic}.recommendations-list ul{margin:0;padding:0;list-style:none}.recommendation-item{background:#fff;border:1px solid #e0e0e0;border-radius:4px;justify-content:space-between;align-items:flex-start;margin-bottom:12px;padding:12px;transition:box-shadow .2s;display:flex}.recommendation-item:hover{box-shadow:0 2px 6px #0000001a}.recommendation-item:last-child{margin-bottom:0}.recommendation-content{flex:1;align-items:flex-start;gap:12px;display:flex}.sort-order{color:#fff;background:#007bff;border-radius:3px;flex-shrink:0;padding:2px 8px;font-size:12px;font-weight:600}.recommendation-text{color:#333;word-break:break-word;margin:0;line-height:1.5}.recommendation-actions{flex-shrink:0;gap:8px;display:flex}.btn-edit,.btn-delete{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:6px 10px;font-size:16px;transition:transform .2s,opacity .2s}.btn-edit:hover,.btn-delete:hover{opacity:.8;transform:scale(1.1)}.btn-edit{color:#007bff}.btn-delete{color:#dc3545}.dashboard{background:#f5f7fa;min-height:100vh}.dashboard-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding:24px 0;box-shadow:0 2px 12px #0000001a}.header-content{justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;padding:0 24px;display:flex}.dashboard-header h1{margin:0 0 8px;font-size:28px;font-weight:600}.user-info{opacity:.95;margin:0;font-size:14px}.admin-badge{background:#ffffff40;border-radius:12px;margin-left:8px;padding:2px 10px;font-size:12px;font-weight:600}.btn-logout{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:1px solid #fff6;border-radius:6px;padding:10px 24px;font-size:14px;font-weight:500;transition:all .2s}.btn-logout:hover{background:#ffffff4d;border-color:#fff9}.dashboard-content{max-width:1400px;margin:0 auto;padding:32px 24px}.loading-state,.error-state{text-align:center;max-width:1400px;margin:0 auto;padding:64px 24px}.loading-state p{color:#666;font-size:18px}.error-state{color:#dc3545}.error-state p{margin-bottom:20px;font-size:18px}.error-state button{color:#fff;cursor:pointer;background:#007bff;border:none;border-radius:6px;padding:10px 24px;font-size:14px;font-weight:500;transition:background-color .2s}.error-state button:hover{background:#0056b3}@media (max-width:768px){.header-content{text-align:center;flex-direction:column;gap:16px}.dashboard-header h1{font-size:22px}.dashboard-content{padding:20px 16px}}