.error-display{border-radius:8px;padding:16px;margin:16px 0;border:1px solid;background-color:#fff;box-shadow:0 2px 8px #0000001a}.error-critical{border-color:#dc2626;background-color:#fef2f2;color:#991b1b}.error-high{border-color:#ea580c;background-color:#fff7ed;color:#9a3412}.error-medium{border-color:#d97706;background-color:#fffbeb;color:#92400e}.error-low{border-color:#2563eb;background-color:#eff6ff;color:#1e40af}.error-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.error-icon{width:24px;height:24px;flex-shrink:0;margin-top:2px}.error-title-section{flex:1}.error-title{font-size:18px;font-weight:600;margin:0 0 8px;line-height:1.4}.error-message{font-size:14px;margin:0;line-height:1.5;opacity:.9}.error-suggestions{margin-bottom:16px;padding:12px;background-color:#ffffff80;border-radius:6px;border:1px solid rgba(0,0,0,.1)}.error-suggestions-title{font-size:14px;font-weight:600;margin:0 0 8px;color:inherit}.error-suggestions-list{margin:0;padding-left:20px;list-style-type:disc}.error-suggestion-item{font-size:13px;line-height:1.5;margin-bottom:4px;opacity:.9}.error-suggestion-item:last-child{margin-bottom:0}.error-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.error-button{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none}.error-button:disabled{opacity:.5;cursor:not-allowed}.error-button-icon{width:16px;height:16px}.error-button-primary{background-color:currentColor;color:#fff}.error-button-primary:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.error-button-secondary{background-color:transparent;color:currentColor;border:1px solid currentColor}.error-button-secondary:hover:not(:disabled){background-color:currentColor;color:#fff}.error-button-text{background-color:transparent;color:currentColor;padding:4px 8px;font-size:13px;text-decoration:underline}.error-button-text:hover:not(:disabled){opacity:.8}.error-details{margin-top:16px;padding:12px;background-color:#0000000d;border-radius:6px;border:1px solid rgba(0,0,0,.1)}.error-details-title{font-size:14px;font-weight:600;margin:0 0 12px;color:inherit}.error-details-content{font-size:13px;line-height:1.5}.error-detail-item{margin-bottom:8px}.error-detail-item:last-child{margin-bottom:0}.error-detail-item strong{font-weight:600;margin-right:8px}.error-stack{margin:8px 0 0;padding:8px;background-color:#0000001a;border-radius:4px;font-family:Courier New,monospace;font-size:11px;line-height:1.4;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.error-compact{padding:8px 12px;margin:8px 0;border-radius:6px}.error-compact .error-content{display:flex;align-items:center;gap:8px}.error-compact .error-icon{width:16px;height:16px}.error-compact .error-message{flex:1;font-size:13px;margin:0}.error-compact .error-actions{margin:0;gap:4px}.error-compact .error-button{padding:4px;min-width:28px;height:28px;justify-content:center}.error-compact .error-button svg{width:14px;height:14px}.error-button-retry{background-color:currentColor;color:#fff;border-radius:4px}.error-button-retry:hover:not(:disabled){opacity:.9}.error-button-dismiss{background-color:transparent;color:currentColor;border:1px solid currentColor;border-radius:4px}.error-button-dismiss:hover:not(:disabled){background-color:currentColor;color:#fff}@media (max-width: 640px){.error-display{margin:12px 0;padding:12px}.error-header{gap:8px;margin-bottom:12px}.error-title{font-size:16px}.error-message{font-size:13px}.error-actions{gap:6px}.error-button{padding:6px 12px;font-size:13px}.error-suggestions{padding:8px;margin-bottom:12px}.error-details{padding:8px;margin-top:12px}}@media (prefers-color-scheme: dark){.error-display{background-color:#1f2937;box-shadow:0 2px 8px #0000004d}.error-critical{background-color:#1f1917;border-color:#dc2626;color:#fca5a5}.error-high{background-color:#1f1611;border-color:#ea580c;color:#fdba74}.error-medium{background-color:#1f1a0c;border-color:#d97706;color:#fbbf24}.error-low{background-color:#0f1629;border-color:#2563eb;color:#93c5fd}.error-suggestions,.error-details{background-color:#ffffff0d;border-color:#ffffff1a}.error-stack{background-color:#ffffff1a}}.question-type-instructions-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.question-type-instructions-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-width:600px;width:100%;max-height:80vh;overflow-y:auto;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.instructions-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 16px;border-bottom:1px solid #e5e7eb}.instructions-title{margin:0;font-size:20px;font-weight:600;color:#1f2937}.instructions-close-btn{background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:4px;line-height:1;border-radius:4px;transition:all .2s ease}.instructions-close-btn:hover{background-color:#f3f4f6;color:#374151}.instructions-content{padding:20px 24px}.instructions-description{margin-bottom:24px}.instructions-description p{margin:0;font-size:16px;color:#4b5563;line-height:1.6}.instructions-section{margin-bottom:24px}.instructions-section:last-child{margin-bottom:0}.instructions-section h4{margin:0 0 12px;font-size:16px;font-weight:600;color:#1f2937}.instructions-list,.tips-list{margin:0;padding-left:20px}.instructions-list li,.tips-list li{margin-bottom:8px;font-size:14px;color:#4b5563;line-height:1.5}.instructions-list li:last-child,.tips-list li:last-child{margin-bottom:0}.tips-list{list-style-type:disc}.tips-list li{color:#059669}.instructions-footer{padding:16px 24px 20px;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.instructions-actions{display:flex;gap:12px}.mark-seen-btn,.close-btn{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid transparent}.mark-seen-btn{background-color:#3b82f6;color:#fff;border-color:#3b82f6}.mark-seen-btn:hover{background-color:#2563eb;border-color:#2563eb}.close-btn{background-color:#f9fafb;color:#374151;border-color:#d1d5db}.close-btn:hover{background-color:#f3f4f6;border-color:#9ca3af}.seen-indicator{display:flex;align-items:center;gap:6px;color:#059669;font-size:14px}.seen-icon{font-weight:700;font-size:16px}.seen-text{font-weight:500}@media (max-width: 768px){.question-type-instructions-overlay{padding:10px}.question-type-instructions-modal{max-height:90vh}.instructions-header{padding:16px 20px 12px}.instructions-title{font-size:18px}.instructions-content{padding:16px 20px}.instructions-footer{padding:12px 20px 16px;flex-direction:column;gap:12px;align-items:stretch}.instructions-actions,.seen-indicator{justify-content:center}}@media (max-width: 480px){.instructions-header{padding:12px 16px 8px}.instructions-title{font-size:16px}.instructions-content{padding:12px 16px}.instructions-footer{padding:8px 16px 12px}.mark-seen-btn,.close-btn{padding:10px 20px;font-size:16px}}.view-instructions-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#475569;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative;text-decoration:none;outline:none}.view-instructions-btn:hover{background-color:#f1f5f9;border-color:#cbd5e1;color:#334155}.view-instructions-btn:focus{box-shadow:0 0 0 2px #3b82f680;border-color:#3b82f6}.view-instructions-btn:active{background-color:#e2e8f0;transform:translateY(1px)}.view-instructions-btn.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background-color:#3b82f6;color:#fff;border-radius:50%;font-size:12px;font-weight:700;line-height:1}.btn-text{white-space:nowrap}.view-instructions-btn.with-hint{background-color:#fef3c7;border-color:#f59e0b;color:#92400e}.view-instructions-btn.with-hint:hover{background-color:#fde68a;border-color:#d97706;color:#78350f}.view-instructions-btn.with-hint .btn-icon{background-color:#f59e0b}.hint-indicator{position:absolute;top:-4px;right:-4px;display:flex;align-items:center;justify-content:center}.hint-dot{width:8px;height:8px;background-color:#ef4444;border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.7}to{transform:scale(1);opacity:1}}.view-instructions-btn.compact{padding:6px 10px;font-size:13px}.view-instructions-btn.compact .btn-icon{width:16px;height:16px;font-size:11px}.view-instructions-btn.large{padding:10px 16px;font-size:16px}.view-instructions-btn.large .btn-icon{width:20px;height:20px;font-size:13px}@media (max-width: 768px){.view-instructions-btn{padding:10px 14px;font-size:15px}.btn-icon{width:20px;height:20px;font-size:13px}}@media (max-width: 480px){.view-instructions-btn{padding:12px 16px;font-size:16px}.btn-text{display:none}.btn-icon{width:24px;height:24px;font-size:14px}}.view-instructions-btn.primary{background-color:#3b82f6;border-color:#3b82f6;color:#fff}.view-instructions-btn.primary:hover{background-color:#2563eb;border-color:#2563eb}.view-instructions-btn.primary .btn-icon{background-color:#fff3;color:#fff}.view-instructions-btn.secondary{background-color:#6b7280;border-color:#6b7280;color:#fff}.view-instructions-btn.secondary:hover{background-color:#4b5563;border-color:#4b5563}.view-instructions-btn.secondary .btn-icon{background-color:#fff3;color:#fff}.question-navigation{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1rem;--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);display:flex;align-items:center;justify-content:space-between;gap:1rem;position:relative}.question-navigation.no-questions{justify-content:center}.nav-left,.nav-right{display:flex;align-items:center;gap:.75rem}.nav-center{display:flex;flex-direction:column;align-items:center;gap:.5rem;flex:1;max-width:200px}.nav-button{border-radius:.5rem;padding:.5rem 1rem;font-weight:500;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s;display:flex;align-items:center;gap:.5rem;border:none;cursor:pointer;min-height:40px}.nav-button:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-offset-width: 2px}.return-overview-btn{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.return-overview-btn:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.return-overview-btn:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(107 114 128 / var(--tw-ring-opacity, 1))}.prev-btn{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.prev-btn:hover{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.prev-btn:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.prev-btn.disabled{cursor:not-allowed;--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.prev-btn.disabled:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.next-btn{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.next-btn:hover{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.next-btn:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.complete-btn{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.complete-btn:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.complete-btn:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(34 197 94 / var(--tw-ring-opacity, 1))}.nav-icon{width:1.25rem;height:1.25rem;flex-shrink:0}.nav-icon.animate-spin{animation:spin 1s linear infinite}.question-position{font-size:1.125rem;line-height:1.75rem;font-weight:600;--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1));display:flex;align-items:center;gap:.25rem}.current-question{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.separator{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.total-questions{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.answer-status{display:flex;align-items:center;justify-content:center}.status-answered,.status-unanswered{border-radius:9999px;padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;display:flex;align-items:center;gap:.25rem}.status-answered{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.status-unanswered{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.status-icon{width:1rem;height:1rem;flex-shrink:0}.navigation-history{display:flex;align-items:center;justify-content:center;margin-top:.25rem}.history-indicator{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));padding:.25rem .5rem;font-size:.75rem;line-height:1rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1));display:flex;align-items:center;gap:.25rem;cursor:help}.history-icon{width:.875rem;height:.875rem;flex-shrink:0}.history-count{font-weight:600}.nav-warning{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:.5rem;z-index:10}.warning-message{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1));padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1));display:flex;align-items:center;gap:.5rem;white-space:nowrap;box-shadow:0 4px 6px -1px #0000001a}.warning-icon{width:1rem;height:1rem;flex-shrink:0}.nav-feedback{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:.5rem;z-index:15;animation:fadeInOut 3s ease-in-out}.nav-feedback-success .feedback-message{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1));padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1));display:flex;align-items:center;gap:.5rem;white-space:nowrap;box-shadow:0 4px 6px -1px #0000001a}.nav-feedback-error .feedback-message{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1));padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1));display:flex;align-items:center;gap:.5rem;white-space:nowrap;box-shadow:0 4px 6px -1px #0000001a}.feedback-icon{width:1rem;height:1rem;flex-shrink:0}@keyframes fadeInOut{0%{opacity:0;transform:translate(-50%) translateY(-10px)}10%,90%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-10px)}}.nav-message{padding-top:1rem;padding-bottom:1rem;text-align:center}@media (max-width: 1024px){.question-navigation{padding:16px;gap:16px}.nav-button{min-height:40px;padding:10px 16px;font-size:15px}}@media (max-width: 768px) and (orientation: landscape){.question-navigation{flex-direction:row;padding:12px 16px;gap:12px}.nav-left,.nav-right{flex:0 0 auto}.nav-center{flex:1;max-width:200px}.nav-button{min-height:36px;padding:8px 12px;font-size:14px}.question-position{font-size:16px}}@media (max-width: 768px){.question-navigation{flex-direction:column;gap:16px;padding:16px;border-radius:12px;margin:0 8px;background:#fff;box-shadow:0 2px 8px #0000001a}.nav-center{order:-1;max-width:none;width:100%;background:#f8fafc;padding:16px;border-radius:8px;border:1px solid #e2e8f0}.question-position{font-size:20px;font-weight:700;margin-bottom:8px}.answer-status{margin-bottom:8px}.status-answered,.status-unanswered{font-size:14px;padding:6px 12px}.navigation-history{margin-top:8px}.nav-left,.nav-right{width:100%;justify-content:center;gap:12px}.nav-button{flex:1;justify-content:center;min-height:48px;font-size:16px;font-weight:600;border-radius:12px;padding:14px 20px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:all .2s ease}.nav-button:active:not(.disabled){transform:scale(.98)}.return-overview-btn{order:1;background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.return-overview-btn:hover:not(.disabled){background:#e5e7eb;border-color:#9ca3af}.prev-btn,.next-btn,.complete-btn{order:2}.prev-btn{background:#3b82f6;color:#fff;border:none}.prev-btn:hover:not(.disabled){background:#2563eb}.prev-btn.disabled{background:#e5e7eb;color:#9ca3af}.next-btn{background:#3b82f6;color:#fff;border:none}.next-btn:hover:not(.disabled){background:#2563eb}.complete-btn{background:#16a34a;color:#fff;border:none}.complete-btn:hover:not(.disabled){background:#15803d}.nav-icon{width:20px;height:20px}.nav-warning,.nav-feedback{position:static;transform:none;margin-top:16px;width:100%}.warning-message,.feedback-message{white-space:normal;text-align:center;padding:12px 16px;font-size:15px;border-radius:8px}}@media (max-width: 480px){.question-navigation{padding:12px;gap:12px;margin:0 4px}.nav-center{padding:12px}.question-position{font-size:18px}.nav-left,.nav-right{flex-direction:column;gap:8px}.nav-button{width:100%;min-height:44px;font-size:15px;padding:12px 16px;border-radius:8px}.nav-icon{width:18px;height:18px}.warning-message,.feedback-message{padding:10px 12px;font-size:14px}}@media (max-width: 360px){.question-navigation{padding:10px;gap:10px;margin:0 2px}.nav-center{padding:10px}.question-position{font-size:16px}.nav-button{font-size:14px;padding:10px 14px}.nav-icon{width:16px;height:16px}}@media (max-width: 768px){.nav-button{position:relative;overflow:hidden}.nav-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease;pointer-events:none}.nav-button:active:before{width:200px;height:200px}.prev-btn.disabled,.next-btn.disabled,.complete-btn.disabled{opacity:.5;cursor:not-allowed;transform:none}.prev-btn.disabled:active,.next-btn.disabled:active,.complete-btn.disabled:active{transform:none}}.nav-button{transition:all .2s ease-in-out}.nav-button:hover:not(.disabled){transform:translateY(-1px);box-shadow:0 4px 8px #0000001a}.nav-button:active:not(.disabled){transform:translateY(0)}.nav-button:focus-visible{outline:2px solid currentColor;outline-offset:2px}@media (prefers-contrast: high){.nav-button{border:2px solid currentColor}.question-position{font-weight:700}}@media (prefers-reduced-motion: reduce){.nav-button{transition:none}.nav-button:hover:not(.disabled){transform:none}}.progress-tracker{background:#fff;border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;overflow:hidden;max-width:800px;margin:0 auto}.progress-header{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;padding:24px}.progress-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.progress-title h3{margin:0;font-size:1.5rem;font-weight:600}.close-button{background:#fff3;border:none;color:#fff;font-size:24px;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.close-button:hover{background:#ffffff4d}.progress-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px;margin-bottom:20px}.stat-item{text-align:center;background:#ffffff1a;padding:12px;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stat-label{display:block;font-size:.875rem;opacity:.9;margin-bottom:4px}.stat-value{display:block;font-size:1.25rem;font-weight:600}.progress-bar-container{display:flex;align-items:center;gap:12px}.progress-bar{flex:1;height:8px;background:#fff3;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:4px;transition:width .3s ease}.progress-percentage{font-weight:600;font-size:.875rem;min-width:40px;text-align:right}.questions-grid{padding:24px}.grid-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:16px}.grid-header h4{margin:0;font-size:1.125rem;font-weight:600;color:#374151}.status-legend{display:flex;gap:16px;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:6px;font-size:.875rem;color:#6b7280}.status-indicator{width:12px;height:12px;border-radius:50%;flex-shrink:0}.status-indicator.current{background:#f59e0b;box-shadow:0 0 0 2px #f59e0b4d}.status-indicator.answered{background:#10b981}.status-indicator.unanswered{background:#e5e7eb;border:2px solid #d1d5db}.questions-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;max-height:400px;overflow-y:auto;padding:4px}.question-grid-item{background:#f9fafb;border:2px solid #e5e7eb;border-radius:8px;padding:16px;cursor:pointer;transition:all .2s ease;position:relative;display:flex;align-items:flex-start;gap:12px}.question-grid-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.question-grid-item:focus{outline:none;ring:2px solid #3b82f6;ring-offset:2px}.question-grid-item.current{background:#fef3c7;border-color:#f59e0b}.question-grid-item.current:hover{background:#fde68a}.question-grid-item.answered{background:#ecfdf5;border-color:#10b981}.question-grid-item.answered:hover{background:#d1fae5}.question-grid-item.unanswered{background:#f9fafb;border-color:#e5e7eb}.question-grid-item.unanswered:hover{background:#f3f4f6;border-color:#d1d5db}.question-number{background:#374151;color:#fff;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;flex-shrink:0}.question-grid-item.current .question-number{background:#f59e0b}.question-grid-item.answered .question-number{background:#10b981}.question-info{flex:1;min-width:0}.question-type{font-weight:500;color:#374151;margin-bottom:4px;font-size:.875rem}.answer-preview{color:#6b7280;font-size:.75rem;margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:.75rem;font-weight:500}.status-badge.current{background:#fbbf24;color:#92400e}.status-badge.answered{background:#34d399;color:#065f46}.status-badge.unanswered{background:#e5e7eb;color:#6b7280}.current-indicator{position:absolute;right:8px;top:8px;color:#f59e0b;font-weight:700;font-size:1.25rem}.progress-actions{padding:20px 24px;background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;justify-content:center;gap:12px}.btn-primary{background:#3b82f6;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-primary:hover{background:#2563eb}.btn-secondary{background:#6b7280;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-weight:500;cursor:pointer;transition:background-color .2s}.btn-secondary:hover{background:#4b5563}@media (max-width: 1024px){.progress-tracker{max-width:100%;margin:0 8px}.questions-container{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));max-height:350px}}@media (max-width: 768px) and (orientation: landscape){.progress-tracker{margin:0;border-radius:8px;max-height:90vh}.progress-header{padding:12px 16px}.progress-stats{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.stat-item{padding:8px}.questions-grid{padding:12px 16px}.questions-container{grid-template-columns:repeat(2,1fr);max-height:200px;gap:8px}.question-grid-item{padding:8px;min-height:auto}.progress-actions{padding:12px 16px}}@media (max-width: 768px){.progress-tracker{margin:0;border-radius:0;max-height:100vh;display:flex;flex-direction:column}.progress-header{flex-shrink:0;padding:16px;background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.progress-title h3{font-size:20px}.close-button{width:36px;height:36px;font-size:20px}.progress-stats{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px}.stat-item{padding:12px;border-radius:8px}.stat-label{font-size:12px}.stat-value{font-size:18px}.progress-bar-container{gap:8px}.progress-percentage{font-size:14px}.questions-grid{flex:1;padding:16px;overflow-y:auto;-webkit-overflow-scrolling:touch}.grid-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:16px}.grid-header h4{font-size:18px}.status-legend{gap:16px;flex-wrap:wrap}.legend-item{font-size:14px}.status-indicator{width:14px;height:14px}.questions-container{grid-template-columns:1fr;max-height:none;gap:12px}.question-grid-item{padding:16px;border-radius:12px;min-height:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:all .2s ease}.question-grid-item:active{transform:scale(.98)}.question-number{width:36px;height:36px;font-size:16px;font-weight:700}.question-info{margin-left:4px}.question-type{font-size:15px;margin-bottom:6px}.answer-preview{font-size:13px;margin-bottom:8px}.status-badge{font-size:12px;padding:4px 8px}.current-indicator{right:12px;top:12px;font-size:18px}.progress-actions{flex-shrink:0;padding:16px;flex-direction:column;gap:12px}.btn-primary,.btn-secondary{width:100%;min-height:48px;font-size:16px;font-weight:600;border-radius:12px;padding:14px 20px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:all .2s ease}.btn-primary:active,.btn-secondary:active{transform:scale(.98)}}@media (max-width: 480px){.progress-header{padding:12px}.progress-title h3{font-size:18px}.close-button{width:32px;height:32px;font-size:18px}.progress-stats{grid-template-columns:1fr;gap:8px;margin-bottom:12px}.stat-item{padding:10px;display:flex;justify-content:space-between;align-items:center}.stat-label{font-size:13px}.stat-value{font-size:16px}.questions-grid{padding:12px}.grid-header h4{font-size:16px}.status-legend{gap:12px}.legend-item{font-size:13px}.questions-container{gap:8px}.question-grid-item{padding:12px;border-radius:8px}.question-number{width:32px;height:32px;font-size:14px}.question-type{font-size:14px}.answer-preview{font-size:12px}.status-badge{font-size:11px;padding:3px 6px}.current-indicator{font-size:16px;right:8px;top:8px}.progress-actions{padding:12px}.btn-primary,.btn-secondary{min-height:44px;font-size:15px;padding:12px 16px;border-radius:8px}}@media (max-width: 360px){.progress-header{padding:10px}.progress-title h3{font-size:16px}.questions-grid,.question-grid-item{padding:10px}.question-number{width:28px;height:28px;font-size:12px}.question-type{font-size:13px}.progress-actions{padding:10px}.btn-primary,.btn-secondary{font-size:14px;padding:10px 14px}}@media (max-width: 768px){.question-grid-item{position:relative;overflow:hidden}.question-grid-item:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease;pointer-events:none}.question-grid-item:active:before{width:200px;height:200px}.question-grid-item:hover{transform:none;box-shadow:0 2px 8px #0000001a}.question-grid-item:active{box-shadow:0 1px 4px #0000001a}}.progress-tracker-overlay{padding:0}@media (max-width: 768px){.progress-tracker-modal{width:100vw;height:100vh;max-height:100vh;border-radius:0}}@supports (padding: max(0px)){@media (max-width: 768px){.progress-header{padding-top:max(16px,env(safe-area-inset-top));padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}.progress-actions{padding-bottom:max(16px,env(safe-area-inset-bottom));padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}}}.questions-container::-webkit-scrollbar{width:6px}.questions-container::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.questions-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.questions-container::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (prefers-reduced-motion: reduce){.question-grid-item,.progress-fill,.btn-primary,.btn-secondary{transition:none}.question-grid-item:hover{transform:none}}@media (prefers-contrast: high){.question-grid-item{border-width:3px}.status-indicator{border:2px solid currentColor}.progress-fill{background:#000}}.question-card{transition:box-shadow .2s ease-in-out}.question-card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.question-title{line-height:1.4}.option-label{border:1px solid transparent}.option-label:hover{border-color:#e5e7eb}.option-label input[type=radio]:checked+.option-text{font-weight:500;color:#1d4ed8}.nav-button{min-width:120px}@media (max-width: 1024px){.exam-session-container{padding:0 12px}.question-area{padding:16px 0}.question-card{margin:0 8px}}@media (max-width: 768px) and (orientation: landscape){.exam-header{padding:8px 16px}.exam-header .action-buttons{flex-direction:row;gap:8px}.exam-header .action-buttons button{flex:1;min-height:36px;font-size:14px;padding:6px 12px}.question-card{padding:12px}.navigation-footer{padding:8px 16px}}@media (max-width: 768px){.exam-session-container{padding:0;min-height:100vh;display:flex;flex-direction:column}.exam-header{flex-shrink:0;padding:12px 16px;border-bottom:1px solid #e5e7eb;background:#fff;position:sticky;top:0;z-index:100}.exam-header .action-buttons{flex-direction:column;gap:8px;margin-top:12px}.exam-header .action-buttons button{width:100%;min-height:44px;font-size:16px;font-weight:500;border-radius:8px;padding:12px 16px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.timer-section{order:1}.progress-section{order:2;margin:8px 0}.action-buttons{order:3}.question-area{flex:1;padding:16px;overflow-y:auto;-webkit-overflow-scrolling:touch}.question-card{border-radius:12px;padding:20px;margin:0;box-shadow:0 2px 8px #0000001a}.question-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:20px}.question-title{font-size:18px;line-height:1.4;font-weight:600}.question-actions{align-self:stretch;display:flex;gap:8px}.question-actions button{flex:1;min-height:44px;font-size:16px;border-radius:8px;padding:12px;touch-action:manipulation}.question-content{font-size:16px;line-height:1.6;margin-bottom:24px}.question-options{margin-bottom:24px}.option-label{padding:16px;margin-bottom:12px;border-radius:12px;font-size:16px;line-height:1.5;min-height:44px;display:flex;align-items:center;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:all .2s ease}.option-label:active{transform:scale(.98)}.option-text{flex:1;margin-left:12px}.navigation-footer{flex-shrink:0;padding:16px;border-top:1px solid #e5e7eb;background:#fff}.navigation-footer>div{flex-direction:column;gap:16px}.nav-button{width:100%;min-width:auto;min-height:48px;font-size:16px;font-weight:600;border-radius:12px;padding:14px 20px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:all .2s ease}.nav-button:active{transform:scale(.98)}.nav-info{text-align:center;order:-1;font-size:16px;padding:12px;background:#f8fafc;border-radius:8px;margin-bottom:8px}}@media (max-width: 480px){.exam-header{padding:10px 12px}.question-area{padding:12px}.question-card{padding:16px;border-radius:8px}.question-title{font-size:16px}.question-content{font-size:15px}.option-label{padding:14px;font-size:15px;border-radius:8px}.navigation-footer{padding:12px}.nav-button{min-height:44px;font-size:15px;border-radius:8px;padding:12px 16px}.nav-info{font-size:14px;padding:10px}}@media (max-width: 360px){.exam-header{padding:8px 10px}.question-area{padding:10px}.question-card{padding:14px}.question-title{font-size:15px}.question-content{font-size:14px}.option-label{padding:12px;font-size:14px}.navigation-footer{padding:10px}.nav-button{font-size:14px;padding:10px 14px}}@media print{.exam-header .action-buttons,.navigation-footer{display:none}.question-card{-moz-column-break-inside:avoid;break-inside:avoid;margin-bottom:1rem}}@media (prefers-contrast: high){.question-card{border-width:2px}.option-label{border-width:1px}.option-label:hover{border-width:2px}}@media (prefers-reduced-motion: reduce){.question-card,.option-label,.nav-button,.progress-section .bg-blue-600{transition:none}}.progress-tracker-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.progress-tracker-modal{width:100%;max-width:900px;max-height:90vh;overflow-y:auto;background:#fff;border-radius:12px;box-shadow:0 25px 50px -12px #00000040}@media (max-width: 768px){.progress-tracker-overlay{padding:10px}.progress-tracker-modal{max-height:95vh;border-radius:8px}}@media (max-width: 480px){.progress-tracker-overlay{padding:0}.progress-tracker-modal{width:100vw;height:100vh;max-height:100vh;border-radius:0}}.audio-character-question{margin-left:auto;margin-right:auto;width:100%;max-width:56rem}.audio-character-question.disabled{pointer-events:none;opacity:.6}.audio-character-question.error{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1));padding:1rem}.question-type-indicator{margin-bottom:1rem;text-align:center}.type-badge{display:inline-block;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1));padding:.5rem 1rem;font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(107 33 168 / var(--tw-text-opacity, 1))}.audio-question-content{margin-bottom:1.5rem}.audio-player-container{margin-bottom:1rem;border-radius:.5rem;border-width:1px;--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1));padding:1rem}.audio-player audio{height:3rem;width:100%;border-radius:.375rem}.audio-description{margin-top:.75rem;text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.question-text{margin-bottom:1rem;font-size:1.125rem;line-height:1.75rem;line-height:1.625;--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.instructions{margin-bottom:1.5rem}.instruction-text{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1));padding:.75rem;text-align:center;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.audio-character-options{margin-bottom:1.5rem;display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:1rem}@media (min-width: 640px){.audio-character-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.audio-character-options{grid-template-columns:repeat(4,minmax(0,1fr))}}.audio-character-option{cursor:pointer;border-radius:.75rem;border-width:2px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding:1rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.audio-character-option:hover{--tw-border-opacity: 1;border-color:rgb(216 180 254 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1));--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.audio-character-option.selected{--tw-border-opacity: 1;border-color:rgb(168 85 247 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1));--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.audio-character-option.disabled{cursor:not-allowed;opacity:.6}.audio-character-option.empty{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.audio-character-option:hover:not(.disabled){--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.audio-character-option.selected:hover:not(.disabled){--tw-border-opacity: 1;border-color:rgb(147 51 234 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.option-selector{margin-bottom:.75rem;display:flex;justify-content:center}.option-input{height:1.25rem;width:1.25rem;border-radius:.25rem;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.option-input:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity, 1))}.option-content{text-align:center}.option-label{margin-bottom:.5rem;display:block;font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.character-display{display:flex;min-height:5rem;flex-direction:column;align-items:center;justify-content:center}.character-container{display:flex;flex-direction:column;align-items:center}.pinyin-display{margin-bottom:.5rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.875rem;line-height:1.25rem;line-height:1.25;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1));font-family:Courier New,monospace}.character-text{font-size:1.5rem;line-height:2rem;font-weight:700;line-height:1.25;--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1));font-family:SimSun,宋体,serif}.empty-option{display:flex;flex-direction:column;align-items:center}.empty-text{font-size:1.125rem;line-height:1.75rem;font-style:italic;--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.empty-hint{margin-top:.25rem;font-size:.75rem;line-height:1rem;--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.validation-message{margin-top:1rem;display:flex;align-items:center;justify-content:center}.selection-summary{margin-top:1.5rem;border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(233 213 255 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1));padding:1rem}.summary-content{display:flex;align-items:center;justify-content:center}.summary-content>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.summary-label{font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(126 34 206 / var(--tw-text-opacity, 1))}.summary-value{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1));padding:.25rem .75rem;font-size:.875rem;line-height:1.25rem;font-weight:700;--tw-text-opacity: 1;color:rgb(107 33 168 / var(--tw-text-opacity, 1))}.error-message{display:flex;align-items:center;justify-content:center}@media (max-width: 1024px){.audio-character-options{grid-template-columns:repeat(1,minmax(0,1fr))}@media (min-width: 640px){.audio-character-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1024px){.audio-character-options{grid-template-columns:repeat(3,minmax(0,1fr))}}.audio-character-option{padding:.75rem}.character-text{font-size:1.25rem;line-height:1.75rem}}@media (max-width: 768px){.audio-character-question{padding-left:.5rem;padding-right:.5rem}.audio-character-options{grid-template-columns:repeat(1,minmax(0,1fr));gap:.75rem}@media (min-width: 640px){.audio-character-options{grid-template-columns:repeat(2,minmax(0,1fr))}}.audio-character-option{border-radius:.5rem;padding:1rem;min-height:120px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.audio-character-option:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.character-text{font-size:1.25rem;line-height:1.75rem}.pinyin-display{font-size:.875rem;line-height:1.25rem}.option-input{height:1.5rem;width:1.5rem;transform:scale(1.2)}.audio-player audio{height:2.5rem}.instruction-text{padding:1rem;font-size:1rem;line-height:1.5rem}}@media (max-width: 480px){.audio-character-options{grid-template-columns:repeat(1,minmax(0,1fr));gap:.75rem}.audio-character-option{padding:.75rem;min-height:100px}.character-text{font-size:1.125rem;line-height:1.75rem}.pinyin-display{font-size:.75rem;line-height:1rem}}.audio-character-option:focus-within{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity, 1));--tw-ring-offset-width: 2px}.option-input:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(168 85 247 / var(--tw-ring-opacity, 1));--tw-ring-offset-width: 2px}.audio-character-option.selected{animation:selectPulse .3s ease-in-out}@keyframes selectPulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@media print{.audio-character-question{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.audio-character-option{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.audio-character-option.selected{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.audio-player-container{display:none}}.multiple-choice-question{margin-left:auto;margin-right:auto;width:100%;max-width:56rem}.multiple-choice-question.disabled{pointer-events:none;opacity:.6}.multiple-choice-question.error{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1));padding:1rem}.question-type-indicator{margin-bottom:1rem}.type-badge{display:inline-block;border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1));padding:.25rem .75rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.question-content{margin-bottom:1.5rem}.question-content p{line-height:1.625;--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.audio-content{border-radius:.5rem;border-width:1px;--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1));padding:1rem}.audio-player audio{height:2.5rem;width:100%;border-radius:.375rem}.audio-description{margin-top:.5rem;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.characters-content{border-radius:.5rem;border-width:1px;--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1));padding:1rem}.characters-display{margin-bottom:.5rem;font-size:1.5rem;line-height:2rem;font-weight:500;--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.pinyins-display,.option-pinyin{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.character-option-container{display:flex;min-height:4rem;flex-direction:column;align-items:center;justify-content:center}.option-pinyin{margin-bottom:.25rem;text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.875rem;line-height:1.25rem;line-height:1.25;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.option-characters{text-align:center;font-size:1.25rem;line-height:1.75rem;font-weight:600;line-height:1.25;--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.option-text-only{text-align:center;font-size:1.125rem;line-height:1.75rem;font-weight:500;--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.instructions{margin-bottom:1rem}.instruction-text{font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.options-list>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.option-item{cursor:pointer;border-radius:.5rem;border-width:2px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding:1rem;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.option-item:hover{--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.option-item.selected{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.option-item.disabled{cursor:not-allowed;opacity:.6}.option-item:hover:not(.disabled){--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.option-content{display:flex;align-items:flex-start}.option-content>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.option-selector{margin-top:.25rem;flex-shrink:0}.option-checkbox,.option-radio{height:1rem;width:1rem;border-radius:.25rem;--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.option-checkbox:focus,.option-radio:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.option-text{display:flex;flex:1 1 0%;align-items:flex-start}.option-text>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.option-label{flex-shrink:0;font-weight:600;--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.option-content-text{line-height:1.625;--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.no-options{padding-top:2rem;padding-bottom:2rem;text-align:center;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.validation-message{margin-top:1rem;display:flex;align-items:center}.validation-message>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.validation-message{border-radius:.5rem;padding:.75rem}.validation-message.error{border-width:1px;--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.validation-message.success{border-width:1px;--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.validation-icon{flex-shrink:0}.selection-summary{margin-top:1rem;border-radius:.5rem;border-width:1px;--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1));padding:.75rem}.summary-content{display:flex;align-items:center}.summary-content>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.summary-label{font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.summary-value{font-size:.875rem;line-height:1.25rem;font-weight:600;--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.error-message{display:flex;align-items:center}.error-message>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.error-message{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.error-icon{flex-shrink:0}@media (max-width: 1024px){.multiple-choice-question{padding-left:1rem;padding-right:1rem}.option-item{padding:1rem}}@media (max-width: 768px) and (orientation: landscape){.multiple-choice-question{padding-left:.75rem;padding-right:.75rem}.characters-display{font-size:1.25rem;line-height:1.75rem}.option-item{padding:.75rem;min-height:40px}.option-content>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.option-text{font-size:15px}}@media (max-width: 768px){.multiple-choice-question{padding-left:0;padding-right:0;width:100%}.question-type-indicator{margin-bottom:1rem;text-align:center}.type-badge{padding:.5rem 1rem;font-size:1rem;line-height:1.5rem;font-weight:600}.question-content{margin-bottom:1.5rem;padding:0 4px}.question-content p{font-size:1.125rem;line-height:1.75rem;font-size:17px;line-height:1.6}.characters-content{border-radius:.75rem;padding:1.25rem;margin:16px 0}.characters-display{margin-bottom:.75rem;font-size:1.5rem;line-height:2rem;font-weight:600;text-align:center}.pinyins-display{font-size:1rem;line-height:1.5rem;text-align:center}.instructions{margin-bottom:1.25rem;padding:0 4px}.instruction-text{font-size:1rem;line-height:1.5rem;font-weight:500}.options-list>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.options-list{padding:0 4px}.option-item{border-radius:.75rem;padding:1rem;min-height:60px;border-width:2px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:all .2s ease;position:relative;overflow:hidden}.option-item:active{transform:scale(.98)}.option-item:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#3b82f61a;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease;pointer-events:none}.option-item:active:before{width:200px;height:200px}.option-item.selected{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1));box-shadow:0 4px 12px #3b82f626}.option-content>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.option-content{align-items:flex-start}.option-selector{margin-top:.25rem;flex-shrink:0}.option-checkbox,.option-radio{height:1.25rem;width:1.25rem;transform:scale(1.2)}.option-text>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.option-text{flex:1}.option-label{font-size:1rem;line-height:1.5rem;font-weight:600;min-width:24px}.option-content-text{font-size:1rem;line-height:1.5rem;font-size:16px;line-height:1.5}.validation-message,.selection-summary{margin-top:1.25rem;border-radius:.75rem;padding:1rem;margin:20px 4px 0}.summary-content>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.summary-label,.summary-value{font-size:1rem;line-height:1.5rem}}@media (max-width: 480px){.question-content p{font-size:16px}.characters-display{font-size:1.25rem;line-height:1.75rem}.pinyins-display{font-size:.875rem;line-height:1.25rem}.option-item{padding:.75rem;min-height:56px}.option-content>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.option-checkbox,.option-radio{height:1rem;width:1rem;transform:scale(1.3)}.option-label{font-size:.875rem;line-height:1.25rem;font-weight:600}.option-content-text{font-size:15px}.validation-message,.selection-summary{padding:.75rem;margin:16px 2px 0}}@media (max-width: 360px){.question-content p{font-size:15px}.characters-display{font-size:1.125rem;line-height:1.75rem}.option-item{min-height:52px}.option-content-text{font-size:14px}.validation-message,.selection-summary{margin:12px 1px 0}}@media (max-width: 768px){.option-item:focus-within{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1));--tw-ring-offset-width: 2px;border-color:#3b82f6}.option-checkbox:focus,.option-radio:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1));--tw-ring-offset-width: 2px;outline:none}.option-item.selected{animation:selectPulse .3s ease-in-out}@keyframes selectPulse{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}}.option-checkbox:focus,.option-radio:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1));--tw-ring-offset-width: 2px}.option-item:focus-within{outline:2px solid transparent;outline-offset:2px;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1));--tw-ring-offset-width: 2px}.option-item.selected{animation:selectPulse .3s ease-in-out}@keyframes selectPulse{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}@media print{.multiple-choice-question{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:rgb(0 0 0 / var(--tw-text-opacity, 1))}.option-item{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.option-item.selected{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}}.question-renderer,.question-renderer-error{width:100%}.question-header{border-bottom-width:1px;--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-bottom:.75rem}.question-content{padding-top:1rem;padding-bottom:1rem}.validation-errors{margin-top:1rem}.question-component{width:100%}.answer-status-complete{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1));padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.answer-status-incomplete{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1));padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.answer-status-error{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1));padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.question-type-badge{border-radius:9999px;--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1));padding:.25rem .5rem;font-size:.75rem;line-height:1rem;font-weight:500;--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.question-renderer.disabled{pointer-events:none;opacity:.6}.question-renderer.disabled .question-content{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.validation-error-container{border-radius:.5rem;border-width:1px;--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1));--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1));padding:.75rem}.validation-error-title{margin-bottom:.5rem;font-size:.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.validation-error-list{list-style-position:inside;list-style-type:disc;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.question-renderer.loading{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.question-renderer.loading .question-content{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.question-renderer:focus-within{border-radius:.5rem;--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000);--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1));--tw-ring-opacity: .5}@media (max-width: 768px){.question-header{flex-direction:column;align-items:flex-start}.question-header>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.question-header .flex{width:100%;justify-content:space-between}}.answer-status-complete,.answer-status-incomplete,.answer-status-error{transition:all .2s ease-in-out}.placeholder-question{border-radius:.5rem;border-width:1px;--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1));padding:1rem}.placeholder-question h3{margin-bottom:.5rem;font-size:1.125rem;line-height:1.75rem;font-weight:600}.placeholder-question p{margin-bottom:1rem;--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.placeholder-question textarea{width:100%;border-radius:.375rem;border-width:1px;padding:.5rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.875rem;line-height:1.25rem}.placeholder-question details{margin-top:1rem}.placeholder-question summary{cursor:pointer;font-size:.875rem;line-height:1.25rem;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.placeholder-question pre{margin-top:.5rem;overflow:auto;border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));padding:.5rem;font-size:.75rem;line-height:1rem}.debug-info{margin-top:1rem;border-radius:.25rem;--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));padding:.5rem;font-size:.75rem;line-height:1rem}.debug-info summary{cursor:pointer;--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.debug-info div{margin-bottom:.25rem}.debug-info strong{font-weight:600}.submission-confirm-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.submission-confirm-dialog{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;animation:dialogSlideIn .3s ease-out}@keyframes dialogSlideIn{0%{opacity:0;transform:scale(.95) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:24px 24px 0;border-bottom:1px solid #e5e7eb;margin-bottom:24px}.dialog-title{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0}.dialog-close-button{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s}.dialog-close-button:hover{background-color:#f3f4f6;color:#374151}.dialog-close-button:disabled{opacity:.5;cursor:not-allowed}.dialog-content{padding:0 24px;space-y:20px}.dialog-content>*+*{margin-top:20px}.submission-summary{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px}.summary-title{font-size:1rem;font-weight:600;color:#374151;margin:0 0 12px}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.summary-item{display:flex;justify-content:space-between;align-items:center}.summary-label{color:#6b7280;font-size:.875rem}.summary-value{color:#1f2937;font-weight:500;font-size:.875rem}.answer-statistics{background-color:#fefefe;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.statistics-title{font-size:1rem;font-weight:600;color:#374151;margin:0 0 16px}.statistics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stat-card{text-align:center;padding:12px;border-radius:6px;border:1px solid}.stat-card.stat-answered{background-color:#f0f9ff;border-color:#bae6fd}.stat-card.stat-unanswered{background-color:#fef3c7;border-color:#fcd34d}.stat-card.stat-completion{background-color:#f0fdf4;border-color:#bbf7d0}.stat-number{font-size:1.5rem;font-weight:700;line-height:1}.stat-answered .stat-number{color:#0369a1}.stat-unanswered .stat-number{color:#d97706}.stat-completion .stat-number{color:#16a34a}.stat-label{font-size:.75rem;color:#6b7280;margin-top:4px}.validation-errors{background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:16px}.error-title{font-size:1rem;font-weight:600;color:#dc2626;margin:0 0 12px;display:flex;align-items:center;gap:8px}.error-icon{font-size:1.125rem}.error-list{space-y:8px}.error-list>*+*{margin-top:8px}.error-item{color:#dc2626;font-size:.875rem;padding:8px 12px;background-color:#fff;border-radius:4px;border-left:3px solid #dc2626}.error-item.error-more{color:#7f1d1d;font-style:italic}.unanswered-questions{background-color:#fffbeb;border:1px solid #fed7aa;border-radius:8px;padding:16px}.unanswered-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.unanswered-title{font-size:1rem;font-weight:600;color:#d97706;margin:0;display:flex;align-items:center;gap:8px}.warning-icon{font-size:1.125rem}.toggle-details-button{background:none;border:1px solid #d97706;color:#d97706;font-size:.75rem;padding:4px 8px;border-radius:4px;cursor:pointer;transition:all .2s}.toggle-details-button:hover{background-color:#d97706;color:#fff}.unanswered-list{space-y:8px}.unanswered-list>*+*{margin-top:8px}.unanswered-item{display:flex;align-items:flex-start;gap:12px;padding:8px 12px;background-color:#fff;border-radius:4px;border-left:3px solid #d97706}.question-number{color:#d97706;font-weight:600;font-size:.875rem;flex-shrink:0}.question-text{color:#92400e;font-size:.875rem;line-height:1.4}.unanswered-item.unanswered-more{color:#92400e;font-style:italic;justify-content:center}.validation-warnings{background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:16px}.warning-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.warning-title{font-size:1rem;font-weight:600;color:#0369a1;margin:0;display:flex;align-items:center;gap:8px}.warning-list{space-y:8px}.warning-list>*+*{margin-top:8px}.warning-item{color:#0369a1;font-size:.875rem;padding:8px 12px;background-color:#fff;border-radius:4px;border-left:3px solid #0369a1}.force-submit-option{background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:16px}.force-submit-checkbox{display:flex;align-items:flex-start;gap:8px;cursor:pointer;margin-bottom:8px}.force-submit-checkbox input[type=checkbox]{margin-top:2px;flex-shrink:0}.checkbox-text{color:#dc2626;font-weight:500;font-size:.875rem}.force-submit-warning{color:#7f1d1d;font-size:.75rem;margin:0;padding-left:24px;line-height:1.4}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;padding:24px;border-top:1px solid #e5e7eb;margin-top:24px}.cancel-button,.confirm-button{padding:10px 20px;border-radius:6px;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.cancel-button{background-color:#fff;border:1px solid #d1d5db;color:#374151}.cancel-button:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.confirm-button{border:none}.confirm-button.confirm-normal{background-color:#16a34a;color:#fff}.confirm-button.confirm-normal:hover:not(:disabled){background-color:#15803d}.confirm-button.confirm-with-errors{background-color:#dc2626;color:#fff}.confirm-button.confirm-with-errors:hover:not(:disabled){background-color:#b91c1c}.loading-spinner{width:14px;height:14px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}.submission-notice{background-color:#f8fafc;border-top:1px solid #e2e8f0;padding:16px 24px;margin:0 -24px -24px;border-radius:0 0 12px 12px}.notice-text{color:#64748b;font-size:.875rem;margin:0;display:flex;align-items:center;gap:8px;text-align:center;justify-content:center}.notice-icon{font-size:1rem}@media (max-width: 640px){.submission-confirm-overlay{padding:10px}.submission-confirm-dialog{max-height:95vh}.summary-grid,.statistics-grid{grid-template-columns:1fr}.dialog-actions{flex-direction:column-reverse}.cancel-button,.confirm-button{width:100%;justify-content:center}}.exam-complete-container{max-width:800px;margin:0 auto;padding:24px;background-color:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a}.completion-header{text-align:center;padding:40px 0;border-bottom:1px solid #e5e7eb;margin-bottom:32px}.success-animation{margin-bottom:24px}.checkmark-container{display:inline-block;position:relative}.checkmark-circle{width:100px;height:100px;border-radius:50%;background:linear-gradient(135deg,#10b981,#059669);position:relative;animation:scaleIn .6s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 8px 25px #10b9814d}.checkmark{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:30px;height:15px;border:4px solid white;border-top:none;border-right:none;transform:translate(-50%,-60%) rotate(-45deg);animation:checkmarkDraw .4s ease-in-out .6s both}@keyframes scaleIn{0%{transform:scale(0);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}@keyframes checkmarkDraw{0%{width:0;height:0}50%{width:15px;height:0}to{width:30px;height:15px}}.completion-title{font-size:2.5rem;font-weight:800;color:#10b981;margin:0 0 12px;text-shadow:0 2px 4px rgba(16,185,129,.1)}.completion-subtitle{font-size:1.25rem;color:#6b7280;line-height:1.6;max-width:600px;margin:0 auto}.submission-summary,.detailed-statistics,.feedback-section,.next-steps{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:24px;margin-bottom:24px}.section-title{font-size:1.5rem;font-weight:700;color:#1f2937;margin:0 0 20px;display:flex;align-items:center;gap:8px}.section-title:before{content:"";width:4px;height:24px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:2px}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.summary-item{background-color:#fff;padding:16px;border-radius:8px;border:1px solid #e5e7eb;display:flex;flex-direction:column;gap:8px}.summary-label{font-size:.875rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.summary-value{font-size:1.125rem;color:#1f2937;font-weight:600}.submission-id{font-family:Monaco,Menlo,Ubuntu Mono,monospace;background-color:#f3f4f6;padding:8px 12px;border-radius:6px;font-size:.875rem;border:1px solid #d1d5db;word-break:break-all}.stats-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px}.stat-card{background-color:#fff;padding:20px;border-radius:12px;border:1px solid #e5e7eb;display:flex;align-items:center;gap:16px;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.stat-icon{font-size:2rem;flex-shrink:0}.stat-info{flex:1}.stat-number{font-size:2rem;font-weight:800;color:#1f2937;line-height:1;margin-bottom:4px}.stat-label{font-size:.875rem;color:#6b7280;font-weight:500}.stat-card.stat-primary{border-left:4px solid #3b82f6}.stat-card.stat-success{border-left:4px solid #10b981}.stat-card.stat-warning{border-left:4px solid #f59e0b}.stat-card.stat-info{border-left:4px solid #8b5cf6}.progress-visualization{background-color:#fff;padding:20px;border-radius:8px;border:1px solid #e5e7eb}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.progress-text{font-size:1rem;font-weight:600;color:#374151}.progress-percentage{font-size:1.25rem;font-weight:700;color:#10b981}.progress-bar{width:100%;height:12px;background-color:#e5e7eb;border-radius:6px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:6px;transition:width 1s ease-in-out;position:relative}.progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}.feedback-description{color:#6b7280;margin-bottom:24px;line-height:1.6}.feedback-form{space-y:24px}.feedback-form>*+*{margin-top:24px}.rating-section{background-color:#fff;padding:20px;border-radius:8px;border:1px solid #e5e7eb}.rating-label{display:block;font-size:1rem;font-weight:600;color:#374151;margin-bottom:12px}.star-rating{display:flex;gap:4px}.star{background:none;border:none;font-size:2rem;cursor:pointer;transition:all .2s;color:#d1d5db;padding:4px;border-radius:4px}.star:hover{transform:scale(1.1)}.star.star-filled{color:#fbbf24;text-shadow:0 2px 4px rgba(251,191,36,.3)}.star:disabled{cursor:not-allowed;opacity:.6}.text-feedback{background-color:#fff;padding:20px;border-radius:8px;border:1px solid #e5e7eb}.feedback-label{display:block;font-size:1rem;font-weight:600;color:#374151;margin-bottom:8px}.feedback-textarea{width:100%;padding:12px;border:2px solid #e5e7eb;border-radius:8px;font-size:.875rem;line-height:1.5;resize:vertical;transition:border-color .2s;font-family:inherit}.feedback-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.char-count{text-align:right;font-size:.75rem;color:#9ca3af;margin-top:4px}.submit-feedback-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border:none;padding:12px 32px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px;margin:0 auto}.submit-feedback-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #3b82f64d}.submit-feedback-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.loading-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.feedback-success{text-align:center;padding:40px 20px;background-color:#fff;border-radius:8px;border:1px solid #e5e7eb}.feedback-success-icon{font-size:3rem;margin-bottom:16px}.feedback-success-title{font-size:1.5rem;font-weight:700;color:#10b981;margin:0 0 12px}.feedback-success-message{color:#6b7280;line-height:1.6;margin:0}.steps-timeline{space-y:20px}.steps-timeline>*+*{margin-top:20px}.step-item{display:flex;align-items:flex-start;gap:16px;background-color:#fff;padding:20px;border-radius:8px;border:1px solid #e5e7eb;position:relative}.step-item:not(:last-child):after{content:"";position:absolute;left:31px;top:60px;width:2px;height:20px;background-color:#e5e7eb}.step-number{width:32px;height:32px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem;flex-shrink:0}.step-content{flex:1}.step-title{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0 0 8px}.step-description{color:#6b7280;line-height:1.5;margin:0}.action-section{text-align:center;padding:24px 0;border-top:1px solid #e5e7eb;margin-top:32px}.primary-actions{display:flex;justify-content:center;gap:16px}.action-btn{display:flex;align-items:center;gap:8px;padding:14px 28px;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;text-decoration:none;border:none}.primary-btn{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;box-shadow:0 4px 14px #3b82f64d}.primary-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #3b82f666}.secondary-btn{background-color:#fff;color:#3b82f6;border:2px solid #3b82f6}.secondary-btn:hover{background-color:#3b82f6;color:#fff;transform:translateY(-2px);box-shadow:0 8px 25px #3b82f64d}.btn-icon{font-size:1.125rem}.important-notice{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:12px;padding:24px;margin-top:24px}.notice-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.notice-icon{font-size:1.5rem}.notice-title{font-size:1.25rem;font-weight:700;color:#92400e;margin:0}.notice-list{margin:0;padding-left:20px;color:#92400e}.notice-list li{line-height:1.6;margin-bottom:8px}.notice-list li:last-child{margin-bottom:0}.notice-list code{background-color:#92400e1a;padding:2px 6px;border-radius:4px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875rem}@media (max-width: 768px){.exam-complete-container{padding:16px;margin:16px}.completion-title{font-size:2rem}.completion-subtitle{font-size:1.125rem}.summary-grid{grid-template-columns:1fr}.stats-overview{grid-template-columns:repeat(2,1fr)}.primary-actions{flex-direction:column}.action-btn{width:100%;justify-content:center}.step-item{flex-direction:column;text-align:center}.step-item:after{display:none}.checkmark-circle{width:80px;height:80px}.checkmark{width:24px;height:12px}}@media (max-width: 480px){.stats-overview{grid-template-columns:1fr}.stat-card{padding:16px}.stat-number{font-size:1.5rem}.completion-header{padding:24px 0}.section-title{font-size:1.25rem}}.loading-indicator{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;text-align:center}.loading-content{display:flex;flex-direction:column;align-items:center;gap:12px;max-width:300px}.loading-small{padding:12px}.loading-small .loading-content{gap:8px;max-width:200px}.loading-medium{padding:20px}.loading-large{padding:32px}.loading-large .loading-content{gap:16px;max-width:400px}.loading-xlarge{padding:48px}.loading-xlarge .loading-content{gap:20px;max-width:500px}.loading-spinner{display:flex;gap:4px;align-items:center}.loading-spinner-circle{width:8px;height:8px;border-radius:50%;background-color:#3b82f6;animation:loading-bounce 1.4s ease-in-out infinite both}.loading-spinner-circle:nth-child(1){animation-delay:-.32s}.loading-spinner-circle:nth-child(2){animation-delay:-.16s}.loading-small .loading-spinner-circle{width:6px;height:6px}.loading-large .loading-spinner-circle{width:10px;height:10px}.loading-xlarge .loading-spinner-circle{width:12px;height:12px}@keyframes loading-bounce{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}.loading-message{font-size:14px;color:#6b7280;font-weight:500;line-height:1.4}.loading-small .loading-message{font-size:12px}.loading-large .loading-message{font-size:16px}.loading-xlarge .loading-message{font-size:18px}.loading-progress{display:flex;align-items:center;gap:8px;width:100%;min-width:200px}.loading-progress-bar{flex:1;height:6px;background-color:#e5e7eb;border-radius:3px;overflow:hidden}.loading-progress-fill{height:100%;background-color:#3b82f6;border-radius:3px;transition:width .3s ease;background-image:linear-gradient(45deg,rgba(255,255,255,.2) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.2) 50%,rgba(255,255,255,.2) 75%,transparent 75%,transparent);background-size:20px 20px;animation:loading-progress-stripes 1s linear infinite}@keyframes loading-progress-stripes{0%{background-position:0 0}to{background-position:20px 0}}.loading-progress-text{font-size:12px;color:#6b7280;font-weight:500;min-width:35px;text-align:right}.loading-duration{font-size:11px;color:#9ca3af;font-family:monospace}.loading-cancel{background:none;border:1px solid #d1d5db;border-radius:4px;padding:4px;cursor:pointer;color:#6b7280;transition:all .2s ease;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.loading-cancel:hover{background-color:#f3f4f6;border-color:#9ca3af;color:#374151}.loading-cancel svg{width:14px;height:14px}.loading-overlay{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center}.loading-overlay-backdrop{position:absolute;inset:0;background-color:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.loading-overlay .loading-indicator{position:relative;background-color:#fff;border-radius:8px;box-shadow:0 10px 25px #0003;min-width:200px}.simple-spinner{display:inline-block}.simple-spinner-circle{width:20px;height:20px;border:2px solid #e5e7eb;border-top:2px solid #3b82f6;border-radius:50%;animation:simple-spin 1s linear infinite}.spinner-small .simple-spinner-circle{width:16px;height:16px;border-width:2px}.spinner-medium .simple-spinner-circle{width:20px;height:20px;border-width:2px}.spinner-large .simple-spinner-circle{width:32px;height:32px;border-width:3px}@keyframes simple-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.progress-bar{display:flex;align-items:center;gap:8px;width:100%}.progress-bar-track{flex:1;height:8px;background-color:#e5e7eb;border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.progress-bar-blue{background-color:#3b82f6}.progress-bar-green{background-color:#10b981}.progress-bar-red{background-color:#ef4444}.progress-bar-yellow{background-color:#f59e0b}.progress-bar-text{font-size:12px;color:#6b7280;font-weight:500;min-width:35px;text-align:right}.skeleton-loader{display:flex;flex-direction:column;gap:8px}.skeleton-line{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:4px}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 640px){.loading-indicator{padding:16px}.loading-content{gap:10px;max-width:250px}.loading-message{font-size:13px}.loading-progress{min-width:150px}.loading-overlay .loading-indicator{margin:20px;min-width:180px}}@media (prefers-color-scheme: dark){.loading-message{color:#d1d5db}.loading-progress-bar{background-color:#374151}.loading-progress-text{color:#d1d5db}.loading-duration{color:#9ca3af}.loading-cancel{border-color:#4b5563;color:#d1d5db}.loading-cancel:hover{background-color:#374151;border-color:#6b7280;color:#f3f4f6}.loading-overlay .loading-indicator{background-color:#1f2937}.simple-spinner-circle{border-color:#374151;border-top-color:#3b82f6}.progress-bar-track{background-color:#374151}.progress-bar-text{color:#d1d5db}.skeleton-line{background:linear-gradient(90deg,#374151 25%,#4b5563,#374151 75%);background-size:200% 100%}}.feedback-notification{display:flex;align-items:flex-start;padding:12px 16px;margin-bottom:8px;border-radius:8px;border:1px solid;background-color:#fff;box-shadow:0 4px 12px #0000001a;min-width:300px;max-width:500px;opacity:0;transform:translate(100%);transition:all .3s ease}.feedback-visible{opacity:1;transform:translate(0)}.feedback-exiting{opacity:0;transform:translate(100%)}.feedback-success{border-color:#10b981;background-color:#f0fdf4;color:#065f46}.feedback-error{border-color:#ef4444;background-color:#fef2f2;color:#991b1b}.feedback-warning{border-color:#f59e0b;background-color:#fffbeb;color:#92400e}.feedback-info{border-color:#3b82f6;background-color:#eff6ff;color:#1e40af}.feedback-loading{border-color:#6b7280;background-color:#f9fafb;color:#374151}.feedback-content{display:flex;align-items:flex-start;justify-content:space-between;width:100%;gap:12px}.feedback-main{display:flex;align-items:flex-start;gap:8px;flex:1}.feedback-icon,.feedback-loading-spinner{width:20px;height:20px;flex-shrink:0;margin-top:1px}.feedback-spinner-circle{width:20px;height:20px;border:2px solid currentColor;border-top:2px solid transparent;border-radius:50%;animation:feedback-spin 1s linear infinite;opacity:.7}@keyframes feedback-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.feedback-text{flex:1;min-width:0}.feedback-title{font-size:14px;font-weight:600;margin-bottom:2px;line-height:1.4}.feedback-message{font-size:13px;line-height:1.4;opacity:.9;word-wrap:break-word}.feedback-actions{display:flex;align-items:flex-start;gap:6px;flex-shrink:0}.feedback-action-button{padding:4px 8px;border:none;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.feedback-action-default{background-color:currentColor;color:#fff}.feedback-action-primary{background-color:#3b82f6;color:#fff}.feedback-action-secondary{background-color:transparent;color:currentColor;border:1px solid currentColor}.feedback-action-danger{background-color:#ef4444;color:#fff}.feedback-action-button:hover{opacity:.9;transform:translateY(-1px)}.feedback-dismiss-button{background:none;border:none;padding:2px;cursor:pointer;color:currentColor;opacity:.6;transition:opacity .2s ease;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:4px}.feedback-dismiss-button:hover{opacity:1;background-color:#0000001a}.feedback-dismiss-button svg{width:14px;height:14px}.feedback-container{position:fixed;z-index:9999;pointer-events:none}.feedback-container>*{pointer-events:auto}.feedback-position-top-center{top:20px;left:50%;transform:translate(-50%)}.feedback-position-top-right{top:20px;right:20px}.feedback-position-bottom-center{bottom:20px;left:50%;transform:translate(-50%)}.feedback-position-bottom-right{bottom:20px;right:20px}.feedback-position-center{top:50%;left:50%;transform:translate(-50%,-50%)}.feedback-position-bottom-center .feedback-notification,.feedback-position-bottom-right .feedback-notification{transform:translateY(100%)}.feedback-position-bottom-center .feedback-visible,.feedback-position-bottom-right .feedback-visible{transform:translateY(0)}.feedback-position-bottom-center .feedback-exiting,.feedback-position-bottom-right .feedback-exiting{transform:translateY(100%)}.feedback-position-top-left .feedback-notification,.feedback-position-bottom-left .feedback-notification{transform:translate(-100%)}.feedback-position-top-left .feedback-visible,.feedback-position-bottom-left .feedback-visible{transform:translate(0)}.feedback-position-top-left .feedback-exiting,.feedback-position-bottom-left .feedback-exiting{transform:translate(-100%)}.feedback-position-center .feedback-notification{transform:scale(.8);opacity:0}.feedback-position-center .feedback-visible{transform:scale(1);opacity:1}.feedback-position-center .feedback-exiting{transform:scale(.8);opacity:0}@media (max-width: 640px){.feedback-notification{min-width:280px;max-width:calc(100vw - 40px);margin-bottom:6px;padding:10px 12px}.feedback-container{left:20px!important;right:20px!important;transform:none!important}.feedback-position-top-center,.feedback-position-bottom-center{left:20px;right:20px;transform:none}.feedback-main{gap:6px}.feedback-content{gap:8px}.feedback-title{font-size:13px}.feedback-message{font-size:12px}.feedback-action-button{padding:3px 6px;font-size:11px}.feedback-actions{gap:4px}}@media (prefers-color-scheme: dark){.feedback-notification{background-color:#1f2937;box-shadow:0 4px 12px #0000004d}.feedback-success{background-color:#064e3b;border-color:#10b981;color:#6ee7b7}.feedback-error{background-color:#7f1d1d;border-color:#ef4444;color:#fca5a5}.feedback-warning{background-color:#78350f;border-color:#f59e0b;color:#fbbf24}.feedback-info{background-color:#1e3a8a;border-color:#3b82f6;color:#93c5fd}.feedback-loading{background-color:#374151;border-color:#6b7280;color:#d1d5db}.feedback-dismiss-button:hover{background-color:#ffffff1a}}@media (prefers-contrast: high){.feedback-notification{border-width:2px;box-shadow:0 2px 8px #0000004d}.feedback-action-button,.feedback-dismiss-button{border:1px solid currentColor}}@media (prefers-reduced-motion: reduce){.feedback-notification{transition:opacity .2s ease}.feedback-spinner-circle{animation:none}.feedback-action-button:hover{transform:none}}.confirm-overlay{position:fixed;inset:0;background-color:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:confirm-overlay-enter .2s ease-out}@keyframes confirm-overlay-enter{0%{opacity:0}to{opacity:1}}.confirm-dialog{background-color:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:400px;width:100%;max-height:90vh;overflow:hidden;animation:confirm-dialog-enter .3s ease-out}@keyframes confirm-dialog-enter{0%{opacity:0;transform:scale(.9) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.confirm-header{display:flex;align-items:center;gap:12px;padding:24px 24px 16px}.confirm-icon{width:24px;height:24px;flex-shrink:0}.confirm-icon-danger{color:#ef4444}.confirm-icon-warning{color:#f59e0b}.confirm-icon-success{color:#10b981}.confirm-icon-info{color:#3b82f6}.confirm-title{font-size:18px;font-weight:600;color:#111827;margin:0;line-height:1.4}.confirm-body{padding:0 24px 24px}.confirm-message{font-size:14px;color:#6b7280;line-height:1.5;margin:0}.confirm-footer{display:flex;gap:8px;justify-content:flex-end;padding:16px 24px 24px;background-color:#f9fafb;border-top:1px solid #e5e7eb}.confirm-button{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:80px;display:inline-flex;align-items:center;justify-content:center}.confirm-button:focus{outline:none;ring:2px;ring-offset:2px}.confirm-button:disabled{opacity:.5;cursor:not-allowed}.confirm-button-cancel{background-color:#fff;color:#374151;border:1px solid #d1d5db}.confirm-button-cancel:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.confirm-button-cancel:focus{ring-color:#9ca3af}.confirm-button-primary{background-color:#3b82f6;color:#fff}.confirm-button-primary:hover:not(:disabled){background-color:#2563eb}.confirm-button-primary:focus{ring-color:#3b82f6}.confirm-button-danger{background-color:#ef4444;color:#fff}.confirm-button-danger:hover:not(:disabled){background-color:#dc2626}.confirm-button-danger:focus{ring-color:#ef4444}.confirm-button-warning{background-color:#f59e0b;color:#fff}.confirm-button-warning:hover:not(:disabled){background-color:#d97706}.confirm-button-warning:focus{ring-color:#f59e0b}.confirm-button-success{background-color:#10b981;color:#fff}.confirm-button-success:hover:not(:disabled){background-color:#059669}.confirm-button-success:focus{ring-color:#10b981}@media (max-width: 640px){.confirm-overlay{padding:16px}.confirm-dialog{max-width:none;width:100%;border-radius:8px}.confirm-header{padding:20px 20px 12px}.confirm-title{font-size:16px}.confirm-body{padding:0 20px 20px}.confirm-message{font-size:13px}.confirm-footer{padding:12px 20px 20px;flex-direction:column-reverse}.confirm-button{width:100%;padding:10px 16px}}@media (prefers-color-scheme: dark){.confirm-dialog{background-color:#1f2937}.confirm-title{color:#f9fafb}.confirm-message{color:#d1d5db}.confirm-footer{background-color:#111827;border-top-color:#374151}.confirm-button-cancel{background-color:#374151;color:#d1d5db;border-color:#4b5563}.confirm-button-cancel:hover:not(:disabled){background-color:#4b5563;border-color:#6b7280}}@media (prefers-contrast: high){.confirm-dialog{border:2px solid #000}.confirm-button{border:2px solid currentColor}.confirm-button-cancel{border-color:#374151}}@media (prefers-reduced-motion: reduce){.confirm-overlay,.confirm-dialog{animation:none}.confirm-button{transition:none}}:root{--breakpoint-xs: 320px;--breakpoint-sm: 480px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px;--mobile-padding-xs: 8px;--mobile-padding-sm: 12px;--mobile-padding-md: 16px;--mobile-padding-lg: 20px;--mobile-padding-xl: 24px;--mobile-text-xs: 12px;--mobile-text-sm: 14px;--mobile-text-base: 16px;--mobile-text-lg: 18px;--mobile-text-xl: 20px;--mobile-text-2xl: 24px;--mobile-text-3xl: 30px;--touch-target-min: 44px;--touch-target-comfortable: 48px;--mobile-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--mobile-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--mobile-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--mobile-radius-sm: 4px;--mobile-radius-md: 8px;--mobile-radius-lg: 12px;--mobile-radius-xl: 16px;--animation-fast: .15s;--animation-normal: .3s;--animation-slow: .5s}.container-responsive{width:100%;max-width:1280px;margin:0 auto;padding:0 var(--mobile-padding-md)}@media (min-width: 640px){.container-responsive{padding:0 var(--mobile-padding-lg)}}@media (min-width: 1024px){.container-responsive{padding:0 var(--mobile-padding-xl)}}.touch-target{min-height:var(--touch-target-min);min-width:var(--touch-target-min);display:flex;align-items:center;justify-content:center}.touch-target-comfortable{min-height:var(--touch-target-comfortable);min-width:var(--touch-target-comfortable)}.btn-mobile{padding:12px 20px;font-size:var(--mobile-text-base);font-weight:500;border-radius:var(--mobile-radius-md);border:none;cursor:pointer;transition:all var(--animation-fast) ease;min-height:var(--touch-target-min);display:flex;align-items:center;justify-content:center;gap:8px}@media (max-width: 767px){.btn-mobile{padding:14px 24px;font-size:var(--mobile-text-lg);min-height:var(--touch-target-comfortable)}}.input-mobile{padding:12px 16px;font-size:var(--mobile-text-base);border:2px solid #e5e7eb;border-radius:var(--mobile-radius-md);transition:border-color var(--animation-fast) ease;min-height:var(--touch-target-min)}@media (max-width: 767px){.input-mobile{padding:14px 18px;font-size:var(--mobile-text-lg);min-height:var(--touch-target-comfortable)}}.input-mobile:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.card-mobile{background:#fff;border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-md);padding:var(--mobile-padding-lg);margin-bottom:var(--mobile-padding-md)}@media (max-width: 767px){.card-mobile{border-radius:var(--mobile-radius-md);padding:var(--mobile-padding-md);margin-bottom:var(--mobile-padding-sm)}}.grid-responsive{display:grid;gap:var(--mobile-padding-md)}.grid-responsive.cols-1{grid-template-columns:1fr}.grid-responsive.cols-2{grid-template-columns:repeat(2,1fr)}@media (max-width: 767px){.grid-responsive.cols-2{grid-template-columns:1fr}}.grid-responsive.cols-3{grid-template-columns:repeat(3,1fr)}@media (max-width: 1023px){.grid-responsive.cols-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 767px){.grid-responsive.cols-3{grid-template-columns:1fr}}.grid-responsive.cols-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1023px){.grid-responsive.cols-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 767px){.grid-responsive.cols-4{grid-template-columns:1fr}}.flex-responsive{display:flex;gap:var(--mobile-padding-md)}@media (max-width: 767px){.flex-responsive.mobile-column{flex-direction:column}.flex-responsive.mobile-wrap{flex-wrap:wrap}}.text-responsive{line-height:1.6}.text-responsive.size-sm{font-size:var(--mobile-text-sm)}.text-responsive.size-base{font-size:var(--mobile-text-base)}.text-responsive.size-lg{font-size:var(--mobile-text-lg)}.text-responsive.size-xl{font-size:var(--mobile-text-xl)}.text-responsive.size-2xl{font-size:var(--mobile-text-2xl)}.text-responsive.size-3xl{font-size:var(--mobile-text-3xl)}.spacing-responsive{padding:var(--mobile-padding-md)}@media (max-width: 767px){.spacing-responsive{padding:var(--mobile-padding-sm)}}.spacing-responsive.lg{padding:var(--mobile-padding-lg)}@media (max-width: 767px){.spacing-responsive.lg{padding:var(--mobile-padding-md)}}.spacing-responsive.xl{padding:var(--mobile-padding-xl)}@media (max-width: 767px){.spacing-responsive.xl{padding:var(--mobile-padding-lg)}}.modal-responsive{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--mobile-padding-lg)}@media (max-width: 767px){.modal-responsive{padding:var(--mobile-padding-sm);align-items:flex-end}}.modal-content-responsive{background:#fff;border-radius:var(--mobile-radius-lg);box-shadow:var(--mobile-shadow-lg);max-width:600px;width:100%;max-height:90vh;overflow-y:auto}@media (max-width: 767px){.modal-content-responsive{border-radius:var(--mobile-radius-lg) var(--mobile-radius-lg) 0 0;max-height:95vh}}.nav-responsive{display:flex;align-items:center;gap:var(--mobile-padding-md);padding:var(--mobile-padding-md)}@media (max-width: 767px){.nav-responsive{flex-direction:column;gap:var(--mobile-padding-sm);padding:var(--mobile-padding-sm)}}.form-responsive{display:flex;flex-direction:column;gap:var(--mobile-padding-lg)}@media (max-width: 767px){.form-responsive{gap:var(--mobile-padding-md)}}.form-group-responsive{display:flex;flex-direction:column;gap:var(--mobile-padding-sm)}.form-row-responsive{display:flex;gap:var(--mobile-padding-md)}@media (max-width: 767px){.form-row-responsive{flex-direction:column;gap:var(--mobile-padding-sm)}}.image-responsive{max-width:100%;height:auto;border-radius:var(--mobile-radius-md)}.image-container-responsive{position:relative;overflow:hidden;border-radius:var(--mobile-radius-md)}.loading-responsive{display:flex;align-items:center;justify-content:center;padding:var(--mobile-padding-xl)}.spinner-responsive{width:32px;height:32px;border:3px solid #e5e7eb;border-top:3px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 767px){.spinner-responsive{width:40px;height:40px;border-width:4px}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-responsive{background:#fef2f2;border:1px solid #fecaca;border-radius:var(--mobile-radius-md);padding:var(--mobile-padding-md);color:#dc2626}.success-responsive{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:var(--mobile-radius-md);padding:var(--mobile-padding-md);color:#16a34a}.warning-responsive{background:#fffbeb;border:1px solid #fed7aa;border-radius:var(--mobile-radius-md);padding:var(--mobile-padding-md);color:#d97706}.info-responsive{background:#f0f9ff;border:1px solid #bae6fd;border-radius:var(--mobile-radius-md);padding:var(--mobile-padding-md);color:#0369a1}.scrollbar-responsive{scrollbar-width:thin;scrollbar-color:#cbd5e1 #f1f5f9}.scrollbar-responsive::-webkit-scrollbar{width:8px;height:8px}.scrollbar-responsive::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.scrollbar-responsive::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.scrollbar-responsive::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width: 767px){.scrollbar-responsive::-webkit-scrollbar{width:12px;height:12px}}.focus-visible-responsive:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}@media (prefers-reduced-motion: reduce){.animation-responsive,.animation-responsive *,.animation-responsive *:before,.animation-responsive *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast: high){.high-contrast-responsive{border-width:2px;border-color:currentColor}.high-contrast-responsive.btn-mobile{border:2px solid currentColor}.high-contrast-responsive.input-mobile{border-width:3px}}@media (prefers-color-scheme: dark){.dark-mode-responsive{background-color:#1f2937;color:#f9fafb}.dark-mode-responsive .card-mobile{background-color:#374151;border:1px solid #4b5563}.dark-mode-responsive .input-mobile{background-color:#374151;border-color:#4b5563;color:#f9fafb}.dark-mode-responsive .input-mobile:focus{border-color:#60a5fa}}@media print{.print-hidden-responsive{display:none!important}.print-visible-responsive{display:block!important}.card-mobile{box-shadow:none;border:1px solid #e5e7eb}.btn-mobile{border:1px solid currentColor}}@media (max-width: 767px) and (orientation: landscape){.landscape-responsive{padding:var(--mobile-padding-sm)}.landscape-responsive .modal-responsive{align-items:center}.landscape-responsive .modal-content-responsive{max-height:85vh;border-radius:var(--mobile-radius-lg)}}@supports (padding: max(0px)){.safe-area-responsive{padding-left:max(var(--mobile-padding-md),env(safe-area-inset-left));padding-right:max(var(--mobile-padding-md),env(safe-area-inset-right));padding-top:max(var(--mobile-padding-md),env(safe-area-inset-top));padding-bottom:max(var(--mobile-padding-md),env(safe-area-inset-bottom))}}.gesture-responsive{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.swipe-responsive{touch-action:pan-x}.pinch-zoom-responsive{touch-action:pinch-zoom}.performance-responsive{will-change:transform;transform:translateZ(0)}.performance-responsive.scrolling{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.text-select-responsive{-webkit-user-select:text;-moz-user-select:text;user-select:text}.text-no-select-responsive{-webkit-user-select:none;-moz-user-select:none;user-select:none}.tooltip-responsive{position:relative}.tooltip-responsive:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#1f2937;color:#fff;padding:8px 12px;border-radius:var(--mobile-radius-sm);font-size:var(--mobile-text-sm);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--animation-fast) ease;z-index:1000}.tooltip-responsive:hover:after{opacity:1}@media (max-width: 767px){.tooltip-responsive:after{display:none}}.sticky-responsive{position:sticky;top:0;z-index:100}@media (max-width: 767px){.sticky-responsive{position:relative}}.touch-interactive{-webkit-tap-highlight-color:rgba(0,0,0,.1);-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;transition:all .15s ease}.touch-interactive:active{transform:scale(.98);opacity:.8}.touch-feedback{position:relative;overflow:hidden}.touch-feedback:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease;pointer-events:none}.touch-feedback:active:before{width:200px;height:200px}.long-press{-webkit-touch-callout:default}.long-press:active{animation:longPressAnimation .8s ease-in-out}@keyframes longPressAnimation{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.swipeable{touch-action:pan-x;position:relative;overflow:hidden}.swipeable.swiping{transition:transform .1s ease-out}.swipeable.swipe-left{transform:translate(-20px)}.swipeable.swipe-right{transform:translate(20px)}.swipeable.swipe-up{transform:translateY(-20px)}.swipeable.swipe-down{transform:translateY(20px)}.draggable{touch-action:none;cursor:grab;transition:transform .2s ease,box-shadow .2s ease}.draggable:active,.draggable.dragging{cursor:grabbing;transform:scale(1.05) rotate(2deg);box-shadow:0 8px 25px #00000026;z-index:1000}.draggable.drag-over{transform:scale(1.02);box-shadow:0 0 0 2px #3b82f6}.drop-zone{position:relative;transition:all .2s ease}.drop-zone.drag-over{background-color:#3b82f61a;border:2px dashed #3b82f6;transform:scale(1.02)}.drop-zone:after{content:"";position:absolute;inset:0;background:linear-gradient(45deg,transparent 40%,rgba(59,130,246,.1) 50%,transparent 60%);opacity:0;transition:opacity .3s ease;pointer-events:none}.drop-zone.drag-over:after{opacity:1;animation:shimmer 1s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.pinch-zoomable{touch-action:pinch-zoom;transform-origin:center;transition:transform .2s ease}.pinch-zoomable.zooming{transition:none}.double-tap-zoom{touch-action:manipulation;transition:transform .3s ease}.double-tap-zoom.zoomed{transform:scale(1.5)}.smooth-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scroll-behavior:smooth}.momentum-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:auto}.touch-slider{position:relative;touch-action:pan-x;overflow:hidden}.touch-slider-track{display:flex;transition:transform .3s ease}.touch-slider-track.sliding{transition:none}.touch-slider-item{flex:0 0 100%;touch-action:pan-y}.touch-button{position:relative;overflow:hidden;border:none;background:none;padding:12px 24px;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s ease;min-height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;gap:8px}.touch-button:active{transform:scale(.95)}.touch-button.primary{background:#3b82f6;color:#fff}.touch-button.primary:hover{background:#2563eb}.touch-button.secondary{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.touch-button.secondary:hover{background:#e5e7eb}.touch-button.danger{background:#ef4444;color:#fff}.touch-button.danger:hover{background:#dc2626}.touch-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.touch-input{padding:14px 16px;font-size:16px;border:2px solid #e5e7eb;border-radius:8px;transition:border-color .2s ease,box-shadow .2s ease;min-height:44px;width:100%;background:#fff}.touch-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.touch-input::-moz-placeholder{color:#9ca3af}.touch-input::placeholder{color:#9ca3af}.touch-select{position:relative;display:inline-block;width:100%}.touch-select select{width:100%;padding:14px 40px 14px 16px;font-size:16px;border:2px solid #e5e7eb;border-radius:8px;background:#fff;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:44px}.touch-select:after{content:"▼";position:absolute;right:16px;top:50%;transform:translateY(-50%);pointer-events:none;color:#6b7280}.touch-checkbox,.touch-radio{position:relative;display:inline-flex;align-items:center;gap:12px;cursor:pointer;padding:8px;border-radius:8px;transition:background-color .2s ease;min-height:44px}.touch-checkbox:hover,.touch-radio:hover{background-color:#3b82f60d}.touch-checkbox input,.touch-radio input{width:20px;height:20px;margin:0;cursor:pointer}.touch-checkbox label,.touch-radio label{cursor:pointer;font-size:16px;line-height:1.5}.touch-switch{position:relative;display:inline-block;width:52px;height:28px;cursor:pointer}.touch-switch input{opacity:0;width:0;height:0}.touch-switch-slider{position:absolute;inset:0;background-color:#cbd5e1;border-radius:28px;transition:.3s}.touch-switch-slider:before{position:absolute;content:"";height:20px;width:20px;left:4px;bottom:4px;background-color:#fff;border-radius:50%;transition:.3s;box-shadow:0 2px 4px #0003}.touch-switch input:checked+.touch-switch-slider{background-color:#3b82f6}.touch-switch input:checked+.touch-switch-slider:before{transform:translate(24px)}.touch-tabs{display:flex;border-bottom:1px solid #e5e7eb;overflow-x:auto;-webkit-overflow-scrolling:touch}.touch-tab{flex:0 0 auto;padding:12px 20px;font-size:16px;font-weight:500;color:#6b7280;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .2s ease;min-height:44px;white-space:nowrap}.touch-tab:hover{color:#374151;background-color:#3b82f60d}.touch-tab.active{color:#3b82f6;border-bottom-color:#3b82f6}.touch-accordion{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.touch-accordion-item{border-bottom:1px solid #e5e7eb}.touch-accordion-item:last-child{border-bottom:none}.touch-accordion-header{width:100%;padding:16px 20px;font-size:16px;font-weight:500;text-align:left;background:#f9fafb;border:none;cursor:pointer;transition:background-color .2s ease;min-height:44px;display:flex;align-items:center;justify-content:space-between}.touch-accordion-header:hover{background:#f3f4f6}.touch-accordion-header.active{background:#e0f2fe;color:#0369a1}.touch-accordion-icon{transition:transform .2s ease}.touch-accordion-header.active .touch-accordion-icon{transform:rotate(180deg)}.touch-accordion-content{padding:0 20px;max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease}.touch-accordion-content.active{padding:16px 20px;max-height:1000px}.touch-modal{position:fixed;inset:0;background:#00000080;display:flex;align-items:flex-end;justify-content:center;z-index:1000;padding:0;touch-action:none}@media (min-width: 768px){.touch-modal{align-items:center;padding:20px}}.touch-modal-content{background:#fff;border-radius:16px 16px 0 0;width:100%;max-height:90vh;overflow-y:auto;-webkit-overflow-scrolling:touch;transform:translateY(100%);transition:transform .3s ease}.touch-modal.active .touch-modal-content{transform:translateY(0)}@media (min-width: 768px){.touch-modal-content{border-radius:16px;max-width:600px;max-height:80vh;transform:scale(.9) translateY(20px);opacity:0}.touch-modal.active .touch-modal-content{transform:scale(1) translateY(0);opacity:1}}.touch-modal-handle{width:40px;height:4px;background:#d1d5db;border-radius:2px;margin:12px auto 20px;cursor:grab}.touch-modal-handle:active{cursor:grabbing}.touch-tooltip{position:relative;display:inline-block}.touch-tooltip-content{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#1f2937;color:#fff;padding:8px 12px;border-radius:6px;font-size:14px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:1000}.touch-tooltip-content:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#1f2937}.touch-tooltip:hover .touch-tooltip-content,.touch-tooltip:focus .touch-tooltip-content{opacity:1}@media (max-width: 767px){.touch-tooltip-content{display:none}}.touch-progress{width:100%;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden;cursor:pointer;touch-action:pan-x}.touch-progress-fill{height:100%;background:#3b82f6;border-radius:4px;transition:width .3s ease}.touch-progress-thumb{position:relative}.touch-progress-thumb:after{content:"";position:absolute;right:-6px;top:-4px;width:16px;height:16px;background:#3b82f6;border-radius:50%;box-shadow:0 2px 4px #0003;opacity:0;transition:opacity .2s ease}.touch-progress:active .touch-progress-thumb:after{opacity:1}.touch-range{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:8px;background:#e5e7eb;border-radius:4px;outline:none;cursor:pointer}.touch-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;background:#3b82f6;border-radius:50%;cursor:pointer;box-shadow:0 2px 4px #0003;-webkit-transition:transform .2s ease;transition:transform .2s ease}.touch-range::-webkit-slider-thumb:active{transform:scale(1.2)}.touch-range::-moz-range-thumb{width:20px;height:20px;background:#3b82f6;border-radius:50%;cursor:pointer;border:none;box-shadow:0 2px 4px #0003;-moz-transition:transform .2s ease;transition:transform .2s ease}.touch-range::-moz-range-thumb:active{transform:scale(1.2)}@keyframes touchRipple{0%{transform:scale(0);opacity:1}to{transform:scale(4);opacity:0}}.touch-ripple{position:relative;overflow:hidden}.touch-ripple:after{content:"";position:absolute;border-radius:50%;background:#fff9;transform:scale(0);animation:touchRipple .6s linear;pointer-events:none}.prevent-zoom{touch-action:manipulation}.optimized-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scroll-behavior:smooth;will-change:scroll-position}.touch-spacing{padding:12px;margin:8px 0}@media (max-width: 767px){.touch-spacing{padding:16px;margin:12px 0}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.inset-y-0{top:0;bottom:0}.left-0{left:0}.right-0{right:0}.right-2{right:.5rem}.right-4{right:1rem}.top-2{top:.5rem}.top-4{top:1rem}.z-10{z-index:10}.z-50{z-index:50}.m-1{margin:.25rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.-ml-1{margin-left:-.25rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-0\.5{height:.125rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-32{height:8rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-8{height:2rem}.h-auto{height:auto}.h-full{height:100%}.max-h-32{max-height:8rem}.max-h-40{max-height:10rem}.max-h-60{max-height:15rem}.max-h-96{max-height:24rem}.max-h-\[80vh\]{max-height:80vh}.max-h-\[90vh\]{max-height:90vh}.max-h-screen{max-height:100vh}.min-h-\[100px\]{min-height:100px}.min-h-\[60px\]{min-height:60px}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-2{width:.5rem}.w-3{width:.75rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-8{width:2rem}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-48{min-width:12rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-6xl{max-width:72rem}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.-rotate-6{--tw-rotate: -6deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-12{--tw-rotate: 12deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-move{cursor:move}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize{resize:both}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-12>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(3rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(3rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-pre-line{white-space:pre-line}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-b-lg{border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l-4{border-left-width:4px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-blue-100{--tw-border-opacity: 1;border-color:rgb(219 234 254 / var(--tw-border-opacity, 1))}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-blue-300{--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1))}.border-blue-400{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-blue-600{--tw-border-opacity: 1;border-color:rgb(37 99 235 / var(--tw-border-opacity, 1))}.border-blue-700{--tw-border-opacity: 1;border-color:rgb(29 78 216 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.border-green-300{--tw-border-opacity: 1;border-color:rgb(134 239 172 / var(--tw-border-opacity, 1))}.border-green-500{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity, 1))}.border-green-600{--tw-border-opacity: 1;border-color:rgb(22 163 74 / var(--tw-border-opacity, 1))}.border-indigo-300{--tw-border-opacity: 1;border-color:rgb(165 180 252 / var(--tw-border-opacity, 1))}.border-orange-300{--tw-border-opacity: 1;border-color:rgb(253 186 116 / var(--tw-border-opacity, 1))}.border-purple-200{--tw-border-opacity: 1;border-color:rgb(233 213 255 / var(--tw-border-opacity, 1))}.border-purple-300{--tw-border-opacity: 1;border-color:rgb(216 180 254 / var(--tw-border-opacity, 1))}.border-red-200{--tw-border-opacity: 1;border-color:rgb(254 202 202 / var(--tw-border-opacity, 1))}.border-red-300{--tw-border-opacity: 1;border-color:rgb(252 165 165 / var(--tw-border-opacity, 1))}.border-red-400{--tw-border-opacity: 1;border-color:rgb(248 113 113 / var(--tw-border-opacity, 1))}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-red-600{--tw-border-opacity: 1;border-color:rgb(220 38 38 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.border-yellow-300{--tw-border-opacity: 1;border-color:rgb(253 224 71 / var(--tw-border-opacity, 1))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-200{--tw-bg-opacity: 1;background-color:rgb(191 219 254 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-200{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.bg-gray-400{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-500{--tw-bg-opacity: 1;background-color:rgb(107 114 128 / var(--tw-bg-opacity, 1))}.bg-gray-600{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-indigo-100{--tw-bg-opacity: 1;background-color:rgb(224 231 255 / var(--tw-bg-opacity, 1))}.bg-indigo-500{--tw-bg-opacity: 1;background-color:rgb(99 102 241 / var(--tw-bg-opacity, 1))}.bg-orange-100{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.bg-orange-600{--tw-bg-opacity: 1;background-color:rgb(234 88 12 / var(--tw-bg-opacity, 1))}.bg-purple-100{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.bg-purple-200{--tw-bg-opacity: 1;background-color:rgb(233 213 255 / var(--tw-bg-opacity, 1))}.bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.bg-purple-500{--tw-bg-opacity: 1;background-color:rgb(168 85 247 / var(--tw-bg-opacity, 1))}.bg-purple-600{--tw-bg-opacity: 1;background-color:rgb(147 51 234 / var(--tw-bg-opacity, 1))}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-50{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-200{--tw-bg-opacity: 1;background-color:rgb(254 240 138 / var(--tw-bg-opacity, 1))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.bg-yellow-600{--tw-bg-opacity: 1;background-color:rgb(202 138 4 / var(--tw-bg-opacity, 1))}.bg-opacity-50{--tw-bg-opacity: .5}.bg-opacity-75{--tw-bg-opacity: .75}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-blue-50{--tw-gradient-from: #eff6ff var(--tw-gradient-from-position);--tw-gradient-to: rgb(239 246 255 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-600{--tw-gradient-from: #2563eb var(--tw-gradient-from-position);--tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-indigo-50{--tw-gradient-to: #eef2ff var(--tw-gradient-to-position)}.to-indigo-600{--tw-gradient-to: #4f46e5 var(--tw-gradient-to-position)}.object-cover{-o-object-fit:cover;object-fit:cover}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pl-10{padding-left:2.5rem}.pl-3{padding-left:.75rem}.pl-4{padding-left:1rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:Inter,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.italic{font-style:italic}.leading-relaxed{line-height:1.625}.leading-tight{line-height:1.25}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-blue-800{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.text-blue-900{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-indigo-500{--tw-text-opacity: 1;color:rgb(99 102 241 / var(--tw-text-opacity, 1))}.text-indigo-700{--tw-text-opacity: 1;color:rgb(67 56 202 / var(--tw-text-opacity, 1))}.text-orange-600{--tw-text-opacity: 1;color:rgb(234 88 12 / var(--tw-text-opacity, 1))}.text-orange-700{--tw-text-opacity: 1;color:rgb(194 65 12 / var(--tw-text-opacity, 1))}.text-purple-500{--tw-text-opacity: 1;color:rgb(168 85 247 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-purple-700{--tw-text-opacity: 1;color:rgb(126 34 206 / var(--tw-text-opacity, 1))}.text-purple-800{--tw-text-opacity: 1;color:rgb(107 33 168 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-red-700{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.text-red-800{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.text-yellow-700{--tw-text-opacity: 1;color:rgb(161 98 7 / var(--tw-text-opacity, 1))}.text-yellow-800{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}*,*:before,*:after{box-sizing:border-box}:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;font-family:inherit;cursor:pointer}input,textarea,select{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:inherit;font-size:16px}img{max-width:100%;height:auto;display:block}html{font-size:16px}@media (max-width: 768px){html{font-size:16px}}@media (max-width: 480px){html{font-size:16px}}a{color:#3b82f6;text-decoration:none;touch-action:manipulation}a:hover{text-decoration:underline}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media (max-width: 768px){::-webkit-scrollbar{width:12px;height:12px}}::selection{background:#3b82f633;color:inherit}::-moz-selection{background:#3b82f633;color:inherit}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease-out}@keyframes skeleton{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200px 100%;animation:skeleton 1.5s infinite}.mobile-only{display:none}@media (max-width: 768px){.mobile-only{display:block}.desktop-only{display:none}}.tablet-only{display:none}@media (min-width: 769px) and (max-width: 1024px){.tablet-only{display:block}}@supports (padding: max(0px)){.safe-area-top{padding-top:max(1rem,env(safe-area-inset-top))}.safe-area-bottom{padding-bottom:max(1rem,env(safe-area-inset-bottom))}.safe-area-left{padding-left:max(1rem,env(safe-area-inset-left))}.safe-area-right{padding-right:max(1rem,env(safe-area-inset-right))}}.no-zoom{touch-action:manipulation}.will-change-transform{will-change:transform}.will-change-opacity{will-change:opacity}@media (prefers-contrast: high){button,input,select,textarea,.card-mobile{border:2px solid currentColor}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.fade-in{animation:none}.skeleton{animation:none;background:#f0f0f0}}@media (prefers-color-scheme: dark){body{background-color:#1f2937;color:#f9fafb}::-webkit-scrollbar-track{background:#374151}::-webkit-scrollbar-thumb{background:#6b7280}::-webkit-scrollbar-thumb:hover{background:#9ca3af}::selection{background:#60a5fa4d}::-moz-selection{background:#60a5fa4d}}.last\:mb-0:last-child{margin-bottom:0}.hover\:border-blue-400:hover{--tw-border-opacity: 1;border-color:rgb(96 165 250 / var(--tw-border-opacity, 1))}.hover\:border-gray-300:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.hover\:bg-blue-200:hover{--tw-bg-opacity: 1;background-color:rgb(191 219 254 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-50:hover{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-600:hover{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-300:hover{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-400:hover{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.hover\:bg-green-200:hover{--tw-bg-opacity: 1;background-color:rgb(187 247 208 / var(--tw-bg-opacity, 1))}.hover\:bg-green-500:hover{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.hover\:bg-green-600:hover{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-200:hover{--tw-bg-opacity: 1;background-color:rgb(199 210 254 / var(--tw-bg-opacity, 1))}.hover\:bg-indigo-600:hover{--tw-bg-opacity: 1;background-color:rgb(79 70 229 / var(--tw-bg-opacity, 1))}.hover\:bg-orange-600:hover{--tw-bg-opacity: 1;background-color:rgb(234 88 12 / var(--tw-bg-opacity, 1))}.hover\:bg-orange-700:hover{--tw-bg-opacity: 1;background-color:rgb(194 65 12 / var(--tw-bg-opacity, 1))}.hover\:bg-purple-200:hover{--tw-bg-opacity: 1;background-color:rgb(233 213 255 / var(--tw-bg-opacity, 1))}.hover\:bg-purple-300:hover{--tw-bg-opacity: 1;background-color:rgb(216 180 254 / var(--tw-bg-opacity, 1))}.hover\:bg-purple-600:hover{--tw-bg-opacity: 1;background-color:rgb(147 51 234 / var(--tw-bg-opacity, 1))}.hover\:bg-purple-700:hover{--tw-bg-opacity: 1;background-color:rgb(126 34 206 / var(--tw-bg-opacity, 1))}.hover\:bg-red-500:hover{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.hover\:bg-red-600:hover{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover\:bg-yellow-600:hover{--tw-bg-opacity: 1;background-color:rgb(202 138 4 / var(--tw-bg-opacity, 1))}.hover\:bg-yellow-700:hover{--tw-bg-opacity: 1;background-color:rgb(161 98 7 / var(--tw-bg-opacity, 1))}.hover\:from-blue-700:hover{--tw-gradient-from: #1d4ed8 var(--tw-gradient-from-position);--tw-gradient-to: rgb(29 78 216 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:to-indigo-700:hover{--tw-gradient-to: #4338ca var(--tw-gradient-to-position)}.hover\:text-blue-500:hover{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.hover\:text-blue-600:hover{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.hover\:text-blue-700:hover{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.hover\:text-blue-800:hover{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.hover\:text-gray-600:hover{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:text-gray-800:hover{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.hover\:text-gray-900:hover{--tw-text-opacity: 1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.hover\:text-red-700:hover{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.hover\:text-red-800:hover{--tw-text-opacity: 1;color:rgb(153 27 27 / var(--tw-text-opacity, 1))}.hover\:text-red-900:hover{--tw-text-opacity: 1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:text-yellow-800:hover{--tw-text-opacity: 1;color:rgb(133 77 14 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(96 165 250 / var(--tw-ring-opacity, 1))}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus\:ring-red-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity, 1))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:border-gray-400:disabled{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.disabled\:bg-blue-400:disabled{--tw-bg-opacity: 1;background-color:rgb(96 165 250 / var(--tw-bg-opacity, 1))}.disabled\:bg-gray-200:disabled{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.disabled\:bg-gray-300:disabled{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.disabled\:bg-gray-400:disabled{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.disabled\:bg-green-400:disabled{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.disabled\:bg-red-400:disabled{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / var(--tw-bg-opacity, 1))}.disabled\:bg-yellow-400:disabled{--tw-bg-opacity: 1;background-color:rgb(250 204 21 / var(--tw-bg-opacity, 1))}.disabled\:from-gray-400:disabled{--tw-gradient-from: #9ca3af var(--tw-gradient-from-position);--tw-gradient-to: rgb(156 163 175 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.disabled\:to-gray-400:disabled{--tw-gradient-to: #9ca3af var(--tw-gradient-to-position)}.disabled\:text-blue-400:disabled{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.disabled\:text-gray-400:disabled{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:opacity-100{opacity:1}@media (min-width: 768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}
