:root{--color-white:#fff;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-black:#000;--color-blue-500:#3b82f6;--color-blue-600:#2563eb;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background-color:var(--color-gray-50);color:var(--color-gray-900);margin:0;padding:0;font-family:Arial,Helvetica,sans-serif;line-height:1.5}.main-content{max-width:100%;padding:20px}.container{max-width:1200px;margin:0 auto;padding:0 16px}.container-sm{max-width:800px;margin:0 auto;padding:0 16px}.container-lg{max-width:1400px;margin:0 auto;padding:0 16px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mt-8{margin-top:32px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.mb-8{margin-bottom:32px}.mx-auto{margin-left:auto;margin-right:auto}.p-4{padding:16px}.p-6{padding:24px}.p-8{padding:32px}.gap-2{gap:8px}.gap-4{gap:16px}.gap-6{gap:24px}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}h1,h2,h3,h4,h5,h6{color:var(--color-gray-900);margin:0 0 16px;font-weight:600}h1{margin-top:24px;margin-bottom:20px;font-size:2rem;line-height:1.2}h2{margin-top:28px;margin-bottom:18px;font-size:1.5rem;line-height:1.3}h3{margin-top:24px;margin-bottom:16px;font-size:1.25rem;line-height:1.4}h4{margin-top:20px;margin-bottom:14px;font-size:1.1rem;line-height:1.4}h5{margin-top:16px;margin-bottom:12px;font-size:1rem;line-height:1.5}h6{margin-top:16px;margin-bottom:12px;font-size:.9rem;line-height:1.5}p{color:var(--color-gray-700);margin:0 0 12px}a{color:var(--color-blue-600);text-decoration:none}a:hover{text-decoration:underline}button{background-color:var(--color-gray-200);color:var(--color-gray-900);border:1px solid var(--color-gray-300);cursor:pointer;border-radius:4px;margin:4px;padding:8px 16px;font-family:Arial,Helvetica,sans-serif;font-size:.95rem;font-weight:500;transition:all .2s}button:hover{background-color:var(--color-gray-300);border-color:var(--color-gray-400)}button:active{background-color:var(--color-gray-400);transform:scale(.98)}button:disabled{opacity:.6;cursor:not-allowed}button.loading{color:#0000;position:relative}button.loading:after{content:"";border:2px solid #fff;border-top-color:#0000;border-radius:50%;width:16px;height:16px;margin-top:-8px;margin-left:-8px;animation:.8s linear infinite spin;position:absolute;top:50%;left:50%}.navbar{background-color:var(--color-white);border-bottom:1px solid var(--color-gray-200);z-index:100;padding:0;position:sticky;top:0;box-shadow:0 1px 3px #0000000d}.navbar-container{justify-content:space-between;align-items:center;max-width:1400px;min-height:56px;margin:0 auto;padding:0 20px;display:flex}.navbar-links,.navbar-auth{align-items:center;gap:8px;display:flex}.navbar-link{color:var(--color-gray-700);border-radius:4px;padding:8px 14px;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .2s}.navbar-link:hover{background-color:var(--color-gray-100);color:var(--color-gray-900);text-decoration:none}.navbar-link-primary{background-color:var(--color-gray-800);color:var(--color-white)}.navbar-link-primary:hover{background-color:var(--color-gray-900)}.navbar-brand{color:var(--color-gray-900);white-space:nowrap;font-size:1rem;font-weight:600;text-decoration:none}.navbar-brand:hover{color:var(--color-gray-700);text-decoration:none}.navbar-link-active{color:var(--color-gray-900);background-color:var(--color-gray-100);box-shadow:inset 0 -2px 0 var(--color-gray-800)}.navbar-toggle{border:1px solid var(--color-gray-300);cursor:pointer;background:0 0;border-radius:4px;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:10px;display:none}.navbar-toggle-bar{background:var(--color-gray-800);border-radius:1px;width:100%;height:2px;display:block}.navbar-menu{flex:1;justify-content:space-between;align-items:center;gap:16px;margin-left:24px;display:flex}.navbar-user{color:var(--color-gray-600);padding:8px 14px;font-size:.9rem}textarea,input[type=text],input[type=email],input[type=password],input[type=number],input[type=search]{border:1px solid var(--color-gray-300);color:var(--color-gray-900);background-color:var(--color-white);border-radius:4px;padding:10px 12px;font-family:Arial,Helvetica,sans-serif;font-size:.95rem;line-height:1.5;transition:border-color .2s,box-shadow .2s}textarea:focus,input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,input[type=number]:focus,input[type=search]:focus{border-color:var(--color-blue-500);outline:none;box-shadow:0 0 0 3px #3b82f61a}textarea::placeholder,input::placeholder{color:var(--color-gray-400)}textarea{resize:vertical;min-height:80px}textarea[rows]{min-height:auto}label{color:var(--color-gray-700);margin-bottom:6px;font-size:.95rem;font-weight:500;display:block}.form-group{margin-bottom:20px}.form-group label{margin-bottom:8px}.speech-textarea-wrapper{flex-direction:column;gap:10px;display:flex}.speech-textarea-wrapper textarea{width:100%;max-width:600px}.speech-textarea-wrapper button{align-self:flex-start}.review-page{max-width:800px;margin:0 auto}.review-header{border-bottom:1px solid var(--color-gray-200);margin-bottom:24px;padding-bottom:16px}.review-meta-row{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.review-meta-chip{background:var(--color-gray-100);color:var(--color-gray-600);border-radius:12px;padding:4px 10px;font-size:.85rem;display:inline-block}.review-section{margin-bottom:16px}.review-meta{margin-bottom:8px}.review-date{color:var(--color-gray-500);margin:0;font-size:.9rem}.review-duration{color:var(--color-gray-500);margin:4px 0 0;font-size:.9rem}.section-title{border-bottom:1px solid var(--color-gray-200);margin:28px 0 16px;padding-bottom:8px;font-weight:600}.card{border:1px solid var(--color-gray-200);background:var(--color-white);border-radius:6px;margin-bottom:16px;padding:16px;box-shadow:0 1px 2px #0000000d}.card-hero{background:var(--color-gray-50);border-color:var(--color-gray-300)}.card-title{color:var(--color-gray-900);margin:0 0 12px;font-size:1.1rem;font-weight:600}.hero-header{align-items:flex-start;gap:20px;margin-bottom:16px;display:flex}.hero-score{color:var(--color-gray-900);font-size:2.5rem;font-weight:700;line-height:1}.hero-score--high{color:#155724}.hero-score--mid{color:#856404}.hero-score--low{color:#721c24}.hero-score-max{color:var(--color-gray-500);margin-top:4px;font-size:1.2rem}.hero-verdict{flex:1}.verdict-badge{border-radius:4px;padding:6px 12px;font-size:.85rem;font-weight:600;display:inline-block}.verdict-strong_pass{color:#155724;background:#d4edda}.verdict-pass{color:#0c5460;background:#d1ecf1}.verdict-borderline{color:#856404;background:#fff3cd}.verdict-needs_work{color:#721c24;background:#f8d7da}.verdict-not_ready{color:#383d41;background:#e2e3e5}.verdict-rationale{color:var(--color-gray-600);margin:8px 0 0;font-size:.9rem}.summary-text{color:var(--color-gray-700);margin:0 0 16px}.dimensions{flex-direction:column;gap:12px;display:flex}.dimension-row{align-items:center;gap:12px;display:flex}.dimension-label{width:140px;color:var(--color-gray-700);font-size:.9rem;font-weight:500}.dimension-bar-track{background:var(--color-gray-200);border-radius:4px;flex:1;height:8px;overflow:hidden}.dimension-bar-fill{background:var(--color-blue-600);border-radius:4px;height:100%;transition:width .6s ease-out}.dimension-score{text-align:right;width:40px;color:var(--color-gray-900);font-size:.9rem;font-weight:600}.feedback-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;display:grid}.feedback-list{margin:0;padding-left:20px;list-style:outside}.feedback-list-empty{color:var(--color-gray-500);margin:8px 0;font-style:italic}.feedback-list li{color:var(--color-gray-700);margin-bottom:8px}.banner{border-left:4px solid;border-radius:6px;margin-bottom:16px;padding:12px 16px;font-size:.95rem}.banner-warn{border-color:var(--color-warning);color:#92400e;background:#fffbeb}.banner-info{border-color:var(--color-blue-500);color:#1e40af;background:#eff6ff}.banner-success{border-color:var(--color-success);color:#166534;background:#f0fdf4}.banner-error{border-color:var(--color-error);color:#991b1b;background:#fef2f2}.rubric-table{border-collapse:collapse;width:100%;font-size:.95rem}.rubric-table th,.rubric-table td{border:1px solid var(--color-gray-200);text-align:left;padding:12px}.rubric-table th{background:var(--color-gray-100);color:var(--color-gray-900);font-weight:600}.rubric-table td{color:var(--color-gray-700)}.question-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.question-score{color:var(--color-gray-900);font-size:1.1rem;font-weight:700}.question-text{color:var(--color-gray-600);margin:0 0 12px;font-style:italic}.chip-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.chip{border-radius:12px;padding:4px 10px;font-size:.85rem;font-weight:500;display:inline-block}.chip-tag{background:var(--color-gray-200);color:var(--color-gray-800)}.chip-covered{color:#065f46;background:#d1fae5}.chip-missed{color:#b45309;background:#fef3c7}.concepts-label{color:var(--color-gray-500);margin-right:6px;font-size:.85rem;font-weight:500}.feedback-section p{color:var(--color-gray-700);margin:6px 0;font-size:.95rem}.user-answer{border-left:4px solid var(--color-blue-500);background:var(--color-gray-50);color:var(--color-gray-800);border-radius:2px;margin:16px 0;padding:12px 16px;font-size:.95rem}.ideal-answer{color:var(--color-gray-700);margin:12px 0 0;font-size:.95rem}.history-list{margin:0;padding:0;list-style:none}.history-card{border:1px solid var(--color-gray-200);background:var(--color-white);animation:.35s both fadeInUp;animation-delay:calc(var(--i,0) * 40ms);border-radius:6px;justify-content:space-between;align-items:stretch;gap:16px;margin-bottom:12px;padding:16px;transition:border-color .2s,box-shadow .2s;display:flex;box-shadow:0 1px 2px #0000000d}.history-card:hover{border-color:var(--color-gray-300);box-shadow:0 2px 8px #0000000f}.history-card-link{min-width:0;color:inherit;flex:1;text-decoration:none}.history-card-link:hover{text-decoration:none}.history-card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;display:flex}.history-card-role{color:var(--color-gray-900);margin:0;font-size:1.1rem;font-weight:600}.history-card-meta{color:var(--color-gray-500);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:6px;font-size:.875rem;display:flex}.history-meta-separator{color:var(--color-gray-400)}.history-status-badge{border-radius:12px;padding:2px 8px;font-size:.75rem;font-weight:500;display:inline-block}.history-status-badge--completed{color:#155724;background:#d4edda}.history-status-badge--active{color:#856404;background:#fff3cd}.history-status-badge--other{background:var(--color-gray-100);color:var(--color-gray-600)}.history-score-badge{white-space:nowrap;border-radius:12px;flex-shrink:0;padding:4px 10px;font-size:.875rem;font-weight:600}.history-score-badge--high{color:#155724;background:#d4edda}.history-score-badge--mid{color:#856404;background:#fff3cd}.history-score-badge--low{color:#721c24;background:#f8d7da}.history-score{min-width:48px;color:var(--color-gray-900);font-size:1rem;font-weight:700}.history-delta{color:var(--color-gray-500);font-size:.85rem;display:inline-block}.history-delta-positive{color:#059669;font-weight:600}.history-delta-negative{color:#dc2626;font-weight:600}.history-toolbar{align-items:center;gap:8px;display:flex}.history-sort-label{color:var(--color-gray-600);margin:0;font-size:.875rem;font-weight:500}.history-sort-select{border:1px solid var(--color-gray-300);background:var(--color-white);color:var(--color-gray-900);cursor:pointer;border-radius:4px;padding:8px 12px;font-size:.875rem}.history-card-actions{flex-direction:column;flex-shrink:0;justify-content:center;align-items:flex-end;gap:8px;display:flex}.history-review-link{color:var(--color-blue-600);white-space:nowrap;font-size:.875rem;font-weight:500;text-decoration:none}.history-review-link:hover{color:var(--color-blue-500);text-decoration:underline}.history-delete-button{min-height:36px;color:var(--color-white);cursor:pointer;background-color:#dc3545;border:none;border-radius:4px;padding:8px 14px;font-size:.875rem;font-weight:500;transition:background-color .2s,opacity .2s;position:relative}.history-delete-button:hover:not(:disabled){background-color:#c82333}.history-delete-button:disabled{opacity:.6;cursor:not-allowed}.history-delete-button.loading{color:#0000}.history-delete-button.loading:after{content:"";border:2px solid var(--color-white);border-top-color:#0000;border-radius:50%;width:14px;height:14px;margin-top:-7px;margin-left:-7px;animation:.8s linear infinite spin;position:absolute;top:50%;left:50%}.history-skeleton-list{flex-direction:column;gap:12px;display:flex}.history-skeleton-card{flex-direction:column;gap:10px;display:flex}.interview-timer{background:var(--color-white);border:1px solid var(--color-gray-300);z-index:50;border-radius:4px;padding:10px 14px;font-family:Courier New,monospace;font-size:1rem;position:fixed;top:72px;right:16px;box-shadow:0 2px 4px #0000001a}.timer-label{color:var(--color-gray-600);margin-right:8px}.timer-display{color:var(--color-gray-900);font-weight:700}.empty-state{text-align:center;margin:20px 0;padding:60px 20px}.empty-state h2{color:var(--color-gray-900);margin:0 0 12px;font-size:1.5rem;font-weight:600}.empty-state p{color:var(--color-gray-500);margin:0 0 28px;font-size:1rem}.empty-state a,.empty-state-primary{background-color:var(--color-gray-800);color:var(--color-white);border-radius:4px;padding:10px 20px;font-weight:500;text-decoration:none;transition:background-color .2s;display:inline-block}.empty-state a:hover,.empty-state-primary:hover{background-color:var(--color-gray-900);text-decoration:none}.empty-state-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.empty-state-secondary{border:1px solid var(--color-gray-300);color:var(--color-gray-700);border-radius:4px;padding:10px 20px;font-weight:500;text-decoration:none;transition:background-color .2s,border-color .2s;display:inline-block}.empty-state-secondary:hover{background-color:var(--color-gray-100);border-color:var(--color-gray-400);text-decoration:none}.loading-spinner{border:2px solid var(--color-gray-200);border-top-color:var(--color-gray-600);vertical-align:middle;border-radius:50%;width:18px;height:18px;margin-right:8px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.loading-container{text-align:center;padding:60px 20px}.loading-text{color:var(--color-gray-600);margin-top:16px;font-size:1rem}.error-message{border:1px solid #fecaca;border-left:4px solid var(--color-error);color:#991b1b;background:#fef2f2;border-radius:4px;margin:16px 0;padding:12px 16px}@media print{body *{visibility:hidden}.printButton{display:none}.printable,.printable *{visibility:visible}.printable{position:absolute;top:0;left:0}details,details>summary,details>*{display:block!important}}.role-selector{margin-top:20px}.role-controls{flex-direction:column;gap:16px;margin-bottom:24px;display:flex}.role-search{width:100%;max-width:600px;padding:12px 16px;font-size:1rem}.role-filters{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.filter-group{align-items:center;gap:8px;display:flex}.filter-group label{color:var(--color-gray-700);margin:0;font-size:.95rem;font-weight:500}.filter-label{color:var(--color-gray-700);font-size:.95rem;font-weight:500}.sort-select{border:1px solid var(--color-gray-300);background-color:var(--color-white);color:var(--color-gray-900);cursor:pointer;border-radius:4px;padding:8px 12px;font-size:.95rem;transition:border-color .2s}.sort-select:focus{border-color:var(--color-blue-500);outline:none;box-shadow:0 0 0 3px #3b82f61a}.checkbox-group{flex-wrap:wrap;gap:16px;display:flex}.checkbox-label{color:var(--color-gray-700);cursor:pointer;align-items:center;gap:6px;margin:0;font-size:.95rem;font-weight:400;display:flex}.checkbox-label input[type=checkbox]{cursor:pointer;width:16px;height:16px}.role-table-container{border:1px solid var(--color-gray-200);background:var(--color-white);border-radius:6px;overflow-x:auto;box-shadow:0 1px 2px #0000000d}.role-table{border-collapse:collapse;width:100%;font-size:.95rem}.role-table thead{background:var(--color-gray-100);border-bottom:2px solid var(--color-gray-200)}.role-table th{text-align:left;color:var(--color-gray-900);text-transform:uppercase;letter-spacing:.02em;padding:12px 16px;font-size:.9rem;font-weight:600}.role-table td{border-top:1px solid var(--color-gray-200);color:var(--color-gray-700);padding:16px}.role-table tbody tr{transition:background-color .15s}.role-table tbody tr:hover{background-color:var(--color-gray-50)}.role-name{color:var(--color-gray-900);white-space:nowrap;font-weight:600}.role-description{max-width:400px;line-height:1.5}.role-questions{text-align:center;color:var(--color-gray-900);font-weight:600}.difficulty-badge{text-transform:capitalize;border-radius:12px;padding:4px 10px;font-size:.85rem;font-weight:600;display:inline-block}.difficulty-easy{color:#065f46;background:#d1fae5}.difficulty-medium{color:#9a3412;background:#fed7aa}.difficulty-hard{color:#991b1b;background:#fecaca}.difficulty-expert{color:#3730a3;background:#e0e7ff}.action-button{background-color:var(--color-blue-600);color:var(--color-white);cursor:pointer;white-space:nowrap;border:none;border-radius:4px;padding:8px 20px;font-weight:600;transition:background-color .2s}.action-button:hover:not(:disabled){background-color:var(--color-blue-500)}.action-button:active:not(:disabled){background-color:#1d4ed8}.action-button:disabled{opacity:.6;cursor:not-allowed}.action-button.loading{color:#0000;position:relative}.action-button.loading:after{content:"";border:2px solid var(--color-white);border-top-color:#0000;border-radius:50%;width:16px;height:16px;margin-top:-8px;margin-left:-8px;animation:.8s linear infinite spin;position:absolute;top:50%;left:50%}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-content{background:var(--color-white);border-radius:6px;width:100%;max-width:400px;padding:24px;box-shadow:0 4px 6px #0000001a}.modal-title{color:var(--color-gray-900);margin:0 0 20px;font-size:1.25rem;font-weight:600}.modal-options{flex-direction:column;gap:12px;margin-bottom:20px;display:flex}.modal-option{background-color:var(--color-blue-600);color:var(--color-white);cursor:pointer;border:none;border-radius:4px;width:100%;padding:14px 20px;font-size:1rem;font-weight:600;transition:background-color .2s}.modal-option:hover:not(:disabled){background-color:var(--color-blue-500)}.modal-option:active:not(:disabled){background-color:#1d4ed8}.modal-option-disabled{background-color:var(--color-gray-300);color:var(--color-gray-500);cursor:not-allowed;opacity:.6}.modal-option-disabled:hover{background-color:var(--color-gray-300)}.modal-cancel{background-color:var(--color-white);color:var(--color-gray-700);border:1px solid var(--color-gray-300);cursor:pointer;border-radius:4px;width:100%;padding:10px 20px;font-size:.95rem;font-weight:500;transition:all .2s}.modal-cancel:hover{background-color:var(--color-gray-100);border-color:var(--color-gray-400)}@media (max-width:640px){.modal-content{max-width:100%;padding:20px}.modal-title{font-size:1.1rem}.modal-option{padding:12px 16px;font-size:.95rem}}.analytics-page{width:100%}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px;display:grid}.stat-card{flex-direction:column;gap:4px;display:flex}.stat-value{color:var(--color-gray-900);font-size:1.75rem;font-weight:600;line-height:1.2}.stat-label{color:var(--color-gray-500);font-size:.875rem}.analytics-section{margin-bottom:24px}.analytics-tabs{border-bottom:1px solid var(--color-gray-200);flex-wrap:wrap;gap:4px;margin-bottom:20px;display:flex}.analytics-tab{color:var(--color-gray-500);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 12px;font-family:inherit;font-size:.875rem;transition:color .15s}.analytics-tab:hover{color:var(--color-gray-800)}.analytics-tab--active{color:var(--color-gray-900);border-bottom-color:var(--color-gray-800);font-weight:600}.line-chart{width:100%;margin-bottom:24px}.line-chart svg{width:100%;height:auto;display:block}.line-chart-axis{stroke:var(--color-gray-300);stroke-width:1px}.line-chart-grid{stroke:var(--color-gray-100);stroke-width:1px}.line-chart-line{stroke:var(--color-gray-800);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.line-chart-dot{fill:var(--color-gray-800)}.line-chart-tick{fill:var(--color-gray-500);font-family:Arial,Helvetica,sans-serif;font-size:11px}.line-chart-empty{min-height:200px;color:var(--color-gray-500);justify-content:center;align-items:center;font-size:.875rem;display:flex}.insights-grid{border-top:1px solid var(--color-gray-200);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;padding-top:8px;display:grid}.insight-item{flex-direction:column;gap:4px;display:flex}.insight-label{color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.02em;font-size:.8rem}.insight-value{color:var(--color-gray-900);font-size:1.1rem;font-weight:600}.ranked-list{margin:0;padding:0;list-style:none}.ranked-item{border-bottom:1px solid var(--color-gray-100);justify-content:space-between;align-items:baseline;gap:16px;padding:12px 0;font-size:.95rem;display:flex}.ranked-item:last-child{border-bottom:none}.ranked-item-name{color:var(--color-gray-900);flex:1}.ranked-item-meta,.ranked-item-count{color:var(--color-gray-500);white-space:nowrap;flex-shrink:0}.analytics-empty-text{color:var(--color-gray-500);margin:0;font-size:.95rem}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}.skeleton{background:var(--color-gray-200);border-radius:4px;animation:1.5s ease-in-out infinite skeleton-pulse}.skeleton-title{width:240px;height:32px;margin-bottom:24px}.skeleton-stat-value{width:80px;height:28px;margin-bottom:8px}.skeleton-stat-label{width:120px;height:14px}.skeleton-section-title{width:160px;height:20px;margin-bottom:16px}.skeleton-tabs{width:100%;max-width:480px;height:36px;margin-bottom:20px}.skeleton-chart{width:100%;height:240px;margin-bottom:24px}.skeleton-insight-label{width:100px;height:12px;margin-bottom:8px}.skeleton-insight-value{width:60px;height:20px}.skeleton-list-row{width:100%;height:20px;margin-bottom:12px}.skeleton-list-row:last-child{margin-bottom:0}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.page-header-main{flex:1;min-width:0}.page-header-back{color:var(--color-gray-600);margin-bottom:8px;font-size:.875rem;text-decoration:none;display:inline-block}.page-header-back:hover{color:var(--color-gray-900);text-decoration:underline}.page-header-text h1,.analytics-page h1{color:var(--color-gray-900);margin:0;font-size:1.75rem;font-weight:600}.page-header-description{color:var(--color-gray-500);margin:8px 0 0;font-size:.95rem}.page-header-actions{flex-shrink:0}.confirm-dialog-message{color:var(--color-gray-600);margin:0 0 20px;font-size:.95rem;line-height:1.5}.confirm-dialog-actions{gap:12px;display:flex}.confirm-dialog-cancel{flex:1}.confirm-dialog-confirm{color:var(--color-white);cursor:pointer;background-color:#dc3545;border:none;border-radius:4px;flex:1;padding:10px 20px;font-size:.95rem;font-weight:600;transition:background-color .2s;position:relative}.confirm-dialog-confirm:hover:not(:disabled){background-color:#c82333}.confirm-dialog-confirm:disabled{opacity:.7;cursor:not-allowed}.confirm-dialog-confirm.loading{color:#0000}.confirm-dialog-confirm.loading:after{content:"";border:2px solid var(--color-white);border-top-color:#0000;border-radius:50%;width:14px;height:14px;margin-top:-7px;margin-left:-7px;animation:.8s linear infinite spin;position:absolute;top:50%;left:50%}.modal-overlay-animated{animation:.2s modalFadeIn}.modal-content-animated{animation:.2s modalSlideIn}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.skeleton-toolbar{width:200px;height:36px;margin-bottom:20px}.skeleton-history-role{width:55%;height:20px}.skeleton-history-meta{width:35%;height:14px}.skeleton-history-actions{width:120px;height:32px}.skeleton-review-meta{width:220px;height:28px;margin-bottom:20px}.skeleton-hero-score{width:80px;height:48px;margin-bottom:16px}.skeleton-hero-text{width:100%;height:16px;margin-bottom:8px}.skeleton-dimension-bar{width:100%;height:12px;margin-bottom:12px}.questions-section .card{transition:border-color .2s,box-shadow .2s}.questions-section .card:hover{border-color:var(--color-gray-300);box-shadow:0 2px 8px #0000000f}.printButton{background:var(--color-white);color:var(--color-gray-700);border:1px solid var(--color-gray-300);cursor:pointer;border-radius:4px;min-height:36px;padding:8px 16px;font-size:.875rem;font-weight:500;transition:background-color .2s,border-color .2s}.printButton:hover{background:var(--color-gray-100);border-color:var(--color-gray-400)}.markdown-content{color:var(--color-gray-700);font-size:.95rem;line-height:1.6}.markdown-content p{margin:0 0 8px}.markdown-content p:last-child{margin-bottom:0}.markdown-content ul,.markdown-content ol{margin:0 0 8px;padding-left:20px}.markdown-content li{margin-bottom:4px}.markdown-content code{background:var(--color-gray-100);border-radius:3px;padding:2px 6px;font-size:.875em}.markdown-content strong{color:var(--color-gray-900)}.auth-page{justify-content:center;padding:24px 0;display:flex}.auth-card{width:100%;max-width:400px}.auth-card h1{margin-top:0;margin-bottom:24px;font-size:1.5rem}.auth-card .form-group{margin-bottom:16px}.auth-card input{box-sizing:border-box;width:100%}.auth-card button[type=submit]{width:100%;min-height:44px;margin-top:8px}.auth-error{color:var(--color-error);margin:0 0 12px;font-size:.875rem}.auth-footer{text-align:center;color:var(--color-gray-600);margin-top:20px;font-size:.9rem}.auth-footer a{color:var(--color-blue-600)}a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--color-blue-500);outline-offset:2px}.history-card-link:focus-visible{outline-offset:4px;border-radius:4px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.history-card{animation:none}.dimension-bar-fill{transition:none}}@media (max-width:768px){.navbar-container{flex-wrap:wrap;position:relative}.navbar-toggle{margin-left:auto;display:flex}.navbar-menu{background:var(--color-white);border-bottom:1px solid var(--color-gray-200);flex-direction:column;align-items:stretch;gap:12px;margin-left:0;padding:12px 20px 16px;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 4px 6px #0000000d}.navbar-menu-open{display:flex}.navbar-links,.navbar-auth{flex-direction:column;align-items:stretch;gap:4px;width:100%}.navbar-link,.navbar-link-primary{align-items:center;min-height:44px;display:flex}.navbar-user{word-break:break-all;padding:12px 14px}.page-header{flex-direction:column;align-items:stretch}.page-header-actions{width:100%}.history-toolbar{justify-content:space-between;width:100%}.history-sort-select{flex:1;max-width:200px}.history-card{flex-direction:column;position:relative}.history-card-header{padding-right:72px}.history-score-badge{position:absolute;top:16px;right:16px}.history-card-actions{border-top:1px solid var(--color-gray-100);flex-direction:row;justify-content:space-between;align-items:center;width:100%;padding-top:12px}.history-delete-button{min-height:44px}.hero-header{text-align:center;flex-direction:column;align-items:center}.hero-verdict{width:100%}.feedback-grid{grid-template-columns:1fr}.confirm-dialog-actions{flex-direction:column}.printButton{width:100%}}@media (max-width:480px){.main-content{padding:12px}.dimension-row{flex-wrap:wrap}.dimension-label{width:100%;margin-bottom:4px}.dimension-bar-track{flex:1;min-width:0}.interview-timer{top:auto;bottom:16px;right:16px}.page-header-text h1,.analytics-page h1{font-size:1.5rem}}
