:root{--color-primary: #0066cc;--color-primary-hover: #0052a3;--color-secondary: #6c757d;--color-success: #28a745;--color-warning: #ffc107;--color-error: #dc3545;--color-bg: #ffffff;--color-bg-secondary: #f8f9fa;--color-text: #1a1a1a;--color-text-muted: #6c757d;--color-border: #dee2e6;--font-family-base: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-heading: var(--font-family-base);--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: 2rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--transition-fast: .15s ease;--transition-base: .25s ease;--sidebar-width: 280px;--content-max-width: 720px;--header-height: 64px}.app-layout{display:flex;min-height:100vh;flex-direction:column}@media (min-width: 768px){.app-layout{flex-direction:row}}.app-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);background-color:var(--color-bg);border-bottom:1px solid var(--color-border);height:var(--header-height)}@media (min-width: 768px){.app-header{display:none}}.app-sidebar{width:100%;background-color:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);padding:var(--spacing-lg)}@media (min-width: 768px){.app-sidebar{width:var(--sidebar-width);min-height:100vh;border-bottom:none;border-right:1px solid var(--color-border);position:sticky;top:0;flex-shrink:0}}.app-main{flex:1;padding:var(--spacing-lg);display:flex;flex-direction:column}@media (min-width: 768px){.app-main{padding:var(--spacing-xl) var(--spacing-2xl)}}.app-content{max-width:var(--content-max-width);width:100%;margin:0 auto;flex:1}.app-footer{padding:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);max-width:var(--content-max-width);width:100%;margin:0 auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-base);font-weight:500;border-radius:var(--radius-md);border:1px solid transparent;transition:all var(--transition-fast);min-height:44px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn-primary{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-secondary{background-color:transparent;color:var(--color-text);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background-color:var(--color-bg-secondary)}.btn-text{background-color:transparent;color:var(--color-primary);border-color:transparent;padding:var(--spacing-xs) var(--spacing-sm)}.btn-text:hover:not(:disabled){text-decoration:underline}.card{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.progress-list{list-style:none;display:flex;flex-direction:column;gap:var(--spacing-xs)}.progress-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-muted);transition:background-color var(--transition-fast)}.progress-item.active{background-color:var(--color-bg);color:var(--color-text);font-weight:500}.progress-item.completed{color:var(--color-success)}.progress-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);font-size:var(--font-size-xs);background-color:var(--color-border);color:var(--color-text-muted);flex-shrink:0}.active .progress-icon{background-color:var(--color-primary);color:#fff}.completed .progress-icon{background-color:var(--color-success);color:#fff}.answer-list{display:flex;flex-direction:column;gap:var(--spacing-sm);list-style:none}.answer-item{display:block}.answer-option{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md);background-color:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);width:100%;text-align:left}.answer-option:hover{border-color:var(--color-primary);background-color:var(--color-bg-secondary)}.answer-option:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.answer-option[aria-checked=true],.answer-option.selected{border-color:var(--color-primary);background-color:#0066cc0d}.answer-radio{width:20px;height:20px;border:2px solid var(--color-border);border-radius:var(--radius-full);flex-shrink:0;margin-top:2px;position:relative}.answer-option[aria-checked=true] .answer-radio,.answer-option.selected .answer-radio{border-color:var(--color-primary)}.answer-option[aria-checked=true] .answer-radio:after,.answer-option.selected .answer-radio:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:10px;height:10px;background-color:var(--color-primary);border-radius:var(--radius-full)}.answer-text{flex:1;font-size:var(--font-size-base);line-height:1.5}.error-view{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;text-align:center;padding:var(--spacing-xl)}.error-icon{font-size:3rem;color:var(--color-error);margin-bottom:var(--spacing-lg)}.error-title{font-size:var(--font-size-xl);font-weight:600;margin-bottom:var(--spacing-sm)}.error-message{color:var(--color-text-muted);margin-bottom:var(--spacing-lg)}.intro-view{text-align:center;max-width:600px;margin:0 auto;padding:var(--spacing-xl) 0}.intro-title{font-size:var(--font-size-3xl);font-weight:700;margin-bottom:var(--spacing-lg)}.intro-description{font-size:var(--font-size-lg);color:var(--color-text-muted);margin-bottom:var(--spacing-xl);line-height:1.7}.question-view{padding:var(--spacing-lg) 0}.question-category{font-size:var(--font-size-sm);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-sm)}.question-text{font-size:var(--font-size-xl);font-weight:600;margin-bottom:var(--spacing-md)}.question-help{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-lg)}.summary-view{padding:var(--spacing-lg) 0}.summary-title{font-size:var(--font-size-2xl);font-weight:700;margin-bottom:var(--spacing-lg)}.summary-section{margin-bottom:var(--spacing-xl)}.summary-category-title{font-size:var(--font-size-lg);font-weight:600;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.summary-answer{padding:var(--spacing-md) 0;border-bottom:1px solid var(--color-border)}.summary-answer:last-child{border-bottom:none}.summary-question{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--spacing-xs)}.summary-response{font-weight:500}.report-view{padding:var(--spacing-xl) 0;text-align:center}.report-title{font-size:var(--font-size-3xl);font-weight:700;margin-bottom:var(--spacing-md)}.report-quadrant{font-size:var(--font-size-xl);color:var(--color-primary);font-weight:600;margin-bottom:var(--spacing-lg)}.report-description{font-size:var(--font-size-lg);color:var(--color-text-muted);max-width:600px;margin:0 auto var(--spacing-xl);line-height:1.7}.report-id{font-size:var(--font-size-sm);color:var(--color-text-muted);font-family:monospace}.language-select{display:flex;align-items:center;gap:var(--spacing-sm)}.language-select-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.language-select-dropdown{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background-color:var(--color-bg);font-size:var(--font-size-sm);cursor:pointer}.language-select-dropdown:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.loading{display:flex;align-items:center;justify-content:center;min-height:50vh}.loading-spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family-base, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);background-color:var(--color-bg, #ffffff);color:var(--color-text, #1a1a1a);min-height:100vh}#app{min-height:100vh}a{color:var(--color-primary, #0066cc);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit;font-size:inherit}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
