@import"./media.css";@layer components{.view-toggle-controls{display:flex;gap:var(--spacing-2);margin-top:var(--spacing-6);justify-content:center;align-items:center;background:var(--color-gray-100);border-radius:var(--radius-lg);padding:var(--spacing-1);width:fit-content;margin-left:auto;margin-right:auto}.view-toggle-btn{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);border:none;background:transparent;border-radius:var(--radius-base);cursor:pointer;transition:all var(--transition-fast);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-600);white-space:nowrap}.view-toggle-btn:hover{background:var(--color-white);color:var(--color-gray-800);box-shadow:var(--shadow-sm)}.view-toggle-btn.active{background:var(--color-white);color:var(--color-primary);box-shadow:var(--shadow-base);font-weight:var(--font-weight-semibold)}.view-toggle-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.toggle-icon{font-size:var(--font-size-base);line-height:1}.toggle-text{line-height:1}.keyboard-hint{display:flex;align-items:center;margin-left:var(--spacing-4);padding:var(--spacing-2) var(--spacing-3);background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-base);font-size:var(--font-size-xs);color:var(--color-gray-500);cursor:help}.keyboard-hint .hint-text{line-height:1}.keyboard-hint kbd{background:var(--color-white);border:1px solid var(--color-gray-300);border-radius:3px;padding:2px 6px;margin:0 2px;font-family:var(--font-family-mono);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-gray-700);box-shadow:0 1px 2px #0000001a}.view-content{transition:opacity var(--transition-base)}.view-content:not(.active){display:none}.category-controls-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-4);padding:var(--spacing-4) var(--spacing-6);margin-bottom:var(--spacing-6);background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);position:sticky;top:var(--spacing-4);z-index:10;max-width:100%;box-sizing:border-box}.category-controls-toolbar .search-container{flex:1;min-width:200px;max-width:400px;position:relative}.category-controls-toolbar .category-controls-group{display:flex;align-items:center;gap:var(--spacing-2);flex-shrink:0}.category-controls-toolbar .sort-container{position:relative;display:inline-flex}.category-controls-toolbar .clear-all-container{display:inline-flex}.category-controls-toolbar .search-input{background:#fff!important;border:1px solid var(--color-gray-300)!important;color:var(--color-gray-800)!important;font-size:14px!important;padding:var(--spacing-3) var(--spacing-10) var(--spacing-3) 2.75rem!important;width:100%!important;box-sizing:border-box!important;border-radius:var(--radius-md)!important;transition:all var(--transition-base)!important}.category-controls-toolbar .search-input:focus{border-color:var(--color-primary)!important;box-shadow:0 0 0 3px var(--color-primary-light)!important;outline:none!important}.category-controls-toolbar .search-input::placeholder{color:var(--color-gray-500)!important}.category-controls-toolbar .sort-btn,.category-controls-toolbar .clear-all-btn{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);background:var(--color-white);cursor:pointer;transition:all var(--transition-base);white-space:nowrap;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.9375rem;font-weight:500;letter-spacing:-.01em;line-height:1.4;color:var(--color-gray-800);text-shadow:0 .5px 1px rgba(0,0,0,.02);background:linear-gradient(135deg,#fff,#fafbfc);box-shadow:0 1px 3px #00000014,0 1px 2px #0000000f}.category-controls-toolbar .sort-btn:hover,.category-controls-toolbar .clear-all-btn:hover{border-color:var(--color-gray-500);transform:translateY(-1px);background:linear-gradient(135deg,#f8fafc,#f1f5f9);box-shadow:0 4px 12px #0000001f,0 2px 4px #00000014;color:var(--color-gray-900);text-shadow:0 .5px 1px rgba(0,0,0,.06)}.category-controls-toolbar .sort-btn:focus,.category-controls-toolbar .clear-all-btn:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light),0 4px 12px #0000001f,0 2px 4px #00000014;color:var(--color-gray-900);text-shadow:0 .5px 1px rgba(0,0,0,.06)}.category-controls-toolbar .clear-all-btn{color:var(--color-gray-700);border-color:var(--color-gray-300)}.category-controls-toolbar .clear-all-btn:hover{color:var(--color-red-600);border-color:var(--color-red-300);background:linear-gradient(135deg,#fefefe,#fef2f2)}.category-controls-toolbar .clear-all-btn:focus{border-color:var(--color-red-500);box-shadow:0 0 0 3px #ef44441a,0 4px 12px #0000001f,0 2px 4px #00000014;color:var(--color-red-700)}.category-controls-toolbar .sort-dropdown{position:absolute;top:100%;right:0;z-index:100;background:var(--color-white);border:none;border-radius:var(--radius-md);box-shadow:0 8px 32px #0000001f,0 2px 8px #00000014;min-width:180px;max-height:300px;overflow-y:auto;margin-top:0;display:block!important;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all var(--transition-fast);pointer-events:none}.category-controls-toolbar .sort-btn[aria-expanded=true]+.sort-dropdown{opacity:1!important;visibility:visible!important;transform:translateY(0);pointer-events:auto!important}.category-controls-toolbar .sort-option{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-3) var(--spacing-4);cursor:pointer;transition:all var(--transition-base);border-bottom:none;position:relative;margin-bottom:1px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;font-weight:475;letter-spacing:-.005em;line-height:1.45;color:var(--color-gray-850);text-shadow:0 .5px .5px rgba(0,0,0,.015);background:transparent}.category-controls-toolbar .sort-option:hover{color:var(--color-gray-950);transform:translate(2px);background:linear-gradient(90deg,#f1f5f9e6,#e2e8f0f2);box-shadow:0 1px 4px #00000014;text-shadow:0 .5px 1px rgba(0,0,0,.04)}.category-controls-toolbar .sort-option.active{font-weight:575;color:var(--color-primary-900);background:linear-gradient(90deg,#dbeafee6,#bfdbfef2);box-shadow:inset 0 0 0 1px var(--color-primary-300),0 1px 4px #3b82f626;text-shadow:0 .5px 1px rgba(59,130,246,.12);border-left:3px solid var(--color-primary-600);padding-left:calc(var(--spacing-4) - 3px)}@media (width <= 768px){.category-controls-toolbar{flex-direction:column;gap:var(--spacing-3);padding:var(--spacing-3);position:static}.category-controls-toolbar .search-container{width:100%;max-width:none;order:1}.category-controls-toolbar .category-controls-group{width:100%;justify-content:space-between;order:2}.category-controls-toolbar .sort-btn,.category-controls-toolbar .clear-all-btn{flex:1;justify-content:center;padding:var(--spacing-3) var(--spacing-2);font-size:.875rem}}@media (width <= 480px){.category-controls-toolbar .category-controls-group{flex-direction:column;gap:var(--spacing-2)}.category-controls-toolbar .sort-btn,.category-controls-toolbar .clear-all-btn{width:100%}}.categories-section{display:grid;place-items:center;width:100%;min-height:fit-content;grid-template-columns:1fr;grid-template-rows:auto 1fr;gap:var(--spacing-6);padding:var(--container-padding, 16px);box-sizing:border-box}.categories-section .main-section-header{width:100%;max-width:100%;grid-column:1;grid-row:1;justify-self:stretch;align-self:start}.categories-section .categories-grid,.categories-section .scenarios-grid{grid-column:1;grid-row:2;width:100%;max-width:100%;margin:0;padding:0;justify-self:center;align-self:start}@media (width >= 769px){.categories-section{padding:calc(var(--container-padding, 24px) * 1.5) var(--container-padding, 24px);max-width:1200px;margin:0 auto}}@media (width >= 1024px){.categories-section{padding:calc(var(--container-padding, 32px) * 2) var(--container-padding, 32px);max-width:1300px}}@media (width >= 1280px){.categories-section{padding:calc(var(--container-padding, 40px) * 2) var(--container-padding, 40px);max-width:1400px}}@media (width >= 1600px){.categories-section{max-width:1500px}}.categories-grid,.simulations-grid{display:flex;flex-direction:column;gap:var(--spacing-12);margin-bottom:var(--spacing-12);padding:0;width:100%;max-width:100%;box-sizing:border-box;overflow-x:hidden}@media (width >= 769px){.categories-grid,.simulations-grid{padding:0}}@media (width >= 1024px){.categories-grid,.simulations-grid{margin:0 0 var(--spacing-12) 0}}@media (width >= 1280px){.categories-grid,.simulations-grid{margin:0 0 var(--spacing-12) 0}}@media (width >= 1600px){.categories-grid,.simulations-grid{margin:0 0 var(--spacing-12) 0}}.category-section{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm);transition:all var(--transition-base);position:relative;width:100%;max-width:100%;box-sizing:border-box}.category-section:hover{box-shadow:var(--shadow-md)}.category-section:after{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);width:20px;height:60px;background:linear-gradient(to right,transparent,rgb(255 255 255 / 80%));pointer-events:none;opacity:0;transition:opacity var(--transition-base);z-index:1}.category-section:hover:after{opacity:1}.category-section-highlighted{animation:section-highlight-pulse 2s ease-in-out}.scenario-card-highlighted{animation:card-highlight-pulse 2s ease-in-out}@keyframes section-highlight-pulse{0%,to{box-shadow:var(--shadow-md);border-color:var(--color-primary)}50%{box-shadow:var(--shadow-xl),0 0 0 4px #1a73e833;border-color:var(--color-primary)}}@keyframes card-highlight-pulse{0%,to{box-shadow:var(--shadow-md);border-color:var(--color-primary)}50%{box-shadow:var(--shadow-lg),0 0 0 3px #1a73e833;border-color:var(--color-primary);transform:translateY(-4px)}}@media (width <= 768px){.simulations-grid{gap:var(--spacing-8);padding:0}.category-meta-items{align-self:center;justify-content:center}.category-title{font-size:var(--font-size-xl)}.category-section .scenario-card,.simulations-grid .scenario-card{flex:0 0 280px;min-height:260px}.scenario-card{min-height:250px}.categories-section{gap:var(--spacing-4);padding:calc(var(--container-padding, 12px) * 1.5) var(--container-padding, 12px)}}@media (width <= 768px){.category-section .scenario-card,.simulations-grid .scenario-card{max-width:280px;min-width:250px}}@media (width <= 480px){.category-section .scenario-card,.simulations-grid .scenario-card{max-width:240px;min-width:220px}}@media (width <= 768px){.simulations-section{overflow-x:hidden}.simulations-grid{overflow-x:hidden;padding:0 var(--spacing-3)}.category-section{overflow-x:hidden}}@media (width <= 480px){.simulations-grid{padding:0}.categories-section{gap:var(--spacing-3);padding:var(--container-padding, 8px)}}@media (width >= 769px) and (width <= 1199px){.category-section .scenario-card,.simulations-grid .scenario-card{flex:0 0 320px;min-height:280px}}@media (width >= 1200px){.category-section .scenario-card,.simulations-grid .scenario-card{flex:0 0 380px;min-height:300px}}@media (width >= 1400px){.category-section .scenario-card,.simulations-grid .scenario-card{flex:0 0 400px}}.clear-all-container{position:relative;margin-left:var(--spacing-2)}.clear-all-btn{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);border:1px solid var(--color-red-300);border-radius:var(--radius-md);background:var(--color-white);color:var(--color-red-600);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-base);white-space:nowrap}.clear-all-btn:hover{border-color:var(--color-red-400);background:var(--color-red-50);color:var(--color-red-700)}.clear-all-btn:focus{outline:none;border-color:var(--color-red-500);box-shadow:0 0 0 3px var(--color-red-100)}.clear-all-btn:active{background:var(--color-red-100);transform:translateY(1px)}.clear-all-icon{width:16px;height:16px;color:var(--color-red-500);transition:color var(--transition-fast)}.clear-all-btn:hover .clear-all-icon{color:var(--color-red-600)}.clear-all-text{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:1}body.dark-mode .categories-grid,body.dark-mode .categories-section{background:var(--theme-bg-primary)}body.dark-mode .category-section,body.dark-mode .category-controls-toolbar{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .category-controls-toolbar .search-input{background:var(--theme-bg-primary)!important;border:1px solid var(--theme-border)!important;color:var(--theme-text-primary)!important}body.dark-mode .category-controls-toolbar .search-input:focus{border-color:var(--color-primary)!important;box-shadow:0 0 0 3px var(--color-primary-light)!important}body.dark-mode .category-controls-toolbar .search-input::placeholder{color:var(--theme-text-secondary)!important}body.dark-mode .category-controls-toolbar .sort-btn,body.dark-mode .category-controls-toolbar .clear-all-btn{background:var(--theme-bg-primary);border:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .category-controls-toolbar .sort-btn:hover,body.dark-mode .category-controls-toolbar .clear-all-btn:hover{background:var(--theme-bg-secondary);border-color:var(--theme-border-hover)}body.dark-mode .category-controls-toolbar .sort-btn:focus,body.dark-mode .category-controls-toolbar .clear-all-btn:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}body.dark-mode .category-controls-toolbar .sort-dropdown{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);box-shadow:0 8px 32px var(--theme-shadow-lg)}body.dark-mode .category-controls-toolbar .sort-option{color:var(--theme-text-primary);background:transparent}body.dark-mode .category-controls-toolbar .sort-option:hover{background:var(--theme-bg-primary);color:var(--theme-text-primary)}body.dark-mode .category-controls-toolbar .sort-option.active{background:var(--color-primary);color:#fff;border-left-color:var(--color-primary-light)}body.theme-dark .category-controls-toolbar{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.theme-dark .category-controls-toolbar .search-input{background:var(--theme-bg-primary)!important;border:1px solid var(--theme-border)!important;color:var(--theme-text-primary)!important}body.theme-dark .category-controls-toolbar .search-input:focus{border-color:var(--color-primary)!important;box-shadow:0 0 0 3px var(--color-primary-light)!important}body.theme-dark .category-controls-toolbar .search-input::placeholder{color:var(--theme-text-secondary)!important}body.theme-dark .category-controls-toolbar .sort-btn,body.theme-dark .category-controls-toolbar .clear-all-btn{background:var(--theme-bg-primary);border:1px solid var(--theme-border);color:var(--theme-text-primary)}body.theme-dark .category-controls-toolbar .sort-btn:hover,body.theme-dark .category-controls-toolbar .clear-all-btn:hover{background:var(--theme-bg-secondary);border-color:var(--theme-border-hover)}body.theme-dark .category-controls-toolbar .sort-btn:focus,body.theme-dark .category-controls-toolbar .clear-all-btn:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}body.theme-dark .category-controls-toolbar .sort-dropdown{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);box-shadow:0 8px 32px var(--theme-shadow-lg)}body.theme-dark .category-controls-toolbar .sort-option{color:var(--theme-text-primary);background:transparent}body.theme-dark .category-controls-toolbar .sort-option:hover{background:var(--theme-bg-primary);color:var(--theme-text-primary)}body.theme-dark .category-controls-toolbar .sort-option.active{background:var(--color-primary);color:#fff;border-left-color:var(--color-primary-light)}body.dark-mode .scenario-card{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .scenario-card:hover{border-color:var(--theme-border-hover);box-shadow:0 4px 12px var(--theme-shadow-hover)}body.dark-mode .scenario-title{color:var(--theme-text-primary)}body.dark-mode .scenario-description{color:var(--theme-text-secondary)}body.dark-mode .clear-all-btn{background:var(--theme-bg-primary);color:var(--theme-text-primary);border:1px solid var(--theme-border)}body.dark-mode .clear-all-btn:hover{background:var(--theme-bg-secondary);border-color:var(--theme-border-hover)}body.dark-mode .view-toggle-btn{background:var(--theme-bg-primary);color:var(--theme-text-primary);border:1px solid var(--theme-border)}body.dark-mode .view-toggle-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}body.dark-mode .view-toggle-btn:hover:not(.active){background:var(--theme-bg-secondary);border-color:var(--theme-border-hover)}}@layer components{.category-header{background:var(--color-gray-50);padding:var(--spacing-8);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--color-gray-200)}.category-title-group{display:flex;align-items:center;gap:var(--spacing-6);flex:1}.category-icon-large{width:80px;height:80px;border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;font-size:40px;flex-shrink:0}.category-info{flex:1;min-width:0}.category-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin:0 0 var(--spacing-1) 0;line-height:var(--line-height-tight)}.category-description{font-size:var(--font-size-base);color:var(--color-gray-600);line-height:var(--line-height-relaxed);margin:0 0 var(--spacing-2) 0}.category-meta{display:flex;gap:var(--spacing-4);align-items:center;flex-wrap:wrap}.category-meta-items{display:flex;gap:var(--spacing-2);align-items:center;flex-wrap:wrap}.category-difficulty{padding:var(--spacing-1) var(--spacing-3);border-radius:var(--radius-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-transform:capitalize}.category-difficulty.difficulty-beginner{background:var(--color-success);color:var(--color-white);opacity:.9}.category-difficulty.difficulty-intermediate{background:var(--color-warning);color:var(--color-white)}.category-difficulty.difficulty-advanced{background:var(--color-error);color:var(--color-white)}body.theme-dark .category-difficulty.difficulty-beginner,body.dark-mode .category-difficulty.difficulty-beginner{background:var(--color-success);color:var(--color-white);opacity:.8}body.theme-dark .category-difficulty.difficulty-intermediate,body.dark-mode .category-difficulty.difficulty-intermediate{background:var(--color-warning);color:var(--color-white);opacity:.8}body.theme-dark .category-difficulty.difficulty-advanced,body.dark-mode .category-difficulty.difficulty-advanced{background:var(--color-error);color:var(--color-white);opacity:.8}.category-time,.category-progress-text{font-size:var(--font-size-sm);color:var(--color-gray-600);font-weight:var(--font-weight-medium)}body.theme-dark .category-time,body.dark-mode .category-time,body.theme-dark .category-progress-text,body.dark-mode .category-progress-text{color:var(--color-gray-400)}.category-progress-ring{position:relative;width:60px;height:60px;display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;transition:all var(--transition-base)}.category-progress-ring:hover{transform:scale(1.05)}.category-progress-ring:focus{outline:2px solid var(--color-primary-500);outline-offset:2px;border-radius:var(--radius-full)}.category-progress-ring.pulse-for-badge{animation:badge-pulse-fluid 1.25s cubic-bezier(.4,0,.6,1) infinite;filter:drop-shadow(0 0 8px var(--progress-pulse-color, var(--color-accent-400)))}.category-progress-ring.pulse-for-badge:hover{transform:scale(1.25);filter:drop-shadow(0 0 16px var(--progress-pulse-color, var(--color-accent-400))) brightness(1.1)}.category-progress-ring.pulse-for-badge:focus{outline:3px solid var(--progress-pulse-color, var(--color-accent-400));outline-offset:4px;box-shadow:0 0 20px var(--progress-pulse-color, var(--color-accent-400))}.category-progress-ring svg{position:absolute;top:0;left:0;width:100%;height:100%}.progress-percentage{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-gray-700);z-index:1;position:relative;transition:all var(--transition-base)}body.theme-dark .progress-percentage,body.dark-mode .progress-percentage{color:var(--color-gray-300)}.category-progress-ring.pulse-for-badge .progress-percentage{color:var(--progress-pulse-color, var(--color-accent-600));font-weight:var(--font-weight-black);text-shadow:0 0 4px var(--progress-pulse-light, var(--color-accent-300));animation:text-glow-fluid 1.25s cubic-bezier(.4,0,.6,1) infinite}@keyframes text-glow-fluid{0%,to{text-shadow:0 0 4px var(--progress-pulse-light, var(--color-accent-300));color:var(--progress-pulse-color, var(--color-accent-600))}50%{text-shadow:0 0 8px var(--progress-pulse-color, var(--color-accent-400)),0 0 12px var(--progress-pulse-light, var(--color-accent-300));color:var(--progress-pulse-dark, var(--color-accent-700))}}body.theme-dark .category-progress-ring.pulse-for-badge .progress-percentage,body.dark-mode .category-progress-ring.pulse-for-badge .progress-percentage{color:var(--progress-pulse-color, var(--color-accent-400));text-shadow:0 0 6px var(--progress-pulse-color, var(--color-accent-400));animation:text-glow-dark-fluid 1.25s cubic-bezier(.4,0,.6,1) infinite}@keyframes text-glow-dark-fluid{0%,to{text-shadow:0 0 6px var(--progress-pulse-color, var(--color-accent-400));color:var(--progress-pulse-color, var(--color-accent-400))}50%{text-shadow:0 0 10px var(--progress-pulse-light, var(--color-accent-300)),0 0 16px var(--progress-pulse-color, var(--color-accent-400));color:var(--progress-pulse-light, var(--color-accent-300))}}.category-progress-ring.pulse-for-badge:before{content:"";position:absolute;inset:-8px;border:3px solid var(--progress-pulse-color, var(--color-accent-400));border-radius:50%;animation:badge-pulse-ring-fluid 1.25s cubic-bezier(.4,0,.6,1) infinite .2s;z-index:0;box-shadow:0 0 12px var(--progress-pulse-color, var(--color-accent-400))}.category-progress-ring.pulse-for-badge:after{content:"";position:absolute;inset:-12px;border:2px solid var(--progress-pulse-light, var(--color-accent-300));border-radius:50%;animation:badge-pulse-outer-fluid 1.25s cubic-bezier(.4,0,.6,1) infinite .4s;z-index:-1;opacity:.4}@keyframes badge-pulse-fluid{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.12);opacity:.92}}@keyframes badge-pulse-ring-fluid{0%,to{transform:scale(1);opacity:.7}50%{transform:scale(1.25);opacity:.3}}@keyframes badge-pulse-outer-fluid{0%,to{transform:scale(1);opacity:.3}50%{transform:scale(1.4);opacity:.1}}.category-progress-ring.badge-alert{animation:badge-pulse-simple 2s ease-in-out infinite}.category-progress-ring.badge-alert:after{content:"";position:absolute;top:50%;left:50%;width:100%;height:100%;border:2px solid currentcolor;border-radius:50%;transform:translate(-50%,-50%);animation:badge-pulse-ring-simple 2s ease-in-out infinite;pointer-events:none;opacity:.6}@keyframes badge-pulse-simple{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes badge-pulse-ring-simple{0%{transform:translate(-50%,-50%) scale(1);opacity:.6}50%{transform:translate(-50%,-50%) scale(1.2);opacity:.3}to{transform:translate(-50%,-50%) scale(1.4);opacity:0}}.scenario-hover-category-header{position:absolute;top:0;left:0;right:0;z-index:10;background:#fffffffa;backdrop-filter:blur(10px);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:0 4px 16px #00000026;border:1px solid var(--color-gray-200);border-bottom:none;transform:translateY(-100%);transform-style:preserve-3d;backface-visibility:hidden;opacity:0;transition:transform .4s cubic-bezier(.25,.8,.25,1),opacity .3s cubic-bezier(.25,.8,.25,1),box-shadow .3s ease-out;pointer-events:none;will-change:transform,opacity}body.theme-dark .scenario-hover-category-header,body.dark-mode .scenario-hover-category-header{background:#1f2937fa;border-color:var(--color-gray-600)}.scenario-card-wrapper:hover .scenario-hover-category-header,.scenario-card-wrapper:focus-within .scenario-hover-category-header{transform:translateY(0);opacity:1;box-shadow:0 8px 24px #0003;pointer-events:auto}@media (hover: none) and (pointer: coarse){.scenario-card-wrapper:active .scenario-hover-category-header,.scenario-card-wrapper:focus .scenario-hover-category-header{transform:translateY(0);opacity:1;box-shadow:0 8px 24px #0003;pointer-events:auto}}.progress-ring-tooltip{background:var(--color-gray-900);color:var(--color-white);padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);max-width:300px;min-width:200px;text-align:center;line-height:1.5;box-shadow:var(--shadow-lg);border:1px solid var(--color-gray-700);pointer-events:none;white-space:normal;word-wrap:break-word;overflow-wrap:break-word;opacity:0;transform:translate(-50%) translateY(4px);transition:opacity .2s ease-out,transform .2s ease-out;z-index:1300!important;position:fixed!important;display:block!important;visibility:visible!important}.progress-ring-tooltip.visible{opacity:1!important;transform:translate(-50%) translateY(0)!important;display:block!important;visibility:visible!important}.progress-ring-tooltip:before{content:"";position:absolute;top:-6px;left:50%;transform:translate(-50%);border:6px solid transparent;border-bottom-color:var(--color-gray-900)}@keyframes tooltip-appear{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}body.theme-dark .progress-ring-tooltip,body.dark-mode .progress-ring-tooltip{background:var(--color-gray-800);border-color:var(--color-gray-600)}body.theme-dark .progress-ring-tooltip:before,body.dark-mode .progress-ring-tooltip:before{border-bottom-color:var(--color-gray-800)}.scenarios-grid[data-view=scenario] .category-time,.scenarios-grid[data-view=scenario] .category-progress-text,.scenarios-grid[data-view=scenario] .category-difficulty,.scenarios-grid[data-view=scenario] .category-description{display:none!important}.scenarios-grid[data-view=scenario] .category-title{font-size:18px!important}.scenarios-grid[data-view=scenario] .category-progress-ring{display:flex!important;visibility:visible!important;pointer-events:auto!important}.scenarios-grid[data-view=scenario] .progress-ring-tooltip,.scenarios-grid[data-view=scenario] .manual-fix-tooltip{z-index:1300!important;display:block!important;visibility:visible!important;opacity:1!important}@media (width <= 768px){.category-header{padding:var(--spacing-6);flex-direction:column;gap:var(--spacing-4);text-align:center;position:relative}.category-title-group{flex-direction:column;text-align:center;gap:var(--spacing-4);position:static}.category-icon-large{width:60px;height:60px;font-size:30px;margin:0 auto}.category-meta{flex-direction:column;align-items:flex-start;gap:var(--spacing-2);margin-top:var(--spacing-2)}.category-meta-items{align-self:center;justify-content:center}.category-title{font-size:var(--font-size-xl)}}@media (width <= 768px){.progress-ring-tooltip{max-width:250px;min-width:180px;font-size:var(--font-size-xs);padding:var(--spacing-2) var(--spacing-3);left:50%!important;transform:translate(-50%)!important;margin-left:0!important;margin-right:0!important}.progress-ring-tooltip.visible{transform:translate(-50%) translateY(0)!important}}@media (width <= 480px){.progress-ring-tooltip{max-width:200px;min-width:150px;font-size:var(--font-size-xs);padding:var(--spacing-2);left:50%!important;transform:translate(-50%)!important}}@media (width <= 768px){.category-progress-ring{position:absolute;left:80%;transform:translate(calc(30px + var(--spacing-3)));width:50px;height:50px;display:flex;z-index:10}}@media print{.category-progress-ring{display:none}}@media (prefers-reduced-motion: reduce){.category-progress-ring,.category-progress-ring.pulse-for-badge,.progress-percentage,.progress-ring-tooltip{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.category-progress-ring:hover,.category-progress-ring.pulse-for-badge:hover{transform:none!important}}@media (prefers-contrast: more){.category-progress-ring{outline:2px solid currentcolor}.progress-ring-tooltip{border-width:2px;background:#000;color:#fff}body.theme-dark .progress-ring-tooltip,body.dark-mode .progress-ring-tooltip{background:#fff;color:#000}.scenario-hover-category-header{border-width:2px}}}@layer components{.scenario-hero{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:var(--color-white);text-align:center;padding:var(--spacing-20) var(--spacing-6);min-height:500px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.scenario-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 80%,rgb(255 255 255 / 10%) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgb(255 255 255 / 8%) 0%,transparent 50%);pointer-events:none}.scenario-hero .hero-content{max-width:800px;margin:0 auto;position:relative;z-index:2}.scenario-hero .hero-title{font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-6);line-height:var(--line-height-tight);text-shadow:0 2px 4px rgb(0 0 0 / 10%)}.scenario-hero .hero-description{font-size:var(--font-size-xl);line-height:var(--line-height-relaxed);opacity:.95;max-width:600px;margin:0 auto}.categories-section{position:relative;width:100%;min-height:400px;display:flex;flex-direction:column;gap:var(--spacing-8);padding:var(--spacing-6);background:var(--color-surface);border-radius:var(--radius-lg);transition:all .3s ease}.dark-mode .categories-section{background:var(--color-surface-dark);border:1px solid var(--color-border-dark)}@media (max-width: 768px){.categories-section{padding:var(--spacing-4);gap:var(--spacing-6)}}@media (max-width: 480px){.categories-section{padding:var(--spacing-3);gap:var(--spacing-4);border-radius:var(--radius-md)}}.scenarios-grid{display:flex;overflow:auto hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding-bottom:var(--spacing-2);gap:var(--spacing-6)}@media (hover: none) and (pointer: coarse){.scenarios-grid{scrollbar-width:none;-ms-overflow-style:none}.scenarios-grid::-webkit-scrollbar{display:none}}.scenarios-grid[data-view=category]{display:flex;overflow:auto hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding-bottom:var(--spacing-2);gap:var(--spacing-6)}@media (hover: none) and (pointer: coarse){.scenarios-grid[data-view=category]{scrollbar-width:none;-ms-overflow-style:none}.scenarios-grid[data-view=category]::-webkit-scrollbar{display:none}}.scenarios-grid[data-view=scenario]{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-6);padding:var(--spacing-4);transition:all .3s ease;border-radius:var(--radius-lg);box-shadow:inset 0 0 0 1px transparent;overflow:visible;scroll-snap-type:none}.ethics-explorer .scenarios-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-6);padding:var(--spacing-4);transition:all .3s ease;border-radius:var(--radius-lg);box-shadow:inset 0 0 0 1px transparent}.ethics-explorer .scenarios-grid:hover{box-shadow:inset 0 0 0 1px #4a90e226;animation:grid-glow 2s ease-in-out infinite}@keyframes grid-glow{0%,to{box-shadow:inset 0 0 0 1px #4a90e226}50%{box-shadow:inset 0 0 0 1px #4a90e240}}.scenario-card-wrapper{position:relative;overflow:hidden;border-radius:var(--radius-lg);cursor:pointer;transition:transform .3s cubic-bezier(.25,.8,.25,1);transform-style:preserve-3d;backface-visibility:hidden}.scenario-card-wrapper:hover{transform:translateY(-2px);box-shadow:0 8px 32px #0000001f}.category-progress-ring-mini{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .2s ease}.category-progress-ring-mini:hover{transform:scale(1.1)}.progress-percentage-mini{position:absolute;font-size:.75rem;font-weight:600;color:var(--color-text-primary, #1f2937);pointer-events:none}.category-info-mini{display:flex;flex-direction:column;gap:var(--spacing-1, 4px);min-width:0}.category-icon-mini{font-size:1.25rem;line-height:1}.category-title-mini{font-weight:600;color:var(--color-text-primary, #1f2937);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.875rem}.category-progress-text-mini{font-size:.75rem;color:var(--color-text-secondary, #6b7280);font-weight:500}.category-progress-ring-mini .progress-circle{transition:stroke-dashoffset .6s cubic-bezier(.4,0,.2,1)}.category-progress-ring-mini:focus{outline:2px solid var(--color-primary, #3b82f6);outline-offset:2px;border-radius:50%}.scenario-controls-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-4);padding:var(--spacing-4) var(--spacing-6);margin-bottom:var(--spacing-6);background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);position:sticky;top:var(--spacing-4);z-index:10;max-width:100%;box-sizing:border-box;grid-column:1 / -1;order:-1}.scenarios-grid[data-view=scenario] .scenario-controls-toolbar{display:flex!important}.scenario-controls-toolbar .search-container{flex:1;min-width:200px;max-width:400px;position:relative}.scenario-controls-toolbar .scenario-controls-group,.scenario-controls-toolbar .controls-group{display:flex;align-items:center;gap:var(--spacing-2);flex-shrink:0}.scenario-controls-toolbar .sort-container{position:relative;display:inline-flex}.scenario-controls-toolbar .clear-all-container{display:inline-flex}.scenarios-grid.view-content[data-view=scenario] .scenario-controls-toolbar{display:flex!important}.scenarios-grid[data-view=scenario]:not([style*="display: none"]) .scenario-controls-toolbar{display:flex!important}.scenario-controls-toolbar .search-container,.scenario-controls-toolbar .filter-container,.scenario-controls-toolbar .sort-container,.scenario-controls-toolbar .controls-group{display:flex!important;align-items:center;position:relative;visibility:visible!important;opacity:1!important}.scenario-controls-toolbar .search-container{flex:1;max-width:100%}.scenario-controls-toolbar .controls-group{gap:var(--spacing-3)}.scenario-controls-toolbar .filter-container,.scenario-controls-toolbar .sort-container{display:inline-flex!important}.scenario-controls-toolbar .search-input{background:#fff;border:1px solid var(--color-gray-300);color:var(--color-gray-800);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:14px;font-weight:475;letter-spacing:-.005em;line-height:1.4;padding:var(--spacing-3) var(--spacing-4) var(--spacing-3) 2.75rem;width:100%;box-sizing:border-box;border-radius:var(--radius-md);transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 1px 2px #0000000a}.scenario-controls-toolbar .search-input:focus{border-color:var(--color-primary-500);box-shadow:0 0 0 3px rgba(var(--color-primary-500-rgb),.1),0 1px 3px #0000001a;outline:none;transform:translateY(-1px)}.scenario-controls-toolbar .search-input::placeholder{color:var(--color-gray-500);font-weight:425}.scenario-controls-toolbar .filter-btn,.scenario-controls-toolbar .sort-btn{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);background:linear-gradient(135deg,#fff,#fafbfc);color:var(--color-gray-800);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:.9375rem;font-weight:500;letter-spacing:-.01em;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);white-space:nowrap;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000f;text-shadow:0 .5px 1px rgba(0,0,0,.02)}.scenario-controls-toolbar .clear-all-btn{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);border:1px solid var(--color-red-300);border-radius:var(--radius-md);background:linear-gradient(135deg,#fff,#fef2f2);color:var(--color-red-600);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:.9375rem;font-weight:500;letter-spacing:-.01em;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);white-space:nowrap;box-shadow:0 1px 3px #ef44441f,0 1px 2px #0000000f;text-shadow:0 .5px 1px rgba(0,0,0,.02)}@media (width <= 768px){.scenario-controls-toolbar{flex-direction:column;gap:var(--spacing-3);padding:var(--spacing-3);position:static}.scenario-controls-toolbar .search-container{width:100%;max-width:none;order:1}.scenario-controls-toolbar .scenario-controls-group,.scenario-controls-toolbar .controls-group{width:100%;justify-content:space-between;order:2}.scenario-controls-toolbar .sort-btn,.scenario-controls-toolbar .clear-all-btn{flex:1;justify-content:center;padding:var(--spacing-3) var(--spacing-2);font-size:.875rem}}@media (width <= 480px){.scenario-controls-toolbar .scenario-controls-group,.scenario-controls-toolbar .controls-group{flex-direction:column;gap:var(--spacing-2)}.scenario-controls-toolbar .sort-btn,.scenario-controls-toolbar .clear-all-btn{width:100%}}.scenarios-grid{display:flex;gap:var(--spacing-4);padding:var(--spacing-8) 0;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:var(--spacing-3);width:18px;height:18px;color:var(--color-gray-400);z-index:2;pointer-events:none}.scenario-controls-toolbar .search-input{width:100%;padding:var(--spacing-3) var(--spacing-10) var(--spacing-3) 2.75rem;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--color-white);transition:all var(--transition-base);box-sizing:border-box}.scenario-controls-toolbar .search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.scenario-controls-toolbar .search-input::placeholder{color:var(--color-gray-500)}.search-clear{position:absolute;right:var(--spacing-3);width:18px;height:18px;color:var(--color-gray-400);background:none;border:none;cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-base);z-index:2}.search-clear:hover{color:var(--color-gray-600);background:var(--color-gray-100)}.search-autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;z-index:1000;background:var(--color-white);border:1px solid var(--color-gray-300);border-top:none;border-radius:0 0 var(--radius-md) var(--radius-md);box-shadow:0 4px 12px #00000026;max-height:200px;overflow-y:auto;margin-top:1px}.autocomplete-section{border-bottom:1px solid var(--color-gray-100)}.autocomplete-section:last-child{border-bottom:none}.autocomplete-section-header{padding:var(--spacing-2) var(--spacing-3);background:var(--color-gray-50);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-gray-600);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-gray-100)}.autocomplete-scenarios,.autocomplete-tags{padding:var(--spacing-1) 0}.autocomplete-no-results{padding:var(--spacing-4);text-align:center}.no-results-text{font-size:var(--font-size-sm);color:var(--color-gray-500);font-style:italic}.search-autocomplete-item{padding:var(--spacing-3);cursor:pointer;transition:background-color var(--transition-fast);border-bottom:1px solid var(--color-gray-100)}.search-autocomplete-item:last-child{border-bottom:none}.search-autocomplete-item:hover{background:var(--color-gray-50)}.search-autocomplete-item.highlighted{background:var(--color-primary-50);color:var(--color-primary-700)}.autocomplete-item{display:flex;align-items:center;padding:var(--spacing-3) var(--spacing-4);cursor:pointer;transition:background-color var(--transition-fast);border-bottom:1px solid var(--color-gray-100)}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover{background:var(--color-gray-50)}.autocomplete-item.highlighted{background:var(--color-primary-50);color:var(--color-primary-700)}.autocomplete-item-icon{width:20px;height:20px;margin-right:var(--spacing-3);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);border-radius:var(--radius-sm);background:var(--color-gray-100);color:var(--color-gray-600);flex-shrink:0}.autocomplete-item-content{flex:1;min-width:0}.autocomplete-item-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-900);margin-bottom:2px;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.autocomplete-item-meta{font-size:var(--font-size-xs);color:var(--color-gray-500);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scenario-count{margin-bottom:var(--spacing-6);padding:var(--spacing-3) var(--spacing-4);background:var(--color-gray-50);border-radius:var(--radius-md);border:1px solid var(--color-gray-200);grid-column:1 / -1;order:0}.count-text{font-size:var(--font-size-sm);color:var(--color-gray-700);margin:0;font-weight:var(--font-weight-medium);text-align:center}.count-number{font-weight:var(--font-weight-bold);color:var(--color-primary)}.basic-fallback{text-align:center;padding:var(--spacing-20) var(--spacing-6);background:var(--color-gray-50);border-radius:var(--radius-xl);border:2px dashed var(--color-gray-300);max-width:600px;margin:var(--spacing-12) auto}.basic-fallback h2{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-gray-800);margin-bottom:var(--spacing-4)}.basic-fallback p{font-size:var(--font-size-lg);color:var(--color-gray-600);margin-bottom:var(--spacing-8);line-height:var(--line-height-relaxed)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-3) var(--spacing-6);border:1px solid transparent;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:1.5;text-decoration:none;cursor:pointer;transition:all var(--transition-base);white-space:nowrap;user-select:none;min-height:44px}.btn:focus{outline:none;box-shadow:0 0 0 3px #3b82f626}.btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.btn-primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f640}.btn-primary:active{transform:translateY(0);box-shadow:0 2px 4px #3b82f640}.filter-section{background:var(--color-gray-50);padding:var(--spacing-12) 0;border-bottom:1px solid var(--color-gray-200)}.filter-section .filter-container,.filter-section .sort-container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-6);position:relative}.scenario-controls-toolbar .filter-container,.scenario-controls-toolbar .sort-container{position:relative;min-height:40px}.filter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-8)}.filter-header h2{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--color-gray-900);margin:0;display:flex;align-items:center;gap:var(--spacing-3)}.filter-header h2:before{content:"🔍";font-size:var(--font-size-xl)}.filter-controls{background:var(--color-white);border-radius:var(--radius-xl);padding:var(--spacing-8);box-shadow:0 4px 6px #0000000d;border:1px solid var(--color-gray-200);display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-6);align-items:start}.filter-section .controls-group{display:flex;align-items:center;gap:var(--spacing-3)}.filter-btn,.sort-btn{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-5);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);background:var(--color-white);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);white-space:nowrap;position:relative;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:.9375rem;font-weight:500;letter-spacing:-.01em;line-height:1.4;color:var(--color-gray-800);background:linear-gradient(135deg,#fff,#fafbfc);box-shadow:0 1px 3px #00000014,0 1px 2px #0000000f;text-shadow:0 .5px 1px rgba(0,0,0,.02)}.sort-btn{font-weight:575;color:var(--color-gray-900);border:1px solid var(--color-gray-400);background:linear-gradient(135deg,#fff,#f8fafc);text-shadow:0 .5px 1px rgba(0,0,0,.04);letter-spacing:-.005em}.filter-btn:hover,.sort-btn:hover{border-color:var(--color-gray-500);transform:translateY(-1px);background:linear-gradient(135deg,#f8fafc,#f1f5f9);box-shadow:0 4px 12px #0000001f,0 2px 4px #00000014;color:var(--color-gray-900);text-shadow:0 .5px 1px rgba(0,0,0,.06)}.sort-btn:hover{border-color:var(--color-gray-600);color:var(--color-gray-950);background:linear-gradient(135deg,#f1f5f9,#e2e8f0);box-shadow:0 6px 16px #00000026,0 3px 6px #0000001a;text-shadow:0 1px 2px rgba(0,0,0,.08)}.filter-btn:focus,.sort-btn:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light),0 4px 12px #0000001f,0 2px 4px #00000014;color:var(--color-gray-900);text-shadow:0 .5px 1px rgba(0,0,0,.06)}.sort-btn:focus{box-shadow:0 0 0 3px #3b82f626,0 4px 16px #00000026,0 2px 6px #0000001a;color:var(--color-gray-950);text-shadow:0 .5px 1px rgba(0,0,0,.08)}.filter-btn[aria-expanded=true],.sort-btn[aria-expanded=true]{border-color:var(--color-primary-600);transform:translateY(1px);background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:var(--color-primary-800);box-shadow:0 2px 8px #3b82f633,0 1px 3px #0000001f;text-shadow:0 .5px 1px rgba(59,130,246,.1)}.sort-btn[aria-expanded=true]{border-color:var(--color-primary-700);color:var(--color-primary-900);background:linear-gradient(135deg,#dbeafe,#bfdbfe);box-shadow:0 2px 10px #3b82f640,0 1px 4px #00000026;text-shadow:0 .5px 1px rgba(59,130,246,.15)}.filter-icon,.sort-icon{width:16px;height:16px;color:var(--color-gray-500);transition:transform var(--transition-fast)}.filter-btn[aria-expanded=true] .filter-icon,.sort-btn[aria-expanded=true] .sort-icon{transform:rotate(180deg)}.filter-dropdown,.sort-dropdown{position:absolute;top:100%;right:0;z-index:100;background:var(--color-white);border:none;border-radius:var(--radius-md);box-shadow:0 8px 32px #0000001f,0 2px 8px #00000014;min-width:200px;max-height:300px;overflow-y:auto;margin-top:0;display:block!important;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all var(--transition-fast);pointer-events:none}.filter-dropdown[style*="display: none"],.sort-dropdown[style*="display: none"]{display:block!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}.filter-btn[aria-expanded=true]+.filter-dropdown,.sort-btn[aria-expanded=true]+.sort-dropdown{opacity:1!important;visibility:visible!important;transform:translateY(0);pointer-events:auto!important}.filter-btn[aria-expanded=true]+.filter-dropdown[style*="display: block"],.sort-btn[aria-expanded=true]+.sort-dropdown[style*="display: block"]{display:block!important;opacity:1!important;visibility:visible!important;transform:translateY(0);pointer-events:auto!important}.filter-btn.active+.filter-dropdown,.sort-btn.active+.sort-dropdown,.filter-btn:focus+.filter-dropdown,.sort-btn:focus+.sort-dropdown{opacity:1!important;visibility:visible!important;transform:translateY(0);pointer-events:auto!important}.scenario-controls-toolbar .filter-container:hover .filter-dropdown[style*="display: block"],.scenario-controls-toolbar .sort-container:hover .sort-dropdown[style*="display: block"],.filter-dropdown[style*="display: block"]:hover,.sort-dropdown[style*="display: block"]:hover{opacity:1!important;visibility:visible!important;transform:translateY(0);pointer-events:auto!important}.scenario-controls-toolbar .filter-container:hover .filter-dropdown,.scenario-controls-toolbar .sort-container:hover .sort-dropdown,.filter-dropdown:hover,.sort-dropdown:hover{display:block!important;opacity:1!important;visibility:visible!important;transform:translateY(0);pointer-events:auto!important}.scenario-controls-toolbar .filter-container:hover .filter-btn,.scenario-controls-toolbar .sort-container:hover .sort-btn{border-color:var(--color-primary-600);background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:var(--color-primary-800)}.filter-option,.sort-option{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-3) var(--spacing-4);cursor:pointer;transition:all var(--transition-base);border-bottom:none;position:relative;margin-bottom:1px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:.875rem;font-weight:450;letter-spacing:-.003em;line-height:1.45;color:var(--color-gray-800);text-shadow:0 .5px .5px rgba(0,0,0,.015);background:transparent}.sort-option{font-weight:475;color:var(--color-gray-850);letter-spacing:-.005em;padding:var(--spacing-3) var(--spacing-4)}button.sort-option{border:none;background:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;color:inherit;text-shadow:inherit;text-align:left;width:100%;cursor:pointer;outline:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.filter-option:hover,.sort-option:hover{background:var(--color-gray-50);color:var(--color-gray-900);transform:translate(2px);background:linear-gradient(90deg,#f8fafccc,#f1f5f9e6);box-shadow:0 1px 3px #0000000d;text-shadow:0 .5px 1px rgba(0,0,0,.025)}.sort-option:hover{color:var(--color-gray-950);background:linear-gradient(90deg,#f1f5f9e6,#e2e8f0f2);box-shadow:0 1px 4px #00000014;text-shadow:0 .5px 1px rgba(0,0,0,.04)}button.sort-option:hover,button.filter-option:hover{color:inherit;background:inherit;box-shadow:inherit;text-shadow:inherit;transform:inherit}.filter-option.active,.sort-option.active{background:var(--color-primary-50);color:var(--color-primary-800);font-weight:550;background:linear-gradient(90deg,#dbeafecc,#bfdbfee6);box-shadow:inset 0 0 0 1px var(--color-primary-200),0 1px 3px #3b82f61a;text-shadow:0 .5px 1px rgba(59,130,246,.08);border-left:3px solid var(--color-primary-400);padding-left:calc(var(--spacing-4) - 3px)}.sort-option.active{font-weight:575;color:var(--color-primary-900);background:linear-gradient(90deg,#dbeafee6,#bfdbfef2);box-shadow:inset 0 0 0 1px var(--color-primary-300),0 1px 4px #3b82f626;text-shadow:0 .5px 1px rgba(59,130,246,.12);border-left:3px solid var(--color-primary-600)}button.filter-option.active,button.sort-option.active{background:inherit;color:inherit;font-weight:inherit;box-shadow:inherit;text-shadow:inherit;border-left:inherit;padding-left:inherit}button.sort-option.active{background:inherit;color:inherit;font-weight:inherit;box-shadow:inherit;text-shadow:inherit;border-left:inherit}.scenario-controls-toolbar .filter-option .option-text,.scenario-controls-toolbar .sort-option .option-text{flex:1;font-weight:inherit;letter-spacing:inherit;line-height:inherit;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.scenario-controls-toolbar .sort-option .option-text{font-weight:inherit;color:inherit}.scenario-controls-toolbar .filter-option .check-icon,.scenario-controls-toolbar .sort-option .check-icon{width:16px;height:16px;color:var(--color-primary);opacity:0;transition:all var(--transition-base);margin-left:var(--spacing-2);filter:drop-shadow(0 .5px 1px rgba(59,130,246,.15))}.sort-option .check-icon{color:var( --color-primary-600 );filter:drop-shadow(0 .5px 1px rgba(59,130,246,.2))}.filter-option.active .check-icon,.sort-option.active .check-icon{opacity:1;transform:scale(1.05);filter:drop-shadow(0 1px 2px rgba(59,130,246,.25))}.sort-option.active .check-icon{color:var(--color-primary-700);transform:scale(1.1);filter:drop-shadow(0 1px 2px rgba(59,130,246,.3))}.tag-chip{display:inline-flex;align-items:center;gap:var(--spacing-1);padding:var(--spacing-1) var(--spacing-3);background:var(--color-primary-100);color:var(--color-primary-700);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast)}.tag-chip:hover{background:var(--color-primary-200);color:var(--color-primary-800)}.tag-chip.active,.tag-chip.selected{background:var(--color-primary);color:var(--color-white)}.tag-chip-remove{width:14px;height:14px;border-radius:var(--radius-full);background:var(--color-primary-200);color:var(--color-primary-700);border:none;cursor:pointer;transition:all var(--transition-fast)}.tag-chip:hover .tag-chip-remove{background:var(--color-primary-300);color:var(--color-primary-800)}.tag-chip.active .tag-chip-remove{background:#fff3;color:var(--color-white)}.active-filters{margin-bottom:var(--spacing-6);min-height:2.5rem;display:flex;flex-wrap:wrap;gap:var(--spacing-2);align-items:center}.filter-chip{display:inline-flex;align-items:center;background:var(--color-primary);color:var(--color-white);padding:var(--spacing-2) var(--spacing-4);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:var(--spacing-2);box-shadow:0 2px 4px #0000001a;transition:all .2s ease}.filter-chip:hover{background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.filter-chip .remove-chip{background:#fff3;border:none;color:var(--color-white);cursor:pointer;font-size:var(--font-size-lg);line-height:1;padding:var(--spacing-1);border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease}.filter-chip .remove-chip:hover{background:#ffffff4d}.active-filter-chip{display:inline-flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);background:var(--color-gray-100);color:var(--color-gray-700);border-radius:var(--radius-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.active-filter-remove{width:16px;height:16px;color:var(--color-gray-500);background:none;border:none;cursor:pointer;transition:color var(--transition-fast)}.active-filter-remove:hover{color:var(--color-gray-700)}.clear-all-container{position:relative;margin-left:var(--spacing-2)}.clear-all-btn{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-5);border:1px solid var(--color-red-300);border-radius:var(--radius-md);background:var(--color-white);color:var(--color-red-600);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);white-space:nowrap;position:relative;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:.9375rem;font-weight:500;letter-spacing:-.01em;line-height:1.4;background:linear-gradient(135deg,#fff,#fef2f2);box-shadow:0 1px 3px #ef44441f,0 1px 2px #0000000f;text-shadow:0 .5px 1px rgba(0,0,0,.02)}.clear-all-btn:hover{border-color:var(--color-red-400);background:linear-gradient(135deg,#fef2f2,#fee2e2);color:var(--color-red-700);transform:translateY(-1px);box-shadow:0 4px 12px #ef444426,0 2px 4px #00000014;text-shadow:0 .5px 1px rgba(0,0,0,.06)}.clear-all-btn:focus{outline:none;border-color:var(--color-red-500);box-shadow:0 0 0 3px #ef44441a,0 4px 12px #ef44441f,0 2px 4px #00000014;color:var(--color-red-700);text-shadow:0 .5px 1px rgba(0,0,0,.06)}.clear-all-btn:active{background:linear-gradient(135deg,#fee2e2,#fecaca);transform:translateY(0);box-shadow:0 2px 6px #ef444433,0 1px 2px #0000001a}.clear-all-icon{width:16px;height:16px;color:var(--color-red-500);transition:color var(--transition-fast)}.clear-all-btn:hover .clear-all-icon{color:var(--color-red-600)}.clear-all-text{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:1}.results-section{padding:var(--spacing-12) 0;background:var(--color-white)}.results-container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-6)}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-8);padding-bottom:var(--spacing-4);border-bottom:1px solid var(--color-gray-200)}.results-header h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-gray-900);margin:0}.results-count{font-size:var(--font-size-sm);color:var(--color-gray-600);margin-bottom:var(--spacing-4)}.sort-controls{display:flex;align-items:center;gap:var(--spacing-3)}.sort-controls label{font-weight:var(--font-weight-medium);color:var(--color-gray-700);font-size:var(--font-size-sm)}.sort-select{padding:var(--spacing-2) var(--spacing-3);border:2px solid var(--color-gray-200);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--color-white);transition:border-color .2s ease}.sort-select:focus{outline:none;border-color:var(--color-primary)}.load-more-container{display:flex;justify-content:center;margin-top:var(--spacing-6);text-align:center}.load-more-btn{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-6);border:1px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-white);color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-base)}.load-more-btn:hover{background:var(--color-primary);color:var(--color-white)}.load-more-btn:disabled{opacity:.5;cursor:not-allowed}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-20) var(--spacing-6)}.spinner{width:48px;height:48px;border:4px solid var(--color-gray-200);border-top:4px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:var(--spacing-4)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-state p{color:var(--color-gray-600);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium)}.no-results{text-align:center;padding:var(--spacing-20) var(--spacing-6);background:var(--color-gray-50);border-radius:var(--radius-xl);margin:var(--spacing-8) 0}.no-results-icon{font-size:4rem;margin-bottom:var(--spacing-4);opacity:.5}.no-results-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-gray-700);margin-bottom:var(--spacing-2)}.no-results h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-gray-800);margin-bottom:var(--spacing-2)}.no-results-message{font-size:var(--font-size-base);line-height:var(--line-height-relaxed)}.no-results p{color:var(--color-gray-600);margin-bottom:var(--spacing-6);font-size:var(--font-size-lg)}.scenario-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:var(--spacing-8)}.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)}.gap-4{gap:var(--spacing-4)}.gap-8{gap:var(--spacing-8)}body.dark-mode .scenarios-grid,body.dark-mode .scenarios-grid[data-view=category],body.dark-mode .scenarios-grid[data-view=scenario]{background:var(--theme-bg-primary)}body.dark-mode .scenario-controls-toolbar{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .scenario-controls-toolbar .search-input{background:var(--theme-bg-secondary);border-color:var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .scenario-controls-toolbar .search-input:focus{border-color:var(--theme-accent);box-shadow:0 0 0 3px var(--theme-accent-light)}body.dark-mode .scenario-controls-toolbar .search-input::placeholder{color:var(--theme-text-secondary)}body.dark-mode .filter-btn,body.dark-mode .sort-btn{background:var(--theme-bg-secondary);border-color:var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .filter-btn:hover,body.dark-mode .sort-btn:hover{background:var(--theme-bg-tertiary);border-color:var(--theme-border-hover)}body.dark-mode .filter-dropdown,body.dark-mode .sort-dropdown{background:var(--theme-bg-secondary);border-color:var(--theme-border)}body.dark-mode .filter-option,body.dark-mode .sort-option{color:var(--theme-text-primary);border-bottom-color:var(--theme-border)}body.dark-mode .filter-option:hover,body.dark-mode .sort-option:hover{background:var(--theme-bg-tertiary)}body.dark-mode .search-autocomplete-dropdown{background:var(--theme-bg-secondary);border-color:var(--theme-border)}body.dark-mode .search-autocomplete-item{color:var(--theme-text-primary);border-bottom-color:var(--theme-border)}body.dark-mode .search-autocomplete-item:hover{background:var(--theme-bg-tertiary)}body.dark-mode .autocomplete-item{color:var(--theme-text-primary);border-bottom-color:var(--theme-border)}body.dark-mode .autocomplete-item:hover{background:var(--theme-bg-tertiary)}body.dark-mode .autocomplete-item.highlighted{background:var(--color-primary-900);color:var(--color-primary-100)}body.dark-mode .autocomplete-item-icon{background:var(--theme-bg-tertiary);color:var(--theme-text-secondary)}body.dark-mode .autocomplete-item-title{color:var(--theme-text-primary)}body.dark-mode .autocomplete-item-meta{color:var(--theme-text-secondary)}body.dark-mode .autocomplete-section-header{background:var(--theme-bg-tertiary);color:var(--theme-text-secondary);border-bottom-color:var(--theme-border)}body.dark-mode .autocomplete-section{border-bottom-color:var(--theme-border)}body.dark-mode .no-results-text{color:var(--theme-text-secondary)}body.dark-mode .scenario-count{background:var(--theme-bg-secondary);border-color:var(--theme-border)}body.dark-mode .count-text{color:var(--theme-text-primary)}body.dark-mode .count-number{color:var(--theme-accent)}body.dark-mode .basic-fallback{background:var(--theme-bg-secondary);border-color:var(--theme-border)}body.dark-mode .basic-fallback h2{color:var(--theme-text-primary)}body.dark-mode .basic-fallback p{color:var(--theme-text-secondary)}body.dark-mode .btn-primary{background:var(--theme-accent);border-color:var(--theme-accent);color:var(--theme-bg-primary)}body.dark-mode .btn-primary:hover{background:var(--theme-accent-light);border-color:var(--theme-accent-light)}body.dark-mode .category-title-mini{color:var(--color-text-primary-dark, #f9fafb)}body.dark-mode .category-progress-text-mini{color:var(--color-text-secondary-dark, #9ca3af)}body.dark-mode .progress-percentage-mini{color:var(--color-text-primary-dark, #f9fafb)}@media (width <= 768px){.scenarios-grid[data-view=category]{padding:var(--container-padding) var(--container-padding) calc(var(--container-padding) * 2) var(--container-padding);scroll-padding-left:var(--container-padding);gap:calc(var(--container-padding) * .8);-webkit-overflow-scrolling:touch;touch-action:auto}}@media (width <= 480px){.scenarios-grid[data-view=category]{padding:calc(var(--container-padding) * .8) calc(var(--container-padding) * .75) calc(var(--container-padding) * 1.5) calc(var(--container-padding) * .75);scroll-padding-left:calc(var(--container-padding) * .75);gap:calc(var(--container-padding) * .8)}}@media (width <= 480px){.scenarios-grid{padding:calc(var(--container-padding) * .8) calc(var(--container-padding) * .75) calc(var(--container-padding) * 1.5) calc(var(--container-padding) * .75);scroll-padding-left:calc(var(--container-padding) * .75);gap:calc(var(--container-padding) * .8);width:100%;max-width:none;margin:0;box-sizing:border-box;overflow:auto hidden;-webkit-overflow-scrolling:touch;touch-action:auto}}@media (width >= 481px) and (width <= 768px){.scenarios-grid{padding:var(--container-padding) var(--container-padding) calc(var(--container-padding) * 2) var(--container-padding);scroll-padding-left:var(--container-padding);gap:var(--container-padding);width:100%;max-width:none;margin:0;box-sizing:border-box;overflow:auto hidden;-webkit-overflow-scrolling:touch;touch-action:auto}}@media (width >= 769px) and (width <= 1023px){.scenarios-grid[data-view=scenario]{padding:calc(var(--container-padding) * 1.2) calc(var(--container-padding) * 1.4);gap:calc(var(--container-padding) * 1.1);box-sizing:border-box}.scenarios-grid[data-view=category]{padding:var(--container-padding) calc(var(--container-padding) * 1.2);gap:calc(var(--container-padding) * 1.1);box-sizing:border-box}}@media (width >= 1024px) and (width <= 1279px){.scenarios-grid[data-view=scenario]{padding:calc(var(--container-padding) * 1.4) calc(var(--container-padding) * 1.6);gap:calc(var(--container-padding) * 1.2);box-sizing:border-box}.scenarios-grid[data-view=category]{padding:calc(var(--container-padding) * 1.2) calc(var(--container-padding) * 1.4);gap:calc(var(--container-padding) * 1.2);box-sizing:border-box}}@media (width >= 1280px) and (width <= 1919px){.scenarios-grid[data-view=scenario]{padding:calc(var(--container-padding) * 1.6) calc(var(--container-padding) * 2);gap:calc(var(--container-padding) * 1.3);box-sizing:border-box}.scenarios-grid[data-view=category]{padding:calc(var(--container-padding) * 1.4) calc(var(--container-padding) * 1.6);gap:calc(var(--container-padding) * 1.3);box-sizing:border-box}}@media (width >= 1920px){.scenarios-grid[data-view=scenario]{padding:calc(var(--container-padding) * 2) calc(var(--container-padding) * 3);gap:calc(var(--container-padding) * 1.5);box-sizing:border-box}.scenarios-grid[data-view=category]{padding:calc(var(--container-padding) * 1.6) calc(var(--container-padding) * 2);gap:calc(var(--container-padding) * 1.5);box-sizing:border-box}}@media (width >= 769px){.scenarios-grid[data-view=scenario] .scenario-controls-toolbar{width:100%!important;max-width:none!important}.scenarios-grid[data-view=scenario] .scenario-controls-toolbar .search-container{flex:1!important;min-width:250px!important;max-width:450px!important;width:100%!important}.scenarios-grid[data-view=scenario] .scenario-controls-toolbar .search-input-wrapper{width:100%!important;min-width:250px!important;flex:1!important;flex-grow:1!important;flex-shrink:0!important;box-sizing:border-box!important}.scenarios-grid[data-view=scenario] .scenario-controls-toolbar .search-input{width:100%!important;min-width:250px!important;flex:1!important;flex-grow:1!important;flex-shrink:0!important;box-sizing:border-box!important;max-width:none!important}}@media (width >= 1024px){.scenarios-grid[data-view=scenario] .scenario-controls-toolbar .search-container{min-width:300px!important;max-width:550px!important}.scenarios-grid[data-view=scenario] .scenario-controls-toolbar .search-input-wrapper,.scenarios-grid[data-view=scenario] .scenario-controls-toolbar .search-input{min-width:300px!important}}@media (width >= 1200px){.scenarios-grid[data-view=scenario] .scenario-controls-toolbar .search-container{min-width:350px!important;max-width:650px!important}.scenarios-grid[data-view=scenario] .scenario-controls-toolbar .search-input-wrapper,.scenarios-grid[data-view=scenario] .scenario-controls-toolbar .search-input{min-width:350px!important}}@media (width <= 768px){.scenario-hero{padding:var(--spacing-16) var(--spacing-4);min-height:400px}.scenario-hero .hero-title{font-size:var(--font-size-3xl)}.scenario-hero .hero-description{font-size:var(--font-size-lg)}.filter-header{flex-direction:column;gap:var(--spacing-4);align-items:stretch}.filter-controls{grid-template-columns:1fr;padding:var(--spacing-6)}.results-header{flex-direction:column;gap:var(--spacing-4);align-items:stretch}.scenario-grid{grid-template-columns:1fr;gap:var(--spacing-6)}.scenario-actions{flex-direction:column}.scenario-controls-toolbar{flex-direction:column;gap:var(--spacing-3);align-items:stretch}.search-container{order:-1;margin-bottom:var(--spacing-3)}.controls-group{flex-wrap:wrap;justify-content:space-between}.clear-all-container{margin-left:0;margin-top:var(--spacing-2)}.search-autocomplete-dropdown{position:fixed;top:auto;left:var(--spacing-4);right:var(--spacing-4);margin-top:var(--spacing-2)}}@media (width <= 480px){.scenario-controls-toolbar .filter-container,.results-container{padding:0 var(--spacing-4)}.scenario-hero{padding:var(--spacing-12) var(--spacing-4)}.filter-controls{padding:var(--spacing-4)}.category-info-mini{align-items:center}}@media (prefers-reduced-motion: reduce){.scenario-card-wrapper,.filter-dropdown,.sort-dropdown,.search-autocomplete-dropdown{transition:none;animation:none}.scenario-card-wrapper:hover,.scenario-card:hover,.btn-scenario-primary:hover,.btn-scenario-secondary:hover,.scenario-start-btn:hover,.scenario-quick-start-btn:hover{transform:none}}@media (prefers-contrast: high){.scenario-controls-toolbar .search-input,.filter-btn,.sort-btn,.scenario-card{border-width:2px}}}@layer components{.scenario-modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;backdrop-filter:blur(8px);z-index:1050;opacity:0;transition:opacity .3s ease}.scenario-modal-backdrop.show{opacity:1}.scenario-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1055;display:flex;align-items:flex-start;justify-content:center;padding:2rem 1rem 1rem;opacity:0;transform:scale(.9) translateY(-2rem);transition:all .3s cubic-bezier(.34,1.56,.64,1);overflow-y:auto}.scenario-modal-dialog{display:flex;flex-direction:column;max-width:1200px;max-height:calc(100vh - 4rem);width:100%;margin:auto;background:linear-gradient(135deg,#fff,#f8fafc);border-radius:24px;box-shadow:0 25px 50px -12px #00000040,0 8px 32px #0000001f,inset 0 1px #fff9;border:1px solid rgb(255 255 255 / 80%);overflow:hidden;position:relative}.scenario-modal.show{opacity:1;transform:scale(1) translateY(0)}.scenario-modal.closing{opacity:0;transform:scale(.95) translateY(-1rem);transition:all .2s ease-out}.scenario-modal-backdrop.closing{opacity:0;transition:opacity .2s ease-out}.scenario-modal-dialog .scenario-modal-header{padding:2rem 2.5rem 1rem;border-bottom:1px solid rgb(229 231 235 / 60%);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;position:relative;flex-shrink:0}.scenario-modal-header:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2,#f093fb,#f5576c,#4facfe)}.scenario-title-section{margin-bottom:.5rem}.scenario-category{display:block;font-size:.875rem;font-weight:500;color:#fffc;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em}.scenario-title{font-size:1.75rem;font-weight:800;margin:0;color:#fff;text-shadow:0 2px 4px rgb(0 0 0 / 20%);letter-spacing:-.025em}.close-button{position:absolute;top:1.5rem;right:2rem;background:#fff3;border:1px solid rgb(255 255 255 / 30%);color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.5rem;line-height:1;transition:all .2s ease;backdrop-filter:blur(10px)}.close-button:hover{background:#ffffff4d;transform:scale(1.1)}.close-button:focus{outline:2px solid rgb(255 255 255 / 50%);outline-offset:2px}.scenario-modal .scenario-content,.modal-dialog .scenario-content,.scenario-modal-dialog .scenario-content{display:grid!important;grid-template-columns:2fr 1fr!important;grid-template-areas:"main sidebar"!important;gap:3rem;align-items:start;padding:2.5rem;flex:1;overflow-y:auto;width:100%;box-sizing:border-box;min-height:0}@media (width <= 968px){.scenario-modal .scenario-content,.modal-dialog .scenario-content,.scenario-modal-dialog .scenario-content{grid-template-columns:1fr!important;grid-template-areas:"main" "sidebar"!important;gap:2rem;padding:1.5rem}}.scenario-main{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 8px 25px #00000014;border:1px solid rgb(229 231 235 / 60%);height:fit-content;grid-area:main!important}.scenario-sidebar{background:#fff;border-radius:16px;padding:1rem;box-shadow:0 8px 25px #00000014;border:1px solid rgb(229 231 235 / 60%);height:fit-content;position:sticky;top:2rem;grid-area:sidebar!important;min-width:400px;max-width:450px;overflow:visible!important;box-sizing:border-box}.scenario-description{margin-bottom:2rem}.dilemma-section,.ethical-question-section{margin-bottom:1.5rem}.dilemma-section h3,.ethical-question-section h3,.options-section h3{font-size:1.1rem;font-weight:600;color:#374151;margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.dilemma-section h3:before{content:"⚠️";font-size:1.25rem;opacity:.8}.ethical-question-section h3:before{content:"❓";font-size:1.25rem;opacity:.8}.options-section h3:before{content:"🎯";font-size:1.25rem;opacity:.8}.dilemma-text{font-size:1.2rem;color:#1a202c;line-height:1.8;margin:0;font-weight:600;background:linear-gradient(135deg,#f59e0b1a,#fbbf240d);padding:2rem;border-radius:16px;border-left:6px solid #f59e0b;border-top:1px solid rgb(245 158 11 / 20%);border-right:1px solid rgb(245 158 11 / 20%);border-bottom:1px solid rgb(245 158 11 / 20%);box-shadow:0 4px 12px #f59e0b26,inset 0 1px #fffc;position:relative;font-style:italic;min-height:1.5em}.ethical-question{font-size:1.15rem;color:#2d3748;line-height:1.6;margin:0;font-weight:600;background:linear-gradient(135deg,#667eea14,#764ba20a);padding:1.75rem;border-radius:12px;border:2px solid rgb(102 126 234 / 15%);box-shadow:0 2px 8px #667eea1a;min-height:1.5em;position:relative}.options-container{display:flex;flex-direction:column;gap:1rem;position:relative}.option-card{display:block;width:100%;padding:1.25rem 1.5rem;background:#fff;border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .3s ease;text-align:left;font-size:1rem;line-height:1.5;position:relative;box-shadow:0 2px 8px #0000000d}.option-card:hover{border-color:#667eea;background:#667eea08;transform:translateY(-2px);box-shadow:0 8px 25px #667eea26}.option-card:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea33}.option-card.selected{border-color:#667eea;background:linear-gradient(135deg,#667eea1a,#764ba20d);transform:none;box-shadow:0 4px 20px #667eea33}.option-card.selected:hover{border-color:#5a67d8;background:linear-gradient(135deg,#5a67d826,#6b46c114);transform:translateY(-1px);box-shadow:0 6px 20px #5a67d840;cursor:pointer}.option-card.selected:hover .option-title{color:#5a67d8;transition:color .2s ease}.option-card.selected:hover .option-description{color:#6b46c1;transition:color .2s ease}.option-card.selected:after{content:"";position:absolute;top:.75rem;right:.75rem;width:20px;height:20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;opacity:.8;transition:all .2s ease}.option-card.selected:hover:after{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:scale(1.1);opacity:1}.option-card.selected:before{content:"✓";position:absolute;top:.85rem;right:.85rem;width:10px;height:10px;color:#fff;font-size:.7rem;font-weight:700;z-index:1;transition:all .2s ease}.option-card.selected:hover:before{content:"✓";font-size:.8rem;top:.8rem;right:.8rem}.option-header{margin-bottom:.5rem}.option-title{color:#374151;font-weight:600;font-size:1rem;margin:0}.option-description{color:#6b7280;font-size:.9rem;line-height:1.4;margin:0}.option-details{margin-top:1rem;padding-top:1rem;border-top:1px solid rgb(229 231 235 / 60%)}.pros-cons-popover{position:absolute;top:-1rem;left:50%;transform:translate(-50%) translateY(-100%);background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid rgb(102 126 234 / 15%);border-radius:20px;padding:2rem;box-shadow:0 25px 50px #00000026,0 10px 25px #667eea1a,inset 0 1px #fffc;z-index:1100;min-width:500px;max-width:650px;opacity:0;visibility:hidden;transition:all .4s cubic-bezier(.34,1.56,.64,1);pointer-events:none;backdrop-filter:blur(12px)}.pros-cons-popover.visible{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%) translateY(-100%) translateY(-1rem) scale(1)}.pros-cons-popover:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:12px solid transparent;border-top-color:#fff;z-index:1001;filter:drop-shadow(0 2px 4px rgb(0 0 0 / 10%))}.pros-cons-popover:before{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:13px solid transparent;border-top-color:#667eea26;z-index:1000}.pros-cons-content .option-description{margin-bottom:2rem;text-align:center}.pros-cons-content .option-description h6{font-size:1.25rem;font-weight:700;color:#1a202c;margin:0 0 .75rem;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-text-fill-color:transparent;background-clip:text}.pros-cons-content .option-description p{color:#4a5568;line-height:1.6;margin:0;font-size:1rem}.pros-cons-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.pros-section,.cons-section{background:#ffffffb3;padding:1.5rem;border-radius:12px;border:1px solid rgb(229 231 235 / 50%)}.pros-title{font-size:1.1rem;font-weight:700;color:#059669;margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.cons-title{font-size:1.1rem;font-weight:700;color:#dc2626;margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.pros-list,.cons-list{margin:0;padding:0;list-style:none}.pros-list li,.cons-list li{margin-bottom:.75rem;padding-left:1.5rem;position:relative;color:#374151;line-height:1.5;font-size:.95rem}.pros-list li:before{content:"•";position:absolute;left:0;color:#059669;font-weight:700;font-size:1.2rem}.cons-list li:before{content:"•";position:absolute;left:0;color:#dc2626;font-weight:700;font-size:1.2rem}.scenario-modal-dialog .scenario-modal-footer{padding:1rem 2rem 1.25rem;background:#f8fafccc;border-top:1px solid rgb(229 231 235 / 60%);display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-shrink:0}.test-mode-indicator{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;text-shadow:0 1px 2px rgb(0 0 0 / 10%);box-shadow:0 2px 4px #f59e0b33;animation:subtle-pulse 2s ease-in-out infinite}@keyframes subtle-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.02)}}.scenario-modal-footer .btn{padding:.75rem 2rem;font-size:1rem;font-weight:600;border-radius:8px;transition:all .2s ease;border:none;cursor:pointer}.scenario-modal-footer .btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.scenario-modal-footer .btn-secondary{background:#fff;color:#6b7280;border:2px solid #e5e7eb}.scenario-modal-footer .btn-secondary:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db;transform:translateY(-1px)}.scenario-modal-footer .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea4d}.scenario-modal-footer .btn-primary:hover:not(:disabled){box-shadow:0 6px 20px #667eea66;transform:translateY(-2px)}.feedback-close{position:absolute;top:1.5rem;right:1.5rem;background:#ffffffe5;border:1px solid rgb(102 126 234 / 20%);cursor:pointer;padding:.5rem;border-radius:50%;color:#6b7280;font-size:1.25rem;line-height:1;transition:all .2s ease;width:32px;height:32px;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px);box-shadow:0 2px 8px #0000001a}.feedback-close:hover{background:#ef44441a;border-color:#ef44444d;color:#ef4444;transform:scale(1.1)}.feedback-close:focus{outline:2px solid #667eea;outline-offset:2px}.typewriter-cursor{display:inline-block;background-color:currentcolor;margin-left:2px;width:2px;animation:typewriter-blink 1s infinite}@keyframes typewriter-blink{0%,50%{opacity:1}51%,to{opacity:0}}.scenario-description .dilemma-section,.scenario-description .ethical-question-section{margin-bottom:2rem}.scenario-description h3{margin-bottom:1rem;opacity:1;transition:opacity .3s ease}.dilemma-text,.ethical-question{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;letter-spacing:.01em;word-spacing:.02em}.typewriter-ready .dilemma-text,.typewriter-ready .ethical-question{opacity:0;transition:opacity .3s ease}.typewriter-active .dilemma-text,.typewriter-active .ethical-question{opacity:1}@media (width <= 768px){.scenario-modal{padding:1rem .5rem .5rem}.scenario-modal-dialog{max-height:calc(100vh - 2rem)}.scenario-modal-dialog .scenario-modal-header{padding:1.5rem 1.5rem 1rem}.scenario-title{font-size:1.5rem}.close-button{top:1rem;right:1rem;width:36px;height:36px}.scenario-modal .scenario-content,.modal-dialog .scenario-content,.scenario-modal-dialog .scenario-content{padding:1.5rem}.scenario-main,.scenario-sidebar{padding:1.5rem;min-width:auto}.scenario-modal #scenario-radar-chart{min-height:350px;padding:.25rem!important;max-width:320px!important}.scenario-modal #scenario-radar-chart canvas{width:320px!important;height:320px!important;padding:10px}.pros-cons-grid{grid-template-columns:1fr;gap:1.5rem}.pros-cons-popover{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);min-width:auto;max-width:90vw;max-height:80vh;overflow-y:auto;margin:0}.pros-cons-popover.visible{transform:translate(-50%,-50%) scale(1)}.pros-cons-popover:after,.pros-cons-popover:before{display:none}.scenario-modal-footer{padding:1rem 1.5rem;flex-direction:column;gap:.75rem}.scenario-modal-footer .btn{width:100%;justify-content:center}}@media (width <= 480px){.scenario-modal{padding:.5rem .25rem .25rem}.scenario-modal-dialog{max-height:calc(100vh - 1rem)}.scenario-title{font-size:1.25rem}.ethical-question{font-size:1rem}.option-card{padding:1rem;font-size:.95rem}.pros-cons-popover{padding:1.5rem;max-width:95vw}}.high-contrast-border .option-btn{border-width:3px}.high-contrast-border .option-btn:focus{box-shadow:0 0 0 4px #667eea7f}.high-contrast-border .pros-cons-popover{border-width:2px;box-shadow:0 8px 25px #0000004d}.no-motion .scenario-modal,.no-motion .scenario-modal-backdrop,.no-motion .option-btn,.no-motion .pros-cons-popover,.no-motion .feedback-close{transition:none;animation:none}.no-motion .option-btn:hover,.no-motion .scenario-modal.show{transform:none}.no-motion .pros-cons-popover.visible{transform:translate(-50%) translateY(-100%) translateY(-1rem)}@media (width <= 768px){.no-motion .pros-cons-popover.visible{transform:translate(-50%,-50%)}}body.dark-mode .scenario-modal-dialog{background:var(--theme-bg-primary);border:1px solid var(--theme-border);box-shadow:0 20px 25px -5px var(--theme-shadow),0 10px 10px -5px var(--theme-shadow)}body.dark-mode .scenario-modal-header{background:var(--theme-bg-secondary);border-bottom:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .scenario-title{color:var(--theme-text-primary)}body.dark-mode .scenario-category{color:var(--theme-text-secondary)}body.dark-mode .scenario-content{background:var(--theme-bg-primary);color:var(--theme-text-primary)}body.dark-mode .scenario-main,body.dark-mode .scenario-sidebar{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);color:var(--theme-text-primary);box-shadow:0 8px 25px var(--theme-shadow)}body.dark-mode .dilemma-text,body.dark-mode .ethical-question{color:var(--theme-text-secondary)}body.dark-mode .dilemma-section h3,body.dark-mode .ethical-question-section h3,body.dark-mode .options-section h3{color:var(--theme-text-primary)}body.dark-mode .option-card{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .option-card:hover{border-color:var(--theme-border-hover);box-shadow:0 4px 12px var(--theme-shadow-hover)}body.dark-mode .option-card.selected{background:linear-gradient(135deg,#4a9eff1a,#9d4edd1a);border-color:#4a9eff}body.dark-mode .option-title{color:var(--theme-text-primary)}body.dark-mode .option-description{color:var(--theme-text-secondary)}body.dark-mode .option-details{background:#0003;border-top:1px solid var(--theme-border)}body.dark-mode .pros-section,body.dark-mode .cons-section{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .pros-cons-popover{background:var(--theme-bg-primary);border:1px solid var(--theme-border);box-shadow:0 25px 50px var(--theme-shadow)}body.dark-mode .pros-section h5,body.dark-mode .cons-section h5{color:var(--theme-text-primary)}body.dark-mode .pros-section li,body.dark-mode .cons-section li{color:var(--theme-text-secondary)}body.dark-mode .scenario-modal-footer{background:var(--theme-bg-secondary);border-top:1px solid var(--theme-border)}body.dark-mode .chart-legend{color:var(--theme-text-secondary)}body.dark-mode .test-mode-indicator{background:#ffc10733;color:#ffc107;border:1px solid rgb(255 193 7 / 30%)}#test-scenario-modal{display:inline-flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important;cursor:pointer!important;white-space:nowrap!important;font-family:var(--font-family-primary)!important;background-color:var(--color-primary)!important;color:var(--color-white)!important;border:2px solid var(--color-primary)!important;padding:var(--spacing-3) var(--spacing-6)!important;border-radius:var(--radius-lg)!important;font-weight:var(--font-weight-medium)!important;font-size:var(--font-size-base)!important;min-height:44px!important;transition:all var(--transition-fast)!important;outline:none!important}#test-scenario-modal:hover,#test-scenario-modal:focus{background-color:var(--color-primary-dark)!important;color:var(--color-white)!important;border-color:var(--color-primary-dark)!important;transform:translateY(-1px)!important;box-shadow:var(--shadow-md)!important}body.dark-mode .scenario-header{background:transparent;color:var(--theme-text-primary)}body.dark-mode .scenario-footer{color:var(--theme-text-secondary)}}@layer components{body.onboarding-active{overflow:hidden}.onboarding-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000040;z-index:10010;opacity:0;animation:onboarding-fade-in .3s ease-out forwards;pointer-events:none}.onboarding-spotlight{position:absolute;background:transparent;border:3px solid #1a73e8;border-radius:8px;box-shadow:0 0 0 4px #1a73e84d,0 0 0 9999px #00000040,inset 0 0 20px #1a73e833;z-index:10011;display:none;animation:onboarding-spotlight-pulse 2s ease-in-out infinite;pointer-events:none}.onboarding-coach-mark{position:absolute;background:#fff;border:2px solid #1a73e8;border-radius:12px;box-shadow:0 12px 48px #0006,0 6px 24px #0003,0 0 0 1px #1a73e81a;z-index:10014;max-width:400px;min-width:300px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;isolation:isolate;opacity:0;transform:scale(.95) translateY(-5px);animation:onboarding-coach-mark-in .4s ease-out .2s forwards;pointer-events:auto}.coach-mark-header{display:flex;justify-content:space-between;align-items:flex-start;padding:var(--container-padding, 20px) var(--container-padding, 20px) 0 var(--container-padding, 20px);gap:16px}.coach-mark-progress{flex:1}.tutorial-indicator{font-size:12px;color:#666;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.step-progress{display:flex;align-items:center;gap:12px;margin-top:8px}.step-dots{display:flex;gap:6px}.step-dot{width:8px;height:8px;border-radius:50%;background:#e0e0e0;transition:all .2s ease}.step-dot.active{background:#1a73e8;transform:scale(1.2)}.step-dot.completed{background:#34a853}.step-counter{font-size:12px;color:#666;font-weight:500}.coach-mark-close{background:none;border:none;font-size:24px;color:#666;cursor:pointer;padding:0;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease;pointer-events:auto;position:relative;z-index:10015}.coach-mark-close:hover{background:#f5f5f5;color:#333}.coach-mark-body{padding:0 20px 20px}.coach-mark-title{font-size:20px;font-weight:600;color:#333;margin:0 0 12px;line-height:1.3}.coach-mark-content{font-size:16px;color:#555;line-height:1.5;margin:0}.coach-mark-footer{display:flex;gap:12px;padding:0 20px 20px;justify-content:flex-end}.coach-mark-btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:80px;pointer-events:auto;position:relative;z-index:10015}.coach-mark-btn.primary{background:#1a73e8;color:#fff;border:none;outline:none}.coach-mark-btn.primary:hover{background:#1557b0;transform:translateY(-1px);box-shadow:0 4px 12px #1a73e866}.coach-mark-btn.secondary{background:#f8f9fa;color:#5f6368;border:1px solid #dadce0}.coach-mark-btn.secondary:hover{background:#f1f3f4;border-color:#c4c7ca}.coach-mark-btn:not(:focus-visible){outline:none!important;box-shadow:none!important}.coach-mark-btn:focus:not(:focus-visible){outline:none!important;box-shadow:none!important}.onboarding-click-highlight{animation:onboarding-click-pulse 1.5s ease-in-out infinite;cursor:pointer!important}@media (width <= 768px){.onboarding-coach-mark{max-width:calc(100vw - 32px);min-width:calc(100vw - 32px);margin:0 16px}.onboarding-coach-mark.mobile-overlay{position:fixed!important;bottom:60px;left:16px!important;right:16px!important;width:calc(100vw - 32px)!important;max-width:calc(100vw - 32px)!important;min-width:calc(100vw - 32px)!important;max-height:50vh;overflow-y:auto;transform:none;animation:onboarding-mobile-slide-up .3s ease-out forwards}.coach-mark-header{padding:16px 16px 0}.coach-mark-body{padding:0 16px 16px}.coach-mark-footer{padding:0 16px 16px;flex-direction:column}.coach-mark-btn{width:100%;justify-content:center}.coach-mark-title{font-size:18px}.coach-mark-content{font-size:15px}}@keyframes onboarding-fade-in{0%{opacity:0}to{opacity:1}}@keyframes onboarding-coach-mark-in{0%{opacity:0;transform:scale(.95) translateY(-5px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes onboarding-mobile-slide-up{0%{opacity:0;transform:translateY(100px)}to{opacity:1;transform:translateY(0)}}@keyframes onboarding-spotlight-pulse{0%,to{box-shadow:0 0 0 4px #1a73e84d,0 0 0 9999px #000000b3,inset 0 0 20px #1a73e833}50%{box-shadow:0 0 0 4px #1a73e87f,0 0 0 9999px #000000b3,inset 0 0 20px #1a73e866}}@keyframes onboarding-click-pulse{0%,to{transform:scale(1);box-shadow:0 0 #1a73e866}50%{transform:scale(1.02);box-shadow:0 0 0 8px #1a73e833}}@media (prefers-reduced-motion: reduce){.onboarding-overlay,.onboarding-coach-mark,.onboarding-spotlight,.onboarding-click-highlight,.step-dot,.coach-mark-btn{animation:none!important;transition:none!important}}@media (prefers-contrast: high){.onboarding-spotlight{border-color:#000;box-shadow:0 0 0 4px #000c,0 0 0 9999px #000000e5}.onboarding-coach-mark{border:2px solid #000}.coach-mark-btn.primary{background:#000;color:#fff}.coach-mark-btn.secondary{background:#fff;color:#000;border:2px solid #000}}.tour-modal{position:fixed;z-index:10013;max-width:400px;background:var(--color-white, #fff);border-radius:12px;box-shadow:0 20px 40px #00000026,0 8px 24px #0000001a;opacity:0;transform:scale(.9) translateY(20px);animation:tour-modal-in .4s ease-out forwards;font-family:var( --font-primary, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif )}.tour-modal.center{top:50%;left:50%;transform:translate(-50%,-50%) scale(.9);animation:tour-modal-center-in .4s ease-out forwards}.tour-modal.positioned{animation:tour-modal-positioned-in .4s ease-out forwards}.tour-modal-content{display:flex;flex-direction:column;height:100%}.tour-header{padding:20px 20px 16px;border-bottom:1px solid var(--color-gray-200, #e5e7eb)}.tour-progress{width:100%;height:4px;background:var(--color-gray-200, #e5e7eb);border-radius:2px;margin-bottom:16px;overflow:hidden}.tour-progress-bar{height:100%;background:linear-gradient(90deg,var(--color-primary, #1a73e8),var(--color-secondary, #4285f4));border-radius:2px;transition:width .3s ease-out}.tour-tutorial-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.tour-tutorial-name{font-size:14px;font-weight:600;color:var(--color-primary, #1a73e8);text-transform:uppercase;letter-spacing:.5px}.tour-step-counter{font-size:12px;color:var(--color-gray-600, #6b7280);font-weight:500}.tour-close-btn{position:absolute;top:16px;right:16px;width:32px;height:32px;border:none;background:none;font-size:24px;color:var(--color-gray-400, #9ca3af);cursor:pointer;border-radius:6px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;line-height:1}.tour-close-btn:hover{background:var(--color-gray-100, #f3f4f6);color:var(--color-gray-600, #6b7280)}.tour-close-btn:focus{outline:2px solid var(--color-primary, #1a73e8);outline-offset:2px}.tour-body{padding:0 20px 20px;flex:1}.tour-title{margin:0 0 12px;font-size:20px;font-weight:700;color:var(--color-gray-900, #111827);line-height:1.3}.tour-content{margin:0;font-size:16px;line-height:1.5;color:var(--color-gray-700, #374151)}.tour-footer{padding:16px 20px 20px;display:flex;gap:12px;justify-content:flex-end}.tour-btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:100px;display:inline-flex;align-items:center;justify-content:center;gap:6px}.tour-btn-primary{background:var(--color-primary, #1a73e8);color:#fff}.tour-btn-primary:hover{background:var(--color-primary-dark, #1557b0);transform:translateY(-1px);box-shadow:0 4px 12px #1a73e84d}.tour-btn-primary:focus{outline:2px solid var(--color-primary, #1a73e8);outline-offset:2px}.tour-btn-secondary{background:var(--color-gray-100, #f3f4f6);color:var(--color-gray-700, #374151);border:1px solid var(--color-gray-300, #d1d5db)}.tour-btn-secondary:hover{background:var(--color-gray-200, #e5e7eb);border-color:var(--color-gray-400, #9ca3af)}.tour-btn-secondary:focus{outline:2px solid var(--color-primary, #1a73e8);outline-offset:2px}@keyframes tour-fade-in{0%{opacity:0}to{opacity:1}}@keyframes tour-modal-in{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes tour-modal-center-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes tour-modal-positioned-in{0%{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes tour-highlight-pulse{0%,to{box-shadow:0 0 0 4px #1a73e833,0 0 30px #1a73e866}50%{box-shadow:0 0 0 8px #1a73e84d,0 0 40px #1a73e899}}@media (width <= 768px){.tour-modal{max-width:calc(100vw - 32px);margin:16px}.tour-modal.center{position:fixed;top:50%;left:16px;right:16px;width:auto;transform:translateY(-50%) scale(.9)}.tour-modal.positioned{position:fixed!important;top:50%!important;left:16px!important;right:16px!important;width:auto!important;transform:translateY(-50%) scale(.9)!important;animation:tour-modal-mobile-in .4s ease-out forwards!important}.tour-footer{flex-direction:column}.tour-btn{width:100%}}@keyframes tour-modal-mobile-in{0%{opacity:0;transform:translateY(-50%) scale(.9)}to{opacity:1;transform:translateY(-50%) scale(1)}}@media (prefers-reduced-motion: reduce){.tour-backdrop,.tour-modal,.tour-highlight-overlay,.tour-progress-bar,.tour-btn{animation:none!important;transition:none!important}.tour-highlight-overlay.active:before{animation:none!important}}@media (prefers-contrast: high){.tour-modal{border:2px solid var(--color-gray-900, #000)}.tour-btn-primary{border:2px solid var(--color-primary-dark, #1557b0)}.tour-btn-secondary{border:2px solid var(--color-gray-600, #6b7280)}}.dark-mode .tour-modal{background:var(--color-gray-800, #1f2937);color:var(--color-gray-100, #f3f4f6)}.dark-mode .tour-header{border-bottom-color:var(--color-gray-700, #374151)}.dark-mode .tour-title{color:var(--color-gray-100, #f3f4f6)}.dark-mode .tour-content{color:var(--color-gray-300, #d1d5db)}.dark-mode .tour-close-btn{color:var(--color-gray-400, #9ca3af)}.dark-mode .tour-close-btn:hover{background:var(--color-gray-700, #374151);color:var(--color-gray-200, #e5e7eb)}.dark-mode .tour-btn-secondary{background:var(--color-gray-700, #374151);color:var(--color-gray-200, #e5e7eb);border-color:var(--color-gray-600, #6b7280)}.dark-mode .tour-btn-secondary:hover{background:var(--color-gray-600, #6b7280)}.onboarding-coach-mark ::selection,.onboarding-active ::selection{background-color:#1a73e8;color:#fff}.coach-mark-btn ::selection{background-color:#1a73e833;color:#1a73e8}.coach-mark-btn.primary ::selection{background-color:#ffffff4d;color:#fff}.onboarding-coach-mark *{position:relative}.onboarding-coach-mark .coach-mark-footer,.onboarding-coach-mark .coach-mark-header{isolation:isolate;z-index:10016}.onboarding-coach-mark button,.onboarding-coach-mark .coach-mark-btn,.onboarding-coach-mark .coach-mark-close{isolation:isolate;z-index:10015!important;pointer-events:auto!important;position:relative!important}.scenario-modal .modal-backdrop,.pre-launch-modal .modal-backdrop{pointer-events:none}.onboarding-active .onboarding-coach-mark,.onboarding-active .onboarding-coach-mark *,.onboarding-active .coach-mark-btn,.onboarding-active .coach-mark-close{pointer-events:auto!important}.modal .onboarding-coach-mark,.reusable-modal .onboarding-coach-mark,.pre-launch-modal~.onboarding-coach-mark,.scenario-modal~.onboarding-coach-mark{z-index:10020!important}.modal .onboarding-coach-mark button,.reusable-modal .onboarding-coach-mark button,.pre-launch-modal~.onboarding-coach-mark button,.scenario-modal~.onboarding-coach-mark button{z-index:10021!important;pointer-events:auto!important;position:relative!important}.pre-launch-modal .onboarding-coach-mark,.pre-launch-modal-backdrop .onboarding-coach-mark,body:has(.pre-launch-modal) .onboarding-coach-mark{z-index:16050!important;position:fixed!important;isolation:isolate!important}.pre-launch-modal .onboarding-overlay,.pre-launch-modal-backdrop .onboarding-overlay,body:has(.pre-launch-modal) .onboarding-overlay{z-index:16040!important}.pre-launch-modal .onboarding-spotlight,.pre-launch-modal-backdrop .onboarding-spotlight,body:has(.pre-launch-modal) .onboarding-spotlight{z-index:16045!important}.pre-launch-modal .onboarding-coach-mark button,.pre-launch-modal .onboarding-coach-mark .coach-mark-btn,.pre-launch-modal .onboarding-coach-mark .coach-mark-close,.pre-launch-modal-backdrop .onboarding-coach-mark button,.pre-launch-modal-backdrop .onboarding-coach-mark .coach-mark-btn,.pre-launch-modal-backdrop .onboarding-coach-mark .coach-mark-close,body:has(.pre-launch-modal) .onboarding-coach-mark button,body:has(.pre-launch-modal) .onboarding-coach-mark .coach-mark-btn,body:has(.pre-launch-modal) .onboarding-coach-mark .coach-mark-close{z-index:16055!important;pointer-events:auto!important;position:relative!important;isolation:isolate!important}.modal-backdrop .onboarding-coach-mark,.modal-backdrop~.onboarding-coach-mark{z-index:10020!important;pointer-events:auto!important;position:fixed!important}.modal-backdrop .onboarding-coach-mark *,.modal-backdrop~.onboarding-coach-mark *{pointer-events:auto!important}.modal-backdrop:has(~.onboarding-coach-mark){pointer-events:none!important}.modal-backdrop:has(~.onboarding-coach-mark) .modal-dialog{pointer-events:auto!important}body.dark-mode .onboarding-overlay{background:#0006}body.dark-mode .onboarding-spotlight{border-color:var(--color-primary);box-shadow:0 0 0 4px #4a9eff4d,0 0 0 9999px #0006,inset 0 0 20px #4a9eff33}body.dark-mode .onboarding-coach-mark{background:var(--theme-bg-secondary);border:2px solid var(--color-primary);color:var(--theme-text-primary);box-shadow:0 12px 48px #0009,0 6px 24px #0006,0 0 0 1px #4a9eff33}body.dark-mode .onboarding-coach-mark:before{border-color:var(--color-primary) transparent transparent transparent}body.dark-mode .onboarding-coach-mark:after{border-color:var(--theme-bg-secondary) transparent transparent transparent}body.dark-mode .onboarding-coach-mark.position-bottom:before{border-color:transparent transparent var(--color-primary) transparent}body.dark-mode .onboarding-coach-mark.position-bottom:after{border-color:transparent transparent var(--theme-bg-secondary) transparent}body.dark-mode .onboarding-coach-mark.position-left:before{border-color:transparent transparent transparent var(--color-primary)}body.dark-mode .onboarding-coach-mark.position-left:after{border-color:transparent transparent transparent var(--theme-bg-secondary)}body.dark-mode .onboarding-coach-mark.position-right:before{border-color:transparent var(--color-primary) transparent transparent}body.dark-mode .onboarding-coach-mark.position-right:after{border-color:transparent var(--theme-bg-secondary) transparent transparent}body.dark-mode .onboarding-header{background:var(--theme-bg-primary);border-bottom:1px solid var(--theme-border)}body.dark-mode .onboarding-title{color:var(--theme-text-primary)}body.dark-mode .onboarding-step-indicator{color:var(--theme-text-secondary)}body.dark-mode .onboarding-content{background:var(--theme-bg-secondary);color:var(--theme-text-primary)}body.dark-mode .onboarding-description{color:var(--theme-text-secondary)}body.dark-mode .onboarding-navigation{background:var(--theme-bg-primary);border-top:1px solid var(--theme-border)}body.dark-mode .onboarding-btn{background:var(--theme-bg-secondary);color:var(--theme-text-primary);border:1px solid var(--theme-border)}body.dark-mode .onboarding-btn:hover{background:var(--theme-bg-primary);border-color:var(--theme-border-hover)}body.dark-mode .onboarding-btn.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}body.dark-mode .onboarding-btn.btn-primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}body.dark-mode .onboarding-btn-skip{color:var(--theme-text-secondary);background:transparent;border:1px solid var(--theme-border)}body.dark-mode .onboarding-btn-skip:hover{color:var(--theme-text-primary);background:var(--theme-bg-secondary);border-color:var(--theme-border-hover)}body.dark-mode .onboarding-progress{background:var(--theme-bg-primary)}body.dark-mode .progress-dot{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .progress-dot.active{background:var(--color-primary);border-color:var(--color-primary)}body.dark-mode .progress-dot.completed{background:var(--color-success);border-color:var(--color-success)}body.dark-mode .onboarding-close{color:var(--theme-text-secondary);background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .onboarding-close:hover{color:var(--theme-text-primary);background:var(--theme-bg-primary);border-color:var(--theme-border-hover)}body.dark-mode .feature-callout{background:var(--theme-bg-primary);border:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .feature-icon{color:var(--color-primary)}body.dark-mode .feature-title{color:var(--theme-text-primary)}body.dark-mode .feature-description{color:var(--theme-text-secondary)}body.dark-mode .onboarding-tooltip{background:var(--theme-bg-primary);color:var(--theme-text-primary);border:1px solid var(--theme-border);box-shadow:0 4px 12px var(--theme-shadow-hover)}body.dark-mode .onboarding-tooltip:after{border-top-color:var(--theme-bg-primary)}body.dark-mode .onboarding-highlight{border:2px solid var(--color-primary);box-shadow:0 0 8px #4a9eff66}body.dark-mode .onboarding-pulse{background:#4a9eff33}body.dark-mode .onboarding-coach-mark.warning{border-color:var(--color-warning);background:var(--theme-bg-secondary)}body.dark-mode .onboarding-coach-mark.success{border-color:var(--color-success);background:var(--theme-bg-secondary)}body.dark-mode .onboarding-coach-mark.info{border-color:var(--color-info);background:var(--theme-bg-secondary)}}@layer components{.pre-launch-modal{width:100%;height:100%;overflow:visible;display:flex;flex-direction:column}.pre-launch-modal .modal-header{padding:var(--container-padding, 1.5rem) var(--container-padding, 2rem) 1rem;border-bottom:1px solid #e5e5e5;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.pre-launch-modal .modal-title{font-size:calc(1.5rem * var(--font-scale, 1));font-weight:600;margin:0;color:#fff}.pre-launch-modal .modal-body{flex:1 1 auto;overflow-y:auto;padding:0;min-height:0;display:flex;flex-direction:column}.pre-launch-modal .modal-footer{padding:var(--spacing-3, 12px) var(--spacing-4, 16px);border-top:1px solid #e5e5e5;background:#f8f9fa;display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-2, 8px);flex-wrap:wrap;overflow-x:auto;min-height:var(--touch-target-min, 44px);position:relative;z-index:10}.pre-launch-modal-content{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden}.pre-launch-modal .pre-launch-tabs+div{flex:1 1 auto;overflow-y:auto;min-height:0}.pre-launch-tabs{display:flex;background:#f8f9fa;border-bottom:1px solid #e5e5e5;position:sticky;top:0;flex-shrink:0;min-height:60px;width:100%;z-index:20}.pre-launch-tabs:before,.pre-launch-tabs:after{content:"";position:absolute;top:0;bottom:0;width:20px;pointer-events:none;z-index:10;opacity:0;transition:opacity .3s ease}.pre-launch-tabs:before{left:0;background:linear-gradient(to right,#f8f9fa 0%,transparent 100%)}.pre-launch-tabs:after{right:0;background:linear-gradient(to left,#f8f9fa 0%,transparent 100%)}.pre-launch-tabs.scrollable-left:before{opacity:1}.pre-launch-tabs.scrollable-right:after{opacity:1}.tab-mobile-menu{display:none;align-items:center;padding:1rem 1.5rem;width:100%;justify-content:space-between;background:#f8f9fa}.tab-hamburger{background:none;border:none;cursor:pointer;padding:.5rem;display:flex;flex-direction:column;justify-content:center;align-items:center;width:30px;height:30px;transition:all .3s ease}.tab-hamburger:focus{outline:2px solid #667eea;outline-offset:2px;border-radius:4px}.hamburger-line{width:20px;height:2px;background:#666;margin:2px 0;transition:all .3s ease;border-radius:1px}.tab-hamburger[aria-expanded=true] .hamburger-line:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.tab-hamburger[aria-expanded=true] .hamburger-line:nth-child(2){opacity:0}.tab-hamburger[aria-expanded=true] .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}.tab-current-label{font-weight:600;color:#333;font-size:1rem}.tab-buttons-container{display:flex;width:100%;overflow:auto hidden;scrollbar-width:thin;scrollbar-color:#ccc transparent;scroll-behavior:smooth;min-height:60px;align-items:center}.tab-buttons-container::-webkit-scrollbar{height:4px}.tab-buttons-container::-webkit-scrollbar-track{background:transparent}.tab-buttons-container::-webkit-scrollbar-thumb{background:#ccc;border-radius:2px}.tab-buttons-container::-webkit-scrollbar-thumb:hover{background:#999}.tab-buttons-container .tab-button{background:none;border:none;padding:1rem 1.5rem;cursor:pointer;border-bottom:3px solid transparent;transition:all .2s ease;white-space:nowrap;font-size:.9rem;font-weight:500;color:#666;flex-shrink:0;min-width:fit-content}.tab-buttons-container .tab-button:hover{background:#e9ecef;color:#333}.tab-buttons-container .tab-button.active{color:#667eea;border-bottom-color:#667eea;background:#fff;position:relative;z-index:1}.tab-buttons-container .tab-button:focus{outline:2px solid #667eea;outline-offset:-2px;z-index:1;position:relative}.pre-launch-content{padding:2rem;flex:1 1 auto;overflow-y:auto;min-height:0;width:100%;box-sizing:border-box}.pre-launch-content.hidden{display:none}.pre-launch-modal .tab-content{display:block}.pre-launch-modal .tab-content:not(.active){display:none}.simulation-overview{margin-bottom:2rem}.simulation-overview h3{color:#333;margin-bottom:1rem;font-size:1.25rem}.simulation-overview p{color:#666;line-height:1.6;margin-bottom:1rem}.simulation-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:1.5rem 0;padding:1.5rem;background:#f8f9fa;border-radius:8px}.meta-item{display:flex;flex-direction:column;gap:.5rem}.meta-label{font-weight:600;color:#333;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.meta-value{color:#666;font-size:.95rem}.learning-objectives{margin:2rem 0}.learning-objectives h4{color:#333;margin-bottom:1rem;font-size:1.1rem}.learning-objectives ul{list-style:none;padding:0}.objective-item{padding:.75rem 0;border-bottom:1px solid #f0f0f0;position:relative;display:flex;align-items:flex-start;gap:.5rem}.objective-icon{flex-shrink:0;margin-top:.1rem}.objective-item:last-child{border-bottom:none}.preparation-section{background:#f8f9fa;padding:1.5rem;border-radius:8px;margin:1.5rem 0}.preparation-section h4{color:#333;margin-bottom:1rem;font-size:1.1rem}.preparation-tips{list-style:none;padding:0}.tip-item{padding:.5rem 0;position:relative;color:#666;display:flex;align-items:flex-start;gap:.5rem}.tip-icon{flex-shrink:0;margin-top:.1rem}.vocabulary-section{margin:2rem 0}.vocabulary-list{display:grid;gap:1rem}.vocabulary-item{padding:1rem;border:1px solid #e5e5e5;border-radius:6px;background:#fff}.vocabulary-term{font-weight:600;color:#333;margin-bottom:.5rem}.vocabulary-definition{color:#666;font-size:.95rem;line-height:1.5}.resources-section{margin:2rem 0}.resource-list{display:grid;gap:1rem}.resource-item{display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid #e5e5e5;border-radius:6px;background:#fff;text-decoration:none;color:inherit;transition:all .2s ease}.resource-item:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea1a;text-decoration:none}.resource-icon{font-size:1.5rem;width:2rem;text-align:center}.resource-content{flex:1}.resource-title{font-weight:600;color:#333;margin-bottom:.25rem}.resource-description{color:#666;font-size:.9rem}.educator-section{background:#e8f4f8;border:1px solid #bee5eb;border-radius:8px;padding:1.5rem;margin:2rem 0}.educator-section h4{color:#0c5460;margin-bottom:1rem;font-size:1.1rem}.educator-section .resource-item{background:#fff;border-color:#bee5eb}.educator-section .resource-item:hover{border-color:#0c5460;box-shadow:0 2px 8px #0c54601a}.pre-launch-footer{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;gap:1rem;width:100%}.action-buttons{display:flex;gap:1rem;align-items:center;justify-content:flex-end;flex-shrink:0}.btn-launch{background:var(--color-secondary);color:#fff;border:none;padding:var(--spacing-3) var(--spacing-6);border-radius:var(--radius-lg);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease;font-size:var(--font-size-base);min-height:44px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.btn-launch:hover{background:var(--color-secondary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #00aa004d}.btn-launch:focus{outline:2px solid var(--color-secondary);outline-offset:2px}.btn-cancel{background:#dc3545;color:#fff;border:1px solid #dc3545;padding:var(--spacing-3) var(--spacing-6);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s ease;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);min-height:44px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.btn-cancel:hover{background:#c82333;border-color:#bd2130;color:#fff}.btn-cancel:focus{outline:2px solid #dc3545;outline-offset:2px}.skip-checkbox{margin-right:.5rem}.tab-icon{margin-right:.5rem;font-size:1rem}@media (width <= 768px){.modal-backdrop:has(.pre-launch-modal) .modal-dialog{width:98vw;max-width:none;max-height:calc(100vh - 1rem);min-height:85vh}.pre-launch-modal .modal-header,.pre-launch-modal .modal-footer{padding:var(--spacing-3, 12px) var(--spacing-4, 16px)}.pre-launch-modal .modal-footer{flex-direction:column;gap:var(--spacing-2, 8px)}.pre-launch-modal .modal-footer .footer-left,.pre-launch_modal .modal-footer .footer-right{width:100%;justify-content:center}.pre-launch-content{padding:1rem}.tab-mobile-menu{display:flex}.tab-buttons-container{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #e5e5e5;border-top:none;box-shadow:0 4px 6px #0000001a;z-index:16000!important;flex-direction:column;overflow:visible}.pre-launch-tabs:before,.pre-launch-tabs:after{display:none}.tab-buttons-container.expanded{display:flex}.tab-buttons-container .tab-button{width:100%;text-align:left;padding:1rem 1.5rem;font-size:.9rem;border-bottom:1px solid #e5e5e5;border-radius:0;display:flex;align-items:center}.tab-buttons-container .tab-button:last-child{border-bottom:none}.tab-buttons-container .tab-button:hover{background:#f0f2ff}.tab-buttons-container .tab-button.active{background:#667eea;color:#fff;border-bottom-color:transparent}.tab-buttons-container .tab-button.active:hover{background:#5a6fd8}.simulation-meta{grid-template-columns:1fr;gap:.75rem;padding:1rem}.pre-launch-actions{flex-direction:column;width:100%}.pre-launch-footer{flex-direction:column;gap:.75rem;align-items:stretch}.action-buttons{order:1;justify-content:center}.btn-launch,.btn-cancel{width:100%;text-align:center}}.ethics-guide{display:flex;flex-direction:column;gap:2rem}.radar-explanation{background:#667eea0d;padding:1.5rem;border-radius:12px;border:1px solid rgb(102 126 234 / 10%)}.ethics-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin:1.5rem 0}.feature-item{background:#fff;padding:1rem;border-radius:8px;border:1px solid rgb(229 231 235 / 60%)}.feature-item h5{color:#2d3748;font-size:1rem;font-weight:600;margin:0 0 .5rem}.feature-item p{color:#4a5568;font-size:.9rem;line-height:1.4;margin:0}.interpretation-guide{background:#f59e0b1a;padding:1rem;border-radius:8px;border:1px solid rgb(245 158 11 / 20%);margin-top:1rem}.interpretation-guide h5{color:#92400e;font-size:1rem;font-weight:600;margin:0 0 .5rem}.interpretation-guide p{color:#78350f;font-size:.9rem;line-height:1.5;margin:0}.ethics-dimensions{background:#fff;padding:1.5rem;border-radius:12px;border:1px solid rgb(229 231 235 / 60%)}.dimensions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin:1rem 0}.dimension-item{background:#f8fafccc;padding:1rem;border-radius:8px;border:1px solid rgb(229 231 235 / 40%);transition:all .2s ease}.dimension-item:hover{background:#f8fafc;border-color:#667eea33;transform:translateY(-1px)}.dimension-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.dimension-color{width:12px;height:12px;border-radius:50%;flex-shrink:0}.dimension-item h5{color:#1a202c;font-size:1rem;font-weight:600;margin:0}.dimension-item p{color:#4a5568;font-size:.9rem;line-height:1.4;margin:0}.ethics-reminder{background:#22c55e1a;border:1px solid rgb(34 197 94 / 20%);border-radius:8px;padding:1rem;margin-top:1.5rem}.ethics-reminder p{color:#065f46;font-size:.95rem;line-height:1.5;margin:0}.ethics-reminder strong{color:#047857;font-weight:600}@media (width <= 768px){.ethics-features,.dimensions-grid{grid-template-columns:1fr;gap:.75rem}.radar-explanation,.ethics-dimensions{padding:1rem}.feature-item,.dimension-item{padding:.75rem}}@media (prefers-contrast: high){.pre-launch-modal .modal-header{background:#000;color:#fff}.pre-launch-tab.active{color:#000;background:#fff;border-bottom-color:#000}.btn-launch{background:#000;color:#fff}.dimension-item,.feature-item{border-width:2px}}@media (prefers-reduced-motion: reduce){.tab-buttons-container .tab-button,.tab-hamburger,.hamburger-line,.resource-item,.btn-launch,.btn-cancel{transition:none}.btn-launch:hover,.dimension-item:hover{transform:none}}.modal-backdrop:has(.pre-launch-modal){z-index:15000!important}.modal-backdrop:has(.pre-launch-modal) .modal-dialog{max-width:900px;width:95vw;max-height:calc(100vh - 2rem);min-height:80vh;z-index:16000!important}.modal-backdrop .modal-body .pre-launch-modal{width:100%;height:100%;margin:0;padding:0}body.dark-mode .modal-container,body.dark-mode .pre-launch-modal{background:#2d2d2d;color:#fff}body.dark-mode .modal-header,body.dark-mode .pre-launch-modal .modal-header{background:linear-gradient(135deg,#4a5568,#2d3748);border-bottom:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .modal-footer,body.dark-mode .pre-launch-modal .modal-footer{background:var(--theme-bg-primary);border-top:1px solid var(--theme-border)}.modal-backdrop .modal-dialog{max-width:800px;width:90vw;max-height:calc(100vh - 4rem);min-height:300px}@media (width <= 768px){.modal-backdrop .modal-dialog{width:95vw;max-width:none;max-height:calc(100vh - 2rem);min-height:70vh}}body.dark-mode .pre-launch-modal{background:var(--theme-bg-secondary)}body.dark-mode .pre-launch-modal .modal-title{color:var(--theme-text-primary)}body.dark-mode .pre-launch-modal .modal-body{background:var(--theme-bg-secondary)}body.dark-mode .scenario-overview{background:var(--theme-bg-primary);border:1px solid var(--theme-border)}body.dark-mode .scenario-title{color:var(--theme-text-primary)}body.dark-mode .scenario-description{color:var(--theme-text-secondary)}body.dark-mode .scenario-details{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .radar-explanation{background:#667eea1a;border:1px solid rgba(102,126,234,.3);color:var(--theme-text-primary)}body.dark-mode .feature-item{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .feature-item h5{color:var(--theme-text-primary)}body.dark-mode .feature-item p{color:var(--theme-text-secondary)}body.dark-mode .interpretation-guide{background:#f59e0b1a;border:1px solid rgba(245,158,11,.3)}body.dark-mode .interpretation-guide h5{color:var(--color-amber-300, #fcd34d)}body.dark-mode .interpretation-guide p{color:var(--theme-text-secondary)}body.dark-mode .dimensions-grid{background:var(--theme-bg-secondary);border-color:var(--theme-border)}body.dark-mode .dimension-item h5{color:var(--theme-text-primary)}body.dark-mode .dimension-item p{color:var(--theme-text-secondary)}body.dark-mode .ethics-reminder{background:#22c55e1a;border:1px solid rgba(34,197,94,.3)}body.dark-mode .ethics-reminder p{color:var(--color-green-300, #86efac)}body.dark-mode .ethics-reminder strong{color:var(--color-green-200, #bbf7d0)}body.dark-mode .simulation-overview{background:var(--theme-bg-secondary);border-color:var(--theme-border)}body.dark-mode .simulation-overview h3{color:var(--theme-text-primary)}body.dark-mode .simulation-overview p{color:var(--theme-text-secondary)}body.dark-mode .overview-meta{background:var(--theme-bg-primary);border:1px solid var(--theme-border)}body.dark-mode .meta-item,body.dark-mode .meta-label{color:var(--theme-text-primary)}body.dark-mode .meta-value{color:var(--theme-text-secondary)}body.dark-mode .learning-objectives{background:#2d2d2d;border:1px solid var(--theme-border)}body.dark-mode .learning-objectives h3,body.dark-mode .learning-objectives h4{color:var(--theme-text-primary)}body.dark-mode .objective-item{color:var(--theme-text-secondary);border-bottom:1px solid var(--theme-border)}body.dark-mode .preparation-section{background:var(--theme-bg-primary);border:1px solid var(--theme-border)}body.dark-mode .preparation-section h4{color:var(--theme-text-primary)}body.dark-mode .tip-item{color:var(--theme-text-secondary)}body.dark-mode .context-dimensions{background:var(--theme-bg-primary)}body.dark-mode .ethics-dimensions,body.theme-dark .ethics-dimensions{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .tab-buttons-container{background:var(--theme-bg-primary);scrollbar-color:var(--theme-border) transparent}body.dark-mode .tab-buttons-container::-webkit-scrollbar-track{background:transparent}body.dark-mode .tab-buttons-container::-webkit-scrollbar-thumb{background:var(--theme-border)}body.dark-mode .tab-buttons-container::-webkit-scrollbar-thumb:hover{background:var(--theme-border-hover)}body.dark-mode .tab-buttons-container .tab-button{color:var(--theme-text-secondary);background:transparent}body.dark-mode .tab-buttons-container .tab-button:hover{background:var(--theme-bg-secondary);color:var(--theme-text-primary)}body.dark-mode .tab-buttons-container .tab-button.active{color:var(--color-primary);background:var(--theme-bg-secondary);border-bottom-color:var(--color-primary)}body.dark-mode .tab-buttons-container .tab-button:focus{outline-color:var(--color-primary)}body.theme-dark .tab-buttons-container{background:var(--theme-bg-primary);scrollbar-color:var(--theme-border) transparent}body.theme-dark .tab-buttons-container::-webkit-scrollbar-track{background:transparent}body.theme-dark .tab-buttons-container::-webkit-scrollbar-thumb{background:var(--theme-border)}body.theme-dark .tab-buttons-container::-webkit-scrollbar-thumb:hover{background:var(--theme-border-hover)}body.theme-dark .tab-buttons-container .tab-button{color:var(--theme-text-secondary);background:transparent}body.theme-dark .tab-buttons-container .tab-button:hover{background:var(--theme-bg-secondary);color:var(--theme-text-primary)}body.theme-dark .tab-buttons-container .tab-button.active{color:var(--color-primary);background:var(--theme-bg-secondary);border-bottom-color:var(--color-primary)}body.theme-dark .tab-buttons-container .tab-button:focus{outline-color:var(--color-primary)}body.dark-mode .educator-section{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .educator-section h4{color:var(--color-primary)}body.dark-mode .educator-section .resource-item{background:var(--theme-bg-primary);border-color:var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .educator-section .resource-item:hover{border-color:var(--color-primary);box-shadow:0 2px 8px var(--theme-shadow-hover)}body.dark-mode .resource-description{color:var(--theme-text-secondary)}body.dark-mode .resources-section{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .resource-item{background:var(--theme-bg-primary);border-color:var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .resource-item:hover{border-color:var(--color-primary);box-shadow:0 2px 8px var(--theme-shadow-hover)}body.dark-mode .resource-content,body.dark-mode .resource-title{color:var(--theme-text-primary)}body.dark-mode .discussion-questions{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .discussion-questions h4,body.dark-mode .discussion-questions h5{color:var(--theme-text-primary)}body.dark-mode .discussion-questions p,body.dark-mode .discussion-questions li{color:var(--theme-text-secondary)}body.dark-mode .discussion-questions .question-item{background:var(--theme-bg-primary);border:1px solid var(--theme-border);color:var(--theme-text-secondary)}body.theme-dark .educator-section{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.theme-dark .educator-section h4{color:var(--color-primary)}body.theme-dark .educator-section .resource-item{background:var(--theme-bg-primary);border-color:var(--theme-border);color:var(--theme-text-primary)}body.theme-dark .educator-section .resource-item:hover{border-color:var(--color-primary);box-shadow:0 2px 8px var(--theme-shadow-hover)}body.dark-mode .dimension-item{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .dimension-item:hover{border-color:var(--theme-border-hover);box-shadow:0 4px 12px var(--theme-shadow-hover)}body.dark-mode .dimension-title{color:var(--theme-text-primary)}body.dark-mode .dimension-description{color:var(--theme-text-secondary)}body.dark-mode .dimension-value{color:var(--color-primary)}body.dark-mode .educational-content{background:var(--theme-bg-primary);border:1px solid var(--theme-border)}body.dark-mode .educational-section{border-bottom:1px solid var(--theme-border)}body.dark-mode .educational-section h3{color:var(--theme-text-primary)}body.dark-mode .educational-section p,body.dark-mode .educational-section li{color:var(--theme-text-secondary)}body.dark-mode .key-concepts{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .concept-item{background:var(--theme-bg-primary);border:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .concept-item:hover{border-color:var(--theme-border-hover)}body.dark-mode .concept-title{color:var(--theme-text-primary)}body.dark-mode .concept-description{color:var(--theme-text-secondary)}body.dark-mode .btn-launch{background:var(--color-primary);color:#fff;border:1px solid var(--color-primary)}body.dark-mode .btn-launch:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}body.dark-mode .btn-secondary{background:var(--theme-bg-primary);color:var(--theme-text-primary);border:1px solid var(--theme-border)}body.dark-mode .btn-secondary:hover{background:var(--theme-bg-secondary);border-color:var(--theme-border-hover)}body.dark-mode .progress-indicator{background:var(--theme-bg-primary);border:1px solid var(--theme-border)}body.dark-mode .progress-bar{background:var(--theme-bg-secondary)}body.dark-mode .progress-fill{background:var(--color-primary)}body.dark-mode .progress-text{color:var(--theme-text-primary)}body.dark-mode .prerequisites{background:var(--theme-bg-primary);border:1px solid var(--theme-border)}body.dark-mode .prerequisite-item{color:var(--theme-text-secondary);border-bottom:1px solid var(--theme-border)}body.dark-mode .prerequisite-item.completed{color:var(--color-success)}body.dark-mode .prerequisite-item.incomplete{color:var(--color-warning)}body.dark-mode .nav-tabs{border-bottom:1px solid var(--theme-border)}body.dark-mode .nav-tab{background:var(--theme-bg-secondary);color:var(--theme-text-secondary);border:1px solid var(--theme-border)}body.dark-mode .nav-tab.active{background:var(--theme-bg-primary);color:var(--theme-text-primary);border-bottom-color:var(--theme-bg-primary)}body.dark-mode .nav-tab:hover:not(.active){background:var(--theme-bg-primary);color:var(--theme-text-primary)}.educational-context-section{margin:1.5rem 0;padding:2rem;background:linear-gradient(135deg,#f8f9ff,#f1f3ff);border-radius:16px;border:1px solid #e1e7ff;box-shadow:0 8px 32px #667eea1a;position:relative;overflow:hidden;max-width:1200px;margin-left:auto;margin-right:auto}.educational-context-section:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2,#f093fb)}.educational-header{margin-bottom:2.5rem;text-align:center;position:relative;padding-bottom:1.5rem}.educational-header:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:80px;height:2px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:1px}.educational-header h4{font-size:2.25rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0 0 1rem;display:flex;align-items:center;justify-content:center;gap:.75rem}.educational-header .modal-section-description{font-size:1.125rem;color:#6c757d;max-width:600px;margin:0 auto;line-height:1.6;font-weight:400}.educator-overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:3rem}.educator-overview-card{background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:16px;padding:2rem;text-align:center;position:relative;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid #e9ecef;box-shadow:0 4px 20px #00000014}.educator-overview-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2,#f093fb)}.educator-overview-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #667eea26;border-color:#667eea}.educator-overview-card:hover:before{height:6px}.educator-card-icon{font-size:3.5rem;margin-bottom:1.5rem;display:block;filter:drop-shadow(0 4px 8px rgba(102,126,234,.3))}.educator-card-title{font-size:1.5rem;font-weight:600;margin-bottom:.75rem;color:#333}.educator-card-description{color:#6c757d;line-height:1.6;margin-bottom:1.5rem}.educator-card-stats{display:flex;justify-content:space-around;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #dee2e6}.educator-stat{text-align:center}.educator-stat-number{font-size:1.75rem;font-weight:700;color:#667eea;display:block;line-height:1.2}.educator-stat-label{font-size:.875rem;color:#6c757d;text-transform:uppercase;letter-spacing:.5px;margin-top:.25rem}.modal-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #f0f0f0;position:relative}.modal-section-header:before{content:"";position:absolute;bottom:-2px;left:0;width:60px;height:2px;background:linear-gradient(135deg,#667eea,#764ba2)}.modal-section-header h4,.modal-section-header h5{font-size:1.75rem;font-weight:600;color:#333;margin:0;display:flex;align-items:center;gap:.75rem}.modal-section-header h5{font-size:1.5rem}.section-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.375rem 1rem;border-radius:20px;font-size:.875rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 10px #667eea4d;transition:all .3s ease}.section-badge:hover{transform:translateY(-1px);box-shadow:0 4px 15px #667eea66}.modal-section-description{font-size:1.125rem;color:#6c757d;margin-bottom:2rem;line-height:1.6;text-align:center;max-width:800px;margin-left:auto;margin-right:auto;font-weight:400}.lab-stations-overview{margin:2rem 0;background:linear-gradient(135deg,#f0f8ff,#e6f3ff);border-radius:16px;padding:2rem;border:1px solid #b3e5fc;position:relative;overflow:hidden}.lab-stations-overview:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#2196f3,#21cbf3,#64b5f6)}.lab-stations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem;margin-top:1.5rem}.lab-station-preview{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 20px #2196f31a;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid #e3f2fd;position:relative;overflow:hidden}.lab-station-preview:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,#2196f3,#21cbf3);transition:width .3s ease}.lab-station-preview:hover{transform:translateY(-8px);box-shadow:0 12px 40px #2196f333;border-color:#2196f3}.lab-station-preview:hover:before{width:8px}.station-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1rem}.station-icon{font-size:2.5rem;filter:drop-shadow(0 2px 8px rgba(33,150,243,.3))}.station-meta{display:flex;flex-direction:column;gap:.5rem;align-items:flex-end}.station-duration,.station-difficulty{background:linear-gradient(135deg,#e3f2fd,#bbdefb);color:#1976d2;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px;border:1px solid #90caf9}.station-title{font-size:1.25rem;font-weight:600;color:#333;margin-bottom:.75rem;line-height:1.3}.station-description{color:#6c757d;line-height:1.5;margin-bottom:1.25rem;font-size:.95rem}.station-tools{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.tool-tag{background:linear-gradient(135deg,#f3e5f5,#e1bee7);color:#7b1fa2;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:500;border:1px solid #ce93d8;transition:all .2s ease}.tool-tag:hover{background:linear-gradient(135deg,#e1bee7,#ce93d8);transform:translateY(-1px)}.station-objectives{background:linear-gradient(135deg,#f9f9f9,#f0f0f0);border-radius:12px;padding:1rem;border-left:4px solid #2196f3}.station-objectives h6{font-size:.875rem;font-weight:600;color:#333;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.5px}.station-objectives li{position:relative;padding-left:1.5rem;margin-bottom:.5rem;color:#555;font-size:.9rem;line-height:1.4}.station-objectives li:before{content:"✓";position:absolute;left:0;top:0;color:#2196f3;font-weight:700;font-size:1rem}.educator-dashboard-preview{margin:2rem 0;background:linear-gradient(135deg,#fff3e0,#ffe0b2);border-radius:16px;padding:2rem;border:1px solid #ffcc02;position:relative;overflow:hidden}.educator-dashboard-preview:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#ff9800,#ffb74d,#ffc107)}.dashboard-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.metric-card{background:#fff;border-radius:12px;padding:1.5rem;text-align:center;box-shadow:0 4px 20px #ff98001a;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid #ffe0b2;position:relative;overflow:hidden}.metric-card:before{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#ff9800,#ffc107);transform:scaleX(0);transition:transform .3s ease}.metric-card:hover{transform:translateY(-5px);box-shadow:0 8px 30px #ff980033;border-color:#ff9800}.metric-card:hover:before{transform:scaleX(1)}.metric-value{font-size:2.5rem;font-weight:700;color:#ff9800;display:block;line-height:1;margin-bottom:.5rem}.metric-label{font-size:.875rem;color:#666;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.metric-icon{font-size:1.5rem;margin-bottom:.75rem;opacity:.7}.dashboard-insights{background:linear-gradient(135deg,#f5f5f5,#eee);border-radius:12px;padding:1.5rem;border-left:4px solid #ff9800}.insights-header{font-size:1.125rem;font-weight:600;color:#333;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.insights-list li{position:relative;padding-left:1.5rem;margin-bottom:.75rem;color:#555;font-size:.95rem;line-height:1.4}.insights-list li:last-child{margin-bottom:0}.insight-icon{position:absolute;left:0;top:.1rem;color:#ff9800;font-size:1rem}.assessment-tools-preview{margin:2rem 0;background:linear-gradient(135deg,#f3e5f5,#e1bee7);border-radius:16px;padding:2rem;border:1px solid #ce93d8;position:relative;overflow:hidden}.assessment-tools-preview:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#9c27b0,#ba68c8,#ce93d8)}.assessment-categories{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:1.5rem}.assessment-category{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 20px #9c27b01a;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid #e1bee7;position:relative;overflow:hidden}.assessment-category:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,#9c27b0,#ba68c8);transition:width .3s ease}.assessment-category:hover{transform:translateY(-5px);box-shadow:0 8px 30px #9c27b033;border-color:#9c27b0}.assessment-category:hover:before{width:6px}.assessment-category-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.assessment-category-icon{font-size:1.5rem;filter:drop-shadow(0 2px 4px rgba(156,39,176,.3))}.assessment-category-title{font-size:1.25rem;font-weight:600;color:#333;margin:0;line-height:1.3}.assessment-methods{list-style:none;padding:0;margin:1rem 0}.assessment-methods li{position:relative;padding-left:1.5rem;margin-bottom:.5rem;color:#555;font-size:.9rem;line-height:1.4}.assessment-methods li:before{content:"📊";position:absolute;left:0;top:0;font-size:.8rem}.assessment-weight{background:linear-gradient(135deg,#f3e5f5,#e1bee7);color:#7b1fa2;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:500;display:inline-block;margin-top:.5rem;border:1px solid #ce93d8}.curriculum-standards-preview{margin:2rem 0;background:linear-gradient(135deg,#e8f5e8,#c8e6c9);border-radius:16px;padding:2rem;border:1px solid #a5d6a7;position:relative;overflow:hidden}.curriculum-standards-preview:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#4caf50,#66bb6a,#81c784)}.standards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:1.5rem}.standard-preview{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 20px #4caf501a;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid #c8e6c9;position:relative;overflow:hidden}.standard-preview:hover{transform:translateY(-5px);box-shadow:0 8px 30px #4caf5033;border-color:#4caf50}.standard-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.standard-code{background:linear-gradient(135deg,#e8f5e8,#c8e6c9);color:#2e7d32;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;border:1px solid #a5d6a7}.standard-progress{background:linear-gradient(135deg,#4caf50,#66bb6a);color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:500;box-shadow:0 2px 8px #4caf504d}.standard-title{font-size:1.125rem;font-weight:600;color:#333;margin:0 0 .75rem;line-height:1.3}.standard-description{color:#6c757d;line-height:1.5;font-size:.95rem}.standards-summary{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #c8e6c9}.coverage-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.coverage-stat{text-align:center;background:#fff;padding:1rem;border-radius:12px;border:1px solid #c8e6c9}.coverage-percentage{font-size:1.75rem;font-weight:700;color:#4caf50;display:block;line-height:1}.coverage-label{font-size:.75rem;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-top:.25rem}.professional-development-preview{margin:2rem 0;background:linear-gradient(135deg,#fce4ec,#f8bbd9);border-radius:16px;padding:2rem;border:1px solid #f48fb1;position:relative;overflow:hidden}.professional-development-preview:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#e91e63,#f06292,#f8bbd9)}.development-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:1.5rem}.development-feature{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 4px 20px #e91e631a;transition:all .3s cubic-bezier(.4,0,.2,1);border:1px solid #f8bbd9;position:relative;overflow:hidden}.development-feature:hover{transform:translateY(-5px);box-shadow:0 8px 30px #e91e6333;border-color:#e91e63}.feature-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.feature-icon{font-size:1.5rem;filter:drop-shadow(0 2px 4px rgba(233,30,99,.3))}.feature-title{font-size:1.125rem;font-weight:600;color:#333;margin:0;line-height:1.3}.feature-description{color:#6c757d;line-height:1.5;margin-bottom:1rem;font-size:.95rem}.feature-benefits li{position:relative;padding-left:1.5rem;margin-bottom:.5rem;color:#555;font-size:.9rem;line-height:1.4}.feature-benefits li:before{content:"🎓";position:absolute;left:0;top:0;font-size:.9rem}.educator-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#6c757d}.educator-loading-icon{font-size:3rem;margin-bottom:1rem;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:.7}50%{opacity:1}}.educator-fallback{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;padding:2rem;text-align:center;border:2px dashed #dee2e6;margin:2rem 0}.educator-fallback h4{color:#495057;margin-bottom:1rem;font-size:1.25rem}.educator-fallback p{color:#6c757d;line-height:1.6;max-width:500px;margin:0 auto}.educator-interactive-badge{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;display:inline-flex;align-items:center;gap:.25rem;box-shadow:0 2px 8px #28a7454d;animation:glow 3s ease-in-out infinite alternate}@keyframes glow{0%{box-shadow:0 2px 8px #28a7454d}to{box-shadow:0 4px 15px #28a74580,0 0 20px #28a74533}}.educator-interactive-badge:before{content:"⚡";font-size:.8rem}.educator-card-link{display:block;text-decoration:none;color:inherit;border-radius:16px;transition:all .3s ease;position:relative;overflow:hidden}.educator-card-link:focus{outline:3px solid #667eea;outline-offset:2px}.educator-card-link:focus-visible{outline:3px solid #667eea;outline-offset:2px}[data-educator-tooltip]{position:relative;cursor:help}[data-educator-tooltip]:hover:after{content:attr(data-educator-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#000000e6;color:#fff;padding:.5rem .75rem;border-radius:6px;font-size:.75rem;white-space:nowrap;z-index:16000!important;margin-bottom:.5rem;animation:fadeInUp .2s ease}[data-educator-tooltip]:hover:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#000000e6;z-index:16000!important}@keyframes fadeInUp{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media print{.educational-context-section{break-inside:avoid;page-break-inside:avoid;background:#fff!important;box-shadow:none!important;border:1px solid #000!important}.lab-station-preview,.metric-card,.assessment-category,.standard-preview,.development-feature{break-inside:avoid;page-break-inside:avoid;background:#fff!important;box-shadow:none!important;border:1px solid #ccc!important}.section-badge,.educator-interactive-badge{background:#666!important;color:#fff!important;box-shadow:none!important}}.station-duration,.station-difficulty{background:#f5f5f5;padding:.2rem .5rem;border-radius:4px;white-space:nowrap}.station-title{color:#1565c0;font-weight:600;font-size:1rem;margin-bottom:.5rem}.station-description{color:#424242;font-size:.9rem;line-height:1.4;margin-bottom:.75rem}.station-tools{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.tool-tag{background:#e3f2fd;color:#1565c0;padding:.2rem .6rem;border-radius:12px;font-size:.75rem;font-weight:500}.station-objectives{border-top:1px solid #e0e0e0;padding-top:.75rem}.station-objectives h6{color:#424242;font-size:.85rem;font-weight:600;margin:0 0 .5rem}.station-objectives ul{list-style:none;padding:0;margin:0}.station-objectives li{font-size:.8rem;color:#666;position:relative;padding:.2rem 0 .2rem 1rem}.station-objectives li:before{content:"•";color:#0288d1;position:absolute;left:0;font-weight:700}.educator-dashboard-preview{margin:2rem 0;background:linear-gradient(135deg,#f3e5f5,#e1bee7);border-radius:12px;padding:1.5rem;border-left:4px solid #8e24aa}.dashboard-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin:1rem 0}.metric-card{background:#fff;padding:1rem;border-radius:8px;text-align:center;border:1px solid #f3e5f5;transition:all .2s ease}.metric-card:hover{border-color:#8e24aa;box-shadow:0 4px 12px #8e24aa26}.metric-value{font-size:1.8rem;font-weight:700;color:#8e24aa;display:block;line-height:1}.metric-label{font-size:.8rem;color:#666;margin-top:.25rem;font-weight:500}.metric-icon{font-size:1.2rem;margin-bottom:.5rem;color:#8e24aa}.dashboard-insights{background:#fff;border-radius:8px;padding:1rem;margin-top:1rem;border:1px solid #f3e5f5}.insights-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.insights-list{list-style:none;padding:0;margin:0}.insights-list li{padding:.5rem 0;border-bottom:1px solid #f5f5f5;font-size:.9rem;color:#444}.insights-list li:last-child{border-bottom:none}.insight-icon{margin-right:.5rem;color:#8e24aa}.assessment-tools-preview{margin:2rem 0;background:linear-gradient(135deg,#e8f5e8,#c8e6c9);border-radius:12px;padding:1.5rem;border-left:4px solid #43a047}.assessment-categories{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin:1rem 0}.assessment-category{background:#fff;border:1px solid #e8f5e8;border-radius:8px;padding:1rem;position:relative;transition:all .3s ease}.assessment-category:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#43a047,#388e3c);border-radius:8px 8px 0 0}.assessment-category:hover{transform:translateY(-2px);box-shadow:0 6px 20px #43a04726;border-color:#43a047}.assessment-category-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.assessment-category-icon{width:2rem;height:2rem;background:linear-gradient(135deg,#43a047,#388e3c);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.9rem;flex-shrink:0}.assessment-category-title{color:#2e7d32;font-weight:600;font-size:1rem;margin:0}.assessment-methods{list-style:none;padding:0;margin:0}.assessment-methods li{font-size:.85rem;color:#444;position:relative;padding:.4rem 0 .4rem 1rem}.assessment-methods li:before{content:"✓";color:#43a047;position:absolute;left:0;font-weight:700}.assessment-weight{background:#e8f5e8;color:#2e7d32;padding:.2rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500;margin-top:.5rem;display:inline-block}.curriculum-standards-preview{margin:2rem 0;background:linear-gradient(135deg,#fff3e0,#ffcc80);border-radius:12px;padding:1.5rem;border-left:4px solid #ff9800}.standards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin:1rem 0}.standard-preview{background:#fff;border:1px solid #fff3e0;border-radius:8px;padding:1rem;transition:all .3s ease}.standard-preview:hover{border-color:#ff9800;box-shadow:0 4px 12px #ff980026;transform:translateY(-1px)}.standard-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.standard-code{background:#ff9800;color:#fff;padding:.2rem .6rem;border-radius:4px;font-size:.75rem;font-weight:600}.standard-progress{font-size:.8rem;color:#ef6c00;font-weight:500}.standard-title{color:#e65100;font-weight:600;font-size:.9rem;margin-bottom:.5rem}.standard-description{font-size:.8rem;color:#444;line-height:1.4}.standards-summary{background:#fff;border-radius:8px;padding:1rem;margin-top:1rem;border:1px solid #fff3e0;text-align:center}.coverage-stats{display:flex;justify-content:space-around;gap:1rem;flex-wrap:wrap}.coverage-stat{display:flex;flex-direction:column;align-items:center;gap:.25rem}.coverage-percentage{font-size:1.5rem;font-weight:700;color:#ff9800}.coverage-label{font-size:.8rem;color:#666;font-weight:500}.professional-development-preview{margin:2rem 0;background:linear-gradient(135deg,#f1f8e9,#dcedc8);border-radius:12px;padding:1.5rem;border-left:4px solid #689f38}.development-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin:1rem 0}.development-feature{background:#fff;border:1px solid #f1f8e9;border-radius:8px;padding:1rem;transition:all .3s ease}.development-feature:hover{border-color:#689f38;box-shadow:0 4px 12px #689f3826;transform:translateY(-1px)}.feature-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.feature-icon{width:2rem;height:2rem;background:linear-gradient(135deg,#689f38,#558b2f);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.9rem;flex-shrink:0}.feature-title{color:#33691e;font-weight:600;font-size:1rem;margin:0}.feature-description{font-size:.85rem;color:#444;line-height:1.4;margin-bottom:.75rem}.feature-benefits{list-style:none;padding:0;margin:0}.feature-benefits li{font-size:.8rem;color:#555;position:relative;padding:.2rem 0 .2rem 1rem}.feature-benefits li:before{content:"→";color:#689f38;position:absolute;left:0;font-weight:700}.educational-header h4{color:#4c63d2;font-size:1.4rem;font-weight:600;margin-bottom:.5rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.educational-header .modal-section-description{color:#6b7280;font-size:1rem;max-width:600px;margin:0 auto}.modal-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.modal-section-header h5{color:#374151;font-size:1.1rem;font-weight:600;margin:0;display:flex;align-items:center;gap:.5rem}.section-badge{background:#667eea;color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500;white-space:nowrap}.curriculum-grid,.assessment-grid,.lab-stations-grid,.templates-grid{display:grid;gap:1rem;margin-top:1rem}@media (min-width: 768px){.curriculum-grid,.assessment-grid,.lab-stations-grid,.templates-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}.curriculum-card,.assessment-card,.lab-station-card,.template-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;transition:all .3s ease;box-shadow:0 1px 3px #0000001a}.curriculum-card:hover,.assessment-card:hover,.lab-station-card:hover,.template-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:translateY(-2px)}.curriculum-header,.assessment-header,.station-header,.template-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;flex-wrap:wrap;gap:.5rem}.standard-name,.tool-name,.station-name,.template-title{color:#1f2937;font-weight:600;font-size:.95rem}.standard-code,.tool-type,.station-category,.template-difficulty{background:#f3f4f6;color:#6b7280;padding:.2rem .6rem;border-radius:6px;font-size:.8rem;font-weight:500}.standard-description,.tool-description,.station-purpose,.template-description{color:#4b5563;font-size:.9rem;line-height:1.5;margin-bottom:.75rem}.grade-level,.subject-area,.assessment-difficulty,.time-estimate,.equipment-list,.station-duration,.group-size,.template-time{font-size:.85rem;color:#6b7280;margin-bottom:.25rem;display:flex;align-items:center;gap:.25rem}.grade-level:before,.subject-area:before,.assessment-difficulty:before,.time-estimate:before,.station-duration:before,.group-size:before,.template-time:before{content:"•";color:#d1d5db;font-weight:700}.equipment-list{flex-wrap:wrap}.template-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:.5rem 0}.template-tags .tag{background:#e0e7ff;color:#4338ca;padding:.2rem .6rem;border-radius:12px;font-size:.75rem;font-weight:500}.educational-summary{margin-top:2rem;padding:1.5rem;background:#fff;border-radius:8px;border:1px solid #e5e7eb}.summary-stats{display:flex;justify-content:space-around;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.stat-item{text-align:center;min-width:100px}.stat-number{display:block;font-size:1.5rem;font-weight:700;color:#667eea;line-height:1}.stat-icon{display:block;font-size:1.5rem;line-height:1}.stat-label{display:block;font-size:.85rem;color:#6b7280;margin-top:.25rem;font-weight:500}.summary-text{text-align:center;color:#4b5563;font-size:.9rem;margin:0;font-style:italic}.educational-fallback{background:linear-gradient(135deg,#fef3c7,#fde68a);border-left-color:#f59e0b}.fallback-content .learning-features,.fallback-content .educational-benefits{list-style:none;padding:0;margin:.75rem 0}.fallback-content .learning-features li,.fallback-content .educational-benefits li{position:relative;padding:.5rem 0 .5rem 1.5rem}.fallback-content .learning-features li:before,.fallback-content .educational-benefits li:before{content:"✓";position:absolute;left:0;color:#059669;font-weight:700}.notice-box{display:flex;align-items:flex-start;gap:1rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:1rem;margin-top:1.5rem}.notice-icon{font-size:1.2rem;margin-top:.1rem}.notice-content strong{color:#1e40af;display:block;margin-bottom:.5rem}.notice-content p{margin:0;color:#1e3a8a;font-size:.9rem;line-height:1.5}.error-notice{background:#fee2e2;border:1px solid #fecaca;color:#dc2626;padding:.75rem 1rem;border-radius:6px;margin:.5rem 0;font-size:.9rem}.educator-debug-section{margin-top:2rem;opacity:.8}.educator-debug-section summary{color:#6b7280;font-size:.9rem}.educator-debug-section .debug-content{margin-top:.5rem;font-size:.8rem;color:#4b5563}.educator-debug-section .debug-content div{margin-bottom:.25rem}.educator-debug-section pre{font-size:.75rem;line-height:1.4;color:#374151}body.dark-mode .educational-context-section{background:linear-gradient(135deg,#1e293b,#0f172a);border-left-color:#60a5fa}body.dark-mode .educational-header h4{color:#93c5fd}body.dark-mode .educational-header .modal-section-description{color:#cbd5e1}body.dark-mode .modal-section-header h5{color:#f1f5f9}body.dark-mode .section-badge{background:#3b82f6}body.dark-mode .curriculum-card,body.dark-mode .assessment-card,body.dark-mode .lab-station-card,body.dark-mode .template-card{background:#374151;border-color:#4b5563}body.dark-mode .curriculum-card:hover,body.dark-mode .assessment-card:hover,body.dark-mode .lab-station-card:hover,body.dark-mode .template-card:hover{border-color:#60a5fa;box-shadow:0 4px 12px #60a5fa26}body.dark-mode .standard-name,body.dark-mode .tool-name,body.dark-mode .station-name,body.dark-mode .template-title{color:#f9fafb}body.dark-mode .standard-code,body.dark-mode .tool-type,body.dark-mode .station-category,body.dark-mode .template-difficulty{background:#4b5563;color:#d1d5db}body.dark-mode .standard-description,body.dark-mode .tool-description,body.dark-mode .station-purpose,body.dark-mode .template-description{color:#d1d5db}body.dark-mode .educational-summary{background:#374151;border-color:#4b5563}body.dark-mode .stat-number{color:#93c5fd}body.dark-mode .summary-text{color:#d1d5db}body.dark-mode .educational-fallback{background:linear-gradient(135deg,#451a03,#7c2d12);border-left-color:#f59e0b}body.dark-mode .notice-box{background:#1e3a8a;border-color:#3b82f6}body.dark-mode .notice-content strong{color:#93c5fd}body.dark-mode .notice-content p{color:#bfdbfe}body.dark-mode .lab-stations-overview{background:linear-gradient(135deg,#0f172a,#1e293b);border-left-color:#60a5fa}body.dark-mode .lab-station-preview{background:#374151;border-color:#4b5563}body.dark-mode .lab-station-preview:before{background:linear-gradient(90deg,#60a5fa,#3b82f6)}body.dark-mode .lab-station-preview:hover{border-color:#60a5fa;box-shadow:0 6px 20px #60a5fa26}body.dark-mode .station-icon{background:linear-gradient(135deg,#60a5fa,#3b82f6)}body.dark-mode .station-duration,body.dark-mode .station-difficulty{background:#4b5563;color:#d1d5db}body.dark-mode .station-title{color:#93c5fd}body.dark-mode .station-description{color:#d1d5db}body.dark-mode .tool-tag{background:#1e3a8a;color:#93c5fd}body.dark-mode .station-objectives h6{color:#f1f5f9}body.dark-mode .station-objectives li{color:#cbd5e1}body.dark-mode .station-objectives li:before{color:#60a5fa}body.dark-mode .educator-dashboard-preview{background:linear-gradient(135deg,#581c87,#7c3aed);border-left-color:#a855f7}body.dark-mode .metric-card{background:#374151;border-color:#4b5563}body.dark-mode .metric-card:hover{border-color:#a855f7;box-shadow:0 4px 12px #a855f726}body.dark-mode .metric-value{color:#c084fc}body.dark-mode .metric-label{color:#d1d5db}body.dark-mode .metric-icon{color:#a855f7}body.dark-mode .dashboard-insights{background:#374151;border-color:#4b5563}body.dark-mode .insights-list li{color:#d1d5db;border-bottom-color:#4b5563}body.dark-mode .insight-icon{color:#a855f7}body.dark-mode .assessment-tools-preview{background:linear-gradient(135deg,#052e16,#166534);border-left-color:#22c55e}body.dark-mode .assessment-category{background:#374151;border-color:#4b5563}body.dark-mode .assessment-category:before{background:linear-gradient(90deg,#22c55e,#16a34a)}body.dark-mode .assessment-category:hover{border-color:#22c55e;box-shadow:0 6px 20px #22c55e26}body.dark-mode .assessment-category-icon{background:linear-gradient(135deg,#22c55e,#16a34a)}body.dark-mode .assessment-category-title{color:#86efac}body.dark-mode .assessment-methods li{color:#d1d5db}body.dark-mode .assessment-methods li:before{color:#22c55e}body.dark-mode .assessment-weight{background:#166534;color:#86efac}body.dark-mode .curriculum-standards-preview{background:linear-gradient(135deg,#431407,#9a3412);border-left-color:#f97316}body.dark-mode .standard-preview{background:#374151;border-color:#4b5563}body.dark-mode .standard-preview:hover{border-color:#f97316;box-shadow:0 4px 12px #f9731626}body.dark-mode .standard-code{background:#f97316}body.dark-mode .standard-progress,body.dark-mode .standard-title{color:#fdba74}body.dark-mode .standard-description{color:#d1d5db}body.dark-mode .standards-summary{background:#374151;border-color:#4b5563}body.dark-mode .coverage-percentage{color:#fdba74}body.dark-mode .coverage-label{color:#d1d5db}body.dark-mode .extension-activities,body.dark-mode .standards-alignment,body.dark-mode .extension-activities li,body.dark-mode .standards-alignment li{color:var(--theme-text-primary, #e5e7eb)}body.dark-mode .professional-development-preview{background:linear-gradient(135deg,#14532d,#365314);border-left-color:#84cc16}body.dark-mode .development-feature{background:#374151;border-color:#4b5563}body.dark-mode .development-feature:hover{border-color:#84cc16;box-shadow:0 4px 12px #84cc1626}body.dark-mode .feature-icon{background:linear-gradient(135deg,#84cc16,#65a30d)}body.dark-mode .feature-title{color:#bef264}body.dark-mode .feature-description{color:#d1d5db}body.dark-mode .feature-benefits li{color:#cbd5e1}body.dark-mode .feature-benefits li:before{color:#84cc16}@media (max-width: 768px){.educational-context-section{margin:1rem 0;padding:1rem}.modal-section-header{flex-direction:column;align-items:flex-start;gap:.5rem}.summary-stats{flex-direction:column;gap:.5rem}.stat-item{min-width:auto}.notice-box{flex-direction:column;gap:.5rem}.lab-stations-overview{padding:1rem}.lab-stations-grid{grid-template-columns:1fr;gap:.75rem}.lab-station-preview{padding:.75rem}.station-header{flex-direction:column;align-items:flex-start;gap:.5rem}.station-meta{align-self:stretch;text-align:left;display:flex;flex-direction:row;gap:.5rem}.station-tools{gap:.25rem}.tool-tag{font-size:.7rem;padding:.15rem .4rem}.educator-dashboard-preview{padding:1rem}.dashboard-metrics{grid-template-columns:repeat(2,1fr);gap:.75rem}.metric-card{padding:.75rem}.metric-value{font-size:1.5rem}.dashboard-insights{padding:.75rem}.assessment-tools-preview{padding:1rem}.assessment-categories{grid-template-columns:1fr;gap:.75rem}.assessment-category{padding:.75rem}.assessment-category-header{flex-direction:column;align-items:flex-start;gap:.5rem}.curriculum-standards-preview{padding:1rem}.standards-grid{grid-template-columns:1fr;gap:.75rem}.standard-preview{padding:.75rem}.standard-header{flex-direction:column;align-items:flex-start;gap:.25rem}.coverage-stats{flex-direction:column;gap:.75rem}.coverage-stat{flex-direction:row;justify-content:space-between;align-items:center}.professional-development-preview{padding:1rem}.development-features{grid-template-columns:1fr;gap:.75rem}.development-feature{padding:.75rem}.feature-header{flex-direction:column;align-items:flex-start;gap:.5rem}}@media (prefers-reduced-motion: reduce){.curriculum-card,.assessment-card,.lab-station-card,.template-card{transition:none}.curriculum-card:hover,.assessment-card:hover,.lab-station-card:hover,.template-card:hover{transform:none}.lab-station-preview,.metric-card,.assessment-category,.standard-preview,.development-feature{transition:none}.lab-station-preview:hover,.metric-card:hover,.assessment-category:hover,.standard-preview:hover,.development-feature:hover{transform:none}}@media (prefers-contrast: high){.educational-context-section,.curriculum-card,.assessment-card,.lab-station-card,.template-card,.lab-station-preview,.metric-card,.assessment-category,.standard-preview,.development-feature{border-width:2px;box-shadow:none}.lab-station-preview:before,.assessment-category:before{height:4px}}.lab-station-preview:focus,.metric-card:focus,.assessment-category:focus,.standard-preview:focus,.development-feature:focus{outline:2px solid #667eea;outline-offset:2px;border-radius:8px}.lab-station-preview:focus-visible,.metric-card:focus-visible,.assessment-category:focus-visible,.standard-preview:focus-visible,.development-feature:focus-visible{outline:2px solid #667eea;outline-offset:2px;box-shadow:0 0 0 4px #667eea33}.lab-station-preview,.metric-card,.assessment-category,.standard-preview,.development-feature{cursor:pointer;position:relative}.lab-station-preview[tabindex],.metric-card[tabindex],.assessment-category[tabindex],.standard-preview[tabindex],.development-feature[tabindex]{outline:none}.skip-to-educational-content{position:absolute;top:-40px;left:6px;background:#667eea;color:#fff;padding:8px;text-decoration:none;border-radius:4px;font-size:.9rem;z-index:16000!important;transition:top .3s}.skip-to-educational-content:focus{top:6px}@media print{.educational-context-section,.lab-stations-overview,.educator-dashboard-preview,.assessment-tools-preview,.curriculum-standards-preview,.professional-development-preview{background:#fff!important;border:1px solid #000!important;box-shadow:none!important;break-inside:avoid;margin:1rem 0;padding:1rem}.lab-station-preview,.metric-card,.assessment-category,.standard-preview,.development-feature{background:#fff!important;border:1px solid #666!important;box-shadow:none!important;break-inside:avoid;margin:.5rem 0}.lab-station-preview:before,.assessment-category:before{display:none}.station-icon,.metric-icon,.assessment-category-icon,.feature-icon{background:#666!important;print-color-adjust:exact}.tool-tag,.assessment-weight,.standard-code{background:#f0f0f0!important;color:#000!important;print-color-adjust:exact}}@media (max-width: 480px){.educational-header h4{font-size:1.75rem}.educator-overview-grid{grid-template-columns:1fr;gap:1rem}.educator-card-stats{grid-template-columns:repeat(2,1fr);gap:.5rem}.modal-section-header h4,.modal-section-header h5{font-size:1.25rem}.lab-stations-grid,.dashboard-metrics,.assessment-categories,.standards-grid,.development-features{grid-template-columns:1fr;gap:1rem}.station-tools{justify-content:center}.tool-tag{font-size:.7rem;padding:.2rem .5rem}.coverage-stats{grid-template-columns:repeat(2,1fr);gap:.75rem}}@media (prefers-contrast: high){.educational-context-section,.lab-stations-overview,.educator-dashboard-preview,.assessment-tools-preview,.curriculum-standards-preview,.professional-development-preview{border:2px solid #000;background:#fff}.section-badge,.educator-interactive-badge{background:#000;color:#fff;border:2px solid #000}.lab-station-preview,.metric-card,.assessment-category,.standard-preview,.development-feature{border:2px solid #000}.tool-tag,.assessment-weight,.standard-code,.station-duration,.station-difficulty{background:#000;color:#fff;border:1px solid #000}}@media (prefers-reduced-motion: reduce){.lab-station-preview,.metric-card,.assessment-category,.standard-preview,.development-feature,.educator-overview-card{transition:none}.lab-station-preview:hover,.metric-card:hover,.assessment-category:hover,.standard-preview:hover,.development-feature:hover,.educator-overview-card:hover{transform:none}.educator-loading-icon,.educator-interactive-badge{animation:none}}}@layer components{.enhanced-simulation-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;font-family:var(--font-family-base)}.enhanced-simulation-modal.visible{opacity:1}.enhanced-modal-backdrop{position:absolute;inset:0;background:#0009;backdrop-filter:blur(2px)}.enhanced-modal-container{position:relative;width:90vw;height:85vh;max-width:1400px;max-height:900px;background:var(--modal-background, #fff);border-radius:12px;box-shadow:0 20px 40px #0000004d;display:flex;flex-direction:column;overflow:hidden;transform:scale(.95);transition:transform .3s ease;opacity:1}.enhanced-simulation-modal.visible .enhanced-modal-container{transform:scale(1)}.modal-size-small .enhanced-modal-container{width:60vw;height:70vh;max-width:800px;max-height:600px}.modal-size-medium .enhanced-modal-container{width:75vw;height:80vh;max-width:1000px;max-height:750px}.modal-size-large .enhanced-modal-container{width:90vw;height:85vh;max-width:1400px;max-height:900px}.modal-size-fullscreen .enhanced-modal-container{width:100vw;height:100vh;max-width:none;max-height:none;border-radius:0}.enhanced-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--modal-border, #e5e7eb);background:linear-gradient(135deg,var(--color-primary-light, #3b82f6),var(--color-primary, #2563eb));color:#fff}.enhanced-modal-title{margin:0;font-size:1.5rem;font-weight:600;flex:1}.enhanced-modal-controls{display:flex;gap:8px}.enhanced-modal-controls .btn-icon{width:36px;height:36px;border-radius:6px;background:#ffffff1a;border:1px solid rgb(255 255 255 / 20%);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.enhanced-modal-controls .btn-icon:hover{background:#fff3;transform:translateY(-1px)}.enhanced-modal-tabs{display:flex;background:var(--form-disabled-bg, #f9fafb);border-bottom:1px solid var(--modal-border, #e5e7eb);padding:0 24px}.enhanced-tab{display:flex;align-items:center;gap:8px;padding:12px 20px;border:none;background:none;color:var(--color-gray-600, #6b7280);cursor:pointer;transition:all .2s ease;border-bottom:3px solid transparent;font-size:.9rem;font-weight:500}.enhanced-tab:hover{color:var(--color-gray-900, #111827);background:#3b82f60d}.enhanced-tab.active{color:var(--color-primary, #2563eb);border-bottom-color:var(--color-primary, #2563eb);background:#3b82f61a}.tab-icon{font-size:1.1rem}.tab-label{font-weight:500}.enhanced-modal-body{flex:1;overflow:hidden;display:flex;flex-direction:column}.simulation-main-area{flex:1;display:flex;overflow:visible;min-height:0}.simulation-content-wrapper{flex:1;display:flex;flex-direction:column;overflow:visible;min-height:0}.enhanced-simulation-container{flex:1;padding:0;overflow:auto;background:var(--modal-background, #fff);min-height:0}.ethics-meters-panel{background:var(--form-disabled-bg, #f9fafb);border-top:1px solid var(--modal-border, #e5e7eb);padding:16px 20px;transition:all .3s ease;display:none}.ethics-meters-panel.visible{display:block}.ethics-meters-panel.collapsed{padding:8px 20px}.ethics-meters-panel.collapsed .ethics-meters-content{display:none}.ethics-meters-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.ethics-meters-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--color-gray-900, #111827)}.ethics-meters-panel.collapsed .ethics-meters-header{margin-bottom:0}.ethics-description{margin:0 0 16px;font-size:.9rem;color:var(--color-gray-600, #6b7280)}.meters-container{display:flex;gap:16px;flex-wrap:wrap}.resource-panel{width:250px;background:var(--form-disabled-bg, #f9fafb);border-left:1px solid var(--modal-border, #e5e7eb);display:flex;flex-direction:column;overflow:hidden;transition:width .3s ease}.resource-panel.collapsed{width:60px}.resource-panel.collapsed .resource-panel-content{display:none}.resource-panel-header{padding:16px 20px;border-bottom:1px solid var(--modal-border, #e5e7eb);display:flex;align-items:center;justify-content:space-between}.resource-panel-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--color-gray-900, #111827)}.resource-panel-content{flex:1;padding:16px 20px;overflow-y:auto}.resource-section{margin-bottom:24px}.resource-section h4{margin:0 0 12px;font-size:.9rem;font-weight:600;color:var(--color-text)}.resource-list{list-style:none;padding:0;margin:0}.resource-list li{margin-bottom:8px}.resource-link{color:var(--color-primary);text-decoration:none;font-size:.85rem;transition:color .2s ease}.resource-link:hover{color:var(--color-primary-dark);text-decoration:underline}.enhanced-tab-content{flex:1;overflow:hidden}.tab-panel{height:100%;overflow-y:auto;padding:24px}.tab-content-header{margin-bottom:24px}.tab-content-header h3{margin:0 0 8px;font-size:1.3rem;font-weight:600;color:var(--color-text)}.tab-content-header p{margin:0;color:var(--color-text-secondary);font-size:.95rem}.resources-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.resource-category{background:var(--color-background-secondary);border-radius:8px;padding:20px;border:1px solid var(--color-border)}.resource-category h4{margin:0 0 16px;font-size:1.1rem;font-weight:600;color:var(--color-text)}.resource-items{display:flex;flex-direction:column;gap:12px}.progress-content{display:flex;flex-direction:column;gap:24px}.progress-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}.progress-stat{background:var(--color-background-secondary);border-radius:8px;padding:20px;text-align:center;border:1px solid var(--color-border)}.stat-value{display:block;font-size:1.8rem;font-weight:700;color:var(--color-primary);margin-bottom:4px}.stat-label{font-size:.9rem;color:var(--color-text-secondary);font-weight:500}.decision-history{background:var(--color-background-secondary);border-radius:8px;padding:20px;border:1px solid var(--color-border)}.decision-history h4{margin:0 0 16px;font-size:1.1rem;font-weight:600;color:var(--color-text)}.decisions-timeline{display:flex;flex-direction:column;gap:12px}.help-content{display:flex;flex-direction:column;gap:24px}.help-section{background:var(--color-background-secondary);border-radius:8px;padding:20px;border:1px solid var(--color-border)}.help-section h4{margin:0 0 16px;font-size:1.1rem;font-weight:600;color:var(--color-text)}.help-steps ol{margin:0;padding-left:20px}.help-steps li{margin-bottom:8px;color:var(--color-text-secondary);line-height:1.5}.help-actions{display:flex;gap:12px;flex-wrap:wrap}.enhanced-modal-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-top:1px solid var(--modal-border, #e5e7eb);background:var(--form-disabled-bg, #f9fafb)}.simulation-status{display:flex;align-items:center;gap:8px}.status-indicator{font-size:.9rem;font-weight:500;color:var(--color-gray-600, #6b7280)}.simulation-actions{display:flex;gap:12px}@media (width <= 768px){.enhanced-modal-container{width:95vw;height:90vh;margin:0;border-radius:8px}.enhanced-modal-header{padding:16px 20px}.enhanced-modal-title{font-size:1.3rem}.enhanced-modal-tabs{padding:0 16px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.enhanced-modal-tabs::-webkit-scrollbar{display:none}.enhanced-tab{padding:12px 16px;white-space:nowrap;flex-shrink:0}.simulation-main-area{flex-direction:column}.resource-panel{width:100%;border-left:none;border-top:1px solid var(--color-border);max-height:200px}.tab-panel{padding:16px}.resources-grid{grid-template-columns:1fr}.progress-summary{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.enhanced-modal-footer{padding:12px 16px;flex-direction:column;gap:12px;align-items:stretch}.simulation-actions{order:-1}}@media (width <= 480px){.enhanced-modal-container{width:100vw;height:100vh;border-radius:0}.enhanced-tab .tab-label{display:none}.enhanced-tab{padding:12px 8px}.resource-panel{max-height:150px}}@media (prefers-reduced-motion: reduce){.enhanced-simulation-modal,.enhanced-modal-container,.enhanced-tab,.ethics-meters-panel{transition:none}}@media (prefers-contrast: high){.enhanced-modal-container{border:2px solid var(--color-text)}.enhanced-modal-header,.enhanced-tab.active{background:var(--color-text);color:var(--color-background)}}.enhanced-tab:focus,.enhanced-modal-controls .btn-icon:focus,.resource-link:focus{outline:2px solid var(--color-primary);outline-offset:2px}@media print{.enhanced-simulation-modal{position:static;opacity:1}.enhanced-modal-backdrop{display:none}.enhanced-modal-container{width:100%;height:auto;max-width:none;max-height:none;box-shadow:none;border:1px solid #000}.enhanced-modal-tabs,.enhanced-modal-controls,.resource-panel{display:none}}body.dark-mode .enhanced-modal-container{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);box-shadow:0 20px 40px #0009}body.dark-mode .enhanced-modal-backdrop{background:#000c}body.dark-mode .enhanced-modal-header{background:var(--theme-bg-primary);border-bottom:1px solid var(--theme-border)}body.dark-mode .enhanced-modal-title{color:var(--theme-text-primary)}body.dark-mode .enhanced-modal-subtitle{color:var(--theme-text-secondary)}body.dark-mode .enhanced-modal-close{color:var(--theme-text-secondary);background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .enhanced-modal-close:hover{color:var(--theme-text-primary);background:var(--theme-bg-primary);border-color:var(--theme-border-hover)}body.dark-mode .enhanced-modal-tabs{background:var(--theme-bg-primary);border-bottom:1px solid var(--theme-border)}body.dark-mode .enhanced-tab{background:var(--theme-bg-secondary);color:var(--theme-text-secondary);border:1px solid var(--theme-border)}body.dark-mode .enhanced-tab.active{background:var(--theme-bg-primary);color:var(--theme-text-primary);border-bottom-color:var(--theme-bg-primary)}body.dark-mode .enhanced-tab:hover:not(.active){background:var(--theme-bg-primary);color:var(--theme-text-primary);border-color:var(--theme-border-hover)}body.dark-mode .enhanced-modal-content,body.dark-mode .enhanced-tab-content{background:var(--theme-bg-secondary)}body.dark-mode .simulation-content{background:var(--theme-bg-primary);color:var(--theme-text-primary)}body.dark-mode .simulation-step{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .simulation-step-title{color:var(--theme-text-primary)}body.dark-mode .simulation-step-content{color:var(--theme-text-secondary)}body.dark-mode .simulation-step.active{border-color:var(--color-primary);box-shadow:0 0 8px #4a9eff4d}body.dark-mode .resource-panel{background:var(--theme-bg-primary);border-left:1px solid var(--theme-border)}body.dark-mode .resource-panel-header{background:var(--theme-bg-secondary);border-bottom:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .resource-section{border-bottom:1px solid var(--theme-border)}body.dark-mode .resource-section-title{color:var(--theme-text-primary)}body.dark-mode .resource-item{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .resource-item:hover{background:var(--theme-bg-primary);border-color:var(--theme-border-hover)}body.dark-mode .resource-link{color:var(--color-primary)}body.dark-mode .resource-link:hover{color:var(--color-primary-dark)}body.dark-mode .progress-indicator{background:var(--theme-bg-primary);border:1px solid var(--theme-border)}body.dark-mode .progress-bar{background:var(--theme-bg-secondary)}body.dark-mode .progress-fill{background:var(--color-primary)}body.dark-mode .progress-text{color:var(--theme-text-primary)}body.dark-mode .enhanced-modal-controls{background:var(--theme-bg-primary);border-top:1px solid var(--theme-border)}body.dark-mode .btn-icon{background:var(--theme-bg-secondary);color:var(--theme-text-primary);border:1px solid var(--theme-border)}body.dark-mode .btn-icon:hover{background:var(--theme-bg-primary);border-color:var(--theme-border-hover)}body.dark-mode .btn-icon.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}body.dark-mode .enhanced-input{background:var(--theme-bg-primary);color:var(--theme-text-primary);border:1px solid var(--theme-border)}body.dark-mode .enhanced-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #4a9eff33}body.dark-mode .enhanced-input::placeholder{color:var(--theme-text-muted)}body.dark-mode .enhanced-tooltip{background:var(--theme-bg-primary);color:var(--theme-text-primary);border:1px solid var(--theme-border);box-shadow:0 4px 12px var(--theme-shadow-hover)}body.dark-mode .enhanced-tooltip:after{border-top-color:var(--theme-bg-primary)}body.dark-mode .status-indicator.completed{background:var(--color-success)}body.dark-mode .status-indicator.in-progress{background:var(--color-warning)}body.dark-mode .status-indicator.pending{background:var(--theme-text-muted)}body.dark-mode .accordion-section{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .accordion-header{background:var(--theme-bg-primary);color:var(--theme-text-primary);border-bottom:1px solid var(--theme-border)}body.dark-mode .accordion-header:hover{background:var(--theme-bg-secondary)}body.dark-mode .accordion-content{background:var(--theme-bg-secondary);color:var(--theme-text-secondary)}}@layer components{:root{--floating-tab-width: 280px;--floating-tab-height: 60px;--floating-tab-protrusion: 90px;--container-padding: 20px;--font-scale: 1}@media (width <= 768px){:root{--floating-tab-width: 240px;--floating-tab-height: 56px;--floating-tab-protrusion: 80px;--container-padding: 16px}}@media (width <= 480px){:root{--floating-tab-width: 200px;--floating-tab-height: 52px;--floating-tab-protrusion: 70px;--container-padding: 14px}}.floating-action-tab-link,.floating-surprise-tab-link,.floating-tour-tab-link{position:fixed;text-decoration:none;color:inherit;display:block;transition:all .3s cubic-bezier(.4,0,.2,1);pointer-events:none;max-width:none!important}.floating-action-tab-link{z-index:1000}.floating-surprise-tab-link{z-index:999}.floating-tour-tab-link{z-index:1001}.modal-backdrop~.floating-action-tab-link,.modal-backdrop~.floating-surprise-tab-link,.modal-backdrop~.floating-tour-tab-link{z-index:998}.floating-tab-link{position:fixed;top:50%;right:0;transform:translateY(-50%);z-index:1000;text-decoration:none;color:inherit;display:block;transition:all .3s cubic-bezier(.4,0,.2,1);width:var(--floating-tab-width, 280px);pointer-events:none}.floating-action-tab{position:relative;background:linear-gradient(135deg,#ff6b6b,#ee5a52);border-radius:8px 0 0 8px;box-shadow:0 4px 20px #ee5a524d,0 2px 8px #0000001a;overflow:hidden;transform:translate(calc(100% - var(--floating-tab-protrusion, 90px)));transition:all .4s cubic-bezier(.4,0,.2,1);min-width:var(--floating-tab-width, 280px);height:var(--floating-tab-height, 60px);cursor:pointer;user-select:none;backdrop-filter:blur(10px);border:1px solid rgb(255 255 255 / 10%);border-right:none;pointer-events:auto}.floating-action-tab:hover{box-shadow:0 8px 30px #ee5a5266,0 4px 12px #00000026}.floating-action-tab.expanded{transform:translate(0)}.floating-action-tab.component-style{position:fixed;bottom:2rem;right:2rem;background:var(--color-primary);color:var(--color-white);border:none;padding:1rem 1.5rem;font-size:1rem;font-weight:600;display:flex;align-items:center;gap:.75rem;white-space:nowrap;overflow:hidden;min-width:60px;height:60px;justify-content:center;-webkit-tap-highlight-color:transparent;transform:none;border-radius:50px}.floating-action-tab.component-style:hover{background:var(--color-primary-dark);transform:translateY(-2px);box-shadow:0 8px 25px #0003,0 4px 10px #00000026}.floating-action-tab.component-style:active{transform:translateY(0);box-shadow:0 2px 8px #0003,0 1px 4px #00000026}.floating-action-tab.component-style:focus-visible{outline:2px solid var(--color-white);outline-offset:2px}.floating-tab-content{display:flex;align-items:center;padding:0 var(--container-padding, 20px);height:100%;position:relative;z-index:2}.floating-tab-icon{flex-shrink:0;width:24px;height:24px;margin-right:16px;display:flex;align-items:center;justify-content:center}.heart-icon{width:24px;height:24px;color:#fffffff2;filter:drop-shadow(0 1px 2px rgb(0 0 0 / 10%));transition:all .3s ease}.floating-action-tab:hover .heart-icon{transform:scale(1.1);color:#fff}.floating-tab-text{flex:1;display:flex;flex-direction:column;justify-content:center;margin-right:12px;opacity:0;transform:translate(20px);transition:all .3s cubic-bezier(.4,0,.2,1)}.floating-action-tab.expanded .floating-tab-text{opacity:1;transform:translate(0)}.tab-title{font-size:calc(14px * var(--font-scale, 1));font-weight:600;color:#fff;line-height:1.2;margin-bottom:2px;text-shadow:0 1px 2px rgb(0 0 0 / 10%)}.tab-subtitle{font-size:calc(11px * var(--font-scale, 1));color:#ffffffd9;line-height:1.2;font-weight:400}.floating-tab-arrow{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;opacity:0;transform:translate(10px);transition:all .3s cubic-bezier(.4,0,.2,1)}.floating-action-tab.expanded .floating-tab-arrow{opacity:1;transform:translate(0)}.arrow-icon{width:16px;height:16px;color:#ffffffe5;transition:transform .2s ease}.floating-action-tab:hover .arrow-icon{transform:translate(2px)}.floating-action-tab.component-style .icon{width:24px;height:24px;flex-shrink:0;transition:transform .3s ease}.floating-action-tab.component-style .text{opacity:0;transform:translate(-10px);transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:600;white-space:nowrap}.floating-action-tab.component-style.expanded{padding:1rem 1.5rem 1rem 1.25rem;border-radius:30px;min-width:auto;width:auto}.floating-action-tab.component-style.expanded .text{opacity:1;transform:translate(0)}.floating-action-tab.component-style.expanded .icon{transform:scale(1.1)}.floating-tab-ripple{position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);opacity:0;pointer-events:none;transition:all .6s cubic-bezier(.4,0,.2,1)}.floating-tab-ripple.active{width:200px;height:200px;opacity:1;animation:ripple-fade .6s ease-out}.floating-action-tab.component-style:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#fff3;border-radius:50%;transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease;pointer-events:none}.floating-action-tab.component-style.ripple:before{width:300px;height:300px}@keyframes ripple-fade{0%{opacity:.6;transform:translate(-50%,-50%) scale(0)}to{opacity:0;transform:translate(-50%,-50%) scale(1)}}.floating-surprise-tab-link{position:fixed;top:35%;right:0;transform:translateY(-50%);z-index:999;width:var(--floating-tab-width, 280px);pointer-events:none}.floating-surprise-tab{position:relative;background:linear-gradient(135deg,#ff9500,#ff7f00);border-radius:8px 0 0 8px;box-shadow:0 4px 20px #ff95004d,0 2px 8px #0000001a;overflow:hidden;transform:translate(calc(100% - var(--floating-tab-protrusion, 90px)));transition:all .4s cubic-bezier(.4,0,.2,1);min-width:var(--floating-tab-width, 280px);height:var(--floating-tab-height, 60px);cursor:pointer;user-select:none;backdrop-filter:blur(10px);border:1px solid rgb(255 255 255 / 10%);border-right:none;pointer-events:auto}.floating-surprise-tab:hover{box-shadow:0 8px 30px #ff950066,0 4px 12px #00000026;background:linear-gradient(135deg,#ff9500,#ff6b00)}.floating-surprise-tab.expanded{transform:translate(0)}.floating-surprise-tab:active{transform:translate(0) scale(.98)}.floating-surprise-tab-content{display:flex;align-items:center;padding:0 var(--container-padding, 20px);height:100%;position:relative;z-index:2}.floating-surprise-tab-icon{flex-shrink:0;width:28px;height:28px;margin-right:16px;display:flex;align-items:center;justify-content:center;font-size:20px;animation:bounce 2s infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-6px)}60%{transform:translateY(-3px)}}.floating-surprise-tab:hover .floating-surprise-tab-icon{animation:none;transform:scale(1.1) rotate(10deg)}.floating-surprise-tab-text{flex:1;display:flex;flex-direction:column;justify-content:center;color:#fff;line-height:1.2}.surprise-tab-title{font-weight:600;font-size:calc(16px * var(--font-scale, 1));margin:0;text-shadow:0 1px 2px rgb(0 0 0 / 10%);letter-spacing:.5px}.surprise-tab-subtitle{font-size:calc(12px * var(--font-scale, 1));opacity:.9;margin:2px 0 0;text-shadow:0 1px 2px rgb(0 0 0 / 10%)}.floating-surprise-tab-arrow{flex-shrink:0;width:20px;height:20px;margin-left:12px;transition:transform .3s ease}.floating-surprise-tab:hover .floating-surprise-tab-arrow{transform:translate(4px)}.surprise-arrow-icon{width:100%;height:100%;color:#fffc;filter:drop-shadow(0 1px 2px rgb(0 0 0 / 10%))}.floating-surprise-tab-ripple{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle,rgb(255 255 255 / 30%) 0%,transparent 70%);border-radius:inherit;transform:scale(0);opacity:0;pointer-events:none;transition:all .6s cubic-bezier(.4,0,.2,1)}.floating-surprise-tab.ripple-active .floating-surprise-tab-ripple{transform:scale(2);opacity:1}.floating-tour-tab-link{position:fixed;top:22%;right:0;transform:translateY(-50%);z-index:1001;width:var(--floating-tab-width, 280px);pointer-events:none}.floating-tour-tab{position:relative;background:linear-gradient(135deg,#6c5ce7,#a29bfe);border-radius:8px 0 0 8px;box-shadow:0 4px 20px #6c5ce74d,0 2px 8px #0000001a;overflow:hidden;transform:translate(calc(100% - var(--floating-tab-protrusion, 90px)));transition:all .4s cubic-bezier(.4,0,.2,1);min-width:var(--floating-tab-width, 280px);height:var(--floating-tab-height, 60px);cursor:pointer;user-select:none;backdrop-filter:blur(10px);border:1px solid rgb(255 255 255 / 10%);border-right:none;pointer-events:auto}.floating-tour-tab:hover{box-shadow:0 8px 30px #6c5ce766,0 4px 12px #00000026}.floating-tour-tab.expanded{transform:translate(0)}.floating-tour-tab-content{display:flex;align-items:center;padding:0 var(--container-padding, 20px);height:100%;position:relative;z-index:2}.floating-tour-tab-icon{flex-shrink:0;width:28px;height:28px;margin-right:16px;display:flex;align-items:center;justify-content:center;font-size:calc(20px * var(--font-scale, 1));animation:learning-pulse 3.5s ease-in-out infinite alternate}@keyframes learning-pulse{0%,to{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.05);filter:brightness(1.1)}}.floating-tour-tab-text{flex:1;min-width:0;color:#fff}.tour-tab-title{display:block;font-size:calc(16px * var(--font-scale, 1));font-weight:600;line-height:1.2;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tour-tab-subtitle{display:block;font-size:calc(13px * var(--font-scale, 1));opacity:.9;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.floating-tour-tab-arrow{flex-shrink:0;width:24px;height:24px;margin-left:12px;display:flex;align-items:center;justify-content:center;opacity:.8;transition:all .2s ease}.tour-arrow-icon{width:18px;height:18px;transition:transform .2s ease}.floating-tour-tab:hover .tour-arrow-icon{transform:translate(2px)}.floating-tour-tab-ripple{position:absolute;border-radius:50%;background:#fff9;pointer-events:none;transform:scale(0);z-index:1;width:20px;height:20px;margin-left:-10px;margin-top:-10px}@keyframes tour-ripple{0%{transform:scale(0);opacity:1}to{transform:scale(4);opacity:0}}.floating-tour-tab.tour-clicked{animation:tour-feedback-pulse .6s ease-out}.floating-tour-tab.tour-unavailable{animation:tour-shake .5s ease-in-out}@keyframes tour-feedback-pulse{0%,to{transform:translate(calc(100% - var(--floating-tab-protrusion, 90px)))}50%{transform:translate(calc(100% - var(--floating-tab-protrusion, 90px))) scale(1.02)}}@keyframes tour-shake{0%,to{transform:translate(calc(100% - var(--floating-tab-protrusion, 90px)))}25%{transform:translate(calc(100% - var(--floating-tab-protrusion, 90px) + 5px))}75%{transform:translate(calc(100% - var(--floating-tab-protrusion, 90px) - 5px))}}.floating-tour-tab.expanded.tour-clicked{animation:tour-feedback-pulse-expanded .6s ease-out}.floating-tour-tab.expanded.tour-unavailable{animation:tour-shake-expanded .5s ease-in-out}@keyframes tour-feedback-pulse-expanded{0%,to{transform:translate(0) scale(1)}50%{transform:translate(0) scale(1.02)}}@keyframes tour-shake-expanded{0%,to{transform:translate(0)}25%{transform:translate(5px)}75%{transform:translate(-5px)}}.floating-action-tab.loading{pointer-events:none;opacity:.7}.floating-action-tab.loading .icon{animation:spin 1s linear infinite}.floating-action-tab.success{background:var(--color-green-500);animation:success-pulse .6s ease-out}.floating-action-tab.error{background:var(--color-red-500);animation:error-shake .6s ease-out}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes success-pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes error-shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@media (width <= 768px){.floating-action-tab.component-style{bottom:1.5rem;right:1.5rem;padding:.875rem 1.25rem;min-width:56px;height:56px;font-size:.9rem}.floating-action-tab.component-style .icon{width:22px;height:22px}.floating-action-tab.component-style.expanded{padding:.875rem 1.25rem .875rem 1rem}.floating-tour-tab-icon,.floating-surprise-tab-icon{width:calc(24px * var(--font-scale, 1));height:calc(24px * var(--font-scale, 1));margin-right:calc(12px * var(--font-scale, 1))}.floating-action-tab.auto-collapse{animation:mobile-auto-collapse 3s ease-in-out forwards}}@keyframes mobile-auto-collapse{0%,70%{transform:translateY(0)}to{transform:translateY(0)}}.floating-tab-link:focus,.floating-surprise-tab-link:focus,.floating-tour-tab-link:focus{outline:none}.floating-tab-link:focus .floating-action-tab{box-shadow:0 8px 30px #ee5a5266,0 4px 12px #00000026,0 0 0 3px #ffffff4d}.floating-surprise-tab-link:focus-visible,.floating-tour-tab-link:focus-visible{outline:3px solid var(--color-primary, #007cba);outline-offset:2px}.floating-tour-tab-link:focus .floating-tour-tab{box-shadow:0 8px 30px #6c5ce766,0 4px 12px #00000026,0 0 0 3px #6c5ce77f}body.large-click-targets .floating-action-tab.component-style{min-width:70px;height:70px;padding:1.25rem 1.75rem;font-size:1.1rem}body.large-click-targets .floating-action-tab.component-style .icon{width:28px;height:28px}body.large-click-targets .floating-action-tab.component-style.expanded{padding:1.25rem 1.75rem 1.25rem 1.5rem}.floating-action-tab .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.floating-action-tab[aria-expanded=true] .sr-only:after{content:" (expanded)"}.floating-action-tab[aria-expanded=false] .sr-only:after{content:" (collapsed)"}@media (prefers-reduced-motion: reduce){.floating-action-tab,.floating-action-tab .text,.floating-action-tab .icon,.floating-action-tab:before,.floating-surprise-tab,.floating-surprise-tab-arrow,.floating-surprise-tab-ripple,.floating-surprise-tab-icon,.floating-tour-tab,.floating-tour-tab-arrow,.floating-tour-tab-icon,.floating-tab-text,.floating-tab-arrow,.floating-tab-ripple,.heart-icon,.arrow-icon{transition:none!important;animation:none!important}.floating-action-tab:hover{transform:translateY(0)}.floating-action-tab.expanded .icon{transform:none}}@media (prefers-contrast: high){.floating-action-tab,.floating-surprise-tab,.floating-tour-tab{border:2px solid #fff}.tab-title,.tab-subtitle,.heart-icon,.arrow-icon,.surprise-tab-title,.surprise-tab-subtitle,.tour-tab-title,.tour-tab-subtitle{color:#fff;text-shadow:none}.floating-tab-ripple,.floating-surprise-tab-ripple,.floating-tour-tab-ripple{background:#ffffff7f}.floating-action-tab.component-style{border:2px solid var(--color-white);background:var(--color-primary)}.floating-action-tab.component-style:hover{border-color:var(--color-primary);background:var(--color-white);color:var(--color-primary)}.floating-action-tab.component-style:focus-visible{outline:3px solid var(--color-secondary);outline-offset:2px}}body.dark-mode .floating-action-tab{background:linear-gradient(135deg,var(--theme-accent) 0%,var(--theme-accent-dark) 100%);border-color:var(--theme-border);box-shadow:0 4px 20px var(--theme-shadow),0 2px 8px #0003}body.dark-mode .floating-action-tab:hover{box-shadow:0 8px 30px var(--theme-shadow-heavy),0 4px 12px #00000040}body.dark-mode .heart-icon,body.dark-mode .floating-action-tab:hover .heart-icon,body.dark-mode .tab-title{color:var(--theme-text-on-accent)}body.dark-mode .tab-subtitle{color:#ffffffd9}body.dark-mode .arrow-icon{color:var(--theme-text-on-accent)}body.dark-mode .floating-tab-ripple,body.dark-mode .floating-action-tab.component-style:before{background:#ffffff26}body.dark-mode .floating-tab-link:focus .floating-action-tab{box-shadow:0 8px 30px var(--theme-shadow-heavy),0 4px 12px #00000040,0 0 0 3px var(--theme-accent-light)}body.dark-mode .floating-action-tab.component-style{background:var(--color-primary);color:var(--color-white);box-shadow:0 4px 12px #00000040,0 2px 6px #0003}body.dark-mode .floating-action-tab.component-style:hover{background:var(--color-primary-light);box-shadow:0 8px 25px #0000004d,0 4px 10px #00000040}body.dark-mode .floating-action-tab.component-style .icon{color:var(--color-white)}body.dark-mode .floating-surprise-tab{background:linear-gradient(135deg,#ff9500,#ff7f00);border:1px solid rgb(255 149 0 / 30%);box-shadow:0 4px 20px #ff7f004d,0 2px 8px #0000004d}body.dark-mode .floating-surprise-tab:hover{box-shadow:0 6px 30px #ff7f0066,0 4px 12px #0006}body.dark-mode .floating-surprise-tab-content,body.dark-mode .surprise-tab-title,body.dark-mode .surprise-tab-subtitle{color:#fff}body.dark-mode .floating-surprise-tab-link:focus-visible{outline:3px solid var(--color-warning)}body.dark-mode .floating-tour-tab{background:linear-gradient(135deg,#6c5ce7,#a29bfe);border:1px solid rgb(108 92 231 / 30%);box-shadow:0 4px 20px #6c5ce74d,0 2px 8px #0000004d}body.dark-mode .floating-tour-tab:hover{box-shadow:0 6px 30px #6c5ce766,0 4px 12px #0006}body.dark-mode .floating-tour-tab-content,body.dark-mode .tour-tab-title,body.dark-mode .tour-tab-subtitle{color:#fff}body.dark-mode .floating-tour-tab-link:focus{outline:3px solid var(--color-primary)}body.dark-mode .floating-tour-tab.tour-clicked{background:linear-gradient(135deg,#74b9ff,#0984e3)}body.dark-mode .floating-tour-tab.tour-unavailable{background:linear-gradient(135deg,#636e72,#2d3436)}@media print{.floating-tab-link,.floating-action-tab-link,.floating-surprise-tab-link,.floating-tour-tab-link{display:none!important}}}@layer components{:root{--radar-chart-size: 400px;--radar-chart-default-size: 400px;--radar-point-color-0: #ff4757;--radar-point-color-2: #ff6b35;--radar-point-color-2-5: #ffa726;--radar-point-color-3: #ffeb3b;--radar-point-color-4: #8bc34a;--radar-point-color-5: #4caf50;--radar-grid-color-0: rgba(0, 0, 0, .1);--radar-grid-color-1: rgba(0, 0, 0, .15);--radar-grid-color-2: rgba(0, 0, 0, .2);--radar-grid-color-default: rgba(0, 0, 0, .1);--radar-max-score: 5;--radar-min-score: 0;--radar-neutral-score: 3;--radar-positive-threshold: 4;--radar-mobile-breakpoint: 768px;--radar-tablet-breakpoint: 1024px;--radar-desktop-breakpoint: 1200px}.radar-chart-container.theme-light,.radar-chart-scenario.theme-light{background-color:var(--radar-theme-light-background, #ffffff);border-color:var(--radar-theme-light-border, #e2e8f0);color:var(--radar-theme-light-text, #333333)}.radar-chart-container.theme-dark,.radar-chart-scenario.theme-dark{background-color:var(--radar-theme-dark-background, #1a1a1a);border-color:var(--radar-theme-dark-border, #444444);color:var(--radar-theme-dark-text, #ffffff)}.radar-chart-container.theme-high-contrast,.radar-chart-scenario.theme-high-contrast{background-color:var(--radar-theme-high-contrast-background, #000000);border-color:var(--radar-theme-high-contrast-border, #ffffff);color:var(--radar-theme-high-contrast-text, #ffffff)}.score-fill{background-color:var(--radar-point-color-3)}.score-fill[data-score="0"],.score-fill[data-score="1"]{background-color:var(--radar-point-color-0)}.score-fill[data-score="2"]{background-color:var(--radar-point-color-2)}.score-fill[data-score="2.5"]{background-color:var(--radar-point-color-2-5)}.score-fill[data-score="3"]{background-color:var(--radar-point-color-3)}.score-fill[data-score="4"]{background-color:var(--radar-point-color-4)}.score-fill[data-score="5"]{background-color:var(--radar-point-color-5)}@media (max-width: var(--radar-mobile-breakpoint, 768px)){.radar-chart-container{padding:1rem;margin:1rem 0}}@media (max-width: var(--radar-tablet-breakpoint, 1024px)){.radar-chart-demo-container{max-width:90%}.radar-chart-scenario{padding:1.25rem}}.hero-radar-container{position:relative;width:100%;max-width:650px;margin:0 auto var(--spacing-lg, 2rem);padding:var(--spacing-md, 1rem);background:#fffc;border-radius:16px;box-shadow:0 4px 12px #00000014}.hero-demo-controls{position:relative;margin:var(--spacing-lg, 2rem) 0}.demo-controls-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-sm, 1rem);max-width:600px;margin:0 auto;position:relative}.hero-demo-controls .demo-btn{padding:.75rem 1.5rem;border-radius:8px;background:linear-gradient(135deg,#4f46e5,#6366f1);color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .3s ease;box-shadow:0 2px 8px #4f46e540;position:relative;overflow:hidden;border:1px solid rgb(255 255 255 / 10%);text-align:center}.hero-demo-controls .demo-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgb(255 255 255 / 15%),transparent);transition:left .5s ease}.hero-demo-controls .demo-btn:hover{transform:translateY(-1px);box-shadow:0 4px 16px #4f46e559;background:linear-gradient(135deg,#4338ca,#5b21b6)}.hero-demo-controls .demo-btn:hover:before{left:100%}.hero-demo-controls .demo-btn:active{transform:translateY(0);box-shadow:0 2px 8px #4f46e540}.hero-demo-controls .demo-btn.active{background:linear-gradient(135deg,#1e40af,#3730a3);box-shadow:0 4px 16px #1e40af66;transform:translateY(-1px);border:2px solid rgb(255 255 255 / 30%)}.hero-demo-controls .demo-btn.active:before{background:linear-gradient(90deg,transparent,rgb(255 255 255 / 25%),transparent)}.hero-demo-controls .demo-btn.active:hover{background:linear-gradient(135deg,#1e3a8a,#312e81);box-shadow:0 6px 20px #1e40af73}.demo-feedback-popover{position:absolute;bottom:calc(100% + 15px);left:0;right:0;background:var(--popover-background, rgba(0, 0, 0, .9));color:var(--popover-color, #ffffff);padding:var(--spacing-sm, 1rem);border-radius:var(--border-radius-md, 8px);max-width:300px;margin:0 auto;opacity:0;visibility:hidden;pointer-events:none;transition:all var(--transition-duration, .3s) var(--transition-easing, ease);z-index:1000;text-align:center;font-size:var(--font-size-sm, .875rem)}.demo-feedback-popover.visible{opacity:1;visibility:visible;pointer-events:auto}.demo-feedback-popover .popover-content h5{margin:0 0 .5rem;font-size:var(--font-size-base, 1rem);font-weight:600}.demo-feedback-popover .popover-content p{margin:0;line-height:1.5}@media (max-width: 480px){.demo-controls-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.hero-demo-controls .demo-btn{padding:.6rem 1rem;font-size:.8rem}}@media (min-width: 481px) and (max-width: 767px){.demo-controls-grid{grid-template-columns:repeat(4,1fr);gap:.75rem}}@media (min-width: 768px){.demo-controls-grid{grid-template-columns:repeat(4,1fr);gap:var(--spacing-sm, 1rem)}}.demo-radar-container{max-width:500px;margin:0 auto 2rem;background:linear-gradient(135deg,#fff,#f8fafc);border-radius:16px;padding:1.5rem;box-shadow:0 4px 12px #00000014,0 1px 3px #0000000d;border:1px solid rgb(226 232 240 / 80%);transition:all .3s ease}.demo-radar-container:hover{box-shadow:0 8px 20px #0000001f,0 2px 6px #00000014;transform:translateY(-2px);border-color:#9ca3af99}.radar-chart-demo-container{position:relative;width:100%;max-width:700px;margin:0 auto;padding:1rem;background:transparent;border-radius:0;box-shadow:-4px 4px 8px #0000001f;transition:none;border:none}.radar-chart-demo-container canvas{max-width:100%;height:auto;display:block;margin:0;border-radius:0;background:transparent;image-rendering:auto;image-rendering:-moz-crisp-edges;image-rendering:-webkit-optimize-contrast}@media (width <= 768px){.radar-chart-demo-container{padding:.5rem;max-width:100%}.radar-chart-demo-container canvas{max-width:100%;width:100%;height:auto}}.radar-chart-container{position:relative;width:100%;max-width:500px;margin:0 auto;padding:2rem;background:linear-gradient(135deg,#fff,#f8fafc);border-radius:16px;box-shadow:0 4px 12px #00000014,0 1px 3px #0000000d;transition:all .3s ease;border:1px solid rgb(226 232 240 / 80%)}.scenario-radar-chart{position:relative;width:100%;max-width:450px;margin:0 auto;padding:1.5rem;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-radius:12px;box-shadow:0 2px 8px #0000000f,0 1px 3px #0000000a;border:1px solid var(--color-gray-200);transition:all .2s ease}.scenario-radar-chart:hover{box-shadow:0 4px 16px #0000001a,0 2px 8px #0000000f;border-color:var(--color-primary)}.scenario-radar-chart.animating{transition:all .3s ease;transform:scale(1.02);box-shadow:0 0 20px #007bff80}body.dark-mode .scenario-radar-chart.animating,body.theme-dark .scenario-radar-chart.animating{box-shadow:0 0 20px #64b4ff66}.scenario-modal .radar-chart-container.animating,.scenario-modal #scenario-radar-chart.animating,.scenario-modal .scenario-radar-chart.animating{transition:all .3s ease!important;transform:scale(1.02)!important;box-shadow:0 0 20px #007bff80!important;background:#007bff0d!important}body.dark-mode .scenario-modal .radar-chart-container.animating,body.dark-mode .scenario-modal #scenario-radar-chart.animating,body.dark-mode .scenario-modal .scenario-radar-chart.animating,body.theme-dark .scenario-modal .radar-chart-container.animating,body.theme-dark .scenario-modal #scenario-radar-chart.animating,body.theme-dark .scenario-modal .scenario-radar-chart.animating{box-shadow:0 0 20px #64b4ff66!important;background:#64b4ff0d!important}.scenario-radar-chart canvas{border-radius:8px;background:#fff}.test-radar-chart{position:relative;width:100%;max-width:400px;margin:0 auto;padding:1rem;background:#f1f5f9;border-radius:8px;border:2px dashed #cbd5e1;box-shadow:0 1px 3px #0000000d}.test-radar-chart:before{content:"TEST CHART";position:absolute;top:4px;right:8px;font-size:10px;font-weight:700;color:#64748b;opacity:.6;letter-spacing:1px}.test-radar-chart canvas{border-radius:4px;background:#fff;border:1px solid #e2e8f0}.radar-chart-container{transition:all .3s ease;border:1px solid rgb(226 232 240 / 80%)}.radar-chart-container:hover{box-shadow:0 8px 20px #0000001f,0 2px 6px #00000014;transform:translateY(-2px);border-color:#9ca3af99}.radar-chart-container canvas{max-width:100%;height:auto;display:block;margin:0 auto;border-radius:12px;background:#fff;box-shadow:4px 4px 8px #0000001f;image-rendering:auto;image-rendering:-moz-crisp-edges;image-rendering:-webkit-optimize-contrast}canvas[role=img]{position:relative;z-index:1}.scenario-modal .chartjs-tooltip,.scenario-modal-dialog .chartjs-tooltip{z-index:1060!important}.chartjs-tooltip{backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;box-shadow:0 4px 12px #00000026!important;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif!important}.progress-ring-tooltip{display:block!important;z-index:1200!important;position:fixed!important}.scenarios-grid[style*="display: none"] .radar-chart-container,.scenarios-grid[style*="display: none"] .radar-chart-scenario,.view-content[style*="display: none"] .radar-chart-container,.view-content[style*="display: none"] .radar-chart-scenario{display:block!important;visibility:visible!important;position:relative!important}.radar-chart-fallback{padding:1.5rem;text-align:center;background:var(--card-bg, #fff);border-radius:12px;border:2px dashed var(--border-color, #e0e0e0)}.radar-chart-fallback h4{margin:0 0 1.5rem;color:var(--text-primary, #333);font-size:1.2rem;font-weight:600}.fallback-scores{display:flex;flex-direction:column;gap:1rem;max-width:400px;margin:0 auto}.score-item{display:flex;align-items:center;gap:1rem;padding:.75rem;background:var(--bg-secondary, #f8f9fa);border-radius:8px;transition:background-color .2s ease}.score-item:hover{background:var(--bg-hover, #e9ecef)}.axis-label{font-weight:500;color:var(--text-primary, #333);min-width:100px;text-align:left;font-size:.9rem}.score-value{font-weight:600;color:var(--accent-color, #007bff);min-width:40px;text-align:center;font-size:.9rem}.score-bar{flex:1;height:8px;background:var(--border-color, #e0e0e0);border-radius:4px;overflow:hidden;position:relative}.score-fill{height:100%;background:linear-gradient(90deg,var(--danger-color, #dc3545) 0%,var(--warning-color, #ffc107) 50%,var(--success-color, #28a745) 100%);border-radius:4px;transition:width .3s ease;min-width:2px}.radar-chart-scenario{top:2rem;background:linear-gradient(135deg,#667eea1a,#764ba214,#f0abfc1a);border:2px solid transparent;border-radius:24px;padding:2rem;margin-bottom:1rem;backdrop-filter:blur(20px);box-shadow:0 25px 50px -12px #667eea40,0 8px 32px #0000001f,inset 0 1px #fff9;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:visible}.radar-chart-scenario:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#667eea1a,#764ba20d);border-radius:24px;z-index:-1}.radar-chart-scenario:after{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#667eea,#764ba2,#f093fb,#f5576c,#4facfe);border-radius:24px 24px 0 0}.radar-chart-scenario:hover{box-shadow:0 35px 70px -12px #667eea66,0 12px 48px #0000002e,inset 0 1px #fffc;transform:translateY(-2px) scale(1.01);border-color:#667eea4d}.radar-chart-scenario .radar-title{font-size:1.25rem;font-weight:800;margin-bottom:.75rem;text-align:center;color:#1a202c;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.025em;text-shadow:0 2px 4px rgb(0 0 0 / 10%)}.radar-chart-scenario .radar-subtitle{font-size:.95rem;color:#4a5568;text-align:center;margin-bottom:1.5rem;opacity:.9;font-weight:500}.radar-chart-results{background:linear-gradient(135deg,var(--card-bg, #fff) 0%,rgb(248 250 252 / 90%) 100%);border-radius:20px;padding:2.5rem;margin:2rem 0;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;position:relative;overflow:visible}.radar-chart-results:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2,#f093fb,#f5576c,#4facfe)}.radar-chart-results .radar-title{font-size:1.75rem;font-weight:800;margin-bottom:.75rem;text-align:center;color:var(--text-primary, #1a202c);background:linear-gradient(135deg,#667eea,#764ba2);-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.025em}.radar-chart-results .radar-subtitle{font-size:1.1rem;color:var(--text-secondary, #4a5568);text-align:center;margin-bottom:2.5rem;font-weight:500}.radar-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color, #e0e0e0)}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--text-secondary, #666)}.legend-color{width:12px;height:12px;border-radius:2px}@media (width <= 768px){.radar-chart-container{padding:.75rem;margin:.5rem}.scenario-radar-chart{padding:1rem;max-width:100%;margin:.5rem}.test-radar-chart{padding:.75rem;max-width:100%;margin:.5rem}.radar-chart-scenario{position:static;margin:1rem 0}.radar-chart-results{padding:1.5rem;margin:1rem 0}.fallback-scores{gap:.75rem}.score-item{padding:.5rem;gap:.75rem}.axis-label{min-width:80px;font-size:.8rem}.score-value{min-width:35px;font-size:.8rem}.radar-chart-demo-container{max-width:100%;padding:1rem}}@media (width <= 480px){.radar-chart-container{padding:.5rem}.scenario-radar-chart{padding:.75rem;border-radius:8px}.test-radar-chart{padding:.5rem;border-radius:6px}.radar-chart-results .radar-title{font-size:1.25rem}.radar-chart-scenario .radar-title{font-size:.9rem}.score-item{flex-direction:column;align-items:flex-start;gap:.5rem}.axis-label,.score-value{min-width:auto}.score-bar{width:100%}.radar-chart-demo-container{padding:.5rem}}.dark-mode .radar-chart-scenario,.dark-mode .radar-chart-results{background:var(--card-bg-dark, #2d3748);border-color:var(--border-color-dark, #4a5568)}.dark-mode .radar-chart-container{background:linear-gradient(135deg,#fff,#f8fafc)!important;border-color:#e2e8f0cc!important}.dark-mode .radar-chart-fallback{background:var(--card-bg-dark, #2d3748);border-color:var(--border-color-dark, #4a5568)}.dark-mode .radar-chart-fallback h4,.dark-mode .radar-title{color:var(--text-primary-dark, #f7fafc)}.dark-mode .radar-subtitle{color:var(--text-secondary-dark, #a0aec0)}.dark-mode .score-item{background:var(--bg-secondary-dark, #4a5568)}.dark-mode .score-item:hover{background:var(--bg-hover-dark, #2d3748)}.dark-mode .axis-label{color:var(--text-primary-dark, #f7fafc)}.dark-mode .score-bar{background:var(--border-color-dark, #4a5568)}.radar-updating{opacity:.8;transition:opacity .3s ease;position:relative}.radar-updating:after{display:none}@keyframes radar-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.radar-updated{opacity:1;animation:radar-pulse .6s ease-out}@keyframes radar-pulse{0%{transform:scale(1)}50%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes heroRadarDemoEnter{0%{opacity:0;transform:translateY(50px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes heroRadarElementEnter{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes heroRadarDemoFallback{0%{opacity:0}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes heroRadarDemoVisible{0%{opacity:1}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes heroRadarElementVisible{0%{opacity:1}to{opacity:1;transform:translateY(0)}}.radar-chart-container:before{display:none}.radar-action-button{position:absolute;bottom:1rem;right:1rem;width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;cursor:pointer;box-shadow:0 4px 12px #667eea66;transition:all .3s ease;display:flex;align-items:center;justify-content:center;font-size:1.2rem}.radar-action-button:hover{transform:scale(1.1);box-shadow:0 6px 20px #667eea99}.radar-action-button:active{transform:scale(.95)}.radar-chart-container:focus-within{outline:2px solid var(--focus-color, #007bff);outline-offset:2px}.score-item:focus-within{outline:1px solid var(--focus-color, #007bff);outline-offset:1px}@media print{.radar-chart-container,.scenario-radar,.results-radar{background:#fff!important;border:1px solid #000!important;box-shadow:none!important}.radar-title,.axis-label{color:#000!important}.score-fill{background:#666!important}}body.dark-mode .radar-chart-demo-container{background:transparent;box-shadow:-4px 4px 8px var(--theme-shadow)}body.dark-mode .radar-chart-container{background:linear-gradient(135deg,#2d2d2d,#3d3d3d)!important;border:1px solid #444!important;box-shadow:0 4px 12px #0006,0 1px 3px #0000004d!important}body.dark-mode .radar-chart-container:hover{box-shadow:0 8px 20px #0000007f,0 2px 6px #0006!important;border-color:#555!important}body.dark-mode .radar-chart-container canvas{background:#333;box-shadow:4px 4px 8px var(--theme-shadow)}body.dark-mode .hero-demo-controls .demo-btn{background:linear-gradient(135deg,#374151,#4b5563);color:#f9fafb;border-color:#9ca3af4d;box-shadow:0 2px 8px #0006}body.dark-mode .hero-demo-controls .demo-btn:before{background:linear-gradient(90deg,transparent,rgb(255 255 255 / 8%),transparent)}body.dark-mode .hero-demo-controls .demo-btn:hover{background:linear-gradient(135deg,#4b5563,#6b7280);box-shadow:0 4px 16px #0000007f;border-color:#9ca3af7f}body.dark-mode .hero-demo-controls .demo-btn.active{background:linear-gradient(135deg,#1f2937,#374151);box-shadow:0 4px 16px #0009;border-color:#fff6}body.dark-mode .hero-demo-controls .demo-btn.active:hover{background:linear-gradient(135deg,#111827,#1f2937);box-shadow:0 6px 20px #000000b3}body.dark-mode .demo-feedback-popover{background:var(--popover-background-dark, rgba(17, 24, 39, .95));color:var(--popover-color-dark, #f9fafb);border:1px solid rgb(75 85 99 / 50%);backdrop-filter:blur(12px)}body.dark-mode .demo-feedback-popover .popover-content h5{color:#f3f4f6}body.dark-mode .demo-feedback-popover .popover-content p{color:#d1d5db}body.dark-mode .demo-radar-container{background:linear-gradient(135deg,#2d2d2d,#3d3d3d);border-color:#444;box-shadow:0 4px 12px #0006,0 1px 3px #0000004d}body.dark-mode .demo-radar-container:hover{box-shadow:0 8px 20px #0000007f,0 2px 6px #0006;border-color:#555}body.dark-mode .radar-chart-fallback{background:var(--theme-bg-secondary);border-color:var(--theme-border)}body.dark-mode .radar-chart-fallback h4{color:var(--theme-text-primary)}body.dark-mode .score-item{background:var(--theme-bg-tertiary)}body.dark-mode .score-item:hover{background:var(--theme-bg-quaternary)}body.dark-mode .axis-label{color:var(--theme-text-primary)}body.dark-mode .score-value{color:var(--theme-accent)}body.dark-mode .score-bar{background:var(--theme-bg-quaternary)}body.dark-mode .score-fill{background:linear-gradient(90deg,var(--theme-accent),var(--theme-accent-light))}body.dark-mode .radar-chart-scenario{background:linear-gradient(135deg,var(--theme-bg-secondary) 0%,var(--theme-bg-tertiary) 100%);border-color:var(--theme-border);box-shadow:0 8px 25px var(--theme-shadow)}body.dark-mode .radar-chart-scenario:hover{box-shadow:0 12px 30px var(--theme-shadow-heavy);border-color:var(--theme-accent)}body.dark-mode .radar-chart-scenario .radar-title{color:var(--theme-text-primary);background:linear-gradient(135deg,var(--theme-accent) 0%,var(--theme-accent-dark) 100%);-webkit-text-fill-color:transparent;background-clip:text}body.dark-mode .radar-chart-scenario .radar-subtitle{color:var(--theme-text-secondary)}body.dark-mode .radar-chart-results{background:linear-gradient(135deg,var(--theme-bg-secondary) 0%,var(--theme-bg-tertiary) 100%);border:1px solid var(--theme-border);box-shadow:0 10px 10px -5px var(--theme-shadow)}body.dark-mode .radar-chart-results .radar-title{color:var(--theme-text-primary);background:linear-gradient(135deg,var(--theme-accent) 0%,var(--theme-accent-dark) 100%);-webkit-text-fill-color:transparent;background-clip:text}body.dark-mode .radar-chart-results .radar-subtitle{color:var(--theme-text-secondary)}body.dark-mode .radar-legend{border-color:var(--theme-border)}body.dark-mode .legend-item{color:var(--theme-text-secondary)}body.dark-mode .radar-action-button{background:linear-gradient(135deg,var(--theme-accent) 0%,var(--theme-accent-dark) 100%);box-shadow:0 4px 12px var(--theme-shadow);color:var(--theme-text-on-accent)}body.dark-mode .radar-action-button:hover{box-shadow:0 6px 16px var(--theme-shadow-heavy)}body.dark-mode .radar-chart-container:focus-within{outline-color:var(--theme-accent)}body.dark-mode .score-item:focus-within{outline-color:var(--theme-accent)}.scenario-modal .radar-chart-container,.scenario-modal #scenario-radar-chart{text-align:center;position:relative!important;width:400px!important;max-width:400px!important;height:400px!important;max-height:400px!important;margin:1rem auto!important;padding:0!important;background:none!important;border-radius:0!important;box-shadow:none!important;border:none!important;min-height:400px;overflow:visible!important;display:flex!important;flex-direction:column;justify-content:center;align-items:center;visibility:visible!important;z-index:auto!important;box-sizing:border-box!important;aspect-ratio:1 / 1!important}.scenario-modal canvas,.scenario-modal-dialog canvas{max-width:400px!important;width:400px!important;height:400px!important;display:block!important;margin:0 auto!important;overflow:visible!important;padding:0!important;box-sizing:border-box!important;aspect-ratio:1 / 1!important;position:relative;z-index:2;image-rendering:auto;image-rendering:-moz-crisp-edges;image-rendering:-webkit-optimize-contrast}.scenario-modal .radar-chart-container:empty:before,.scenario-modal .radar-chart-container:empty:after{content:"";display:none}.scenario-modal .chart-legend h3{font-size:1.25rem;font-weight:700;color:#1a202c;margin:0 0 1.5rem;text-align:center;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-text-fill-color:transparent;background-clip:text}.scenario-modal .chart-legend{margin-top:1.5rem}.scenario-modal .chart-legend p{display:flex;align-items:center;gap:.75rem;margin:0;padding:1rem;background:#667eea0d;border-radius:10px;font-size:.9rem;color:#4a5568;border:1px solid rgb(102 126 234 / 10%)}.scenario-modal canvas[role=img]+div[style*="position: absolute"],.scenario-modal-dialog canvas[role=img]+div[style*="position: absolute"]{z-index:1060!important;position:fixed!important}.scenario-modal .chart-tooltip:not(.progress-ring-tooltip),.scenario-modal-dialog .chart-tooltip:not(.progress-ring-tooltip){z-index:1060!important;position:fixed!important;pointer-events:none!important}.progress-ring-tooltip,.progress-ring-tooltip.visible,.scenario-modal .progress-ring-tooltip,.scenario-modal-dialog .progress-ring-tooltip,.scenario-modal .progress-ring-tooltip.visible,.scenario-modal-dialog .progress-ring-tooltip.visible{z-index:1200!important;position:fixed!important;pointer-events:none!important}.radar-chart-demo-container,.radar-chart-container,.radar-chart-scenario,.radar-chart-results{overflow:visible!important}[class*=chartjs-],[id*=chartjs-]{display:block!important;visibility:visible!important}[style*="display: none"] .radar-chart-demo-container,[style*="display: none"] .radar-chart-container,[style*="display: none"] .radar-chart-scenario,[style*="display: none"] .radar-chart-demo-container canvas,[style*="display: none"] .radar-chart-container canvas,[style*="display: none"] .radar-chart-scenario canvas,[style*="display: none"] canvas[id*=radar],[style*="display: none"] canvas[class*=radar]{display:block!important;visibility:visible!important;position:relative!important;z-index:auto!important}.search-container[style*="display: none"] .radar-chart-container,.scenario-controls-toolbar[style*="display: none"] .radar-chart-container,.autocomplete-dropdown[style*="display: none"] .radar-chart-container{display:block!important;visibility:visible!important}@media (prefers-contrast: high){.hero-demo-controls .demo-btn{border-width:3px;font-weight:var(--font-weight-bold, 700);background:#000;color:#fff;border-color:#fff}.hero-demo-controls .demo-btn:hover,.hero-demo-controls .demo-btn.active{background:#fff;color:#000;border-color:#000}.demo-feedback-popover{background:#000;color:#fff;border:3px solid #ffffff}}@media (prefers-reduced-motion: reduce){.hero-demo-controls .demo-btn,.demo-feedback-popover,.hero-radar-container{transition:none;animation:none}.hero-demo-controls .demo-btn:hover,.hero-demo-controls .demo-btn.active{transform:none}.hero-demo-controls .demo-btn:before{transition:none}}.hero-demo-controls .demo-btn:focus-visible{outline:3px solid var(--focus-color, #4285f4);outline-offset:2px;z-index:10}.demo-feedback-popover:focus-within{outline:2px solid var(--focus-color, #4285f4);outline-offset:2px}@media (hover: none) and (pointer: coarse){.hero-demo-controls .demo-btn{min-height:44px;font-size:1rem}.hero-demo-controls .demo-btn:hover{transform:none;background:linear-gradient(135deg,#4f46e5,#6366f1)}}}@layer base{:root{--color-white: #fff;--color-gray-50: #fafafa;--color-gray-100: #f5f5f5;--color-gray-200: #eee;--color-gray-300: #e0e0e0;--color-gray-400: #bdbdbd;--color-gray-500: #9e9e9e;--color-gray-600: #757575;--color-gray-700: #616161;--color-gray-800: #424242;--color-gray-900: #212121;--color-black: #000;--color-text-primary: #1f2937;--color-text-secondary: #6b7280;--color-text-tertiary: #9ca3af;--color-text-inverse: #fff;--color-background: #fff;--color-background-subtle: #f9fafb;--color-background-elevation-1: #f3f4f6;--color-background-elevation-2: #e5e7eb;--color-border: #d1d5db;--color-border-subtle: #e5e7eb;--color-border-focus: #3b82f6;--font-family-primary: "Segoe UI", tahoma, geneva, verdana, sans-serif;--font-family-mono: "Consolas", "Monaco", "Courier New", monospace;--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-size-4xl: 2.25rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--spacing-20: 5rem;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 5%);--shadow-base: 0 1px 3px 0 rgb(0 0 0 / 10%), 0 1px 2px 0 rgb(0 0 0 / 6%);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 10%), 0 2px 4px -1px rgb(0 0 0 / 6%);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 10%), 0 4px 6px -2px rgb(0 0 0 / 5%);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 10%), 0 10px 10px -5px rgb(0 0 0 / 4%);--radius-sm: .125rem;--radius-base: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-full: 9999px;--transition-fast: .15s ease-in-out;--transition-base: .25s ease-in-out;--transition-slow: .35s ease-in-out}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;max-width:100%}html{scroll-behavior:smooth;scroll-snap-type:none;overflow-x:hidden}body{font-family:var(--font-family-primary);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-gray-900);background-color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-snap-type:none;overflow-x:hidden;padding-top:var(--header-h, 80px);overflow-anchor:none}.skip-link{position:absolute;top:-40px;left:6px;background:var(--color-primary);color:var(--color-white);padding:var(--spacing-2) var(--spacing-4);border-radius:var(--radius-base);text-decoration:none;font-weight:var(--font-weight-medium);z-index:9999;transition:top var(--transition-fast)}.skip-link:focus{top:6px}.site-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-primary)}.btn-icon{border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);opacity:0;visibility:hidden;transform:translateY(-10px);transition:all var(--transition-base);z-index:1050;margin-top:var(--spacing-2)}@media only screen and (width <= 767px){.dropdown-arrow{transition:transform var(--transition-fast)}.nav-item-dropdown[aria-expanded=true] .dropdown-arrow{transform:rotate(180deg)}}@media only screen and (width <= 428px){.mega-menu-content{padding:var(--spacing-3) 0}.mega-menu-header{padding:var(--spacing-3) var(--spacing-3) var(--spacing-2) var(--spacing-3)}.mega-menu-header h3{font-size:var(--font-size-base)}.mega-menu-header p{font-size:var(--font-size-xs)}.mega-menu-item{padding:var(--spacing-3) var(--spacing-3);gap:var(--spacing-3)}.mega-menu-icon{font-size:1.3em;width:36px;height:36px}.mega-menu-text h4{font-size:var(--font-size-sm)}.mega-menu-text p{font-size:var(--font-size-xs);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}.btn-icon{background:none;border:1px solid var(--color-gray-300);border-radius:var(--radius-base);padding:var(--spacing-2);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;width:40px;height:40px}.btn-icon:hover,.btn-icon:focus{background-color:var(--color-gray-50);border-color:var(--color-primary)}.main-content{min-height:100vh;width:100%;max-width:100vw;overflow-x:hidden}.hero-simulation{background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);padding:calc(var(--spacing-6) * var(--font-scale, 1))}.simulation-preview{min-height:300px;display:flex;align-items:center;justify-content:center}.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-3) var(--spacing-6);border:none;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);text-decoration:none;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;min-height:44px}.btn-primary{background-color:var(--color-primary);color:var(--color-white)}.btn-primary:hover,.btn-primary:focus{background-color:var(--color-primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background-color:transparent;color:var(--color-white);border:2px solid var(--color-white)}.btn-secondary:hover,.btn-secondary:focus{background-color:var(--color-white);color:var(--color-primary)}.btn-outline{background-color:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.btn-outline:hover,.btn-outline:focus{background-color:var(--color-primary);color:var(--color-white)}.simulations-section,.educator-section,.about-section{background:#fff;color:#212121;padding:var(--spacing-20) var(--spacing-6);max-width:min(1280px,100vw);width:100%;margin:0 auto;overflow-x:hidden;box-sizing:border-box;contain:layout style}.main-section-header{display:grid;grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:var(--spacing-4);text-align:center;justify-items:center;margin-top:var(--spacing-20);margin-bottom:var(--spacing-16)}.main-content .main-section-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin-bottom:var(--spacing-4)}.main-section-description{font-size:var(--font-size-lg);color:var(--color-gray-600);max-width:600px;margin:0 auto;line-height:var(--line-height-relaxed)}@media only screen and (width <= 767px){body{padding-top:calc(var(--header-h, 80px) + 15px)!important}.simulations-section,.educator-section,.about-section{padding:var(--spacing-16) var(--spacing-4);max-width:100vw}}@media only screen and (width <= 428px){body{padding-top:calc(var(--header-h, 80px) + 10px)!important}.simulations-section,.educator-section,.about-section{padding:var(--spacing-12) var(--spacing-3);max-width:100vw}}.simulations-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:var(--spacing-8);margin-bottom:var(--spacing-12)}.card-thumbnail{position:relative;height:200px;background:var(--color-gray-100);overflow:hidden}.card-thumbnail img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-base)}.completion-badge{position:absolute;top:var(--spacing-3);right:var(--spacing-3);background:var(--color-success);color:var(--color-white);width:32px;height:32px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-bold);font-size:var(--font-size-sm)}.card-content{padding:var(--spacing-6)}.card-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin-bottom:var(--spacing-3)}.card-description{color:var(--color-gray-600);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-4)}.card-meta{display:flex;gap:var(--spacing-4);margin-bottom:var(--spacing-4)}.difficulty{padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-base);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.05em}.difficulty-beginner{background:#4caf5033;color:#2e7d32;border:1px solid #4caf50}.difficulty-intermediate{background:#fa03;color:#ef6c00;border:1px solid #ff9800}.difficulty-advanced{background:#f443;color:#c62828;border:1px solid #f44336}.duration{color:var(--color-gray-500);font-size:var(--font-size-sm)}.card-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-2);margin-bottom:var(--spacing-6)}.tag{background:var(--color-gray-200);color:var(--color-gray-800);padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-base);font-size:var(--font-size-xs);border:1px solid var(--color-gray-300)}.completion-info{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-3);background:var(--color-gray-50);border-radius:var(--radius-base);margin-bottom:var(--spacing-4)}.score{font-weight:var(--font-weight-medium);color:var(--color-gray-700)}.grade{background:var(--color-primary);color:var(--color-white);padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-base);font-weight:var(--font-weight-bold);font-size:var(--font-size-sm)}.educator-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-8)}.educator-card{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-xl);padding:var(--spacing-8);text-align:center;transition:all var(--transition-base)}.educator-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary)}.educator-card h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin-bottom:var(--spacing-4)}.educator-card p{color:var(--color-gray-600);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-6)}.modal-dialog .simulation-container{flex:1;padding:var(--spacing-4);min-height:400px;overflow:auto;background:var(--color-gray-50);border-radius:var(--spacing-2);display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-4)}.simulation-container canvas,.modal-dialog .simulation-container canvas{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block;margin:0 auto;overflow:hidden!important}.simulation-container{flex:1;position:relative;background:var(--color-gray-50);display:flex;align-items:center;justify-content:center;min-height:400px;min-width:200px;overflow:auto;word-wrap:break-word;hyphens:auto;scroll-behavior:smooth;transition:background-color .3s ease,border-color .3s ease}.simulation-container:empty:before{content:"Loading simulation...";display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-gray-500);font-style:italic}canvas,img,video{overflow:hidden!important}.simulation-container .feedback-modal{z-index:1001}@media only screen and (width <= 767px){.simulation-container{-webkit-overflow-scrolling:touch;overflow-x:hidden}.simulation-container>.bias-simulation-enhanced{grid-template-columns:1fr!important;grid-template-rows:auto auto auto;gap:10px;padding:10px}}@media only screen and (width <= 428px){.simulation-container{min-height:250px}.simulation-container>.bias-simulation-container{flex-direction:column!important;gap:10px!important;padding:10px!important}}.simulation-container.loading{position:relative;pointer-events:none}.simulation-container.loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;border:4px solid var(--color-gray-300);border-top:4px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;z-index:10}@media (prefers-reduced-motion: reduce){.simulation-container.loading:after{animation:none;content:"Loading...";border:none;border-radius:0;width:auto;height:auto;background:var(--color-primary);color:var(--color-white);padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);top:50%;left:50%;transform:translate(-50%,-50%)}}.simulation-container,.modal-dialog{contain:layout style;will-change:auto}.simulation-container::-webkit-scrollbar{width:8px;height:8px}.simulation-container::-webkit-scrollbar-track{background:var(--color-gray-100);border-radius:var(--radius-base)}.simulation-container::-webkit-scrollbar-thumb{background:var(--color-gray-400);border-radius:var(--radius-base);border:1px solid var(--color-gray-200)}.simulation-container::-webkit-scrollbar-thumb:hover{background:var(--color-gray-500)}::selection{background:#007cba33;color:var(--color-gray-900)}input,textarea,select,button{font-family:inherit;font-size:inherit;line-height:inherit}img{max-width:100%;height:auto;border-style:none}table{border-collapse:collapse;border-spacing:0;width:100%}th,td{padding:var(--spacing-3);text-align:left;border-bottom:1px solid var(--color-gray-200)}th{font-weight:var(--font-weight-semibold);color:var(--color-gray-800);background:var(--color-gray-50)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-bold{font-weight:var(--font-weight-bold)}.font-medium{font-weight:var(--font-weight-medium)}.font-normal{font-weight:var(--font-weight-normal)}.text-primary{color:var(--color-primary)}.text-error{color:var(--color-error)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.bg-primary{background-color:var(--color-primary)}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.hidden{display:none!important}.visible{visibility:visible}.invisible{visibility:hidden}.m-0{margin:0}.mt-4{margin-top:var(--spacing-4)}.mb-4{margin-bottom:var(--spacing-4)}.ml-4{margin-left:var(--spacing-4)}.mr-4{margin-right:var(--spacing-4)}.p-0{padding:0}.pt-4{padding-top:var(--spacing-4)}.pb-4{padding-bottom:var(--spacing-4)}.pl-4{padding-left:var(--spacing-4)}.pr-4{padding-right:var(--spacing-4)}.flex{display:flex}.inline-flex{display:inline-flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.flex-1{flex:1}.flex-none{flex:none}.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)}.gap-4{gap:var(--spacing-4)}.gap-8{gap:var(--spacing-8)}@media only screen and (width >= 768px){.simulations-grid{grid-template-columns:repeat(2,1fr)}}@media only screen and (width >= 1024px){.simulations-grid{grid-template-columns:repeat(3,1fr)}}@media only screen and (width >= 1280px){.simulations-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}}.contact-info strong{color:var(--color-white)}.footer-bottom{border-top:1px solid var(--color-gray-700);padding-top:var(--spacing-6);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-4)}.footer-copyright{color:var(--color-gray-400);font-size:var(--font-size-sm);margin:0}.footer-nav{display:flex;gap:var(--spacing-6);flex-wrap:wrap}.footer-nav-link{color:var(--color-gray-400);text-decoration:none;font-size:var(--font-size-sm);transition:color var(--transition-fast);padding:var(--spacing-1) var(--spacing-2)}.footer-nav-link:hover,.footer-nav-link:focus{color:var(--color-primary-light)}@media only screen and (width <= 767px){.footer-content{padding:var(--spacing-12) var(--container-padding)}.footer-sections{grid-template-columns:1fr;gap:var(--spacing-8)}.footer-bottom{flex-direction:column;text-align:center;gap:var(--spacing-3)}.footer-nav{justify-content:center}}@media only screen and (width <= 428px){.footer-content{padding:var(--spacing-8) var(--container-padding)}.footer-section{padding:var(--spacing-4)}.footer-nav{flex-direction:column;gap:var(--spacing-2)}}.donor-appreciation-section{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:2px solid var(--color-primary-light);border-radius:var(--border-radius-lg);padding:var(--spacing-12);margin:var(--spacing-8) 0}.donor-content{max-width:1000px;margin:0 auto}.appreciation-message{text-align:center;margin-bottom:var(--spacing-12);padding:var(--spacing-8);background:#fff;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm)}.appreciation-message h3{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary);margin-bottom:var(--spacing-4)}.appreciation-message p{font-size:var(--font-size-lg);color:var(--color-gray-700);line-height:var(--line-height-relaxed);max-width:700px;margin:0 auto}.donor-benefits{margin-bottom:var(--spacing-12)}.donor-benefits h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-gray-900);text-align:center;margin-bottom:var(--spacing-8)}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-6);margin-top:var(--spacing-8)}.benefit-card{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--border-radius-lg);padding:var(--spacing-6);text-align:center;transition:all var(--duration-200) ease;border-left:4px solid var(--color-primary-light)}.benefit-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-left-color:var(--color-primary)}.benefit-icon{font-size:2.5rem;margin-bottom:var(--spacing-4);display:block}.benefit-card h4{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-900);margin-bottom:var(--spacing-3)}.benefit-card p{color:var(--color-gray-600);line-height:var(--line-height-relaxed);font-size:var(--font-size-base)}.support-cta{text-align:center;padding:var(--spacing-8);background:#fff;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-8)}.support-cta h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-primary);margin-bottom:var(--spacing-4)}.support-cta p{font-size:var(--font-size-lg);color:var(--color-gray-700);line-height:var(--line-height-relaxed);margin-bottom:var(--spacing-6);max-width:600px;margin-left:auto;margin-right:auto}.cta-buttons{display:flex;gap:var(--spacing-4);justify-content:center;flex-wrap:wrap}.donor-recognition{background:#fff;border-radius:var(--border-radius-lg);padding:var(--spacing-8);box-shadow:var(--shadow-sm);text-align:center}.donor-recognition h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-gray-900);margin-bottom:var(--spacing-6)}.donor-list{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding:20px 0;border-top:2px solid var(--border-color)}.donor-badge{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:20px;font-size:.9rem;font-weight:500;transition:all .3s ease;cursor:pointer;position:relative}.donor-badge.premium{background:linear-gradient(135deg,#8b5cf6,#a855f7);color:#fff;box-shadow:0 4px 12px #8b5cf64d}.donor-badge.gold{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 4px 12px #f59e0b4d}.donor-badge.silver{background:linear-gradient(135deg,#6b7280,#4b5563);color:#fff;box-shadow:0 4px 12px #6b72804d}.donor-badge.bronze{background:linear-gradient(135deg,#cd7c0e,#b45309);color:#fff;box-shadow:0 4px 12px #cd7c0e4d}.donor-badge:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000026}.donor-icon{font-size:1.1rem}.donor-name{white-space:nowrap}.no-donors-message{text-align:center;color:var(--text-muted);font-style:italic;padding:40px 20px}.inline-link{color:var(--primary-color);text-decoration:none;font-weight:600}.inline-link:hover{text-decoration:underline}.donor-stats{margin-top:20px;padding:20px;background:var(--card-background);border-radius:12px;border:1px solid var(--border-color)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:20px;text-align:center}.stat-item{display:flex;flex-direction:column;gap:4px}.stat-number{font-size:1.8rem;font-weight:700;color:var(--primary-color);line-height:1}.stat-label{font-size:.9rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}@media only screen and (width <= 767px){.donor-list{gap:8px;padding:15px 0}.donor-badge{padding:6px 10px;font-size:.8rem}.donor-icon{font-size:1rem}.stats-grid{grid-template-columns:repeat(3,1fr);gap:15px}.stat-number{font-size:1.5rem}.stat-label{font-size:.8rem}}@media only screen and (width <= 428px){.donor-list{justify-content:center}.donor-badge{font-size:.75rem;padding:5px 8px}.stats-grid{grid-template-columns:1fr;gap:10px}}.privacy-content,.accessibility-content,.contact-content{max-width:800px;margin:var(--spacing-12) auto 0;padding:0 var(--spacing-4)}.privacy-content ul,.accessibility-content ul,.contact-content ul{list-style-type:disc;margin-left:var(--spacing-6);margin-top:var(--spacing-4)}.privacy-content li,.accessibility-content li,.contact-content li{margin-bottom:var(--spacing-2);color:var(--color-gray-600);line-height:var(--line-height-relaxed)}@media print{.header,.footer,.btn-icon,.modal-backdrop{display:none!important}.hero{background:none!important;color:#000!important;padding:1rem 0}a{text-decoration:underline}a[href^=http]:after{content:" (" attr(href) ")";font-size:.8em;color:#666}.simulation-container{border:1px solid #ccc;height:auto!important;min-height:200px}}.btn:focus-visible,.nav-link:focus-visible,.modal-close:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;box-shadow:0 0 0 4px #007cba33}.simulation-container.error{border:2px solid var(--color-error);background:#dc35451a;color:var(--color-error)}.simulation-container.error:before{content:"⚠️ Error loading simulation. Please try again.";display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-error);font-weight:700;text-align:center;padding:var(--spacing-4)}.error-boundary{position:fixed;inset:0;background:#000c;display:none;align-items:center;justify-content:center;z-index:9999;opacity:0;visibility:hidden;transition:opacity var(--transition-base),visibility var(--transition-base)}.error-boundary.visible{display:flex;opacity:1;visibility:visible}.error-boundary[aria-hidden=true]{display:none!important}.error-content{background:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-8);max-width:500px;width:90%;text-align:center;box-shadow:var(--shadow-xl)}.error-content h2{color:var(--color-error);margin-bottom:var(--spacing-4);font-size:var(--font-size-2xl)}.error-message{color:var(--color-gray-600);margin-bottom:var(--spacing-6);line-height:var(--line-height-relaxed)}.error-actions{display:flex;gap:var(--spacing-4);justify-content:center;flex-wrap:wrap}.loading{position:fixed;inset:0;background:#ffffffe5;display:none;align-items:center;justify-content:center;flex-direction:column;z-index:9998;opacity:0;visibility:hidden;transition:opacity var(--transition-base),visibility var(--transition-base)}.loading.visible{display:flex;opacity:1;visibility:visible}.loading[aria-hidden=true]{display:none!important}.loading-spinner{width:40px;height:40px;border:4px solid var(--color-gray-300);border-top:4px solid var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:var(--spacing-4)}.loading-text{color:var(--color-gray-600);font-size:var(--font-size-lg);margin-bottom:var(--spacing-4)}.loading-progress{width:200px;height:4px;background:var(--color-gray-200);border-radius:var(--radius-full);overflow:hidden}.progress-bar{height:100%;background:var(--color-primary);width:0%;transition:width var(--transition-base);border-radius:var(--radius-full)}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@media (prefers-reduced-motion: reduce){.simulation-container.loading:after{animation:none;content:"Loading...";border:none;border-radius:0;width:auto;height:auto;background:var(--color-primary);color:var(--color-white);padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm)}}.floating-tour-tab-link,.floating-surprise-tab-link,.floating-action-tab-link,.floating-tour-tab,.floating-surprise-tab,.floating-action-tab{max-width:none!important}.simulations-grid,.category-scenarios-grid,.category-section{overflow-x:hidden}.container{max-width:min(var(--container-xl),100vw);width:100%;box-sizing:border-box}@media only screen and (width <= 767px){html,body{overflow-x:hidden!important;overscroll-behavior-x:none}.main-content{overflow-x:hidden!important}.simulations-section,.hero,section{overflow-x:hidden!important;max-width:100vw;box-sizing:border-box}}body.dark-mode{background:var(--theme-bg-primary);color:var(--theme-text-primary)}body.dark-mode h1,body.dark-mode h2,body.dark-mode h3,body.dark-mode h4,body.dark-mode h5,body.dark-mode h6{color:var(--theme-text-primary)}body.dark-mode p{color:var(--theme-text-secondary)}body.dark-mode .main-content .main-section-title,body.theme-dark .main-content .main-section-title{color:var(--theme-text-primary)}body.dark-mode .main-section-description,body.theme-dark .main-section-description{color:var(--theme-text-secondary)}body.dark-mode .main-content,body.dark-mode .simulations-section,body.dark-mode section{background:var(--theme-bg-primary);color:var(--theme-text-primary)}body.dark-mode .card,body.dark-mode .container{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .card:hover{border-color:var(--theme-border-hover);box-shadow:0 4px 12px var(--theme-shadow-hover)}body.dark-mode .btn-secondary{background:var(--theme-bg-secondary);color:var(--theme-text-primary);border:1px solid var(--theme-border)}body.dark-mode .btn-secondary:hover{background:var(--theme-border);border-color:var(--theme-border-hover)}body.dark-mode input,body.dark-mode textarea,body.dark-mode select{background:var(--theme-bg-secondary);color:var(--theme-text-primary);border:1px solid var(--theme-border)}body.dark-mode input:focus,body.dark-mode textarea:focus,body.dark-mode select:focus{border-color:var(--color-primary);background:var(--theme-bg-primary)}body.dark-mode footer{background:var(--theme-bg-secondary);border-top:1px solid var(--theme-border);color:var(--theme-text-secondary)}body.dark-mode footer a{color:var(--theme-text-primary)}body.dark-mode footer a:hover{color:var(--color-primary)}}@layer base{@media (prefers-contrast: high){:root{--text-color: #000;--background-color: #fff;--primary-color: #00f;--border-color: #000}.card,.panel,.button{border:2px solid var(--border-color)!important}.text-muted{color:var(--text-color)!important}}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.sr-only-focusable:active,.sr-only-focusable:focus{position:static!important;width:auto!important;height:auto!important;margin:0!important;overflow:visible!important;clip:auto!important;white-space:normal!important}.skip-link{position:absolute;top:-40px;left:6px;background:var(--primary-color);color:#fff;padding:calc(8px * var(--font-scale, 1));text-decoration:none;border-radius:0 0 4px 4px;z-index:1000;font-weight:500}.skip-link:focus{top:0}*:focus{outline:2px solid var(--primary-color);outline-offset:2px}button:focus,a:focus,input:focus,select:focus,textarea:focus,[tabindex]:focus{outline:3px solid var(--primary-color);outline-offset:2px;box-shadow:0 0 0 1px #007acc33}.simulation-container:focus-within,.panel:focus-within,.card:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 2px #007acc1a}.keyboard-user *:focus{outline:3px solid var(--primary-color)!important;outline-offset:2px!important}.mouse-user *:focus{outline:none}button[disabled],input[disabled]{opacity:.6;cursor:not-allowed;pointer-events:none}.loading:after{content:" (Loading...)";position:absolute;left:-9999px}.error{border-color:#dc3545!important;background-color:#f8d7da}.error-message{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb;padding:calc(.75rem * var(--font-scale, 1)) calc(1.25rem * var(--font-scale, 1));margin-bottom:1rem;border-radius:.25rem}.success{border-color:#28a745!important;background-color:#d4edda}.success-message{color:#155724;background-color:#d4edda;border:1px solid #c3e6cb;padding:calc(.75rem * var(--font-scale, 1)) calc(1.25rem * var(--font-scale, 1));margin-bottom:1rem;border-radius:.25rem}.warning{border-color:#ffc107!important;background-color:#fff3cd}.warning-message{color:#856404;background-color:#fff3cd;border:1px solid #ffeaa7;padding:calc(.75rem * var(--font-scale, 1)) calc(1.25rem * var(--font-scale, 1));margin-bottom:1rem;border-radius:.25rem}@media (resolution >= 2dppx){body{font-size:calc(1.1rem * var(--font-scale, 1))}.btn,button{min-height:var(--touch-target-min, 44px);min-width:var(--touch-target-min, 44px)}}@media (pointer: coarse){button,.btn,a,input,select{min-height:var(--touch-target-min, 44px);min-width:var(--touch-target-min, 44px);padding:calc(12px * var(--font-scale, 1)) calc(16px * var(--font-scale, 1))}.slider-handle{min-width:var(--touch-target-min, 44px);min-height:var(--touch-target-min, 44px)}}[dir=rtl],[dir=rtl] .panel-header{text-align:right}[dir=rtl] .breadcrumb{direction:rtl}::-webkit-scrollbar{width:16px;height:16px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:8px}::-webkit-scrollbar-thumb{background:#888;border-radius:8px;border:2px solid #f1f1f1}::-webkit-scrollbar-thumb:hover{background:#555}@media print{.no-print{display:none!important}.simulation-container{break-inside:avoid}a[href^=http]:after{content:" (" attr(href) ")"}}.aria-live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.nav-link:focus{outline:2px solid var(--primary-color);outline-offset:2px;background-color:#007acc1a}a{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:2px}a:hover{text-decoration-thickness:3px}.landmark{margin-bottom:1rem}.text-light-gray{color:#767676}.text-medium-gray{color:#595959}.status-indicator{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:8px}.status-active{background-color:#28a745}.status-inactive{background-color:#6c757d}.status-error{background-color:#dc3545}.status-warning{background-color:#ffc107}body.dark-mode .skip-link{background:var(--color-primary);color:#fff}body.dark-mode *:focus{outline:2px solid var(--color-primary)}body.dark-mode button:focus,body.dark-mode a:focus,body.dark-mode input:focus,body.dark-mode select:focus,body.dark-mode textarea:focus,body.dark-mode [tabindex]:focus{outline:3px solid var(--color-primary);box-shadow:0 0 0 1px #4a9eff4d}body.dark-mode .simulation-container:focus-within,body.dark-mode .panel:focus-within,body.dark-mode .card:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 2px #4a9eff33}body.dark-mode button[disabled],body.dark-mode input[disabled]{background:var(--theme-bg-secondary);color:var(--theme-text-muted);border-color:var(--theme-border);opacity:.6}body.dark-mode .error{color:var(--color-error);border-color:var(--color-error)}body.dark-mode .error-message{color:var(--color-error);background:#f443361a;border:1px solid var(--color-error)}body.dark-mode .success{color:var(--color-success);border-color:var(--color-success)}body.dark-mode .success-message{color:var(--color-success);background:#4caf501a;border:1px solid var(--color-success)}body.dark-mode .warning{color:var(--color-warning);border-color:var(--color-warning)}body.dark-mode .warning-message{color:var(--color-warning);background:#ffc1071a;border:1px solid var(--color-warning)}body.dark-mode .text-light-gray{color:var(--theme-text-muted)}body.dark-mode .text-medium-gray{color:var(--theme-text-secondary)}body.dark-mode .status-active{background-color:var(--color-success)}body.dark-mode .status-inactive{background-color:var(--theme-text-muted)}body.dark-mode .status-error{background-color:var(--color-error)}body.dark-mode .status-warning{background-color:var(--color-warning)}body.dark-mode ::-webkit-scrollbar{width:8px;height:8px}body.dark-mode ::-webkit-scrollbar-track{background:var(--theme-bg-primary)}body.dark-mode ::-webkit-scrollbar-thumb{background:var(--theme-border);border-radius:4px}body.dark-mode ::-webkit-scrollbar-thumb:hover{background:var(--theme-border-hover)}.focus-ring-responsive{outline-width:calc(2px * var(--font-scale, 1));outline-offset:calc(2px * var(--font-scale, 1))}.message-responsive{padding:calc(var(--container-padding, 16px) * .75) var(--container-padding, 16px);margin-bottom:calc(1rem * var(--font-scale, 1))}.skip-link-responsive{padding:calc(8px * var(--font-scale, 1)) calc(12px * var(--font-scale, 1));font-size:calc(1rem * var(--font-scale, 1));top:calc(-40px * var(--font-scale, 1))}.status-indicator-responsive{width:calc(12px * var(--font-scale, 1));height:calc(12px * var(--font-scale, 1));margin-right:calc(8px * var(--font-scale, 1))}@media (width >= 768px){::-webkit-scrollbar{width:calc(16px * var(--font-scale, 1));height:calc(16px * var(--font-scale, 1))}}@media (width <= 767px){::-webkit-scrollbar{width:calc(12px * var(--font-scale, 1));height:calc(12px * var(--font-scale, 1))}}.touch-enhanced{min-height:var(--touch-target-min, 44px);min-width:var(--touch-target-min, 44px);padding:calc(var(--container-padding, 16px) * .5)}.landmark-responsive{margin-bottom:calc(1rem * var(--font-scale, 1));padding:calc(var(--container-padding, 16px) * .25) 0}.content-spacing-responsive{padding-left:var(--container-padding, 16px);padding-right:var(--container-padding, 16px)}.text-accessibility-scale{font-size:calc(1rem * var(--font-scale, 1));line-height:calc(1.5 * var(--font-scale, 1))}.text-accessibility-large{font-size:calc(1.25rem * var(--font-scale, 1));line-height:calc(1.4 * var(--font-scale, 1))}.text-accessibility-small{font-size:calc(.875rem * var(--font-scale, 1));line-height:calc(1.6 * var(--font-scale, 1))}}
