.completion-container[data-v-d74824e4]{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xl);min-height:500px;padding:var(--spacing-lg);overflow:hidden}.celebration-animation[data-v-d74824e4]{position:absolute;top:-10px;left:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:hidden}.confetti-particle[data-v-d74824e4]{position:absolute;width:12px;height:12px;top:-20px;left:var(--x);transform:rotate(var(--rotation));animation:confetti-fall-d74824e4 var(--animation-celebration) var(--delay) ease-in-out forwards}.confetti-particle[data-v-d74824e4]:nth-child(4n+1){background:var(--primary-color);border-radius:50%;width:8px;height:8px}.confetti-particle[data-v-d74824e4]:nth-child(4n+2){background:var(--success-color);border-radius:2px;width:10px;height:6px}.confetti-particle[data-v-d74824e4]:nth-child(4n+3){background:var(--warning-color);border-radius:50%;width:6px;height:6px}.confetti-particle[data-v-d74824e4]:nth-child(4n+4){background:linear-gradient(45deg,var(--primary-color),var(--primary-color-dark));transform:rotate(45deg);width:8px;height:8px}.star-particle[data-v-d74824e4]{position:absolute;top:-20px;left:var(--x);font-size:20px;color:var(--warning-color);animation:star-fall-d74824e4 var(--animation-celebration) var(--delay) ease-in-out forwards;text-shadow:0 0 10px currentColor}.star-particle[data-v-d74824e4]:nth-child(odd){color:var(--primary-color);font-size:16px}.star-particle[data-v-d74824e4]:nth-child(2n){color:var(--success-color);font-size:24px}.sparkle-particle[data-v-d74824e4]{position:absolute;top:-20px;left:var(--x);font-size:14px;animation:sparkle-fall-d74824e4 var(--animation-celebration) var(--delay) ease-in-out forwards;text-shadow:0 0 8px currentColor}.sparkle-particle[data-v-d74824e4]:nth-child(3n+1){filter:hue-rotate(0deg)}.sparkle-particle[data-v-d74824e4]:nth-child(3n+2){filter:hue-rotate(120deg)}.sparkle-particle[data-v-d74824e4]:nth-child(3n+3){filter:hue-rotate(240deg)}.balloon-particle[data-v-d74824e4]{position:absolute;bottom:-50px;left:var(--x);font-size:28px;animation:balloon-float-d74824e4 var(--animation-celebration) var(--delay) ease-in-out forwards;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))}.balloon-particle[data-v-d74824e4]:nth-child(2n){font-size:24px;animation-duration:var(--animation-celebration)}.balloon-particle[data-v-d74824e4]:nth-child(3n){font-size:32px;animation-duration:var(--animation-celebration)}@keyframes confetti-fall-d74824e4{0%{transform:translateY(-100vh) rotate(0);opacity:1}50%{opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}@keyframes star-fall-d74824e4{0%{transform:translateY(-100vh) rotate(0) scale(0);opacity:0}10%{opacity:1;transform:translateY(-80vh) rotate(36deg) scale(1)}90%{opacity:1;transform:translateY(80vh) rotate(324deg) scale(1)}to{transform:translateY(100vh) rotate(360deg) scale(0);opacity:0}}@keyframes sparkle-fall-d74824e4{0%{transform:translateY(-100vh) rotate(0) scale(0);opacity:0}15%{opacity:1;transform:translateY(-70vh) rotate(90deg) scale(1)}85%{opacity:1;transform:translateY(70vh) rotate(450deg) scale(1)}to{transform:translateY(100vh) rotate(540deg) scale(0);opacity:0}}@keyframes balloon-float-d74824e4{0%{transform:translateY(100vh) rotate(0) scale(0);opacity:0}10%{opacity:1;transform:translateY(80vh) rotate(5deg) scale(1)}50%{transform:translateY(-20vh) rotate(-5deg) scale(1)}90%{opacity:1;transform:translateY(-80vh) rotate(10deg) scale(1)}to{transform:translateY(-120vh) rotate(15deg) scale(0);opacity:0}}.success-section[data-v-d74824e4]{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.completion-icon[data-v-d74824e4]{margin-bottom:var(--spacing-md);filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))}.circle-bg[data-v-d74824e4]{fill:none;stroke:var(--border-color);stroke-width:6}.circle-fg[data-v-d74824e4]{fill:none;stroke:var(--success-color);stroke-width:6;stroke-dasharray:282.7;stroke-dashoffset:282.7;animation:draw-circle-d74824e4 var(--animation-extra-slow) ease-out forwards;filter:drop-shadow(0 0 8px rgba(40,167,69,.5))}@keyframes draw-circle-d74824e4{to{stroke-dashoffset:0}}.checkmark[data-v-d74824e4]{fill:none;stroke:var(--success-color);stroke-width:8;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:50;stroke-dashoffset:50;animation:draw-check-d74824e4 var(--animation-slower) var(--animation-extra-slow) ease-out forwards;filter:drop-shadow(0 0 4px rgba(40,167,69,.7))}@keyframes draw-check-d74824e4{to{stroke-dashoffset:0}}.success-title[data-v-d74824e4]{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0;text-align:center;background:linear-gradient(135deg,var(--success-color),#20c997);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 2px 4px rgba(0,0,0,.3)}.success-subtitle[data-v-d74824e4]{font-size:var(--font-size-lg);color:var(--text-secondary);margin:0;text-align:center;font-weight:var(--font-weight-medium)}.test-summary[data-v-d74824e4]{position:relative;z-index:2;background:linear-gradient(135deg,var(--surface-primary),var(--surface-secondary));border-radius:var(--border-radius-large);padding:var(--spacing-xl);border:1px solid var(--border-color);box-shadow:var(--shadow-large);max-width:600px;width:100%}.summary-title[data-v-d74824e4]{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 var(--spacing-lg) 0;text-align:center}.summary-grid[data-v-d74824e4]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.summary-item[data-v-d74824e4]{display:flex;align-items:center;gap:var(--spacing-md);background:var(--surface-tertiary);padding:var(--spacing-md);border-radius:var(--border-radius-medium);border:1px solid var(--border-color-light);transition:var(--transition-default)}.summary-item[data-v-d74824e4]:hover{background:var(--surface-quaternary);transform:translateY(-2px);box-shadow:var(--shadow-medium)}.summary-icon[data-v-d74824e4]{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary-color),var(--primary-color-dark));border-radius:var(--border-radius-medium);color:var(--text-primary)}.summary-content[data-v-d74824e4]{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}.summary-label[data-v-d74824e4]{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--text-primary)}.summary-status[data-v-d74824e4]{font-size:var(--font-size-sm);color:var(--success-color);font-weight:var(--font-weight-semibold)}.action-section[data-v-d74824e4]{position:relative;z-index:2;margin-top:var(--spacing-lg)}.start-over-btn[data-v-d74824e4]{min-width:220px;padding:var(--spacing-lg) var(--spacing-xl);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);box-shadow:var(--shadow-large);display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);background:linear-gradient(135deg,var(--primary-color),var(--primary-color-dark));color:var(--text-primary);border:none;border-radius:var(--border-radius-medium);cursor:pointer;transition:var(--transition-default);position:relative;overflow:hidden}.start-over-btn[data-v-d74824e4]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left var(--animation-extra-slow) ease}.start-over-btn[data-v-d74824e4]:hover:before{left:100%}.start-over-btn[data-v-d74824e4]:hover{transform:translateY(-3px);box-shadow:var(--shadow-xl)}.start-over-btn[data-v-d74824e4]:active{transform:translateY(-1px);box-shadow:var(--shadow-medium)}.performance-section[data-v-d74824e4]{width:100%;max-width:900px;margin:var(--spacing-lg) 0;z-index:2;position:relative}@media (max-width: 768px){.completion-container[data-v-d74824e4]{gap:var(--spacing-lg);min-height:auto;padding:var(--spacing-md)}.completion-icon[data-v-d74824e4]{width:80px;height:80px}.success-title[data-v-d74824e4]{font-size:var(--font-size-2xl)}.summary-grid[data-v-d74824e4]{grid-template-columns:1fr}.start-over-btn[data-v-d74824e4]{min-width:180px;padding:var(--spacing-md) var(--spacing-lg)}}.visualizer-container[data-v-0e208d4b]{width:100%;display:flex;flex-direction:column;gap:var(--spacing-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-large);position:relative;overflow:hidden;transition:min-height var(--transition-morphing),max-width var(--transition-morphing),padding var(--transition-morphing),height var(--transition-morphing),box-shadow var(--animation-slower) ease-out}.visualizer-container.full-width[data-v-0e208d4b]{max-width:none;width:100%}.visualizer-container.flex-centered[data-v-0e208d4b]{align-items:center;justify-content:center}.visualizer-container.keyboard-mode[data-v-0e208d4b]{padding:1.5rem!important;max-width:800px!important}@media (max-width: 768px){.visualizer-container[data-v-0e208d4b]{margin:var(--spacing-md) auto;padding:var(--spacing-md);transition:min-height var(--transition-morphing),max-width var(--transition-morphing),padding var(--transition-morphing),height var(--transition-morphing),box-shadow var(--animation-slower) ease-out}}@media (prefers-reduced-motion: reduce){.visualizer-container[data-v-0e208d4b]{transition-duration:var(--animation-slow)!important}}.controls-bar{width:100%;margin:-1px auto 0;display:flex;justify-content:center;gap:1rem;padding:1rem;background-color:#2c2c2e;border:1px solid var(--border-color);box-shadow:var(--shadow-large);border-radius:var(--border-radius-large)}.test-header[data-v-30b324dd]{margin-bottom:var(--spacing-lg);flex-shrink:0}.test-header.center-align[data-v-30b324dd]{text-align:center}.test-title[data-v-30b324dd]{display:flex;align-items:center;font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 var(--spacing-sm) 0;gap:var(--spacing-sm)}.test-header.center-align .test-title[data-v-30b324dd]{justify-content:center}.test-icon[data-v-30b324dd]{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.test-icon svg[data-v-30b324dd]{width:32px;height:32px;vertical-align:middle}.test-title-text[data-v-30b324dd]{line-height:1.2}.test-description[data-v-30b324dd]{color:var(--text-secondary);font-size:var(--font-size-base);margin:0;line-height:1.5}.test-header.center-align .test-description[data-v-30b324dd]{margin-bottom:var(--spacing-lg)}.completion-badge.completed-success[data-v-2b0310f3]{background:linear-gradient(135deg,#166534,#22c55e);border:1px solid #16a34a;color:#dcfce7;box-shadow:0 2px 8px #22c55e33}.app-layout[data-v-2b0310f3]{display:flex;min-height:100vh;background-color:#0d0d0d;color:#d4d4d4;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;position:relative}.sidebar[data-v-2b0310f3]{width:270px;flex-shrink:0;background-color:#000;border-right:1px solid #404040;display:flex;flex-direction:column;padding:1rem;transition:var(--transition-width);z-index:2}.right-sidebar[data-v-2b0310f3]{border-right:none;border-left:1px solid #404040;left:auto;right:0;position:relative;background-color:#000}.main-content[data-v-2b0310f3]{flex:1;padding:2rem;overflow-y:auto;min-width:0;position:relative}.icon-action-btn[data-v-2b0310f3]{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.12)}.icon-action-btn[data-v-2b0310f3]:hover{background:#ffffff1f;border-color:#fff3;transform:translateY(-1px);box-shadow:0 4px 12px #0003}.expand-fade-enter-active[data-v-2b0310f3],.expand-fade-leave-active[data-v-2b0310f3]{transition:all .2s ease}.expand-fade-enter-from[data-v-2b0310f3],.expand-fade-leave-to[data-v-2b0310f3]{opacity:0;transform:translateY(-10px) scale(.95)}.expand-fade-enter-to[data-v-2b0310f3],.expand-fade-leave-from[data-v-2b0310f3]{opacity:1;transform:translateY(0) scale(1)}.app-layout>.main-content[data-v-2b0310f3]{margin-left:0;margin-right:0}@media (min-width: 900px){.app-layout[data-v-2b0310f3]{flex-direction:row}.main-content[data-v-2b0310f3]{margin-left:0;margin-right:0}.sidebar.right-sidebar[data-v-2b0310f3]{position:relative;right:0;left:auto}}.sidebar-header[data-v-2b0310f3]{position:relative;margin-bottom:2rem;padding:.5rem;flex-shrink:0;height:56px}.sidebar-header .brand-icon[data-v-2b0310f3]{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:1.5rem;color:#ff6b00;display:block}.sidebar-header h2[data-v-2b0310f3]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:1.5rem;font-weight:600;color:#fff;margin:0;text-align:center;white-space:nowrap;display:block;text-shadow:0 1px 3px rgba(0,0,0,.7)}.test-nav[data-v-2b0310f3]{flex-grow:1}.test-nav ul[data-v-2b0310f3]{list-style:none;padding:0;margin:0}.test-nav li[data-v-2b0310f3]{display:flex;align-items:center;padding:.75rem 1rem;margin-bottom:.5rem;border-radius:6px;cursor:pointer;transition:background-color var(--animation-normal) ease,border-color var(--animation-normal) ease,color var(--animation-normal) ease;border:1px solid transparent;color:#e0e0e0;background:none}.test-nav li[data-v-2b0310f3]:hover{background-color:#2a2a2a;color:#fff}.test-nav li.active[data-v-2b0310f3]{background-color:#ff6b0014;border-color:#ff6b0080;color:#ff9854}.test-nav li .test-name[data-v-2b0310f3]{color:#fff!important;font-weight:600;text-shadow:0 1px 3px rgba(0,0,0,.8)}.test-nav li.disabled .test-name[data-v-2b0310f3]{color:#fff!important;opacity:.6;font-weight:600;text-shadow:0 1px 3px rgba(0,0,0,.8)}.test-nav .test-icon[data-v-2b0310f3]{font-size:1.2rem;margin-right:.8rem;width:20px;text-align:center}.test-nav .test-name[data-v-2b0310f3]{color:#fff!important;font-weight:500;text-shadow:0 1px 3px rgba(0,0,0,.7)}.sidebar .test-name[data-v-2b0310f3]{color:#fff!important;text-shadow:0 1px 3px rgba(0,0,0,.7)}.status-indicator[data-v-2b0310f3]{width:8px;height:8px;border-radius:50%;margin-left:auto;transition:background-color var(--animation-slow) ease,box-shadow var(--animation-slow) ease;box-shadow:0 0 6px transparent}.status-indicator.pending[data-v-2b0310f3]{background-color:#555}.status-indicator.completed-success[data-v-2b0310f3]{background-color:#28a745;box-shadow:0 0 6px #28a745}.status-indicator.completed-fail[data-v-2b0310f3]{background-color:#dc3545;box-shadow:0 0 6px #dc3545}.status-indicator.skipped[data-v-2b0310f3]{background-color:#ffc107;box-shadow:0 0 6px #ffc107}.sidebar-footer[data-v-2b0310f3]{margin-top:0;padding:0;border-top:none;display:flex;flex-direction:column;gap:.75rem}.detailed-summary[data-v-2b0310f3]{margin-bottom:.5rem;width:100%;padding:1rem;background:linear-gradient(135deg,#1e1e1e,#252526);border-radius:8px;border:1px solid #404040;box-shadow:0 4px 20px #00000026,inset 0 1px #ffffff0d;background-color:#1a1a1a;margin-bottom:1rem}.summary-overview[data-v-2b0310f3]{margin-bottom:1rem}.completion-badge[data-v-2b0310f3]{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:.75rem 1rem;border-radius:6px;font-weight:600;font-size:.9rem;letter-spacing:.025em;transition:all .2s ease;position:relative;overflow:hidden}.completion-badge[data-v-2b0310f3]:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s ease}.completion-badge[data-v-2b0310f3]:hover:before{left:100%}.completion-badge.in-progress[data-v-2b0310f3]{background:linear-gradient(135deg,#1a5490,#2563eb);border:1px solid #3b82f6;color:#dbeafe;box-shadow:0 2px 8px #2563eb33}.completion-badge.completed-fail[data-v-2b0310f3]{background:linear-gradient(135deg,#991b1b,#ef4444);border:1px solid #dc2626;color:#fecaca;box-shadow:0 2px 8px #ef444433}.detailed-summary h4[data-v-2b0310f3]{color:#fff;font-size:1.1rem;font-weight:600;margin:0 0 .75rem;text-align:center}.detailed-summary p[data-v-2b0310f3]{color:#e0e0e0;margin:0 0 1rem;font-size:.9rem}.result-list[data-v-2b0310f3]{margin-bottom:.75rem;background:#ffffff05;border-radius:6px;padding:.75rem;border:1px solid rgba(255,255,255,.08);transition:all .2s ease}.result-list.unified[data-v-2b0310f3]{padding:0;overflow:hidden}.result-list[data-v-2b0310f3]:hover{background:#ffffff0a;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.result-list.unified[data-v-2b0310f3]:hover{transform:none}.result-list[data-v-2b0310f3]:last-child{margin-bottom:0}.result-section[data-v-2b0310f3]{padding:.5rem}.result-section[data-v-2b0310f3]:first-child{padding-top:.75rem}.result-section[data-v-2b0310f3]:last-child{padding-bottom:.75rem}.result-section-header[data-v-2b0310f3]{display:flex;align-items:center;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.result-label[data-v-2b0310f3]{font-weight:600;font-size:.95rem;letter-spacing:.025em;padding-left:.5rem}.result-label.passed[data-v-2b0310f3]{color:#4ade80}.result-label.failed[data-v-2b0310f3]{color:#f87171}.result-label.pending[data-v-2b0310f3]{color:#60a5fa}.result-label.skipped[data-v-2b0310f3]{color:#fbbf24}.result-list ul[data-v-2b0310f3]{list-style:none;margin:0;padding:0}.result-list li[data-v-2b0310f3]{color:#e0e0e0;font-size:.9rem}.test-panel-wrapper[data-v-2b0310f3]{background-color:#000;border-radius:8px;border:1px solid #404040;box-shadow:0 4px 25px #0003}.detailed-summary>p[data-v-2b0310f3]{font-size:.9rem;color:#e0e0e0;text-align:center;margin-bottom:1rem}.sidebar-summary-top[data-v-2b0310f3]{margin-bottom:1rem}.summary-table[data-v-2b0310f3]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.summary-row[data-v-2b0310f3]{display:grid;grid-template-columns:1fr auto auto;gap:.5rem;align-items:center;padding:.1rem;min-height:40px}.summary-row[data-v-2b0310f3]:hover{background:#ffffff0f;transform:translate(4px)}.summary-name[data-v-2b0310f3]{grid-column:1;text-align:left;font-weight:500;color:#e2e8f0;font-size:.9rem;overflow:hidden;text-overflow:ellipsis;padding-left:1.25rem;white-space:nowrap}.summary-meta[data-v-2b0310f3]{grid-column:2 / 4;display:grid;grid-template-columns:32px 48px;gap:.5rem;align-items:center;justify-content:end}.summary-time[data-v-2b0310f3]{text-align:center;color:#94a3b8;font-size:.8rem;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;background:#94a3b81a;padding:.27rem;border-radius:4px;border:1px solid rgba(148,163,184,.2);width:48px;box-sizing:border-box}.summary-count[data-v-2b0310f3]{text-align:center;background:linear-gradient(135deg,#f59e0b,#fbbf24);color:#1a1a1a;font-size:.8rem;font-weight:600;padding:.17rem .4rem;border-radius:4px;width:32px;box-shadow:0 1px 3px #f59e0b4d;box-sizing:border-box}.summary-total-time[data-v-2b0310f3]{margin-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.total-time-container[data-v-2b0310f3]{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:linear-gradient(135deg,#1e293b,#334155);border-radius:6px;border:1px solid #475569;box-shadow:0 2px 8px #0000001a}.total-time-label[data-v-2b0310f3]{font-weight:600;color:#cbd5e1;font-size:.9rem;letter-spacing:.025em}.total-time-value[data-v-2b0310f3]{font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-weight:700;color:#f1f5f9;font-size:1rem;background:#f1f5f91a;padding:.375rem .75rem;border-radius:6px;border:1px solid rgba(241,245,249,.2)}.floating-action-buttons[data-v-2b0310f3]{position:fixed;bottom:90px;right:2rem;display:flex;align-items:center;gap:.75rem;z-index:999}.export-menu-floating[data-v-2b0310f3]{position:relative}.floating-btn[data-v-2b0310f3]{display:flex;align-items:center;justify-content:center;gap:.5rem;min-width:100px;height:44px;border:none;border-radius:12px;cursor:pointer;transition:all .3s ease;font-size:.9rem;font-weight:600;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.15);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 20px #0000004d}.floating-btn[data-v-2b0310f3]:hover{background:#ffffff26;border-color:#ffffff40;transform:translateY(-2px);box-shadow:0 6px 25px #0006}.floating-btn.reset-btn[data-v-2b0310f3]{background:#71809633;border-color:#71809666;color:#cbd5e1}.floating-btn.reset-btn[data-v-2b0310f3]:hover{background:#7180964d;border-color:#71809680}.floating-btn.export-btn[data-v-2b0310f3]{background:#ff6b0033;border-color:#ff6b0066;color:#f96}.floating-btn.export-btn[data-v-2b0310f3]:hover:not(.disabled){background:#ff6b004d;border-color:#ff6b0080}.floating-btn.export-btn.disabled[data-v-2b0310f3]{background:#6b728026;border-color:#6b728040;color:#6b7280;cursor:not-allowed;opacity:.6}.floating-btn.export-btn.disabled[data-v-2b0310f3]:hover{transform:none;box-shadow:0 4px 20px #0000004d}.export-options-floating[data-v-2b0310f3]{position:absolute;bottom:100%;right:0;margin-bottom:.75rem;background:#1e1e1ef2;border:1px solid rgba(255,255,255,.15);border-radius:12px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);min-width:160px;box-shadow:0 10px 30px #00000080;overflow:hidden}.export-option-floating[data-v-2b0310f3]{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:transparent;border:none;color:#e2e8f0;font-size:.85rem;cursor:pointer;transition:background-color .2s ease}.export-option-floating[data-v-2b0310f3]:hover{background:#ffffff1a}.export-option-floating .export-icon[data-v-2b0310f3]{flex-shrink:0;opacity:.8}@media (max-width: 768px){.floating-action-buttons[data-v-2b0310f3]{bottom:100px;right:1rem;gap:.5rem}.floating-btn[data-v-2b0310f3]{min-width:80px;height:40px;font-size:.8rem}.floating-btn span[data-v-2b0310f3]{display:none}.export-options-floating[data-v-2b0310f3]{min-width:140px}.export-option-floating[data-v-2b0310f3]{padding:.6rem .8rem;font-size:.8rem}}.web-vitals-page[data-v-e5004da1]{min-height:calc(100vh - 130px);background:var(--surface-primary);color:var(--text-primary);padding:2rem 0}.page-container[data-v-e5004da1]{max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.page-header[data-v-e5004da1]{text-align:center;margin-bottom:3rem}.page-title[data-v-e5004da1]{font-size:2.5rem;font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 1rem}.page-description[data-v-e5004da1]{font-size:1.125rem;color:var(--text-secondary);max-width:600px;margin:0 auto}.vitals-grid[data-v-e5004da1]{display:flex;flex-direction:column;gap:2rem}.vitals-section[data-v-e5004da1]{background:var(--surface-secondary);border-radius:var(--border-radius-large);padding:2rem;border:1px solid var(--border-color)}.section-title[data-v-e5004da1]{font-size:1.5rem;font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 1.5rem}.metrics-grid[data-v-e5004da1]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.additional-metrics[data-v-e5004da1]{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.metric-card[data-v-e5004da1]{background:var(--surface-tertiary);border:2px solid var(--border-color);border-radius:var(--border-radius-medium);padding:1.5rem;transition:var(--transition-default)}.metric-card[data-v-e5004da1]:hover{transform:translateY(-2px);box-shadow:var(--shadow-medium)}.metric-header[data-v-e5004da1]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.metric-header h3[data-v-e5004da1]{font-size:1.125rem;font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0;line-height:1.3}.metric-abbreviation[data-v-e5004da1]{background:var(--surface-quaternary);color:var(--text-tertiary);padding:.25rem .5rem;border-radius:var(--border-radius-small);font-size:.75rem;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.05em}.metric-value[data-v-e5004da1]{font-size:2rem;font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:.5rem}.metric-description[data-v-e5004da1]{font-size:.875rem;color:var(--text-secondary);margin-bottom:1rem}.metric-threshold[data-v-e5004da1]{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem}.metric-threshold span[data-v-e5004da1]{padding:.125rem .5rem;border-radius:var(--border-radius-small);font-weight:var(--font-weight-medium)}.metric-threshold .good[data-v-e5004da1]{background:#22c55e1a;color:#22c55e}.metric-threshold .needs-improvement[data-v-e5004da1]{background:#f973161a;color:#f97316}.metric-threshold .poor[data-v-e5004da1]{background:#ef44441a;color:#ef4444}.score-good[data-v-e5004da1]{border-color:#22c55e}.score-good .metric-value[data-v-e5004da1]{color:#22c55e}.score-needs-improvement[data-v-e5004da1]{border-color:#f97316}.score-needs-improvement .metric-value[data-v-e5004da1]{color:#f97316}.score-poor[data-v-e5004da1]{border-color:#ef4444}.score-poor .metric-value[data-v-e5004da1]{color:#ef4444}.score-unknown[data-v-e5004da1]{border-color:var(--border-color)}.actions-section[data-v-e5004da1]{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.action-button[data-v-e5004da1]{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:var(--border-radius-medium);font-size:1rem;font-weight:var(--font-weight-semibold);text-decoration:none;cursor:pointer;transition:var(--transition-default)}.action-button.primary[data-v-e5004da1]{background:var(--primary-color);color:#fff}.action-button.primary[data-v-e5004da1]:hover:not(:disabled){background:var(--primary-color-hover);transform:translateY(-1px)}.action-button.secondary[data-v-e5004da1]{background:var(--surface-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.action-button.secondary[data-v-e5004da1]:hover{background:var(--surface-quaternary);transform:translateY(-1px)}.action-button[data-v-e5004da1]:disabled{opacity:.6;cursor:not-allowed}.loading-icon[data-v-e5004da1]{animation:spin-e5004da1 1s linear infinite}@keyframes spin-e5004da1{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.info-section[data-v-e5004da1]{background:var(--surface-secondary);border-radius:var(--border-radius-large);padding:2rem;border:1px solid var(--border-color);margin-top:2rem}.info-section p[data-v-e5004da1]{color:var(--text-secondary);line-height:1.6;margin:0 0 1rem}.info-section p[data-v-e5004da1]:last-child{margin-bottom:0}@media (max-width: 768px){.page-container[data-v-e5004da1]{padding:0 var(--spacing-md)}.page-title[data-v-e5004da1]{font-size:2rem}.vitals-section[data-v-e5004da1]{padding:1.5rem}.metrics-grid[data-v-e5004da1]{grid-template-columns:1fr}.metric-card[data-v-e5004da1]{padding:1rem}.metric-value[data-v-e5004da1]{font-size:1.5rem}.actions-section[data-v-e5004da1]{flex-direction:column;align-items:center}.action-button[data-v-e5004da1]{width:100%;max-width:300px;justify-content:center}}.about-page[data-v-30e18bb8]{min-height:calc(100vh - 130px);background:linear-gradient(135deg,#0d0d0d,#1a1a1a);color:#e2e8f0;padding:2rem 0}.page-container[data-v-30e18bb8]{max-width:1200px;margin:0 auto;padding:0 2rem}.about-hero[data-v-30e18bb8]{text-align:center;padding:4rem 0;margin-bottom:4rem}.hero-content[data-v-30e18bb8]{max-width:600px;margin:0 auto}.app-logo[data-v-30e18bb8]{margin-bottom:2rem}.logo-image[data-v-30e18bb8]{width:80px;height:80px;border-radius:16px;box-shadow:0 8px 32px #ff6b004d}.hero-title[data-v-30e18bb8]{font-size:3rem;font-weight:700;color:#fff;margin-bottom:1rem;background:linear-gradient(135deg,#ff6b00,#f80);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle[data-v-30e18bb8]{font-size:1.25rem;color:#94a3b8;line-height:1.6}.about-content[data-v-30e18bb8]{display:flex;flex-direction:column;gap:4rem}.content-section[data-v-30e18bb8]{background:#ffffff05;border-radius:16px;padding:3rem;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.section-title[data-v-30e18bb8]{font-size:2rem;font-weight:600;color:#fff;margin-bottom:2rem;text-align:center}.section-content p[data-v-30e18bb8]{font-size:1.1rem;line-height:1.7;color:#cbd5e1;margin-bottom:1.5rem}.section-content p[data-v-30e18bb8]:last-child{margin-bottom:0}.features-grid[data-v-30e18bb8]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}.feature-card[data-v-30e18bb8]{background:#ffffff0d;border-radius:12px;padding:2rem;text-align:center;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.feature-card[data-v-30e18bb8]:hover{transform:translateY(-4px);background:#ffffff14;border-color:#ff6b004d}.feature-icon[data-v-30e18bb8]{font-size:3rem;margin-bottom:1rem}.feature-title[data-v-30e18bb8]{font-size:1.25rem;font-weight:600;color:#fff;margin-bottom:1rem}.feature-description[data-v-30e18bb8]{color:#94a3b8;line-height:1.6}.tech-stack[data-v-30e18bb8]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:2rem}.tech-category h3[data-v-30e18bb8]{font-size:1.25rem;font-weight:600;color:#fff;margin-bottom:1rem}.tech-tags[data-v-30e18bb8]{display:flex;flex-wrap:wrap;gap:.5rem}.tech-tag[data-v-30e18bb8]{background:linear-gradient(135deg,#1e293b,#334155);color:#e2e8f0;padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:500;border:1px solid rgba(255,255,255,.1)}.version-info[data-v-30e18bb8]{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem}.version-card[data-v-30e18bb8]{background:#ffffff0d;border-radius:12px;padding:2rem;border:1px solid rgba(255,255,255,.1)}.version-header[data-v-30e18bb8]{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.version-header h3[data-v-30e18bb8]{font-size:1.25rem;color:#fff;margin:0}.version-number[data-v-30e18bb8]{background:linear-gradient(135deg,#ff6b00,#f80);color:#fff;padding:.5rem 1rem;border-radius:20px;font-weight:600;font-size:.9rem}.version-details p[data-v-30e18bb8]{color:#94a3b8;margin-bottom:.5rem;font-size:.95rem}.version-details p[data-v-30e18bb8]:last-child{margin-bottom:0}.changelog-preview h3[data-v-30e18bb8]{font-size:1.25rem;color:#fff;margin-bottom:1rem}.changelog-list[data-v-30e18bb8]{list-style:none;padding:0;margin:0}.changelog-list li[data-v-30e18bb8]{color:#94a3b8;margin-bottom:.5rem;font-size:.95rem}.contact-grid[data-v-30e18bb8]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:2rem}.contact-card[data-v-30e18bb8]{background:#ffffff0d;border-radius:12px;padding:2rem;text-align:center;border:1px solid rgba(255,255,255,.1)}.contact-icon[data-v-30e18bb8]{font-size:2.5rem;margin-bottom:1rem}.contact-card h3[data-v-30e18bb8]{font-size:1.25rem;color:#fff;margin-bottom:1rem}.contact-card p[data-v-30e18bb8]{color:#94a3b8;margin-bottom:.5rem}.contact-note[data-v-30e18bb8]{font-size:.9rem;font-style:italic}.contact-link[data-v-30e18bb8]{color:#ff9854;text-decoration:none;font-weight:500;transition:color .2s ease}.contact-link[data-v-30e18bb8]:hover{color:#ff6b00}.credits-content p[data-v-30e18bb8]{text-align:center;font-size:1.1rem;color:#cbd5e1;margin-bottom:2rem}.credits-grid[data-v-30e18bb8]{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.credit-category h3[data-v-30e18bb8]{font-size:1.25rem;color:#fff;margin-bottom:1rem}.credit-category ul[data-v-30e18bb8]{list-style:none;padding:0;margin:0}.credit-category li[data-v-30e18bb8]{color:#94a3b8;margin-bottom:.5rem;padding-left:1.5rem;position:relative}.credit-category li[data-v-30e18bb8]:before{content:"•";color:#ff6b00;position:absolute;left:0;font-weight:700}@media (max-width: 768px){.page-container[data-v-30e18bb8]{padding:0 1rem}.about-hero[data-v-30e18bb8]{padding:2rem 0;margin-bottom:2rem}.hero-title[data-v-30e18bb8]{font-size:2rem}.content-section[data-v-30e18bb8]{padding:2rem}.features-grid[data-v-30e18bb8],.version-info[data-v-30e18bb8],.contact-grid[data-v-30e18bb8],.credits-grid[data-v-30e18bb8]{grid-template-columns:1fr}}@media (max-width: 480px){.about-content[data-v-30e18bb8]{gap:2rem}.content-section[data-v-30e18bb8]{padding:1.5rem}.hero-title[data-v-30e18bb8]{font-size:1.75rem}.hero-subtitle[data-v-30e18bb8]{font-size:1.1rem}}.app-header[data-v-b0a56c18]{position:fixed;top:0;left:0;right:0;background:var(--surface-secondary);border-bottom:1px solid var(--border-color);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1001;padding:.75rem 0;height:60px;box-sizing:border-box}.header-content[data-v-b0a56c18]{max-width:100%;margin:0 auto;padding:0 var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;height:100%;position:relative}.header-left[data-v-b0a56c18]{display:flex;align-items:center;z-index:2}.brand-section[data-v-b0a56c18]{display:flex;align-items:center;gap:.75rem}.brand-icon[data-v-b0a56c18]{display:flex;align-items:center;justify-content:center}.brand-title[data-v-b0a56c18]{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0;text-shadow:0 1px 3px rgba(0,0,0,.7)}.header-nav[data-v-b0a56c18]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;z-index:1}.nav-links[data-v-b0a56c18]{display:flex;align-items:center;gap:1.5rem}.nav-link[data-v-b0a56c18]{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-tertiary);text-decoration:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:.5rem .75rem;border-radius:var(--border-radius-medium);transition:all var(--transition-default);position:relative}.nav-link[data-v-b0a56c18]:hover{color:var(--text-primary);background:rgba(var(--primary-color-rgb),.1);transform:translateY(-1px)}.nav-link.active[data-v-b0a56c18]{color:var(--primary-color);background:rgba(var(--primary-color-rgb),.15);font-weight:var(--font-weight-semibold)}.nav-link.active[data-v-b0a56c18]:after{content:"";position:absolute;bottom:-.75rem;left:50%;transform:translate(-50%);width:80%;height:2px;background:var(--primary-color);border-radius:1px}.nav-link svg[data-v-b0a56c18]{width:16px;height:16px;stroke:currentColor}.header-right[data-v-b0a56c18]{display:flex;align-items:center;gap:1rem;z-index:2}.status-indicator-group[data-v-b0a56c18]{display:flex;align-items:center;gap:.5rem}.connection-status[data-v-b0a56c18]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;border:2px solid;transition:all var(--transition-default)}.connection-status.online[data-v-b0a56c18]{color:var(--success-color);border-color:var(--success-color);background:#22c55e1a}.connection-status.offline[data-v-b0a56c18]{color:var(--danger-color);border-color:var(--danger-color);background:#ef44441a}.connection-status svg[data-v-b0a56c18]{width:12px;height:12px;stroke:currentColor}@media (max-width: 768px){.header-content[data-v-b0a56c18]{padding:0 var(--spacing-md)}.nav-links[data-v-b0a56c18]{gap:1rem}.nav-link[data-v-b0a56c18]{padding:.375rem .5rem;gap:.375rem;font-size:var(--font-size-xs)}.nav-link svg[data-v-b0a56c18]{width:14px;height:14px}.brand-title[data-v-b0a56c18]{font-size:1.25rem}.brand-section[data-v-b0a56c18]{gap:.5rem}}@media (max-width: 640px){.nav-link span[data-v-b0a56c18]:not(.sr-only){display:none}.nav-links[data-v-b0a56c18]{gap:.5rem}.nav-link[data-v-b0a56c18]{padding:.5rem;min-width:32px;justify-content:center}}@media (max-width: 1024px){.header-right[data-v-b0a56c18]{gap:.5rem}}.app-footer[data-v-5a79aeec]{position:fixed;bottom:0;left:0;right:0;background:var(--surface-secondary);border-top:1px solid var(--border-color);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;padding:.75rem 0}.footer-content[data-v-5a79aeec]{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--spacing-md)}.footer-links[data-v-5a79aeec]{display:flex;justify-content:center;align-items:center;gap:2rem;flex-wrap:wrap}.footer-link[data-v-5a79aeec]{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-tertiary);text-decoration:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:.5rem .75rem;border-radius:var(--border-radius-medium);transition:all var(--transition-default);position:relative}.footer-link[data-v-5a79aeec]:hover{color:var(--text-primary);background:rgba(var(--primary-color-rgb),.1);transform:translateY(-1px)}.footer-link svg[data-v-5a79aeec]{width:16px;height:16px;stroke:currentColor}.footer-link.built-with[data-v-5a79aeec]:hover{color:#e11d48;background:#e11d481a}.footer-link.coffee[data-v-5a79aeec]:hover{color:#f59e0b;background:#f59e0b1a}.footer-link.vitals[data-v-5a79aeec]:hover{color:var(--primary-color);background:rgba(var(--primary-color-rgb),.1)}@media (max-width: 768px){.footer-links[data-v-5a79aeec]{gap:1rem;font-size:var(--font-size-xs)}.footer-link[data-v-5a79aeec]{padding:.375rem .5rem;gap:.375rem}.footer-link svg[data-v-5a79aeec]{width:14px;height:14px}}#app{min-height:100vh;display:flex;flex-direction:column;position:relative;padding-top:1rem;padding-bottom:1rem}.router-view{flex:1}body{padding-top:0!important;padding-bottom:0!important}:root{--primary-color: #ff6b00;--primary-color-rgb: 255, 107, 0;--success-color: #28a745;--danger-color: #dc3545;--warning-color: #ffc107;--skip-color: #ffc107;--background-dark: #0f0f0f;--background-medium: #252527;--background-light: #1a1a1a;--border-color: #333;--border-color-light: #444;--border-color-dark: #262626;--border-color-custom: #1a1a1a;--text-primary: #ffffff;--text-secondary: #e0e0e0;--text-tertiary: #c0c0c0;--text-muted: #f0f0f0;--border-radius: 8px;--border-radius-small: 4px;--border-radius-medium: 6px;--border-radius-large: 12px;--border-radius-xl: 16px;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-xxl: 2.5rem;--transition-instant: all var(--animation-instant) ease;--transition-default: all .2s ease;--transition-fast: all .1s ease;--transition-slow: all .3s ease;--transition-morphing: all var(--animation-morphing) ease-in-out;--transition-width: width var(--animation-slow) ease;--transition-transform: transform var(--animation-normal) ease;--transition-opacity: opacity var(--animation-normal) ease;--shadow-small: 0 2px 4px rgba(0, 0, 0, .1);--shadow-medium: 0 4px 8px rgba(0, 0, 0, .15);--shadow-large: 0 4px 20px rgba(0, 0, 0, .2);--shadow-xl: 0 4px 25px rgba(0, 0, 0, .2);--shadow-elevated: 0 8px 25px rgba(0, 0, 0, .3);--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--z-index-dropdown: 1000;--z-index-modal: 1050;--z-index-tooltip: 1100;--container-max-width: 600px;--container-padding: var(--spacing-lg);--animation-instant: .05s;--animation-fast: .1s;--animation-normal: .2s;--animation-slow: .3s;--animation-slower: .5s;--animation-extra-slow: .8s;--animation-morphing: 1s;--animation-celebration: 2s;--surface-primary: #2c2c2e;--surface-secondary: #1a1a1a;--surface-tertiary: #444;--surface-quaternary: #333;--primary-color-dark: #e65c00}.flex-center{display:flex;align-items:center;justify-content:center}.flex-column{flex-direction:column}.flex-row{flex-direction:row}.flex-grow{flex-grow:1}.flex-shrink-0{flex-shrink:0}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.gap-xl{gap:var(--spacing-xl)}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.m-xs{margin:var(--spacing-xs)}.m-sm{margin:var(--spacing-sm)}.m-md{margin:var(--spacing-md)}.m-lg{margin:var(--spacing-lg)}.m-xl{margin:var(--spacing-xl)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.btn-primary{background-color:var(--primary-color);color:var(--text-primary);border:none}.btn-primary:hover{background-color:#e65c00}.btn-success{background-color:var(--success-color);color:var(--text-primary);border:2px solid #17642b;text-shadow:0 1px 2px rgba(0,0,0,.4)}.btn-success:hover{background-color:#218838}.btn-danger{background-color:var(--danger-color);color:var(--text-primary);border:none}.btn-danger:hover{background-color:#c82333}.btn-warning{background-color:var(--warning-color);color:#222;font-weight:var(--font-weight-bold);border:2px solid #bfa100;text-shadow:none}.btn-warning:hover{background-color:#e0a800}.btn-warning:disabled{background-color:#ffe082;color:#888;border-color:#e0c200}.w-full{width:100%}.w-auto{width:auto}.h-full{height:100%}.h-auto{height:auto}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.border-radius-sm{border-radius:var(--border-radius-small)}.border-radius-md{border-radius:var(--border-radius-medium)}.border-radius-lg{border-radius:var(--border-radius-large)}.border-radius-xl{border-radius:var(--border-radius-xl)}.shadow-sm{box-shadow:var(--shadow-small)}.shadow-md{box-shadow:var(--shadow-medium)}.shadow-lg{box-shadow:var(--shadow-large)}.shadow-xl{box-shadow:var(--shadow-xl)}.transition-default{transition:var(--transition-default)}.transition-fast{transition:var(--transition-fast)}.transition-slow{transition:var(--transition-slow)}.hidden{display:none}.visible{display:block}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.transition-normal{transition:var(--transition-default)}.animate-spin{animation:spin var(--animation-morphing) linear infinite}.animate-pulse{animation:pulse var(--animation-celebration) infinite}.animate-fade-in{animation:fadeIn var(--animation-normal) ease-out forwards}.animate-scale-in{animation:scaleIn var(--animation-normal) ease-out forwards}.icon-sm{width:16px;height:16px}.icon-md{width:24px;height:24px}.icon-lg{width:32px;height:32px}.icon-xl{width:48px;height:48px}.test-passed{color:var(--success-color)}.test-failed{color:var(--danger-color)}.test-skipped{color:var(--warning-color)}.test-pending{color:var(--text-tertiary)}.btn-xs{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs)}.btn-sm{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm)}.btn-lg{padding:var(--spacing-lg) var(--spacing-xl);font-size:var(--font-size-lg)}.btn-xl{padding:var(--spacing-xl) var(--spacing-2xl);font-size:var(--font-size-xl)}.btn-full{width:100%}.container{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--spacing-md)}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.gap-1{gap:var(--spacing-xs)}.gap-2{gap:var(--spacing-sm)}.gap-3{gap:var(--spacing-md)}.gap-4{gap:var(--spacing-lg)}.gap-5{gap:var(--spacing-xl)}.gap-6{gap:var(--spacing-2xl)}.shadow{box-shadow:var(--shadow-medium)}.shadow-none{box-shadow:none}.border{border:1px solid var(--border-color)}.border-light{border:1px solid var(--border-color-light)}.border-primary{border:1px solid var(--primary-color)}.border-success{border:1px solid var(--success-color)}.border-error{border:1px solid var(--danger-color)}.border-warning{border:1px solid var(--warning-color)}.border-t{border-top:1px solid var(--border-color)}.border-b{border-bottom:1px solid var(--border-color)}.border-l{border-left:1px solid var(--border-color)}.border-r{border-right:1px solid var(--border-color)}.rounded-sm{border-radius:var(--border-radius-small)}.rounded{border-radius:var(--border-radius-medium)}.rounded-lg{border-radius:var(--border-radius-large)}.rounded-full{border-radius:50%}.rounded-none{border-radius:0}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.action-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition-default);border:none;color:#fff;text-decoration:none;box-sizing:border-box}.action-button:disabled{opacity:.5;cursor:not-allowed}.action-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #0003}.action-button.danger{background-color:#dc3545}.action-button.success{background-color:#1e7e34!important;color:#fff!important;border:2px solid #155724;text-shadow:0 1px 3px rgba(0,0,0,.7);font-weight:700}.action-button.skip{background-color:#e6ac00;color:#000;font-weight:700;border:2px solid #cc9a00;text-shadow:none}.action-button.skip:disabled{background-color:#ffe082;color:#888;border-color:#e0c200}.action-button.primary{background:linear-gradient(135deg,var(--primary-color),var(--primary-hover));color:#fff;border:1px solid var(--primary-color);font-weight:600}.action-button.secondary{background:var(--background-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.action-button.btn-primary{background-color:var(--primary-color);color:#fff;border:1px solid var(--primary-color)}.action-button.small{padding:.5rem 1rem;font-size:.875rem}.action-button.large{padding:1rem 2rem;font-size:1.125rem}
