.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary-light) 0%,var(--gray-100) 100%);padding:1rem}.login-container{width:100%;max-width:400px;background:#fff;border-radius:1rem;box-shadow:0 4px 24px #0000001a;padding:2rem}.login-logo{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:2rem}.logo-icon{font-size:2.5rem}.logo-text{font-size:1.5rem;font-weight:700;color:var(--secondary)}.phone-input-header,.otp-input-header,.username-input-header{text-align:center;margin-bottom:1.5rem}.phone-input-header h2,.otp-input-header h2,.username-input-header h2{font-size:1.25rem;font-weight:700;color:var(--gray-900);margin:0 0 .5rem}.phone-input-header p,.otp-input-header p,.username-input-header p{font-size:.875rem;color:var(--gray-600);margin:0}.phone-input-container{display:flex;gap:.5rem;margin-bottom:1rem}.country-code-select{width:100px;padding:.75rem;border:2px solid var(--gray-200);border-radius:.5rem;font-size:1rem;background:#fff;cursor:pointer;transition:border-color .2s}.country-code-select:focus{outline:none;border-color:var(--primary)}.phone-number-input{flex:1;padding:.75rem 1rem;border:2px solid var(--gray-200);border-radius:.5rem;font-size:1rem;transition:border-color .2s}.phone-number-input:focus{outline:none;border-color:var(--primary)}.phone-number-input::placeholder{color:var(--gray-400)}.otp-input-container{display:flex;justify-content:center;gap:.5rem;margin-bottom:1rem}.otp-digit-input{width:3rem;height:3.5rem;text-align:center;font-size:1.5rem;font-weight:700;border:2px solid var(--gray-200);border-radius:.5rem;transition:all .2s}.otp-digit-input:focus{outline:none;border-color:var(--primary);background-color:var(--primary-light)}.otp-digit-input:disabled{background-color:var(--gray-100)}.otp-timer{text-align:center;margin-bottom:1rem}.timer-text{font-size:.875rem;color:var(--gray-600)}.resend-btn{background:none;border:none;color:var(--secondary);font-size:.875rem;font-weight:600;cursor:pointer;padding:0;text-decoration:underline}.resend-btn:hover{color:var(--secondary-dark)}.resend-btn:disabled{color:var(--gray-400);cursor:not-allowed}.back-btn{width:100%;background:none;border:none;color:var(--gray-600);font-size:.875rem;cursor:pointer;padding:.75rem;margin-top:.5rem;transition:color .2s}.back-btn:hover{color:var(--gray-800)}.back-btn:disabled{color:var(--gray-300);cursor:not-allowed}.username-input-container{margin-bottom:.5rem}.username-input{width:100%;padding:.75rem 1rem;border:2px solid var(--gray-200);border-radius:.5rem;font-size:1rem;transition:border-color .2s}.username-input:focus{outline:none;border-color:var(--primary)}.username-hint{font-size:.75rem;color:var(--gray-600);text-align:center;margin:0 0 1rem}.auth-error{background-color:var(--danger-light);color:var(--danger-dark);padding:.75rem 1rem;border-radius:.5rem;font-size:.875rem;margin-bottom:1rem;text-align:center}.auth-submit-btn{width:100%;padding:.875rem 1.5rem;font-size:1rem;font-weight:600}.auth-hint{font-size:.75rem;color:var(--gray-600);text-align:center;margin:1rem 0 0}.guest-option{margin-top:1.5rem;text-align:center}.guest-divider{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.guest-divider:before,.guest-divider:after{content:"";flex:1;height:1px;background:var(--gray-200)}.guest-divider span{font-size:.75rem;color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em}.guest-btn{width:100%;padding:.75rem 1.5rem;font-size:.9375rem;border-color:var(--gray-300);color:var(--gray-700)}.guest-btn:hover{background:var(--gray-100);border-color:var(--gray-400)}.guest-note{font-size:.75rem;color:var(--gray-500);margin:.5rem 0 0}.login-footer{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--gray-200);text-align:center}.login-footer p{font-size:.75rem;color:var(--gray-600);margin:0}@media (max-width: 480px){.login-container{padding:1.5rem}.otp-digit-input{width:2.5rem;height:3rem;font-size:1.25rem}}.notification-dropdown{position:relative}.notification-bell{background:none;border:none;cursor:pointer;padding:.5rem;font-size:1.25rem;position:relative;border-radius:50%;transition:background-color .2s}.notification-bell:hover{background-color:#0000001a}.notification-bell.has-unread .bell-icon{animation:bell-shake .5s ease-in-out}@keyframes bell-shake{0%,to{transform:rotate(0)}25%{transform:rotate(-15deg)}50%{transform:rotate(15deg)}75%{transform:rotate(-10deg)}}.unread-badge{position:absolute;top:0;right:0;background:#ef4444;color:#fff;font-size:.625rem;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 4px}.notification-panel{position:absolute;top:calc(100% + .5rem);right:0;width:340px;max-height:400px;background:#fff;border-radius:.75rem;box-shadow:0 10px 40px #00000026;z-index:1000;overflow:hidden}.notification-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--gray-200, #e5e7eb)}.notification-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--gray-800, #1f2937)}.mark-all-read{background:none;border:none;font-size:.75rem;color:var(--primary, #3b82f6);cursor:pointer;padding:.25rem .5rem;border-radius:.25rem}.mark-all-read:hover{background:var(--gray-100, #f3f4f6)}.mark-all-read:disabled{color:var(--gray-400, #9ca3af);cursor:not-allowed}.notification-list{max-height:320px;overflow-y:auto}.notification-empty{padding:2rem;text-align:center}.empty-icon{font-size:2rem;display:block;margin-bottom:.5rem}.notification-empty p{margin:0;color:var(--gray-500, #6b7280);font-size:.875rem}.notification-item{display:flex;gap:.75rem;padding:1rem;border-bottom:1px solid var(--gray-100, #f3f4f6);cursor:pointer;transition:background-color .15s;position:relative}.notification-item:hover{background-color:var(--gray-50, #f9fafb)}.notification-item.unread{background-color:#eff6ff}.notification-item.unread:hover{background-color:#dbeafe}.notification-icon{font-size:1.25rem;flex-shrink:0}.notification-content{flex:1;min-width:0}.notification-title{margin:0 0 .25rem;font-size:.875rem;font-weight:600;color:var(--gray-800, #1f2937)}.notification-message{margin:0 0 .375rem;font-size:.8125rem;color:var(--gray-600, #4b5563);line-height:1.4}.notification-time{font-size:.75rem;color:var(--gray-400, #9ca3af)}.unread-dot{position:absolute;right:1rem;top:50%;transform:translateY(-50%);width:8px;height:8px;background:var(--primary, #3b82f6);border-radius:50%}@media (max-width: 768px){.notification-panel{position:fixed;top:auto;bottom:0;left:0;right:0;width:100%;max-height:60vh;border-radius:1rem 1rem 0 0}.notification-list{max-height:calc(60vh - 60px)}}.app-header{height:60px;background:var(--secondary);border-bottom:1px solid var(--secondary-dark);position:sticky;top:0;z-index:100}.header-content{width:100%;height:100%;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between}.header-logo{display:flex;align-items:center;gap:.5rem}.header-logo-icon{font-size:1.5rem}.header-logo-text{font-size:1.25rem;font-weight:700;color:#fff}.header-user{display:flex;align-items:center;gap:1rem}.header-username{font-size:.875rem;font-weight:500;color:var(--primary-light)}.logout-btn{padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:#fff;background:transparent;border:1px solid var(--primary);border-radius:.375rem;cursor:pointer;transition:all .2s}.logout-btn:hover{background:var(--primary);color:var(--secondary)}.logout-btn:disabled{opacity:.6;cursor:not-allowed}.header-guest-label{font-size:.75rem;font-weight:600;color:var(--gray-400);text-transform:uppercase;letter-spacing:.05em;padding:.25rem .5rem;background:#ffffff1a;border-radius:.25rem}.login-btn{padding:.5rem 1rem;font-size:.875rem;font-weight:600;color:var(--secondary);background:var(--primary);border:none;border-radius:.375rem;cursor:pointer;transition:all .2s}.login-btn:hover{background:var(--primary-light)}@media (max-width: 480px){.header-username,.header-guest-label{display:none}}.case-detail-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem}.case-detail-modal{background:#fff;border-radius:12px;width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 50px #0000004d;overflow:hidden}.case-detail-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--gray-200);flex-shrink:0}.case-detail-header h2{margin:0;font-size:1.25rem;color:var(--secondary)}.case-detail-close{background:none;border:none;font-size:1.75rem;color:var(--gray-400);cursor:pointer;padding:0;line-height:1}.case-detail-close:hover{color:var(--secondary)}.case-detail-scroll{flex:1;overflow-y:auto;overflow-x:hidden}.case-detail-summary{padding:1.25rem 1.5rem;background:var(--gray-50);border-bottom:1px solid var(--gray-200)}.case-patient-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.patient-name{font-weight:600;color:var(--secondary);font-size:1.125rem}.case-date{font-size:.875rem;color:var(--gray-500)}.case-result-row{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem;flex-wrap:wrap}.case-grade{display:flex;flex-direction:column;align-items:center;padding:.5rem .75rem;border-radius:8px;color:#fff;min-width:50px}.case-result-badge{padding:.375rem .75rem;border-radius:20px;font-size:.875rem;font-weight:600}.case-result-badge.correct{background:#dcfce7;color:#166534}.case-result-badge.incorrect{background:#fee2e2;color:#b91c1c}.case-result-badge.timeout{background:#fef3c7;color:#92400e}.case-meta-row{display:flex;align-items:center;gap:1rem;font-size:.875rem;color:var(--gray-600);flex-wrap:wrap;margin-bottom:1rem}.case-domain{text-transform:capitalize}.case-mode{padding:.125rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.case-mode.standard{background:#64748b26;color:var(--gray-600)}.case-mode.blitz{background:#fb923c26;color:#ea580c}.diagnosis-summary{display:flex;flex-direction:column;gap:.75rem}.diagnosis-box{padding:1rem;border-radius:8px;border-left:4px solid}.diagnosis-box.correct-diagnosis{background:#f0fdf4;border-left-color:#22c55e}.diagnosis-box.wrong-diagnosis{background:#fef2f2;border-left-color:#ef4444}.diagnosis-box.timeout-diagnosis{background:#fffbeb;border-left-color:#f59e0b}.diagnosis-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;margin-bottom:.25rem;color:var(--gray-600)}.diagnosis-name{font-size:1.125rem;font-weight:700;color:var(--secondary);margin-bottom:.5rem}.diagnosis-description{font-size:.875rem;color:var(--gray-700);line-height:1.5}.case-detail-tabs{display:flex;border-bottom:1px solid var(--gray-200);padding:0 1rem;background:#fff;position:sticky;top:0;z-index:10}.case-tab{padding:.75rem 1rem;border:none;background:none;color:var(--gray-500);font-size:.875rem;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.case-tab:hover{color:var(--gray-700)}.case-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.case-detail-content{padding:1rem 1.5rem;background:#fff}.empty-state{text-align:center;color:var(--gray-500);padding:2rem}.conversation-initial{padding:.75rem 1rem;background:var(--gray-100);border-radius:8px;margin-bottom:1rem;font-size:.9375rem}.conversation-list{display:flex;flex-direction:column;gap:.5rem}.conversation-msg{padding:.5rem .75rem;border-radius:8px;font-size:.9375rem}.conversation-msg.player{background:#eff6ff}.conversation-msg.patient{background:var(--gray-100)}.msg-role{font-weight:600;margin-right:.5rem;color:var(--gray-600)}.tests-list,.exams-list{display:flex;flex-direction:column;gap:.5rem}.test-item,.exam-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;background:var(--gray-50);border-radius:8px;border-left:3px solid var(--gray-300)}.test-item.abnormal,.exam-item.abnormal{border-left-color:var(--danger);background:#fef2f2}.test-name,.exam-name{font-weight:600;color:var(--secondary);min-width:150px}.test-result,.exam-finding{flex:1;color:var(--gray-700)}.abnormal-badge{font-size:.75rem;font-weight:600;color:var(--danger);background:#fee2e2;padding:.125rem .5rem;border-radius:4px}.coaching-section-wrapper{padding:1.5rem;background:var(--gray-50);border-top:1px solid var(--gray-200)}.coaching-title{margin:0 0 1rem;font-size:1.125rem;color:var(--secondary)}.score-breakdown{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem;padding:1rem;background:#fff;border-radius:8px}.score-row{display:flex;align-items:center;gap:.75rem}.score-label{width:100px;font-size:.875rem;color:var(--gray-600)}.score-bar{flex:1;height:8px;background:var(--gray-200);border-radius:4px;overflow:hidden}.score-fill{height:100%;background:var(--primary);border-radius:4px;transition:width .3s}.score-value{width:50px;text-align:right;font-size:.875rem;font-weight:600;color:var(--gray-700)}.coaching-card{margin-bottom:1rem;padding:1rem;background:#fff;border-radius:8px;border-left:4px solid}.coaching-card h4{margin:0 0 .75rem;font-size:1rem;color:var(--secondary)}.coaching-card ul{margin:0;padding-left:1.25rem}.coaching-card li{margin-bottom:.375rem;font-size:.875rem;color:var(--gray-700);line-height:1.5}.coaching-card p{margin:0 0 .5rem;font-size:.875rem;color:var(--gray-700);line-height:1.6}.coaching-card.strengths{border-left-color:var(--success)}.coaching-card.improvements{border-left-color:var(--warning)}.coaching-card.why-incorrect{border-left-color:var(--danger)}.coaching-card.how-to-diagnose{border-left-color:var(--info, #3b82f6)}.section-label{font-weight:600;color:var(--gray-600);margin-top:.75rem!important;margin-bottom:.25rem!important}.clinical-reasoning{background:var(--gray-50);padding:.75rem;border-radius:6px;margin-top:.5rem!important}.no-detailed-data{padding:2rem;text-align:center;color:var(--gray-600)}.no-detailed-data .hint{font-size:.875rem;color:var(--gray-500);margin-top:.5rem}@media (max-width: 640px){.case-detail-overlay{align-items:flex-end;padding:0}.case-detail-modal{max-height:95vh;max-height:95dvh;border-radius:16px 16px 0 0;max-width:none;width:100%}.case-detail-header{padding:.875rem 1rem}.case-detail-header h2{font-size:1.125rem}.case-detail-summary{padding:1rem}.patient-name{font-size:1rem}.case-date{font-size:.8125rem}.case-result-row{flex-direction:column;align-items:flex-start;gap:.5rem}.case-grade{padding:.375rem .625rem}.grade-letter{font-size:1.125rem}.case-meta-row{gap:.5rem;font-size:.8125rem}.diagnosis-box{padding:.875rem}.diagnosis-name{font-size:1rem}.diagnosis-description{font-size:.8125rem}.case-detail-tabs{padding:0 .75rem}.case-tab{padding:.625rem .75rem;font-size:.8125rem}.case-detail-content{padding:.875rem 1rem}.conversation-initial{padding:.625rem .875rem;font-size:.875rem}.conversation-msg{padding:.375rem .625rem;font-size:.875rem}.test-item,.exam-item{flex-direction:column;padding:.625rem .75rem}.test-name,.exam-name{min-width:auto;font-size:.8125rem}.test-result,.exam-finding{font-size:.8125rem}.coaching-section-wrapper{padding:1rem}.coaching-title{font-size:1rem}.score-breakdown{padding:.75rem}.score-row{gap:.5rem}.score-label{width:70px;font-size:.75rem}.score-value{width:45px;font-size:.8125rem}.coaching-card{padding:.875rem;margin-bottom:.75rem}.coaching-card h4{font-size:.9375rem}.coaching-card li{font-size:.8125rem;margin-bottom:.3rem}.section-label{font-size:.75rem}.clinical-reasoning{padding:.625rem;font-size:.8125rem}}.dashboard{min-height:calc(100vh - 60px);display:flex;align-items:center;justify-content:center;padding:2rem;background:var(--gray-100)}.dashboard-content{max-width:700px;width:100%;text-align:center}.welcome-section{margin-bottom:2rem}.welcome-title{font-size:1.75rem;font-weight:700;color:var(--gray-900);margin:0 0 .5rem}.welcome-title .username{color:var(--secondary)}.welcome-subtitle{font-size:1rem;color:var(--gray-600);margin:0}.action-section{margin-bottom:2.5rem}.action-row-primary{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap}.action-row-secondary{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap;margin-top:1rem}.past-cases-btn{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 1.5rem;font-size:1rem}.past-cases-btn .btn-icon{font-size:1.25rem}.start-case-btn{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2.5rem;font-size:1.125rem;font-weight:600;border-radius:.75rem;box-shadow:0 4px 12px #41ead44d;transition:all .2s}.start-case-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #41ead466}.start-case-btn .btn-icon{font-size:1.5rem}.login-prompt-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.875rem;border-color:var(--primary);color:var(--secondary)}.login-prompt-btn:hover{background:var(--primary);border-color:var(--primary);color:var(--secondary)}.login-prompt-btn .btn-icon{font-size:1rem}.test-mode-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.875rem;border-color:var(--warning);color:var(--warning)}.test-mode-btn:hover{background:var(--warning);border-color:var(--warning);color:var(--secondary)}.test-mode-btn .btn-icon{font-size:1rem}.feedback-dashboard-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.875rem;border-color:var(--info, #3b82f6);color:var(--info, #3b82f6)}.feedback-dashboard-btn:hover{background:var(--info, #3b82f6);border-color:var(--info, #3b82f6);color:#fff}.feedback-dashboard-btn .btn-icon{font-size:1rem}.stats-section{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem}.stat-card{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:1.25rem;background:#fff;border-radius:.75rem;box-shadow:0 2px 8px #0000000d}.stat-icon{font-size:1.5rem;margin-bottom:.25rem}.stat-label{font-size:.75rem;color:var(--gray-600);text-transform:uppercase;letter-spacing:.025em}.stat-value{font-size:1.25rem;font-weight:700;color:var(--gray-800)}.history-section{margin-bottom:2rem;text-align:left}.history-title{font-size:1rem;font-weight:600;color:var(--gray-800);margin:0 0 .75rem}.history-list{display:flex;flex-direction:column;gap:.5rem}.history-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#fff;border-radius:.5rem;box-shadow:0 1px 4px #0000000d;transition:all .15s}.history-item.clickable{cursor:pointer}.history-item.clickable:hover{background:var(--gray-50);box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.history-main{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.history-result{font-size:1rem;font-weight:700;width:1.5rem;text-align:center}.history-result.correct{color:var(--success)}.history-result.incorrect{color:var(--danger)}.history-result.timeout{color:var(--warning)}.history-details{display:flex;flex-direction:column;gap:.125rem;min-width:0}.history-diagnosis{font-size:.875rem;font-weight:500;color:var(--gray-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-submitted{color:var(--danger);text-decoration:line-through}.history-arrow{color:var(--gray-500)}.history-correct{color:var(--success)}.history-tags{display:flex;align-items:center;gap:.5rem}.history-domain{font-size:.75rem;color:var(--gray-500);text-transform:capitalize}.history-mode-tag{font-size:.625rem;font-weight:600;padding:.125rem .375rem;border-radius:.25rem;text-transform:uppercase;letter-spacing:.03em}.history-mode-tag.standard{background:#64748b26;color:var(--gray-600)}.history-mode-tag.blitz{background:#fb923c26;color:#ea580c}.history-meta{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.history-grade{font-size:1rem;font-weight:700}.history-score{font-size:.875rem;font-weight:600;color:var(--gray-700);min-width:2rem;text-align:right}.history-date{font-size:.75rem;color:var(--gray-500);min-width:5rem;text-align:right}.info-section{padding:1.5rem;background:#fff;border-radius:.75rem;box-shadow:0 2px 8px #0000000d}.info-section p{font-size:.875rem;color:var(--gray-700);line-height:1.7;margin:0}@media (max-width: 600px){.dashboard{padding:1rem;min-height:calc(100vh - 60px);min-height:calc(100dvh - 60px)}.dashboard-content{max-width:100%}.welcome-title{font-size:1.375rem}.welcome-subtitle{font-size:.9375rem}.action-section{margin-bottom:2rem}.action-row-primary{flex-direction:column;gap:.75rem}.start-case-btn{width:100%;justify-content:center;padding:1rem 1.5rem}.past-cases-btn{width:100%;justify-content:center}.action-row-secondary{flex-direction:column;gap:.5rem}.test-mode-btn,.feedback-dashboard-btn{width:100%;justify-content:center}.stats-section{grid-template-columns:1fr;gap:.75rem}.stat-card{flex-direction:row;justify-content:space-between;padding:1rem}.stat-icon{margin-bottom:0;order:-1}.stat-label{order:0;flex:1;text-align:left;margin-left:.75rem}.stat-value{order:1}.history-section{margin-bottom:1.5rem}.history-item{flex-direction:column;align-items:flex-start;gap:.625rem;padding:1rem}.history-item.clickable:active{background:var(--gray-100)}.history-main{width:100%}.history-diagnosis{font-size:.9375rem}.history-meta{width:100%;justify-content:flex-start}.history-grade{font-size:1.125rem}.history-score{font-size:.9375rem}.history-date{margin-left:auto;font-size:.6875rem}.info-section{padding:1rem}.info-section p{font-size:.8125rem;line-height:1.6}}.feedback-dashboard{min-height:100vh;background:var(--gray-100)}.feedback-dashboard-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background:var(--secondary);color:#fff;flex-wrap:wrap;gap:1rem}.feedback-header-left{display:flex;align-items:center;gap:1rem}.feedback-header-left h1{font-size:1.25rem;margin:0}.feedback-header-left .btn-back{color:var(--secondary);background:var(--primary);border-color:var(--primary)}.feedback-header-left .btn-back:hover{background:#fff;border-color:#fff;color:var(--secondary)}.feedback-stats{display:flex;gap:.5rem;flex-wrap:wrap}.stat-badge{padding:.375rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600}.stat-total{background:var(--gray-600);color:#fff}.stat-unread{background:var(--primary);color:var(--secondary)}.stat-important{background:#ef4444;color:#fff}.stat-solved{background:#22c55e;color:#fff}.feedback-filters{display:flex;gap:.5rem;padding:1rem 2rem;background:#fff;border-bottom:1px solid var(--gray-200);flex-wrap:wrap}.feedback-error-banner{display:flex;align-items:center;justify-content:space-between;background:#fef2f2;color:#b91c1c;padding:.75rem 2rem;border-bottom:1px solid #fecaca}.feedback-error-banner button{background:none;border:none;font-size:1.25rem;cursor:pointer;color:inherit}.feedback-loading,.feedback-empty{text-align:center;padding:3rem;color:var(--gray-500)}.feedback-list{padding:1rem 2rem 2rem;max-width:1200px;margin:0 auto}.feedback-card{background:#fff;border-radius:8px;margin-bottom:.75rem;box-shadow:0 1px 3px #0000001a;overflow:hidden;border-left:4px solid transparent}.feedback-card.status-unread{border-left-color:var(--primary)}.feedback-card.status-important{border-left-color:#ef4444}.feedback-card.status-solved{border-left-color:#22c55e}.feedback-card.status-irrelevant{border-left-color:var(--gray-400)}.feedback-card-header{padding:1rem;cursor:pointer;display:flex;align-items:flex-start;gap:1rem}.feedback-card-header:hover{background:var(--gray-50)}.feedback-card-meta{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.status-badge{padding:.25rem .5rem;border-radius:4px;font-size:.625rem;font-weight:700;text-transform:uppercase}.status-badge.status-unread{background:#fef3c7;color:#92400e}.status-badge.status-important{background:#fee2e2;color:#b91c1c}.status-badge.status-solved{background:#dcfce7;color:#166534}.status-badge.status-irrelevant{background:var(--gray-200);color:var(--gray-600)}.context-badge{padding:.25rem .5rem;border-radius:4px;font-size:.625rem;font-weight:600;background:var(--gray-100);color:var(--gray-600)}.feedback-date{font-size:.75rem;color:var(--gray-500)}.feedback-preview{flex:1;font-size:.9375rem;color:var(--gray-700);line-height:1.4}.feedback-expand-icon{color:var(--gray-400);flex-shrink:0}.feedback-card-body{padding:0 1rem 1rem;border-top:1px solid var(--gray-200)}.feedback-full-text{margin-top:1rem}.feedback-full-text h4{margin:0 0 .5rem;font-size:.875rem;color:var(--gray-500);text-transform:uppercase}.feedback-full-text p{margin:0;white-space:pre-wrap;color:var(--secondary);line-height:1.6}.feedback-user-info{margin-top:1rem;padding:.75rem;background:var(--gray-50);border-radius:6px;font-size:.875rem}.test-user-badge{margin-left:.5rem;padding:.125rem .5rem;background:var(--warning);color:var(--secondary);border-radius:4px;font-size:.75rem;font-weight:600}.feedback-case-details{margin-top:1rem;padding:1rem;background:var(--gray-50);border-radius:8px;border:1px solid var(--gray-200)}.feedback-case-details h4{margin:0 0 .75rem;font-size:.875rem;color:var(--gray-500);text-transform:uppercase}.feedback-case-details h5{margin:1rem 0 .5rem;font-size:.8125rem;color:var(--gray-600)}.case-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.5rem;font-size:.875rem}.case-info-grid .correct{color:#16a34a;font-weight:600}.case-info-grid .incorrect{color:#dc2626;font-weight:600}.chat-history-list{max-height:200px;overflow-y:auto;font-size:.875rem;border:1px solid var(--gray-200);border-radius:6px;background:#fff}.chat-msg{padding:.5rem .75rem;border-bottom:1px solid var(--gray-100)}.chat-msg:last-child{border-bottom:none}.chat-msg.player{background:#eff6ff}.chat-role{font-weight:600;margin-right:.5rem;color:var(--gray-600)}.case-test-results ul,.case-exam-results ul{margin:0;padding-left:1.25rem;font-size:.875rem}.case-test-results li,.case-exam-results li{margin-bottom:.25rem}.case-test-results li.abnormal,.case-exam-results li.abnormal{color:#dc2626}.feedback-actions{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--gray-200);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem}.status-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.status-btn{padding:.5rem 1rem;border:1px solid var(--gray-300);background:#fff;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .15s}.status-btn:hover{border-color:var(--gray-400)}.status-btn.active{color:#fff}.status-btn.btn-important:hover,.status-btn.btn-important.active{background:#ef4444;border-color:#ef4444;color:#fff}.status-btn.btn-solved:hover,.status-btn.btn-solved.active{background:#22c55e;border-color:#22c55e;color:#fff}.status-btn.btn-irrelevant:hover,.status-btn.btn-irrelevant.active{background:var(--gray-500);border-color:var(--gray-500);color:#fff}.status-btn.btn-unread:hover{background:var(--primary);border-color:var(--primary);color:var(--secondary)}.btn-danger{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.btn-danger:hover{background:#fee2e2}.btn-sm{padding:.375rem .75rem;font-size:.8125rem}@media (max-width: 768px){.feedback-dashboard-header{padding:1rem}.feedback-filters{padding:.75rem 1rem}.feedback-list{padding:.75rem 1rem 1.5rem}.feedback-card-header{flex-wrap:wrap}.feedback-card-meta{width:100%;margin-bottom:.5rem}.case-info-grid{grid-template-columns:1fr}.feedback-actions{flex-direction:column;align-items:stretch}.status-buttons{justify-content:center}}.past-cases-page{min-height:100vh;background:var(--gray-100)}.past-cases-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background:var(--secondary);color:#fff;flex-wrap:wrap;gap:1rem}.past-cases-header-left{display:flex;align-items:center;gap:1rem}.past-cases-header-left h1{font-size:1.25rem;margin:0}.past-cases-header-left .btn-back{color:var(--secondary);background:var(--primary);border-color:var(--primary)}.past-cases-header-left .btn-back:hover{background:#fff;border-color:#fff;color:var(--secondary)}.past-cases-stats{display:flex;gap:.5rem;flex-wrap:wrap}.stat-pill{padding:.375rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;background:var(--gray-600)}.stat-pill.correct{background:#22c55e33;color:#22c55e}.stat-pill.incorrect{background:#ef444433;color:#ef4444}.past-cases-filters{display:flex;gap:.5rem;padding:1rem 2rem;background:#fff;border-bottom:1px solid var(--gray-200);flex-wrap:wrap}.filter-btn{padding:.5rem 1rem;border:1px solid var(--gray-300);background:#fff;border-radius:20px;font-size:.875rem;cursor:pointer;transition:all .15s}.filter-btn:hover{border-color:var(--primary);color:var(--primary)}.filter-btn.active{background:var(--primary);border-color:var(--primary);color:var(--secondary)}.past-cases-loading,.past-cases-empty{text-align:center;padding:3rem;color:var(--gray-500)}.past-cases-list{padding:1rem 2rem 2rem;max-width:1000px;margin:0 auto}.past-case-card{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:#fff;border-radius:8px;margin-bottom:.75rem;box-shadow:0 1px 3px #0000001a;cursor:pointer;transition:all .15s}.past-case-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.past-case-left{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.past-case-result{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;flex-shrink:0}.past-case-result.correct{background:#dcfce7;color:#166534}.past-case-result.incorrect{background:#fee2e2;color:#b91c1c}.past-case-result.timeout{background:#fef3c7;color:#92400e}.past-case-info{flex:1;min-width:0}.past-case-diagnosis{font-size:.9375rem;margin-bottom:.375rem}.diagnosis-text{font-weight:600;color:var(--secondary)}.submitted-diagnosis{color:var(--danger);text-decoration:line-through}.arrow{color:var(--gray-400);margin:0 .5rem}.correct-diagnosis{color:var(--success);font-weight:600}.past-case-tags{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.domain-tag{font-size:.75rem;color:var(--gray-500);text-transform:capitalize}.mode-tag{font-size:.625rem;font-weight:600;padding:.125rem .375rem;border-radius:4px;text-transform:uppercase}.mode-tag.standard{background:#64748b26;color:var(--gray-600)}.mode-tag.blitz{background:#fb923c26;color:#ea580c}.stats-tag{font-size:.75rem;color:var(--gray-400)}.past-case-right{display:flex;align-items:center;gap:1rem;flex-shrink:0}.past-case-grade{display:flex;flex-direction:column;align-items:center;padding:.5rem .75rem;border-radius:8px;color:#fff;min-width:50px}.grade-letter{font-size:1.25rem;font-weight:700}.grade-score{font-size:.75rem;opacity:.9}.past-case-date{font-size:.75rem;color:var(--gray-500);min-width:100px;text-align:right}@media (max-width: 768px){.past-cases-page{min-height:100vh;min-height:100dvh}.past-cases-header{padding:.75rem 1rem;flex-direction:column;align-items:flex-start;gap:.75rem}.past-cases-header-left{gap:.75rem}.past-cases-header-left h1{font-size:1.125rem}.past-cases-header-left .btn-back{padding:.5rem .75rem;font-size:.875rem}.past-cases-stats{width:100%;justify-content:flex-start}.stat-pill{font-size:.6875rem;padding:.25rem .625rem}.past-cases-filters{padding:.5rem 1rem;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:.375rem}.filter-btn{padding:.375rem .75rem;font-size:.8125rem;white-space:nowrap;flex-shrink:0}.past-cases-list{padding:.75rem 1rem 1.5rem}.past-cases-loading,.past-cases-empty{padding:2rem 1rem}.past-case-card{flex-direction:column;align-items:flex-start;gap:.75rem;padding:.875rem 1rem}.past-case-card:active{background:var(--gray-50)}.past-case-left{width:100%}.past-case-result{width:36px;height:36px;font-size:1.125rem}.past-case-diagnosis{font-size:.875rem}.past-case-tags{gap:.375rem}.domain-tag{font-size:.6875rem}.mode-tag{font-size:.5625rem;padding:.125rem .3125rem}.stats-tag{font-size:.6875rem}.past-case-right{width:100%;justify-content:space-between}.past-case-grade{padding:.375rem .625rem;min-width:45px}.grade-letter{font-size:1.125rem}.grade-score{font-size:.6875rem}.past-case-date{font-size:.6875rem;min-width:auto}}.challenge-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1rem;background:linear-gradient(135deg,var(--background) 0%,var(--gray-100) 100%)}.challenge-loading{text-align:center}.loading-spinner{width:48px;height:48px;border:4px solid var(--gray-200);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.challenge-loading p{color:var(--gray-600)}.challenge-error{text-align:center;padding:2rem}.error-icon{width:60px;height:60px;border-radius:50%;background-color:var(--danger-light);color:var(--danger-dark);font-size:2rem;font-weight:700;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}.challenge-error h2{margin:0 0 .5rem;color:var(--gray-800)}.challenge-error p{color:var(--gray-600);margin-bottom:1.5rem}.challenge-expired{text-align:center;padding:2rem}.expired-icon{font-size:3rem;margin-bottom:1rem}.challenge-expired h2{margin:0 0 .5rem;color:var(--gray-800)}.challenge-expired p{color:var(--gray-600);margin-bottom:.5rem}.expired-hint{font-size:.875rem;color:var(--gray-500);margin-bottom:1.5rem!important}.challenge-completed{text-align:center;padding:2rem;background:#fff;border-radius:1rem;box-shadow:var(--shadow-lg);max-width:400px}.challenge-completed h2{margin:0 0 1.5rem;color:var(--gray-800)}.completed-result{display:flex;justify-content:center;align-items:center;gap:1.5rem;margin-bottom:1.5rem}.completed-player{display:flex;flex-direction:column;align-items:center;gap:.5rem}.player-name{font-size:.875rem;font-weight:500;color:var(--gray-600)}.player-score{font-size:.875rem;color:var(--gray-500)}.completed-vs{font-size:1rem;font-weight:600;color:var(--gray-400)}.winner-announcement{margin-bottom:1.5rem}.winner-announcement p{font-size:1.25rem;font-weight:700;color:var(--primary)}.challenge-already-played{text-align:center;padding:2rem;background:#fff;border-radius:1rem;box-shadow:var(--shadow-lg);max-width:400px}.challenge-already-played h2{margin:0 0 1.5rem;color:var(--gray-800)}.already-result{display:flex;justify-content:center;align-items:center;gap:1.5rem;margin-bottom:1.5rem}.your-result,.their-result{display:flex;flex-direction:column;align-items:center;gap:.5rem}.result-label{font-size:.875rem;font-weight:500;color:var(--gray-600)}.result-score{font-size:.875rem;color:var(--gray-500)}.vs-divider{font-size:1rem;font-weight:600;color:var(--gray-400)}.already-verdict{margin-bottom:1.5rem}.verdict{font-size:1.125rem;font-weight:600}.verdict.win{color:#22c55e}.verdict.tie{color:var(--primary)}.verdict.lose{color:var(--gray-600)}.grade-badge{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:800}.grade-badge.large{width:64px;height:64px;font-size:1.75rem}.challenge-card{background:#fff;border-radius:1rem;box-shadow:var(--shadow-lg);padding:2rem;max-width:400px;width:100%;text-align:center}.challenge-header{margin-bottom:1.5rem}.challenge-icon{font-size:3rem;margin-bottom:.5rem}.challenge-header h1{margin:0;font-size:1.5rem;color:var(--gray-800)}.challenger-info{display:flex;flex-direction:column;align-items:center;gap:.25rem;margin-bottom:1.5rem}.challenger-name{font-size:1.25rem;font-weight:700;color:var(--secondary);margin:0}.challenger-text{font-size:.875rem;color:var(--gray-500);margin:0}.challenger-grade{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.5rem;font-weight:800;margin:.5rem 0;box-shadow:0 4px 12px #0000001a}.case-domain{font-size:1.125rem;font-weight:600;color:var(--gray-700);margin:0;text-transform:capitalize}.challenge-mode-badge{margin-top:.75rem;padding:.375rem 1rem;font-size:.75rem;font-weight:700;letter-spacing:.05em;border-radius:9999px}.challenge-mode-badge.blitz{background:linear-gradient(135deg,#fef3c7,#fbbf24);color:#92400e;animation:pulse-blitz 2s ease-in-out infinite}@keyframes pulse-blitz{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.challenge-taunt{margin-bottom:1.5rem;padding:.75rem 1rem;background:var(--gray-50);border-radius:.5rem}.challenge-taunt p{margin:0;font-size:1rem;font-weight:500;color:var(--gray-700)}.challenge-actions{display:flex;flex-direction:column;gap:.75rem}.accept-btn{padding:1rem 2rem;font-size:1.125rem}.challenge-error-msg{margin-top:1rem;font-size:.875rem;color:var(--danger-dark)}.result-announcement{margin-bottom:1.5rem}.result-text{font-size:1.5rem;font-weight:700;margin:0}.result-text.win{color:#22c55e}.result-text.tie{color:var(--primary)}.result-text.lose{color:#ef4444}.leaderboard-section{margin:1.5rem 0;text-align:left}.leaderboard-section h3,.expired-leaderboard h3{font-size:1rem;font-weight:600;color:var(--gray-700);margin:0 0 1rem;text-align:center}.leaderboard-preview{margin-bottom:1.5rem;padding:1rem;background:var(--gray-50);border-radius:.75rem}.leaderboard-preview-text{font-size:.875rem;color:var(--gray-600);margin:0 0 .75rem}.leaderboard{display:flex;flex-direction:column;gap:.5rem}.leaderboard-entry{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;background:#fff;border-radius:.5rem;border:1px solid var(--gray-200)}.leaderboard-entry.is-you{background:#eff6ff;border-color:#3b82f6}.leaderboard-entry.is-challenger{border-left:3px solid var(--secondary)}.leaderboard-position{min-width:32px;font-size:1rem;text-align:center}.leaderboard-name{flex:1;font-size:.875rem;font-weight:500;color:var(--gray-800);display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.challenger-tag,.you-tag{font-size:.75rem;font-weight:500;padding:.125rem .375rem;border-radius:.25rem}.challenger-tag{background:#e0e7ff;color:#4338ca}.you-tag{background:#dbeafe;color:#1d4ed8}.leaderboard-grade{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:700}.leaderboard-score{min-width:40px;text-align:right;font-size:.875rem;font-weight:600;color:var(--gray-700)}.expired-leaderboard{margin:1.5rem 0;padding:1rem;background:#fff;border-radius:.75rem;text-align:left}@media (max-width: 768px){.challenge-card{padding:1.5rem;margin:0 1rem}.challenge-header h1{font-size:1.25rem}.challenger-grade{width:64px;height:64px;font-size:2rem}.challenge-already-played{max-width:100%;margin:0 1rem}.leaderboard-name{font-size:.8125rem}.leaderboard-entry{gap:.5rem;padding:.5rem}}.persona-card{padding:1.5rem}.persona-header{display:flex;gap:1rem;align-items:center;margin-bottom:1rem}.persona-avatar{width:3.5rem;height:3.5rem;border-radius:50%;background-color:var(--secondary);color:var(--background);display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:600;flex-shrink:0}.persona-info{flex:1}.persona-name{font-size:1.25rem;font-weight:600;color:var(--gray-900);margin-bottom:.25rem}.persona-details{font-size:.875rem;color:var(--gray-500)}.persona-complaint{background-color:var(--gray-50);border-left:3px solid var(--primary);padding:1rem;border-radius:.25rem;margin-bottom:1rem}.persona-complaint p{font-style:italic;color:var(--gray-700);line-height:1.6}.persona-lifestyle{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--gray-200)}.lifestyle-item{font-size:.75rem;color:var(--gray-600);background-color:var(--gray-100);padding:.25rem .5rem;border-radius:.25rem}.persona-traits{display:flex;gap:.5rem;flex-wrap:wrap}.trait-badge{font-size:.75rem;color:var(--secondary);background-color:var(--primary-light);padding:.25rem .75rem;border-radius:9999px}.persona-card.collapsible .persona-header.clickable{cursor:pointer;transition:background-color .15s;margin:-1.5rem -1.5rem 0;padding:1.5rem;border-radius:.5rem .5rem 0 0}.persona-card.collapsible .persona-header.clickable:hover{background-color:var(--gray-50)}.persona-card.collapsible.collapsed .persona-header.clickable{margin-bottom:-1.5rem;border-radius:.5rem}.collapse-toggle{background:var(--primary);border:none;color:var(--secondary);cursor:pointer;padding:0;margin-left:auto;flex-shrink:0;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .15s}.collapse-toggle:hover{background:var(--primary-dark);transform:scale(1.1)}.collapse-toggle .toggle-icon{font-size:1.5rem;font-weight:700;line-height:1}.persona-complaint-brief{margin-top:.75rem;padding:.5rem .75rem;background-color:var(--gray-50);border-left:3px solid var(--primary);border-radius:.25rem}.persona-complaint-brief p{font-size:.8125rem;font-style:italic;color:var(--gray-600);margin:0;line-height:1.4}.mobile-patient-header .persona-card{border-radius:0;box-shadow:none;border:none;border-bottom:1px solid var(--gray-200)}.mobile-patient-header .persona-card.collapsed .persona-header.clickable{margin:0;padding:0;border-radius:0}.mobile-patient-header .persona-card.collapsed .persona-avatar{width:2.5rem;height:2.5rem;font-size:1.125rem}.mobile-patient-header .persona-card.collapsed .persona-name{font-size:1rem}.mobile-patient-header .persona-card.collapsed .persona-details{font-size:.75rem}.mobile-patient-header .persona-card.collapsed .persona-complaint-brief{margin-top:.5rem;padding:.375rem .5rem}.mobile-patient-header .persona-card.collapsed .persona-complaint-brief p{font-size:.75rem}.mobile-patient-header .persona-card.expanded .persona-header.clickable{margin:-1rem -1rem 0;padding:1rem}.mobile-panel .persona-card{height:100%;overflow-y:auto;display:flex;flex-direction:column}.mobile-panel .persona-card.collapsed{height:auto;flex:none}.diagnosis-list{padding:1.25rem;display:flex;flex-direction:column;height:100%}.diagnosis-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.diagnosis-title{font-size:1rem;font-weight:600;color:var(--gray-900)}.question-count{font-size:.75rem;color:var(--gray-500);background-color:var(--gray-100);padding:.25rem .5rem;border-radius:9999px}.diagnosis-instruction{font-size:.813rem;color:var(--gray-500);margin-bottom:1rem}.diagnosis-items{display:flex;flex-direction:column;gap:.5rem;flex:1;overflow-y:auto}.diagnosis-item{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;padding:.75rem;border-radius:.5rem;border:1px solid var(--gray-200);background-color:var(--background);cursor:pointer;transition:all .15s ease;text-align:left;width:100%}.diagnosis-item:hover:not(:disabled){border-color:var(--primary);background-color:var(--primary-light)}.diagnosis-item.selected{border-color:var(--primary);background-color:var(--primary-light);box-shadow:0 0 0 2px var(--primary)}.diagnosis-item:disabled{opacity:.5;cursor:not-allowed}.diagnosis-name{font-size:.875rem;font-weight:600;color:var(--gray-900)}.diagnosis-desc{font-size:.75rem;color:var(--gray-500)}.confirm-dialog{margin-top:1rem;padding:1rem;background-color:var(--gray-50);border-radius:.5rem;border:1px solid var(--gray-200)}.confirm-dialog p{font-size:.875rem;color:var(--gray-700);margin-bottom:.75rem}.confirm-actions{display:flex;gap:.5rem;justify-content:flex-end}.mobile-panel .diagnosis-list{height:100%;display:flex;flex-direction:column;padding:1rem}.mobile-panel .diagnosis-items{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;gap:.5rem}.mobile-panel .diagnosis-item{padding:1rem;min-height:auto;height:auto;margin-bottom:.5rem;gap:.5rem;flex-shrink:0}.mobile-panel .diagnosis-item:last-child{margin-bottom:0}.mobile-panel .diagnosis-name{font-size:1rem;margin-bottom:.25rem;white-space:normal;word-wrap:break-word}.mobile-panel .diagnosis-desc{font-size:.875rem;line-height:1.4;white-space:normal;word-wrap:break-word}.mobile-panel .confirm-dialog{position:sticky;bottom:0;margin:1rem -1rem -1rem;padding:1rem;background:var(--gray-50);border-radius:0;border-top:1px solid var(--gray-200);box-shadow:0 -2px 10px #0000001a}.mobile-panel .confirm-dialog p{font-size:.9375rem;margin-bottom:1rem}.mobile-panel .confirm-actions{flex-direction:column;gap:.5rem}.mobile-panel .confirm-actions .btn{width:100%;padding:.875rem}.chat-interface{display:flex;flex-direction:column;height:100%;background-color:var(--background);border-radius:.5rem;box-shadow:var(--shadow);overflow:hidden}.chat-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.chat-interface.chat-empty{justify-content:flex-start}.chat-interface.chat-empty .chat-messages{flex:0 0 auto;padding-top:2rem}.chat-hint{text-align:center;color:var(--gray-600);padding:1.5rem;display:flex;flex-direction:column;align-items:center;gap:.5rem}.chat-hint-icon{font-size:2.5rem;margin-bottom:.5rem}.chat-hint-title{font-size:1.125rem;font-weight:600;color:var(--gray-800)}.chat-hint-text{font-size:.875rem;color:var(--gray-500);max-width:300px;line-height:1.5}.chat-message{max-width:85%;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-message.player{align-self:flex-end}.chat-message.patient{align-self:flex-start}.message-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.message-role{font-size:.75rem;font-weight:600;color:var(--gray-500)}.quality-badge{font-size:.688rem;font-weight:600;padding:.125rem .375rem;border-radius:.25rem}.quality-badge.quality-high{background-color:var(--success-light);color:var(--success-dark)}.quality-badge.quality-medium{background-color:var(--warning-light);color:var(--text-primary)}.quality-badge.quality-low{background-color:var(--danger-light);color:var(--danger-dark)}.message-content{padding:.75rem 1rem;border-radius:1rem;line-height:1.5;font-size:.938rem}.chat-message.player .message-content{background-color:var(--primary);color:var(--text-primary);border-bottom-right-radius:.25rem}.chat-message.patient .message-content{background-color:var(--gray-100);color:var(--gray-800);border-bottom-left-radius:.25rem}.typing-indicator{display:inline-flex;gap:.25rem;padding:.25rem 0}.typing-indicator span{width:.5rem;height:.5rem;background-color:var(--gray-400);border-radius:50%;animation:bounce 1.4s infinite ease-in-out}.typing-indicator span:nth-child(1){animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.chat-input-form{display:flex;gap:.5rem;padding:1rem;border-top:1px solid var(--gray-200);background-color:var(--gray-50)}.chat-input{flex:1;padding:.75rem 1rem;border:1px solid var(--gray-300);border-radius:1.5rem;font-size:.938rem;outline:none;transition:border-color .15s ease}.chat-input:focus{border-color:var(--primary)}.chat-input:disabled{background-color:var(--gray-100);cursor:not-allowed}.send-btn{padding:.75rem 1.25rem;border-radius:1.5rem}.mobile-panel .chat-interface{height:100%;display:flex;flex-direction:column;border-radius:0}.mobile-panel .chat-messages{flex:1;padding:.75rem;min-height:0}.mobile-panel .chat-message{max-width:90%}.mobile-panel .message-content{padding:.625rem .875rem;font-size:.9375rem}.mobile-panel .chat-input-form{padding:.75rem;padding-bottom:calc(.75rem + env(safe-area-inset-bottom,0));background:var(--background);border-top:1px solid var(--gray-200)}.mobile-panel .chat-input{padding:.625rem 1rem;font-size:1rem}.mobile-panel .send-btn{padding:.625rem 1rem;min-width:60px}.test-panel{display:flex;flex-direction:column;height:100%;background:var(--background);border-radius:.5rem;overflow:hidden}.test-order-section{padding:1rem;border-bottom:1px solid var(--gray-200)}.test-order-section h3{font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--gray-800)}.test-categories{max-height:250px;overflow-y:auto;margin-bottom:1rem;border:1px solid var(--gray-200);border-radius:.375rem}.test-category{border-bottom:1px solid var(--gray-100)}.test-category:last-child{border-bottom:none}.category-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--gray-50);border:none;cursor:pointer;font-weight:500;color:var(--gray-700);transition:background-color .15s}.category-header:hover{background:var(--gray-100)}.category-header.expanded{background:var(--primary);color:var(--text-primary)}.expand-icon{font-size:1.25rem;font-weight:300}.test-list{padding:.5rem;display:flex;flex-direction:column;gap:.25rem}.test-option{padding:.5rem .75rem;text-align:left;background:var(--background);border:1px solid var(--gray-200);border-radius:.25rem;cursor:pointer;font-size:.875rem;color:var(--gray-700);transition:all .15s;display:flex;justify-content:space-between;align-items:center}.test-option:hover:not(:disabled){background:var(--gray-100);border-color:var(--primary)}.test-option.selected{background:var(--primary);color:var(--text-primary);border-color:var(--primary)}.test-option.selected:hover{background:var(--primary-dark);border-color:var(--primary-dark)}.test-option.ordered{background:var(--gray-100);color:var(--gray-500);cursor:default}.ordered-badge{font-size:.75rem;background:var(--gray-300);padding:.125rem .5rem;border-radius:1rem}.order-btn{flex:1}.test-results-section{flex:1;padding:1rem;overflow-y:auto;background:var(--gray-50)}.test-results-section h3{font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--gray-800)}.no-results{color:var(--gray-500);font-size:.875rem;text-align:center;padding:2rem 1rem}.results-list{display:flex;flex-direction:column;gap:.75rem}.result-card{background:var(--background);border-radius:.5rem;padding:.75rem 1rem;border-left:4px solid var(--success);box-shadow:var(--shadow)}.result-card.abnormal{border-left-color:var(--danger)}.result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.result-name{font-weight:600;font-size:.875rem;color:var(--gray-800)}.result-badge{font-size:.75rem;padding:.125rem .5rem;border-radius:1rem;font-weight:500}.result-badge.normal{background:var(--success-light);color:var(--success-dark)}.result-badge.abnormal{background:var(--danger-light);color:var(--danger-dark)}.result-content{font-size:.875rem;color:var(--gray-600);line-height:1.5;white-space:pre-wrap}.custom-order-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--gray-200)}.custom-order-divider{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.custom-order-divider:before,.custom-order-divider:after{content:"";flex:1;height:1px;background-color:var(--gray-300)}.custom-order-divider span{font-size:.75rem;color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em}.custom-order-input{width:100%;padding:.75rem;font-size:.875rem;border:1px solid var(--gray-300);border-radius:.375rem;resize:vertical;font-family:inherit;margin-bottom:.75rem;min-height:80px}.custom-order-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #41ead433}.custom-order-input::placeholder{color:var(--gray-400)}.custom-order-input:disabled{background-color:var(--gray-100);cursor:not-allowed}.validation-errors{margin-top:.75rem;display:flex;flex-direction:column;gap:.5rem}.validation-error{padding:.5rem .75rem;background-color:var(--danger-light);border-left:3px solid var(--danger);border-radius:.25rem;font-size:.8rem}.validation-error .error-input{font-weight:600;color:var(--danger-dark);display:block;margin-bottom:.25rem}.validation-error .error-message{color:var(--text-secondary);line-height:1.4}.mobile-test-panel{height:100%;display:block;padding:.75rem;overflow-y:auto;-webkit-overflow-scrolling:touch}.mobile-test-panel>*{margin-bottom:.75rem}.mobile-test-panel>*:last-child{margin-bottom:0}.mobile-select-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1rem;font-size:1rem;font-weight:600;border-radius:.5rem;flex-shrink:0}.mobile-select-btn span:first-child{font-size:1.25rem;font-weight:700;color:var(--secondary)}.mobile-select-btn .selected-count{background:var(--secondary);color:var(--primary);padding:.125rem .5rem;border-radius:1rem;font-size:.75rem;margin-left:.25rem}.mobile-test-list{background:var(--gray-50);border-radius:.5rem;padding:.75rem;border:1px solid var(--gray-200)}.mobile-test-list .test-categories{max-height:250px;overflow-y:auto;-webkit-overflow-scrolling:touch;margin-bottom:.75rem;border:1px solid var(--gray-200);border-radius:.375rem}.mobile-test-list .category-header{min-height:48px}.mobile-test-list .test-option{min-height:44px;padding:.625rem .75rem}.mobile-custom-section{background:var(--gray-50);border-radius:.5rem;padding:.75rem;border:1px solid var(--gray-200)}.mobile-custom-section .custom-order-divider{margin-bottom:.5rem}.mobile-custom-section .custom-order-input{font-size:1rem;padding:.625rem .75rem;margin-bottom:.5rem}.mobile-findings-section{background:var(--background);border-radius:.5rem;border:1px solid var(--gray-200);overflow:hidden}.findings-toggle{width:100%;display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--gray-100);border:none;cursor:pointer;font-weight:600;font-size:.9375rem;color:var(--secondary);transition:background-color .15s}.findings-toggle:hover{background:var(--gray-200)}.findings-toggle .toggle-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--primary);color:var(--secondary);border-radius:50%;font-size:1.125rem;font-weight:700}.findings-content{padding:.75rem}.findings-content .no-results{padding:1rem;text-align:center}.findings-content .results-list{display:flex;flex-direction:column;gap:.5rem}.findings-content .result-card{padding:.625rem .75rem}.findings-content .result-name,.findings-content .result-content{font-size:.8125rem}.mobile-panel .test-panel:not(.mobile-test-panel){height:100%;display:flex;flex-direction:column;overflow:hidden}.mobile-panel .test-order-section{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:.75rem;min-height:0}.mobile-panel .test-order-section h3{flex-shrink:0;margin-bottom:.75rem}.mobile-panel .test-categories{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;max-height:none;min-height:0;margin-bottom:.75rem}.mobile-panel .category-header{padding:.75rem 1rem;min-height:48px}.mobile-panel .category-name{font-size:.9375rem}.mobile-panel .category-content{padding:.5rem}.mobile-panel .test-btn,.mobile-panel .test-option{min-height:44px;padding:.625rem .75rem;font-size:.875rem}.mobile-panel .action-buttons{flex-shrink:0}.mobile-panel .test-results-section{flex-shrink:0;max-height:40%;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:.75rem}.mobile-panel .result-card{padding:.75rem}.mobile-panel .custom-order-section{flex-shrink:0;padding-top:.75rem;margin-top:.75rem}.mobile-panel .custom-order-input{font-size:1rem;padding:.625rem .75rem}.examination-panel{display:flex;flex-direction:column;height:100%;background:var(--background);border-radius:.5rem;overflow:hidden}.exam-order-section{padding:1rem;border-bottom:1px solid var(--gray-200)}.exam-order-section h3{font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--gray-800)}.exam-categories{max-height:250px;overflow-y:auto;margin-bottom:1rem;border:1px solid var(--gray-200);border-radius:.375rem}.exam-category{border-bottom:1px solid var(--gray-100)}.exam-category:last-child{border-bottom:none}.exam-category .category-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--gray-50);border:none;cursor:pointer;font-weight:500;color:var(--gray-700);transition:background-color .15s}.exam-category .category-header:hover{background:var(--gray-100)}.exam-category .category-header.expanded{background:var(--primary);color:var(--text-primary)}.exam-category .expand-icon{font-size:1.25rem;font-weight:300}.exam-list{padding:.5rem;display:flex;flex-direction:column;gap:.25rem}.exam-option{padding:.5rem .75rem;text-align:left;background:var(--background);border:1px solid var(--gray-200);border-radius:.25rem;cursor:pointer;font-size:.875rem;color:var(--gray-700);transition:all .15s;display:flex;justify-content:space-between;align-items:center}.exam-option:hover:not(:disabled):not(.selected){background:var(--gray-100);border-color:var(--primary)}.exam-option.selected{background:var(--primary);color:var(--text-primary);border-color:var(--primary)}.exam-option.selected:hover{background:var(--primary-dark);border-color:var(--primary-dark)}.exam-option.performed{background:var(--gray-100);color:var(--gray-500);cursor:default}.performed-badge{font-size:.75rem;background:var(--gray-300);padding:.125rem .5rem;border-radius:1rem}.action-buttons{display:flex;gap:.5rem}.perform-btn{flex:1}.clear-btn{flex-shrink:0;padding:.5rem 1rem}.selected-badge{font-size:.75rem;font-weight:600;color:var(--text-primary)}.exam-results-section{flex:1;padding:1rem;overflow-y:auto;background:var(--gray-50)}.exam-results-section h3{font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--gray-800)}.examination-panel .no-results{color:var(--gray-500);font-size:.875rem;text-align:center;padding:2rem 1rem}.examination-panel .results-list{display:flex;flex-direction:column;gap:.75rem}.examination-panel .result-card{background:var(--background);border-radius:.5rem;padding:.75rem 1rem;border-left:4px solid var(--success);box-shadow:var(--shadow)}.examination-panel .result-card.abnormal{border-left-color:var(--danger)}.examination-panel .result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.examination-panel .result-name{font-weight:600;font-size:.875rem;color:var(--gray-800)}.examination-panel .result-badge{font-size:.75rem;padding:.125rem .5rem;border-radius:1rem;font-weight:500}.examination-panel .result-badge.normal{background:var(--success-light);color:var(--success-dark)}.examination-panel .result-badge.abnormal{background:var(--danger-light);color:var(--danger-dark)}.examination-panel .result-content{font-size:.875rem;color:var(--gray-600);line-height:1.5;white-space:pre-wrap}.examination-panel .custom-order-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--gray-200)}.examination-panel .custom-order-divider{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.examination-panel .custom-order-divider:before,.examination-panel .custom-order-divider:after{content:"";flex:1;height:1px;background-color:var(--gray-300)}.examination-panel .custom-order-divider span{font-size:.75rem;color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em}.examination-panel .custom-order-input{width:100%;padding:.75rem;font-size:.875rem;border:1px solid var(--gray-300);border-radius:.375rem;resize:vertical;font-family:inherit;margin-bottom:.75rem;min-height:80px}.examination-panel .custom-order-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #41ead433}.examination-panel .custom-order-input::placeholder{color:var(--gray-400)}.examination-panel .custom-order-input:disabled{background-color:var(--gray-100);cursor:not-allowed}.examination-panel .validation-errors{margin-top:.75rem;display:flex;flex-direction:column;gap:.5rem}.examination-panel .validation-error{padding:.5rem .75rem;background-color:var(--danger-light);border-left:3px solid var(--danger);border-radius:.25rem;font-size:.8rem}.examination-panel .validation-error .error-input{font-weight:600;color:var(--danger-dark);display:block;margin-bottom:.25rem}.examination-panel .validation-error .error-message{color:var(--text-secondary);line-height:1.4}.mobile-exam-panel{height:100%;display:block;padding:.75rem;overflow-y:auto;-webkit-overflow-scrolling:touch}.mobile-exam-panel>*{margin-bottom:.75rem}.mobile-exam-panel>*:last-child{margin-bottom:0}.mobile-exam-panel .mobile-select-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1rem;font-size:1rem;font-weight:600;border-radius:.5rem;flex-shrink:0}.mobile-exam-panel .mobile-select-btn span:first-child{font-size:1.25rem;font-weight:700;color:var(--secondary)}.mobile-exam-panel .mobile-select-btn .selected-count{background:var(--secondary);color:var(--primary);padding:.125rem .5rem;border-radius:1rem;font-size:.75rem;margin-left:.25rem}.mobile-exam-list{background:var(--gray-50);border-radius:.5rem;padding:.75rem;border:1px solid var(--gray-200)}.mobile-exam-list .exam-categories{max-height:250px;overflow-y:auto;-webkit-overflow-scrolling:touch;margin-bottom:.75rem;border:1px solid var(--gray-200);border-radius:.375rem}.mobile-exam-list .category-header{min-height:48px}.mobile-exam-list .exam-option{min-height:44px;padding:.625rem .75rem}.mobile-exam-panel .mobile-custom-section{background:var(--gray-50);border-radius:.5rem;padding:.75rem;border:1px solid var(--gray-200)}.mobile-exam-panel .mobile-custom-section .custom-order-divider{margin-bottom:.5rem}.mobile-exam-panel .mobile-custom-section .custom-order-input{font-size:1rem;padding:.625rem .75rem;margin-bottom:.5rem}.mobile-exam-panel .mobile-findings-section{background:var(--background);border-radius:.5rem;border:1px solid var(--gray-200);overflow:hidden}.mobile-exam-panel .findings-toggle{width:100%;display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--gray-100);border:none;cursor:pointer;font-weight:600;font-size:.9375rem;color:var(--secondary);transition:background-color .15s}.mobile-exam-panel .findings-toggle:hover{background:var(--gray-200)}.mobile-exam-panel .findings-toggle .toggle-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--primary);color:var(--secondary);border-radius:50%;font-size:1.125rem;font-weight:700}.mobile-exam-panel .findings-content{padding:.75rem}.mobile-exam-panel .findings-content .no-results{padding:1rem;text-align:center}.mobile-exam-panel .findings-content .results-list{display:flex;flex-direction:column;gap:.5rem}.mobile-exam-panel .findings-content .result-card{padding:.625rem .75rem}.mobile-exam-panel .findings-content .result-name,.mobile-exam-panel .findings-content .result-content{font-size:.8125rem}.mobile-panel .examination-panel:not(.mobile-exam-panel){height:100%;display:flex;flex-direction:column;overflow:hidden}.mobile-panel .examination-panel .exam-order-section{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:.75rem;min-height:0}.mobile-panel .examination-panel .exam-order-section h3{flex-shrink:0;margin-bottom:.75rem}.mobile-panel .examination-panel .exam-categories{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;max-height:none;min-height:0;margin-bottom:.75rem}.mobile-panel .examination-panel .category-header{padding:.75rem 1rem;min-height:48px}.mobile-panel .examination-panel .category-name{font-size:.9375rem}.mobile-panel .examination-panel .category-content{padding:.5rem}.mobile-panel .examination-panel .exam-btn,.mobile-panel .examination-panel .exam-option{min-height:44px;padding:.625rem .75rem;font-size:.875rem}.mobile-panel .examination-panel .action-buttons{flex-shrink:0}.mobile-panel .examination-panel .exam-results-section{flex-shrink:0;max-height:40%;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:.75rem}.mobile-panel .examination-panel .result-card{padding:.75rem}.mobile-panel .examination-panel .custom-order-section{flex-shrink:0;padding-top:.75rem;margin-top:.75rem}.mobile-panel .examination-panel .custom-order-input{font-size:1rem;padding:.625rem .75rem}.coaching-modal{max-width:700px;max-height:90vh;display:flex;flex-direction:column}.coaching-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.25rem 1.5rem;background:linear-gradient(135deg,var(--primary-light) 0%,var(--gray-100) 100%);border-bottom:1px solid var(--gray-200)}.coaching-title-section{flex:1}.coaching-title{font-size:1.25rem;font-weight:700;color:var(--secondary);margin:0 0 .25rem}.coaching-disease{font-size:.875rem;color:var(--secondary-dark);font-weight:500}.coaching-close{background:none;border:none;font-size:1.5rem;color:var(--gray-500);cursor:pointer;padding:0;line-height:1}.coaching-close:hover{color:var(--gray-700)}.coaching-score-bar{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;background-color:var(--gray-50);border-bottom:1px solid var(--gray-200)}.coaching-score-bar .score-label{font-size:.75rem;font-weight:600;color:var(--gray-700);white-space:nowrap;min-width:fit-content}.coaching-score-bar .score-track{flex:1;max-width:120px;height:8px;background-color:var(--gray-200);border-radius:4px;overflow:hidden}.coaching-score-bar .score-fill{height:100%;border-radius:4px;transition:width .5s ease-out}.coaching-score-bar .score-value{font-size:.875rem;font-weight:700;color:var(--gray-800);min-width:40px;text-align:right}.coaching-tabs{display:flex;border-bottom:1px solid var(--gray-200);padding:0 1rem}.coaching-tabs .tab{padding:.75rem 1rem;font-size:.8rem;font-weight:500;color:var(--gray-500);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .2s}.coaching-tabs .tab:hover{color:var(--gray-700)}.coaching-tabs .tab.active{color:var(--secondary);border-bottom-color:var(--primary)}.coaching-content{flex:1;overflow-y:auto;padding:1rem 1.5rem}.tab-content{animation:fadeIn .2s ease-out}.coaching-summary{font-size:.9rem;line-height:1.8;color:var(--text-primary);padding:1.25rem;background-color:var(--primary-light);border-radius:.5rem;margin-bottom:1.25rem;white-space:pre-line;border-left:4px solid var(--primary)}.coaching-summary strong{font-weight:700;color:var(--secondary)}.feedback-section{padding:1rem 1.25rem;border-radius:.5rem;margin-bottom:1rem}.feedback-section h4{font-size:.9rem;font-weight:700;margin:0 0 .75rem;padding-bottom:.5rem;border-bottom:1px solid rgba(0,0,0,.1);display:flex;align-items:center;gap:.5rem}.feedback-section h4:before{content:"";width:4px;height:1em;background-color:currentColor;border-radius:2px;opacity:.5}.feedback-section ul{margin:0;padding-left:0;list-style:none}.feedback-section li{font-size:.85rem;margin-bottom:.75rem;line-height:1.7;white-space:pre-line;padding-left:1.5rem;position:relative}.feedback-section li:before{content:"→";position:absolute;left:0;opacity:.6;font-weight:700}.feedback-section li strong{font-weight:700}.feedback-section.strengths{background-color:var(--success-light)}.feedback-section.strengths h4,.feedback-section.strengths li{color:var(--text-primary)}.feedback-section.missed{background-color:var(--danger-light)}.feedback-section.missed h4,.feedback-section.missed li{color:var(--text-primary)}.feedback-section.unnecessary{background-color:var(--warning-light)}.feedback-section.unnecessary h4{color:var(--text-primary)}.feedback-section.unnecessary li{color:var(--text-secondary)}.pathway-intro{padding:.75rem;background-color:var(--primary-light);border-radius:.5rem;margin-bottom:1rem}.pathway-intro p{font-size:.85rem;color:var(--secondary-dark);margin:0;line-height:1.5}.pathway-section{margin-bottom:1.25rem}.pathway-section h4{font-size:.85rem;font-weight:600;color:var(--gray-700);margin:0 0 .5rem;padding-bottom:.25rem;border-bottom:1px solid var(--gray-200)}.pathway-step{padding:.5rem .75rem;border-radius:.375rem;border-left:3px solid;margin-bottom:.5rem;cursor:pointer;transition:all .2s}.pathway-step:hover{box-shadow:0 2px 4px #0000000d}.pathway-step.matched{position:relative}.pathway-step.missed{opacity:.7}.step-header{display:flex;align-items:center;gap:.5rem}.step-order{font-size:.7rem;font-weight:600;color:var(--gray-500)}.step-action{flex:1;font-size:.8rem;font-weight:500;color:var(--gray-800)}.step-importance{font-size:.65rem;font-weight:700;padding:.125rem .375rem;border-radius:.25rem;background-color:#ffffff80}.step-check{color:var(--success);font-weight:700}.step-expand{font-size:.6rem;color:var(--gray-400);margin-left:.25rem}.step-details{margin-top:.5rem;padding-top:.5rem;border-top:1px dashed rgba(0,0,0,.1)}.step-details-list{margin:0;padding:0;list-style:none}.step-details-list li{display:flex;flex-direction:column;gap:.125rem;margin-bottom:.5rem;padding-left:.75rem;border-left:2px solid rgba(0,0,0,.1)}.step-details-list li:last-child{margin-bottom:0}.detail-label{font-size:.7rem;font-weight:700;color:var(--gray-700);text-transform:uppercase;letter-spacing:.025em}.detail-value{font-size:.75rem;color:var(--gray-600);line-height:1.5}.detail-quote{font-style:italic;color:var(--gray-500)}.step-detail{font-size:.75rem;color:var(--gray-600);margin-bottom:.25rem}.step-reference{font-size:.7rem;color:var(--gray-500);font-style:italic;margin-top:.25rem}.differential-card{padding:.75rem;background-color:var(--gray-50);border-radius:.375rem;margin-bottom:.5rem}.diff-name{font-size:.85rem;font-weight:600;color:var(--gray-700);margin-bottom:.25rem}.diff-rule-out{font-size:.75rem;color:var(--gray-500)}.diff-reference{font-size:.7rem;color:var(--gray-400);font-style:italic;margin-top:.25rem}.comparison-section{margin-bottom:1.25rem}.comparison-section h4{font-size:.85rem;font-weight:600;color:var(--gray-700);margin:0 0 .5rem}.no-items{font-size:.8rem;color:var(--gray-400);font-style:italic;margin:0}.action-list{margin:0;padding:0;list-style:none}.action-item{padding:.75rem 1rem;border-radius:.375rem;margin-bottom:.5rem;border-left:3px solid}.action-item.correct{background-color:var(--success-light);border-left-color:var(--success)}.action-item.missed{background-color:var(--danger-light);border-left-color:var(--danger)}.action-item.unnecessary{background-color:var(--warning-light);border-left-color:var(--warning)}.action-item.ordering{background-color:var(--primary-light);border-left-color:var(--primary)}.action-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.375rem}.action-type-badge{font-size:.6rem;font-weight:700;text-transform:uppercase;color:#fff;background-color:var(--gray-500);padding:.125rem .375rem;border-radius:.25rem;letter-spacing:.025em}.action-item.correct .action-type-badge{background-color:var(--success)}.action-item.missed .action-type-badge{background-color:var(--danger)}.action-item.unnecessary .action-type-badge{background-color:var(--warning)}.action-item .action-name{font-size:.85rem;font-weight:600;color:var(--gray-800)}.action-details{font-size:.75rem;color:var(--gray-600);line-height:1.6;padding-left:.5rem;border-left:2px solid rgba(0,0,0,.1)}.action-label{font-weight:700;color:var(--gray-700)}.action-item .action-feedback{font-size:.75rem;color:var(--gray-600);line-height:1.6;padding-left:.5rem;border-left:2px solid rgba(0,0,0,.1)}.order-comparison{font-size:.7rem;color:var(--gray-600);margin-top:.375rem;padding:.25rem .5rem;background-color:#ffffff80;border-radius:.25rem;display:inline-flex;align-items:center;gap:.375rem}.order-label{font-weight:600;color:var(--gray-500)}.order-arrow{color:var(--primary);font-weight:700}.action-card{padding:.5rem .75rem;border-radius:.375rem;margin-bottom:.5rem;border-left:3px solid}.action-card.correct{background-color:var(--success-light);border-left-color:var(--success)}.action-card.missed{background-color:var(--danger-light);border-left-color:var(--danger)}.action-card.unnecessary{background-color:var(--warning-light);border-left-color:var(--warning)}.action-card.ordering{background-color:var(--primary-light);border-left-color:var(--primary)}.action-type{font-size:.65rem;font-weight:600;text-transform:uppercase;color:var(--gray-500);margin-right:.5rem}.action-name{font-size:.8rem;font-weight:500;color:var(--gray-800)}.action-feedback,.action-why{font-size:.75rem;color:var(--gray-600);margin-top:.25rem;white-space:pre-line;line-height:1.5}.learning-section{margin-bottom:1.5rem}.learning-section h4{font-size:.95rem;font-weight:700;color:var(--gray-800);margin:0 0 .75rem;padding-bottom:.5rem;border-bottom:2px solid var(--gray-200);display:flex;align-items:center;gap:.5rem}.learning-section h4:before{content:"📚";font-size:1rem}.learning-list{margin:0;padding-left:0;list-style:none;counter-reset:learning-counter}.learning-list li{font-size:.85rem;color:var(--gray-700);margin-bottom:1rem;line-height:1.7;white-space:pre-line;padding:.75rem 1rem .75rem 2.5rem;background-color:var(--gray-50);border-radius:.5rem;border-left:3px solid var(--primary);position:relative;counter-increment:learning-counter}.learning-list li:before{content:counter(learning-counter);position:absolute;left:.75rem;top:.75rem;width:1.25rem;height:1.25rem;background-color:var(--primary);color:var(--secondary);border-radius:50%;font-size:.7rem;font-weight:700;display:flex;align-items:center;justify-content:center}.learning-list li strong{font-weight:700;color:var(--secondary)}.textbook-section h4:before{content:"📖"}.textbook-excerpts{display:flex;flex-direction:column;gap:.75rem}.textbook-excerpt{position:relative;padding:1rem 1.25rem;background:linear-gradient(135deg,var(--gray-50) 0%,white 100%);border-radius:.5rem;border:1px solid var(--gray-200);font-size:.85rem;color:var(--gray-700);line-height:1.8}.textbook-excerpt.is-quote{padding-left:2.5rem;background:linear-gradient(135deg,var(--primary-light) 0%,white 100%);border-left:3px solid var(--primary)}.excerpt-icon{position:absolute;left:.75rem;top:.5rem;font-size:1.5rem;font-family:Georgia,serif;color:var(--primary);opacity:.6;line-height:1}.excerpt-content{white-space:pre-line}.excerpt-content strong{font-weight:700;color:var(--secondary)}.sources-section h4:before{content:"📑"}.source-list{margin:0;padding:0;list-style:none}.source-item{display:flex;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--gray-100);font-size:.8rem;line-height:1.5}.source-item:last-child{border-bottom:none}.source-number{font-weight:700;color:var(--gray-500);flex-shrink:0}.source-text{color:var(--gray-600);font-style:italic}.reading-card,.source-card{padding:1rem;background-color:var(--primary-light);border-radius:.5rem;margin-bottom:.75rem;font-size:.85rem;color:var(--secondary-dark);line-height:1.7;border-left:3px solid var(--primary)}.reading-card strong{font-weight:700}.source-card{background-color:var(--gray-50);color:var(--gray-600);font-style:italic;border-left-color:var(--gray-300)}.coaching-footer{padding:1rem 1.5rem;border-top:1px solid var(--gray-200);display:flex;justify-content:flex-end}@media (max-width: 768px){.coaching-modal{max-width:calc(100% - 2rem);max-height:90vh;margin:1rem}.coaching-header{padding:1rem}.coaching-title{font-size:1.125rem}.coaching-disease{font-size:.8125rem}.coaching-score-bar{padding:.5rem 1rem}.coaching-score-bar .score-label{font-size:.6875rem}.coaching-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;padding:0 .5rem}.coaching-tabs .tab{padding:.625rem .75rem;font-size:.75rem;white-space:nowrap;flex-shrink:0}.coaching-content{padding:.75rem 1rem}.coaching-summary{padding:1rem;font-size:.8125rem;line-height:1.7}.feedback-section{padding:.875rem 1rem;margin-bottom:.75rem}.feedback-section h4{font-size:.8125rem}.feedback-section li{font-size:.8rem;padding-left:1.25rem;margin-bottom:.625rem}.pathway-intro{padding:.625rem}.pathway-intro p,.pathway-section h4{font-size:.8rem}.pathway-step{padding:.5rem .625rem}.step-action{font-size:.75rem}.step-importance{font-size:.6rem}.step-details-list li{padding-left:.5rem}.detail-label{font-size:.65rem}.detail-value{font-size:.7rem}.action-item{padding:.625rem .75rem}.action-type-badge{font-size:.55rem}.action-item .action-name{font-size:.8rem}.action-item .action-feedback{font-size:.7rem}.learning-list li{padding:.625rem .75rem .625rem 2rem;font-size:.8rem}.learning-list li:before{left:.5rem;top:.625rem;width:1rem;height:1rem;font-size:.625rem}.coaching-footer{padding:.75rem 1rem}.coaching-footer .btn{width:100%;padding:.75rem 1rem}}.share-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1100;animation:fadeIn .2s ease-out}.share-modal{background:var(--surface-color, #ffffff);border-radius:16px;width:90%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.share-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--border-color, #e5e7eb);background:var(--surface-color, #ffffff)}.share-modal-header h2{margin:0;font-size:1.25rem;color:var(--text-primary, #111827)}.share-modal-close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary, #6b7280);cursor:pointer;padding:.25rem;line-height:1;transition:color .2s}.share-modal-close:hover{color:var(--text-primary, #111827)}.share-modal-body{padding:1.5rem;background:var(--surface-color, #ffffff)}.share-instruction{margin:0 0 1rem;color:var(--text-secondary, #6b7280);font-size:.95rem}.share-link-box{display:flex;align-items:center;gap:.75rem;background:var(--background-color, #f9fafb);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:.75rem;margin-bottom:1.5rem}.share-link{flex:1;font-size:.85rem;color:var(--primary-color, #3b82f6);word-break:break-all;background:none;font-family:SF Mono,Consolas,monospace}.copy-link-btn{flex-shrink:0;font-size:.85rem;padding:.5rem 1rem}.share-message-section{margin-bottom:1.5rem}.share-label{margin:0 0 .75rem;color:var(--text-secondary, #6b7280);font-size:.9rem}.share-message-box{background:var(--background-color, #f9fafb);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:1rem;margin-bottom:.75rem}.share-message{margin:0;color:var(--text-primary, #111827);font-size:.95rem;line-height:1.5}.copy-message-btn{width:100%}.share-divider{display:flex;align-items:center;margin:1.5rem 0}.share-divider:before,.share-divider:after{content:"";flex:1;height:1px;background:var(--border-color, #e5e7eb)}.share-divider span{padding:0 1rem;color:var(--text-muted, #9ca3af);font-size:.85rem;text-transform:uppercase}.share-whatsapp-btn{width:100%;background:#25d366;color:#fff;border:none;padding:.875rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s;display:flex;align-items:center;justify-content:center;gap:.5rem}.share-whatsapp-btn:hover{background:#20ba5c}.share-whatsapp-btn:before{content:"📱"}.feedback-prompt{margin:1.5rem 0;padding:1.25rem;border-radius:.75rem;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd}.feedback-submitted{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;background:linear-gradient(135deg,#dcfce7,#bbf7d0);border-color:#86efac}.feedback-thanks-icon{font-size:1.25rem}.feedback-thanks-text{font-size:.9375rem;font-weight:500;color:#166534}.feedback-first-case{text-align:center}.feedback-celebration{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:1rem}.celebration-icon{font-size:1.5rem}.celebration-text{font-size:1.125rem;font-weight:600;color:var(--gray-800, #1f2937)}.feedback-question{margin-bottom:1rem}.feedback-question span{font-size:.9375rem;color:var(--gray-600, #4b5563)}.feedback-ratings{display:flex;justify-content:center;gap:.75rem;margin-bottom:1rem}.rating-btn{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem 1.25rem;border:2px solid var(--gray-200, #e5e7eb);border-radius:.75rem;background:#fff;cursor:pointer;transition:all .2s}.rating-btn:hover{border-color:var(--primary, #3b82f6);background:#f0f9ff}.rating-btn.selected{border-color:var(--primary, #3b82f6);background:#dbeafe}.rating-emoji{font-size:1.5rem}.rating-label{font-size:.75rem;font-weight:500;color:var(--gray-600, #4b5563)}.feedback-text-section{margin-bottom:1rem;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.feedback-textarea{width:100%;padding:.75rem;border:1px solid var(--gray-300, #d1d5db);border-radius:.5rem;font-size:.875rem;font-family:inherit;resize:none}.feedback-textarea:focus{outline:none;border-color:var(--primary, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.feedback-actions{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1rem}.feedback-submit-btn{padding:.625rem 1.5rem}.feedback-skip-link{background:none;border:none;font-size:.875rem;color:var(--gray-500, #6b7280);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.feedback-skip-link:hover{color:var(--gray-700, #374151)}.feedback-tip{display:flex;align-items:center;justify-content:center;gap:.5rem;padding-top:.75rem;border-top:1px solid #bae6fd}.tip-icon{font-size:.875rem}.feedback-tip span:last-child{font-size:.8125rem;color:var(--gray-500, #6b7280)}.feedback-banner{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem;padding:1rem;background:linear-gradient(135deg,#fefce8,#fef9c3);border-color:#fde047}.banner-content{display:flex;align-items:center;gap:.5rem}.banner-icon{font-size:1.125rem}.banner-text{font-size:.875rem;font-weight:500;color:var(--gray-700, #374151)}.banner-ratings{display:flex;gap:.375rem}.rating-btn-small{width:36px;height:36px;border:2px solid var(--gray-200, #e5e7eb);border-radius:50%;background:#fff;font-size:1.125rem;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center}.rating-btn-small:hover{border-color:var(--primary, #3b82f6);transform:scale(1.1)}.rating-btn-small.selected{border-color:var(--primary, #3b82f6);background:#dbeafe}.banner-expanded{display:flex;align-items:center;gap:.5rem;width:100%;animation:slideDown .2s ease-out}.feedback-textarea-small{flex:1;padding:.5rem .75rem;border:1px solid var(--gray-300, #d1d5db);border-radius:.375rem;font-size:.8125rem;font-family:inherit;resize:none}.feedback-textarea-small:focus{outline:none;border-color:var(--primary, #3b82f6)}.banner-actions{display:flex;align-items:center;gap:.75rem;margin-left:auto}.banner-dismiss,.banner-dismiss-forever{background:none;border:none;font-size:.75rem;color:var(--gray-500, #6b7280);cursor:pointer}.banner-dismiss:hover{color:var(--gray-700, #374151)}.banner-dismiss-forever{color:var(--gray-400, #9ca3af)}.banner-dismiss-forever:hover{color:var(--gray-600, #4b5563)}@media (max-width: 640px){.feedback-prompt{padding:1rem}.feedback-ratings{gap:.5rem}.rating-btn{padding:.625rem 1rem}.rating-emoji{font-size:1.25rem}.feedback-actions{flex-direction:column;gap:.75rem}.feedback-banner{flex-direction:column;align-items:flex-start;gap:.625rem}.banner-actions{margin-left:0;width:100%;justify-content:space-between}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:1000;overflow-y:auto}.modal-content{background-color:var(--background);border-radius:.75rem;box-shadow:var(--shadow-lg);max-width:420px;width:100%;overflow:hidden}.modal-content-large{max-width:520px;max-height:90vh;overflow-y:auto}.modal-header{padding:1.5rem 2rem;text-align:center}.modal-header.won{background:linear-gradient(135deg,var(--success-light) 0%,var(--success-lighter) 100%)}.modal-header.lost{background:linear-gradient(135deg,var(--danger-light) 0%,var(--danger-lighter) 100%)}.grade-display{width:4rem;height:4rem;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto .75rem;box-shadow:0 2px 8px #0000001a}.grade-letter{font-size:2rem;font-weight:800}.modal-icon{width:4rem;height:4rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;margin:0 auto 1rem}.modal-header.won .modal-icon{background-color:var(--success);color:#fff}.modal-header.lost .modal-icon{background-color:var(--danger);color:#fff}.modal-title{font-size:1.25rem;font-weight:700;margin:0 0 .25rem}.modal-header.won .modal-title{color:var(--success-dark)}.modal-header.lost .modal-title{color:var(--danger-dark)}.rank-display{font-size:.875rem;font-weight:500;color:var(--gray-500)}.modal-body{padding:1.25rem}.diagnosis-result{display:flex;flex-direction:column;align-items:center;gap:.25rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--gray-200)}.result-label{font-size:.875rem;color:var(--gray-500)}.result-value{font-size:1.125rem;font-weight:600;color:var(--gray-900)}.total-score-display{display:flex;justify-content:center;margin-bottom:1.25rem}.total-score-circle{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 4px 12px #41ead44d}.total-score-value{font-size:1.75rem;font-weight:800;color:#fff;line-height:1}.total-score-max{font-size:.75rem;color:#fffc}.score-components{margin-bottom:1.25rem}.score-components h3{font-size:.875rem;font-weight:600;color:var(--gray-700);margin-bottom:.75rem}.score-component{margin-bottom:.75rem;padding:.5rem;background-color:var(--gray-50);border-radius:.5rem}.score-component-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.score-component-icon{font-size:.875rem}.score-component-title{font-size:.8rem;font-weight:600;color:var(--gray-700);flex:1}.score-component-points{font-size:.8rem;font-weight:700}.score-component-bar{height:6px;background-color:var(--gray-200);border-radius:3px;overflow:hidden;margin-bottom:.25rem}.score-component-fill{height:100%;border-radius:3px;transition:width .5s ease-out}.score-component-details{font-size:.7rem;color:var(--gray-500)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:1rem}.stat-box{display:flex;flex-direction:column;align-items:center;padding:.5rem;background-color:var(--gray-100);border-radius:.5rem}.stat-box-value{font-size:1rem;font-weight:700;color:var(--gray-800)}.stat-box-label{font-size:.65rem;color:var(--gray-500);text-align:center}.feedback-section{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.feedback-box{padding:1rem;border-radius:.5rem}.feedback-box h4{font-size:.85rem;font-weight:700;margin:0 0 .75rem;padding-bottom:.5rem;border-bottom:1px solid rgba(0,0,0,.1);display:flex;align-items:center;gap:.5rem}.feedback-box h4:before{content:"";width:4px;height:1em;background-color:currentColor;border-radius:2px;opacity:.5}.feedback-box ul{margin:0;padding-left:0;list-style:none}.feedback-box li{font-size:.8rem;margin-bottom:.6rem;line-height:1.6;white-space:pre-line;padding-left:1.25rem;position:relative}.feedback-box li:before{content:"→";position:absolute;left:0;opacity:.6;font-weight:700}.feedback-box li strong{font-weight:700}.feedback-strengths{background-color:var(--success-light)}.feedback-strengths h4,.feedback-strengths li{color:var(--text-primary)}.feedback-improve{background-color:var(--warning-light)}.feedback-improve h4{color:var(--text-primary)}.feedback-improve li{color:var(--text-secondary)}.efficiency-issues{background-color:var(--danger-light);padding:.75rem;border-radius:.5rem;margin-bottom:1rem}.issue-group{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.5rem}.issue-group:last-child{margin-bottom:0}.issue-label{font-size:.7rem;font-weight:600;color:var(--text-primary)}.issue-value{font-size:.7rem;color:var(--text-secondary)}.score-breakdown{margin-bottom:1.5rem}.score-breakdown h3{font-size:.875rem;font-weight:600;color:var(--gray-700);margin-bottom:.75rem}.score-items{display:flex;flex-direction:column;gap:.5rem}.score-item{display:flex;justify-content:space-between;font-size:.875rem;color:var(--gray-600)}.score-total{display:flex;justify-content:space-between;font-size:1rem;font-weight:700;color:var(--gray-900);padding-top:.5rem;margin-top:.5rem;border-top:1px solid var(--gray-200)}.game-stats{display:flex;justify-content:space-around;padding:1rem;background-color:var(--gray-50);border-radius:.5rem}.stat{display:flex;flex-direction:column;align-items:center;gap:.25rem}.stat-value{font-size:1.5rem;font-weight:700;color:var(--primary)}.stat-label{font-size:.75rem;color:var(--gray-500)}.modal-footer{padding:1rem 1.25rem 1.25rem;display:flex;gap:.75rem}.btn-large{flex:1;padding:.75rem 1.5rem;font-size:1rem}.btn-secondary{background-color:var(--gray-500);color:#fff;border:none;border-radius:.5rem;cursor:pointer;transition:background-color .2s}.btn-secondary:hover{background-color:var(--gray-600)}.btn-secondary:disabled{background-color:var(--gray-400);cursor:not-allowed}.coaching-error{padding:.5rem 1.25rem;font-size:.75rem;color:var(--danger-dark);background-color:var(--danger-light);text-align:center}.score-bar-container{margin-bottom:.75rem}.score-bar-header{display:flex;justify-content:space-between;margin-bottom:.25rem}.score-bar-label{font-size:.75rem;font-weight:500;color:var(--gray-700)}.score-bar-value{font-size:.75rem;font-weight:600;color:var(--gray-800)}.score-bar-track{height:8px;background-color:var(--gray-200);border-radius:4px;overflow:hidden}.score-bar-fill{height:100%;border-radius:4px;transition:width .5s ease-out}.explanation-section{margin:1rem 0;padding:1.25rem;border-radius:.5rem}.explanation-section h3{font-size:1rem;font-weight:700;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid rgba(0,0,0,.1);letter-spacing:-.01em}.explanation-section h4{font-size:.85rem;font-weight:700;margin:1rem 0 .5rem;color:inherit;display:flex;align-items:center;gap:.5rem}.explanation-section h4:before{content:"";width:4px;height:1em;background-color:currentColor;border-radius:2px;opacity:.6}.explanation-section p{font-size:.85rem;line-height:1.7;margin:.5rem 0}.explanation-section p strong,.explanation-section li strong{font-weight:700;color:inherit}.explanation-section ul{margin:.75rem 0;padding-left:0;list-style:none}.explanation-section li{font-size:.85rem;margin-bottom:.6rem;line-height:1.6;padding-left:1.5rem;position:relative}.explanation-section li:before{content:"•";position:absolute;left:.5rem;color:inherit;font-weight:700;opacity:.6}.explanation-text{background:#fff6;padding:.75rem 1rem;border-radius:.375rem;border-left:3px solid rgba(0,0,0,.15)}.incorrect-section{background:linear-gradient(135deg,var(--danger-light) 0%,var(--danger-lighter) 100%);border:1px solid var(--danger)}.incorrect-section h3,.incorrect-section h4,.incorrect-section p,.incorrect-section li{color:var(--text-primary)}.your-answer{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background-color:#ffffff80;border-radius:.375rem;margin-bottom:.75rem}.answer-label{font-size:.75rem;color:var(--text-primary)}.answer-value{font-size:.875rem;font-weight:600;color:var(--text-primary)}.findings-list{margin:.75rem 0}.differentiating-features{margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(244,116,59,.2)}.correct-section{background:linear-gradient(135deg,var(--success-light) 0%,var(--success-lighter) 100%);border:1px solid var(--success)}.correct-section h3,.correct-section h4,.correct-section p,.correct-section li{color:var(--text-primary)}.key-findings{margin:.75rem 0}.clinical-reasoning{margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(112,174,110,.3)}@media (max-width: 768px){.modal-content.game-over-modal{max-width:calc(100% - 2rem);max-height:90vh;margin:1rem}.modal-body{padding:1rem}.result-badge{padding:1.25rem 1.5rem}.result-badge .grade{font-size:2.5rem}.result-badge .score-label{font-size:.75rem}.result-title{font-size:1.125rem}.result-diagnosis{font-size:.875rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.stat-box{padding:.75rem .5rem}.stat-box .value{font-size:1.125rem}.stat-box .label{font-size:.625rem}.score-section{padding:.75rem}.score-grid{gap:.5rem}.score-bar-container{margin-bottom:.5rem}.explanation-section{padding:1rem;margin:.75rem 0}.explanation-section h3{font-size:.9375rem}.explanation-section p,.explanation-section li{font-size:.8125rem}.feedback-box{padding:.875rem 1rem;margin-bottom:.75rem}.feedback-box h4{font-size:.8125rem}.feedback-box li{font-size:.75rem;margin-bottom:.5rem}.modal-footer{padding:.75rem 1rem 1rem;flex-direction:column;gap:.5rem}.modal-footer .btn-large{width:100%;padding:.875rem 1rem}}.guest-save-prompt{background:linear-gradient(135deg,var(--primary-light) 0%,#e0f2fe 100%);border:1px solid var(--primary);border-radius:.75rem;padding:1rem 1.25rem;margin:0 1.5rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.guest-save-content{display:flex;align-items:center;gap:.75rem}.guest-save-icon{font-size:1.5rem}.guest-save-text{display:flex;flex-direction:column;gap:.125rem}.guest-save-text strong{font-size:.9375rem;color:var(--secondary)}.guest-save-text span{font-size:.8125rem;color:var(--gray-600)}.guest-save-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.guest-save-actions .btn-primary{padding:.5rem 1rem;font-size:.875rem}.guest-save-actions .btn-ghost{background:transparent;border:none;color:var(--gray-500);font-size:.8125rem;cursor:pointer;padding:.5rem}.guest-save-actions .btn-ghost:hover{color:var(--gray-700)}@media (max-width: 768px){.guest-save-prompt{flex-direction:column;align-items:stretch;margin:0 1rem .75rem;padding:1rem}.guest-save-content{margin-bottom:.75rem}.guest-save-actions{justify-content:center}.guest-save-actions .btn-primary{flex:1}}.challenge-result-banner{padding:1.25rem;text-align:center;border-bottom:1px solid var(--gray-200)}.challenge-result-banner.win{background:linear-gradient(135deg,#fef3c7,#fde68a)}.challenge-result-banner.lose{background:linear-gradient(135deg,#fee2e2,#fecaca)}.challenge-result-banner.tie{background:linear-gradient(135deg,#e0e7ff,#c7d2fe)}.challenge-result-title{font-size:1.25rem;font-weight:700;margin-bottom:1rem}.challenge-result-banner.win .challenge-result-title{color:#92400e}.challenge-result-banner.lose .challenge-result-title{color:#991b1b}.challenge-result-banner.tie .challenge-result-title{color:#3730a3}.challenge-result-scores{display:flex;justify-content:center;align-items:center;gap:1.5rem;margin-bottom:1rem}.challenge-score{display:flex;flex-direction:column;align-items:center;gap:.25rem}.challenge-score .score-label{font-size:.75rem;font-weight:500;color:var(--gray-600)}.challenge-score .score-grade{font-size:1.75rem;font-weight:800}.challenge-score.you .score-grade{color:var(--primary)}.challenge-score.opponent .score-grade{color:var(--gray-600)}.challenge-score .score-value{font-size:.875rem;font-weight:600;color:var(--gray-500)}.challenge-vs{font-size:1rem;font-weight:600;color:var(--gray-400)}.share-victory-btn{margin-top:.5rem}.btn-whatsapp{background-color:#25d366;color:#fff;border:none;border-radius:.5rem;cursor:pointer;transition:background-color .2s}.btn-whatsapp:hover{background-color:#128c7e}.btn-whatsapp:disabled{background-color:#a8dab5;cursor:not-allowed}.btn-success{background-color:#22c55e;color:#fff;border:none;border-radius:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-success:hover{background-color:#16a34a}@media (max-width: 768px){.challenge-result-banner{padding:1rem}.challenge-result-title{font-size:1.125rem}.challenge-result-scores{gap:1rem}.challenge-score .score-grade{font-size:1.5rem}}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--secondary) 0%,var(--secondary-dark) 100%);display:flex;align-items:center;justify-content:center;z-index:1000}.loading-content{text-align:center;color:var(--background)}.loading-spinner{position:relative;width:80px;height:80px;margin:0 auto 2rem;border:none;background:transparent}.spinner-ring{position:absolute;width:100%;height:100%;border:3px solid transparent;border-top-color:var(--primary);border-radius:50%;animation:spin 1.5s linear infinite}.spinner-ring:nth-child(2){width:70%;height:70%;top:15%;left:15%;border-top-color:var(--primary-light);animation-duration:1.2s;animation-direction:reverse}.spinner-ring:nth-child(3){width:40%;height:40%;top:30%;left:30%;border-top-color:var(--warning);animation-duration:.9s}.loading-message{font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.loading-submessage{font-size:1rem;color:var(--gray-300)}.mode-selector-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.mode-selector-modal{background:#fff;border-radius:16px;padding:32px;max-width:600px;width:90%;position:relative;box-shadow:0 20px 40px #00000026;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.mode-selector-close{position:absolute;top:16px;right:16px;background:none;border:none;color:var(--gray-500);font-size:24px;cursor:pointer;padding:4px 8px;transition:color .2s}.mode-selector-close:hover{color:var(--gray-800)}.mode-selector-title{text-align:center;margin:0 0 24px;font-size:1.5rem;color:var(--gray-900)}.mode-options{display:flex;flex-direction:column;gap:16px}.mode-option{display:flex;align-items:flex-start;gap:16px;padding:20px;background:var(--gray-100);border:2px solid var(--gray-200);border-radius:12px;cursor:pointer;text-align:left;transition:all .2s ease}.mode-option:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.mode-standard:hover{border-color:var(--success);background:#22c55e14}.mode-blitz:hover{border-color:#f97316;background:#f9731614}.mode-icon{width:48px;height:48px;padding:12px;background:#fff;border-radius:12px;flex-shrink:0;box-shadow:0 2px 4px #0000000d}.mode-icon svg{width:100%;height:100%}.mode-standard .mode-icon{color:var(--success)}.mode-blitz .mode-icon{color:#f97316}.blitz-icon svg{fill:currentColor;stroke:none}.mode-info{flex:1}.mode-info h3{margin:0 0 8px;font-size:1.2rem;color:var(--gray-900)}.mode-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:.75rem;font-weight:600;margin-bottom:8px}.mode-badge.recommended{background:#22c55e26;color:#16a34a}.mode-badge.blitz{background:#f9731626;color:#ea580c}.mode-info p{margin:0;color:var(--gray-600);font-size:.9rem;line-height:1.4}@media (max-width: 480px){.mode-selector-modal{padding:24px 16px}.mode-option{flex-direction:column;align-items:center;text-align:center}.mode-info h3{margin-top:8px}}.blitz-timer{display:flex;flex-direction:column;gap:6px;padding:12px 16px;background:#fff;border-radius:12px;border:2px solid currentColor;box-shadow:0 2px 8px #0000001a;transition:all .3s ease}.blitz-timer.paused{opacity:.6}.timer-green{color:#16a34a;border-color:#22c55e;background:#22c55e1a}.timer-yellow{color:#ca8a04;border-color:#eab308;background:#eab3081a}.timer-orange{color:#ea580c;border-color:#f97316;background:#f973161a}.timer-red{color:#dc2626;border-color:#ef4444;background:#ef44441a;animation:pulse .5s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 2px 8px #ef444433}50%{transform:scale(1.02);box-shadow:0 4px 16px #ef44444d}}.timer-content{display:flex;align-items:center;gap:10px}.timer-icon{width:24px;height:24px;fill:currentColor;stroke:none}.timer-text{font-size:1.5rem;font-weight:700;font-family:JetBrains Mono,Fira Code,monospace;letter-spacing:2px}.timer-progress-bar{height:4px;background:var(--gray-200, #e5e7eb);border-radius:2px;overflow:hidden}.timer-progress-fill{height:100%;background:currentColor;border-radius:2px;transition:width .1s linear}.timer-red .timer-progress-fill{animation:shrinkPulse 1s ease-in-out infinite}@keyframes shrinkPulse{0%,to{opacity:1}50%{opacity:.6}}@media (max-width: 480px){.blitz-timer{padding:10px 14px}.timer-text{font-size:1.25rem}.timer-icon{width:20px;height:20px}}.feedback-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem}.feedback-modal{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 50px #0000004d}.feedback-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--gray-200)}.feedback-modal-header h2{margin:0;font-size:1.25rem;color:var(--secondary)}.feedback-close-btn{background:none;border:none;font-size:1.5rem;color:var(--gray-500);cursor:pointer;padding:0;line-height:1}.feedback-close-btn:hover{color:var(--secondary)}.feedback-modal form{padding:1.5rem}.feedback-context-badge{display:inline-flex;align-items:center;gap:.5rem;background:var(--gray-100);color:var(--gray-700);padding:.5rem .75rem;border-radius:6px;font-size:.875rem;font-weight:500;margin-bottom:1rem}.feedback-case-info{color:var(--gray-500);font-weight:400}.feedback-case-summary{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:8px;padding:.75rem 1rem;margin-bottom:1rem;font-size:.875rem}.feedback-case-summary p{margin:.25rem 0;color:var(--gray-700)}.feedback-case-summary .correct{color:var(--success);font-weight:600}.feedback-case-summary .incorrect{color:var(--danger);font-weight:600}.feedback-form-group{margin-bottom:1rem}.feedback-form-group label{display:block;font-weight:500;color:var(--gray-700);margin-bottom:.5rem}.feedback-form-group textarea{width:100%;padding:.75rem;border:1px solid var(--gray-300);border-radius:8px;font-size:.9375rem;font-family:inherit;resize:vertical;min-height:100px}.feedback-form-group textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.feedback-form-group textarea::placeholder{color:var(--gray-400)}.feedback-error{background:var(--danger-light);color:var(--danger);padding:.75rem;border-radius:6px;font-size:.875rem;margin-bottom:1rem}.feedback-modal-footer{display:flex;gap:.75rem;justify-content:flex-end}.feedback-success{padding:3rem 2rem;text-align:center}.feedback-success-icon{width:60px;height:60px;background:var(--success);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;margin:0 auto 1rem}.feedback-success h3{margin:0 0 .5rem;color:var(--secondary)}.feedback-success p{margin:0;color:var(--gray-600)}.feedback-button{position:fixed;bottom:1.5rem;right:1.5rem;width:56px;height:56px;border-radius:50%;background:var(--primary);color:var(--secondary);border:none;cursor:pointer;box-shadow:0 4px 12px #00000026;display:flex;align-items:center;justify-content:center;font-size:1.5rem;transition:all .2s;z-index:1000}.feedback-button:hover{transform:scale(1.1);box-shadow:0 6px 20px #0003}.feedback-button:active{transform:scale(1.05)}.feedback-button svg{width:24px;height:24px}.feedback-link{color:var(--gray-300);font-size:.875rem;text-decoration:none;display:flex;align-items:center;gap:.25rem;cursor:pointer;background:none;border:none;padding:.5rem}.feedback-link:hover{color:var(--primary)}.feedback-button-wrapper{position:fixed;bottom:1.5rem;right:1.5rem;z-index:1000}.feedback-button-wrapper .feedback-button{position:relative;bottom:auto;right:auto}.feedback-tooltip{position:absolute;bottom:calc(100% + 12px);right:0;background:var(--secondary, #1e293b);color:#fff;padding:.75rem 1rem;border-radius:8px;font-size:.8125rem;white-space:nowrap;display:flex;flex-direction:column;gap:.25rem;box-shadow:0 4px 12px #0003;animation:tooltipFadeIn .3s ease-out}.feedback-tooltip:after{content:"";position:absolute;bottom:-6px;right:20px;width:12px;height:12px;background:var(--secondary, #1e293b);transform:rotate(45deg)}.feedback-tooltip span:first-child{font-weight:500}.feedback-tooltip span:last-of-type{opacity:.8}.feedback-tooltip-close{position:absolute;top:4px;right:6px;background:none;border:none;color:#fff9;font-size:1rem;cursor:pointer;padding:0;line-height:1}.feedback-tooltip-close:hover{color:#fff}.feedback-button.with-tooltip{animation:pulse 2s infinite}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{box-shadow:0 4px 12px #00000026}50%{box-shadow:0 4px 20px #3b82f666}}@media (max-width: 640px){.feedback-modal{max-height:100vh;border-radius:12px 12px 0 0;position:fixed;bottom:0;left:0;right:0;max-width:none}.feedback-button{bottom:1rem;right:1rem;width:50px;height:50px}.feedback-button-wrapper{bottom:1rem;right:1rem}.feedback-tooltip{right:-.5rem}}.app{min-height:100vh;display:flex;flex-direction:column}.start-screen{flex:1;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--secondary) 0%,var(--secondary-dark) 100%)}.start-content{text-align:center;max-width:480px;padding:2rem}.game-title{font-size:3rem;font-weight:700;color:var(--background);margin-bottom:.5rem}.game-subtitle{font-size:1.25rem;color:var(--primary);margin-bottom:1.5rem}.game-description{font-size:1rem;color:var(--gray-300);line-height:1.7;margin-bottom:2rem}.btn-xlarge{padding:1rem 2.5rem;font-size:1.125rem}.error-message{margin-top:1rem;color:var(--danger-light);font-size:.875rem}.app-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background-color:var(--secondary);box-shadow:var(--shadow);flex-shrink:0}.app-header h1{font-size:1.25rem;font-weight:700;color:var(--background)}.app-header .btn{background-color:var(--primary);color:var(--text-primary)}.app-header .btn:hover{background-color:var(--primary-dark)}.game-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;background-color:var(--secondary);box-shadow:var(--shadow);flex-shrink:0}.game-header-left{display:flex;align-items:center;gap:1rem}.game-header-left h1{font-size:1rem;font-weight:600;color:var(--background);margin:0}.game-header .btn-back{font-size:.875rem;padding:.5rem .75rem;background-color:transparent;border-color:var(--gray-400);color:#fff}.game-header .btn-back:hover{background-color:var(--primary);border-color:var(--primary);color:var(--secondary)}.header-controls{display:flex;align-items:center;gap:.75rem}.test-mode-indicator{background:var(--warning);color:var(--secondary);font-size:.75rem;font-weight:700;padding:.25rem .75rem;border-radius:4px;text-transform:uppercase}.blitz-bar{background:linear-gradient(90deg,#fef3c7,#fed7aa);border-bottom:2px solid #f97316;padding:.75rem 1.5rem;flex-shrink:0}.blitz-bar-content{display:flex;align-items:center;justify-content:center;gap:1.5rem;max-width:1200px;margin:0 auto}.blitz-bar-label{font-size:.875rem;font-weight:700;color:#c2410c;letter-spacing:.05em}.btn-exit-test{border-color:var(--danger-light)!important;color:var(--danger-light)!important}.btn-exit-test:hover{background-color:var(--danger-light)!important;color:var(--secondary)!important}.test-mode-btn{display:block;margin:1rem auto 0}.test-mode-btn.active{background-color:var(--warning);border-color:var(--warning);color:var(--secondary)}.test-mode-cases{margin-top:1rem;display:flex;flex-direction:column;gap:.25rem;font-size:.875rem;color:var(--gray-300)}.test-mode-cases span{padding:.25rem .5rem;border-radius:4px}.test-mode-cases span.current{background:var(--primary);color:var(--secondary)}.game-board{flex:1;display:grid;grid-template-columns:400px 1fr;gap:1.5rem;padding:1.5rem 2rem;max-width:1400px;margin:0 auto;width:100%;min-height:0}.left-column{display:flex;flex-direction:column;gap:1rem;min-height:0;overflow:hidden;position:relative}.submitting-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.submitting-content{text-align:center;padding:2rem;background:var(--background);border-radius:.75rem;box-shadow:var(--shadow-lg);border:1px solid var(--gray-200)}.submitting-spinner{width:48px;height:48px;border:4px solid var(--gray-200);border-top-color:var(--primary);border-radius:50%;margin:0 auto 1rem;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.submitting-content p{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem}.submitting-content span{font-size:.875rem;color:var(--gray-500)}.right-column{display:flex;flex-direction:column;min-height:0}.tab-bar{display:flex;gap:0;background:var(--background);border-radius:.5rem .5rem 0 0;overflow:hidden;border:1px solid var(--gray-200);border-bottom:none}.tab-btn{flex:1;padding:.875rem 1rem;background:var(--gray-100);border:none;cursor:pointer;font-weight:500;color:var(--gray-600);transition:all .15s;border-right:1px solid var(--gray-200)}.tab-btn:last-child{border-right:none}.tab-btn:hover{background:var(--gray-200);color:var(--secondary)}.tab-btn.active{background:var(--background);color:var(--secondary);border-bottom:2px solid var(--primary)}.tab-content{flex:1;min-height:0;border:1px solid var(--gray-200);border-top:none;border-radius:0 0 .5rem .5rem;overflow:hidden;background:var(--background)}.error-toast{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);background-color:var(--danger);color:#fff;padding:.75rem 1.5rem;border-radius:.5rem;display:flex;align-items:center;gap:1rem;box-shadow:var(--shadow-lg);font-size:.875rem;z-index:100}.error-toast button{background:none;border:none;color:#fff;font-size:1.25rem;cursor:pointer;padding:0;line-height:1}@media (max-width: 1024px){.game-board{grid-template-columns:1fr;padding:1rem}.left-column{max-height:none}.right-column{height:500px}}@media (max-width: 768px){.app-header{padding:1rem}.game-title{font-size:2rem}.right-column{height:400px}}.app.mobile{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden}.app.mobile .game-header{padding:.5rem .75rem;flex-shrink:0}.app.mobile .game-header-left{gap:.5rem}.app.mobile .game-header .btn-back{padding:.4rem .6rem;font-size:1rem;min-width:36px}.app.mobile .header-controls{gap:.5rem}.app.mobile .btn-menu{padding:.4rem .75rem;font-size:1.25rem;font-weight:700;min-width:40px}.app.mobile .btn-new-case{padding:.4rem .75rem;font-size:.8125rem;font-weight:600}.app.mobile .test-mode-indicator{font-size:.625rem;padding:.2rem .5rem}.app.mobile .blitz-bar{padding:.5rem 1rem}.app.mobile .blitz-bar-label{font-size:.75rem}.app.mobile .game-board{display:flex;flex-direction:column;flex:1;padding:0;gap:0;min-height:0;overflow:hidden}.mobile-patient-header{flex-shrink:0;border-bottom:1px solid var(--gray-200);background:var(--background)}.mobile-patient-header .persona-card{border-radius:0;box-shadow:none;margin:0}.mobile-patient-header .persona-card.collapsed{padding:.75rem 1rem}.mobile-patient-header .persona-card.collapsed .persona-header{margin:0;padding:0}.mobile-patient-header .persona-card.expanded{padding:1rem}.mobile-panel{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.mobile-panel>*{flex:1;min-height:0;border-radius:0;box-shadow:none}.mobile-bottom-nav{display:flex;background:var(--background);border-top:1px solid var(--gray-200);padding:.25rem 0;padding-bottom:calc(.25rem + env(safe-area-inset-bottom));flex-shrink:0;box-shadow:0 -2px 10px #0000001a}.mobile-bottom-nav .nav-tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:.125rem;padding:.5rem .25rem;background:none;border:none;cursor:pointer;color:var(--gray-500);transition:all .15s;position:relative}.mobile-bottom-nav .nav-tab:active{background:var(--gray-100)}.mobile-bottom-nav .nav-tab.active{color:var(--secondary)}.mobile-bottom-nav .nav-tab.active:after{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:32px;height:3px;background:var(--primary);border-radius:0 0 3px 3px}.mobile-bottom-nav .nav-icon{font-size:1.25rem;line-height:1}.mobile-bottom-nav .nav-label{font-size:.625rem;font-weight:500;text-transform:uppercase;letter-spacing:.02em}.mobile-bottom-nav .nav-badge{position:absolute;top:.25rem;right:50%;transform:translate(100%);background:var(--primary);color:var(--secondary);font-size:.625rem;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px}.app.mobile .error-toast{bottom:calc(70px + env(safe-area-inset-bottom))}.app.mobile .submitting-overlay{z-index:1001}.app.mobile .submitting-content{margin:1rem;max-width:calc(100% - 2rem)}*{box-sizing:border-box;margin:0;padding:0}:root{--primary: #41EAD4;--primary-dark: #35c4b2;--primary-light: #7af0e2;--secondary: #3C6E71;--secondary-dark: #2d5456;--secondary-light: #5a9194;--success: #70AE6E;--success-dark: #5c9459;--success-light: #a3cda1;--success-lighter: #c8e6c6;--warning: #EDB230;--warning-dark: #d49e1c;--warning-light: #f5d17a;--danger: #F4743B;--danger-dark: #e05a20;--danger-light: #f9a882;--danger-lighter: #f5b8a0;--background: #FDFFFC;--text-primary: #333333;--text-secondary: #5a5a5a;--gray-50: #FDFFFC;--gray-100: #f5f7f4;--gray-200: #e8ebe6;--gray-300: #d4d9d1;--gray-400: #a8b0a4;--gray-500: #7a8376;--gray-600: #5a635a;--gray-700: #444a44;--gray-800: #333333;--gray-900: #1a1a1a;--shadow-sm: 0 1px 2px 0 rgb(51 51 51 / .05);--shadow: 0 1px 3px 0 rgb(51 51 51 / .1), 0 1px 2px -1px rgb(51 51 51 / .1);--shadow-md: 0 4px 6px -1px rgb(51 51 51 / .1), 0 2px 4px -2px rgb(51 51 51 / .1);--shadow-lg: 0 10px 15px -3px rgb(51 51 51 / .1), 0 4px 6px -4px rgb(51 51 51 / .1)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--background);color:var(--text-primary);line-height:1.5}button{font-family:inherit;cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;font-size:.875rem;font-weight:500;border-radius:.375rem;border:none;transition:all .15s ease}.btn-primary{background-color:var(--primary);color:var(--text-primary);font-weight:600}.btn-primary:hover{background-color:var(--primary-dark)}.btn-primary:disabled{background-color:var(--gray-300);color:var(--gray-500);cursor:not-allowed}.btn-secondary{background-color:var(--secondary);color:#fff}.btn-secondary:hover{background-color:var(--secondary-dark)}.btn-secondary:disabled{background-color:var(--secondary);opacity:.5;cursor:not-allowed}.btn-success{background-color:var(--success);color:#fff}.btn-success:hover{background-color:var(--success-dark)}.btn-danger{background-color:var(--danger);color:#fff}.btn-danger:hover{background-color:var(--danger-dark)}.btn-warning{background-color:var(--warning);color:var(--text-primary)}.btn-warning:hover{background-color:var(--warning-dark)}.btn-outline{background-color:var(--background);border:1px solid var(--gray-300);color:var(--text-primary)}.btn-outline:hover{background-color:var(--gray-100);border-color:var(--secondary)}.card{background-color:var(--background);border-radius:.5rem;box-shadow:var(--shadow);padding:1rem;border:1px solid var(--gray-200)}.badge{display:inline-flex;align-items:center;padding:.25rem .5rem;font-size:.75rem;font-weight:500;border-radius:9999px}.badge-success{background-color:var(--success-light);color:var(--success-dark)}.badge-danger{background-color:var(--danger-light);color:var(--danger-dark)}.badge-warning{background-color:var(--warning-light);color:var(--text-primary)}.badge-info{background-color:var(--primary-light);color:var(--secondary-dark)}.badge-secondary{background-color:var(--gray-200);color:var(--secondary)}
