.header-content[data-v-6f53361f]{display:flex;justify-content:space-between;align-items:flex-start;width:100%}.header-text[data-v-6f53361f]{flex:1}.collapse-button[data-v-6f53361f]{background:#fff3;border:none;border-radius:8px;padding:8px;color:#fff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;margin-left:var(--spacing-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.collapse-button[data-v-6f53361f]:hover{background:#ffffff4d;transform:scale(1.05)}.collapse-button svg[data-v-6f53361f]{transition:transform .3s ease}.collapse-button svg.rotated[data-v-6f53361f]{transform:rotate(180deg)}.code-table-uploader[data-v-6f53361f]{display:flex;flex-direction:column;gap:var(--spacing-xs)}.builtin-selector[data-v-6f53361f]{border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xs);background:var(--color-bg-secondary)}.builtin-label[data-v-6f53361f]{display:block;font-weight:600;color:var(--color-text-primary);margin-bottom:4px}.builtin-content[data-v-6f53361f]{display:flex;flex-direction:column;gap:4px}.builtin-select[data-v-6f53361f]{padding:8px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-primary);font-size:var(--font-size-base);min-height:36px;font-family:inherit}.builtin-select[data-v-6f53361f]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light)}.builtin-select[data-v-6f53361f]:disabled{opacity:.6;cursor:not-allowed}.load-builtin-btn[data-v-6f53361f]{align-self:flex-start}.divider[data-v-6f53361f]{position:relative;text-align:center;margin:8px 0}.divider[data-v-6f53361f]:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--color-border)}.divider-text[data-v-6f53361f]{background:var(--color-bg-primary);padding:0 var(--spacing-md);color:var(--color-text-secondary);font-size:var(--font-size-sm);position:relative;z-index:1}.format-selector[data-v-6f53361f]{display:flex;flex-direction:column;gap:6px}.format-label[data-v-6f53361f]{font-weight:600;color:var(--color-text-primary)}.format-content[data-v-6f53361f]{display:flex;align-items:flex-start;gap:var(--spacing-lg);flex-wrap:wrap}.format-options[data-v-6f53361f]{display:flex;gap:var(--spacing-lg);flex-wrap:wrap;flex:1}.format-option[data-v-6f53361f]{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;padding:6px 8px;border-radius:var(--radius-md);transition:background-color .2s ease-in-out}.format-option[data-v-6f53361f]:hover{background-color:var(--color-bg-tertiary)}.format-option input[type=radio][data-v-6f53361f]{margin:0}.format-text[data-v-6f53361f]{font-weight:500;color:var(--color-text-primary)}.format-example[data-v-6f53361f]{font-size:.8rem;color:var(--color-text-tertiary);font-family:var(--font-mono)}.prefix-control[data-v-6f53361f]{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.prefix-button-group[data-v-6f53361f],.prefix-keys-input[data-v-6f53361f]{display:flex;align-items:center;gap:8px}.prefix-keys-field[data-v-6f53361f]{padding:6px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff;transition:all .2s ease;min-width:300px;font-family:Consolas,Monaco,Courier New,monospace}.prefix-keys-field[data-v-6f53361f]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.prefix-keys-field[data-v-6f53361f]::placeholder{color:#9ca3af;font-style:italic}.prefix-button[data-v-6f53361f]{padding:8px 16px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#374151;cursor:pointer;font-size:14px;transition:all .2s ease;white-space:nowrap;min-width:280px}.help-button[data-v-6f53361f]{width:32px;height:32px;border:1px solid #d1d5db;border-radius:50%;background:#fff;color:#6b7280;cursor:pointer;font-size:16px;font-weight:700;transition:all .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.help-button[data-v-6f53361f]:hover{background:#f3f4f6;border-color:#9ca3af;color:#374151}.help-modal-overlay[data-v-6f53361f]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:999999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn-6f53361f .3s ease-out}.help-modal[data-v-6f53361f]{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:500px;width:90%;max-height:80vh;overflow:hidden;animation:slideIn-6f53361f .3s ease-out}.help-header[data-v-6f53361f]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid #e5e7eb}.help-header h4[data-v-6f53361f]{margin:0;font-size:18px;font-weight:600;color:#111827}.help-close-btn[data-v-6f53361f]{width:32px;height:32px;border:none;background:none;color:#9ca3af;cursor:pointer;font-size:24px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.help-close-btn[data-v-6f53361f]:hover{background:#f3f4f6;color:#374151}.help-content[data-v-6f53361f]{padding:20px 24px;color:#374151;line-height:1.6;overflow-y:auto;max-height:50vh}.help-content p[data-v-6f53361f]{margin:0 0 12px}.help-content ul[data-v-6f53361f]{margin:8px 0 16px 20px;padding:0}.help-content li[data-v-6f53361f]{margin-bottom:6px}.help-content strong[data-v-6f53361f]{color:#111827;font-weight:600}.help-footer[data-v-6f53361f]{padding:16px 24px 20px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end}@keyframes fadeIn-6f53361f{0%{opacity:0}to{opacity:1}}@keyframes slideIn-6f53361f{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.upload-area[data-v-6f53361f]{border:2px dashed var(--color-border-primary);border-radius:var(--radius-lg);padding:var(--spacing-md);text-align:center;cursor:pointer;transition:all .2s ease-in-out;background-color:var(--color-bg-secondary)}.upload-area[data-v-6f53361f]:hover{border-color:var(--color-primary);background-color:var(--color-primary-light)}.upload-area.drag-over[data-v-6f53361f]{border-color:var(--color-primary);background-color:var(--color-primary-light);transform:scale(1.02)}.upload-area.has-file[data-v-6f53361f]{border-color:var(--color-success);background-color:var(--color-bg-primary)}.upload-area.uploading[data-v-6f53361f]{border-color:var(--color-primary);cursor:not-allowed}.upload-content[data-v-6f53361f]{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm)}.upload-icon[data-v-6f53361f]{font-size:2.5rem;margin-bottom:var(--spacing-sm)}.upload-title[data-v-6f53361f]{font-size:1.25rem;font-weight:600;color:var(--color-text-primary)}.upload-subtitle[data-v-6f53361f]{color:var(--color-text-secondary)}.upload-note[data-v-6f53361f]{font-size:.875rem;color:var(--color-text-tertiary);max-width:400px}.file-selected[data-v-6f53361f]{display:flex;align-items:center;gap:var(--spacing-md);background-color:var(--color-bg-tertiary);padding:var(--spacing-md);border-radius:var(--radius-md);width:100%;max-width:400px}.file-icon[data-v-6f53361f]{font-size:2rem}.file-info[data-v-6f53361f]{flex:1;text-align:left}.file-name[data-v-6f53361f]{font-weight:600;color:var(--color-text-primary);margin-bottom:4px;display:flex;align-items:center;gap:8px}.restored-indicator[data-v-6f53361f]{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:#fef3cd;color:#92400e;border-radius:12px;font-size:.75rem;font-weight:500;border:1px solid #fcd34d}[data-theme=dark] .restored-indicator[data-v-6f53361f]{background:#451a03;color:#fcd34d;border-color:#92400e}.file-size[data-v-6f53361f]{font-size:.875rem;color:var(--color-text-secondary)}.remove-file[data-v-6f53361f]{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0;font-size:1.2rem}.uploading-state[data-v-6f53361f]{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.spinner[data-v-6f53361f]{width:40px;height:40px;border:4px solid var(--color-border-primary);border-top:4px solid var(--color-primary);border-radius:50%;animation:spin-6f53361f 1s linear infinite}@keyframes spin-6f53361f{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.upload-actions[data-v-6f53361f]{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap}.upload-btn[data-v-6f53361f]{min-width:120px}.preview-section[data-v-6f53361f]{background-color:var(--color-bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-md)}.preview-title[data-v-6f53361f]{font-size:1.1rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-md)}.preview-content[data-v-6f53361f]{font-family:var(--font-mono);font-size:.875rem;max-height:320px;overflow-y:auto;border:1px solid var(--color-border-primary);border-radius:var(--radius-sm);padding:var(--spacing-sm);background-color:var(--color-bg-primary)}.preview-line[data-v-6f53361f]{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-sm);border-bottom:1px solid var(--color-border-secondary);margin:0 calc(-1 * var(--spacing-sm));padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.preview-line[data-v-6f53361f]:last-child{border-bottom:none}.preview-line[data-v-6f53361f]:hover{background-color:var(--color-bg-secondary)}.preview-line.invalid[data-v-6f53361f]{opacity:.6;background-color:var(--color-bg-tertiary)}.line-number[data-v-6f53361f]{width:30px;color:var(--color-text-tertiary);font-size:.8rem}.line-content[data-v-6f53361f]{flex:1;color:var(--color-text-secondary)}.line-parsed[data-v-6f53361f]{color:var(--color-success);font-weight:500}.line-error[data-v-6f53361f]{color:var(--color-error);font-weight:500}.upload-status[data-v-6f53361f]{margin-top:var(--spacing-lg);padding:var(--spacing-md);border-radius:var(--radius-md);display:flex;align-items:center;gap:var(--spacing-sm);font-weight:500;animation:slideIn-6f53361f .3s ease-out}.upload-status.success[data-v-6f53361f]{background-color:#dcfce7;color:#166534;border:1px solid #bbf7d0}.upload-status.error[data-v-6f53361f]{background-color:#fef2f2;color:#991b1b;border:1px solid #fecaca}.status-icon[data-v-6f53361f]{font-weight:700;font-size:1.1rem}@keyframes slideIn-6f53361f{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.format-options[data-v-6f53361f]{flex-direction:column;gap:var(--spacing-sm)}.upload-area[data-v-6f53361f]{padding:var(--spacing-xl)}.upload-actions[data-v-6f53361f]{flex-direction:column}.upload-btn[data-v-6f53361f]{width:100%}}[data-theme=dark] .builtin-select[data-v-6f53361f]{background:var(--color-bg-primary);color:var(--color-text-primary);border-color:var(--color-border-primary)}[data-theme=dark] .builtin-select[data-v-6f53361f]:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 2px #0ea5e91a}[data-theme=dark] .prefix-button[data-v-6f53361f]{background:var(--color-bg-primary);color:var(--color-text-primary);border-color:var(--color-border-primary)}[data-theme=dark] .prefix-button[data-v-6f53361f]:hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary)}[data-theme=dark] .prefix-button.active[data-v-6f53361f]{background:var(--color-primary);color:var(--color-text-inverse);border-color:var(--color-primary)}[data-theme=dark] .help-button[data-v-6f53361f]{background:var(--color-bg-primary);color:var(--color-text-secondary);border-color:var(--color-border-primary)}[data-theme=dark] .help-button[data-v-6f53361f]:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary);border-color:var(--color-border-secondary)}[data-theme=dark] .help-modal[data-v-6f53361f]{background:var(--color-bg-primary);border:1px solid var(--color-border-primary)}[data-theme=dark] .help-header[data-v-6f53361f]{border-bottom-color:var(--color-border-primary)}[data-theme=dark] .help-header h4[data-v-6f53361f]{color:var(--color-text-primary)}[data-theme=dark] .help-close-btn[data-v-6f53361f]{color:var(--color-text-secondary)}[data-theme=dark] .help-close-btn[data-v-6f53361f]:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}[data-theme=dark] .help-content[data-v-6f53361f]{color:var(--color-text-primary)}[data-theme=dark] .prefix-keys-field[data-v-6f53361f]{background:var(--color-bg-primary);color:var(--color-text-primary);border-color:var(--color-border-primary)}[data-theme=dark] .prefix-keys-field[data-v-6f53361f]:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px #0ea5e91a}.encoding-preview-section[data-v-6f53361f]{margin-top:var(--spacing-lg)}.encoding-table-container[data-v-6f53361f]{font-family:var(--font-mono);font-size:.875rem;max-height:400px;overflow-y:auto;border:1px solid var(--color-border-primary);border-radius:var(--radius-sm);background-color:var(--color-bg-primary)}.encoding-table[data-v-6f53361f]{width:100%;border-collapse:collapse;background:transparent}.encoding-table thead[data-v-6f53361f]{position:sticky;top:0;background-color:var(--color-bg-secondary);z-index:1}.encoding-table th[data-v-6f53361f]{padding:var(--spacing-sm) var(--spacing-xs);text-align:left;font-weight:600;font-size:.8rem;color:var(--color-text-primary);border-bottom:1px solid var(--color-border-secondary);border-right:1px solid var(--color-border-secondary);background-color:var(--color-bg-secondary)}.encoding-table th[data-v-6f53361f]:last-child{border-right:none}.row-header[data-v-6f53361f]{width:40px;text-align:center!important}.char-header[data-v-6f53361f]{width:50px;text-align:center!important}.code-header[data-v-6f53361f]{min-width:90px;font-size:.75rem}.encoding-row[data-v-6f53361f]{transition:background-color .15s ease}.encoding-row[data-v-6f53361f]:hover{background-color:var(--color-bg-secondary)}.encoding-table td[data-v-6f53361f]{padding:var(--spacing-xs) var(--spacing-xs);border-bottom:1px solid var(--color-border-secondary);border-right:1px solid var(--color-border-secondary);font-size:.85rem;line-height:1.4}.encoding-table td[data-v-6f53361f]:last-child{border-right:none}.encoding-row:last-child td[data-v-6f53361f]{border-bottom:none}.row-number[data-v-6f53361f]{width:30px;text-align:center;color:var(--color-text-tertiary);font-size:.8rem}.char-cell[data-v-6f53361f]{text-align:center;font-weight:600;font-size:.9rem;color:var(--color-text-primary)}.code-cell[data-v-6f53361f]{font-family:var(--font-mono);font-size:.8rem;color:var(--color-text-secondary);text-align:left;padding:var(--spacing-xs)}.code-cell.selection[data-v-6f53361f]{color:var(--color-success);font-weight:500}.longest-codes-section[data-v-6f53361f]{margin-top:var(--spacing-lg);border-top:2px solid var(--color-border-primary);padding-top:var(--spacing-lg)}.max-length-info[data-v-6f53361f]{margin-bottom:var(--spacing-md);padding:var(--spacing-sm);background-color:var(--color-bg-secondary);border-radius:var(--radius-md);font-size:.9rem}.max-length-info strong[data-v-6f53361f]{color:var(--color-text-primary)}.code-cell.max-length[data-v-6f53361f]{text-align:center}.key-button[data-v-69f891ec]{position:relative;display:flex;align-items:center;justify-content:center;border:2px solid var(--heatmap-key-border);border-radius:var(--radius-md);background-color:var(--heatmap-key-bg);color:var(--heatmap-key-text);cursor:pointer;transition:all var(--transition-base);-webkit-user-select:none;user-select:none;overflow:hidden;font-family:var(--font-mono);width:100%;height:100%}.key-button[data-v-69f891ec]:not(.key-space){aspect-ratio:1}.key-button[data-v-69f891ec]:hover{border-color:var(--heatmap-key-active);transform:translateY(-2px);box-shadow:var(--shadow-md);z-index:10}.key-button.key-active[data-v-69f891ec]{border-color:var(--heatmap-key-active);box-shadow:var(--shadow-lg)}.key-button.hidden-key[data-v-69f891ec]{opacity:0;pointer-events:none;border:none;background:transparent!important;box-shadow:none!important}.key-button.hidden-key[data-v-69f891ec]:hover{transform:none!important;border-color:transparent!important;box-shadow:none!important}.key-content[data-v-69f891ec]{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:2px}.key-label[data-v-69f891ec]{font-size:calc(.2rem + 1.2vw);font-weight:600;color:var(--color-text-primary);text-transform:uppercase;font-family:var(--font-mono);min-height:1.2em}.key-value[data-v-69f891ec]{font-size:calc(.2rem + 1vw);font-weight:500;color:var(--key-text-color, var(--color-text-secondary));font-family:var(--font-mono);line-height:1}.key-heatmap-overlay[data-v-69f891ec]{position:absolute;top:0;left:0;right:0;bottom:0;z-index:1;border-radius:calc(var(--radius-md) - 2px);transition:all .3s ease}.key-button.mode-frequency .key-heatmap-overlay[data-v-69f891ec]{background:linear-gradient(135deg,rgba(99,102,241,calc(var(--intensity, 0) * .9 + .1)),rgba(59,130,246,calc(var(--intensity, 0) * .8 + .1)))}[data-theme=dark] .key-button.mode-frequency .key-heatmap-overlay[data-v-69f891ec]{background:linear-gradient(135deg,rgba(14,165,233,calc(var(--intensity, 0) * .9 + .1)),rgba(6,182,212,calc(var(--intensity, 0) * .8 + .1)))}.key-button.mode-load .key-heatmap-overlay[data-v-69f891ec]{background:linear-gradient(135deg,rgba(249,115,22,calc(var(--intensity, 0) * .9 + .1)),rgba(234,88,12,calc(var(--intensity, 0) * .8 + .1)))}[data-theme=dark] .key-button.mode-load .key-heatmap-overlay[data-v-69f891ec]{background:linear-gradient(135deg,rgba(251,146,60,calc(var(--intensity, 0) * .9 + .1)),rgba(249,115,22,calc(var(--intensity, 0) * .8 + .1)))}.key-button.key-1[data-v-69f891ec],.key-button.key-2[data-v-69f891ec],.key-button.key-3[data-v-69f891ec],.key-button.key-4[data-v-69f891ec],.key-button.key-5[data-v-69f891ec],.key-button.key-6[data-v-69f891ec],.key-button.key-7[data-v-69f891ec],.key-button.key-8[data-v-69f891ec],.key-button.key-9[data-v-69f891ec],.key-button.key-0[data-v-69f891ec],.key-button.key-semicolon[data-v-69f891ec],.key-button.key-comma[data-v-69f891ec],.key-button.key-period[data-v-69f891ec],.key-button.key-slash[data-v-69f891ec]{background-color:var(--color-bg-tertiary)}@media (max-width: 768px){.key-button[data-v-69f891ec]{border-width:1px}.key-label[data-v-69f891ec]{font-size:.8rem}.key-value[data-v-69f891ec]{font-size:.7rem}}@media (min-width: 961px){.key-label[data-v-69f891ec]{font-size:.92rem}.key-value[data-v-69f891ec]{font-size:.8rem}}@keyframes keyPress-69f891ec{0%{transform:scale(1)}50%{transform:scale(.95)}to{transform:scale(1)}}.key-button[data-v-69f891ec]:active{animation:keyPress-69f891ec .1s ease-in-out}.key-button[data-v-69f891ec]:focus{outline:2px solid var(--color-primary);outline-offset:2px}@media (prefers-contrast: high){.key-button[data-v-69f891ec]{border-width:3px}.key-label[data-v-69f891ec]{font-weight:700}}.punctuation-wrapper[data-v-995cff98]{margin-top:var(--spacing-sm);display:flex;align-items:center;gap:var(--spacing-sm)}.punctuation-option[data-v-995cff98]{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-bg-secondary);border-radius:var(--radius-md);border:1px solid var(--color-border-secondary);width:fit-content}.option-label[data-v-995cff98]{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;-webkit-user-select:none;user-select:none}.option-checkbox[data-v-995cff98]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-primary)}.option-text[data-v-995cff98]{font-size:.9rem;color:var(--color-text-primary);font-weight:500}.help-button[data-v-995cff98]{width:28px;height:28px;border:1px solid var(--color-border-secondary);border-radius:50%;background:var(--color-bg-primary);color:var(--color-text-secondary);cursor:pointer;font-size:14px;font-weight:700;transition:all .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.help-button[data-v-995cff98]:hover{background:var(--color-bg-secondary);border-color:var(--color-primary);color:var(--color-primary);transform:scale(1.05)}.help-modal-overlay[data-v-995cff98]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:999999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn-995cff98 .3s ease-out}.help-modal[data-v-995cff98]{background:var(--color-bg-primary);border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:500px;width:90%;max-height:80vh;overflow:hidden;animation:slideIn-995cff98 .3s ease-out}.help-header[data-v-995cff98]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--color-border-primary)}.help-header h4[data-v-995cff98]{margin:0;font-size:18px;font-weight:600;color:var(--color-text-primary)}.help-close-btn[data-v-995cff98]{width:32px;height:32px;border:none;background:none;color:var(--color-text-secondary);cursor:pointer;font-size:24px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.help-close-btn[data-v-995cff98]:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.help-content[data-v-995cff98]{padding:20px 24px;color:var(--color-text-secondary);line-height:1.6;overflow-y:auto;max-height:50vh}.help-content p[data-v-995cff98]{margin:0 0 12px;color:var(--color-text-primary)}.help-content ul[data-v-995cff98]{margin:8px 0 16px 20px;padding:0}.help-content li[data-v-995cff98]{margin-bottom:8px;color:var(--color-text-primary)}.help-content strong[data-v-995cff98]{color:var(--color-primary);font-weight:600}.help-content code[data-v-995cff98]{background:var(--color-bg-secondary);padding:2px 6px;border-radius:4px;font-family:Consolas,Monaco,monospace;font-size:.9em;color:var(--color-primary)}.help-footer[data-v-995cff98]{padding:16px 24px 20px;border-top:1px solid var(--color-border-primary);display:flex;justify-content:flex-end}@keyframes fadeIn-995cff98{0%{opacity:0}to{opacity:1}}@keyframes slideIn-995cff98{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.custom-tooltip[data-v-995cff98]{position:fixed;z-index:10000;padding:12px 16px;background-color:#000000e6;color:#fff;border-radius:8px;font-size:.85rem;line-height:1.6;max-width:350px;box-shadow:0 4px 12px #0000004d;pointer-events:none;white-space:pre-line;word-wrap:break-word}.custom-tooltip[data-v-995cff98]:before{content:"";position:absolute;top:100%;left:20px;border:6px solid transparent;border-top-color:#000000e6}.header-content[data-v-995cff98]{display:flex;justify-content:space-between;align-items:flex-start;width:100%}.header-text[data-v-995cff98]{flex:1}.header-buttons[data-v-995cff98]{display:flex;align-items:center;gap:var(--spacing-sm);margin-left:var(--spacing-lg)}.export-btn[data-v-995cff98]{background:#fff3;border:none;border-radius:8px;padding:8px;color:#fff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.export-btn[data-v-995cff98]:hover:not(:disabled){background:#ffffff4d;transform:scale(1.05)}.export-btn[data-v-995cff98]:disabled{opacity:.5;cursor:not-allowed}.collapse-button[data-v-995cff98]{background:#fff3;border:none;border-radius:8px;padding:8px;color:#fff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.collapse-button[data-v-995cff98]:hover{background:#ffffff4d;transform:scale(1.05)}.collapse-button svg[data-v-995cff98]{transition:transform .3s ease}.collapse-button svg.rotated[data-v-995cff98]{transform:rotate(180deg)}.analysis-placeholder[data-v-995cff98]{text-align:center;padding:var(--spacing-xxl);background-color:var(--color-bg-secondary);border-radius:var(--radius-lg);color:var(--color-text-secondary);box-shadow:0 4px 6px -1px #0000001a}.placeholder-icon[data-v-995cff98]{font-size:4rem;margin-bottom:var(--spacing-lg);opacity:.6}.placeholder-title[data-v-995cff98]{font-size:1.5rem;font-weight:600;margin-bottom:var(--spacing-sm);color:var(--color-text-primary)}.placeholder-subtitle[data-v-995cff98]{font-size:1rem;opacity:.8}.keyboard-heatmap-content[data-v-995cff98]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.stats-container[data-v-995cff98]{background-color:var(--color-bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-md);border:1px solid var(--color-border-primary)}.stats-title[data-v-995cff98]{font-size:1.3rem;font-weight:600;color:var(--color-text-primary);margin:0 0 var(--spacing-lg) 0;border-bottom:2px solid var(--color-primary);padding-bottom:var(--spacing-sm)}.module-container[data-v-995cff98]{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%}.global-controls[data-v-995cff98]{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background-color:var(--color-bg-secondary);border-radius:var(--radius-lg);box-shadow:0 2px 4px #0000001a;border:1px solid var(--color-border-primary);margin-bottom:var(--spacing-md)}.controls-left[data-v-995cff98]{flex:1}.page-title[data-v-995cff98]{font-size:1.5rem;font-weight:700;color:var(--color-text-primary);margin:0}.controls-right[data-v-995cff98]{flex-shrink:0}.global-toggle-btn[data-v-995cff98]{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000001a}.global-toggle-btn[data-v-995cff98]:hover{background-color:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.global-toggle-btn[data-v-995cff98]:active{transform:translateY(0);box-shadow:0 2px 4px #0000001a}.btn-icon[data-v-995cff98]{font-size:1rem}.btn-text[data-v-995cff98]{font-size:.9rem}.module-card[data-v-995cff98]{background-color:var(--color-bg-secondary);border-radius:var(--radius-lg);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border:1px solid var(--color-border-primary);overflow:hidden;transition:all .3s ease;width:100%}.module-card[data-v-995cff98]:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-2px)}.module-header[data-v-995cff98]{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background-color:var(--color-bg-primary);border-bottom:1px solid var(--color-border-primary)}.module-title[data-v-995cff98]{font-size:1.2rem;font-weight:600;color:var(--color-text-primary);margin:0}.toggle-button[data-v-995cff98]{background:none;border:none;cursor:pointer;padding:var(--spacing-sm);border-radius:var(--radius-md);transition:all .2s ease;display:flex;align-items:center;justify-content:center;min-width:32px;min-height:32px}.toggle-button[data-v-995cff98]:hover{background-color:var(--color-bg-secondary)}.toggle-icon[data-v-995cff98]{font-size:.9rem;color:var(--color-text-secondary);transition:transform .3s ease;transform-origin:center}.toggle-icon.collapsed[data-v-995cff98]{transform:rotate(-90deg)}.module-content[data-v-995cff98]{padding:var(--spacing-lg);animation:fadeIn-995cff98 .3s ease}@keyframes fadeIn-995cff98{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.keyboard-wrapper[data-v-995cff98]{display:flex;justify-content:center;padding:var(--spacing-xs) 0;overflow:hidden;width:100%;height:100%;flex-direction:column}@media (min-width: 1200px){.keyboard-wrapper[data-v-995cff98]{max-width:80%;margin:0 auto;padding:var(--spacing-sm) 0}}.keyboard-layout[data-v-995cff98]{background-color:var(--color-bg-primary);border-radius:var(--radius-md);padding:var(--spacing-lg);transform-origin:center top;width:100%;height:100%;max-width:none;max-height:none;min-width:280px;border:1px solid var(--color-border-secondary);transition:transform .3s ease;margin:auto;display:grid;grid-template-rows:repeat(5,1fr);gap:8px;place-items:center}.keyboard-row[data-v-995cff98]{display:grid;grid-template-columns:repeat(10,1fr);gap:4px;width:100%;height:100%;align-items:stretch}.space-row[data-v-995cff98]{margin-top:0}.stats-grid[data-v-995cff98]{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--spacing-xs)}.stats-section[data-v-995cff98]{border-bottom:1px solid var(--color-border);padding-bottom:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.stats-section[data-v-995cff98]:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.section-title[data-v-995cff98]{font-size:.9rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-xs);border-left:3px solid var(--color-primary);padding-left:var(--spacing-sm)}.stat-item[data-v-995cff98]{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--color-bg-primary);border-radius:var(--radius-md);border:1px solid var(--color-border-secondary);transition:all .2s ease}.stat-item[data-v-995cff98]:hover{background-color:var(--color-bg-secondary);transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.stat-label[data-v-995cff98]{color:var(--color-text-secondary);font-size:.8rem;font-weight:500}.stat-value[data-v-995cff98]{font-weight:600;color:var(--color-text-primary);font-size:.85rem;text-align:right}@media (min-width: 1200px){.keyboard-layout[data-v-995cff98]{width:100%;max-width:none}}@media (max-width: 768px) and (min-width: 481px){.keyboard-wrapper[data-v-995cff98]{padding:var(--spacing-xs) 0}.keyboard-layout[data-v-995cff98]{padding:var(--spacing-sm);width:100%!important;min-width:unset!important;max-width:100%}}@media (max-width: 768px){.module-container[data-v-995cff98]{gap:var(--spacing-md)}.global-controls[data-v-995cff98]{padding:var(--spacing-md);flex-direction:column;gap:var(--spacing-md);text-align:center}.page-title[data-v-995cff98]{font-size:1.3rem}.module-header[data-v-995cff98],.module-content[data-v-995cff98]{padding:var(--spacing-md)}.module-title[data-v-995cff98]{font-size:1.1rem}.keyboard-wrapper[data-v-995cff98]{padding:var(--spacing-sm) 0}.keyboard-layout[data-v-995cff98]{padding:var(--spacing-md);width:99%!important;min-width:unset!important;max-width:100%}.stats-container[data-v-995cff98]{padding:var(--spacing-md)}.stats-grid[data-v-995cff98]{grid-template-columns:1fr}.stat-item[data-v-995cff98]{padding:var(--spacing-sm) var(--spacing-md)}}@media (max-width: 480px){.global-controls[data-v-995cff98]{padding:var(--spacing-sm)}.page-title[data-v-995cff98]{font-size:1.2rem}.global-toggle-btn[data-v-995cff98]{padding:var(--spacing-xs) var(--spacing-sm);font-size:.8rem}.btn-text[data-v-995cff98]{display:none}.module-title[data-v-995cff98]{font-size:1rem}.tabs-container[data-v-995cff98],.tab-list[data-v-995cff98]{margin-bottom:2px}.keyboard-wrapper[data-v-995cff98]{padding:0;margin:0 calc(-1 * var(--spacing-md))}.keyboard-layout[data-v-995cff98]{width:100%!important;min-width:250px!important;max-width:100%;padding:var(--spacing-xs);border-radius:0;border-left:none;border-right:none}.stats-container[data-v-995cff98]{padding:var(--spacing-sm)}.keyboard-row[data-v-995cff98]{gap:1px;margin-bottom:2px}}.keyboard-wrapper[data-v-995cff98]::-webkit-scrollbar{height:6px}.keyboard-wrapper[data-v-995cff98]::-webkit-scrollbar-track{background:var(--color-bg-secondary);border-radius:3px}.keyboard-wrapper[data-v-995cff98]::-webkit-scrollbar-thumb{background:var(--color-border-primary);border-radius:3px}.keyboard-wrapper[data-v-995cff98]::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}.scheme-name[data-v-995cff98]{margin-top:16px;padding:8px 12px;background:#f8fafc;border-radius:6px;text-align:center}.scheme-name span[data-v-995cff98]{font-size:.85rem;color:#4a5568;font-weight:500}[data-theme=dark] .scheme-name[data-v-995cff98]{background:var(--color-bg-secondary)}[data-theme=dark] .scheme-name span[data-v-995cff98]{color:var(--color-text-secondary)}.header-content[data-v-fd2ceb35]{display:flex;justify-content:space-between;align-items:flex-start;width:100%}.header-text[data-v-fd2ceb35]{flex:1}.header-buttons[data-v-fd2ceb35]{display:flex;gap:8px;align-items:center}.export-btn[data-v-fd2ceb35]{background:#fff3;border:none;border-radius:8px;padding:8px;color:#fff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.export-btn[data-v-fd2ceb35]:hover:not(:disabled){background:#ffffff4d;transform:scale(1.05)}.export-btn[data-v-fd2ceb35]:disabled{opacity:.5;cursor:not-allowed}.collapse-button[data-v-fd2ceb35]{background:#fff3;border:none;border-radius:8px;padding:8px;color:#fff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.collapse-button[data-v-fd2ceb35]:hover{background:#ffffff4d;transform:scale(1.05)}.collapse-button svg[data-v-fd2ceb35]{transition:transform .3s ease}.collapse-button svg.rotated[data-v-fd2ceb35]{transform:rotate(180deg)}.viewer-title[data-v-fd2ceb35]{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-lg)}.no-data[data-v-fd2ceb35]{text-align:center;padding:var(--spacing-2xl);color:var(--color-text-secondary)}.analysis-content[data-v-fd2ceb35]{display:flex;flex-direction:column;gap:var(--spacing-xl)}.stats-grid[data-v-fd2ceb35]{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-lg)}.stat-item[data-v-fd2ceb35]{background:var(--color-bg-secondary);padding:var(--spacing-lg);border-radius:var(--radius-md);text-align:center}.stat-label[data-v-fd2ceb35]{font-size:.875rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.stat-value[data-v-fd2ceb35]{font-size:1.5rem;font-weight:600;color:var(--color-primary)}.top-entries h4[data-v-fd2ceb35]{font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin-bottom:var(--spacing-md)}.entries-list[data-v-fd2ceb35]{display:flex;flex-direction:column;gap:var(--spacing-md)}.entry-item[data-v-fd2ceb35]{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-bg-secondary);border-radius:var(--radius-md)}.entry-char[data-v-fd2ceb35]{font-size:1.5rem;font-weight:600;color:var(--color-primary);min-width:40px;text-align:center}.entry-codes[data-v-fd2ceb35]{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.entry-code[data-v-fd2ceb35]{padding:var(--spacing-xs) var(--spacing-sm);background:#fff;border:1px solid var(--color-border-primary);border-radius:var(--radius-sm);font-family:monospace;font-size:.875rem;color:var(--color-text-primary)}@media (max-width: 768px){.stats-grid[data-v-fd2ceb35]{grid-template-columns:repeat(2,1fr)}.cjk-grid[data-v-fd2ceb35]{grid-template-columns:1fr}.entry-item[data-v-fd2ceb35]{flex-direction:column;align-items:flex-start}.entry-char[data-v-fd2ceb35]{min-width:auto}}.scheme-name[data-v-fd2ceb35]{margin-top:16px;padding:8px 12px;background:#f8fafc;border-radius:6px;text-align:center}.scheme-name span[data-v-fd2ceb35]{font-size:.85rem;color:#4a5568;font-weight:500}.card-description a[data-v-94ef86e5]{color:#ffffffe6;text-decoration:underline}.card-description a[data-v-94ef86e5]:hover{color:#fff}.loading[data-v-94ef86e5]{display:flex;flex-direction:column;align-items:center;padding:40px 20px;color:#666}.spinner[data-v-94ef86e5]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin-94ef86e5 1s linear infinite;margin-bottom:15px}@keyframes spin-94ef86e5{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.analysis-results[data-v-94ef86e5]{width:100%}.metrics-table[data-v-94ef86e5]{width:100%;border-collapse:collapse;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.metrics-table th[data-v-94ef86e5],.metrics-table td[data-v-94ef86e5]{padding:8px 12px;text-align:left;border-bottom:1px solid #e5e7eb;font-size:.8rem;line-height:1.3}.metrics-table th[data-v-94ef86e5]{background:#f8fafc;font-weight:600;color:#374151;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.metrics-table th[data-v-94ef86e5]:first-child,.metrics-table td[data-v-94ef86e5]:first-child{min-width:140px}.metrics-table tbody tr[data-v-94ef86e5]:hover{background:#f9fafb}.metrics-table tbody tr:last-child td[data-v-94ef86e5]{border-bottom:none}.metric-value[data-v-94ef86e5]{font-weight:600;color:#059669;font-family:var(--font-numeric);font-feature-settings:"tnum" 0}.metric-desc[data-v-94ef86e5]{color:#6b7280;font-size:.875rem;margin:0}.info-icon[data-v-94ef86e5]{display:inline-block;margin-left:6px;color:#6b7280;font-size:.875rem;cursor:help;transition:color .2s ease;vertical-align:middle}.info-icon[data-v-94ef86e5]:hover{color:#374151}.empty-state[data-v-94ef86e5]{text-align:center;padding:40px 20px;color:#9ca3af}.empty-state p[data-v-94ef86e5]{margin:0;font-size:1.1rem}@media (max-width: 768px){.controls[data-v-94ef86e5]{justify-content:center}.metrics-table[data-v-94ef86e5]{font-size:.75rem}.metrics-table th[data-v-94ef86e5],.metrics-table td[data-v-94ef86e5]{padding:6px 8px;font-size:.7rem}}.custom-tooltip[data-v-94ef86e5]{position:fixed;background:#1f2937;color:#fff;border-radius:8px;padding:12px;font-size:.875rem;box-shadow:0 10px 25px #0003;max-width:300px;z-index:9999;pointer-events:none;line-height:1.5}.tooltip-content[data-v-94ef86e5]{display:block}.scheme-name[data-v-94ef86e5]{margin-top:16px;padding:8px 12px;background:#f8fafc;border-radius:6px;text-align:center}.scheme-name span[data-v-94ef86e5]{font-size:.85rem;color:#4a5568;font-weight:500}[data-theme=dark] .metrics-table[data-v-94ef86e5]{background:var(--color-bg-primary);border-color:var(--color-border-primary)}[data-theme=dark] .metrics-table th[data-v-94ef86e5]{background:var(--color-bg-tertiary);color:var(--color-text-primary);border-bottom-color:var(--color-border-primary)}[data-theme=dark] .metrics-table td[data-v-94ef86e5]{color:var(--color-text-primary);border-bottom-color:var(--color-border-secondary)}[data-theme=dark] .metrics-table tbody tr[data-v-94ef86e5]:hover{background:var(--color-bg-tertiary)}[data-theme=dark] .metric-value[data-v-94ef86e5]{color:var(--color-success)}[data-theme=dark] .metric-desc[data-v-94ef86e5],[data-theme=dark] .info-icon[data-v-94ef86e5]{color:var(--color-text-secondary)}[data-theme=dark] .info-icon[data-v-94ef86e5]:hover{color:var(--color-text-primary)}[data-theme=dark] .empty-state[data-v-94ef86e5],[data-theme=dark] .empty-state p[data-v-94ef86e5]{color:var(--color-text-secondary)}[data-theme=dark] .scheme-name[data-v-94ef86e5]{background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary)}[data-theme=dark] .scheme-name span[data-v-94ef86e5]{color:var(--color-text-secondary)}.loading-state[data-v-aff11496],.error-state[data-v-aff11496]{text-align:center;padding:60px 20px;color:#6b7280}.spinner[data-v-aff11496]{width:40px;height:40px;border:4px solid #f3f4f6;border-top:4px solid #8b5cf6;border-radius:50%;animation:spin-aff11496 1s linear infinite;margin:0 auto 16px}@keyframes spin-aff11496{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-icon[data-v-aff11496]{font-size:3rem;margin-bottom:16px}.error-state h4[data-v-aff11496]{margin:0 0 8px;font-size:1.25rem;color:#374151}.error-state p[data-v-aff11496]{margin:0 0 24px;font-size:.875rem}.retry-btn[data-v-aff11496]{background:#8b5cf6;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:500;cursor:pointer;transition:background .2s ease}.retry-btn[data-v-aff11496]:hover{background:#7c3aed}.results-container[data-v-aff11496]{display:flex;flex-direction:column;gap:24px}.results-table-container[data-v-aff11496]{overflow-x:auto;border-radius:8px;border:1px solid #e5e7eb;margin-bottom:24px}.results-table[data-v-aff11496]{width:100%;border-collapse:collapse;font-size:.875rem}.results-table th[data-v-aff11496],.results-table td[data-v-aff11496]{padding:12px 16px;text-align:left;border-bottom:1px solid #e5e7eb}.results-table th[data-v-aff11496]{background:#f9fafb;font-weight:600;color:#374151}.charset-header[data-v-aff11496]{width:25%}.count-header[data-v-aff11496]{width:20%;text-align:center}.codes-header[data-v-aff11496]{width:55%}.result-row[data-v-aff11496]:hover{background:#f9fafb}.charset-cell[data-v-aff11496]{text-align:left}.charset-info[data-v-aff11496]{display:flex;flex-direction:column;gap:4px}.charset-name[data-v-aff11496]{font-weight:500;color:#374151}.count-cell[data-v-aff11496]{text-align:center}.count-value[data-v-aff11496]{display:inline-block;padding:4px 12px;border-radius:20px;font-weight:600;font-family:var(--font-numeric);font-feature-settings:"tnum" 0;background:#dcfce7;color:#166534}.count-value.medium-count[data-v-aff11496]{background:#fef3c7;color:#92400e}.count-value.high-count[data-v-aff11496]{background:#fee2e2;color:#991b1b}.codes-cell[data-v-aff11496]{padding:12px 16px}.codes-list[data-v-aff11496]{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.ellipsis[data-v-aff11496]{color:#6b7280;font-weight:500;margin-left:2px}.expand-btn[data-v-aff11496]{background:none;border:1px solid #d1d5db;color:#3b82f6;font-size:.75rem;padding:2px 8px;border-radius:12px;cursor:pointer;transition:all .2s ease;margin-left:6px;white-space:nowrap}.expand-btn[data-v-aff11496]:hover{background:#eff6ff;border-color:#3b82f6;color:#1d4ed8}.expand-btn[data-v-aff11496]:active{transform:scale(.95)}.code-item[data-v-aff11496]{display:inline-flex;align-items:center;gap:4px}.code-text[data-v-aff11496]{font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;background:#f3f4f6;padding:2px 6px;border-radius:4px;font-size:.875rem;color:#374151}.hoverable[data-v-aff11496]{cursor:help;text-decoration:underline;text-decoration-style:dotted;text-decoration-color:#cbd5e1;transition:all .2s ease}.hoverable[data-v-aff11496]:hover{background:#e5e7eb;color:#1f2937;text-decoration-color:#3b82f6}.code-separator[data-v-aff11496]{color:#6b7280}.custom-tooltip[data-v-aff11496]{position:fixed;background:#1f2937;color:#fff;border-radius:8px;padding:12px;font-size:.875rem;box-shadow:0 10px 25px #0003;max-width:300px;z-index:9999;pointer-events:none;border:2px solid #3b82f6;min-width:100px;min-height:50px}.tooltip-content[data-v-aff11496]{display:flex;flex-direction:column;gap:8px}.tooltip-header[data-v-aff11496]{font-weight:500;color:#d1d5db;font-size:.75rem}.tooltip-chars[data-v-aff11496]{font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:1.2rem;line-height:1.5;word-break:break-all}@media (max-width: 768px){.results-table[data-v-aff11496]{font-size:.75rem}.results-table th[data-v-aff11496],.results-table td[data-v-aff11496]{padding:8px 12px}.charset-header[data-v-aff11496]{width:30%}.count-header[data-v-aff11496]{width:25%}.codes-header[data-v-aff11496]{width:45%}.notes-grid[data-v-aff11496]{gap:8px}.note-item[data-v-aff11496]{flex-direction:column;gap:4px}.note-label[data-v-aff11496]{min-width:auto}.code-text[data-v-aff11496]{font-size:.75rem;padding:1px 4px}.help-icon[data-v-aff11496]{width:14px;height:14px;font-size:9px}.custom-tooltip[data-v-aff11496]{max-width:250px;font-size:.75rem}.tooltip-chars[data-v-aff11496]{font-size:1rem}}@media (max-width: 480px){.card-content[data-v-aff11496]{padding:16px}.results-table th[data-v-aff11496],.results-table td[data-v-aff11496]{padding:6px 8px}.charset-header[data-v-aff11496]{width:35%}.count-header[data-v-aff11496]{width:25%}.codes-header[data-v-aff11496]{width:40%}.codes-list[data-v-aff11496]{flex-direction:column;align-items:flex-start;gap:2px}.code-item[data-v-aff11496]{gap:2px}.custom-tooltip[data-v-aff11496]{max-width:200px;padding:8px;font-size:.7rem}.tooltip-chars[data-v-aff11496]{font-size:.9rem}}.scheme-name[data-v-aff11496]{margin-top:16px;padding:8px 12px;background:#f8fafc;border-radius:6px;text-align:center}.scheme-name span[data-v-aff11496]{font-size:.85rem;color:#4a5568;font-weight:500}[data-theme=dark] .results-table-container[data-v-aff11496]{background:var(--color-bg-primary);border-color:var(--color-border-primary)}[data-theme=dark] .results-table[data-v-aff11496]{background:var(--color-bg-primary)}[data-theme=dark] .results-table th[data-v-aff11496]{background:var(--color-bg-tertiary);color:var(--color-text-primary);border-bottom-color:var(--color-border-primary)}[data-theme=dark] .results-table td[data-v-aff11496]{color:var(--color-text-primary);border-bottom-color:var(--color-border-secondary)}[data-theme=dark] .result-row[data-v-aff11496]:hover{background:var(--color-bg-tertiary)}[data-theme=dark] .charset-name[data-v-aff11496]{color:var(--color-text-primary)}[data-theme=dark] .count-value[data-v-aff11496]{background:var(--color-success-light);color:var(--color-success-dark)}[data-theme=dark] .count-value.medium-count[data-v-aff11496]{background:var(--color-warning-light);color:var(--color-warning-dark)}[data-theme=dark] .count-value.high-count[data-v-aff11496]{background:var(--color-error-light);color:var(--color-error-dark)}[data-theme=dark] .code-text[data-v-aff11496]{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border-secondary)}[data-theme=dark] .hoverable[data-v-aff11496]:hover{background:var(--color-bg-secondary);border-color:var(--color-primary);text-decoration-color:var(--color-primary)}[data-theme=dark] .code-separator[data-v-aff11496],[data-theme=dark] .ellipsis[data-v-aff11496]{color:var(--color-text-secondary)}[data-theme=dark] .expand-btn[data-v-aff11496]{border-color:var(--color-border-secondary);color:var(--color-accent)}[data-theme=dark] .expand-btn[data-v-aff11496]:hover{background:var(--color-accent-bg);border-color:var(--color-accent);color:var(--color-accent)}[data-theme=dark] .scheme-name[data-v-aff11496]{background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary)}[data-theme=dark] .scheme-name span[data-v-aff11496]{color:var(--color-text-secondary)}.comparison-card[data-v-4f0f336e]{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;overflow:hidden}.background-progress[data-v-4f0f336e]{margin-top:8px;padding:8px 12px;background:#f8fafc;border-radius:6px;border:1px solid #e2e8f0}.progress-info[data-v-4f0f336e]{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.progress-text[data-v-4f0f336e]{font-size:.75rem;color:#64748b}.progress-percentage[data-v-4f0f336e]{font-size:.75rem;color:#0f766e;font-weight:500}.progress-bar[data-v-4f0f336e]{height:3px;background:#e2e8f0;border-radius:2px;overflow:hidden}.progress-fill[data-v-4f0f336e]{height:100%;background:linear-gradient(90deg,#0f766e,#14b8a6);border-radius:2px;transition:width .3s ease}[data-theme=dark] .progress-fill[data-v-4f0f336e]{background:linear-gradient(90deg,#064e3b,#0d9488)}.collapse-button svg.rotated[data-v-4f0f336e]{transform:rotate(180deg)}.empty-state[data-v-4f0f336e]{text-align:center;padding:60px 20px;color:#6b7280}.empty-icon[data-v-4f0f336e]{font-size:3rem;margin-bottom:16px}.empty-state h4[data-v-4f0f336e]{margin:0 0 8px;font-size:1.25rem;color:#374151}.empty-state p[data-v-4f0f336e]{margin:0 0 24px;font-size:.875rem}.hidden-schemes-notice[data-v-4f0f336e]{display:flex;align-items:center;justify-content:center;padding:16px;margin:16px 0;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:8px;border:1px solid #f59e0b;gap:8px}[data-theme=dark] .hidden-schemes-notice[data-v-4f0f336e]{background:linear-gradient(135deg,#451a03,#78350f);border:1px solid #a16207}.notice-icon[data-v-4f0f336e]{font-size:1.2rem}.notice-text[data-v-4f0f336e]{font-size:.875rem;color:#92400e;font-weight:500}.primary-btn[data-v-4f0f336e]{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:500;cursor:pointer;transition:all .3s ease}[data-theme=dark] .primary-btn[data-v-4f0f336e]{background:linear-gradient(135deg,#047857,#065f46)}.primary-btn[data-v-4f0f336e]:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.comparison-table-container[data-v-4f0f336e]{overflow-x:auto;margin-bottom:20px;border-radius:8px;border:1px solid #e5e7eb}.comparison-table[data-v-4f0f336e]{width:100%;min-width:max-content;border-collapse:collapse;font-size:.8rem;table-layout:auto}.comparison-table th[data-v-4f0f336e],.comparison-table td[data-v-4f0f336e]{padding:6px 4px;text-align:center;border-right:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;line-height:1.2;white-space:nowrap;min-width:0;max-width:none}.comparison-table th[data-v-4f0f336e]:last-child,.comparison-table td[data-v-4f0f336e]:last-child{border-right:none}.comparison-table thead tr:last-child th[data-v-4f0f336e]{border-bottom:2px solid #d1d5db}.comparison-table tbody tr:last-child td[data-v-4f0f336e]{border-bottom:none}.scheme-name-header[data-v-4f0f336e]{background:var(--color-bg-tertiary);width:auto;min-width:60px;text-align:left!important;font-weight:600;color:var(--color-text-primary)}.char-count-header[data-v-4f0f336e]{background:var(--color-bg-tertiary);width:auto;min-width:80px;text-align:center!important;font-weight:600;color:var(--color-text-primary)}.char-count-header small[data-v-4f0f336e]{display:block;font-size:.7rem;color:var(--color-text-secondary);margin-top:2px}.char-count[data-v-4f0f336e]{text-align:center;padding:8px 12px;font-weight:500}.metric-header[data-v-4f0f336e]{background:var(--color-bg-tertiary);width:auto;min-width:40px;font-weight:600;color:var(--color-text-primary)}.sortable[data-v-4f0f336e]{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s ease}.sortable[data-v-4f0f336e]:hover{background:#f3f4f6!important}.header-content[data-v-4f0f336e]{display:flex;align-items:center;justify-content:space-between;gap:4px}.header-title[data-v-4f0f336e]{display:flex;align-items:center;justify-content:center;gap:4px;flex-wrap:wrap}.sort-arrow[data-v-4f0f336e]{font-size:.8rem;color:#6b7280;font-weight:700;min-width:12px;text-align:center}.metric-header-content[data-v-4f0f336e]{display:flex;flex-direction:column;align-items:center;gap:1px}.metric-header-content span[data-v-4f0f336e]{font-size:.7rem;line-height:1.1;text-align:center}.metric-header-content small[data-v-4f0f336e]{font-size:.6rem;opacity:.7;font-weight:400;color:var(--color-text-secondary)}.actions-header[data-v-4f0f336e]{background:var(--color-bg-tertiary);width:60px;min-width:60px;font-weight:600;color:var(--color-text-primary)}.scheme-row[data-v-4f0f336e]:hover{background:#f9fafb}.scheme-name[data-v-4f0f336e]{text-align:left!important}.scheme-info[data-v-4f0f336e]{display:flex;flex-direction:column;gap:2px}.scheme-title[data-v-4f0f336e]{font-weight:500;color:var(--color-text-primary);cursor:help}.scheme-source[data-v-4f0f336e]{font-size:.75rem;color:var(--color-text-secondary)}.scheme-source.warning[data-v-4f0f336e]{color:#d97706;font-weight:500}.metric-cell[data-v-4f0f336e]{font-family:var(--font-numeric);font-feature-settings:"tnum" 0}.actions-cell[data-v-4f0f336e]{text-align:center;white-space:nowrap}.calculating[data-v-4f0f336e]{display:flex;align-items:center;justify-content:center;gap:4px;color:#6b7280}.mini-spinner[data-v-4f0f336e]{width:12px;height:12px;border:2px solid #e5e7eb;border-top:2px solid #10b981;border-radius:50%;animation:spin-4f0f336e 1s linear infinite}@keyframes spin-4f0f336e{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.metric-value[data-v-4f0f336e]{font-weight:600;color:#059669}.remove-btn[data-v-4f0f336e]{background:none;border:none;padding:4px;cursor:pointer;border-radius:4px;transition:background .2s ease;font-size:.8rem}.remove-btn[data-v-4f0f336e]:hover{background:#fef2f2}.refresh-btn[data-v-4f0f336e]{background:none;border:none;padding:4px;cursor:pointer;border-radius:4px;transition:background .2s ease;font-size:.8rem;margin-right:4px}.refresh-btn[data-v-4f0f336e]:hover{background:#f0f9ff}.refresh-btn[data-v-4f0f336e]:disabled{opacity:.5;cursor:not-allowed}.refresh-btn[data-v-4f0f336e]:disabled:hover{background:none}.reupload-btn[data-v-4f0f336e]{background:none;border:none;padding:4px;cursor:pointer;border-radius:4px;transition:background .2s ease;font-size:.8rem;margin-right:4px;color:#d97706}.reupload-btn[data-v-4f0f336e]:hover{background:#fef3cd}.add-scheme-section[data-v-4f0f336e]{text-align:center;margin-top:20px;display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.add-scheme-btn[data-v-4f0f336e]{background:#f3f4f6;color:#374151;border:2px dashed #d1d5db;padding:12px 24px;border-radius:8px;cursor:pointer;font-weight:500;transition:all .3s ease}.add-scheme-btn[data-v-4f0f336e]:hover:not(:disabled){background:#e5e7eb;border-color:#9ca3af}.add-scheme-btn[data-v-4f0f336e]:disabled{opacity:.5;cursor:not-allowed}.clear-all-btn[data-v-4f0f336e]{background:#fef2f2;color:#dc2626;border:2px solid #fecaca;padding:12px 24px;border-radius:8px;cursor:pointer;font-weight:500;transition:all .3s ease}.clear-all-btn[data-v-4f0f336e]:hover{background:#fee2e2;border-color:#fca5a5}.add-form-overlay[data-v-4f0f336e]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:999999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn-4f0f336e .2s ease-out}@keyframes fadeIn-4f0f336e{0%{opacity:0}to{opacity:1}}.add-form[data-v-4f0f336e]{background:#fff;border-radius:16px;width:90%;max-width:600px;max-height:85vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040,0 10px 10px -5px #0000000a,0 0 0 1px #0000000d;transform:scale(1);animation:slideIn-4f0f336e .3s ease-out;border:1px solid rgba(255,255,255,.2)}@keyframes slideIn-4f0f336e{0%{opacity:0;transform:scale(.95) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.form-header[data-v-4f0f336e]{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid #e5e7eb}.form-header h4[data-v-4f0f336e]{margin:0;font-size:1.25rem;color:#374151}.close-btn[data-v-4f0f336e]{background:none;border:none;font-size:1.25rem;cursor:pointer;color:#6b7280;padding:4px;border-radius:4px;transition:color .2s ease}.close-btn[data-v-4f0f336e]:hover{color:#374151}.form-content[data-v-4f0f336e]{padding:25px}.form-section[data-v-4f0f336e]{margin-bottom:18px}.form-section h5[data-v-4f0f336e]{margin:0 0 6px;font-size:.95rem;color:#374151;font-weight:600}.section-desc[data-v-4f0f336e]{margin:0 0 8px;font-size:.82rem;color:#6b7280}.builtin-options[data-v-4f0f336e]{display:flex;flex-direction:column;gap:8px;width:100%}.builtin-options .scheme-select[data-v-4f0f336e]{flex:1}.multi-select-container[data-v-4f0f336e]{display:flex;flex-direction:column;gap:8px}.select-all-controls[data-v-4f0f336e]{display:flex;gap:6px;align-items:center;padding:6px 8px;background:#f8fafc;border-radius:4px;border:1px solid #e5e7eb}.select-all-btn[data-v-4f0f336e],.clear-selection-btn[data-v-4f0f336e]{padding:3px 6px;border:1px solid #d1d5db;background:#fff;border-radius:3px;font-size:.8rem;cursor:pointer;transition:all .2s ease}.select-all-btn[data-v-4f0f336e]:hover,.clear-selection-btn[data-v-4f0f336e]:hover{background:#f3f4f6;border-color:#9ca3af}.select-all-btn[data-v-4f0f336e]:disabled,.clear-selection-btn[data-v-4f0f336e]:disabled{opacity:.5;cursor:not-allowed}.selection-count[data-v-4f0f336e]{margin-left:auto;font-size:.85rem;color:#6b7280;font-weight:500}.scheme-checkboxes[data-v-4f0f336e]{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:4px;max-height:200px;overflow-y:auto;padding:6px;border:1px solid #e5e7eb;border-radius:6px;background:#fff}.scheme-checkbox[data-v-4f0f336e]{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:3px;cursor:pointer;transition:background-color .2s ease;font-size:.85rem;line-height:1.2}.scheme-checkbox[data-v-4f0f336e]:hover{background:#f3f4f6}.checkbox-input[data-v-4f0f336e]{width:14px;height:14px;border-radius:2px;border:2px solid #d1d5db;background:#fff;cursor:pointer;transition:all .2s ease}.checkbox-input[data-v-4f0f336e]:checked{background:#3b82f6;border-color:#3b82f6}.checkbox-label[data-v-4f0f336e]{flex:1;color:#374151;font-size:.85rem;line-height:1.2}.batch-add-controls[data-v-4f0f336e]{display:flex;justify-content:center;padding-top:8px}.add-selected-btn[data-v-4f0f336e]{padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease;font-size:.9rem}.add-selected-btn[data-v-4f0f336e]:hover:not(:disabled){background:#2563eb}.add-selected-btn[data-v-4f0f336e]:disabled{background:#9ca3af;cursor:not-allowed}.upload-area[data-v-4f0f336e]{display:flex;flex-direction:column;gap:12px;width:100%}.upload-buttons[data-v-4f0f336e]{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}.upload-tips[data-v-4f0f336e]{padding:8px 12px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;color:#0369a1;font-size:.85rem;line-height:1.4}.upload-tips small[data-v-4f0f336e]{display:block;font-size:inherit}.prefix-toggle-section[data-v-4f0f336e]{margin-bottom:15px;padding:12px;background:#f8fafc;border-radius:8px;border:1px solid #e5e7eb}.prefix-toggle[data-v-4f0f336e]{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.9rem}.prefix-checkbox[data-v-4f0f336e]{width:16px;height:16px;border-radius:3px;border:2px solid #d1d5db;background:#fff;cursor:pointer;transition:all .2s ease}.prefix-checkbox[data-v-4f0f336e]:checked{background:#3b82f6;border-color:#3b82f6}.prefix-label[data-v-4f0f336e]{font-weight:500;color:#374151}.prefix-desc[data-v-4f0f336e]{color:#6b7280;font-size:.8rem}.scheme-select[data-v-4f0f336e],.file-input[data-v-4f0f336e]{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem}.add-btn[data-v-4f0f336e],.upload-btn[data-v-4f0f336e],.add-all-btn[data-v-4f0f336e]{background:#10b981;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:500;white-space:nowrap;transition:background .2s ease}.add-all-btn[data-v-4f0f336e]{background:#3b82f6}.add-btn[data-v-4f0f336e]:hover:not(:disabled),.upload-btn[data-v-4f0f336e]:hover:not(:disabled){background:#059669}.add-all-btn[data-v-4f0f336e]:hover:not(:disabled){background:#2563eb}.add-btn[data-v-4f0f336e]:disabled,.upload-btn[data-v-4f0f336e]:disabled,.add-all-btn[data-v-4f0f336e]:disabled{background:#9ca3af;cursor:not-allowed}.form-divider[data-v-4f0f336e]{text-align:center;margin:24px 0;position:relative;color:#9ca3af;font-size:.875rem;font-weight:500}.form-divider[data-v-4f0f336e]:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#e5e7eb;z-index:0}.form-divider span[data-v-4f0f336e]{background:#fff;padding:0 12px;position:relative;z-index:1}@media (max-width: 768px){.comparison-table[data-v-4f0f336e]{font-size:.7rem}.comparison-table th[data-v-4f0f336e],.comparison-table td[data-v-4f0f336e]{padding:4px 3px;line-height:1.1}.scheme-name-header[data-v-4f0f336e]{width:90px;min-width:90px}.metric-header[data-v-4f0f336e]{width:65px;min-width:65px}.metric-header-content span[data-v-4f0f336e]{font-size:.6rem}.metric-header-content small[data-v-4f0f336e]{font-size:.5rem}.sort-arrow[data-v-4f0f336e]{font-size:.7rem}.header-title[data-v-4f0f336e]{gap:2px}.actions-header[data-v-4f0f336e]{width:50px;min-width:50px}.add-form[data-v-4f0f336e]{width:95%;margin:20px}.builtin-options[data-v-4f0f336e],.upload-area[data-v-4f0f336e]{flex-direction:column;align-items:stretch}}.custom-tooltip[data-v-4f0f336e]{position:fixed;background:#1f2937;color:#fff;padding:6px 10px;border-radius:6px;font-size:.75rem;font-weight:500;white-space:nowrap;z-index:9999;pointer-events:none;box-shadow:0 4px 12px #00000026;border:1px solid #374151}.custom-tooltip[data-v-4f0f336e]:before{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:4px solid transparent;border-top-color:#1f2937}[data-theme=dark] .comparison-table-container[data-v-4f0f336e]{background:var(--color-bg-primary);border-color:var(--color-border-primary)}[data-theme=dark] .comparison-table[data-v-4f0f336e]{background:var(--color-bg-primary)}[data-theme=dark] .comparison-table th[data-v-4f0f336e],[data-theme=dark] .comparison-table td[data-v-4f0f336e]{color:var(--color-text-primary);border-color:var(--color-border-secondary)}[data-theme=dark] .comparison-table thead tr:last-child th[data-v-4f0f336e]{border-bottom-color:var(--color-border-primary)}[data-theme=dark] .actions-header[data-v-4f0f336e]{background:var(--color-bg-tertiary);color:var(--color-text-primary)}[data-theme=dark] .scheme-name-cell[data-v-4f0f336e],[data-theme=dark] .char-count-cell[data-v-4f0f336e],[data-theme=dark] .metric-cell[data-v-4f0f336e]{color:var(--color-text-primary)}[data-theme=dark] .empty-state[data-v-4f0f336e]{color:var(--color-text-secondary)}[data-theme=dark] .empty-state h4[data-v-4f0f336e]{color:var(--color-text-primary)}[data-theme=dark] .empty-state p[data-v-4f0f336e]{color:var(--color-text-secondary)}.header-content[data-v-ae7b2510]{display:flex;justify-content:space-between;align-items:flex-start;width:100%}.header-text[data-v-ae7b2510]{flex:1}.header-buttons[data-v-ae7b2510]{display:flex;align-items:center;gap:var(--spacing-sm);margin-left:var(--spacing-lg)}.export-btn[data-v-ae7b2510]{background:#fff3;border:none;border-radius:8px;padding:8px;color:#fff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.export-btn[data-v-ae7b2510]:hover:not(:disabled){background:#ffffff4d;transform:scale(1.05)}.export-btn[data-v-ae7b2510]:disabled{opacity:.5;cursor:not-allowed}.collapse-button[data-v-ae7b2510]{background:#fff3;border:none;border-radius:8px;padding:8px;color:#fff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.collapse-button[data-v-ae7b2510]:hover{background:#ffffff4d;transform:scale(1.05)}.collapse-button svg[data-v-ae7b2510]{transition:transform .3s ease}.collapse-button svg.rotated[data-v-ae7b2510]{transform:rotate(180deg)}.card-description a[data-v-ae7b2510]{color:#ffffffe6;text-decoration:underline}.card-description a[data-v-ae7b2510]:hover{color:#fff}.loading[data-v-ae7b2510]{display:flex;flex-direction:column;align-items:center;padding:40px 20px;color:#666}.spinner[data-v-ae7b2510]{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #f59e0b;border-radius:50%;animation:spin-ae7b2510 1s linear infinite;margin-bottom:15px}@keyframes spin-ae7b2510{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-state[data-v-ae7b2510]{text-align:center;padding:40px 20px;color:#666}.error-icon[data-v-ae7b2510]{font-size:3rem;margin-bottom:1rem}.analysis-results[data-v-ae7b2510]{width:100%}.metrics-table[data-v-ae7b2510]{width:100%;border-collapse:collapse;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a;margin-bottom:25px}.metrics-table th[data-v-ae7b2510],.metrics-table td[data-v-ae7b2510]{padding:8px 12px;text-align:left;border-bottom:1px solid #e5e7eb;font-size:.8rem;line-height:1.3}.metrics-table th[data-v-ae7b2510]{background:#f8fafc;font-weight:600;color:#374151;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.metrics-table tbody tr[data-v-ae7b2510]:hover{background:#f9fafb}.metrics-table tbody tr:last-child td[data-v-ae7b2510]{border-bottom:none}.metric-value[data-v-ae7b2510]{font-weight:600;color:#059669;font-family:var(--font-numeric);font-feature-settings:"tnum" 0}.metric-value.first-short-equiv[data-v-ae7b2510]{color:#7c3aed}.metric-value.second-short-equiv[data-v-ae7b2510]{color:#ea580c}.metric-value.short-equiv[data-v-ae7b2510]{color:#dc2626}.metric-desc[data-v-ae7b2510]{color:#6b7280;font-size:.75rem}.metric-desc a[data-v-ae7b2510]{color:#3b82f6;text-decoration:none}.metric-desc a[data-v-ae7b2510]:hover{text-decoration:underline}@media (max-width: 768px){.metrics-table[data-v-ae7b2510]{font-size:.75rem}.metrics-table th[data-v-ae7b2510],.metrics-table td[data-v-ae7b2510]{padding:6px 8px;font-size:.7rem}}.scheme-name[data-v-ae7b2510]{margin-top:16px;padding:8px 12px;background:#f8fafc;border-radius:6px;text-align:center}.scheme-name span[data-v-ae7b2510]{font-size:.85rem;color:#4a5568;font-weight:500}[data-theme=dark] .loading[data-v-ae7b2510]{color:var(--color-text-secondary)}[data-theme=dark] .spinner[data-v-ae7b2510]{border-color:var(--color-bg-tertiary);border-top-color:var(--color-warning)}[data-theme=dark] .error-state[data-v-ae7b2510]{color:var(--color-text-secondary)}[data-theme=dark] .metrics-table[data-v-ae7b2510]{background:var(--color-bg-primary);border-color:var(--color-border-primary)}[data-theme=dark] .metrics-table th[data-v-ae7b2510]{background:var(--color-bg-tertiary);color:var(--color-text-primary);border-bottom-color:var(--color-border-primary)}[data-theme=dark] .metrics-table td[data-v-ae7b2510]{color:var(--color-text-primary);border-bottom-color:var(--color-border-secondary)}[data-theme=dark] .metrics-table tbody tr[data-v-ae7b2510]:hover{background:var(--color-bg-tertiary)}[data-theme=dark] .metric-value[data-v-ae7b2510]{color:var(--color-success)}[data-theme=dark] .scheme-name[data-v-ae7b2510]{background:var(--color-bg-tertiary);border:1px solid var(--color-border-primary)}[data-theme=dark] .scheme-name span[data-v-ae7b2510]{color:var(--color-text-secondary)}.short-code-efficiency-card[data-v-bc6f04cb]{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;overflow:hidden}.header-content[data-v-bc6f04cb]{display:flex;justify-content:space-between;align-items:flex-start}.header-text[data-v-bc6f04cb]{flex:1}.header-buttons[data-v-bc6f04cb]{display:flex;align-items:center;gap:var(--spacing-sm);margin-left:var(--spacing-lg)}.export-btn[data-v-bc6f04cb]{background:#fff3;border:none;border-radius:8px;padding:8px;color:#fff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.export-btn[data-v-bc6f04cb]:hover:not(:disabled){background:#ffffff4d;transform:scale(1.05)}.export-btn[data-v-bc6f04cb]:disabled{opacity:.5;cursor:not-allowed}.card-description[data-v-bc6f04cb]{margin:0;opacity:.9;line-height:1.5;font-size:.95rem}.collapse-button[data-v-bc6f04cb]{background:#fff3;border:none;border-radius:8px;padding:8px;color:#fff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.collapse-button[data-v-bc6f04cb]:hover{background:#ffffff4d;transform:scale(1.05)}.collapse-button svg[data-v-bc6f04cb]{transition:transform .3s ease}.collapse-button svg.rotated[data-v-bc6f04cb]{transform:rotate(180deg)}.card-content[data-v-bc6f04cb]{padding:24px}.loading[data-v-bc6f04cb]{display:flex;align-items:center;gap:12px;padding:20px;color:#6c757d;justify-content:center}.spinner[data-v-bc6f04cb]{width:20px;height:20px;border:2px solid #e9ecef;border-top:2px solid #667eea;border-radius:50%;animation:spin-bc6f04cb 1s linear infinite}@keyframes spin-bc6f04cb{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error[data-v-bc6f04cb]{padding:16px;background:#f8d7da;color:#721c24;border-radius:8px;border:1px solid #f5c6cb;text-align:center}.table-container[data-v-bc6f04cb]{overflow-x:auto;border-radius:8px;margin-bottom:24px}.metrics-table[data-v-bc6f04cb]{width:100%;border-collapse:collapse;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.metrics-table th[data-v-bc6f04cb],.metrics-table td[data-v-bc6f04cb]{padding:8px 12px;text-align:left;border-bottom:1px solid #e5e7eb;font-size:.8rem;line-height:1.3}.metrics-table th[data-v-bc6f04cb]{background:#f8fafc;font-weight:600;color:#374151;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;text-align:left}.metrics-table tbody tr[data-v-bc6f04cb]:hover{background:#f9fafb}.metrics-table tbody tr:last-child td[data-v-bc6f04cb]{border-bottom:none}.n-value[data-v-bc6f04cb]{font-weight:600;background:#f8fafc;color:#374151;text-align:center}.metric-value[data-v-bc6f04cb]{font-weight:600;color:#059669;font-family:var(--font-numeric);font-feature-settings:"tnum" 0;text-align:center;transition:background-color .2s ease}.hoverable[data-v-bc6f04cb]{cursor:help;transition:background-color .2s ease}.clickable[data-v-bc6f04cb]{cursor:pointer}.hoverable[data-v-bc6f04cb]:hover{background:#e5e7eb;color:#1f2937}.very-high-value[data-v-bc6f04cb]{background:#fee2e2!important;color:#991b1b;font-weight:700}.high-value[data-v-bc6f04cb]{background:#fef3c7!important;color:#92400e;font-weight:700}.medium-value[data-v-bc6f04cb]{background:#dcfce7!important;color:#166534;font-weight:700}.low-value[data-v-bc6f04cb]{background:#dbeafe!important;color:#1e40af;font-weight:700}.very-low-value[data-v-bc6f04cb]{background:#f3e8ff!important;color:#7c3aed;font-weight:700}[data-theme=dark] .very-high-value[data-v-bc6f04cb]{background:#3f1d1d!important;color:#fca5a5;font-weight:700}[data-theme=dark] .high-value[data-v-bc6f04cb]{background:#3d2817!important;color:#fbbf24;font-weight:700}[data-theme=dark] .medium-value[data-v-bc6f04cb]{background:#1a2e1a!important;color:#86efac;font-weight:700}[data-theme=dark] .low-value[data-v-bc6f04cb]{background:#1e2a3a!important;color:#93c5fd;font-weight:700}[data-theme=dark] .very-low-value[data-v-bc6f04cb]{background:#2d1b3d!important;color:#c4b5fd;font-weight:700}.very-high-value[data-v-bc6f04cb]:hover{background:#fecaca!important}.high-value[data-v-bc6f04cb]:hover{background:#fde68a!important}.medium-value[data-v-bc6f04cb]:hover{background:#bbf7d0!important}.low-value[data-v-bc6f04cb]:hover{background:#bfdbfe!important}.very-low-value[data-v-bc6f04cb]:hover{background:#e9d5ff!important}[data-theme=dark] .very-high-value[data-v-bc6f04cb]:hover{background:#4a2323!important}[data-theme=dark] .high-value[data-v-bc6f04cb]:hover{background:#4a311d!important}[data-theme=dark] .medium-value[data-v-bc6f04cb]:hover{background:#213621!important}[data-theme=dark] .low-value[data-v-bc6f04cb]:hover{background:#253242!important}[data-theme=dark] .very-low-value[data-v-bc6f04cb]:hover{background:#362147!important}.custom-tooltip[data-v-bc6f04cb]{position:fixed;background:#1f2937;color:#fff;border-radius:8px;padding:12px;font-size:.875rem;box-shadow:0 10px 25px #0003;max-width:400px;z-index:9999;pointer-events:none;min-width:100px;min-height:50px}.tooltip-content[data-v-bc6f04cb]{display:flex;flex-direction:column;gap:8px}.tooltip-header[data-v-bc6f04cb]{font-weight:500;color:#d1d5db;font-size:.75rem}.tooltip-chars[data-v-bc6f04cb]{font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:1.2rem;line-height:1.5;word-break:break-all}.tooltip-chars-grid[data-v-bc6f04cb]{font-family:PingFang SC,Microsoft YaHei,sans-serif}.char-table[data-v-bc6f04cb]{width:100%;border-collapse:separate;border-spacing:3px;margin:6px 0;background-color:#4b556326;border-radius:8px;padding:4px}.char-row td[data-v-bc6f04cb]{border:1px solid rgba(156,163,175,.4);text-align:center;vertical-align:middle;padding:8px 6px;min-width:38px;border-radius:4px;background-color:#4f46e54d;border-color:#4f46e580}.char-cell[data-v-bc6f04cb]{height:55px;position:relative;vertical-align:middle;text-align:center;display:table-cell}.char-ruby[data-v-bc6f04cb]{font-size:1.6rem;font-weight:600;color:#fff;line-height:1.4;text-align:center;display:block;margin:0 auto}.code-rt[data-v-bc6f04cb]{font-size:.75rem;color:#d1d5db;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-weight:500;line-height:1;text-align:center;display:block}.char-cell.empty[data-v-bc6f04cb]{background-color:transparent;border-color:#4b556333;border-style:dashed}.char-table:hover .char-cell[data-v-bc6f04cb]:not(.empty){background-color:#4f46e573;border-color:#4f46e5b3;transform:scale(1.02);transition:all .2s ease}.char-table:hover .char-ruby[data-v-bc6f04cb]{color:#f8fafc}.char-table:hover .code-rt[data-v-bc6f04cb]{color:#e5e7eb}.omitted-notice[data-v-bc6f04cb]{margin-top:12px;padding:8px 12px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;color:#856404}.omitted-notice p[data-v-bc6f04cb]{margin:0;font-size:.85rem}.no-data[data-v-bc6f04cb]{text-align:center;padding:60px 20px;color:#6c757d}.empty-icon[data-v-bc6f04cb]{font-size:3rem;margin-bottom:16px}.no-data h4[data-v-bc6f04cb]{margin:0 0 8px;color:#495057;font-size:1.1rem}.no-data p[data-v-bc6f04cb]{margin:0;font-size:.9rem}@media (max-width: 768px){.metrics-table[data-v-bc6f04cb]{font-size:.75rem}.metrics-table th[data-v-bc6f04cb],.metrics-table td[data-v-bc6f04cb]{padding:6px 8px}.custom-tooltip[data-v-bc6f04cb]{max-width:250px;font-size:.75rem}.tooltip-chars[data-v-bc6f04cb]{font-size:1rem}}@media (max-width: 480px){.card-content[data-v-bc6f04cb]{padding:16px}.metrics-table th[data-v-bc6f04cb],.metrics-table td[data-v-bc6f04cb]{padding:4px 6px}.custom-tooltip[data-v-bc6f04cb]{max-width:200px;padding:8px;font-size:.7rem}.tooltip-chars[data-v-bc6f04cb]{font-size:.9rem}}.scheme-name[data-v-bc6f04cb]{margin-top:16px;padding:8px 12px;background:#f8fafc;border-radius:6px;text-align:center}.scheme-name span[data-v-bc6f04cb]{font-size:.85rem;color:#4a5568;font-weight:500}.custom-tooltip .char-cell,.custom-tooltip .char-row td{text-align:center!important;vertical-align:middle!important}.custom-tooltip .char-ruby{font-size:1rem!important;font-weight:600;color:#fff;line-height:1.4;text-align:center!important;display:block!important;margin:0 auto!important}.custom-tooltip .code-rt{font-size:.5rem!important;color:#d1d5db;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-weight:500;line-height:1;text-align:center!important;display:block!important}@media (min-width: 769px){.custom-tooltip .char-ruby{font-size:1.2rem!important;text-align:center!important;display:block!important;margin:0 auto!important}.custom-tooltip .code-rt{font-size:.8rem!important;text-align:center!important;display:block!important}.custom-tooltip .char-cell{height:10px!important;min-width:10px!important;text-align:center!important;vertical-align:middle!important}.custom-tooltip .char-row td{padding:2px!important;min-width:10px!important;text-align:center!important;vertical-align:middle!important}}[data-theme=dark] .table-container,[data-theme=dark] .metrics-table{background:var(--color-bg-primary);border-color:var(--color-border-primary)}[data-theme=dark] .metrics-table th{background:var(--color-bg-tertiary);color:var(--color-text-primary);border-bottom-color:var(--color-border-primary)}[data-theme=dark] .metrics-table td{color:var(--color-text-primary);border-bottom-color:var(--color-border-secondary)}[data-theme=dark] .metrics-table tbody tr:hover{background:var(--color-bg-tertiary)}[data-theme=dark] .n-value{background:var(--color-bg-tertiary);color:var(--color-text-primary)}[data-theme=dark] .metric-value{color:var(--color-success)}[data-theme=dark] .hoverable:hover{background:var(--color-bg-tertiary);color:var(--color-text-primary)}[data-theme=dark] .very-high-value{background:var(--color-error-light)!important;color:var(--color-error-dark)}[data-theme=dark] .high-value{background:var(--color-warning-light)!important;color:var(--color-warning-dark)}[data-theme=dark] .medium-value{background:var(--color-success-light)!important;color:var(--color-success-dark)}[data-theme=dark] .low-value{background:var(--color-bg-tertiary)!important;color:var(--color-text-primary)}[data-theme=dark] .very-low-value{background:var(--color-bg-secondary)!important;color:var(--color-text-secondary)}[data-theme=dark] .omitted-notice{background:var(--color-warning-light);border-color:var(--color-warning);color:var(--color-warning-dark)}#app[data-v-7d118ffa]{min-height:100vh;background-color:var(--color-bg-secondary);transition:background-color var(--transition-base)}.header[data-v-7d118ffa]{background-color:var(--color-bg-primary);border-bottom:1px solid var(--color-border-primary);padding:var(--spacing-lg) 0;position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-content[data-v-7d118ffa]{display:flex;justify-content:space-between;align-items:center;flex-wrap:nowrap!important;gap:var(--spacing-sm);width:100%;min-height:0;overflow:hidden}.logo[data-v-7d118ffa]{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.header-actions[data-v-7d118ffa]{flex:0 0 auto;white-space:nowrap;display:flex;align-items:center}.logo h1[data-v-7d118ffa]{font-size:1.75rem;font-weight:700;color:var(--color-primary);margin:0}.logo-link[data-v-7d118ffa]{display:flex;align-items:center;gap:var(--spacing-sm);text-decoration:none;color:inherit;transition:opacity .2s ease}.logo-link[data-v-7d118ffa]:hover{opacity:.8}.logo-image[data-v-7d118ffa]{height:1.75rem;width:auto;object-fit:contain}.header-actions[data-v-7d118ffa]{display:flex;gap:var(--spacing-md);align-items:center}.action-button[data-v-7d118ffa]{background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:8px;padding:8px;color:var(--color-primary);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.action-button[data-v-7d118ffa]:hover{background:#3b82f633;border-color:#3b82f64d;transform:scale(1.05)}.download-all-button[data-v-7d118ffa]{background:linear-gradient(135deg,#10b981,#059669)!important;border:1px solid rgba(16,185,129,.3)!important;color:#fff!important;font-weight:500;gap:6px;min-width:100px;padding:8px 12px!important}.download-all-button[data-v-7d118ffa]:hover{background:linear-gradient(135deg,#059669,#047857)!important;border-color:#10b98180!important;transform:scale(1.05);box-shadow:0 4px 12px #10b9814d}.header .export-btn[data-v-7d118ffa]{background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:8px;padding:8px;color:var(--color-primary);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.header .export-btn[data-v-7d118ffa]:hover:not(:disabled){background:#3b82f633;border-color:#3b82f64d;transform:scale(1.05)}.header .export-btn[data-v-7d118ffa]:disabled{opacity:.5;cursor:not-allowed}.floating-navigation[data-v-7d118ffa]{position:fixed;top:80px;right:20px;z-index:1000;transform-origin:top right}.nav-dropdown[data-v-7d118ffa]{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000001f,0 2px 16px #00000014;border:1px solid rgba(0,0,0,.05);overflow:hidden;min-width:280px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2}.nav-header[data-v-7d118ffa]{padding:var(--spacing-md) var(--spacing-lg);background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:.9rem;font-weight:600;text-align:center}.nav-menu[data-v-7d118ffa]{padding:var(--spacing-sm) 0;max-height:400px;overflow-y:auto}.nav-item[data-v-7d118ffa]{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-lg);color:var(--color-text-primary);text-decoration:none;transition:all .2s ease;cursor:pointer}.nav-item[data-v-7d118ffa]:hover{background:#3b82f60f;color:var(--color-primary);padding-left:calc(var(--spacing-lg) + 4px)}.nav-icon[data-v-7d118ffa]{font-size:1.1rem;margin-right:var(--spacing-md);min-width:20px;text-align:center}.nav-title[data-v-7d118ffa]{font-size:.9rem;font-weight:500}.nav-overlay[data-v-7d118ffa]{position:fixed;top:0;left:0;right:0;bottom:0;background:#0000001a;z-index:999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.dropdown-enter-active[data-v-7d118ffa],.dropdown-leave-active[data-v-7d118ffa]{transition:all .3s cubic-bezier(.4,0,.2,1)}.dropdown-enter-from[data-v-7d118ffa],.dropdown-leave-to[data-v-7d118ffa]{opacity:0;transform:translateY(-10px) scale(.95)}.fade-enter-active[data-v-7d118ffa],.fade-leave-active[data-v-7d118ffa]{transition:opacity .3s ease}.fade-enter-from[data-v-7d118ffa],.fade-leave-to[data-v-7d118ffa]{opacity:0}.main[data-v-7d118ffa]{padding:var(--spacing-2xl) 0;min-height:calc(100vh - 200px)}.cards-container[data-v-7d118ffa]{display:flex;flex-direction:column;gap:var(--spacing-xl);width:100%}.footer[data-v-7d118ffa]{background-color:var(--color-bg-primary);border-top:1px solid var(--color-border-primary);padding:var(--spacing-xl) 0;margin-top:var(--spacing-2xl)}.footer-content[data-v-7d118ffa]{text-align:center;color:var(--color-text-secondary)}.footer-links[data-v-7d118ffa]{margin-top:var(--spacing-sm)}.footer-links a[data-v-7d118ffa]{color:var(--color-text-secondary);text-decoration:none;transition:color .2s ease-in-out}.footer-links a[data-v-7d118ffa]:hover{color:var(--color-primary)}.footer-links span[data-v-7d118ffa]{margin:0 var(--spacing-sm)}@keyframes slideIn-7d118ffa{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.header[data-v-7d118ffa]{padding:var(--spacing-md) 0}.header-content[data-v-7d118ffa]{gap:var(--spacing-xs)}.logo h1[data-v-7d118ffa]{font-size:1.25rem}.logo-image[data-v-7d118ffa]{height:1.25rem}.logo-link[data-v-7d118ffa]{gap:calc(var(--spacing-xs) / 2)}.header-actions[data-v-7d118ffa]{gap:var(--spacing-xs)}.action-button[data-v-7d118ffa]{padding:6px}.directory-header[data-v-7d118ffa]{padding:var(--spacing-md) var(--spacing-lg)}.directory-list[data-v-7d118ffa]{padding:var(--spacing-md)}.floating-navigation[data-v-7d118ffa]{right:10px;left:10px;top:70px}.nav-dropdown[data-v-7d118ffa]{min-width:auto;width:100%}.nav-item[data-v-7d118ffa]{padding:var(--spacing-sm) var(--spacing-md)}.nav-title[data-v-7d118ffa]{font-size:.85rem}.main[data-v-7d118ffa]{padding:var(--spacing-lg) 0}.container[data-v-7d118ffa]{max-width:100%;padding:0 var(--spacing-md)}.cards-container[data-v-7d118ffa]{gap:var(--spacing-lg)}.logo h1[data-v-7d118ffa]{font-size:1.5rem}.nav[data-v-7d118ffa]{justify-content:center}}.duplicate-analysis-card,.maximum-candidates-card,.speed-equiv-card,.comparison-card,.code-table-uploader,.keyboard-heatmap,.code-table-viewer{box-shadow:0 4px 12px #0000001a,0 2px 8px #0000000f;transition:all .3s ease;width:100%;overflow:hidden;border-radius:12px}.duplicate-analysis-card:hover,.maximum-candidates-card:hover,.speed-equiv-card:hover,.comparison-card:hover,.code-table-uploader:hover,.keyboard-heatmap:hover,.code-table-viewer:hover{box-shadow:0 8px 25px #0000001f,0 4px 12px #00000014;transform:translateY(-2px)}.card-header{padding:var(--spacing-lg) var(--spacing-xl);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;position:relative;margin:0;border-top-left-radius:12px;border-top-right-radius:12px}[data-theme=dark] .card-header{background:linear-gradient(135deg,#3b4498,#4c3763)}.card-header:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#ffffff1a;opacity:0;transition:opacity .3s ease}.duplicate-analysis-card:hover .card-header:before,.maximum-candidates-card:hover .card-header:before,.speed-equiv-card:hover .card-header:before,.comparison-card:hover .card-header:before,.code-table-uploader:hover .card-header:before,.keyboard-heatmap:hover .card-header:before,.code-table-viewer:hover .card-header:before{opacity:1}.card-title{font-size:1.25rem;font-weight:700;margin:0;margin-bottom:var(--spacing-xs);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.card-description{font-size:.9rem;line-height:1.5;margin:0;color:#ffffffe6;text-shadow:0 1px 1px rgba(0,0,0,.1)}.card-content{padding:var(--spacing-xl);background-color:var(--color-bg-secondary);border-bottom-left-radius:12px;border-bottom-right-radius:12px}.upload-card .card-header{background:linear-gradient(135deg,#667eea,#764ba2)}.duplicate-analysis-card .card-header{background:linear-gradient(135deg,#ea476d,#b13846)}.maximum-candidates-card .card-header{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.speed-equiv-card .card-header{background:linear-gradient(135deg,#f59e0b,#d97706)}.comparison-card .card-header{background:linear-gradient(135deg,#10b981,#059669)}.keyboard-heatmap .card-header{background:linear-gradient(135deg,#06b6d4,#0891b2)}.code-table-viewer .card-header{background:linear-gradient(135deg,#f97316,#ea580c)}[data-theme=dark] .upload-card .card-header{background:linear-gradient(135deg,#3b4498,#4c3763)}[data-theme=dark] .duplicate-analysis-card .card-header{background:linear-gradient(135deg,#8b1538,#6b1728)}[data-theme=dark] .maximum-candidates-card .card-header{background:linear-gradient(135deg,#5b21b6,#4c1d95)}[data-theme=dark] .speed-equiv-card .card-header{background:linear-gradient(135deg,#a16207,#92400e)}[data-theme=dark] .comparison-card .card-header{background:linear-gradient(135deg,#047857,#065f46)}[data-theme=dark] .keyboard-heatmap .card-header{background:linear-gradient(135deg,#0e7490,#155e75)}[data-theme=dark] .code-table-viewer .card-header{background:linear-gradient(135deg,#c2410c,#9a3412)}[data-theme=dark] .header .export-btn{color:#fff;background:#ffffff1a;border-color:#fff3}[data-theme=dark] .header .export-btn:hover:not(:disabled){background:#fff3;border-color:#ffffff4d}@media (max-width: 768px){.card-header,.card-content{padding:var(--spacing-lg)}.card-title{font-size:1.2rem}}@media (max-width: 480px){.header{padding:var(--spacing-sm) 0}.header-content{gap:2px!important;width:100%;overflow:hidden}.logo{flex:1 1 50%!important;max-width:50%;min-width:0}.logo h1{font-size:.8rem!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logo-image{height:.8rem;flex-shrink:0}.logo-link{gap:2px;min-width:0;overflow:hidden}.header-actions{gap:2px!important;flex:0 0 auto!important;white-space:nowrap!important}.action-button{padding:2px!important;min-width:28px;width:28px;height:28px;flex-shrink:0!important}.action-button svg{width:16px!important;height:16px!important}.header .export-btn{padding:2px!important;min-width:28px!important;width:28px!important;height:28px!important;flex-shrink:0!important}.header .export-btn svg{width:16px!important;height:16px!important}.card-header,.card-content{padding:var(--spacing-md)}.card-title{font-size:1.1rem}}@media (max-width: 360px){.header{padding:2px 0!important}.header-content{gap:1px!important;width:100%}.logo{flex:1 1 40%!important;max-width:40%;min-width:0}.logo h1{font-size:.7rem!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logo-image{height:.7rem;flex-shrink:0}.logo-link{gap:1px;min-width:0;overflow:hidden}.header-actions{gap:1px!important;flex:0 0 auto!important;white-space:nowrap!important}.action-button{padding:1px!important;min-width:24px!important;width:24px!important;height:24px!important;flex-shrink:0!important;font-size:0}.action-button svg{width:14px!important;height:14px!important}.header .export-btn{padding:1px!important;min-width:24px!important;width:24px!important;height:24px!important;flex-shrink:0!important;font-size:0}.header .export-btn svg{width:14px!important;height:14px!important}}.tabs-container{margin-bottom:var(--spacing-lg)}.tab-list{display:flex;border-bottom:2px solid var(--color-border-secondary);margin-bottom:var(--spacing-md)}.tab-button{background:none;border:none;padding:12px 24px;font-size:1rem;font-weight:500;color:var(--color-text-secondary);cursor:pointer;border-bottom:3px solid transparent;transition:all .2s ease;position:relative}.tab-button:hover{color:var(--color-text-primary);background-color:var(--color-bg-secondary)}.tab-button.active{color:var(--color-accent);border-bottom-color:var(--color-accent);background-color:var(--color-accent-bg)}@media (max-width: 480px){.tabs-container,.tab-list,.keyboard-heatmap .tabs-container,.keyboard-heatmap .tab-list{margin-bottom:2px}}.keyboard-heatmap .tabs-container{margin-bottom:var(--spacing-xs)}.keyboard-heatmap .tab-list{margin-bottom:2px}[data-theme=dark] .tab-button{color:var(--color-text-secondary)}[data-theme=dark] .tab-button:hover{color:var(--color-text-primary);background-color:var(--color-bg-secondary)}[data-theme=dark] .tab-button.active{color:var(--color-accent);border-bottom-color:var(--color-accent);background-color:var(--color-accent-bg)}[data-theme=dark] .tab-list{border-bottom-color:var(--color-border-secondary)}*{margin:0;padding:0;box-sizing:border-box}:root{--color-primary: #007acc;--color-primary-hover: #005a9e;--color-primary-light: #e6f3ff;--color-secondary: #6b7280;--color-success: #22c55e;--color-warning: #f59e0b;--color-error: #ef4444;--color-bg-primary: #ffffff;--color-bg-secondary: #f8f9fa;--color-bg-tertiary: #e9ecef;--color-bg-card: #ffffff;--color-bg-overlay: rgba(0, 0, 0, .05);--color-text-primary: #212529;--color-text-secondary: #6c757d;--color-text-tertiary: #adb5bd;--color-text-inverse: #ffffff;--color-border-primary: #dee2e6;--color-border-secondary: #e9ecef;--color-border-focus: #007acc;--heatmap-bg: #f8f9fa;--heatmap-key-bg: #ffffff;--heatmap-key-border: #dee2e6;--heatmap-key-text: #495057;--heatmap-key-active: #007acc;--heatmap-low: #e3f2fd;--heatmap-medium: #90caf9;--heatmap-high: #42a5f5;--heatmap-very-high: #1976d2;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .1);--shadow-card: 0 2px 8px rgba(0, 0, 0, .08);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-mono: "SF Mono", Monaco, "Inconsolata", "Roboto Mono", "Source Code Pro", monospace;--font-numeric: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease}[data-theme=dark]{--color-primary-light: #1e3a5f;--color-bg-primary: #1a1a1a;--color-bg-secondary: #2d2d2d;--color-bg-tertiary: #404040;--color-bg-card: #2d2d2d;--color-bg-overlay: rgba(255, 255, 255, .05);--color-text-primary: #f8f9fa;--color-text-secondary: #adb5bd;--color-text-tertiary: #6c757d;--color-text-inverse: #212529;--color-border-primary: #404040;--color-border-secondary: #2d2d2d;--color-border-focus: #0ea5e9;--heatmap-bg: #1a1a1a;--heatmap-key-bg: #2d2d2d;--heatmap-key-border: #404040;--heatmap-key-text: #f8f9fa;--heatmap-key-active: #0ea5e9;--heatmap-low: #0f172a;--heatmap-medium: #1e293b;--heatmap-high: #334155;--heatmap-very-high: #0ea5e9;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .3);--shadow-card: 0 2px 8px rgba(0, 0, 0, .2)}body{font-family:var(--font-sans);color:var(--color-text-primary);background-color:var(--color-bg-secondary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition-base),color var(--transition-base)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.card{background:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--spacing-xl);border:1px solid var(--color-border-primary);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-md)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base);font-weight:500;border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast);text-decoration:none;min-height:44px}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:var(--color-text-inverse)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border-primary)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-primary);border-color:var(--color-border-focus)}input,select,textarea{font-family:inherit;font-size:var(--font-size-base);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border-primary);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-primary);transition:all var(--transition-fast)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 3px #007acc1a}.theme-toggle{position:fixed;top:var(--spacing-lg);right:var(--spacing-lg);z-index:1000;background:var(--color-bg-card);border:1px solid var(--color-border-primary);border-radius:var(--radius-lg);padding:var(--spacing-sm);cursor:pointer;font-size:var(--font-size-lg);transition:all var(--transition-base);box-shadow:var(--shadow-card)}.theme-toggle:hover{transform:scale(1.05);box-shadow:var(--shadow-md)}@media (max-width: 768px){.container{padding:0 var(--spacing-md)}.card{padding:var(--spacing-lg)}.theme-toggle{top:var(--spacing-sm);right:var(--spacing-sm)}}.btn-secondary{background-color:var(--color-bg-primary);color:var(--color-text-primary);border:1px solid var(--color-border-primary)}.btn-secondary:hover{background-color:var(--color-bg-tertiary);border-color:var(--color-border-secondary)}.card{background-color:var(--color-bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border-primary);padding:var(--spacing-xl);transition:all .2s ease-in-out}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.info-section{background:#f8fafc;border-radius:8px;padding:16px;font-size:.9rem;border:1px solid #e5e7eb}.info-section strong{color:#495057}.info-section p{margin:0 0 12px;color:#6c757d;font-size:.875rem;line-height:1.6}.info-section ul{margin:8px 0 0 20px;color:#6c757d;font-size:.875rem}.info-section li{margin-bottom:4px;line-height:1.4;color:#6c757d}.grid{display:grid;gap:var(--spacing-lg)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width: 768px){.md\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}.metric-value,.metric-cell{font-variant-numeric:proportional-nums}@media (max-width: 768px){.container{padding:0 var(--spacing-md)}.card{padding:var(--spacing-lg)}}@media (forced-colors: active){*{forced-color-adjust:auto}.primary-btn,.secondary-btn,.tab-button,button{forced-color-adjust:none;border:2px solid ButtonText;background:ButtonFace;color:ButtonText}.primary-btn:hover,.secondary-btn:hover,.tab-button:hover,button:hover{background:Highlight;color:HighlightText}.card,.comparison-table,.scheme-item{border:1px solid CanvasText}}[data-theme=dark] table{background:var(--color-bg-primary);border-color:var(--color-border-primary)}[data-theme=dark] thead{background:var(--color-bg-tertiary)}[data-theme=dark] th{background:var(--color-bg-tertiary);color:var(--color-text-primary);border-bottom-color:var(--color-border-primary)}[data-theme=dark] td{color:var(--color-text-primary);border-bottom-color:var(--color-border-secondary)}[data-theme=dark] tbody tr:hover{background:var(--color-bg-tertiary)}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:var(--color-bg-primary);color:var(--color-text-primary);border-color:var(--color-border-primary)}[data-theme=dark] input:focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px #0ea5e91a}[data-theme=dark] button:not(.btn){background:var(--color-bg-primary);color:var(--color-text-primary);border-color:var(--color-border-primary)}[data-theme=dark] button:not(.btn):hover{background:var(--color-bg-tertiary);border-color:var(--color-border-secondary)}[data-theme=dark] .card{background:var(--color-bg-card);border-color:var(--color-border-primary)}[data-theme=dark] .info-section,[data-theme=dark] .scheme-name-annotation{background:var(--color-bg-tertiary);border-color:var(--color-border-primary);color:var(--color-text-secondary)}[data-theme=dark] .info-section p,[data-theme=dark] .info-section ul,[data-theme=dark] .info-section li{color:var(--color-text-secondary)}[data-theme=dark] .info-section strong{color:var(--color-text-primary)}.header-content{display:flex;justify-content:space-between;align-items:flex-start;width:100%}.header-text{flex:1}.header-buttons{display:flex;align-items:center;gap:var(--spacing-sm);margin-left:var(--spacing-lg)}.export-btn{background:#fff3;border:none;border-radius:8px;padding:8px;color:#fff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.export-btn:hover:not(:disabled){background:#ffffff4d;transform:scale(1.05)}.export-btn:disabled{opacity:.5;cursor:not-allowed}.collapse-button{background:#fff3;border:none;border-radius:8px;padding:8px;color:#fff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.collapse-button:hover{background:#ffffff4d;transform:scale(1.05)}.collapse-button svg{transition:transform .3s ease}.collapse-button svg.rotated{transform:rotate(180deg)}.scheme-name-annotation{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:#4a90e21a;border-left:3px solid var(--primary-color);border-radius:4px;font-size:.875rem;color:var(--color-text-secondary)}.scheme-name-annotation span{font-weight:500;color:var(--primary-color)}[data-theme=dark] .scheme-name-annotation{background:#4a90e226;border-left-color:var(--color-accent)}[data-theme=dark] .scheme-name-annotation span{color:var(--color-accent)}
