.writing-results-panel{background-color:#fff;border:1px solid #e5e7eb;border-radius:16px;flex-direction:column;gap:1.5rem;padding:1.5rem;display:flex;box-shadow:0 2px 6px #0f172a1a}@media (max-width:784px){.writing-results-panel{gap:1rem;margin-bottom:1rem;padding:1rem}}@media (max-width:576px){.writing-results-panel{gap:.75rem;margin-bottom:.75rem;padding:.75rem}}.results-score-section{text-align:center;background:linear-gradient(135deg,#2563eb0d 0%,#9333ea0d 100%);border:1px solid #2563eb1a;border-radius:16px;padding:1.5rem}.results-score-section .score-label{color:#111827;margin:0 0 1rem;font-size:1.25rem;font-weight:600}.results-score-section .score-display{flex-flow:row;justify-content:center;align-items:center;margin-bottom:1rem;display:flex}.results-score-section .score-description{color:#4b5563;margin:0;font-size:1rem;line-height:1.5}.results-criteria-section .criteria-title{color:#111827;text-transform:uppercase;letter-spacing:.05em;margin:0 0 1rem;font-size:1rem;font-weight:600}.results-criteria-section .criteria-list{flex-direction:column;gap:1rem;display:flex}.results-criteria-section .criteria-item{background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1rem;transition:all .2s}.results-criteria-section .criteria-item:hover{border-color:#2563eb33;box-shadow:0 2px 6px #0f172a1a}.results-criteria-section .criteria-item .criteria-header{text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;margin-bottom:.75rem;padding:0;display:flex}.results-criteria-section .criteria-item .criteria-header .criteria-name{color:#111827;font-size:.875rem;font-weight:500}.results-criteria-section .criteria-item .criteria-header .criteria-score-wrapper{align-items:center;gap:.5rem;display:flex}.results-criteria-section .criteria-item .criteria-header .criteria-score-wrapper .criteria-score{color:#2563eb;font-size:.875rem;font-weight:600}.results-criteria-section .criteria-item .criteria-bar{background:#e5e7eb;border-radius:9999px;width:100%;height:6px;margin-bottom:.5rem;overflow:hidden}.results-criteria-section .criteria-item .criteria-bar .criteria-fill{background:linear-gradient(90deg,#2563eb 0%,#9333ea 100%);border-radius:9999px;height:100%;transition:width .6s}.results-criteria-section .criteria-item .criteria-feedback{color:#4b5563;border-top:1px solid #e5e7eb;margin-top:.75rem;padding-top:.75rem;font-size:.875rem;line-height:1.6}.results-criteria-section .criteria-item .criteria-feedback p{margin:0 0 .5rem}.results-criteria-section .criteria-item .criteria-feedback p:last-child{margin-bottom:0}.results-stats-section .stats-title{color:#111827;text-transform:uppercase;letter-spacing:.05em;margin:0 0 1rem;font-size:1rem;font-weight:600}.results-stats-section .stats-list{flex-direction:column;gap:.75rem;display:flex}.results-stats-section .stats-row{flex-direction:row;gap:.75rem;display:flex}.results-stats-section .stats-row .stat-item{flex:1}.results-stats-section .stat-item{background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;align-items:center;gap:1rem;padding:1rem;transition:all .2s;display:flex}.results-stats-section .stat-item:hover{border-color:#2563eb33;box-shadow:0 2px 6px #0f172a1a}.results-stats-section .stat-item .stat-icon{color:#2563eb;flex-shrink:0;font-size:1.25rem}.results-stats-section .stat-item .stat-info{flex:1}.results-stats-section .stat-item .stat-info .stat-label{color:#4b5563;text-transform:uppercase;letter-spacing:.025em;margin-bottom:2px;font-size:.75rem;font-weight:500}.results-stats-section .stat-item .stat-info .stat-value{color:#111827;font-size:1rem;font-weight:600}.results-stats-section .vocabulary-repetition{background-color:#9333ea0d;border-radius:12px;margin-top:.75rem;padding:1rem}.results-stats-section .vocabulary-repetition .vocabulary-repetition-title{color:#111827;text-align:center;margin:0 0 1rem;font-size:1rem;font-weight:600}.results-stats-section .vocabulary-repetition .vocabulary-repetition-list{flex-direction:column;gap:.75rem;max-height:336px;margin-bottom:1rem;padding-right:.5rem;display:flex;overflow-y:auto}.results-stats-section .vocabulary-repetition .vocabulary-repetition-list::-webkit-scrollbar{width:6px}.results-stats-section .vocabulary-repetition .vocabulary-repetition-list::-webkit-scrollbar-track{background:#f3f4f6;border-radius:3px}.results-stats-section .vocabulary-repetition .vocabulary-repetition-list::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px;transition:background .2s}.results-stats-section .vocabulary-repetition .vocabulary-repetition-list::-webkit-scrollbar-thumb:hover{background:#9ca3af}.results-stats-section .vocabulary-repetition .vocabulary-repetition-item{color:#111827;text-align:center;background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:.75rem 1rem;font-size:1rem;font-weight:600;box-shadow:0 1px 2px #0000000d}.results-stats-section .vocabulary-repetition .vocabulary-repetition-suggestion{color:#4b5563;text-align:center;margin:0;font-size:.875rem}.results-feedback-section .feedback-download-btn{color:#2563eb;cursor:pointer;background-color:#0000;border:1px solid #e5e7eb;border-radius:8px;flex-flow:row;flex-shrink:0;justify-content:center;align-items:center;min-width:32px;min-height:32px;padding:.5rem;transition:all .2s;display:flex}.results-feedback-section .feedback-download-btn:hover:not(:disabled){background-color:#2563eb1a;border-color:#2563eb}.results-feedback-section .feedback-download-btn:focus{outline-offset:2px;outline:2px solid #2563eb}.results-feedback-section .feedback-download-btn:disabled{opacity:.6;cursor:not-allowed}.results-feedback-section .feedback-download-btn svg{font-size:1.125rem}.results-feedback-section .feedback-download-btn.generating{color:#2563eb;background-color:#2563eb1a;border-color:#2563eb;animation:1.5s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.results-feedback-section .feedback-pronunciation-btn{color:#2563eb;cursor:pointer;background-color:#0000;border:1px solid #e5e7eb;border-radius:8px;flex-flow:row;flex-shrink:0;justify-content:center;align-items:center;min-width:32px;min-height:32px;padding:.5rem;transition:all .2s;display:flex}.results-feedback-section .feedback-pronunciation-btn:hover{background-color:#2563eb1a;border-color:#2563eb}.results-feedback-section .feedback-pronunciation-btn:focus{outline-offset:2px;outline:2px solid #2563eb}.results-feedback-section .feedback-pronunciation-btn svg{font-size:1.125rem}.results-feedback-section .feedback-pronunciation-btn.speaking{color:#2563eb;background-color:#2563eb1a;border-color:#2563eb}.results-feedback-section .feedback-pronunciation-btn.speaking:hover{background-color:#2563eb33}.results-feedback-section .detailed-feedback-content{color:#111827;word-wrap:break-word;overflow-wrap:break-word;background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;max-height:500px;padding:1rem;font-size:1rem;line-height:1.7;transition:all .2s;overflow-y:auto}.results-feedback-section .detailed-feedback-content:hover{border-color:#2563eb33;box-shadow:0 2px 6px #0f172a1a}.results-feedback-section .detailed-feedback-content .feedback-header-inline{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.results-feedback-section .detailed-feedback-content .feedback-header-inline .feedback-title{color:#374151;margin:0;font-size:1.25rem;font-weight:600}.results-feedback-section .detailed-feedback-content .feedback-header-inline .feedback-header-actions{flex-flow:row;justify-content:center;align-items:center;gap:.5rem;display:flex}.results-feedback-section .detailed-feedback-content p{line-height:inherit;margin:0 0 1rem}.results-feedback-section .detailed-feedback-content p:last-child{margin-bottom:0}.results-feedback-section .detailed-feedback-content::-webkit-scrollbar{width:6px}.results-feedback-section .detailed-feedback-content::-webkit-scrollbar-track{background:#f3f4f6;border-radius:3px}.results-feedback-section .detailed-feedback-content::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px;transition:background .2s}.results-feedback-section .detailed-feedback-content::-webkit-scrollbar-thumb:hover{background:#9ca3af}.results-feedback-section .detailed-feedback-content .quoted-text{color:#2563eb;vertical-align:baseline;background-color:#2563eb26;border:none;border-radius:8px;margin:0 .5rem;padding:.5rem .75rem;font-size:.9em;font-weight:500;transition:all .2s;display:inline-block}.results-feedback-section .detailed-feedback-content .quoted-text:hover{background-color:#2563eb33;transform:translateY(-1px);box-shadow:0 2px 4px #2563eb33}.results-feedback-section .detailed-feedback-content .quoted-text-correct{color:#2563eb;vertical-align:baseline;background-color:#2563eb26;border:none;border-radius:8px;margin:0 .5rem;padding:.5rem .75rem;font-size:.9em;font-weight:500;transition:all .2s;display:inline-block}.results-feedback-section .detailed-feedback-content .quoted-text-correct:hover{background-color:#2563eb33;transform:translateY(-1px);box-shadow:0 2px 4px #2563eb33}.results-feedback-section .detailed-feedback-content .quoted-text-incorrect{color:#2563eb;vertical-align:baseline;background-color:#2563eb26;border:none;border-radius:8px;margin:0 .5rem;padding:.5rem .75rem;font-size:.9em;font-weight:500;transition:all .2s;display:inline-block}.results-feedback-section .detailed-feedback-content .quoted-text-incorrect:hover{background-color:#2563eb33;transform:translateY(-1px);box-shadow:0 2px 4px #2563eb33}.mock-theme-root[data-mock-theme=dark] .stat-item,.mock-theme-root[data-mock-theme=dark] .vocabulary-repetition-item{background-color:var(--mock-surface-muted)!important;border-color:var(--mock-border)!important}.mock-theme-root[data-mock-theme=dark] .feedback-download-btn,.mock-theme-root[data-mock-theme=dark] .feedback-pronunciation-btn{border-color:var(--mock-border)!important}@media (max-width:784px){.writing-results-panel .results-score-section{padding:1rem}.writing-results-panel .results-score-section .score-label{font-size:1rem}.writing-results-panel .results-criteria-section .criteria-item{padding:.75rem}.writing-results-panel .results-criteria-section .criteria-item .criteria-header .criteria-name,.writing-results-panel .results-criteria-section .criteria-item .criteria-header .criteria-score-wrapper .criteria-score{font-size:.75rem}.writing-results-panel .results-stats-section .stats-row{flex-direction:column}.writing-results-panel .results-stats-section .stat-item{padding:.75rem}.writing-results-panel .results-stats-section .stat-item .stat-icon{font-size:1rem}.writing-results-panel .results-stats-section .stat-item .stat-info .stat-label{font-size:.625rem}.writing-results-panel .results-stats-section .stat-item .stat-info .stat-value{font-size:.875rem}.writing-results-panel .results-stats-section .vocabulary-repetition{padding:.75rem}.writing-results-panel .results-stats-section .vocabulary-repetition .vocabulary-repetition-title{font-size:.875rem}.writing-results-panel .results-stats-section .vocabulary-repetition .vocabulary-repetition-list{max-height:280px}.writing-results-panel .results-stats-section .vocabulary-repetition .vocabulary-repetition-item{padding:.5rem .75rem;font-size:.875rem}.writing-results-panel .results-stats-section .vocabulary-repetition .vocabulary-repetition-suggestion{font-size:.75rem}.writing-results-panel .results-feedback-section .detailed-feedback-content{border-radius:12px;padding:1rem;font-size:.875rem}.writing-results-panel .results-feedback-section .detailed-feedback-content .quoted-text,.writing-results-panel .results-feedback-section .detailed-feedback-content .quoted-text-correct,.writing-results-panel .results-feedback-section .detailed-feedback-content .quoted-text-incorrect{padding:.125rem .375rem;font-size:.875em}}@media (max-width:576px){.writing-results-panel .results-feedback-section .detailed-feedback-content{border-radius:12px;padding:.75rem;font-size:.875rem;line-height:1.6}.writing-results-panel .results-feedback-section .detailed-feedback-content .quoted-text,.writing-results-panel .results-feedback-section .detailed-feedback-content .quoted-text-correct,.writing-results-panel .results-feedback-section .detailed-feedback-content .quoted-text-incorrect{word-wrap:break-word;overflow-wrap:break-word;margin:0 .125rem;padding:.125rem .25rem;font-size:.875em}}
