@import"./media.css";@layer components{.toast-container{position:fixed;top:var(--container-padding, 20px);right:var(--container-padding, 20px);z-index:10000;max-width:400px;pointer-events:none}.toast{background:var(--background-secondary, #fff);border:1px solid var(--border-color, #e0e0e0);border-radius:8px;box-shadow:0 4px 12px #0000001a;margin-bottom:12px;padding:var(--container-padding, 16px) var(--container-padding, 20px);position:relative;pointer-events:auto;min-height:var(--touch-target-min, 60px);display:flex;align-items:center;gap:12px;opacity:0;transform:translate(100%);transition:all .3s cubic-bezier(.4,0,.2,1)}.toast.show{opacity:1;transform:translate(0)}.toast.hide{opacity:0;transform:translate(100%)}.toast.success{border-left:4px solid var(--success-color, #10b981);background:var(--success-bg, #f0fdf4)}.toast.error{border-left:4px solid var(--error-color, #ef4444);background:var(--error-bg, #fef2f2)}.toast.warning{border-left:4px solid var(--warning-color, #f59e0b);background:var(--warning-bg, #fffbeb)}.toast.info{border-left:4px solid var(--info-color, #3b82f6);background:var(--info-bg, #eff6ff)}.toast-icon{flex-shrink:0;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:#fff}.toast.success .toast-icon{background:var(--success-color, #10b981)}.toast.error .toast-icon{background:var(--error-color, #ef4444)}.toast.warning .toast-icon{background:var(--warning-color, #f59e0b)}.toast.info .toast-icon{background:var(--info-color, #3b82f6)}.toast-content{flex:1;min-width:0}.toast-title{font-weight:600;font-size:14px;line-height:1.4;margin:0 0 4px;color:var(--text-primary, #1f2937)}.toast-message{font-size:13px;line-height:1.4;margin:0;color:var(--text-secondary, #6b7280)}.toast-close{position:absolute;top:8px;right:8px;background:none;border:none;padding:4px;cursor:pointer;color:var(--text-secondary, #6b7280);border-radius:4px;display:flex;align-items:center;justify-content:center;width:24px;height:24px;font-size:16px;line-height:1}.toast-close:hover{background:var(--hover-bg, rgb(0 0 0 / 5%));color:var(--text-primary, #1f2937)}.toast-close:focus{outline:2px solid var(--focus-color, #3b82f6);outline-offset:2px}.toast-progress{position:absolute;bottom:0;left:0;height:3px;background:var(--progress-bg, rgb(0 0 0 / 10%));border-radius:0 0 8px 8px;overflow:hidden}.toast-progress-bar{height:100%;background:var(--progress-color, #3b82f6);transition:width .1s linear}.toast.success .toast-progress-bar{background:var(--success-color, #10b981)}.toast.error .toast-progress-bar{background:var(--error-color, #ef4444)}.toast.warning .toast-progress-bar{background:var(--warning-color, #f59e0b)}.toast.info .toast-progress-bar{background:var(--info-color, #3b82f6)}@media (prefers-contrast: high){.toast{border-width:2px;box-shadow:0 2px 8px #0000004d}.toast-close:focus{outline-width:3px}}@media (prefers-reduced-motion: reduce){.toast{transition:opacity .2s ease}.toast.show,.toast.hide{transform:none}}body.dark-mode .toast{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);color:var(--theme-text-primary);box-shadow:0 4px 12px var(--theme-shadow-hover)}body.dark-mode .toast.success{border-left:4px solid var(--color-success);background:#4caf501a}body.dark-mode .toast.error{border-left:4px solid var(--color-error);background:#f443361a}body.dark-mode .toast.warning{border-left:4px solid var(--color-warning);background:#ffc1071a}body.dark-mode .toast.info{border-left:4px solid var(--color-info);background:#2196f31a}body.dark-mode .toast-icon{color:var(--theme-text-primary)}body.dark-mode .toast.success .toast-icon{color:var(--color-success)}body.dark-mode .toast.error .toast-icon{color:var(--color-error)}body.dark-mode .toast.warning .toast-icon{color:var(--color-warning)}body.dark-mode .toast.info .toast-icon{color:var(--color-info)}body.dark-mode .toast-content,body.dark-mode .toast-title{color:var(--theme-text-primary)}body.dark-mode .toast-message{color:var(--theme-text-secondary)}body.dark-mode .toast-close{color:var(--theme-text-secondary);background:var(--theme-bg-primary);border:1px solid var(--theme-border)}body.dark-mode .toast-close:hover{color:var(--theme-text-primary);background:var(--theme-bg-secondary);border-color:var(--theme-border-hover)}body.dark-mode .toast-close:focus{outline-color:var(--color-primary)}body.dark-mode .toast-progress{background:var(--theme-bg-primary)}body.dark-mode .toast-progress-fill{background:var(--color-primary)}body.dark-mode .toast.success .toast-progress-fill{background:var(--color-success)}body.dark-mode .toast.error .toast-progress-fill{background:var(--color-error)}body.dark-mode .toast.warning .toast-progress-fill{background:var(--color-warning)}body.dark-mode .toast.info .toast-progress-fill{background:var(--color-info)}}@layer layout{:root{--container-padding: 16px;--font-scale: 1;--touch-target-min: 44px;--device-type: "unknown";--device-category: "unknown";--breakpoint-xs: 360px;--breakpoint-sm: 375px;--breakpoint-md: 390px;--breakpoint-lg: 393px;--breakpoint-xl: 428px;--breakpoint-tablet-sm: 768px;--breakpoint-tablet-md: 800px;--breakpoint-tablet-lg: 820px;--breakpoint-tablet-xl: 1024px;--breakpoint-laptop-sm: 1280px;--breakpoint-laptop-md: 1366px;--breakpoint-laptop-lg: 1500px;--breakpoint-laptop-xl: 1536px;--breakpoint-desktop-xl: 1920px;--breakpoint-desktop-2k: 2560px;--breakpoint-desktop-4k: 3840px}@media only screen and (width <= 767px){:root{--device-category: "mobile";--layout-type: "single-column";--nav-type: "bottom-nav";--sidebar-behavior: "overlay"}}@media only screen and (width <= 359px){:root{--device-type: "mobile-xxs";--container-padding: 8px;--font-scale: .8;--touch-target-min: 44px;--floating-tab-width: 180px;--floating-tab-height: 44px;--floating-tab-protrusion: 24px}}@media only screen and (width >= 360px) and (width <= 374px){:root{--device-type: "mobile-xs";--container-padding: 12px;--font-scale: .85;--touch-target-min: 44px;--floating-tab-width: 200px;--floating-tab-height: 48px;--floating-tab-protrusion: 30px}}@media only screen and (width >= 375px) and (width <= 389px){:root{--device-type: "mobile-sm";--container-padding: 14px;--font-scale: .9;--touch-target-min: 44px;--floating-tab-width: 210px;--floating-tab-height: 50px;--floating-tab-protrusion: 32px}}@media only screen and (width >= 390px) and (width <= 399px){:root{--device-type: "mobile-md";--container-padding: 16px;--font-scale: .95;--touch-target-min: 44px;--floating-tab-width: 220px;--floating-tab-height: 52px;--floating-tab-protrusion: 34px}}@media only screen and (width >= 400px) and (width <= 479px){:root{--device-type: "mobile-lg";--container-padding: 18px;--font-scale: 1;--touch-target-min: 44px;--floating-tab-width: 240px;--floating-tab-height: 54px;--floating-tab-protrusion: 36px}}@media only screen and (width >= 768px) and (width <= 1279px){:root{--device-category: "tablet";--layout-type: "two-column";--nav-type: "side-nav";--sidebar-behavior: "collapse"}}@media only screen and (width >= 768px) and (width <= 820px){:root{--device-type: "tablet-sm";--container-padding: 20px;--font-scale: 1.05;--touch-target-min: 44px;--floating-tab-width: 260px;--floating-tab-height: 58px;--floating-tab-protrusion: 38px}}@media only screen and (width >= 821px) and (width <= 1023px){:root{--device-type: "tablet-md";--container-padding: 24px;--font-scale: 1.1;--touch-target-min: 44px;--floating-tab-width: 270px;--floating-tab-height: 59px;--floating-tab-protrusion: 40px}}@media only screen and (width >= 1024px) and (width <= 1279px){:root{--device-type: "tablet-lg";--container-padding: 28px;--font-scale: 1.15;--touch-target-min: 44px;--floating-tab-width: 280px;--floating-tab-height: 60px;--floating-tab-protrusion: 42px}}@media only screen and (width >= 1280px) and (width <= 1919px){:root{--device-category: "laptop";--layout-type: "multi-column";--nav-type: "top-nav";--sidebar-behavior: "persistent"}}@media only screen and (width >= 1280px) and (width <= 1366px){:root{--device-type: "laptop-sm";--container-padding: 32px;--font-scale: 1;--touch-target-min: 40px;--floating-tab-width: 300px;--floating-tab-height: 62px;--floating-tab-protrusion: 44px}}@media only screen and (width >= 1367px) and (width <= 1535px){:root{--device-type: "laptop-md";--container-padding: 36px;--font-scale: 1.05;--touch-target-min: 40px;--floating-tab-width: 310px;--floating-tab-height: 63px;--floating-tab-protrusion: 46px}}@media only screen and (width >= 1536px) and (width <= 1919px){:root{--device-type: "laptop-lg";--container-padding: 40px;--font-scale: 1.1;--touch-target-min: 40px;--floating-tab-width: 320px;--floating-tab-height: 64px;--floating-tab-protrusion: 48px}}@media only screen and (width >= 1920px){:root{--device-category: "desktop";--layout-type: "wide-multi-column";--nav-type: "mega-nav";--sidebar-behavior: "dual-sidebar"}}@media only screen and (width >= 1920px) and (width <= 2559px){:root{--device-type: "desktop-fhd";--container-padding: 48px;--font-scale: 1.15;--touch-target-min: 40px;--floating-tab-width: 340px;--floating-tab-height: 66px;--floating-tab-protrusion: 50px}}@media only screen and (width >= 2560px) and (width <= 3839px){:root{--device-type: "desktop-2k";--container-padding: 56px;--font-scale: 1.25;--touch-target-min: 40px;--floating-tab-width: 360px;--floating-tab-height: 68px;--floating-tab-protrusion: 52px}}@media only screen and (width >= 3840px){:root{--device-type: "desktop-4k";--container-padding: 64px;--font-scale: 1.4;--touch-target-min: 44px;--floating-tab-width: 400px;--floating-tab-height: 72px;--floating-tab-protrusion: 54px}}@media only screen and (orientation: portrait){:root{--orientation: "portrait";--header-height: 80px;--header-h: 80px;--footer-height: 80px}}@media only screen and (orientation: landscape){:root{--orientation: "landscape";--header-height: 80px;--header-h: 80px;--footer-height: 64px}}@media (prefers-contrast: more){:root{--accessibility-mode: "high-contrast";--border-width: 2px;--focus-ring-width: 4px}}@media (prefers-reduced-motion: reduce){:root{--animation-duration: 0ms;--transition-duration: 0ms;--accessibility-mode: "reduced-motion"}}@media (prefers-reduced-data: reduce){:root{--data-saver-mode: "enabled";--image-quality: "low";--animation-enabled: "false"}}@media (hover: hover) and (pointer: fine){:root{--input-mode: "fine";--hover-enabled: true}}@media (hover: none) and (pointer: coarse){:root{--input-mode: "coarse";--hover-enabled: false}}@media print{:root{--device-type: "print";--color-scheme: "light"}.floating-tab-link,.floating-tour-tab-link,.floating-surprise-tab-link,.floating-action-tab,.floating-surprise-tab,.floating-tour-tab,nav,.sidebar,.modal,.tooltip{display:none}}}@layer utilities{.floating-tab-responsive{width:var(--floating-tab-width);height:var(--floating-tab-height);transform:translate(calc(100% - var(--floating-tab-protrusion)))}.layout-container-responsive{padding-left:var(--container-padding);padding-right:var(--container-padding);max-width:100vw;box-sizing:border-box;margin-left:auto;margin-right:auto}.layout-container-tight{padding-left:calc(var(--container-padding) * .75);padding-right:calc(var(--container-padding) * .75)}.layout-container-loose{padding-left:calc(var(--container-padding) * 1.5);padding-right:calc(var(--container-padding) * 1.5)}.text-responsive{font-size:calc(1rem * var(--font-scale))}.text-responsive-small{font-size:calc(.875rem * var(--font-scale))}.text-responsive-large{font-size:calc(1.125rem * var(--font-scale))}.text-responsive-heading{font-size:calc(1.5rem * var(--font-scale));line-height:calc(1.2 * var(--font-scale, 1))}.text-responsive-h1{font-size:calc(2.25rem * var(--font-scale));line-height:calc(1.1 * var(--font-scale, 1))}.text-responsive-h2{font-size:calc(1.875rem * var(--font-scale));line-height:calc(1.15 * var(--font-scale, 1))}.text-responsive-h3{font-size:calc(1.5rem * var(--font-scale));line-height:calc(1.2 * var(--font-scale, 1))}.text-responsive-h4{font-size:calc(1.25rem * var(--font-scale));line-height:calc(1.25 * var(--font-scale, 1))}.text-responsive-body{font-size:calc(1rem * var(--font-scale));line-height:calc(1.5 * var(--font-scale, 1))}.text-responsive-caption{font-size:calc(.75rem * var(--font-scale));line-height:calc(1.4 * var(--font-scale, 1))}@media only screen and (width <= 360px){.text-responsive-heading{font-size:calc(1.25rem * var(--font-scale))}}.touch-target{min-height:var(--touch-target-min);min-width:var(--touch-target-min)}.flex{display:flex}.inline-flex{display:inline-flex}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-row-reverse{flex-direction:row-reverse}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.content-start{align-content:flex-start}.content-end{align-content:flex-end}.content-center{align-content:center}.content-between{align-content:space-between}.content-around{align-content:space-around}.content-evenly{align-content:space-evenly}.self-auto{align-self:auto}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-stretch{align-self:stretch}.self-baseline{align-self:baseline}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-initial{flex:0 1 auto}.flex-none{flex:none}.grow{flex-grow:1}.grow-0{flex-grow:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.gap-xs{gap:calc(var(--container-padding) * .25)}.gap-sm{gap:calc(var(--container-padding) * .5)}.gap-md{gap:var(--container-padding)}.gap-lg{gap:calc(var(--container-padding) * 1.5)}.gap-xl{gap:calc(var(--container-padding) * 2)}@media only screen and (width <= 767px){.mobile\:flex-col{flex-direction:column}.mobile\:flex-wrap{flex-wrap:wrap}.mobile\:justify-center{justify-content:center}.mobile\:items-center{align-items:center}}@media only screen and (width >= 768px) and (width <= 1279px){.tablet\:flex-row{flex-direction:row}.tablet\:justify-between{justify-content:space-between}}@media only screen and (width >= 1280px){.desktop\:flex-row{flex-direction:row}.desktop\:justify-start{justify-content:flex-start}}.mobile-hide{display:block}.mobile-show{display:none}.tablet-hide{display:block}.tablet-show{display:none}.desktop-hide{display:block}.desktop-show{display:none}@media only screen and (width <= 767px){.mobile-hide{display:none}.mobile-show{display:block}.mobile\:text-center{text-align:center}.mobile\:full-width{width:100%}.mobile\:padding-sm{padding:var(--spacing-3)}.mobile\:margin-auto{margin:0 auto}}@media only screen and (width >= 768px) and (width <= 1279px){.tablet-hide{display:none}.tablet-show{display:block}.tablet\:two-column{column-count:2;column-gap:var(--spacing-6)}}@media only screen and (width >= 1280px){.desktop-hide{display:none}.desktop-show{display:block}.desktop\:three-column{column-count:3;column-gap:var(--spacing-8)}}@media (prefers-reduced-motion: reduce){.respect-motion{animation-duration:.01ms;animation-iteration-count:1;transition-duration:.01ms;scroll-behavior:auto}.no-motion{animation:none;transition:none}}@media (prefers-contrast: more){.high-contrast-border{border:2px solid var(--theme-border-focus, currentColor)}.high-contrast-text{color:var(--theme-text-primary, CanvasText);background:var(--theme-bg-primary, Canvas)}.high-contrast-focus:focus{outline:3px solid var(--theme-border-focus, Highlight);outline-offset:2px}}@media print{.print-hide{display:none}.print-show{display:block}.print-page-break{page-break-after:always}.print-no-break{page-break-inside:avoid}.print-black-text{color:var(--theme-text-primary, black)}.print-white-bg{background:var(--theme-bg-primary, white)}}@media (hover: none) and (pointer: coarse){.touch-larger{min-height:44px;min-width:44px}.touch-spacing{margin:8px}.touch-no-hover:hover{background:initial;transform:none;box-shadow:initial}}@media only screen and (width <= 320px){.layout-container-responsive{padding-left:6px;padding-right:6px}.layout-container-tight{padding-left:4px;padding-right:4px}}}@layer reset,tokens,base,layout,components,utilities,overrides;@layer components{.nav-item-dropdown{position:relative}.settings-menu{position:absolute;top:100%;right:0;min-width:calc(320px * var(--font-scale, 1));padding:calc(var(--container-padding, 16px) * 1.25);background:var(--theme-bg-secondary, var(--theme-bg-primary, #fff));border:1px solid var(--theme-border, #e0e0e0);border-radius:calc(8px * var(--font-scale, 1));box-shadow:0 4px 16px #0000001a;z-index:var(--z-dropdown);display:none;opacity:1;visibility:visible;transform:none;transition:none;max-height:calc(400px * var(--font-scale, 1));overflow-y:auto}.dropdown-menu.settings-menu{padding:calc(var(--container-padding, 16px) * 1.25)}.settings-menu.force-visible,.settings-menu.open,.settings-menu.js-open{display:block!important;opacity:1!important;visibility:visible!important}.settings-section{margin-bottom:calc(12px * var(--font-scale, 1))}.settings-section:last-child{margin-bottom:0}.settings-title{font-size:calc(.9rem * var(--font-scale, 1));font-weight:600;color:var(--theme-text-primary, #333);margin:0 0 calc(12px * var(--font-scale, 1));padding-bottom:calc(8px * var(--font-scale, 1));border-bottom:1px solid var(--theme-border, #e0e0e0)}.settings-item{margin-bottom:calc(12px * var(--font-scale, 1))}.settings-item:last-child{margin-bottom:0}.settings-toggle{display:flex;align-items:center;gap:calc(12px * var(--font-scale, 1));cursor:pointer;padding:calc(8px * var(--font-scale, 1)) 0;transition:opacity .2s ease;user-select:none;position:relative;min-height:var(--touch-target-min, 44px)}.settings-toggle *{pointer-events:none}.settings-toggle input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;pointer-events:auto}.settings-toggle:hover{opacity:.8}.toggle-slider{position:relative;width:calc(44px * var(--font-scale, 1));height:calc(24px * var(--font-scale, 1));background:#e0e0e0;border-radius:calc(24px * var(--font-scale, 1));transition:background-color .3s ease;flex-shrink:0;min-width:var(--touch-target-min, 44px)}.toggle-slider:before{content:"";position:absolute;top:calc(2px * var(--font-scale, 1));left:calc(2px * var(--font-scale, 1));width:calc(20px * var(--font-scale, 1));height:calc(20px * var(--font-scale, 1));background:#fff;border-radius:50%;transition:transform .3s ease;box-shadow:0 2px 4px #0003}.toggle-label{font-size:calc(.9rem * var(--font-scale, 1));color:var(--theme-text-primary, #333);font-weight:500}.settings-select-label{font-size:calc(.9rem * var(--font-scale, 1));color:var(--theme-text-primary, #333);font-weight:500;margin-bottom:calc(6px * var(--font-scale, 1));display:block}.settings-select{width:100%;padding:calc(8px * var(--font-scale, 1)) calc(12px * var(--font-scale, 1));border:1px solid var(--theme-border, #e0e0e0);border-radius:calc(4px * var(--font-scale, 1));background:var(--theme-bg-primary, #fff);font-size:calc(.9rem * var(--font-scale, 1));color:var(--theme-text-primary, #333);cursor:pointer;transition:border-color .2s ease;min-height:var(--touch-target-min, 44px)}.settings-select:focus{outline:none;border-color:var(--color-primary, #1a73e8);box-shadow:0 0 0 2px #1a73e833}.settings-select:hover{border-color:var(--theme-border-hover, #ccc)}.settings-note{margin-top:calc(4px * var(--font-scale, 1));padding:calc(4px * var(--font-scale, 1)) calc(8px * var(--font-scale, 1));background:#1a73e81a;border-radius:calc(4px * var(--font-scale, 1));border-left:calc(3px * var(--font-scale, 1)) solid #1a73e8}.settings-note small{color:var(--color-primary, #1a73e8);font-weight:500}.settings-toggle.disabled{opacity:.5;cursor:not-allowed}.settings-toggle.disabled:hover{opacity:.5}@media only screen and (width <= 428px){.settings-menu{min-width:calc(260px * var(--font-scale, 1));padding:var(--container-padding, 14px);max-height:calc(300px * var(--font-scale, 1))}.settings-title,.toggle-label,.settings-select-label{font-size:calc(.85rem * var(--font-scale, 1))}.toggle-slider{width:calc(40px * var(--font-scale, 1));height:calc(22px * var(--font-scale, 1));min-width:var( --touch-target-min, 44px )}.toggle-slider:before{width:calc(18px * var(--font-scale, 1));height:calc(18px * var(--font-scale, 1))}.settings-toggle input[type=checkbox]:checked+.toggle-slider:before{transform:translate(calc(18px * var(--font-scale, 1)))}}@media only screen and (width >= 768px) and (width <= 1024px){.settings-menu{min-width:calc(340px * var(--font-scale, 1));padding:var(--container-padding, 20px)}}@media only screen and (width >= 1280px){.settings-menu{min-width:calc(360px * var(--font-scale, 1));padding:var(--container-padding, 24px)}}.settings-toggle input[type=checkbox]:checked+.toggle-slider{background:#1a73e8}.settings-toggle input[type=checkbox]:checked+.toggle-slider:before{transform:translate(calc(20px * var(--font-scale, 1)))}@keyframes settings-slide-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes settings-slide-out{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.settings-notification{position:fixed;top:20px;right:20px;background:var(--theme-accent-primary);color:var(--theme-text-on-accent);padding:12px 16px;border-radius:8px;box-shadow:0 4px 12px var(--theme-shadow-medium);z-index:var(--z-toast, 1070);animation:settings-slide-in .3s var(--ease-out);max-width:320px}.settings-notification.closing{animation:settings-slide-out .3s var(--ease-in)}.settings-notification .notification-content{display:flex;align-items:center;gap:8px}.settings-notification .notification-close{background:none;border:none;color:inherit;font-size:18px;cursor:pointer;padding:0;margin-left:auto;line-height:1}.settings-notification .notification-close:hover{opacity:.85}}@layer components{#simulation-modal.modal-backdrop .modal-dialog{overflow:visible!important}#simulation-modal.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:#0000007f;display:flex;align-items:center;justify-content:center;z-index:1000;opacity:1;visibility:visible}#simulation-modal .modal-dialog{background:#fff;border-radius:8px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:90vw;max-height:90vh;width:1000px;display:flex;flex-direction:column;overflow:visible}#simulation-modal .modal-header{padding:20px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center;background:#fff;flex-shrink:0}#simulation-modal .modal-title{margin:0;font-size:1.5rem;font-weight:600;color:#1f2937}#simulation-modal .modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:4px;border-radius:4px;color:#6b7280}#simulation-modal .modal-close:hover{background:#f3f4f6;color:#1f2937}#simulation-modal .modal-body{display:flex!important;flex-direction:column!important;padding:20px!important;overflow:hidden auto!important;height:auto!important;min-height:400px!important;max-height:70vh!important;flex:1!important;background:#fff!important;gap:20px!important}#simulation-modal .simulation-container{background:#f8f9fa!important;border-radius:8px!important;padding:16px!important;min-height:300px!important;width:100%!important;display:block!important;overflow:visible!important;border:1px solid #e5e7eb!important;position:relative!important}#simulation-modal .simulation-controls{display:block!important;width:100%!important}#simulation-modal .ethics-meters{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px;margin-bottom:16px}#simulation-modal .ethics-meters-header h3{margin:0 0 8px;font-size:1.125rem;font-weight:600;color:#1f2937}#simulation-modal .ethics-meters-header p{margin:0;color:#6b7280;font-size:.875rem}#simulation-modal .simulation-actions{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px}#simulation-modal .actions-header h3{margin:0 0 8px;font-size:1.125rem;font-weight:600;color:#1f2937}#simulation-modal .actions-container{display:flex;gap:12px;flex-wrap:wrap}#simulation-modal.pre-launch-modal .modal-body{padding:0!important;overflow:visible!important}#simulation-modal.pre-launch-modal .modal-dialog{max-width:800px;overflow:visible!important}#simulation-modal.ethics-explorer-modal .modal-body{max-height:80vh!important}#simulation-modal.ethics-explorer-modal .simulation-container{background:transparent!important;padding:0!important;border:none!important}#simulation-modal.bias-fairness-modal .modal-body{padding:30px!important}@media (width <= 768px){#simulation-modal .modal-dialog{width:95vw;max-height:95vh}#simulation-modal .modal-body{padding:16px!important;max-height:80vh!important}#simulation-modal .actions-container{flex-direction:column}}#simulation-modal[aria-hidden=true]{display:none!important}#simulation-modal:focus{outline:none}#simulation-modal .modal-close:focus{outline:2px solid #3b82f6;outline-offset:2px}#simulation-modal .simulation-container .svg-renderer{overflow:visible!important}#simulation-modal .simulation-container canvas{max-width:100%!important;max-height:100%!important;width:auto!important;height:auto!important;object-fit:contain!important}#simulation-modal .simulation-container canvas[data-engine=webgl]{display:block!important;touch-action:manipulation!important}#simulation-modal .screen-reader-only{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important}#simulation-modal .svg-renderer:focus,#simulation-modal canvas:focus{outline:2px solid var(--color-primary, #007acc)!important;outline-offset:2px!important}}@layer components{.badge-modal-backdrop{position:fixed;inset:0;width:100%;height:100%;background:#000c;backdrop-filter:blur(4px);z-index:10001;display:flex;align-items:center;justify-content:center;animation:fade-in .3s ease-out}.badge-modal{background:linear-gradient(135deg,#2c5aa0,#1e3a5f);border-radius:20px;box-shadow:0 20px 60px #00000040,0 0 0 1px #fff3;max-width:500px;width:90%;max-height:90vh;overflow:hidden;position:relative;transform-origin:center}.badge-modal-content{padding:2.5rem 2rem 2rem;text-align:center;color:#fff;position:relative;z-index:10}.badge-modal-content>*{position:relative;z-index:20}.badge-visual-container{margin-bottom:2rem;position:relative;z-index:30}.badge-shield{position:relative;display:inline-block;font-size:4rem;line-height:1;border-radius:50%;padding:1rem;transition:all .3s ease;transform:scale(0);animation:badge-entrance 1.2s cubic-bezier(.68,-.55,.265,1.55) .3s forwards}.badge-shield:before{content:"";position:absolute;inset:-15px;background:radial-gradient(circle,rgb(74 144 226 / 40%) 0%,rgb(74 144 226 / 10%) 50%,transparent 70%);border-radius:50%;animation:pulse-glow 2s ease-in-out infinite;z-index:-1}.badge-shield-emoji{display:block;position:relative;z-index:3;filter:drop-shadow(0 2px 4px rgb(0 0 0 / 30%));animation:shield-glow 3s ease-in-out infinite}.badge-category-emoji{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);font-size:2.2rem;z-index:4;animation:category-entrance .8s cubic-bezier(.68,-.55,.265,1.55) .8s forwards;filter:drop-shadow(0 1px 3px rgb(0 0 0 / 40%))}.badge-sidekick-emoji{position:absolute;top:-.5rem;right:-.5rem;font-size:1.4rem;z-index:5;transform:scale(0) rotate(-180deg);animation:sidekick-bounce 1s cubic-bezier(.68,-.55,.265,1.55) 1.2s forwards;filter:drop-shadow(0 1px 2px rgb(0 0 0 / 30%))}.badge-glow-low{box-shadow:0 0 20px #4a90e266,0 0 40px #4a90e233;animation:pulse-gentle-glow 3s ease-in-out infinite}.badge-glow-medium{box-shadow:0 0 30px #e74c3c7f,0 0 60px #e74c3c4d,0 0 90px #e74c3c1a;animation:pulse-medium-glow 2.5s ease-in-out infinite}.badge-glow-high{box-shadow:0 0 40px #f1c40f99,0 0 80px #f1c40f66,0 0 120px #f1c40f33;animation:pulse-intense-glow 2s ease-in-out infinite,shimmer-effect 4s linear infinite}.badge-glow-brilliant{box-shadow:0 0 50px #8a2be2b3,0 0 100px #8a2be27f,0 0 150px #8a2be24d;animation:pulse-brilliant-glow 1.8s ease-in-out infinite,shimmer-effect 3s linear infinite}.badge-glow-radiant{box-shadow:0 0 60px #32cd32cc,0 0 120px #32cd3299,0 0 180px #32cd3266;animation:pulse-radiant-glow 1.6s ease-in-out infinite,shimmer-effect 2.5s linear infinite}.badge-glow-transcendent{box-shadow:0 0 70px #ff1493e5,0 0 140px #ff1493b3,0 0 210px #ff14937f;animation:pulse-transcendent-glow 1.4s ease-in-out infinite,shimmer-effect 2s linear infinite}.badge-glow-legendary{box-shadow:0 0 80px #ff8c00,0 0 160px #ff8c00cc,0 0 240px #ff8c0099;animation:pulse-legendary-glow 1.2s ease-in-out infinite,shimmer-effect 1.8s linear infinite}.badge-glow-mythic{box-shadow:0 0 90px indigo,0 0 180px #4b0082cc,0 0 270px #4b008299,0 0 360px #4b008266;animation:pulse-mythic-glow 1s ease-in-out infinite,shimmer-effect 1.5s linear infinite}.badge-glow-cosmic{box-shadow:0 0 100px #0ff,0 0 200px #00ffffe5,0 0 300px #00ffffb3,0 0 400px #00ffff7f;animation:pulse-cosmic-glow .8s ease-in-out infinite,shimmer-effect 1.2s linear infinite}.badge-glow-divine{box-shadow:0 0 120px gold,0 0 240px #ffd700e5,0 0 360px #ffd700cc,0 0 480px #ffd70099,0 0 600px #ffd70066;animation:pulse-divine-glow .6s ease-in-out infinite,shimmer-effect 1s linear infinite}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes pulse-gentle-glow{0%,to{box-shadow:0 0 20px #4a90e266,0 0 40px #4a90e233}50%{box-shadow:0 0 25px #4a90e27f,0 0 50px #4a90e24d}}@keyframes pulse-medium-glow{0%,to{box-shadow:0 0 30px #e74c3c7f,0 0 60px #e74c3c4d,0 0 90px #e74c3c1a}50%{box-shadow:0 0 35px #e74c3c99,0 0 70px #e74c3c66,0 0 105px #e74c3c33}}@keyframes pulse-intense-glow{0%,to{box-shadow:0 0 40px #f1c40f99,0 0 80px #f1c40f66,0 0 120px #f1c40f33}50%{box-shadow:0 0 50px #f1c40fcc,0 0 100px #f1c40f99,0 0 150px #f1c40f4d}}@keyframes pulse-brilliant-glow{0%,to{box-shadow:0 0 50px #8a2be2b3,0 0 100px #8a2be27f,0 0 150px #8a2be24d}50%{box-shadow:0 0 60px #8a2be2e5,0 0 120px #8a2be2b3,0 0 180px #8a2be27f}}@keyframes pulse-radiant-glow{0%,to{box-shadow:0 0 60px #32cd32cc,0 0 120px #32cd3299,0 0 180px #32cd3266}50%{box-shadow:0 0 70px #32cd32,0 0 140px #32cd32cc,0 0 210px #32cd3299}}@keyframes pulse-transcendent-glow{0%,to{box-shadow:0 0 70px #ff1493e5,0 0 140px #ff1493b3,0 0 210px #ff14937f}50%{box-shadow:0 0 80px #ff1493,0 0 160px #ff1493e5,0 0 240px #ff1493b3}}@keyframes pulse-legendary-glow{0%,to{box-shadow:0 0 80px #ff8c00,0 0 160px #ff8c00cc,0 0 240px #ff8c0099}50%{box-shadow:0 0 90px #ff8c00,0 0 180px #ff8c00,0 0 270px #ff8c00cc}}@keyframes pulse-mythic-glow{0%,to{box-shadow:0 0 90px indigo,0 0 180px #4b0082cc,0 0 270px #4b008299,0 0 360px #4b008266}50%{box-shadow:0 0 100px indigo,0 0 200px indigo,0 0 300px #4b0082cc,0 0 400px #4b008299}}@keyframes pulse-cosmic-glow{0%,to{box-shadow:0 0 100px #0ff,0 0 200px #00ffffe5,0 0 300px #00ffffb3,0 0 400px #00ffff7f}50%{box-shadow:0 0 120px #0ff,0 0 240px #0ff,0 0 360px #00ffffe5,0 0 480px #00ffffb3}}@keyframes pulse-divine-glow{0%,to{box-shadow:0 0 120px gold,0 0 240px #ffd700e5,0 0 360px #ffd700cc,0 0 480px #ffd70099,0 0 600px #ffd70066}50%{box-shadow:0 0 140px gold,0 0 280px gold,0 0 420px gold,0 0 560px #ffd700cc,0 0 700px #ffd70099}}.badge-glow-brilliant:before,.badge-glow-radiant:before,.badge-glow-transcendent:before,.badge-glow-legendary:before,.badge-glow-mythic:before,.badge-glow-cosmic:before,.badge-glow-divine:before{content:"";position:absolute;inset:-2px;background:linear-gradient(45deg,transparent,rgb(255 255 255 / 40%),transparent);background-size:200% 200%;border-radius:inherit;z-index:-1;animation:shimmer-effect 1s linear infinite}.particles-container{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:hidden;z-index:0}.floating-particle{position:absolute;background:radial-gradient(circle,#fffc,#fff3);border-radius:50%;animation:float-up linear infinite}@keyframes float-up{0%{transform:translateY(100vh) translate(0) scale(0);opacity:0}10%{opacity:1;transform:translateY(90vh) translate(0) scale(1)}90%{opacity:.8;transform:translateY(10vh) translate(var(--drift)) scale(.5)}to{transform:translateY(-10vh) translate(var(--drift)) scale(0);opacity:0}}@keyframes badge-entrance{0%{transform:scale(0) rotate(-180deg);opacity:0}60%{transform:scale(1.15) rotate(20deg)}80%{transform:scale(.95) rotate(-10deg)}to{transform:scale(1) rotate(0);opacity:1}}@keyframes shield-glow{0%,to{filter:drop-shadow(0 2px 4px rgb(0 0 0 / 30%))}50%{filter:drop-shadow(0 2px 8px rgb(74 144 226 / 60%)) drop-shadow(0 0 15px rgb(74 144 226 / 40%))}}@keyframes category-entrance{0%{transform:translate(-50%,-50%) scale(0) rotate(90deg);opacity:0}60%{transform:translate(-50%,-50%) scale(1.1) rotate(-10deg)}to{transform:translate(-50%,-50%) scale(1) rotate(0);opacity:1}}@keyframes sidekick-bounce{0%{transform:scale(0) rotate(-180deg);opacity:0}50%{transform:scale(1.3) rotate(10deg)}70%{transform:scale(.9) rotate(-5deg)}85%{transform:scale(1.1) rotate(2deg)}to{transform:scale(1) rotate(0);opacity:1}}.badge-quote{font-size:1.1rem;font-style:italic;line-height:1.6;margin:0 0 1.5rem;color:#ffffffe5!important;max-width:400px;margin-left:auto;margin-right:auto;min-height:3rem;display:block;word-wrap:break-word;overflow:hidden;white-space:nowrap;width:0;animation:typewriter 1.5s steps(30) 1.2s forwards,blink-cursor .6s step-end 1.2s 2;border-right:2px solid rgb(255 255 255 / 80%)}@keyframes typewriter{0%{width:0}to{width:100%}}@keyframes blink-cursor{0%,50%{border-right-color:#fffc}51%,to{border-right-color:transparent}}.badge-title{font-size:2rem;font-weight:700;margin:0 0 1rem;background:linear-gradient(135deg,#fff,#e0e0e0);background-clip:text;-webkit-text-fill-color:transparent;transform:translateY(30px);opacity:0;animation:text-slide-up .5s ease-out .8s forwards}.badge-reason{transform:translateY(20px);opacity:0;animation:text-slide-up .5s ease-out 2.8s forwards;color:#ffffffe5!important;font-size:1rem;line-height:1.5;margin-bottom:.5rem}.badge-timestamp{transform:translateY(20px);opacity:0;animation:text-slide-up .5s ease-out 3s forwards;color:#ffffffe5!important;font-size:.9rem;line-height:1.4}@keyframes text-slide-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.badge-text-content{margin-bottom:2rem}.badge-modal-footer{margin-top:2rem}.badge-close-btn{background:linear-gradient(135deg,#fff,#f8f9fa);color:#4a90e2;border:2px solid rgb(255 255 255 / 30%);padding:.75rem 2rem;border-radius:25px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #0000001a;min-width:160px}.badge-close-btn:hover{background:linear-gradient(135deg,#f8f9fa,#e9ecef);color:#357abd;box-shadow:0 6px 20px #00000026;transform:translateY(-2px);border-color:#ffffff7f}.badge-close-btn:active{transform:translateY(0);box-shadow:0 2px 8px #4a90e266}@media (width <= 768px){.badge-modal{width:95%;margin:var(--container-padding);border-radius:15px}.badge-modal-content{padding:calc(var(--container-padding) * 1.25) var(--container-padding) var(--container-padding)}.badge-shield{font-size:3.5rem;padding:calc(var(--container-padding) * .5)}.badge-category-emoji{font-size:2rem}.badge-sidekick-emoji{font-size:1.25rem;top:-.25rem;right:-.25rem}.badge-title{font-size:calc(1.75rem * var(--font-scale))}.badge-quote{font-size:calc(1rem * var(--font-scale));max-width:100%;margin:0 0 1rem;padding:0 calc(var(--container-padding) * .3);min-height:2.5rem;word-wrap:break-word;overflow-wrap:break-word;hyphens:auto}.badge-close-btn{padding:calc(var(--container-padding) * .4) calc(var(--container-padding) * .9);font-size:calc(.95rem * var(--font-scale));min-width:140px}}@media (width <= 480px){.badge-modal{width:90%;max-width:none;border-radius:15px;max-height:85vh;margin:calc(var(--container-padding) * 1.1) auto}.badge-modal-content{padding:calc(var(--container-padding) * .8) var(--container-padding) var(--container-padding);display:flex;flex-direction:column;justify-content:flex-start}.badge-shield{font-size:calc(3rem * var(--font-scale))}.badge-category-emoji{font-size:calc(1.75rem * var(--font-scale))}.badge-title{font-size:calc(1.5rem * var(--font-scale))}.badge-quote{font-size:calc(.95rem * var(--font-scale));padding:0 calc(var(--container-padding) * .15);min-height:2.25rem;word-wrap:break-word;overflow-wrap:break-word;hyphens:auto}}@media (width <= 360px){.badge-modal{width:85%;margin:calc(var(--container-padding) * .8) auto;max-height:80vh}.badge-modal-content{padding:calc(var(--container-padding) * .7) calc(var(--container-padding) * .4) calc(var(--container-padding) * .4)}.badge-shield{font-size:calc(2.5rem * var(--font-scale))}.badge-title{font-size:calc(1.35rem * var(--font-scale))}.badge-quote{font-size:calc(.9rem * var(--font-scale));padding:0 calc(var(--container-padding) * .15);min-height:2rem;word-wrap:break-word;overflow-wrap:break-word;hyphens:auto}.badge-close-btn{padding:calc(var(--container-padding) * .3) calc(var(--container-padding) * .7);font-size:calc(.9rem * var(--font-scale));min-width:120px}}.no-motion .badge-modal-backdrop,.no-motion .badge-shield,.no-motion .badge-close-btn{animation:none!important;transition:none!important}.no-motion .badge-glow-low,.no-motion .badge-glow-medium,.no-motion .badge-glow-high,.no-motion .badge-glow-brilliant,.no-motion .badge-glow-radiant,.no-motion .badge-glow-transcendent,.no-motion .badge-glow-legendary,.no-motion .badge-glow-mythic,.no-motion .badge-glow-cosmic,.no-motion .badge-glow-divine{animation:none!important}.no-motion .badge-glow-high:before,.no-motion .badge-glow-brilliant:before,.no-motion .badge-glow-radiant:before,.no-motion .badge-glow-transcendent:before,.no-motion .badge-glow-legendary:before,.no-motion .badge-glow-mythic:before,.no-motion .badge-glow-cosmic:before,.no-motion .badge-glow-divine:before{animation:none!important}.badge-close-btn:focus{outline:2px solid #fff;outline-offset:2px}.high-contrast-border .badge-modal{border:2px solid #fff;background:#000}.high-contrast-border .badge-title{color:#fff;-webkit-text-fill-color:#fff}.high-contrast-border .badge-quote,.high-contrast-border .badge-reason,.high-contrast-border .badge-timestamp{color:#ffffffe5}.emoji-bubbles-container{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:1;border-radius:0}.emoji-bubbles-container .bubbling-emoji{position:absolute;opacity:0;z-index:1;animation:bubble-up linear infinite;filter:blur(.5px);bottom:0;left:50%;pointer-events:none}.emoji-bubbles-container .bubbling-emoji.category{font-size:1.5rem}.emoji-bubbles-container .bubbling-emoji.sidekick{font-size:1.2rem}@keyframes bubble-up{0%{transform:translateY(0) translate(-50%) scale(.2) rotate(0);opacity:0}10%{opacity:.4;transform:translateY(-20px) translate(calc(-50% + var(--drift-x, 0px))) scale(.4) rotate(15deg)}25%{opacity:.7;transform:translateY(-50px) translate(calc(-50% + var(--drift-x, 0px) * 1.2)) scale(.6) rotate(-10deg)}50%{opacity:.8;transform:translateY(-90px) translate(calc(-50% + var(--drift-x, 0px) * 1.5)) scale(.9) rotate(20deg)}75%{opacity:.6;transform:translateY(-130px) translate(calc(-50% + var(--drift-x, 0px) * 1.2)) scale(.7) rotate(-15deg)}90%{opacity:.3;transform:translateY(-160px) translate(calc(-50% + var(--drift-x, 0px) * .8)) scale(.4) rotate(10deg)}to{transform:translateY(-180px) translate(calc(-50% + var(--drift-x, 0px) * .5)) scale(.2) rotate(0);opacity:0}}}@layer components{.card{background:var(--background-secondary, #fff);border-radius:12px;box-shadow:0 2px 8px #00000012;border:1px solid #e5e7eb;padding:var(--container-padding, 20px) var(--container-padding, 24px);margin:0;display:flex;flex-direction:column;gap:12px;transition:box-shadow .18s,border-color .18s}.card:focus-within,.card:hover{box-shadow:0 4px 16px #3b82f61f;border-color:#3b82f6}.card-header{font-size:1.1rem;font-weight:600;margin-bottom:4px;color:var(--text-primary, #1f2937)}.card-content{flex:1 1 auto;color:var(--text-secondary, #374151);font-size:1rem}.card-actions{display:flex;gap:8px;margin-top:8px;align-items:center}.card-actions .btn-primary{flex:1}.card-action-btn{background:#3b82f6;color:#fff;border:none;border-radius:6px;padding:7px 16px;font-size:.95rem;cursor:pointer;transition:background .15s}.card-action-btn:hover,.card-action-btn:focus{background:#2563eb;outline:2px solid #2563eb}.simulation-quick-start-btn{background:var(--color-secondary)!important;color:var(--color-white)!important;border:none!important;border-radius:var(--radius-md)!important;padding:var(--spacing-2) var(--spacing-3)!important;font-size:var(--font-size-sm)!important;font-weight:var(--font-weight-medium)!important;cursor:pointer;transition:all var(--transition-base);flex-shrink:0}.simulation-quick-start-btn:hover{background:var(--color-secondary-dark)!important;transform:translateY(-1px)}.simulation-quick-start-btn:focus{outline:2px solid var(--color-secondary);outline-offset:2px}body.dark-mode .card{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);box-shadow:0 2px 8px #0000004d}body.dark-mode .card:focus-within,body.dark-mode .card:hover{box-shadow:0 4px 16px var(--theme-shadow-hover);border-color:var(--color-primary)}body.dark-mode .card-header{color:var(--theme-text-primary)}body.dark-mode .card-content{color:var(--theme-text-secondary)}body.dark-mode .card-action-btn{background:var(--color-primary);color:#fff;border:1px solid var(--color-primary)}body.dark-mode .card-action-btn:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}body.dark-mode .card-action-btn.btn-secondary{background:var(--theme-bg-primary);color:var(--theme-text-primary);border:1px solid var(--theme-border)}body.dark-mode .card-action-btn.btn-secondary:hover{background:var(--theme-bg-secondary);border-color:var(--theme-border-hover)}body.dark-mode .simulation-quick-start-btn{background:var(--color-secondary)!important;color:#fff!important;border:1px solid var(--color-secondary)!important}body.dark-mode .simulation-quick-start-btn:hover{background:var(--color-secondary-dark)!important;border-color:var(--color-secondary-dark)!important}body.dark-mode .simulation-quick-start-btn:focus{outline:2px solid var(--color-secondary)!important}body.dark-mode .card.card-primary{border-color:var(--color-primary);background:#4a9eff0d}body.dark-mode .card.card-success{border-color:var(--color-success);background:#4caf500d}body.dark-mode .card.card-warning{border-color:var(--color-warning);background:#ffc1070d}body.dark-mode .card.card-error{border-color:var(--color-error);background:#f443360d}}@layer components{.form-group{margin-bottom:1.5rem}label{display:block;margin-bottom:.5rem;font-weight:500}input[type=text],input[type=email],input[type=password],.custom-input{width:100%;padding:.75rem 1rem;border:1.5px solid var(--input-border, #bdbdbd);border-radius:.5rem;font-size:1rem;background:var(--input-bg, #fff);color:var(--input-fg, #222);transition:border-color .2s;box-sizing:border-box}input:focus,.custom-input:focus{border-color:var(--input-focus, #1a73e8);outline:none}.custom-button{display:inline-block;padding:.75rem 1.5rem;background:var(--btn-bg, #1a73e8);color:var(--btn-fg, #fff);border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.custom-button:hover,.custom-button:focus{background:var(--btn-hover, #1558b0)}input[aria-invalid=true],.custom-input[aria-invalid=true]{border-color:#e53935}.input-error{color:#e53935;font-size:.95rem;margin-top:.25rem}body.dark-mode .form-group,body.dark-mode label{color:var(--theme-text-primary)}body.dark-mode input[type=text],body.dark-mode input[type=email],body.dark-mode input[type=password],body.dark-mode .custom-input{background:var(--theme-bg-primary);color:var(--theme-text-primary);border:1.5px solid var(--theme-border)}body.dark-mode input[type=text]:focus,body.dark-mode input[type=email]:focus,body.dark-mode input[type=password]:focus,body.dark-mode .custom-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #4a9eff33}body.dark-mode input[type=text]::placeholder,body.dark-mode input[type=email]::placeholder,body.dark-mode input[type=password]::placeholder,body.dark-mode .custom-input::placeholder{color:var(--theme-text-muted)}body.dark-mode .custom-button{background:var(--color-primary);color:#fff;border:1px solid var(--color-primary)}body.dark-mode .custom-button:hover,body.dark-mode .custom-button:focus{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}body.dark-mode .custom-button.btn-secondary{background:var(--theme-bg-secondary);color:var(--theme-text-primary);border:1px solid var(--theme-border)}body.dark-mode .custom-button.btn-secondary:hover{background:var(--theme-bg-primary);border-color:var(--theme-border-hover)}body.dark-mode input[aria-invalid=true],body.dark-mode .custom-input[aria-invalid=true]{border-color:var(--color-error)}body.dark-mode .input-error{color:var(--color-error)}body.dark-mode input:disabled,body.dark-mode .custom-input:disabled{background:var(--theme-bg-secondary);color:var(--theme-text-muted);border-color:var(--theme-border);opacity:.6;cursor:not-allowed}body.dark-mode .custom-button:disabled{background:var(--theme-bg-secondary);color:var(--theme-text-muted);border-color:var(--theme-border);opacity:.6;cursor:not-allowed}}@layer components{.tab-container{display:flex;flex-direction:column;border:1px solid #dee2e6;border-radius:4px;background-color:#fff;font-family:Arial,sans-serif}.tab-container__header{display:flex;background-color:#f8f9fa;border-bottom:1px solid #dee2e6;overflow-x:auto;min-height:40px}.tab-container__tab{display:flex;align-items:center;padding:8px 16px;border:none;background-color:transparent;border-bottom:3px solid transparent;cursor:pointer;font-size:12px;color:#333;white-space:nowrap;min-width:0;flex-shrink:0;position:relative;transition:all .2s ease}.tab-container__tab:hover{background-color:#e9ecef}.tab-container__tab--active{background-color:#fff;border-bottom-color:#007bff;font-weight:700;color:#007bff}.tab-container__tab--disabled{color:#999;cursor:not-allowed;opacity:.6}.tab-container__tab--disabled:hover{background-color:transparent}.tab-container__tab-icon{margin-right:6px;font-size:14px}.tab-container__tab-title{flex:1;overflow:hidden;text-overflow:ellipsis}.tab-container__tab-badge{margin-left:6px;background-color:#dc3545;color:#fff;border-radius:50%;font-size:10px;font-weight:700;min-width:16px;height:16px;display:flex;align-items:center;justify-content:center}.tab-container__tab-close{margin-left:8px;font-size:14px;color:#666;cursor:pointer;padding:2px;border-radius:2px;transition:color .2s ease,background-color .2s ease}.tab-container__tab-close:hover{color:#dc3545;background-color:#f8f9fa}.tab-container__content{flex:1;padding:16px;background-color:#fff;overflow:auto}.progress-stepper{display:flex;align-items:center;font-family:Arial,sans-serif;padding:16px 0}.progress-stepper--vertical{flex-direction:column;align-items:flex-start}.progress-stepper__step{display:flex;align-items:center;position:relative;flex:1;min-width:0;cursor:pointer;transition:opacity .2s ease}.progress-stepper__step:hover:not(.progress-stepper__step--disabled){opacity:.8}.progress-stepper__step--disabled{cursor:not-allowed;opacity:.6}.progress-stepper--vertical .progress-stepper__step{flex-direction:column;align-items:flex-start;width:100%;padding:12px 0}.progress-stepper__circle{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;position:relative;z-index:10;transition:all .3s ease}.progress-stepper__circle--completed{background-color:#28a745;color:#fff;border:2px solid #28a745}.progress-stepper__circle--active{background-color:#007bff;color:#fff;border:2px solid #007bff}.progress-stepper__circle--inactive{background-color:#e9ecef;color:#666;border:2px solid #e9ecef}.progress-stepper__circle--disabled{background-color:#f8f9fa;color:#999;border:2px solid #e9ecef;opacity:.6}.progress-stepper__line{flex:1;height:2px;background-color:#e9ecef;position:relative;z-index:5}.progress-stepper--vertical .progress-stepper__line{width:2px;height:40px;margin-left:14px}.progress-stepper__line--completed{background-color:#28a745}.progress-stepper__content{margin-left:12px;display:flex;flex-direction:column}.progress-stepper--vertical .progress-stepper__content{margin-left:12px;margin-top:-20px}.progress-stepper__title{font-size:11px;font-weight:700;color:#333;margin-bottom:2px}.progress-stepper__description{font-size:10px;color:#666;line-height:1.3}.progress-stepper__step--active .progress-stepper__title{color:#007bff}.split-pane{display:flex;height:100%;position:relative;overflow:hidden}.split-pane--vertical{flex-direction:column}.split-pane__pane{overflow:auto;background-color:#fff;border:1px solid #e9ecef}.split-pane__pane--left,.split-pane__pane--top{border-right:none;border-bottom:none}.split-pane__pane--right,.split-pane__pane--bottom{border-left:none;border-top:none}.split-pane__splitter{background-color:#e9ecef;cursor:col-resize;user-select:none;position:relative;transition:background-color .2s ease}.split-pane--vertical .split-pane__splitter{cursor:row-resize}.split-pane__splitter:hover{background-color:#dee2e6}.split-pane__splitter--resizing{background-color:#007bff}.split-pane__splitter-grip{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;display:flex;align-items:center;justify-content:center}.split-pane__splitter-grip:before{content:"";width:2px;height:16px;background-color:#999;box-shadow:4px 0 #999,-4px 0 #999}.split-pane--vertical .split-pane__splitter-grip:before{width:16px;height:2px;box-shadow:0 4px #999,0 -4px #999}.tree-view{background-color:#fff;border:1px solid #e9ecef;border-radius:4px;font-family:Arial,sans-serif;font-size:13px;overflow:auto;position:relative}.tree-view__node{display:flex;align-items:center;padding:4px 8px;cursor:pointer;user-select:none;position:relative;white-space:nowrap;transition:background-color .2s ease}.tree-view__node:hover{background-color:#f5f5f5}.tree-view__node--selected{background-color:#e3f2fd;color:#007bff}.tree-view__node--disabled{color:#999;cursor:not-allowed;opacity:.6}.tree-view__node--disabled:hover{background-color:transparent}.tree-view__expand-icon{width:16px;height:16px;display:flex;align-items:center;justify-content:center;margin-right:4px;font-size:10px;color:#666;cursor:pointer;transition:transform .2s ease}.tree-view__expand-icon--expanded{transform:rotate(90deg)}.tree-view__icon{width:16px;height:16px;display:flex;align-items:center;justify-content:center;margin-right:6px;font-size:14px;color:#666}.tree-view__checkbox{width:14px;height:14px;border:1px solid #999;border-radius:2px;margin-right:6px;display:flex;align-items:center;justify-content:center;font-size:10px;transition:all .2s ease}.tree-view__checkbox--checked{background-color:#007bff;border-color:#007bff;color:#fff}.tree-view__label{flex:1;overflow:hidden;text-overflow:ellipsis}.tree-view__scrollbar{position:absolute;right:0;top:0;width:8px;height:100%;background-color:#f0f0f0}.tree-view__scrollbar-thumb{background-color:silver;border-radius:4px;cursor:pointer;transition:background-color .2s ease}.tree-view__scrollbar-thumb:hover{background-color:#a0a0a0}.file-upload{border:2px dashed #dee2e6;border-radius:8px;padding:32px;text-align:center;background-color:#f8f9fa;font-family:Arial,sans-serif;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.file-upload:hover{border-color:#007bff;background-color:#f0f8ff}.file-upload--drag-over{border-color:#007bff;border-style:solid;background-color:#e3f2fd;transform:scale(1.02)}.file-upload--disabled{opacity:.6;cursor:not-allowed;background-color:#f8f9fa}.file-upload--disabled:hover{border-color:#dee2e6;background-color:#f8f9fa;transform:none}.file-upload__icon{font-size:48px;color:#6c757d;margin-bottom:16px;display:block}.file-upload__text{font-size:14px;color:#333;margin-bottom:16px;line-height:1.4}.file-upload__button{background-color:#007bff;color:#fff;border:none;border-radius:4px;padding:8px 16px;font-size:12px;cursor:pointer;transition:background-color .2s ease}.file-upload__button:hover{background-color:#0056b3}.file-upload__file-list{margin-top:16px;text-align:left;max-height:150px;overflow-y:auto}.file-upload__file-item{display:flex;align-items:center;padding:8px 12px;background-color:#fff;border:1px solid #e9ecef;border-radius:4px;margin-bottom:4px;font-size:12px}.file-upload__file-item--error{border-color:#dc3545;background-color:#ffeaea}.file-upload__file-icon{margin-right:8px;color:#666}.file-upload__file-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-upload__file-size{color:#666;margin-left:8px;margin-right:8px}.file-upload__file-remove{color:#dc3545;cursor:pointer;font-weight:700;padding:2px 6px;border-radius:2px;transition:background-color .2s ease}.file-upload__file-remove:hover{background-color:#f8d7da}.file-upload__progress{position:absolute;bottom:0;left:0;right:0;height:4px;background-color:#e9ecef}.file-upload__progress-bar{height:100%;background-color:#007bff;transition:width .3s ease}.file-upload__progress-text{position:absolute;bottom:8px;left:50%;transform:translate(-50%);font-size:11px;color:#333;background-color:#ffffffe5;padding:2px 8px;border-radius:4px}.tab-container--error{border-color:#dc3545}.tab-container__tab--error{border-bottom-color:#dc3545;color:#dc3545}.progress-stepper__step--error .progress-stepper__circle{background-color:#dc3545;border-color:#dc3545;color:#fff}.tree-view--error{border-color:#dc3545}.file-upload--error{border-color:#dc3545;background-color:#ffeaea}.tab-container--loading{opacity:.7;pointer-events:none}.progress-stepper--loading .progress-stepper__circle{animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.tab-container__tab--disabled,.progress-stepper__step--disabled,.tree-view__node--disabled,.file-upload--disabled{filter:grayscale(100%)}@media (width <= 768px){.tab-container__tab{padding:6px 12px;font-size:11px}.progress-stepper__circle{width:24px;height:24px;font-size:10px}.split-pane__splitter{min-width:8px;min-height:8px}.tree-view__node{padding:6px}.file-upload{padding:20px}.file-upload__icon{font-size:36px}}.tab-container__tab:focus,.progress-stepper__step:focus,.tree-view__node:focus,.file-upload:focus,.file-upload__button:focus,.tree-view__expand-icon:focus{outline:2px solid #007bff;outline-offset:2px}@media (prefers-reduced-motion: reduce){.tab-container__tab,.progress-stepper__circle,.progress-stepper__line,.split-pane__splitter,.tree-view__node,.tree-view__expand-icon,.file-upload,.file-upload__progress-bar,.file-upload__button,.tab-container__tab-close,.tree-view__checkbox{transition:none;animation:none}.file-upload--drag-over{transform:none}}@media (prefers-contrast: high){.tab-container,.split-pane__pane,.tree-view,.file-upload{border-width:2px}.tab-container__tab--active{border-bottom-width:4px}.progress-stepper__circle{border-width:3px}.progress-stepper__line{height:3px}.tree-view__checkbox{border-width:2px}.file-upload{border-width:3px}.tab-container__tab--active{color:#0056b3;border-bottom-color:#0056b3}.progress-stepper__circle--active{background-color:#0056b3;border-color:#0056b3}.tree-view__node--selected{background-color:#0056b3;color:#fff}}}@layer components{.header .header-container,#navigation-container .header-container{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);width:100%;box-sizing:border-box}.header .logo,#navigation-container .logo{display:flex;align-items:center;max-width:100%}.header .main-nav,#navigation-container .main-nav{flex:1 1 auto;min-width:0}@media (min-width: 768px){.header .header-container,#navigation-container .header-container{gap:var(--space-6)}}@media (min-width: 1024px){.header .header-container,#navigation-container .header-container{gap:var(--space-8)}}#navigation-container{width:100%;margin:0 auto;box-sizing:border-box}#navigation-container>*{width:100%;box-sizing:border-box}#navigation-container .header-container{width:100%;max-width:100%;margin:0 auto;padding-left:var(--container-padding);padding-right:var(--container-padding);box-sizing:border-box}@media (min-width: 768px){#navigation-container{padding-left:var(--container-padding);padding-right:var(--container-padding);max-width:100%}#navigation-container .header-container{max-width:var(--content-width-normal);padding-left:var(--container-padding);padding-right:var(--container-padding)}}@media (min-width: 1024px){#navigation-container{padding-left:var(--container-padding);padding-right:var(--container-padding);max-width:var(--container-xl)}#navigation-container .header-container{max-width:var(--container-xl);padding-left:var(--container-padding);padding-right:var(--container-padding)}}header a,.header a,nav a,.main-nav a,.nav-link{text-decoration:none;text-decoration-thickness:initial;text-underline-offset:initial}header a:hover,.header a:hover,nav a:hover,.main-nav a:hover,.nav-link:hover{text-decoration:none}@media (prefers-reduced-motion: reduce){.animated,.fade,.slide,.mega-menu-item:hover,.mega-menu-item:focus{animation:none!important;transition:none!important;transform:none!important}}@media (prefers-reduced-data: reduce){.thumbnail,.hero-image,.background-image,.hero-demo:before{display:none}}#settings-nav{position:relative}.settings-menu{z-index:var(--z-dropdown-hover);transition:opacity .2s ease,visibility .2s ease}#settings-nav:hover+.settings-menu,.nav-item-dropdown:hover .settings-menu{display:block;visibility:visible;opacity:1;z-index:var(--z-dropdown-hover)}.nav-group-community .nav-item-dropdown{position:relative}.nav-group-community .nav-item-dropdown:after{content:"";position:absolute;left:0;right:0;top:100%;height:var(--space-2);display:none}.nav-group-community .nav-item-dropdown:hover:after,.nav-group-community .dropdown-menu:hover:after{display:block}.nav-item-dropdown{position:relative}.nav-item-dropdown:hover{z-index:var( --z-dropdown-hover )}@media (hover: hover) and (pointer: fine){.nav-group-auth .nav-item-dropdown:hover #profile-menu,.nav-group-auth #profile-nav:hover+#profile-menu{display:block;visibility:visible;opacity:1;z-index:var(--z-dropdown-hover)}.nav-group-auth .nav-item-dropdown #profile-menu{position:absolute;top:calc(100% + var(--space-1));right:0;left:auto;white-space:nowrap}}.nav-item-dropdown:hover .settings-menu,.nav-item-dropdown:focus-within .settings-menu{z-index:var(--z-dropdown-hover);display:block!important;visibility:visible!important;opacity:1!important}@media only screen and (width <= 1023px){#main-navigation{right:-100%;transition:right .3s cubic-bezier(.4,0,.2,1)}}@media only screen and (width <= 375px){.main-nav.open,#main-navigation.open{width:90%;max-width:var(--container-xs);padding:var(--space-8) var(--space-4)}.main-nav .nav-group .nav-link{padding:.75rem;font-size:calc(.95rem * var(--font-scale, 1))}}@media only screen and (width <= 360px){.main-nav.open,#main-navigation.open{width:95%;padding:calc(1.5rem * var(--font-scale, 1)) calc(.75rem * var(--font-scale, 1))}.main-nav .nav-group .nav-link{padding:calc(.5rem * var(--font-scale, 1));font-size:calc(.9rem * var(--font-scale, 1))}}@media only screen and (width >= 1024px){.main-nav.open,#main-navigation.open{position:static;width:auto;height:var(--header-h);background:transparent;box-shadow:none;display:flex;opacity:1;visibility:visible;z-index:auto}}.force-visible{display:block!important;visibility:visible!important;opacity:1!important}.nav-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:var(--theme-bg-overlay);z-index:calc(var(--z-navigation, var(--z-overlay)) - 1);opacity:0;visibility:hidden;pointer-events:none;transition:all .3s cubic-bezier(.4,0,.2,1);backdrop-filter:blur(var(--blur-sm));-webkit-backdrop-filter:blur(var(--blur-sm))}.nav-backdrop.open{opacity:1;visibility:visible;pointer-events:auto}@media (width <= 1023px){.main-nav.open~.nav-backdrop,#main-navigation.open~.nav-backdrop,body:has(.main-nav.open) .nav-backdrop,body:has(#main-navigation.open) .nav-backdrop{opacity:1;visibility:visible;pointer-events:auto}}.mobile-nav-close{position:absolute;top:var(--space-4);right:var(--space-4);background:none;border:none;font-size:1.5rem;color:var(--nav-text-color);cursor:pointer;padding:.5rem;border-radius:var(--radius-md);transition:background-color .2s ease;z-index:var(--z-dropdown-hover)}.mobile-nav-close:hover{background-color:var(--theme-shadow-light)}.mobile-nav-close:focus-visible{outline:2px solid var(--theme-border-focus);outline-offset:2px;box-shadow:0 0 0 4px var(--theme-shadow-focus)}.mobile-nav-close:active{background-color:var(--theme-bg-interactive);transform:scale(.95)}@media (width <= 375px){.mobile-nav-close{top:.75rem;right:.75rem;font-size:1.25rem;padding:.375rem}}@media only screen and (max-height: var(--container-lg)) and (orientation: landscape){.main-nav.open,#main-navigation.open{width:60%!important;max-width:var(--container-md)!important;padding:var(--space-4)!important}.nav-group .nav-link{padding:.5rem!important;font-size:.9rem!important;margin-bottom:.25rem!important}.nav-group{gap:.5rem!important}}@media (width <= 428px){.nav-group .nav-link:focus{outline:var(--space-0-5) solid var(--nav-text-color);outline-offset:var(--space-0-5);background:var(--theme-accent-primary)}.nav-group .nav-link{min-height:var(--space-12)}}.force-hidden{display:none!important;visibility:hidden!important;opacity:0!important}.modal.force-visible,.modal.js-open{display:flex!important;visibility:visible!important;opacity:1!important;z-index:var(--modal-z, var(--z-modal))!important}.backdrop.force-visible,.backdrop.js-open{display:block!important;visibility:visible!important;opacity:1!important}.modal-backdrop:has(.pre-launch-modal)~header.header,.modal-backdrop:has(.pre-launch-modal)~.nav-item-dropdown,.modal-backdrop:has(.pre-launch-modal)~.settings-menu{z-index:500!important}body:has(.pre-launch-modal.visible) header.header,body:has(.pre-launch-modal) header.header{z-index:500!important}body:has(.pre-launch-modal.visible) .nav-item-dropdown,body:has(.pre-launch-modal) .nav-item-dropdown,body:has(.pre-launch-modal.visible) .settings-menu,body:has(.pre-launch-modal) .settings-menu{z-index:500!important}.btn.force-visible{display:inline-flex!important;visibility:visible!important;opacity:1!important}.btn.force-primary{background-color:var(--color-primary)!important;color:var(--color-white)!important;border:var(--space-0-5) solid var(--color-primary)!important}header.header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);height:var(--header-h);padding:var(--space-2) var(--space-4);position:fixed;top:0;left:0;right:0;z-index:var(--z-sticky);background:var(--theme-bg-secondary);backdrop-filter:blur(var(--blur-sm));-webkit-backdrop-filter:blur(var(--blur-sm));border-bottom:var(--border-width) solid var(--theme-border-primary);box-shadow:0 var(--border-width) var(--space-0-75) #0000000d,0 var(--border-width) var(--space-0-5) var(--theme-shadow-light);transform:translateY(0);transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),background-color .3s cubic-bezier(.4,0,.2,1),backdrop-filter .3s cubic-bezier(.4,0,.2,1);will-change:transform}@media only screen and (width <= 360px){header.header{height:calc(var(--header-h) * .9);padding:var(--space-2) var(--space-3);gap:var(--space-1)}}@media only screen and (width >= 375px) and (width <= 428px){header.header{height:calc(var(--header-h) * .95);padding:var(--space-2) var(--space-3);gap:var(--space-2)}}@media only screen and (width >= 768px){header.header{height:var(--header-h);padding:var(--space-3) var(--space-5);gap:var(--space-3)}}@media only screen and (width >= 1280px){header.header{padding:var(--space-3) var(--space-6);gap:var(--space-4)}}.header-left{display:flex;align-items:center;gap:var(--space-3);flex:1;flex-flow:row nowrap;min-width:0}.header-right{display:flex;align-items:center;gap:var(--space-2)}@media only screen and (width <= 428px){.header-left,.header-right{gap:var(--space-2)}}@media only screen and (width >= 768px){.header-left{gap:var(--space-4)}.header-right{gap:var(--space-3)}}.logo{display:flex;align-items:center;gap:var(--spacing-3);text-decoration:none;color:inherit;transition:opacity .3s ease,transform .2s ease;align-self:center;order:1}.logo:hover{opacity:var(--hover-opacity);transform:translateY(-var(--border-width))}.logo:focus-visible{outline:2px solid var(--theme-border-focus);outline-offset:2px;border-radius:var(--radius-sm);box-shadow:0 0 0 4px var(--theme-shadow-focus)}.logo:active{transform:translateY(-var(--border-width)) scale(.98)}.logo-image{width:var(--space-15);height:var(--space-15);transition:all .3s ease}.logo-full{height:var(--space-15);width:auto;transition:all .3s cubic-bezier(.4,0,.2,1);border-right:var(--border-width) solid var(--theme-border-secondary);padding-right:var(--spacing-4);margin-right:var(--spacing-2);filter:drop-shadow(0 var(--border-width) var(--space-0-5) var(--theme-shadow-light))}.logo-full:hover{filter:drop-shadow(var(--shadow-base));transform:scale(1.02)}.logo-compact{height:var(--space-11);width:auto;transition:all .3s cubic-bezier(.4,0,.2,1);display:none;filter:drop-shadow(0 var(--border-width) var(--space-0-5) var(--theme-shadow-light))}.breadcrumb-container{background:var(--theme-bg-secondary);backdrop-filter:blur(var(--blur-md));-webkit-backdrop-filter:blur(var(--blur-md));border-bottom:var(--border-width) solid var(--theme-border-secondary);padding:var(--space-3) 0;margin-top:var(--header-height);position:sticky;top:var(--header-height);z-index:var(--z-base);transition:all .3s cubic-bezier(.4,0,.2,1)}.breadcrumb-wrapper{max-width:var(--container-md);margin:0 auto;padding:0 var(--space-6)}.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-1);list-style:none;margin:0;padding:0;font-size:.875rem;line-height:1.5}.breadcrumb-item{display:flex;align-items:center;color:var(--theme-text-secondary);font-weight:400;position:relative}.breadcrumb-item:not(:last-child):after{content:"›";margin:0 var(--space-2);color:var(--theme-text-muted);font-size:var(--space-4);font-weight:300;transition:color .2s ease}.breadcrumb-item a{color:var(--theme-text-secondary);text-decoration:none;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);transition:all .2s cubic-bezier(.4,0,.2,1);font-weight:500;display:flex;align-items:center;gap:var(--space-1);min-height:var(--space-8)}.breadcrumb-item a:hover{color:var(--theme-text-primary);background:var(--theme-bg-secondary);transform:translateY(-var(--border-width))}.breadcrumb-item a:focus{outline:var(--space-0-5) solid var(--theme-border-focus);outline-offset:var(--space-0-5)}.breadcrumb-item.active{color:var(--theme-text-primary);font-weight:600;padding:var(--space-1) var(--space-2)}.breadcrumb-icon{font-size:.875rem;opacity:var(--hover-opacity);transition:opacity .2s ease}.breadcrumb-item:hover .breadcrumb-icon{opacity:1}.breadcrumb-home{font-size:var(--space-4);color:var(--theme-text-secondary)}.breadcrumb-item a:hover .breadcrumb-home{color:var(--theme-text-primary)}.breadcrumb-actions{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}.breadcrumb-action{background:var(--theme-bg-primary);border:var(--border-width) solid var(--theme-border-secondary);border-radius:var(--radius-md);padding:var(--space-1) var(--space-3);font-size:.875rem;font-weight:500;color:var(--theme-text-secondary);text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);min-height:var(--space-8);display:flex;align-items:center;gap:var(--space-1)}.breadcrumb-action:hover{background:var(--theme-bg-primary);border-color:var(--theme-border-focus);color:var(--theme-text-primary);transform:translateY(-var(--border-width));box-shadow:0 var(--space-0-5) var(--space-2) var(--theme-shadow-light)}.breadcrumb-search{display:flex;align-items:center;background:var(--theme-bg-primary);border:var(--border-width) solid var(--theme-border-secondary);border-radius:var(--radius-lg);padding:var(--space-1) var(--space-3);margin-left:var(--space-4);min-width:var(--content-width-xs, 20rem);max-width:var(--content-width-sm, 24rem);transition:all .2s ease}.breadcrumb-search:focus-within{border-color:var(--theme-border-focus);box-shadow:0 0 0 var(--space-0-75) var(--theme-accent-primary)}.breadcrumb-search input{background:transparent;border:none;outline:none;flex:1;font-size:.875rem;color:var(--theme-text-primary);padding:var(--space-1) 0}.breadcrumb-search input::placeholder{color:var(--theme-text-secondary)}.breadcrumb-search-icon{color:var(--theme-text-secondary);font-size:.875rem;margin-right:var(--space-1)}@media (width <= 768px){.breadcrumb-container{padding:var(--space-2) 0;position:static;margin-top:0}.breadcrumb-wrapper{padding:0 var(--space-4)}.breadcrumb{font-size:.8rem;gap:var(--space-1)}.breadcrumb-item a{padding:var(--space-1);min-height:var(--space-8)}.breadcrumb-search{display:none}.breadcrumb-actions{flex-wrap:wrap;gap:var(--space-1)}.breadcrumb-action{font-size:.8rem;padding:var(--space-1) var(--space-2);min-height:var(--space-8)}}@media (width <= 428px){.breadcrumb{overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:var(--space-1)}.breadcrumb::-webkit-scrollbar{display:none}.breadcrumb-item{flex-shrink:0;white-space:nowrap}.breadcrumb-actions{display:none}}.breadcrumb-container.hidden{transform:translateY(-100%);opacity:0}.breadcrumb-container.visible{transform:translateY(0);opacity:1}.breadcrumb-progress{position:absolute;bottom:0;left:0;height:var(--space-0-5);background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);transition:width .3s ease;border-radius:var(--radius-none)}.breadcrumb-compact .breadcrumb-item:not(:first-child,:last-child){display:none}.breadcrumb-compact .breadcrumb-item:nth-last-child(2):before{content:"...";margin:0 var(--space-2);color:var(--theme-text-secondary)}.header-actions{display:flex;align-items:center;gap:var(--space-4);flex-shrink:0}.search-toggle{background:var(--theme-bg-secondary);border:none;color:var(--theme-text-secondary);padding:.75rem;border-radius:var(--radius-md, var(--space-1-5));cursor:var(--cursor-interactive, pointer);transition:var(--transition-fast, all .2s ease);font-size:1.125rem;min-height:var(--touch-target-min, var(--space-11));min-width:var(--touch-target-min, var(--space-11));display:flex;align-items:center;justify-content:center}.search-toggle:hover{background:var(--nav-hover-surface, var(--interactive-bg-hover));color:var(--interactive-fg-hover, var(--theme-text-primary));box-shadow:var(--shadow-hover, 0 4px 12px rgb(0 0 0 / 10%))}.search-toggle:focus-visible{outline:2px solid var(--theme-border-focus);outline-offset:2px;box-shadow:0 0 0 4px var(--theme-shadow-focus)}.search-toggle:active{background:var(--nav-active-surface, var(--interactive-bg-active));transform:scale(var(--active-scale, .98));box-shadow:var(--shadow-active, 0 2px 6px rgb(0 0 0 / 12%))}.auth-section{display:flex;align-items:center;gap:.75rem}.user-avatar{width:var(--space-10);height:var(--space-10);border-radius:var(--radius-full);background:linear-gradient(135deg,var(--brand-primary-500),var(--brand-success-400));display:flex;align-items:center;justify-content:center;color:var(--theme-text-on-accent);font-weight:600;font-size:var(--space-4);border:var(--space-0-5) solid var(--theme-bg-secondary);cursor:pointer;transition:var(--transition-fast, all .2s ease);min-height:var(--touch-target-min, var(--space-11));min-width:var(--touch-target-min, var(--space-11))}.user-avatar:hover{transform:scale(1.05);border-color:var(--accent-primary)}.nav-search{background:var(--theme-bg-primary);border:var(--border-width) solid var(--theme-border-primary);border-radius:var(--radius-md);padding:.5rem;display:flex;align-items:center;gap:.5rem;min-width:var(--content-width-xs, 20rem);transition:all .2s ease}.nav-search input{background:transparent;color:var(--theme-text-primary);border:none;outline:none;flex:1;font-size:calc(.9rem * var(--font-scale, 1));padding:.25rem}.nav-search input::placeholder{color:var(--theme-text-muted, #666)}.nav-search-btn{color:var(--theme-text-secondary, #666);background:none;border:none;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.nav-search-btn:hover{color:var(--theme-text-primary, #333)}.header.header-hidden{transform:translateY(-100%)}.header.header-visible{transform:translateY(0)}.header.scrolled{height:var(--header-h);box-shadow:var(--shadow-lg);background:var(--theme-bg-secondary);backdrop-filter:blur(var(--blur-md));padding:var(--spacing-3) var(--spacing-6)}.header.scrolled.header-visible{transform:translateY(0);height:var(--header-h);box-shadow:var(--shadow-lg);background:var(--theme-bg-secondary);backdrop-filter:blur(var(--blur-md));padding:var(--spacing-3) var(--spacing-6)}@media (width <= 768px){header.header{transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s ease,background-color .25s ease}header.header:has(.main-nav.open),header.header:has(#main-navigation.open){transform:translateY(0)!important}.header.header-visible{transform:translateY(0);transition:transform .3s cubic-bezier(.4,0,.2,1)}.header.scrolled.header-visible{transform:translateY(0);padding:calc(var(--space-4) * .35) var(--space-3);backdrop-filter:blur(var(--blur-md))}}@media only screen and (width <= 428px){.header.header-visible{transform:translateY(0);padding:var(--spacing-2) var(--spacing-3);height:calc(var(--header-h) - var(--space-2-5));transition:all .25s cubic-bezier(.4,0,.2,1)}.header.scrolled.header-visible{transform:translateY(0);padding:var(--spacing-1) var(--spacing-3);height:calc(var(--header-h) - var(--space-1));backdrop-filter:blur(var(--space-1-5));box-shadow:0 var(--space-0-5) var(--space-2) var(--theme-shadow-light)}.header.header-visible .nav-toggle{opacity:1;pointer-events:auto;z-index:var(--z-banner)}.header.header-visible .logo-full{height:var(--space-12)}.header.header-visible .logo-compact{height:var(--space-10)}}@media only screen and (width <= 375px){.header.header-visible{padding:var(--spacing-1) var(--spacing-2);height:calc(var(--header-h) - var(--space-1))}.header.scrolled.header-visible{padding:var(--spacing-1) var(--spacing-2);height:calc(var(--header-h) - 20px)}.header.header-visible .logo-full{display:none}.header.header-visible .logo-compact{display:block;height:var(--space-1-5)}}@media only screen and (max-height: var(--container-lg)) and (orientation: landscape){.header.header-visible{height:calc(var(--header-h) - 20px);padding:var(--spacing-1) var(--spacing-3);position:fixed;top:0;z-index:1000}.header.scrolled.header-visible{height:calc(var(--header-h) - calc(2 * var(--space-1)));padding:var(--spacing-1) var(--spacing-2);backdrop-filter:blur(var(--blur-sm))}.header.header-visible .nav-toggle{padding:var(--spacing-1);min-height:var(--space-1-5);min-width:var(--space-1-5)}}@media (prefers-reduced-motion: reduce){.header.header-visible,.header.scrolled.header-visible{transition:none}}@media (prefers-contrast: high){.header.header-visible{border-bottom:var(--space-0-5) solid currentcolor;backdrop-filter:none;background:var(--theme-bg-primary)}.header.scrolled.header-visible{box-shadow:0 var(--space-0-5) 0 currentcolor}}.main-nav{display:flex;align-items:center;gap:calc(.5rem * var(--font-scale, 1));flex:1 1 auto;padding:0;position:static;width:auto;height:var(--header-h);background:transparent;border:none;box-shadow:none;z-index:auto;transition:none;overflow-y:visible;flex-shrink:1;min-width:0;order:2}.nav-group{display:flex;align-items:center}.nav-group .nav-items{display:flex;align-items:center;margin:0;padding:0;height:var( --header-h );gap:calc(.5rem * var(--font-scale, 1))}.nav-group-primary{flex:1}.nav-group-primary .nav-items{gap:calc(var(--space-8) * var(--font-scale, 1));height:auto!important;min-height:var(--header-h)}.nav-group-primary .nav-link{font-weight:500;font-size:calc(.95rem * var(--font-scale, 1));letter-spacing:-.01em;min-height:var(--touch-target-min, var(--space-11));display:flex;align-items:center;padding:.75rem var(--space-4);border-radius:var(--radius-lg);transition:var(--transition-fast, all .15s ease-in-out);position:relative;color:var(--interactive-fg, var(--theme-text-secondary));text-decoration:none;cursor:var(--cursor-interactive, pointer)}html[data-theme=light] .nav-group-primary .nav-link,body[data-theme=light] .nav-group-primary .nav-link,body.theme-light .nav-group-primary .nav-link{color:var(--theme-text-primary)}.nav-group-primary .nav-link{border:var(--border-width) solid transparent}html[data-theme=light] .header,body[data-theme=light] .header,body.theme-light .header{--nav-hover-surface: #ffffff;--nav-active-surface: var(--gray-50)}html[data-theme=dark] .header,body[data-theme=dark] .header,body.theme-dark .header,body.dark-mode .header{--nav-hover-surface: rgba(255, 255, 255, .1);--nav-active-surface: rgba(255, 255, 255, .1)}.nav-group-primary .nav-link:hover{color:var(--interactive-fg-hover, var(--theme-text-primary));background:var(--nav-hover-surface, var(--interactive-bg-hover));box-shadow:var(--shadow-hover, 0 4px 12px rgb(0 0 0 / 10%));opacity:1;transform:translateY(var(--hover-translate-y, -1px))}.nav-group-primary .nav-link:active{background:var(--nav-active-surface, var(--interactive-bg-active));transform:scale(var(--active-scale, .98));box-shadow:var(--shadow-active, 0 2px 6px rgb(0 0 0 / 12%))}.nav-group-primary .nav-link:focus-visible{outline:var(--focus-outline-width, 2px) var(--focus-outline-style, solid) var(--focus-ring-color, var(--theme-border-focus));outline-offset:var(--focus-outline-offset, 2px)}html[data-theme=dark] .nav-group-primary .nav-link:hover,body[data-theme=dark] .nav-group-primary .nav-link:hover,body.theme-dark .nav-group-primary .nav-link:hover,body.dark-mode .nav-group-primary .nav-link:hover{background:var(--nav-hover-surface, var(--interactive-bg-hover));transform:translateY(var(--hover-translate-y, -1px));box-shadow:var(--shadow-hover, 0 6px 18px rgb(0 0 0 / 40%))}.nav-group-primary .nav-link.active{color:var(--theme-text-primary);background:var(--nav-active-surface, var(--active-surface));font-weight:600}html[data-theme=dark] .nav-group-primary .nav-link.active,body[data-theme=dark] .nav-group-primary .nav-link.active,body.theme-dark .nav-group-primary .nav-link.active,body.dark-mode .nav-group-primary .nav-link.active{background:#ffffff1a;color:var(--theme-text-primary)}.nav-group-community{position:relative;margin-inline-start:auto;flex:0 0 auto}.nav-group-community .nav-items{gap:calc(.75rem * var(--font-scale, 1));flex-wrap:nowrap;align-items:center}.nav-group-about,.nav-group-actions{position:relative}.nav-group-about .nav-items,.nav-group-actions .nav-items{gap:calc(.75rem * var(--font-scale, 1))}.nav-item-dropdown .nav-link{display:flex;align-items:center;gap:.5rem}.nav-group-actions{margin-left:auto}.nav-group-actions .nav-items{gap:calc(.5rem * var(--font-scale, 1))}.nav-group-actions .nav-link{padding:calc(.5rem * var(--font-scale, 1)) calc(var(--space-4) * var(--font-scale, 1));border-radius:var(--radius-md);font-weight:500;text-decoration:none;transition:all .2s ease;min-height:var(--touch-target-min, var(--space-11));display:flex;align-items:center;justify-content:center}.nav-group-blog .nav-link,.nav-group-about .nav-link{text-decoration:none}.nav-group-about .nav-link,.nav-group-actions .nav-link{color:var(--interactive-fg, var(--theme-text-secondary));transition:var(--transition-fast, all .15s ease-in-out);cursor:var(--cursor-interactive, pointer)}.nav-group-about .nav-link:hover,.nav-group-actions .nav-link:hover{color:var(--interactive-fg-hover, var(--theme-text-primary));background:var(--nav-hover-surface, var(--interactive-bg-hover));transform:translateY(var(--hover-translate-y, -1px));box-shadow:var(--shadow-hover, 0 4px 12px rgb(0 0 0 / 10%))}.nav-group-about .nav-link:active,.nav-group-actions .nav-link:active{background:var(--nav-active-surface, var(--interactive-bg-active));transform:scale(var(--active-scale, .98));box-shadow:var(--shadow-active, 0 2px 6px rgb(0 0 0 / 12%))}.nav-group-about .nav-link:focus-visible,.nav-group-actions .nav-link:focus-visible{outline:var(--focus-outline-width, 2px) var(--focus-outline-style, solid) var(--focus-ring-color, var(--theme-border-focus));outline-offset:var(--focus-outline-offset, 2px)}.nav-group-blog .nav-link:hover,.nav-group-about .nav-link:hover{text-decoration:none}.nav-group-blog .nav-link:focus,.nav-group-about .nav-link:focus{text-decoration:none}.nav-group-auth{margin-left:calc(1.5rem * var(--font-scale, 1));padding-left:calc(1.5rem * var(--font-scale, 1));border-left:var(--border-width) solid var(--theme-border-secondary);display:flex;align-items:center;gap:.75rem;margin-right:calc(var(--space-4) * var(--font-scale, 1));padding-right:calc(.25rem * var(--font-scale, 1))}.nav-group-auth .nav-link{padding:.625rem 1.25rem;border-radius:var(--radius-lg);font-weight:500;font-size:calc(.9rem * var(--font-scale, 1));letter-spacing:-.01em;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);min-height:var(--touch-target-min, var(--space-11));display:flex;align-items:center;justify-content:center;border:var(--border-width) solid transparent}.nav-group-auth .nav-link:first-child{color:var(--theme-text-secondary);background:transparent}.nav-group-auth .nav-link:first-child:hover{color:var(--theme-text-primary);background:var(--nav-hover-surface, var(--hover-surface));opacity:var(--hover-opacity)}.nav-group-auth .nav-link:last-child{color:var(--theme-text-on-accent);background:var(--accent-primary);box-shadow:0 var(--border-width) var(--space-0-75) var(--theme-shadow-focus)}.nav-group-auth .nav-link:last-child:hover{background:var(--accent-primary-hover);box-shadow:0 var(--space-0-5) var(--space-2) var(--theme-shadow-focus);transform:translateY(-var(--border-width))}.nav-group-auth .nav-link:last-child:active{background:var(--accent-primary-active, var(--accent-primary))}.nav-group-auth [data-guest-content]{display:flex;align-items:center}.nav-group-auth [data-guest-content] .nav-auth-btn{display:flex;align-items:center;justify-content:center;min-height:var(--touch-target-min, var(--space-11));padding:.625rem 1.25rem;border-radius:var(--radius-lg);white-space:nowrap;max-width:100%}.nav-group-auth .nav-item-dropdown{position:relative}.nav-group-auth .nav-item-dropdown .dropdown-menu{left:auto;right:0;min-width:var(--content-width-xs, 20rem)}.nav-group-auth .dropdown-item{display:block;padding:.5rem .75rem;color:var(--nav-text-color, #334155);text-decoration:none}.nav-group-auth .dropdown-item:hover{background:var(--nav-hover-surface, var(--hover-surface));opacity:var(--hover-opacity)}.dropdown-menu{position:absolute;top:100%;left:0;background:var(--theme-bg-primary);backdrop-filter:blur(var(--space-0-5));-webkit-backdrop-filter:blur(var(--space-0-5));border:var(--border-width) solid rgba(226,232,240,.5);border-radius:var(--radius-xl);box-shadow:0 var(--space-1) var(--space-1-5) -var(--border-width) var(--theme-shadow-light),0 var(--space-0-5) var(--space-1) -var(--border-width) #0000000f,0 0 0 var(--border-width) #ffffff0d;padding:.5rem 0;min-width:var(--content-width-xs, 20rem);z-index:1000;opacity:0;visibility:hidden;transform:translateY(-var(--space-2)) scale(var(--active-scale));transition:all .2s cubic-bezier(.4,0,.2,1);margin-top:.5rem}.dropdown-menu.open{opacity:1;visibility:visible;transform:translateY(0) scale(1);box-shadow:var(--shadow-hover, 0 4px 12px rgb(0 0 0 / 10%))}.nav-group-about .nav-item-dropdown:hover .dropdown-menu,.nav-group-about .nav-item-dropdown:focus-within .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0) scale(1);z-index:var(--z-dropdown-hover, 1051)}.nav-group-about .dropdown-menu:hover{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.nav-group-about .nav-item-dropdown{position:relative}.nav-group-about .nav-item-dropdown:hover{z-index:var(--z-dropdown-hover, 1051)}.dropdown-item{padding:calc(.75rem * var(--font-scale, 1)) calc(var(--space-4) * var(--font-scale, 1));color:var(--theme-text-primary, #333);text-decoration:none;font-size:calc(.9rem * var(--font-scale, 1));transition:var(--transition-fast, background-color .2s ease);min-height:var(--touch-target-min, var(--space-11));display:flex;align-items:center;cursor:var(--cursor-interactive, pointer)}.dropdown-item:hover{background-color:var(--hover-surface, var(--interactive-bg-hover));color:var(--interactive-fg-hover, var(--theme-text-primary));opacity:var(--hover-opacity);box-shadow:inset 0 0 0 var(--border-width, 1px) var(--interactive-border-hover, var(--theme-border-focus))}.dropdown-item:focus-visible{outline:2px solid var(--theme-border-focus);outline-offset:-2px;background-color:var(--hover-surface);color:var(--theme-text-primary);box-shadow:inset 0 0 0 2px var(--theme-shadow-focus)}.dropdown-item:active{background-color:var(--active-surface, var(--interactive-bg-active));opacity:var(--active-opacity);transform:scale(var(--active-scale, .98))}@media (width <= 428px){.nav-group-community,.nav-group-actions{display:none}.nav-group-about{display:flex}.nav-group-auth{margin-left:auto;border-left:none;padding-left:0}}@media (width >= 1024px){.logo-image,.logo-full{height:var(--space-15);width:auto}.logo-compact{height:var(--space-10);width:auto}}@media (width >= 1280px){.logo-image,.logo-full{height:var(--space-14);width:auto}.logo-compact{height:var(--space-12);width:auto}}@media (width >= 1024px) and (width <= 1279px){.logo-image,.logo-full{height:var(--space-12);width:auto}.logo-compact{height:var(--space-11);width:auto}}@media (width >= 768px) and (width <= 1023px){.logo-image,.logo-full{height:var(--space-11);width:auto}.logo-compact{height:var(--space-10);width:auto}}@media (width <= 1023px){.logo-full{display:none}.logo-compact{display:block}}@media (width >= 428px) and (width <= 767px){.logo-image,.logo-compact{height:var(--space-10);width:auto}}@media (width <= 427px){.logo-image,.logo-compact{height:var(--space-8);width:auto}}@media only screen and (width >= 428px) and (width <= 768px){.header-container{padding:0 1.25rem;height:var(--header-h);min-height:var(--header-h)}}@media only screen and (width <= 1023px){.header-container{position:relative;height:var(--header-h);min-height:var(--header-h);padding:0 var(--space-4)}.header-actions{gap:.5rem}.search-toggle{padding:.5rem;font-size:var(--space-4)}.nav-search{min-width:var(--space-12-5)}.user-avatar{width:var(--space-1-5);height:var(--space-1-5);font-size:.9rem}.main-nav,#main-navigation{position:fixed;top:0;right:-100%;width:85%;max-width:var(--container-sm);height:100vh;display:flex;background:var(--theme-bg-primary);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);flex-direction:column;align-items:stretch;padding:calc(3rem * var(--font-scale, 1)) calc(var(--space-8) * var(--font-scale, 1));gap:calc(var(--space-8) * var(--font-scale, 1));transition:right .4s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1);z-index:9999;overflow-y:auto;transform:none;border-left:var(--border-width) solid rgba(226,232,240,.3);box-shadow:-var(--space-2) 0 var(--space-8) var(--theme-shadow-light);visibility:visible;opacity:1}.main-nav.open,#main-navigation.open{right:0;position:fixed;top:0;width:85%;max-width:var(--container-sm);height:100vh;display:flex;flex-direction:column;visibility:visible;opacity:1;transform:none;background:var(--theme-bg-primary);z-index:9999;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);align-items:stretch;padding:calc(3rem * var(--font-scale, 1)) calc(var(--space-8) * var(--font-scale, 1));gap:calc(var(--space-8) * var(--font-scale, 1));overflow-y:auto;border-left:var(--border-width) solid rgba(226,232,240,.3);box-shadow:-var(--space-2) 0 var(--space-8) var(--theme-shadow-light)}@media only screen and (width <= 375px){.main-nav.open,#main-navigation.open{width:90%;max-width:var(--container-xs);padding:var(--space-8) var(--space-4)}}@media only screen and (width <= var(--container-sm)){.main-nav.open,#main-navigation.open{width:95%;max-width:var(--container-xs);padding:1.5rem .75rem}}.nav-group{flex-direction:column;align-items:stretch;width:100%}.nav-group .nav-items{flex-direction:column;width:100%;gap:0}.nav-group .nav-item{width:100%}.nav-group .nav-link{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Inter,SF Pro Display,sans-serif;font-size:1.125rem;font-weight:550;line-height:1.4;letter-spacing:-.025em;font-feature-settings:"kern" 1,"liga" 1,"calt" 1;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding:calc(1.25rem * var(--font-scale, 1));border-bottom:var(--border-width) solid rgba(226,232,240,.5);text-align:left;min-height:var(--touch-target-min, var(--space-11));display:flex;align-items:center;color:var( --theme-text-primary );border-radius:var(--radius-xl);margin-bottom:.5rem;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;word-spacing:.05em;text-decoration:none;text-transform:none}@media only screen and (width <= 375px){.nav-group .nav-link{font-size:1.0625rem;font-weight:575;line-height:1.35;letter-spacing:-.02em;padding:.875rem;margin-bottom:.375rem;min-height:var(--space-12)}}@media only screen and (width <= var(--container-sm)){.nav-group .nav-link{font-size:var( --space-4 );font-weight:600;line-height:1.3;letter-spacing:-.015em;padding:.75rem;margin-bottom:.25rem;min-height:var(--space-11)}}.nav-group .nav-link:hover{color:var( --theme-text-primary );font-weight:600;letter-spacing:-.03em;background:var(--nav-hover-surface, var(--hover-surface));transform:translateY(var(--hover-translate-y, -1px));border-bottom-color:transparent;text-shadow:0 var(--border-width) var(--space-0-5) rgba(15,23,42,.1)}.nav-group .nav-link:active{color:var( --theme-text-primary );font-weight:650;letter-spacing:-.035em;background:var(--theme-border-primary);transform:translate(var(--space-0-75)) scale(.98);text-shadow:0 0 var(--border-width) rgba(2,6,23,.2)}.nav-group .nav-link:focus{color:var(--theme-text-primary);font-weight:575;letter-spacing:-.025em;outline:var(--space-0-5) solid var(--color-primary);outline-offset:var(--space-0-5);background:var(--theme-accent-bg);text-shadow:none}@media (prefers-contrast: high){.nav-group .nav-link{font-weight:600;color:var(--theme-text-primary);text-shadow:none}.nav-group .nav-link:hover{color:var(--theme-text-primary);font-weight:700;background:var(--nav-hover-surface, var(--hover-surface))}}@media (prefers-reduced-motion: reduce){.nav-group .nav-link{transition:color .1s ease}.nav-group .nav-link:hover,.nav-group .nav-link:active{transform:none}}.main-nav .nav-group .nav-item,.main-nav .nav-item{padding:0!important;margin:0!important;border:none!important;background:transparent!important;transform:none!important;transition:none!important;display:block;width:100%;position:relative;cursor:default}.main-nav .nav-group .nav-item:hover,.main-nav .nav-item:hover{background:transparent!important;color:inherit!important;transform:none!important}.main-nav .nav-group .nav-item .nav-link,.main-nav .nav-item .nav-link{display:flex!important;align-items:center!important;width:100%!important;text-decoration:none!important;cursor:pointer!important;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,inter,SF Pro Display,sans-serif!important;font-size:1.125rem!important;font-weight:550!important;line-height:1.4!important;letter-spacing:-.025em!important;color:var(--theme-text-primary)!important}.nav-group-community,.nav-group-about,.nav-group-actions{display:flex}.nav-group-auth{margin-left:0;border-left:none;padding-left:0;border-top:var(--space-0-5) solid var(--border-color, #e0e0e0);padding-top:calc(var(--space-4) * var(--font-scale, 1))}.nav-group-auth .nav-link{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,inter,sans-serif;font-size:1.0625rem;font-weight:600;line-height:1.3;letter-spacing:-.02em;color:var(--color-primary);background:var(--theme-bg-primary);border:var(--border-width) solid rgba(99,102,241,.2);border-radius:var(--radius-lg);text-align:center;padding:.875rem 1.25rem;margin:.25rem 0;text-transform:none;font-feature-settings:"kern" 1,"liga" 1}.nav-group-auth .nav-link:hover{color:var(--color-primary-hover);font-weight:650;background:var(--nav-hover-surface, var(--hover-surface));border-color:var(--theme-border-focus);transform:translateY(-var(--border-width));box-shadow:0 var(--space-0-5) var(--space-2) #6366f126;text-shadow:0 var(--border-width) var(--space-0-5) rgba(55,48,163,.1)}.nav-group-auth .nav-link.btn-primary{color:var(--theme-text-contrast);background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));border:none;font-weight:650;letter-spacing:-.025em;text-shadow:0 var(--border-width) var(--space-0-5) var(--theme-shadow-light)}.nav-group-auth .nav-link.btn-primary:hover{background:linear-gradient(135deg,var(--color-primary-dark),var(--color-primary));color:var(--theme-text-contrast);font-weight:700;text-shadow:0 var(--border-width) var(--space-0-75) rgba(0,0,0,.2)}.dropdown-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:none;background:var(--bg-secondary, #f8f9fa);margin-left:calc(var(--space-4) * var(--font-scale, 1))}.dropdown-menu .nav-link{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:var(--space-4);font-weight:500;line-height:1.4;letter-spacing:-.015em;color:var(--theme-text-muted);padding:.75rem var(--space-4) .75rem var(--space-8);font-feature-settings:"kern" 1;text-rendering:optimizelegibility}.dropdown-menu .nav-link:active{background:var(--nav-active-surface, var(--active-surface))}.dropdown-menu.open{opacity:1;visibility:visible}.dropdown-menu:not(.open),.settings-menu:not(.open){display:none}.mega-menu{position:static!important;display:none;width:100%!important;max-width:none!important;left:auto!important;right:auto!important;top:auto!important;transform:none!important;box-shadow:none!important;border:none!important;border-radius:0!important;margin:calc(.5rem * var(--font-scale, 1)) 0!important;padding:calc(var(--space-4) * var(--font-scale, 1))!important;background:var(--bg-secondary, #f8f9fa)!important}.mega-menu.open{visibility:visible;opacity:1}.nav-item-dropdown .nav-link[href="scenarios.html"]{pointer-events:auto!important}.nav-item-dropdown .nav-link:not([href]){pointer-events:auto}}.nav-toggle{display:none;flex-direction:column;background:none;border:none;cursor:pointer;padding:calc(.75rem * var(--font-scale, 1));width:calc(2.5rem * var(--font-scale, 1));height:calc(2.5rem * var(--font-scale, 1));justify-content:center;gap:var(--space-1);min-height:var(--touch-target-min, var(--space-11));min-width:var(--touch-target-min, var(--space-11));border-radius:var(--radius-lg);transition:background-color .2s ease}.nav-toggle:hover{background:var(--theme-bg-secondary)}.nav-toggle:focus-visible{outline:2px solid var(--theme-border-focus);outline-offset:2px;box-shadow:0 0 0 4px var(--theme-shadow-focus)}.nav-toggle:active{background:var(--theme-bg-interactive);transform:scale(.98)}.nav-toggle span{display:block;width:var(--space-5);height:var(--space-0-5, .125rem);background:var(--theme-text-secondary);transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:var(--radius-none)}.nav-toggle[aria-expanded=true] span:nth-child(1){transform:rotate(45deg) translate(var(--space-1-5, .375rem),var(--space-1-5, .375rem));background:var(--theme-text-primary)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0;transform:scale(0)}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:rotate(-45deg) translate(var(--space-1-5, .375rem),-var(--space-1-5,.375rem));background:var(--theme-text-primary)}@media only screen and (width <= 1023px){.nav-toggle{display:flex}@media only screen and (width <= 375px){.nav-toggle{padding:.5rem;width:var(--space-8);height:var(--space-8);min-width:var(--space-10);min-height:var(--space-10)}.nav-toggle span{width:var(--space-1-5, .375rem);height:var(--space-1)}}@media only screen and (width <= 640px){.nav-toggle{padding:.375rem;width:1.75rem;height:1.75rem;min-width:calc(3 * var(--space-1-5, .375rem));min-height:calc(3 * var(--space-1-5, .375rem))}.nav-toggle span{width:var(--space-1);height:var(--border-width)}}}.mega-menu{position:absolute;top:100%;left:0;right:0;background:#fff;border:var(--border-width) solid var(--border-color, #e0e0e0);border-radius:var(--radius-xl);box-shadow:0 var(--space-2) var(--space-8) #0000001a;padding:calc(var(--space-8) * var(--font-scale, 1));z-index:1001;opacity:0;visibility:hidden;transform:translateY(-20px);transition:all .3s ease;min-width:var(--container-lg);max-width:var(--container-xl)}.mega-menu.open{opacity:1;visibility:visible;transform:translateY(0)}.mega-menu-content{display:flex;flex-direction:column;gap:calc(1.5rem * var(--font-scale, 1))}.mega-menu-header{text-align:center;border-bottom:var(--border-width) solid var(--border-color, #e0e0e0);padding-bottom:calc(var(--space-4) * var(--font-scale, 1))}.mega-menu-header h3{margin:0 0 calc(.5rem * var(--font-scale, 1));font-size:calc(1.25rem * var(--font-scale, 1));color:var(--primary-color, #1a73e8)}.mega-menu-header p{margin:0;color:var(--text-secondary, #666);font-size:calc(.9rem * var(--font-scale, 1))}.mega-menu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--container-xs),1fr));gap:calc(var(--space-4) * var(--font-scale, 1))}.mega-menu-item{display:flex;align-items:center;gap:calc(var(--space-4) * var(--font-scale, 1));padding:calc(var(--space-4) * var(--font-scale, 1));border:var(--border-width) solid var(--border-color, #e0e0e0);border-radius:var(--radius-lg);cursor:pointer;transition:all .2s ease;text-decoration:none;color:inherit;min-height:var(--touch-target-min, var(--space-11))}.mega-menu-item:hover,.mega-menu-item:focus{border-color:var(--primary-color, #1a73e8);box-shadow:0 var(--space-0-5) var(--space-2) #1a73e81a;transform:translateY(-var(--border-width))}.mega-menu-icon{font-size:calc(var(--space-8) * var(--font-scale, 1));flex-shrink:0}.mega-menu-text h4{margin:0 0 calc(.25rem * var(--font-scale, 1));font-size:calc(var(--space-4) * var(--font-scale, 1));font-weight:600}.mega-menu-text p{margin:0;font-size:calc(.85rem * var(--font-scale, 1));color:var(--text-secondary, #666);line-height:1.4}.nav-item-dropdown:hover .mega-menu{opacity:1;visibility:visible;transform:translateY(0)}.mega-menu-filter{margin-top:calc(.75rem * var(--font-scale, 1));display:none}.mega-menu-search{width:100%;padding:calc(.5rem * var(--font-scale, 1)) calc(.75rem * var(--font-scale, 1));border:var(--border-width) solid var(--border-color, #e0e0e0);border-radius:var(--radius-md);font-size:calc(.9rem * var(--font-scale, 1));background:#fff;transition:border-color .2s ease;min-height:var(--touch-target-min, var(--space-11))}.mega-menu-search:focus{outline:none;border-color:var(--primary-color, #1a73e8);box-shadow:0 0 0 var(--space-0-75) #1a73e81a}.mega-menu-search::placeholder{color:var(--text-secondary, #666)}@media only screen and (width <= 767px){.mega-menu-filter{display:block}.mega-menu{position:absolute;top:100%;left:calc(.75rem * var(--font-scale, 1));right:calc(.75rem * var(--font-scale, 1));width:calc(var(--container-xs) - 2 * calc(.75rem * var(--font-scale, 1)));max-width:calc(var(--container-xs) - 2 * calc(.75rem * var(--font-scale, 1)));margin-left:calc(-1 * calc(.75rem * var(--font-scale, 1)));background:#fff;border:var(--border-width) solid var(--border-color, #e0e0e0);border-radius:var(--radius-md);box-shadow:0 var(--space-2) var(--space-8) #0000001a;z-index:1002;margin-top:calc(.25rem * var(--font-scale, 1));display:block;max-height:60vh;overflow:hidden auto;-webkit-overflow-scrolling:touch;box-sizing:border-box;opacity:0;visibility:hidden;transform:translateY(-var(--space-2-5));transition:all .3s ease}.nav-item-dropdown:hover .mega-menu{opacity:0;visibility:hidden;transform:translateY(-var(--space-2-5))}.nav-item-dropdown[aria-expanded=true] .mega-menu{opacity:1;visibility:visible;transform:translateY(0)}.mega-menu-content{padding:0;display:block;box-sizing:border-box;overflow-x:hidden}.mega-menu-header{padding:calc(var(--space-4) * var(--font-scale, 1)) calc(.75rem * var(--font-scale, 1)) calc(.75rem * var(--font-scale, 1));border-bottom:var(--border-width) solid var(--border-color, #e0e0e0);margin-bottom:calc(.75rem * var(--font-scale, 1));box-sizing:border-box;text-align:left}.mega-menu-header h3{font-size:calc(1.125rem * var(--font-scale, 1));margin:0 0 calc(.5rem * var(--font-scale, 1));color:var(--text-color, #333);font-weight:600}.mega-menu-header p{font-size:calc(.9rem * var(--font-scale, 1));margin:0;color:var(--text-secondary, #666);line-height:1.4}.mega-menu-grid{display:block;max-height:none;overflow:visible;padding:0}.mega-menu-item{padding:calc(.75rem * var(--font-scale, 1));border:none;border-bottom:var(--border-width) solid var(--border-color, #e0e0e0);margin:0;border-radius:0;background:#fff;transition:background-color .2s ease;text-decoration:none;color:var(--text-color, #333);min-height:var(--touch-target-min, var(--space-11));display:flex;align-items:center}.mega-menu-item:last-child{border-bottom:none}.mega-menu-item:hover,.mega-menu-item:focus{background:var(--nav-hover-surface, var(--hover-surface));color:var(--accent-primary);opacity:var(--hover-opacity)}.mega-menu-item:active{background:var(--nav-active-surface, var(--active-surface));opacity:var(--active-opacity);transform:scale(var(--active-scale))}.mega-menu-icon{display:inline-block;font-size:1.2em;margin-right:calc(.75rem * var(--font-scale, 1));vertical-align:middle;flex-shrink:0}.mega-menu-text{display:inline-block;vertical-align:middle;flex:1}.mega-menu-text h4{font-size:calc(.9rem * var(--font-scale, 1));margin:0;font-weight:500;color:inherit}.mega-menu-text p{font-size:calc(.8rem * var(--font-scale, 1));margin:0;color:var(--text-secondary, #666);line-height:1.3}.dropdown-arrow{transition:transform .2s ease}.nav-item-dropdown[aria-expanded=true] .dropdown-arrow{transform:rotate(180deg)}}@media only screen and (width <= 1023px){.mega-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:none;border-radius:0;padding:calc(var(--space-4) * var(--font-scale, 1));min-width:auto;max-width:none;margin-left:calc(var(--space-4) * var(--font-scale, 1));background:var(--bg-secondary, #f8f9fa)}.mega-menu-grid{grid-template-columns:1fr;gap:calc(.5rem * var(--font-scale, 1))}.mega-menu-item{padding:calc(.75rem * var(--font-scale, 1))}.mega-menu-icon{font-size:calc(1.5rem * var(--font-scale, 1))}}@media only screen and (width >= 768px) and (width <= 1279px){.main-nav:not(.nav-open){padding:0 var(--space-4)}.nav-group-primary .nav-items{gap:calc(1.25rem * var(--font-scale))}.nav-group-about .nav-items,.nav-group-actions .nav-items{gap:calc(.75rem * var(--font-scale))}.mega-menu{max-width:90vw;left:50%;transform:translate(-50%) translateY(-20px)}.mega-menu.open{transform:translate(-50%) translateY(0)}}@media only screen and (width >= 1280px){.main-nav:not(.nav-open){flex:1;justify-content:center;padding:0 var(--space-4)}.nav-items{padding:0;flex-direction:row;gap:var(--spacing-1, calc(1.5rem * var(--font-scale)));align-items:center}.nav-backdrop{display:none}.nav-link{padding:var(--spacing-2, calc(.5rem * var(--font-scale))) var(--spacing-4, calc(var(--space-4) * var(--font-scale)))}.nav-link.active:before{display:none}.nav-link.active{background-color:var(--theme-accent-bg);border-bottom:var(--space-0-5) solid var(--color-primary)}.nav-group-primary .nav-items{gap:calc(1.5rem * var(--font-scale))}.nav-group-about .nav-items,.nav-group-actions .nav-items{gap:calc(var(--space-4) * var(--font-scale))}.mega-menu{max-width:min(var(--content-width-xs, 20rem),95vw)}}@media (prefers-contrast: high){.dropdown-menu,.settings-menu,.mega-menu{border-color:var(--theme-text-primary);box-shadow:0 var(--space-1) 20px #0000004d}.mega-menu-item{border-color:var(--theme-text-primary)}.mega-menu-item:hover,.mega-menu-item:focus{border-color:var(--theme-text-primary);background-color:var(--theme-bg-secondary)}}@media (prefers-reduced-motion: reduce){.dropdown-menu,.settings-menu,.mega-menu,.mega-menu-item,.nav-toggle span,.main-nav,.nav-backdrop{transition:none}.mega-menu-item:hover,.mega-menu-item:focus{transform:none}}.header-container{display:flex;align-items:center;max-width:var(--container-md);margin:0 auto;padding:0 1.5rem;height:var(--header-h);min-height:var(--header-h)}.header-content{display:flex;align-items:center;justify-content:space-between;min-height:var(--space-20);gap:var(--space-8)}.logo-section{display:flex;align-items:center;flex-shrink:0}.logo-link{display:flex;align-items:center;gap:var(--space-4);text-decoration:none;transition:all .2s ease}.logo-link:hover{transform:translateY(-var(--border-width))}.logo-icon{width:var(--space-12);height:var(--space-12);font-size:1.5rem;background:linear-gradient(135deg,var(--brand-primary-500),var(--brand-warning-400));border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--theme-text-on-accent);box-shadow:0 var(--space-1) var(--space-1-5) #0000001a}.logo-text{display:flex;flex-direction:column;gap:.25rem}.logo-title{font-size:1.5rem;font-weight:700;color:var(--theme-text-primary);margin:0}.logo-subtitle{font-size:.875rem;color:var(--theme-text-muted);font-weight:500;margin:0}.header-nav{display:flex;align-items:center;flex:1;justify-content:center}.nav-links{display:flex;gap:var(--space-8);list-style:none;margin:0;padding:0}.nav-links .nav-link{display:flex;align-items:center;gap:.5rem;color:var(--theme-text-secondary);text-decoration:none;font-weight:500;padding:.75rem var(--space-4);border-radius:var(--radius-md);transition:all .2s ease;position:relative;min-height:var(--touch-target-min, var(--space-11))}.nav-links .nav-link:hover{color:var(--theme-text-primary);background:var(--nav-hover-surface, var(--hover-surface));transform:translateY(-var(--border-width))}.nav-links .nav-link:active{background:var(--nav-active-surface, var(--active-surface))}.nav-links .nav-link.active{color:var(--theme-text-primary);background:var(--nav-hover-surface, var(--hover-surface));transform:translateY(-var(--border-width))}.nav-links .nav-link:after{content:"";position:absolute;bottom:-var(--space-0-5);left:50%;width:0;height:var(--space-0-5);background:var(--accent-primary);transition:all .2s ease;transform:none}.nav-links .nav-link:hover:after,.nav-links .nav-link.active:after{width:80%}.nav-links .nav-link svg,.nav-links .nav-link .icon{color:currentColor;fill:currentColor}@media (pointer: coarse){.nav-links .nav-link:hover{background:transparent;transform:none}}.nav-links .nav-link:focus-visible{outline:2px solid var(--theme-border-focus);outline-offset:2px;box-shadow:0 0 0 4px var(--theme-shadow-focus)}.nav-icon{font-size:var(--space-4)}@media only screen and (width >= 1024px){.nav-toggle{display:none}}.nav-item-dropdown[aria-expanded=true] .dropdown-arrow{transform:rotate(180deg)}.nav-link:focus-visible{outline:2px solid var(--theme-border-focus);outline-offset:2px;box-shadow:0 0 0 4px var(--theme-shadow-focus)}}@media (prefers-reduced-motion: reduce){.nav-links .nav-link{transition:none}.nav-links .nav-link:hover,.nav-links .nav-link.active,.header.header-visible{transform:none}}.dropdown-menu .nav-link:focus-visible{outline:2px solid var(--theme-border-focus);outline-offset:2px;box-shadow:0 0 0 4px var(--theme-shadow-focus)}html[data-theme=dark] .nav-group-primary .nav-link:hover{background:var(--nav-hover-surface, var(--interactive-bg-hover));color:var(--interactive-fg-hover, var(--theme-text-primary));transform:translateY(var(--hover-translate-y, -1px));box-shadow:var(--shadow-hover, 0 6px 18px rgb(0 0 0 / 40%))}html[data-theme=dark] .nav-group .nav-link:hover{background:var(--nav-hover-surface, var(--interactive-bg-hover))}html[data-theme=dark] .nav-group-primary .nav-link:hover,body[data-theme=dark] .nav-group-primary .nav-link:hover,body.theme-dark .nav-group-primary .nav-link:hover,body.dark-mode .nav-group-primary .nav-link:hover{position:relative;z-index:1;will-change:transform,box-shadow;transform:translateY(var(--hover-translate-y, -1px))!important;box-shadow:var(--shadow-hover, 0 6px 18px rgb(0 0 0 / 40%))!important}html[data-theme=dark] .nav-group .nav-link:hover,body[data-theme=dark] .nav-group .nav-link:hover,body.theme-dark .nav-group .nav-link:hover,body.dark-mode .nav-group .nav-link:hover{transform:translateY(var(--hover-translate-y, -1px))!important;box-shadow:var(--shadow-hover, 0 6px 18px rgb(0 0 0 / 40%))!important;position:relative;z-index:1;will-change:transform,box-shadow}@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 var(--theme-border-primary, #e5e5e5);background:var(--modal-header-bg, linear-gradient(135deg, #667eea 0%, #764ba2 100%));color:var(--theme-text-inverse, #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 var(--theme-border-primary, #e5e5e5);background:var(--theme-bg-primary, #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:var(--theme-bg-secondary, #f8f9fa);border-bottom:1px solid var(--theme-border-primary, #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,var(--theme-bg-secondary, #f8f9fa) 0%,transparent 100%)}.pre-launch-tabs:after{right:0;background:linear-gradient(to left,var(--theme-bg-secondary, #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}html[data-theme=light] .modal-backdrop:has(.pre-launch-modal) .modal-dialog,body[data-theme=light] .modal-backdrop:has(.pre-launch-modal) .modal-dialog,html[data-theme=light] .modal-backdrop:has(.pre-launch-modal) .modal-header,body[data-theme=light] .modal-backdrop:has(.pre-launch-modal) .modal-header,html[data-theme=light] .modal-backdrop:has(.pre-launch-modal) .modal-body,body[data-theme=light] .modal-backdrop:has(.pre-launch-modal) .modal-body,html[data-theme=light] .modal-backdrop:has(.pre-launch-modal) .modal-footer,body[data-theme=light] .modal-backdrop:has(.pre-launch-modal) .modal-footer{background:var(--theme-bg-primary)!important;color:var(--theme-text-primary)!important;border-color:var(--theme-border-primary)!important;color-scheme:light}html[data-theme=dark] .modal-backdrop:has(.pre-launch-modal) .modal-dialog,body[data-theme=dark] .modal-backdrop:has(.pre-launch-modal) .modal-dialog,html[data-theme=dark] .modal-backdrop:has(.pre-launch-modal) .modal-header,body[data-theme=dark] .modal-backdrop:has(.pre-launch-modal) .modal-header,html[data-theme=dark] .modal-backdrop:has(.pre-launch-modal) .modal-body,body[data-theme=dark] .modal-backdrop:has(.pre-launch-modal) .modal-body,html[data-theme=dark] .modal-backdrop:has(.pre-launch-modal) .modal-footer,body[data-theme=dark] .modal-backdrop:has(.pre-launch-modal) .modal-footer{background:var(--theme-bg-primary)!important;color:var(--theme-text-primary)!important;border-color:var(--theme-border-primary)!important;color-scheme:dark}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 rgb(102 126 234 / 30%);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 rgb(245 158 11 / 30%)}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 rgb(34 197 94 / 30%)}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 rgb(102 126 234 / 30%))}.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 rgb(33 150 243 / 30%))}.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 rgb(156 39 176 / 30%))}.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 rgb(233 30 99 / 30%))}.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 #28a7457f,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:#000000e5;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:#000000e5;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{: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: rgb(0 0 0 / 10%);--radar-grid-color-1: rgb(0 0 0 / 15%);--radar-grid-color-2: rgb(0 0 0 / 20%);--radar-grid-color-default: rgb(0 0 0 / 10%);--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-polygon-border: #2563eb;--radar-polygon-fill: rgb(37 99 235 / 55%);--radar-polygon-point: #1d4ed8}.radar-chart-container.theme-light,.radar-chart-scenario.theme-light{background-color:var(--radar-theme-light-background, #fff);border-color:var(--radar-theme-light-border, #e2e8f0);color:var(--radar-theme-light-text, #333)}.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, #444);color:var(--radar-theme-dark-text, #fff)}body.theme-light,body:not(.theme-dark,.dark-mode){--radar-polygon-border: #2563eb;--radar-polygon-fill: rgb(37 99 235 / 55%);--radar-polygon-point: #1d4ed8}body.dark-mode,body.theme-dark{--radar-polygon-border: #60a5fa;--radar-polygon-fill: rgb(96 165 250 / 65%);--radar-polygon-point: #93c5fd}body.theme-high-contrast,body.high-contrast,body.high-contrast-mode{--radar-polygon-border: #ffeb3b;--radar-polygon-fill: rgb(255 235 59 / 50%);--radar-polygon-point: #fff176}.radar-chart-container.theme-high-contrast,.radar-chart-scenario.theme-high-contrast{background-color:var(--radar-theme-high-contrast-background, #000);border-color:var(--radar-theme-high-contrast-border, #fff);color:var(--radar-theme-high-contrast-text, #fff)}@media (width <= 768px){.radar-chart-container{padding:1rem;margin:1rem 0}}@media (width <= 1024px){.radar-chart-demo-container{max-width:90%}.radar-chart-scenario{padding:1.25rem}}.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;isolation:isolate;z-index:1;background:linear-gradient(135deg,var(--theme-bg-secondary, var(--color-background-secondary, #f8fafc)) 0%,var(--theme-bg-tertiary, var(--color-background-tertiary, #e2e8f0)) 100%);border-radius:12px;box-shadow:0 2px 8px #0000000f,0 1px 3px #0000000a;border:1px solid var(--theme-border-subtle, var(--color-gray-200, #e2e8f0));transition:all .2s ease}.scenario-radar-chart:hover{box-shadow:0 4px 16px #0000001a,0 2px 8px #0000000f;border-color:var(--theme-accent-primary, var(--color-primary, #667eea))}.scenario-radar-chart.animating{transition:all .3s ease;transform:scale(1.02);box-shadow:0 0 20px #007bff7f}body.dark-mode .scenario-radar-chart.animating,body.theme-dark .scenario-radar-chart.animating{box-shadow:0 0 20px #64b4ff66}.scenario-radar-chart canvas{border-radius:8px;background:transparent}.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:transparent;border:1px solid #e2e8f0}.scenario-modal-radar-chart{width:100%;max-width:380px;height:var(--radar-chart-size, 400px);min-height:var(--radar-chart-size, 400px);position:relative;margin:0 auto}.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:transparent;image-rendering:auto;image-rendering:-moz-crisp-edges;image-rendering:-webkit-optimize-contrast}canvas[role=img]{position:relative;z-index:5;isolation:isolate}.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}.scenario-modal .chartjs-tooltip,.scenario-modal-dialog .chartjs-tooltip{z-index:1060!important}.progress-ring-tooltip{display:block!important;z-index:1200!important;position:fixed!important}.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}.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}.radar-chart-demo-container{padding:.5rem}}.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{color:#000!important}}.scenario-radar-chart:empty:before,.scenario-radar-chart: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%)}canvas[role=img]+div[style*="position: absolute"]{z-index:1060!important;position:fixed!important}.chart-tooltip:not(.progress-ring-tooltip){z-index:1060!important;position:fixed!important;pointer-events:none!important}.progress-ring-tooltip,.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}}@layer components{.scenario-card{background:var(--color-white);border:2px solid var(--color-gray-200);border-radius:var(--radius-xl);overflow:hidden;transition:all .3s ease;box-shadow:0 4px 6px #0000000d;position:relative;cursor:pointer;display:flex;flex-direction:column;min-height:280px;font-size:calc(1rem * var(--font-scale, 1));padding:0}.scenario-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #00000026;border-color:var(--color-primary)}.scenario-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.scenario-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-primary-light) 100%);opacity:0;transition:opacity .3s ease}.scenario-card:hover:before{opacity:1}.scenario-card.completed{background:linear-gradient(135deg,#f0fdf4,#ecfdf5);border-color:var(--color-green-300)}.scenario-card.completed:after{content:"✓";position:absolute;top:10px;right:10px;font-size:1.5rem;z-index:10;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);animation:checkmark-bounce .6s ease-out}@keyframes checkmark-bounce{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2);opacity:1}to{transform:scale(1);opacity:1}}.scenario-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-5) var(--spacing-5) var(--spacing-3)}.scenario-icon{width:40px;height:40px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.scenario-difficulty{padding:4px var(--spacing-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:capitalize}.difficulty-beginner{background:#d1fae5;color:#065f46}.difficulty-intermediate{background:#fef3c7;color:#92400e}.difficulty-advanced{background:#fee2e2;color:#991b1b}.scenario-content{flex:1;padding:var(--spacing-4);display:flex;flex-direction:column;gap:var(--spacing-3)}.scenario-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-gray-900);margin:0;line-height:var(--line-height-tight)}.scenario-description{font-size:var(--font-size-sm);color:var(--color-gray-600);line-height:var(--line-height-relaxed);margin:0;flex:1}.scenario-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-3);padding:16px;border-top:1px solid var(--color-gray-200);background:var(--color-gray-50);margin-top:auto}.scenario-start-btn{background:var(--color-primary);color:var(--color-white);border:none;border-radius:var(--radius-lg);padding:var(--spacing-2) var(--spacing-6);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-base);display:flex;align-items:left;gap:var(--spacing-2);text-decoration:none;flex:1;min-width:0;justify-content:left}.scenario-start-btn:hover{background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 4px 8px #007cba4d}.scenario-start-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.scenario-quick-start-btn{background:#0a0;color:var(--color-white);border:none;border-radius:var(--radius-md);padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;gap:var(--spacing-2);flex-shrink:0;text-decoration:none}.scenario-quick-start-btn:hover{background:#080;transform:translate(2px)}.scenario-quick-start-btn:focus-visible{outline:2px solid #00aa00;outline-offset:2px}.scenario-quick-start-btn svg,.scenario-start-btn svg{transition:transform var(--transition-base)}.scenario-quick-start-btn:hover svg{transform:translate(2px)}.scenario-start-btn:hover svg{transform:scale(1.1)}.category-section .scenario-title,.simulations-grid .scenario-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.category-section .scenario-content,.simulations-grid .scenario-content{padding:0 var(--spacing-5) var(--spacing-4)}.category-scenarios-grid .scenario-title,.scenarios-grid .scenario-title{font-size:calc(1rem * var(--font-scale, 1));font-weight:600;color:var(--color-gray-800, #2d3748);margin:0 0 .25rem}.category-scenarios-grid .scenario-description,.scenarios-grid .scenario-description{font-size:var(--font-size-sm);color:var(--color-gray-600);line-height:1.5}.ethics-explorer .scenario-card{background:linear-gradient(135deg,#fff,#f8fafc);color:#2d3748;border-radius:16px;box-shadow:0 2px 8px #00000014,0 0 0 1px #cbd5e14d;border:1px solid #e2e8f0;flex:0 0 320px;scroll-snap-align:start;scroll-snap-stop:always}.ethics-explorer .scenario-card:hover{box-shadow:0 8px 24px #0000001f,0 0 0 1px #667eea33;border-color:#667eea}.scenarios-grid[data-view=category] .scenario-card{flex:0 0 320px;min-height:280px;scroll-snap-align:start;scroll-snap-stop:always}.scenarios-grid[data-view=category] .scenario-card .scenario-content{padding:var(--spacing-4);box-sizing:border-box}.scenarios-grid[data-view=category] .scenario-card .scenario-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-3);line-height:1.3}.scenarios-grid[data-view=category] .scenario-card .scenario-description{font-size:var(--font-size-sm);color:var(--color-gray-600);line-height:1.5;margin-bottom:var(--spacing-4)}.scenarios-grid[data-view=scenario] .scenario-card{max-width:none;width:100%;min-height:200px;padding:0}.scenarios-grid[data-view=scenario] .scenario-card .scenario-content{padding:var(--spacing-4);box-sizing:border-box}.scenarios-grid[data-view=scenario] .scenario-card .scenario-title{margin-bottom:var(--spacing-3);line-height:1.3;min-height:2.6em}.scenarios-grid[data-view=scenario] .scenario-card .scenario-description{flex:1;margin-bottom:var(--spacing-4);overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;line-height:1.4;min-height:4.2em}.scenarios-grid[data-view=scenario] .scenario-card .scenario-footer{margin-top:auto;padding-top:var(--spacing-2)}[data-theme=dark] .scenario-card,body.dark-mode .scenario-card{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);color:var(--theme-text-primary);box-shadow:0 4px 12px var(--theme-shadow)}[data-theme=dark] .scenario-card:hover,body.dark-mode .scenario-card:hover{background:var(--theme-bg-tertiary);border-color:var(--theme-border-hover);box-shadow:0 8px 20px var(--theme-shadow-hover)}[data-theme=dark] .scenario-title,body.dark-mode .scenario-title{color:var(--theme-text-primary)}[data-theme=dark] .scenario-description,body.dark-mode .scenario-description{color:var(--theme-text-secondary)}[data-theme=dark] .scenario-footer,body.dark-mode .scenario-footer{background:var(--theme-bg-tertiary);border-top-color:var(--theme-border)}[data-theme=dark] .scenario-card .scenario-title,body.dark-mode .scenario-card .scenario-title,[data-theme=dark] .category-scenarios-grid .scenario-title,body.dark-mode .category-scenarios-grid .scenario-title,[data-theme=dark] .scenarios-grid .scenario-title,body.dark-mode .scenarios-grid .scenario-title{color:var(--theme-text-primary)}[data-theme=dark] .scenario-card .scenario-description,body.dark-mode .scenario-card .scenario-description,[data-theme=dark] .category-scenarios-grid .scenario-description,body.dark-mode .category-scenarios-grid .scenario-description,[data-theme=dark] .scenarios-grid .scenario-description,body.dark-mode .scenarios-grid .scenario-description{color:var(--theme-text-secondary)}[data-theme=dark] .scenarios-grid[data-view=category] .scenario-card,body.dark-mode .scenarios-grid[data-view=category] .scenario-card,[data-theme=dark] .scenarios-grid[data-view=scenario] .scenario-card,body.dark-mode .scenarios-grid[data-view=scenario] .scenario-card{background:var(--theme-bg-secondary);border-color:var(--theme-border)}[data-theme=dark] .scenarios-grid[data-view=category] .scenario-card .scenario-description,body.dark-mode .scenarios-grid[data-view=category] .scenario-card .scenario-description,[data-theme=dark] .scenarios-grid[data-view=scenario] .scenario-card .scenario-description,body.dark-mode .scenarios-grid[data-view=scenario] .scenario-card .scenario-description{color:var(--theme-text-secondary)}.no-motion .scenario-card,.no-motion .scenario-card:before,.no-motion .scenario-start-btn,.no-motion .scenario-quick-start-btn,.no-motion .scenario-card.completed:after{transition:none!important;animation:none!important}.no-motion .scenario-card:hover{transform:none}.high-contrast-border .scenario-card{border-width:3px}.high-contrast-border .scenario-start-btn:focus-visible,.high-contrast-border .scenario-quick-start-btn:focus-visible{outline-width:4px}.print-hide.scenario-start-btn,.print-hide.scenario-quick-start-btn{display:none!important}.scenario-card-mobile{min-height:240px}.scenario-header-mobile{padding:var(--spacing-4) var(--spacing-4) var(--spacing-2)}.scenario-content-mobile{padding:var(--spacing-3)}.scenario-footer-mobile{padding:var(--spacing-0) var(--spacing-4) var(--spacing-4);flex-direction:column;gap:var(--spacing-2)}.scenario-buttons-mobile{width:100%;justify-content:center}.scenario-card-tablet{min-height:260px}@media only screen and (width <= 767px){.scenario-card{min-height:240px;border-radius:var(--radius-lg);box-shadow:0 2px 4px #00000014;font-size:calc(.9rem * var(--font-scale, 1))}.scenario-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px #0000001f}.scenario-header{padding:var(--container-padding) var(--container-padding) calc(var(--container-padding) * .5)}.scenario-content{padding:calc(var(--container-padding) * .75)}.scenario-footer{padding:var(--spacing-0) var(--container-padding) var(--container-padding);flex-direction:column;gap:calc(var(--container-padding) * .5)}.scenario-start-btn,.scenario-quick-start-btn{width:100%;justify-content:center}}@media only screen and (width >= 768px) and (width <= 1279px){.scenario-card{min-height:260px;font-size:calc(1rem * var(--font-scale, 1.05));border-radius:var(--radius-xl)}.scenario-card:hover{transform:translateY(-3px);box-shadow:0 10px 20px #0000001f}}@media only screen and (width <= 480px){.scenarios-grid[data-view=category] .scenario-card{flex:0 0 280px;min-height:240px}.scenarios-grid[data-view=category] .scenario-card .scenario-content{padding:var(--spacing-3)}.scenarios-grid[data-view=category] .scenario-card .scenario-title{font-size:var(--font-size-base);margin-bottom:var(--spacing-2)}.scenarios-grid[data-view=category] .scenario-card .scenario-description{font-size:var(--font-size-xs);line-height:1.4;margin-bottom:var(--spacing-3)}}@media only screen and (width <= 375px){.scenarios-grid[data-view=category] .scenario-card{flex:0 0 260px;min-height:220px}}@media only screen and (width >= 481px) and (width <= 767px){.scenarios-grid[data-view=category] .scenario-card{flex:0 0 290px;min-height:250px}.scenarios-grid[data-view=category] .scenario-card .scenario-content{padding:calc(var(--spacing-4) * .95)}}@media only screen and (width >= 768px) and (width <= 1024px){.scenarios-grid[data-view=category] .scenario-card{flex:0 0 300px;min-height:260px}.scenarios-grid[data-view=category] .scenario-card .scenario-content{padding:calc(var(--spacing-4) * .9)}}@media only screen and (width >= 1025px) and (width <= 1279px){.scenarios-grid[data-view=category] .scenario-card{flex:0 0 310px;min-height:270px}}}@layer components{.category-header{background:var(--theme-bg-secondary);padding:var(--spacing-8);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--theme-border-primary)}.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(--theme-text-primary);margin:0 0 var(--spacing-1) 0;line-height:var(--line-height-tight)}.category-description{font-size:var(--font-size-base);color:var(--theme-text-secondary);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)}.category-time,.category-progress-text{font-size:var(--font-size-sm);color:var(--theme-text-secondary);font-weight:var(--font-weight-medium)}.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(--theme-text-primary);z-index:var(--z-base, 0);position:relative;transition:all var(--transition-base)}.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))}}.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:var(--z-base, 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:var(--z-docked, 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}.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:var(--z-tooltip, 1080);position:fixed;display:block;visibility:visible}.progress-ring-tooltip.visible{opacity:1;transform:translate(-50%) translateY(0);display:block;visibility:visible}.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)}}@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%;transform:translate(-50%);margin-left:0;margin-right:0}.progress-ring-tooltip.visible{transform:translate(-50%) translateY(0)}}@media (width <= 480px){.progress-ring-tooltip{max-width:200px;min-width:150px;font-size:var(--font-size-xs);padding:var(--spacing-2);left:50%;transform:translate(-50%)}}@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:var(--z-docked, 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}.scenario-hover-category-header{border-width:2px}}}@layer components{.scenario-reflection-modal{--modal-bg: var(--theme-bg-primary);--modal-text: var(--theme-text-primary);--modal-border: var(--color-border);--modal-shadow: var(--shadow-lg);--modal-accent: var(--color-primary);--modal-accent-light: var(--color-primary-light);--animation-modal-in: reflectionScaleIn .3s ease-out}.modal-backdrop .scenario-reflection-modal .modal-dialog .modal-body,.scenario-reflection-modal .modal-dialog .modal-body,.scenario-reflection-modal .modal-body,.modal-dialog .scenario-reflection-modal .modal-body,div.scenario-reflection-modal .modal-body{overflow:hidden;padding:0;max-height:none}body.modal-open:has(.scenario-reflection-modal.show)[style*="overflow: hidden"],body.reflection-modal-open[style*="overflow: hidden"]{overflow:hidden;position:fixed;width:100%;height:100%}.scenario-reflection-modal .modal-body,.scenario-reflection-modal .modal-dialog,.scenario-reflection-modal .modal-content{background:var(--modal-bg);color:var(--modal-text);border-color:var(--modal-border)}.scenario-reflection-modal{z-index:var(--z-modal)}.scenario-reflection-modal .modal-backdrop{z-index:var(--z-overlay)}@media (max-width: 768px){.scenario-reflection-modal .modal-backdrop{backdrop-filter:blur(6px)}}@media (max-width: 480px){.scenario-reflection-modal .modal-backdrop{backdrop-filter:blur(4px);background-color:#000000a6}}@media (prefers-reduced-motion: reduce){.scenario-reflection-modal .modal-backdrop{backdrop-filter:none;background-color:#000000b3}}.scenario-reflection-modal .modal-dialog{max-width:900px;width:90vw;margin:var(--space-8) auto;z-index:var(--z-modal)}@keyframes reflectionScaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@media (max-width: 1024px){.scenario-reflection-modal .modal-dialog{max-width:800px;width:92vw;margin:var(--space-6) auto}}@media (max-width: 768px){.scenario-reflection-modal .modal-dialog{max-width:none;width:95vw;margin:var(--space-4) auto}}@media (max-width: 640px){.scenario-reflection-modal .modal-dialog{width:98vw;margin:.5rem auto}}@media (max-width: 480px){.scenario-reflection-modal .modal-dialog{width:100vw;margin:0;min-height:100vh;display:flex;flex-direction:column}.scenario-reflection-modal .modal-content{border-radius:0;flex:1;display:flex;flex-direction:column}}@media (max-width: 768px){.reflection-progress{padding:var(--space-4)}.scenario-reflection-modal .progress-container{margin-bottom:var(--space-4)}.scenario-reflection-modal .progress-bar{height:3px;margin-bottom:var(--space-1)}.scenario-reflection-modal .progress-text{font-size:var(--font-size-xs)}.scenario-reflection-modal .step-icon{width:28px;height:28px;font-size:var(--font-size-xs)}.scenario-reflection-modal .step-title{font-size:.6875rem}.reflection-step-content{padding:var(--space-6);max-height:calc(100vh - 280px)}.step-content h3{font-size:var(--font-size-xl);margin-bottom:var(--space-4)}}@media (max-width: 480px){.reflection-progress{padding:var(--space-3)}.scenario-reflection-modal .progress-container{margin-bottom:var(--space-3)}.scenario-reflection-modal .progress-bar{height:2px;margin-bottom:var(--space-1)}.scenario-reflection-modal .progress-text{font-size:.6875rem;margin-bottom:var(--space-2)}.scenario-reflection-modal .step-icon{width:24px;height:24px;font-size:.625rem;margin-bottom:var(--space-1)}.scenario-reflection-modal .step-title{font-size:.625rem;line-height:1.2}.scenario-reflection-modal .progress-step:not(:last-child):after{top:12px}.reflection-step-content{padding:var(--space-4);min-height:300px;max-height:none;flex:1}.step-content h3{font-size:var(--font-size-lg);margin-bottom:var(--space-3)}.step-description{margin-bottom:var(--space-6);font-size:var(--font-size-sm)}}@media (max-width: 360px){.reflection-progress{padding:var(--space-2)}.scenario-reflection-modal .progress-step{flex:0 1 auto;min-width:60px;margin-bottom:var(--space-2)}.scenario-reflection-modal .step-icon{width:20px;height:20px;font-size:.5rem}.scenario-reflection-modal .step-title{font-size:.5625rem;max-width:50px;word-wrap:break-word;text-align:center;line-height:1.1;margin-top:var(--space-1)}}@media (max-width: 768px){.community-bar-chart,.impact-radar,.community-stats-summary{padding:var(--space-4);margin-bottom:var(--space-6)}.choice-text{font-size:var(--font-size-sm)}.choice-percentage{font-size:.625rem}.choice-count{font-size:var(--font-size-xs)}.dimension-label{min-width:100px;font-size:var(--font-size-xs)}.dimension-value{min-width:40px;font-size:var(--font-size-xs)}}@media (max-width: 480px){.community-bar-chart,.impact-radar,.community-stats-summary{padding:var(--space-3);margin-bottom:var(--space-4)}.choice-label{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.your-choice-indicator{align-self:flex-end}.choice-text{font-size:var(--font-size-sm);line-height:1.4}.impact-dimension{flex-direction:column;align-items:stretch;gap:var(--space-2)}.dimension-label{min-width:unset;text-align:left}.dimension-bar{height:16px}.dimension-value{min-width:unset;text-align:center;margin-top:var(--space-1)}}@media (max-width: 768px){.next-exploration,.research-impact,.reflection-section{padding:var(--space-6);margin-top:var(--space-6)}.research-stats{flex-direction:column;align-items:center;gap:var(--space-3)}.research-stats .stat{padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm)}.scenario-suggestions{gap:var(--space-3)}.suggestion-card{padding:var(--space-4)}.suggestion-title{font-size:var(--font-size-base)}.suggestion-desc{font-size:var(--font-size-sm)}}@media (max-width: 480px){.next-exploration,.research-impact,.reflection-section{padding:var(--space-4);margin-top:var(--space-4)}.next-exploration h4,.research-impact h4,.reflection-section h4{font-size:var(--font-size-lg);margin-bottom:var(--space-4)}.research-stats{gap:var(--space-2)}.research-stats .stat{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs);width:100%;text-align:center}.alternative-choice-analysis{gap:var(--space-4)}.alternative-option{padding:var(--space-4)}.alternative-option h5{font-size:var(--font-size-base);margin-bottom:var(--space-3)}.alternative-text{font-size:var(--font-size-sm);padding:var(--space-3) var(--space-4)}.what-if-question{padding:var(--space-4)}.impact-differences li{font-size:var(--font-size-sm);padding:var(--space-2)}}.scenario-reflection-modal .modal-content{border-radius:var(--radius-lg);border:1px solid var(--color-border);box-shadow:var(--shadow-lg);background:var(--theme-bg-primary);overflow:hidden}.reflection-progress{background:linear-gradient(135deg,#fdfdfe,#fafbfc,#f8f9fa);padding:var(--space-6);border-bottom:1px solid var(--color-border);box-shadow:0 1px 2px #00000005,inset 0 1px #fffc}.progress-container{margin-bottom:var(--space-6)}.scenario-reflection-modal .progress-bar{width:100%;height:4px;background:var(--color-border);border-radius:2px;overflow:hidden;margin-bottom:var(--space-2)}.scenario-reflection-modal .progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),#1d4ed8);border-radius:2px;transition:width .3s ease}.scenario-reflection-modal .progress-text{font-size:var(--font-size-sm);color:var(--color-gray-600);text-align:center;font-variant-numeric:tabular-nums}.scenario-reflection-modal .progress-steps{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4)}@media (max-width: 1024px){.scenario-reflection-modal .progress-steps{gap:var(--space-3)}}@media (max-width: 768px){.scenario-reflection-modal .progress-steps{gap:var(--space-2)}}@media (max-width: 640px){.scenario-reflection-modal .progress-steps{gap:var(--space-1)}.scenario-reflection-modal .progress-step{min-width:0;flex:1}}@media (max-width: 480px){.scenario-reflection-modal .progress-steps{gap:var(--space-1);flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.scenario-reflection-modal .progress-step{flex:0 0 auto;min-width:45px}}@media (max-width: 360px){.scenario-reflection-modal .progress-steps{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:var(--space-1);overflow-x:auto;-webkit-overflow-scrolling:touch;padding:0 var(--space-1)}.scenario-reflection-modal .progress-step{flex:0 0 auto;min-width:40px;max-width:60px}.scenario-reflection-modal .progress-step:not(:last-child):after{top:10px;height:1px}}.scenario-reflection-modal .progress-step{display:flex;flex-direction:column;align-items:center;flex:1;position:relative}.scenario-reflection-modal .progress-step:not(:last-child):after{content:"";position:absolute;top:15px;right:-50%;width:100%;height:2px;background:var(--color-border);z-index:var(--z-base)}.scenario-reflection-modal .progress-step.completed:not(:last-child):after{background:var(--color-primary)}.scenario-reflection-modal .step-icon{width:32px;height:32px;border-radius:50%;background:var(--color-border);color:var(--color-gray-600);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:600;margin-bottom:var(--space-2);position:relative;z-index:var(--z-docked);transition:all .2s ease}.scenario-reflection-modal .progress-step.completed .step-icon{background:var(--color-primary);color:#fff}.scenario-reflection-modal .progress-step.active .step-icon{background:var(--color-primary);color:#fff;box-shadow:0 0 0 3px var(--color-primary-light)}.scenario-reflection-modal .step-title{font-size:var(--font-size-xs);color:var(--theme-text-primary);text-align:center;font-weight:500;line-height:1.3}.scenario-reflection-modal .progress-step.completed .step-title,.scenario-reflection-modal .progress-step.active .step-title{color:var(--theme-text-primary);font-weight:600}.reflection-step-content{background:linear-gradient(135deg,#fdfdfe,#fafbfc);padding:var(--space-8);min-height:400px;max-height:calc(100vh - 320px);overflow-y:auto;box-shadow:inset 0 1px 3px #00000005}.step-content h3{color:var(--theme-text-primary);margin-bottom:var(--space-6);font-size:var(--font-size-2xl);font-weight:600;line-height:1.2}.step-description{color:var(--theme-text-primary);margin-bottom:var(--space-8);line-height:1.6;font-size:var(--font-size-base)}.choice-summary{background:linear-gradient(135deg,#fdfdfe,#fafbfc);border-radius:var(--radius-md);padding:var(--space-6);margin-bottom:var(--space-8);border-left:4px solid var(--color-primary);box-shadow:0 1px 3px #0000000a,0 1px 2px #0000000f}.option-display{background:linear-gradient(135deg,#fdfdfe,#fafbfc);border-radius:var(--radius-base);padding:var(--space-4);border:1px solid var(--color-border);margin-top:var(--space-4);box-shadow:0 1px 2px #00000008,0 1px 1px #0000000d}.scenario-reflection-modal .option-text{font-weight:600;color:var(--theme-text-primary);margin-bottom:var(--space-2);font-size:var(--font-size-lg)}.option-reasoning{color:var(--theme-text-primary);line-height:1.5}.ethical-impact-chart{margin-bottom:var(--space-8)}.impact-radar{background:linear-gradient(135deg,#fdfdfe,#fafbfc);border-radius:var(--radius-md);padding:var(--space-8);border:1px solid var(--color-border);box-shadow:0 1px 3px #0000000a,0 1px 2px #0000000f;position:relative;overflow:hidden}.impact-radar:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--color-primary),#1e40af);opacity:.3}.impact-dimension{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4)}.dimension-label{min-width:120px;font-weight:600;color:#0f172a;font-size:var(--font-size-sm);text-transform:capitalize}.dimension-bar{flex:1;height:20px;background:var(--color-border);border-radius:10px;overflow:hidden;position:relative}.dimension-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),#1e40af);border-radius:10px;transition:width .5s ease}.dimension-value{min-width:50px;text-align:right;font-weight:600;color:var(--color-primary);font-size:var(--font-size-sm);font-variant-numeric:tabular-nums}.community-stats-summary{background:var(--theme-bg-primary);border-radius:var(--radius-md);padding:var(--space-5);margin-bottom:var(--space-6);text-align:center;box-shadow:var(--shadow-sm)}.community-bar-chart{background:var(--theme-bg-primary);border-radius:var(--radius-md);padding:var(--space-6);border:1px solid var(--theme-border-subtle);margin-bottom:var(--space-8);box-shadow:var(--shadow-sm)}.choice-bar{margin-bottom:var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.choice-bar:last-child{border-bottom:none;margin-bottom:0}.choice-bar.user-choice{background:var(--theme-bg-warning-subtle);border-radius:var(--radius-base);padding:var(--space-4);border:2px solid var(--theme-accent-warning)}.choice-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.choice-text{font-weight:500;color:var(--theme-text-primary);font-size:var(--font-size-base)}.your-choice-indicator{background:var(--theme-accent-warning);color:var(--theme-text-on-accent);padding:var(--space-1) var(--space-3);border-radius:20px;font-size:var(--font-size-xs);font-weight:600}.choice-bar-container{position:relative;height:24px;background:var(--color-border);border-radius:12px;overflow:hidden;margin-bottom:var(--space-2)}.choice-bar-fill{height:100%;background:var(--theme-accent-primary);border-radius:12px;transition:width .6s ease;position:relative}.choice-bar.user-choice .choice-bar-fill{background:var(--theme-accent-warning)}.choice-percentage{position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);font-weight:600;color:#fff;font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.choice-count{font-size:var(--font-size-sm);color:var(--color-gray-600);text-align:right;font-variant-numeric:tabular-nums}.community-insights-container,.reflection-sections{display:grid;gap:var(--space-6)}.insight,.reflection-section{background:var(--theme-bg-primary);border-radius:var(--radius-md);padding:var(--space-6);border:1px solid var(--theme-border-subtle);box-shadow:var(--shadow-sm)}.insight.popular{border-left:4px solid var(--theme-accent-success);background:var(--theme-bg-success-subtle)}.insight.minority{border-left:4px solid var(--theme-accent-primary);background:var(--theme-bg-primary-subtle)}.insight.balanced{border-left:4px solid var(--theme-accent-warning);background:var(--theme-bg-warning-subtle)}.reflection-section h4{color:var(--theme-text-primary);margin-bottom:var(--space-4);font-size:var(--font-size-xl);font-weight:600}.next-exploration{background:var(--theme-bg-info-subtle);border-radius:var(--radius-lg);padding:var(--space-8);margin-top:var(--space-8);border:1px solid var(--theme-accent-info);position:relative;overflow:hidden}.next-exploration:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--theme-accent-info);opacity:.8}.next-exploration h4{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1.375rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;color:var(--theme-text-info);margin-bottom:var(--space-5);text-transform:none;text-shadow:0 1px 2px var(--theme-shadow-info);padding-bottom:var(--space-2);border-bottom:2px solid rgb(14 165 233 / 20%)}.next-exploration .next-scenarios p{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:var(--font-size-base);font-weight:500;line-height:1.6;color:#1e40af;margin-bottom:var(--space-5);font-style:italic;opacity:.9}.scenario-suggestions{display:grid;gap:var(--space-4);margin-top:var(--space-5)}.suggestion-card{background:linear-gradient(135deg,#fff,#f8fafc);border-radius:var(--radius-base);padding:var(--space-5);border:1px solid rgb(14 165 233 / 20%);transition:all .25s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative}.suggestion-card:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 25px #0ea5e926;border-color:#0ea5e9}.suggestion-title{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.125rem;font-weight:650;line-height:1.3;color:#0f172a;margin-bottom:var(--space-2);letter-spacing:-.01em}.suggestion-desc{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.9375rem;font-weight:400;line-height:1.5;color:#475569;opacity:.85}.research-impact{background:linear-gradient(135deg,#f0fdf4,#ecfdf5,#f9fafb);border-radius:var(--radius-lg);padding:var(--space-8);margin-top:var(--space-8);border:1px solid #22c55e;text-align:center;position:relative;overflow:hidden}.research-impact:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#22c55e,#16a34a,#15803d);opacity:.9}.research-impact h4{font-family:Georgia,Times New Roman,serif;font-size:1.5rem;font-weight:600;letter-spacing:-.015em;line-height:1.25;color:#064e3b;text-shadow:0 1px 3px rgb(6 78 59 / 10%);padding-bottom:var(--space-3);border-bottom:2px solid rgb(34 197 94 / 30%);margin-bottom:var(--space-6)}.research-impact>p{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:1.0625rem;font-weight:450;line-height:1.65;color:#166534;margin-bottom:var(--space-6);max-width:42ch;margin-left:auto;margin-right:auto;opacity:.95}.research-stats{display:flex;justify-content:center;gap:var(--space-5);margin-top:var(--space-6);flex-wrap:wrap}.research-stats .stat{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:linear-gradient(135deg,#fff,#f8fafc);padding:var(--space-4) var(--space-5);border-radius:25px;font-weight:600;font-size:.9375rem;color:#065f46;box-shadow:0 4px 6px #22c55e1a,0 1px 3px #0000001a;border:1px solid rgb(34 197 94 / 20%);transition:all .2s ease;letter-spacing:-.005em;line-height:1.4;font-variant-numeric:tabular-nums}.research-stats .stat:hover{transform:translateY(-1px);box-shadow:0 6px 12px #22c55e26,0 2px 4px #0000001a}.reflection-section.alternative-perspectives{background:var(--theme-bg-secondary);border-radius:var(--radius-lg);padding:var(--space-8);margin-top:var(--space-6);border:1px solid var(--theme-border-accent);position:relative;overflow:hidden}.reflection-section.alternative-perspectives:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--theme-accent-primary);opacity:.8}.reflection-section.alternative-perspectives h4{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:1.4375rem;font-weight:650;letter-spacing:-.015em;line-height:1.25;color:var( --theme-text-accent );margin-bottom:var(--space-6);text-shadow:0 1px 2px var(--theme-shadow-subtle);padding-bottom:var(--space-3);border-bottom:2px solid var(--theme-border-secondary)}.alternative-choice-analysis{display:flex;flex-direction:column;gap:var(--space-6)}.alternative-option{background:var(--theme-bg-primary);border-radius:var(--radius-md);padding:var(--space-6);border:1px solid var(--theme-border-secondary);box-shadow:var(--theme-shadow-soft)}.alternative-option h5{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.125rem;font-weight:500;line-height:1.35;color:var( --theme-text-secondary );margin-bottom:var(--space-4);opacity:.9}.alternative-text{font-family:Georgia,Times New Roman,serif;font-size:1.0625rem;font-weight:400;line-height:1.6;color:var( --theme-text-accent );font-style:italic;padding:var(--space-4) var(--space-5);background:var(--theme-bg-tertiary);border-radius:var(--radius-base);border-left:3px solid var(--theme-border-accent);position:relative}.alternative-text:before{content:"“";position:absolute;left:var(--space-3);top:var(--space-2);font-size:1.5rem;color:var(--theme-accent-primary);opacity:.6;font-family:serif}.alternative-text:after{content:"”";position:absolute;right:var(--space-3);bottom:var(--space-2);font-size:1.5rem;color:var(--theme-accent-primary);opacity:.6;font-family:serif}.alternative-questions{display:flex;flex-direction:column;gap:var(--space-5)}.what-if-question{background:var(--theme-bg-primary);border-radius:var(--radius-base);padding:var(--space-5);border:1px solid var(--theme-border-secondary)}.what-if-question strong{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.0625rem;font-weight:600;color:var( --theme-text-accent );display:block;margin-bottom:var(--space-3);line-height:1.4}.impact-differences{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-3)}.impact-differences li{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.9375rem;font-weight:400;line-height:1.55;color:var(--theme-text-secondary);padding:var(--space-2) var(--space-3);background:var(--theme-bg-tertiary);border-radius:var(--radius-sm);border-left:2px solid var(--theme-border-secondary);opacity:.9}.impact-differences li em{font-style:normal;font-weight:500;color:var(--theme-text-accent)}.reflection-prompt{background:var(--theme-bg-secondary);border-radius:var(--radius-base);padding:var(--space-5);border:1px solid var(--theme-border-secondary);border-left:4px solid var(--theme-border-accent);position:relative}.reflection-prompt strong{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1rem;font-weight:600;color:var(--theme-text-accent);display:block;margin-bottom:var(--space-3);line-height:1.4}.reflection-prompt{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:1rem;font-weight:450;line-height:1.65;color:var(--theme-text-secondary)}.no-alternatives{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:var(--font-size-base);font-weight:400;line-height:1.6;color:#9333ea;text-align:center;padding:var(--space-6);font-style:italic;opacity:.8}.impact-explanation{background:var(--theme-bg-tertiary);border-radius:var(--radius-lg);padding:var(--space-8);margin-top:var(--space-6);border:1px solid var(--theme-border-accent);position:relative;overflow:hidden}.impact-explanation:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#16a34a,#15803d,#166534);opacity:.8}.impact-explanation h4{font-family:Georgia,Times New Roman,serif;font-size:1.375rem;font-weight:600;letter-spacing:-.01em;line-height:1.3;color:#166534;margin-bottom:var(--space-6);text-shadow:0 1px 2px rgb(22 101 52 / 10%);padding-bottom:var(--space-3);border-bottom:2px solid rgb(22 163 74 / 25%)}.impact-explanation ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-4)}.impact-explanation li{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:1rem;font-weight:450;line-height:1.6;color:#15803d;padding:var(--space-4) var(--space-5);background:linear-gradient(135deg,#fff,#f6fffa);border-radius:var(--radius-base);border-left:3px solid #22c55e;box-shadow:0 2px 4px #16a34a14,0 1px 2px #0000000d;position:relative}.impact-explanation li:has([emoji*=✅]),.impact-explanation li[data-type=positive]{border-left-color:#16a34a;background:linear-gradient(135deg,#f0fdf4,#fff)}.impact-explanation li:has([emoji*=⚠️]),.impact-explanation li[data-type=warning]{border-left-color:#f59e0b;background:linear-gradient(135deg,#fffbeb,#fff);color:#d97706}.impact-explanation li:has([emoji*=⚖️]),.impact-explanation li[data-type=balanced]{border-left-color:#6366f1;background:linear-gradient(135deg,#eef2ff,#fff);color:#4338ca}.impact-explanation li:before{content:"";position:absolute;left:var(--space-2);top:var(--space-4);width:3px;height:3px;background:currentColor;border-radius:50%;opacity:.6}.community-insights{background:var(--theme-bg-primary);border-radius:var(--radius-lg);padding:var(--space-8);margin-top:var(--space-6);border:1px solid var(--theme-accent-primary);position:relative;overflow:hidden;box-shadow:var(--shadow-sm)}.community-insights:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--theme-accent-primary);opacity:.8}.community-insights-container{display:flex;flex-direction:column;gap:var(--space-6)}.insight{border-radius:var(--radius-lg);padding:var(--space-6);position:relative;overflow:hidden;box-shadow:0 4px 6px #0000000d,0 1px 3px #0000001a}.insight.popular{background:var(--theme-bg-success-subtle);border:1px solid var(--theme-accent-success);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:1.125rem;font-weight:600;line-height:1.4;color:var(--theme-text-success);text-shadow:0 1px 2px var(--theme-shadow-success)}.insight.minority{background:var(--theme-bg-primary-subtle);border:1px solid var(--theme-accent-primary);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1.125rem;font-weight:650;line-height:1.4;color:var( --theme-text-primary-strong );text-shadow:0 1px 2px var(--theme-shadow-primary)}.insight.balanced{background:var(--theme-bg-warning-subtle);border:1px solid var(--theme-accent-warning);font-family:Georgia,Times New Roman,serif;font-size:1.125rem;font-weight:500;line-height:1.45;color:var(--theme-text-warning);text-shadow:0 1px 2px var(--theme-shadow-warning)}.insight strong,.insight [data-percentage]{font-weight:700;font-variant-numeric:tabular-nums;font-size:1.1em}.cultural-note{background:var(--theme-bg-accent-subtle);border-radius:var(--radius-base);padding:var(--space-5);border:1px solid var(--theme-border-accent);border-left:3px solid var(--theme-accent-secondary);position:relative}.cultural-note p{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:.9375rem;font-weight:400;line-height:1.65;color:var(--theme-text-accent);margin:0;opacity:.9}.cultural-note em{font-style:normal;font-weight:500;color:var(--theme-text-accent-strong)}.scenario-reflection-modal .stakeholder-cards,.scenario-reflection-modal .framework-cards,.scenario-reflection-modal .insight-cards{display:grid;gap:var(--space-4)}.scenario-reflection-modal .stakeholder-card,.scenario-reflection-modal .framework-card,.scenario-reflection-modal .insight-card{display:flex;align-items:flex-start;gap:var(--space-4);background:linear-gradient(135deg,#fdfdfe,#fafbfc);border-radius:var(--radius-base);padding:var(--space-4);border:1px solid var(--color-border);transition:all .2s ease;box-shadow:0 1px 2px #00000008,0 1px 1px #0000000d}.scenario-reflection-modal .stakeholder-card:hover,.scenario-reflection-modal .framework-card:hover,.scenario-reflection-modal .insight-card:hover{transform:translateY(-.5px) translateZ(0);box-shadow:var(--shadow-md);backface-visibility:hidden;-webkit-backface-visibility:hidden}.stakeholder-icon,.insight-icon{font-size:var(--font-size-2xl);flex-shrink:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translateZ(0);-webkit-transform:translateZ(0);image-rendering:optimizeQuality;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.scenario-reflection-modal .insight-icon,.scenario-reflection-modal .stakeholder-icon{font-size:var(--font-size-2xl);flex-shrink:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translateZ(0);-webkit-transform:translateZ(0);image-rendering:optimizeQuality;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:static;margin-right:0;margin-left:0;color:inherit;left:auto;top:auto}.scenario-reflection-modal .stakeholder-content h5,.scenario-reflection-modal .framework-name,.scenario-reflection-modal .insight-content h5{color:var(--theme-text-primary);margin-bottom:var(--space-2);font-weight:600;font-size:var(--font-size-base)}.scenario-reflection-modal .stakeholder-perspective,.scenario-reflection-modal .framework-description,.scenario-reflection-modal .insight-content p{color:var(--color-gray-600);font-size:var(--font-size-sm);line-height:1.5;margin:0}.scenario-reflection-modal .framework-card.strong{border-left:4px solid #10b981}.scenario-reflection-modal .framework-card.moderate{border-left:4px solid #f59e0b}.demographic-questions,.scenario-questions,.deep-reflection-questions{display:grid;gap:var(--space-5)}.demo-question,.reflection-question,.reflection-question-deep{background:var(--theme-bg-secondary);border-radius:var(--radius-base);padding:var(--space-5);border:1px solid var(--theme-border-primary);box-shadow:0 1px 2px var(--theme-shadow-light),0 1px 1px var(--theme-shadow-medium)}.demo-question label,.reflection-question label,.reflection-question-deep label{display:block;font-weight:500;color:var(--theme-text-primary);margin-bottom:var(--space-3);line-height:1.4;font-size:var(--font-size-base)}.demo-question select,.reflection-question textarea,.reflection-question-deep textarea{width:100%;padding:var(--space-3);border:1px solid var(--theme-border-primary);border-radius:var(--radius-base);font-size:var(--font-size-base);background:var(--theme-bg-primary);color:var(--theme-text-primary);transition:border-color .2s ease;box-shadow:0 1px 2px var(--theme-shadow-light),0 1px 1px var(--theme-shadow-medium)}.demo-question select:focus,.reflection-question textarea:focus,.reflection-question-deep textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.radio-group{display:flex;flex-direction:column;gap:var(--space-2)}.radio-group label{display:flex;align-items:center;gap:var(--space-2);font-weight:400;margin-bottom:0;cursor:pointer;padding:var(--space-2);border-radius:var(--radius-sm);transition:background-color .2s ease}.radio-group label:hover{background:var(--theme-bg-tertiary)}.radio-group input[type=radio]{width:auto;margin:0}.confidence-scale{display:flex;flex-direction:column;gap:var(--space-2)}.confidence-slider{appearance:none;-webkit-appearance:none;width:100%;height:6px;border-radius:3px;background:var(--theme-border-primary);outline:none}.confidence-slider::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:var(--color-primary);cursor:pointer;box-shadow:var(--shadow-sm)}.confidence-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:none;box-shadow:var(--shadow-sm)}.scale-labels{display:flex;justify-content:space-between;font-size:var(--font-size-xs);color:var(--theme-text-secondary)}.scenario-reflection-modal .modal-footer{display:flex;position:relative;flex-shrink:0;padding:0;margin:0;border:none;background:transparent;min-height:auto;justify-content:space-between}.modal-footer-content{display:flex;justify-content:space-between;align-items:center;padding:var(--space-6);background:var(--theme-bg-secondary);border-top:1px solid var(--theme-border-primary);box-shadow:0 -1px 3px var(--theme-shadow-light),0 -1px 2px var(--theme-shadow-medium)}.footer-actions{display:flex;gap:var(--space-3);align-items:center}.footer-info{flex:1;display:flex;justify-content:center;align-items:center}.scenario-reflection-modal .btn{padding:var(--space-3) var(--space-6);border-radius:var(--radius-base);font-size:var(--font-size-sm);font-weight:500;border:1px solid transparent;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:var(--space-2);text-decoration:none}.scenario-reflection-modal .btn:disabled{opacity:.5;cursor:not-allowed}.scenario-reflection-modal .btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background:#1d4ed8;border-color:#1d4ed8;transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:#fff;color:var(--theme-text-primary);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-gray-50);border-color:var(--color-gray-600)}.btn-outline{background:transparent;color:var(--color-gray-600);border-color:var(--color-border)}.btn-outline:hover:not(:disabled){background:var(--color-gray-50);color:var(--theme-text-primary)}@media (max-width: 768px){.scenario-reflection-modal .modal-dialog{width:100vw;height:100vh;max-width:none;margin:0}.scenario-reflection-modal .modal-content{border-radius:0;height:100vh;display:flex;flex-direction:column}.reflection-step-content{flex:1;overflow-y:auto;padding:var(--space-4);max-height:calc(100vh - 220px)}.progress-steps{flex-wrap:wrap;gap:var(--space-1)}.step-title{display:none}.scenario-reflection-modal .modal-footer{display:flex;position:sticky;bottom:0;z-index:var(--z-docked);background:var(--theme-bg-primary);border-top:1px solid var(--color-border)}.modal-footer-content{flex-direction:column-reverse;gap:var(--space-3);padding:var(--space-4)}.footer-actions{width:100%;justify-content:space-between;min-height:44px}.footer-info{order:-1;justify-content:center}.scenario-reflection-modal .insight-card,.scenario-reflection-modal .stakeholder-card,.scenario-reflection-modal .framework-card{flex-direction:column;text-align:center;gap:var(--space-3)}.scenario-reflection-modal .insight-icon,.scenario-reflection-modal .stakeholder-icon{font-size:1.5rem;align-self:center}.scenario-reflection-modal .insight-cards,.scenario-reflection-modal .stakeholder-cards,.scenario-reflection-modal .framework-cards{gap:var(--space-3)}.next-exploration h4{font-size:1.25rem;margin-bottom:var(--space-4)}.next-exploration .next-scenarios p{font-size:.9375rem;line-height:1.5;margin-bottom:var(--space-4)}.scenario-suggestions{gap:var(--space-3)}.suggestion-card{padding:var(--space-4)}.suggestion-title{font-size:1rem;line-height:1.25}.suggestion-desc{font-size:.875rem}.research-impact h4{font-size:1.375rem;margin-bottom:var(--space-5)}.research-impact>p{font-size:1rem;line-height:1.6;margin-bottom:var(--space-5)}.research-stats{flex-direction:column;gap:var(--space-3);align-items:center}.research-stats .stat{font-size:.875rem;padding:var(--space-3) var(--space-4);width:100%;max-width:280px;text-align:center}.reflection-section.alternative-perspectives h4{font-size:1.25rem;margin-bottom:var(--space-5)}.alternative-choice-analysis{gap:var(--space-5)}.alternative-option,.what-if-question,.reflection-prompt{padding:var(--space-4)}.alternative-option h5{font-size:1rem;margin-bottom:var(--space-3)}.alternative-text{font-size:1rem;line-height:1.55;padding:var(--space-3) var(--space-4)}.alternative-text:before,.alternative-text:after{font-size:1.25rem}.what-if-question strong,.reflection-prompt strong{font-size:1rem;margin-bottom:var(--space-2)}.impact-differences{gap:var(--space-2)}.impact-differences li{font-size:.875rem;line-height:1.5;padding:var(--space-2)}.impact-explanation h4{font-size:1.25rem;margin-bottom:var(--space-5)}.impact-explanation{padding:var(--space-5);margin-top:var(--space-5)}.impact-explanation ul{gap:var(--space-3)}.impact-explanation li{font-size:.9375rem;line-height:1.55;padding:var(--space-3) var(--space-4)}.community-insights{padding:var(--space-5);margin-top:var(--space-5)}.community-insights-container{gap:var(--space-5)}.insight{padding:var(--space-4);font-size:1rem;line-height:1.35}.insight strong{font-size:1.05em}.cultural-note{padding:var(--space-4)}.cultural-note p{font-size:.875rem;line-height:1.6}}@media (max-width: 480px){.scenario-reflection-modal .insight-icon{font-size:1.25rem}.scenario-reflection-modal .insight-card,.scenario-reflection-modal .stakeholder-card,.scenario-reflection-modal .framework-card{padding:var(--space-3);min-height:100px}.reflection-step-content{padding:var( --lab-space-3 )}.scenario-reflection-modal .modal-footer{display:flex;position:sticky;bottom:0;z-index:var(--z-docked);background:var(--theme-bg-primary);border-top:1px solid var(--color-border);box-shadow:0 -2px 8px #0000001a}.modal-footer-content{padding:var(--space-3) var(--space-4);flex-direction:column-reverse;gap:var(--space-2);align-items:stretch}.footer-actions{width:100%;justify-content:space-between;min-height:48px}.footer-info{order:-1;text-align:center;margin-bottom:var(--space-1)}.scenario-reflection-modal .insight-cards,.scenario-reflection-modal .stakeholder-cards,.scenario-reflection-modal .framework-cards{gap:var(--space-2)}.next-exploration,.research-impact{padding:var(--space-5);margin-top:var(--space-5)}.next-exploration h4,.research-impact h4{font-size:1.125rem;margin-bottom:var(--space-3);padding-bottom:var(--space-1)}.next-exploration .next-scenarios p{font-size:.875rem;line-height:1.45;margin-bottom:var(--space-3)}.research-impact>p{font-size:.9375rem;line-height:1.55;margin-bottom:var(--space-4)}.suggestion-card{padding:var(--space-3)}.suggestion-title{font-size:.9375rem;margin-bottom:var(--space-1)}.suggestion-desc{font-size:.8125rem;line-height:1.4}.research-stats .stat{font-size:.8125rem;padding:var(--space-2) var(--space-3)}.reflection-section.alternative-perspectives{padding:var(--space-5);margin-top:var(--space-4)}.reflection-section.alternative-perspectives h4{font-size:1.125rem;margin-bottom:var(--space-4);padding-bottom:var(--space-2)}.alternative-choice-analysis{gap:var(--space-4)}.alternative-option,.what-if-question,.reflection-prompt{padding:var(--space-3)}.alternative-option h5{font-size:.9375rem;margin-bottom:var(--space-2)}.alternative-text{font-size:.9375rem;line-height:1.5;padding:var(--space-2) var(--space-3)}.alternative-text:before,.alternative-text:after{font-size:1.125rem}.what-if-question strong,.reflection-prompt strong{font-size:.9375rem;margin-bottom:var(--space-1)}.impact-differences li{font-size:.8125rem;line-height:1.4;padding:var(--space-1) var(--space-2)}.impact-explanation{padding:var(--space-4);margin-top:var(--space-4)}.impact-explanation h4{font-size:1.125rem;margin-bottom:var(--space-4);padding-bottom:var(--space-2)}.impact-explanation ul{gap:var(--space-2)}.impact-explanation li{font-size:.875rem;line-height:1.5;padding:var(--space-2) var(--space-3)}.community-insights{padding:var(--space-4);margin-top:var(--space-4)}.community-insights-container{gap:var(--space-4)}.insight{padding:var(--space-3);font-size:.9375rem;line-height:1.3}.insight strong{font-size:1em}.cultural-note{padding:var(--space-3)}.cultural-note p{font-size:.8125rem;line-height:1.55}}@media (min-width: 481px) and (max-width: 768px){.scenario-reflection-modal .insight-icon{font-size:1.75rem}.scenario-reflection-modal .insight-cards,.scenario-reflection-modal .stakeholder-cards,.scenario-reflection-modal .framework-cards{gap:var(--space-4)}.scenario-reflection-modal .insight-card,.scenario-reflection-modal .stakeholder-card,.scenario-reflection-modal .framework-card{min-height:120px;padding:var(--space-4)}.reflection-step-content{padding:var(--space-5)}.next-exploration h4{font-size:1.3125rem}.next-exploration .next-scenarios p{font-size:1rem;line-height:1.55}.research-impact h4{font-size:1.4375rem}.research-impact>p{font-size:1.03125rem;line-height:1.6}.research-stats{gap:var(--space-4)}.research-stats .stat{font-size:.9375rem;padding:var(--space-4) var(--space-5)}.reflection-section.alternative-perspectives h4{font-size:1.3125rem}.alternative-option h5{font-size:1.0625rem}.alternative-text{font-size:1.03125rem;line-height:1.58}.alternative-text:before,.alternative-text:after{font-size:1.375rem}.what-if-question strong,.reflection-prompt strong{font-size:1.03125rem}.impact-differences li{font-size:.9375rem;line-height:1.52}.impact-explanation h4{font-size:1.3125rem}.impact-explanation li{font-size:.9375rem;line-height:1.58}.insight{font-size:1.0625rem;line-height:1.38}.insight strong{font-size:1.08em}.cultural-note p{font-size:.9375rem;line-height:1.62}}.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}@media (prefers-reduced-motion: reduce){.progress-fill,.choice-bar-fill,.dimension-fill,.btn,.choice-bar{transition:none}}body.modal-open .scenario-reflection-modal.show~header.header,body.modal-open .scenario-reflection-modal.show~.main-nav,body.modal-open .scenario-reflection-modal.show~.nav-container,body.modal-open.reflection-modal-open header.header,body.modal-open.reflection-modal-open .main-nav,body.modal-open.reflection-modal-open .nav-container{opacity:.3;filter:blur(2px);transition:all .3s ease;pointer-events:none}body.modal-open .scenario-reflection-modal.show~.floating-action-tab-link,body.modal-open .scenario-reflection-modal.show~.floating-surprise-tab-link,body.modal-open .scenario-reflection-modal.show~.floating-tour-tab-link,body.modal-open.reflection-modal-open .floating-action-tab-link,body.modal-open.reflection-modal-open .floating-surprise-tab-link,body.modal-open.reflection-modal-open .floating-tour-tab-link{opacity:.2;filter:blur(1px);transition:all .3s ease}.reflection-modal-active header.header,.reflection-modal-active .main-nav,.reflection-modal-active .nav-container{opacity:.3;filter:blur(2px);transition:all .3s ease;pointer-events:none}.reflection-modal-active .floating-action-tab-link,.reflection-modal-active .floating-surprise-tab-link,.reflection-modal-active .floating-tour-tab-link{opacity:.2;filter:blur(1px);transition:all .3s ease}.scenario-reflection-modal .modal-backdrop{background-color:#0009;backdrop-filter:blur(8px)}}@layer overrides{.scenario-reflection-modal .modal-footer.scenario-reflection-footer.mobile-layout.small-mobile-layout{position:fixed;bottom:0;left:0;right:0}.scenario-reflection-modal .modal-dialog:has(.modal-footer.scenario-reflection-footer.mobile-layout.small-mobile-layout) .modal-body{overflow-y:auto;padding-bottom:140px}@media (prefers-contrast: high){:root{--lab-gray: #000;--modal-accent: var(--color-primary);--lab-dark-gray: #000}}body.dark-mode .scenario-reflection-content,body.theme-dark .scenario-reflection-content{background:var(--theme-bg-primary);color:var(--theme-text-primary)}body.dark-mode .reflection-step-content,body.theme-dark .reflection-step-content{background:var(--theme-bg-secondary);color:var(--theme-text-primary);box-shadow:inset 0 1px 3px #0006}body.dark-mode .reflection-step-content h3,body.dark-mode .step-content h3,body.theme-dark .reflection-step-content h3,body.theme-dark .step-content h3{color:var(--theme-text-primary)}body.dark-mode .step-description,body.theme-dark .step-description{color:var(--theme-text-secondary)}body.dark-mode .reflection-progress,body.theme-dark .reflection-progress{background:var(--theme-bg-secondary);border-bottom-color:var(--theme-border);box-shadow:0 1px 2px #0006,inset 0 1px #60a5fa1a}body.dark-mode .progress-bar,body.theme-dark .progress-bar{background:var(--theme-border)}body.dark-mode .progress-fill,body.theme-dark .progress-fill{background:linear-gradient(90deg,var(--color-primary),#3b82f6)}body.dark-mode .progress-label,body.theme-dark .progress-label{color:var(--theme-text-primary)}body.dark-mode .progress-text,body.theme-dark .progress-text{color:var(--theme-text-secondary)}body.dark-mode .step-title,body.theme-dark .step-title{color:var(--theme-text-primary)}body.dark-mode .choice-summary,body.theme-dark .choice-summary{background:var(--theme-bg-secondary);border-left-color:var(--color-primary)}body.dark-mode .option-display,body.theme-dark .option-display{background:var(--theme-bg-secondary);border-color:var(--theme-border)}body.dark-mode .scenario-reflection-modal .option-text,body.dark-mode .option-reasoning,body.theme-dark .scenario-reflection-modal .option-text,body.theme-dark .option-reasoning,body.dark-mode .dimension-label,body.theme-dark .dimension-label{color:var(--theme-text-primary)}body.dark-mode .impact-explanation li,body.theme-dark .impact-explanation li{background:var(--theme-bg-secondary);border-left-color:var(--color-primary);color:var(--theme-text-primary);box-shadow:0 2px 4px var(--theme-shadow)}body.dark-mode .choice-bar.user-choice,body.theme-dark .choice-bar.user-choice{background:var(--theme-bg-secondary);border-color:var(--color-primary)}body.dark-mode .scenario-reflection-modal .alternative-option,body.dark-mode .scenario-reflection-modal .what-if-question,body.dark-mode .scenario-reflection-modal .reflection-prompt,body.dark-mode .scenario-reflection-modal .stakeholder-card,body.dark-mode .scenario-reflection-modal .framework-card,body.dark-mode .scenario-reflection-modal .insight-card,body.theme-dark .scenario-reflection-modal .alternative-option,body.theme-dark .scenario-reflection-modal .what-if-question,body.theme-dark .scenario-reflection-modal .reflection-prompt,body.theme-dark .scenario-reflection-modal .stakeholder-card,body.theme-dark .scenario-reflection-modal .framework-card,body.theme-dark .scenario-reflection-modal .insight-card{background:var(--theme-bg-secondary);border-color:var(--theme-border);color:var(--theme-text-primary);box-shadow:0 2px 4px var(--theme-shadow)}body.dark-mode .scenario-reflection-modal .stakeholder-content h5,body.dark-mode .scenario-reflection-modal .framework-name,body.dark-mode .scenario-reflection-modal .insight-content h5,body.theme-dark .scenario-reflection-modal .stakeholder-content h5,body.theme-dark .scenario-reflection-modal .framework-name,body.theme-dark .scenario-reflection-modal .insight-content h5{color:var(--theme-text-primary)}body.dark-mode .research-impact,body.dark-mode .next-exploration,body.theme-dark .research-impact,body.theme-dark .next-exploration{background:var(--theme-bg-secondary);border-color:var(--color-primary);color:var(--theme-text-primary)}body.dark-mode .suggestion-card,body.theme-dark .suggestion-card{background:var(--theme-bg-secondary);border-color:var(--theme-border);color:var(--theme-text-primary);box-shadow:0 2px 4px var(--theme-shadow)}body.dark-mode .suggestion-title,body.dark-mode .suggestion-desc,body.theme-dark .suggestion-title,body.theme-dark .suggestion-desc,body.dark-mode .impact-differences li em,body.theme-dark .impact-differences li em,body.dark-mode .scenario-reflection-modal .reflection-prompt strong,body.dark-mode .scenario-reflection-modal .what-if-question strong,body.dark-mode .scenario-reflection-modal .alternative-text,body.dark-mode .scenario-reflection-modal .alternative-option h5,body.theme-dark .scenario-reflection-modal .reflection-prompt strong,body.theme-dark .scenario-reflection-modal .what-if-question strong,body.theme-dark .scenario-reflection-modal .alternative-text,body.theme-dark .scenario-reflection-modal .alternative-option h5{color:var(--theme-text-primary)}body.dark-mode .research-stats .stat,body.theme-dark .research-stats .stat{background:var(--theme-bg-secondary);border-color:var(--theme-border);color:var(--theme-text-primary);box-shadow:0 2px 4px var(--theme-shadow)}body.dark-mode .btn-primary,body.theme-dark .btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}body.dark-mode .btn-secondary,body.theme-dark .btn-secondary{background:var(--theme-bg-secondary);border-color:var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .impact-radar,body.theme-dark .impact-radar{background:var(--theme-bg-secondary);border-color:var(--theme-border);box-shadow:0 1px 3px #0003,0 1px 2px #0000004d}body.dark-mode .impact-radar:before,body.theme-dark .impact-radar:before{background:linear-gradient(90deg,var(--color-primary),#3b82f6);opacity:.6}body.dark-mode .modal-footer-content,body.theme-dark .modal-footer-content{background:var(--theme-bg-secondary);border-top-color:var(--theme-border-primary);box-shadow:0 -1px 3px var(--theme-shadow-medium),0 -1px 2px var(--theme-shadow-heavy)}}@layer components{.professional-footer .footer-bottom{display:flex;justify-content:center;width:100%;box-sizing:border-box}.professional-footer .footer-bottom-content{display:flex;flex-direction:column;align-items:center;gap:var(--container-padding, 20px);width:100%;max-width:1200px;box-sizing:border-box;padding:0 20px;margin:0 auto}.professional-footer .footer-social-cert-container{width:100%;justify-content:center}.footer{background:var(--color-gray-900);color:var(--color-gray-100);margin-top:var(--spacing-20)}.footer-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-12);margin-bottom:var(--spacing-12)}.footer-section{padding:var(--spacing-6)}.footer-section-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-white);margin-bottom:var(--spacing-4);border-bottom:2px solid var(--color-primary);padding-bottom:var(--spacing-2);display:inline-block}.footer-section-content{color:var(--color-gray-300);line-height:var(--line-height-relaxed)}.footer-section-content p{margin-bottom:var(--spacing-3);font-size:var(--font-size-sm)}.footer-list{list-style:none;padding:0;margin:var(--spacing-4) 0}.footer-list li{padding:var(--spacing-1) 0;font-size:var(--font-size-sm);position:relative;padding-left:var(--spacing-4)}.footer-list li:before{content:"•";color:var(--color-primary);position:absolute;left:0;top:var(--spacing-1)}.footer-link{color:var(--color-primary-light);text-decoration:none;transition:color var(--transition-fast)}.footer-link:hover,.footer-link:focus{color:var(--color-white);text-decoration:underline}.contact-info{margin-top:var(--spacing-4);padding:var(--spacing-4);border-top:1px solid var(--color-gray-700);background:var(--color-gray-800);border-radius:var(--border-radius-md);color:var(--color-gray-300)}.contact-info p{margin-bottom:var(--spacing-2);font-size:var(--font-size-sm);color:var(--color-gray-300)}body{overflow-x:hidden}.professional-footer{background:linear-gradient(135deg,#2c3e50,#34495e);color:#fff;position:relative;margin-top:60px;width:100%;max-width:none;box-sizing:border-box;padding:0;border:none;display:block;clear:both;height:auto}.footer-wave{position:absolute;top:-50px;left:0;width:100%;height:50px;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120" preserveAspectRatio="none"><path d="M985.66,92.83C906.67,72,823.78,31,743.84,14.19c-82.26-17.34-168.06-16.33-250.45.39-57.84,11.73-114,31.07-172,41.86A600.21,600.21,0,0,1,0,27.35V120H1200V95.8C1132.19,118.92,1055.71,111.31,985.66,92.83Z" fill="%232c3e50"></path></svg>') no-repeat;background-size:cover}.professional-footer .footer-content{max-width:1200px!important;margin:0 auto!important;padding:60px 20px 0!important;width:100%!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important;align-items:stretch;gap:clamp(20px,4vw,40px)}.professional-footer .footer-main{order:1}.professional-footer .footer-bottom{order:2}.footer-main{display:grid;grid-template-columns:minmax(200px,min(350px,30vw)) 1fr;gap:clamp(1rem,var(--container-padding, 60px),4vw);width:100%;box-sizing:border-box;align-items:start;overflow-x:hidden;margin:0 auto}.footer-brand{max-width:min(350px,30vw);min-width:min(200px,25vw);width:100%;margin-bottom:0;display:flex;flex-direction:column;gap:var(--container-padding, 15px);overflow-wrap:break-word}.footer-sections{width:100%;display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:flex-start;gap:clamp(1rem,2vw,2rem);box-sizing:border-box;margin-bottom:0;min-width:0;overflow-x:visible}.professional-footer .footer-sections .footer-section{flex:1 1 0;min-width:0}.brand-logo{display:flex;align-items:center;margin-bottom:0}.brand-logo a{display:inline-block;transition:transform .3s ease,opacity .3s ease;border-radius:8px;outline:none}.brand-logo a:hover{transform:scale(1.05);opacity:.9}.brand-logo a:focus{outline:2px solid #3498db;outline-offset:4px}.brand-logo-img{height:clamp(50px,8vw,80px);width:auto;max-width:clamp(200px,30vw,320px);object-fit:contain;filter:brightness(1.1);display:block}.brand-tagline{color:#bdc3c7;margin-bottom:0;line-height:1.5;font-size:1rem}.brand-stats{display:flex;gap:var(--container-padding, 20px);margin-top:0;justify-content:flex-start}.stat-item{text-align:center}.stat-number{display:block;font-size:1.5rem;font-weight:700;color:#3498db}.stat-label{font-size:.85rem;color:#95a5a6;text-transform:uppercase;letter-spacing:.5px}.footer-section{flex:1;max-width:33.333%;min-width:200px;margin-bottom:0;display:flex;flex-direction:column;gap:1rem;overflow-wrap:break-word}.footer .section-title,.footer-content .section-title{flex-shrink:0;font-size:calc(1.1rem * var(--font-scale, 1));font-weight:600;margin-bottom:0;color:#ecf0f1;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #3498db;padding-bottom:8px;display:inline-block}.section-links{flex:1 1 auto;list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--container-padding, 12px)}.section-links li{margin-bottom:0}.section-links a{display:flex;align-items:center;gap:8px;color:#bdc3c7;text-decoration:none;transition:all .3s ease;padding:5px 0;border-radius:4px}.section-links a:hover{color:#3498db;transform:translate(5px)}.link-icon{font-size:.9rem;opacity:.8}.link-text{font-size:.95rem}.footer-bottom{border-top:1px solid #34495e;padding:var(--container-padding, 30px) 0}.footer-bottom-content{display:flex;flex-direction:column;gap:var(--container-padding, 20px)}.footer-copyright{order:1;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:var(--container-padding, 15px) 0;border-bottom:1px solid #34495e;gap:5px}.footer-social-cert-container{order:2;display:flex;justify-content:center;gap:var(--container-padding, 40px);align-items:center;flex-wrap:nowrap}.copyright-text{font-weight:600;margin:0;color:#ecf0f1;flex-shrink:0}.legal-notice{font-size:.9rem;color:#95a5a6;margin:0;flex-shrink:0}.footer-social{display:flex;align-items:center;gap:15px}.social-label{font-size:.9rem;color:#95a5a6;font-weight:500}.social-links{display:flex;flex-flow:row nowrap;justify-content:flex-start;align-items:center;gap:clamp(.5rem,var(--container-padding, 15px),3vw)}.social-links a{flex:1 1 calc(33.333% - clamp(.5rem,var(--container-padding, 15px),3vw));max-width:calc(33.333% - clamp(.5rem,var(--container-padding, 15px),3vw));min-width:clamp(80px,15vw,120px);display:flex;align-items:center;justify-content:center;gap:6px;color:#bdc3c7;text-decoration:none;padding:8px 12px;border-radius:8px;background:#ffffff0d;transition:all .3s ease;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.social-links a:hover{background:#3498db33;color:#3498db;transform:translateY(-2px)}.footer-certifications{display:flex;flex-flow:row nowrap;justify-content:flex-start;align-items:center;gap:clamp(.5rem,var(--container-padding, 20px),3vw)}.certification-item{flex:1 1 calc(33.333% - clamp(.5rem,var(--container-padding, 20px),3vw));max-width:calc(33.333% - clamp(.5rem,var(--container-padding, 20px),3vw));min-width:clamp(80px,15vw,120px);display:flex;align-items:center;justify-content:flex-start;gap:6px;font-size:.85rem;color:#95a5a6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cert-icon{font-size:.9rem}@media only screen and (width <= 767px){.footer-main{display:flex;flex-flow:column wrap;gap:clamp(1rem,var(--container-padding, 2rem),4vw);max-width:100vw;overflow-x:hidden}.footer-brand{max-width:100vw;min-width:auto;width:100%}.footer-sections{width:100%;gap:1rem}.footer-section{flex:1;max-width:33.333%;min-width:120px}.footer-bottom-content{flex-direction:column;text-align:center;gap:var(--container-padding, 1rem)}.footer-social-cert-container{flex-direction:column;gap:var(--container-padding, 1rem)}.brand-stats{justify-content:center}.professional-footer .footer-content{min-height:500px}.footer-bottom{min-height:120px}}@media only screen and (width <= 479px){.professional-footer .footer-content{padding:40px 20px 0;min-height:600px}.footer-sections{flex-direction:column;gap:2rem}.footer-section{flex:none;max-width:100%;min-width:auto}.social-links{flex-wrap:nowrap;justify-content:center;gap:clamp(.25rem,var(--container-padding, 10px),2vw)}.social-links a{min-width:clamp(60px,12vw,100px);font-size:.8rem;padding:6px 8px}.footer-certifications{align-items:center;gap:clamp(.25rem,var(--container-padding, 10px),2vw)}.certification-item{min-width:clamp(60px,12vw,100px);font-size:.75rem}.footer-bottom{min-height:140px}.footer .section-title,.footer-content .section-title{font-size:calc(1rem * var(--font-scale, .9))}.brand-name{font-size:calc(1.5rem * var(--font-scale, .9))}.brand-logo-img{height:clamp(40px,6vw,60px);max-width:clamp(160px,25vw,240px)}}@media (min-width: 1024px){.professional-footer .footer-sections{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,2vw,2rem);align-items:start}.professional-footer .footer-sections .footer-section{flex:initial;max-width:none;min-width:0}.professional-footer .footer-bottom-content{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:clamp(12px,2vw,20px)}.professional-footer .footer-copyright{order:1;display:flex;flex-direction:row;align-items:center;gap:12px;padding:0;border-bottom:none}.professional-footer .copyright-text,.professional-footer .legal-notice{margin:0;white-space:nowrap}.professional-footer .footer-social-cert-container{order:2;width:100%;justify-content:flex-start}}@media only screen and (width >= 768px) and (width <= 1279px){.professional-footer .footer-content{padding:50px 20px 0;min-height:350px}.footer-brand{min-width:200px;max-width:280px}.footer-bottom{min-height:90px}}@media only screen and (width >= 1280px){.professional-footer .footer-content{padding:60px 20px 0;min-height:400px}.footer-bottom{min-height:100px}}.professional-footer a:focus{outline:2px solid #3498db;outline-offset:2px;border-radius:2px}@media (prefers-contrast: high){.professional-footer{background:#000;border-top:2px solid #fff}.footer .section-title,.footer-content .section-title{border-bottom-color:#fff}.section-links a:hover{background:#ffffff1a}}@media (prefers-reduced-motion: reduce){.section-links a,.social-links a{transition:none}.section-links a:hover,.social-links a:hover{transform:none}}.section-links a,.social-links a{transform:translateZ(0);will-change:transform,color}.footer-bottom{min-height:100px}}@layer utilities{.back-to-top{position:fixed;bottom:2rem;right:2rem;width:3.5rem;height:3.5rem;background:transparent;color:var(--color-primary);border:2px solid var(--color-primary);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;box-shadow:0 4px 12px #0000001a;transition:all var(--transition-base);z-index:1000;opacity:0;visibility:hidden;transform:translateY(10px);backdrop-filter:blur(10px)}.back-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.back-to-top:hover{background:var(--color-primary);color:var(--color-white);transform:translateY(-2px);box-shadow:0 6px 16px #00000026;border-color:var(--color-primary)}.back-to-top:active{transform:translateY(0);box-shadow:0 2px 8px #0000001a}.back-to-top:focus{outline:2px solid var(--color-primary-light);outline-offset:2px}@media (width <= 768px){.back-to-top{bottom:1rem;right:1rem;width:3rem;height:3rem;font-size:1rem}}@media (width <= 480px){.back-to-top{bottom:5rem}}body.dark-mode .back-to-top{background:transparent;color:var(--theme-text-primary);border:2px solid var(--theme-border);box-shadow:0 4px 12px var(--theme-shadow-hover)}body.dark-mode .back-to-top:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 6px 16px var(--theme-shadow-hover)}body.dark-mode .back-to-top:focus{outline:2px solid var(--color-primary)}}@layer tokens,base,components,overrides;@layer tokens{:root{--brand-primary-50: #eff6ff;--brand-primary-100: #dbeafe;--brand-primary-200: #bfdbfe;--brand-primary-300: #93c5fd;--brand-primary-400: #60a5fa;--brand-primary-500: #3b82f6;--brand-primary-600: #2563eb;--brand-primary-700: #1d4ed8;--brand-primary-800: #1e40af;--brand-primary-900: #1e3a8a;--brand-primary-950: #172554;--brand-success-50: #ecfdf5;--brand-success-100: #d1fae5;--brand-success-200: #a7f3d0;--brand-success-300: #6ee7b7;--brand-success-400: #34d399;--brand-success-500: #10b981;--brand-success-600: #059669;--brand-success-700: #047857;--brand-success-800: #065f46;--brand-success-900: #064e3b;--brand-success-950: #022c22;--brand-warning-50: #fffbeb;--brand-warning-100: #fef3c7;--brand-warning-200: #fde68a;--brand-warning-300: #fcd34d;--brand-warning-400: #fbbf24;--brand-warning-500: #f59e0b;--brand-warning-600: #d97706;--brand-warning-700: #b45309;--brand-warning-800: #92400e;--brand-warning-900: #78350f;--brand-warning-950: #451a03;--brand-error-50: #fef2f2;--brand-error-100: #fee2e2;--brand-error-200: #fecaca;--brand-error-300: #fca5a5;--brand-error-400: #f87171;--brand-error-500: #ef4444;--brand-error-600: #dc2626;--brand-error-700: #b91c1c;--brand-error-800: #991b1b;--brand-error-900: #7f1d1d;--brand-error-950: #450a0a;--ethics-utilitarian-50: #eff6ff;--ethics-utilitarian-500: #3b82f6;--ethics-utilitarian-700: #1d4ed8;--ethics-deontological-50: #f0fdf4;--ethics-deontological-500: #22c55e;--ethics-deontological-700: #15803d;--ethics-virtue-50: #faf5ff;--ethics-virtue-500: #a855f7;--ethics-virtue-700: #7c2d12;--learning-locked: #6b7280;--learning-available: #3b82f6;--learning-progress: #f59e0b;--learning-completed: #10b981;--learning-mastery: #7c2d12;--primitive-white: #fff;--primitive-black: #000;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--gray-950: #030712;--data-color-1: #3b82f6;--data-color-2: #10b981;--data-color-3: #f59e0b;--data-color-4: #ef4444;--data-color-5: #8b5cf6;--data-color-6: #06b6d4;--data-color-7: #84cc16;--data-color-8: #f97316;--progress-empty: var(--gray-200);--progress-low: var(--brand-error-500);--progress-medium: var(--brand-warning-500);--progress-high: var(--brand-success-500);--progress-complete: var(--brand-primary-500);--color-brand-primary: #1a73e8;--color-brand-secondary: #667eea;--color-brand-tertiary: #34a853;--color-brand-accent: #4facfe;--color-primary: #1a73e8;--color-primary-dark: #1565c0;--color-primary-light: #42a5f5;--color-secondary: #6b7280;--color-secondary-dark: #4b5563;--color-success: #34a853;--color-warning: #fbbc04;--color-error: #ea4335;--color-info: #4285f4;--color-warm-accent: #f59e0b;--color-cool-accent: #06b6d4;--color-accent-primary: #8b5cf6;--color-accent-secondary: #06b6d4;--color-creativity: #8b5cf6;--color-data-viz: #6366f1;--color-learning-success: #14b8a6;--color-white: var(--primitive-white);--color-black: var(--primitive-black);--color-gray-50: var(--gray-50);--color-gray-100: var(--gray-100);--color-gray-200: var(--gray-200);--color-gray-300: var(--gray-300);--color-gray-400: var(--gray-400);--color-gray-500: var(--gray-500);--color-gray-600: var(--gray-600);--color-gray-700: var(--gray-700);--color-gray-800: var(--gray-800);--color-gray-900: var(--gray-900);--surface-background: var(--primitive-white);--surface-container: var(--gray-50);--surface-card: var(--primitive-white);--surface-overlay: var(--gray-100);--surface-elevated: var(--primitive-white);--surface-interactive: var(--gray-100);--surface-disabled: var(--gray-200);--content-primary: var(--gray-900);--content-secondary: var(--gray-700);--content-tertiary: var(--gray-500);--content-muted: var(--gray-400);--content-inverse: var(--primitive-white);--content-on-accent: var(--primitive-white);--content-disabled: var(--gray-400);--border-subtle: var(--gray-200);--border-default: var(--gray-300);--border-strong: var(--gray-400);--border-interactive: var(--gray-500);--border-focus: var(--brand-primary-500);--border-disabled: var(--gray-200);--accent-primary: var(--brand-primary-500);--accent-primary-hover: var(--brand-primary-600);--accent-primary-active: var(--brand-primary-700);--accent-primary-subtle: var(--brand-primary-100);--accent-success: var(--brand-success-500);--accent-success-hover: var(--brand-success-600);--accent-success-active: var(--brand-success-700);--accent-success-subtle: var(--brand-success-100);--accent-warning: var(--brand-warning-500);--accent-warning-hover: var(--brand-warning-600);--accent-warning-active: var(--brand-warning-700);--accent-warning-subtle: var(--brand-warning-100);--accent-error: var(--brand-error-500);--accent-error-hover: var(--brand-error-600);--accent-error-active: var(--brand-error-700);--accent-error-subtle: var(--brand-error-100);--scenario-locked: var(--gray-400);--scenario-locked-bg: var(--gray-100);--scenario-available: var(--brand-primary-500);--scenario-available-bg: var(--brand-primary-50);--scenario-progress: var(--brand-warning-500);--scenario-progress-bg: var(--brand-warning-50);--scenario-completed: var(--brand-success-500);--scenario-completed-bg: var(--brand-success-50);--scenario-mastery: var(--brand-primary-700);--scenario-mastery-bg: var(--brand-primary-100);--badge-achievement: var(--brand-warning-500);--badge-achievement-bg: var(--brand-warning-100);--badge-progress: var(--brand-primary-500);--badge-progress-bg: var(--brand-primary-100);--badge-mastery: var(--brand-success-600);--badge-mastery-bg: var(--brand-success-100);--badge-special: #a855f7;--badge-special-bg: #faf5ff;--ethical-utilitarian: var(--ethics-utilitarian-500);--ethical-utilitarian-bg: var(--ethics-utilitarian-50);--ethical-deontological: var(--ethics-deontological-500);--ethical-deontological-bg: var(--ethics-deontological-50);--ethical-virtue: var(--ethics-virtue-500);--ethical-virtue-bg: var(--ethics-virtue-50);--hover-surface: var(--gray-50);--hover-overlay: rgb(0 0 0 / 4%);--hover-brightness: 1.05;--active-surface: var(--gray-100);--active-overlay: rgb(0 0 0 / 8%);--active-brightness: .95;--interactive-fg: var(--theme-text-primary);--interactive-fg-hover: var(--theme-text-primary);--interactive-fg-active: var(--theme-text-primary);--interactive-bg-hover: var(--hover-surface);--interactive-bg-active: var(--active-surface);--interactive-border-hover: var(--theme-border-focus);--cursor-interactive: pointer;--cursor-disabled: not-allowed;--focus-outline-style: solid;--focus-outline-width: var(--focus-ring-width, 2px);--focus-outline-offset: var(--focus-ring-offset, 2px);--hover-translate-y: -1px;--shadow-hover: 0 4px 12px rgb(0 0 0 / 10%);--shadow-active: 0 2px 6px rgb(0 0 0 / 12%);--transition-fast: all var(--duration-150) var(--ease-in-out);--transition-normal: all var(--duration-200) var(--ease-in-out);--transition-slow: all var(--duration-300) var(--ease-in-out);--underline-thickness: 2px;--underline-offset: 2px;--border-width: 1px;--loading-shimmer: linear-gradient( 90deg, transparent, var(--gray-100), transparent );--loading-pulse: var(--gray-200);--loading-spinner: var(--brand-primary-500);--disabled-surface: var(--gray-100);--disabled-content: var(--gray-400);--disabled-cursor: not-allowed;--color-surface: var(--color-white);--color-surface-secondary: var(--color-gray-50);--color-surface-tertiary: var(--color-gray-100);--color-on-surface: var(--color-gray-900);--color-on-surface-secondary: var(--color-gray-700);--color-on-surface-tertiary: var(--color-gray-500);--theme-bg-primary: var(--color-surface);--theme-bg-secondary: var(--color-surface-secondary);--theme-bg-tertiary: var(--color-surface-tertiary);--theme-bg-interactive: var(--color-gray-50);--theme-bg-overlay: rgb(0 0 0 / 50%);--theme-bg-overlay-light: rgb(255 255 255 / 20%);--theme-bg-overlay-medium: rgb(255 255 255 / 30%);--theme-border-overlay: rgb(255 255 255 / 30%);--theme-text-primary: var(--color-on-surface);--theme-text-secondary: var(--color-on-surface-secondary);--theme-text-tertiary: var(--color-on-surface-tertiary);--theme-text-muted: var(--color-gray-400);--theme-text-inverse: var(--color-white);--theme-text-inverse-secondary: rgb(255 255 255 / 80%);--theme-text-on-accent: var(--color-white);--theme-border-primary: var(--color-gray-200);--theme-border-secondary: var(--color-gray-300);--theme-border-interactive: var(--color-gray-400);--theme-border-focus: var(--color-primary);--theme-border-error: var(--color-error);--theme-border-success: var(--color-success);--theme-hover-opacity: var(--hover-opacity);--theme-disabled-opacity: var(--disabled-opacity);--theme-accent-primary: var(--color-primary);--theme-accent-secondary: var(--color-secondary);--theme-accent-success: var(--color-success);--theme-accent-warning: var(--color-warning);--theme-accent-error: var(--color-error);--theme-accent-info: var(--color-info);--theme-accent-creativity: var(--color-creativity);--theme-accent-data-viz: var(--color-data-viz);--theme-accent-learning: var(--color-learning-success);--theme-accent-warm: var(--color-warm-accent);--theme-accent-cool: var(--color-cool-accent);--hero-title-gradient-light: linear-gradient( 135deg, var(--primitive-white) 0%, var(--gray-100) 20%, var(--brand-primary-200) 60%, var(--brand-primary-500) 100% );--hero-title-gradient-dark: linear-gradient( 135deg, var(--gray-100) 0%, var(--gray-300) 40%, var(--gray-500) 100% );--theme-focus-ring: var(--color-focus-ring);--theme-selection-bg: var(--color-selection);--theme-highlight-bg: var(--color-highlight);--theme-shadow-light: rgb(0 0 0 / 10%);--theme-shadow-medium: rgb(0 0 0 / 15%);--theme-shadow-heavy: rgb(0 0 0 / 20%);--theme-shadow-focus: rgb(59 130 246 / 40%);--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 5%);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 10%), 0 1px 2px 0 rgb(0 0 0 / 6%);--shadow-base: 0 4px 6px -1px rgb(0 0 0 / 10%), 0 2px 4px -1px rgb(0 0 0 / 6%);--shadow-md: 0 10px 15px -3px rgb(0 0 0 / 10%), 0 4px 6px -2px rgb(0 0 0 / 5%);--shadow-lg: 0 20px 25px -5px rgb(0 0 0 / 10%), 0 10px 10px -5px rgb(0 0 0 / 4%);--shadow-xl: 0 25px 50px -12px rgb(0 0 0 / 25%);--shadow-2xl: 0 50px 100px -20px rgb(0 0 0 / 25%);--shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / 6%);--gradient-primary: linear-gradient(135deg, #1a73e8 0%, #667eea 100%);--gradient-success: linear-gradient(135deg, #34a853 0%, #10b981 100%);--gradient-premium: linear-gradient(135deg, #1a73e8 0%, #8b5cf6 100%);--gradient-warm: linear-gradient(135deg, #f59e0b 0%, #ea4335 100%);--gradient-cool: linear-gradient(135deg, #06b6d4 0%, #3b82f6 100%);--gradient-data: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--gradient-learning: linear-gradient(135deg, #14b8a6 0%, #34a853 100%);--gradient-modal-accent: linear-gradient( 90deg, var(--color-brand-primary) 0%, var(--color-brand-secondary) 25%, var(--color-accent-primary) 50%, var(--color-accent-secondary) 75%, var(--color-brand-accent) 100% );--hero-title-gradient: var(--hero-title-gradient-light);--font-family-base: -apple-system, blinkmacsystemfont, "Segoe UI", roboto, sans-serif;--font-family-primary: var(--font-family-base);--font-family-mono: "SFMono-Regular", consolas, "Liberation Mono", menlo, 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;--line-height-tight: 1.25;--line-height-base: 1.6;--line-height-normal: var(--line-height-base);--line-height-relaxed: 1.75;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--btn-font-size: var(--font-size-base);--btn-font-weight: var(--font-weight-medium);--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--container-2xl: 1536px;--container-max-width: var(--container-xl);--header-height: 5rem;--header-h: 80px;--sidebar-width: 16rem;--modal-max-width: 32rem;--modal-max-height: 90vh;--tooltip-max-width: 20rem;--z-base: 0;--z-docked: 10;--z-dropdown: 1000;--z-sticky: 1010;--z-floating-tabs: 1015;--z-banner: 1020;--z-overlay: 1030;--z-modal: 1040;--z-popover: 1050;--z-skip-link: 1060;--z-toast: 1070;--z-tooltip: 1080;--duration-75: 75ms;--duration-100: .1s;--duration-150: .15s;--duration-200: .2s;--duration-300: .3s;--duration-500: .5s;--duration-700: .7s;--duration-1000: 1s;--ease-linear: linear;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--motion-instant: var(--duration-75);--motion-quick: var(--duration-150);--motion-medium: var( --duration-300 );--motion-slow: var(--duration-500);--motion-deliberate: var( --duration-700 );--motion-bounce: cubic-bezier( .68, -.55, .265, 1.55 );--motion-gentle: cubic-bezier( .25, .46, .45, .94 );--motion-sharp: cubic-bezier(.55, .055, .675, .19);--motion-smooth: cubic-bezier(.23, 1, .32, 1);--motion-press: var(--motion-instant);--motion-hover: var(--motion-quick);--motion-focus: var(--motion-quick);--motion-reveal: var(--motion-medium);--motion-celebration: var(--motion-deliberate);--motion-scenario-entry: var(--motion-medium);--motion-progress-update: var(--motion-slow);--motion-badge-reveal: var(--motion-deliberate);--motion-ethical-transition: var(--motion-medium);--user-font-size: var(--font-size-base);--user-font-scale: 1;--user-line-height: var(--line-height-normal);--user-letter-spacing: normal;--focus-ring-width: 2px;--focus-ring-offset: 2px;--focus-ring-color: var(--color-brand-primary);--focus-ring-opacity: .5;--color-focus-ring: #3b82f6;--color-selection: rgb(26 115 232 / 10%);--color-highlight: rgb(255 235 59 / 30%);--color-hover-overlay: rgb(0 0 0 / 4%);--color-active-overlay: rgb(0 0 0 / 8%);--hover-opacity: .85;--active-opacity: .7;--disabled-opacity: .5;--hover-scale: 1.02;--active-scale: .98;--space-px: 1px;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-11: 2.75rem;--space-12: 3rem;--space-15: 3.75rem;--space-16: 4rem;--space-20: 5rem;--radius-none: 0;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-3xl: 1.5rem;--radius-full: 9999px;--content-width-xs: 20rem;--content-width-sm: 24rem;--content-width-narrow: 45rem;--content-width-normal: 65rem;--content-width-wide: 85rem;--content-width-full: 100%}@media (prefers-color-scheme: dark){:root:not(.theme-light,.theme-dark){--color-surface: #0d1117;--color-surface-secondary: #2d2d2d;--color-surface-tertiary: #21262d;--color-on-surface: #f0f6fc;--color-on-surface-secondary: #e6edf3;--color-on-surface-tertiary: #7d8590;--theme-bg-primary: #0d1117;--theme-bg-secondary: #2d2d2d;--theme-bg-tertiary: #21262d;--theme-bg-interactive: #262c36;--theme-bg-overlay: rgb(0 0 0 / 90%);--theme-bg-overlay-light: rgb(0 0 0 / 20%);--theme-bg-overlay-medium: rgb(0 0 0 / 30%);--theme-border-overlay: rgb(255 255 255 / 20%);--theme-text-primary: #f0f6fc;--theme-text-secondary: #e6edf3;--theme-text-tertiary: #7d8590;--theme-text-muted: #656d76;--theme-text-inverse: #0d1117;--theme-text-inverse-secondary: rgb(13 17 23 / 80%);--theme-text-on-accent: #fff;--theme-border-primary: #30363d;--theme-border-secondary: #21262d;--theme-border-interactive: #656d76;--theme-border-focus: #58a6ff;--theme-border-error: #f85149;--theme-border-success: #56d364;--theme-accent-primary: #58a6ff;--theme-accent-secondary: #8b949e;--theme-accent-success: #56d364;--theme-accent-warning: #e3b341;--theme-accent-error: #f85149;--theme-accent-info: #79c0ff;--theme-shadow-light: rgb(0 0 0 / 30%);--theme-shadow-medium: rgb(0 0 0 / 40%);--theme-shadow-heavy: rgb(0 0 0 / 50%);--theme-shadow-focus: rgb(88 166 255 / 40%);--hover-surface: rgb(0 0 0 / 24%);--active-surface: rgb(0 0 0 / 36%);--nav-hover-surface: var(--hover-surface);--nav-active-surface: var(--active-surface);--interactive-fg: var(--theme-text-primary);--interactive-fg-hover: var(--theme-text-primary);--interactive-fg-active: var(--theme-text-primary);--interactive-bg-hover: var(--hover-surface);--interactive-bg-active: var(--active-surface);--shadow-hover: 0 6px 18px var(--theme-shadow-medium);--shadow-active: 0 3px 10px var(--theme-shadow-heavy);--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 30%);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 40%), 0 1px 2px 0 rgb(0 0 0 / 30%);--shadow-base: 0 4px 6px -1px rgb(0 0 0 / 40%), 0 2px 4px -1px rgb(0 0 0 / 30%);--shadow-md: 0 10px 15px -3px rgb(0 0 0 / 40%), 0 4px 6px -2px rgb(0 0 0 / 30%);--shadow-lg: 0 20px 25px -5px rgb(0 0 0 / 40%), 0 10px 10px -5px rgb(0 0 0 / 20%)}}@layer tokens{:root{--input-background: var(--theme-bg-primary);--input-border: var(--theme-border-primary);--input-border-focus: var(--theme-border-focus);--input-text: var(--theme-text-primary);--input-placeholder: var(--theme-text-muted);--input-shadow-focus: var(--theme-shadow-focus);--card-background: var(--theme-bg-primary);--card-border: var(--theme-border-primary);--card-shadow: var(--shadow-sm);--card-shadow-hover: var(--shadow-md);--nav-background: var(--theme-bg-primary);--nav-border: var(--theme-border-primary);--nav-link-color: var(--theme-text-secondary);--nav-link-hover: var(--accent-primary);--nav-link-active: var(--accent-primary);--nav-hover-surface: var(--hover-surface);--nav-active-surface: var(--active-surface);--btn-primary-bg: var(--accent-primary);--btn-primary-hover: var(--accent-primary-hover);--btn-secondary-bg: var(--theme-bg-secondary);--btn-secondary-hover: var(--hover-surface);--btn-success-bg: var(--accent-success);--btn-warning-bg: var(--accent-warning);--btn-error-bg: var(--accent-error);--component-padding: var(--spacing-4);--component-margin: var(--spacing-4);--component-gap: var(--spacing-3)}}body.theme-system{--color-surface: var(--color-white);--color-surface-secondary: var(--color-gray-50);--color-surface-tertiary: var(--color-gray-100);--color-on-surface: var(--color-gray-900);--color-on-surface-secondary: var(--color-gray-700);--color-on-surface-tertiary: var(--color-gray-600);--theme-bg-primary: #fff;--theme-bg-secondary: #f8f9fa;--theme-bg-tertiary: #f3f4f6;--theme-bg-interactive: #e5e7eb;--theme-bg-overlay: rgb(0 0 0 / 50%);--theme-text-primary: #111827;--theme-text-secondary: #374151;--theme-text-tertiary: #6b7280;--theme-text-muted: #9ca3af;--theme-text-inverse: #fff;--theme-text-on-accent: #fff;--theme-border-primary: #e5e7eb;--theme-border-secondary: #d1d5db;--theme-border-interactive: #9ca3af;--theme-border-focus: #3b82f6;--theme-border-error: #ef4444;--theme-border-success: #10b981;--theme-accent-primary: #3b82f6;--theme-accent-secondary: #6b7280;--theme-accent-success: #10b981;--theme-accent-warning: #f59e0b;--theme-accent-error: #ef4444;--theme-accent-info: #3b82f6;--theme-shadow-light: rgb(0 0 0 / 10%);--theme-shadow-medium: rgb(0 0 0 / 15%);--theme-shadow-heavy: rgb(0 0 0 / 20%);--theme-shadow-focus: rgb(59 130 246 / 40%);--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 5%);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 10%), 0 1px 2px 0 rgb(0 0 0 / 6%);--shadow-base: 0 4px 6px -1px rgb(0 0 0 / 10%), 0 2px 4px -1px rgb(0 0 0 / 6%);--shadow-md: 0 10px 15px -3px rgb(0 0 0 / 10%), 0 4px 6px -2px rgb(0 0 0 / 5%);--shadow-lg: 0 20px 25px -5px rgb(0 0 0 / 10%), 0 10px 10px -5px rgb(0 0 0 / 4%)}@media (prefers-color-scheme: dark){body.theme-system{--color-surface: #0d1117;--color-surface-secondary: #2d2d2d;--color-surface-tertiary: #21262d;--color-on-surface: #f0f6fc;--color-on-surface-secondary: #e6edf3;--color-on-surface-tertiary: #7d8590;--theme-bg-primary: #0d1117;--theme-bg-secondary: #2d2d2d;--theme-bg-tertiary: #21262d;--theme-bg-interactive: #262c36;--theme-bg-overlay: rgb(0 0 0 / 90%);--theme-text-primary: #f0f6fc;--theme-text-secondary: #e6edf3;--theme-text-tertiary: #7d8590;--theme-text-muted: #656d76;--theme-text-inverse: #0d1117;--theme-text-on-accent: #fff;--theme-border-primary: #30363d;--theme-border-secondary: #21262d;--theme-border-interactive: #656d76;--theme-border-focus: #58a6ff;--theme-border-error: #f85149;--theme-border-success: #56d364;--theme-accent-primary: #58a6ff;--theme-accent-secondary: #8b949e;--theme-accent-success: #56d364;--theme-accent-warning: #e3b341;--theme-accent-error: #f85149;--theme-accent-info: #79c0ff;--theme-shadow-light: rgb(0 0 0 / 30%);--theme-shadow-medium: rgb(0 0 0 / 40%);--theme-shadow-heavy: rgb(0 0 0 / 50%);--theme-shadow-focus: rgb(88 166 255 / 40%);--hover-surface: rgb(0 0 0 / 24%);--active-surface: rgb(0 0 0 / 36%);--nav-hover-surface: var(--hover-surface);--nav-active-surface: var(--active-surface);--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 30%);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 40%), 0 1px 2px 0 rgb(0 0 0 / 30%);--shadow-base: 0 4px 6px -1px rgb(0 0 0 / 40%), 0 2px 4px -1px rgb(0 0 0 / 30%);--shadow-md: 0 10px 15px -3px rgb(0 0 0 / 40%), 0 4px 6px -2px rgb(0 0 0 / 30%);--shadow-lg: 0 20px 25px -5px rgb(0 0 0 / 40%), 0 10px 10px -5px rgb(0 0 0 / 20%);--shadow-xl: 0 25px 50px -12px rgb(0 0 0 / 50%);--shadow-2xl: 0 50px 100px -20px rgb(0 0 0 / 50%)}}html[data-theme=light],body[data-theme=light],body.theme-light{--color-surface: var(--color-white);--color-surface-secondary: var(--color-gray-50);--color-surface-tertiary: var(--color-gray-100);--color-on-surface: var(--color-gray-900);--color-on-surface-secondary: var(--color-gray-700);--color-on-surface-tertiary: var(--color-gray-600);--theme-bg-primary: #fff;--theme-bg-secondary: #f8f9fa;--theme-bg-tertiary: #f3f4f6;--theme-bg-interactive: #e5e7eb;--theme-bg-overlay: rgb(0 0 0 / 50%);--theme-text-primary: #111827;--theme-text-secondary: #374151;--theme-text-tertiary: #6b7280;--theme-text-muted: #9ca3af;--theme-text-inverse: #fff;--theme-text-on-accent: #fff;--theme-border-primary: #e5e7eb;--theme-border-secondary: #d1d5db;--theme-border-interactive: #9ca3af;--theme-border-focus: #3b82f6;--theme-border-error: #ef4444;--theme-border-success: #10b981;--theme-accent-primary: #3b82f6;--theme-accent-secondary: #6b7280;--theme-accent-success: #10b981;--theme-accent-warning: #f59e0b;--theme-accent-error: #ef4444;--theme-accent-info: #3b82f6;--theme-shadow-light: rgb(0 0 0 / 10%);--theme-shadow-medium: rgb(0 0 0 / 15%);--theme-shadow-heavy: rgb(0 0 0 / 20%);--theme-shadow-focus: rgb(59 130 246 / 40%);--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 5%);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 10%), 0 1px 2px 0 rgb(0 0 0 / 6%);--shadow-base: 0 4px 6px -1px rgb(0 0 0 / 10%), 0 2px 4px -1px rgb(0 0 0 / 6%);--shadow-md: 0 10px 15px -3px rgb(0 0 0 / 10%), 0 4px 6px -2px rgb(0 0 0 / 5%);--shadow-lg: 0 20px 25px -5px rgb(0 0 0 / 10%), 0 10px 10px -5px rgb(0 0 0 / 4%)}html[data-theme=dark],body[data-theme=dark],body.theme-dark,body.dark-mode{--color-surface: #0d1117;--color-surface-secondary: #2d2d2d;--color-surface-tertiary: #21262d;--color-on-surface: #f0f6fc;--color-on-surface-secondary: #e6edf3;--color-on-surface-tertiary: #7d8590;--theme-bg-primary: #0d1117;--theme-bg-secondary: #2d2d2d;--theme-bg-tertiary: #21262d;--theme-bg-interactive: #262c36;--theme-bg-overlay: rgb(0 0 0 / 90%);--theme-bg-overlay-light: rgb(255 255 255 / 10%);--theme-bg-overlay-medium: rgb(255 255 255 / 15%);--theme-border-overlay: rgb(255 255 255 / 20%);--hero-title-gradient: var(--hero-title-gradient-dark);--theme-text-primary: #f0f6fc;--theme-text-secondary: #e6edf3;--theme-text-tertiary: #7d8590;--theme-text-muted: #656d76;--theme-text-inverse: #0d1117;--theme-text-inverse-secondary: rgb(13 17 23 / 80%);--theme-text-on-accent: #fff;--theme-border-primary: #30363d;--theme-border-secondary: #21262d;--theme-border-interactive: #656d76;--theme-border-focus: #58a6ff;--theme-border-error: #f85149;--theme-border-success: #56d364;--theme-accent-primary: #58a6ff;--theme-accent-secondary: #8b949e;--theme-accent-success: #56d364;--theme-accent-warning: #e3b341;--theme-accent-error: #f85149;--theme-accent-info: #79c0ff;--theme-shadow-light: rgb(0 0 0 / 30%);--theme-shadow-medium: rgb(0 0 0 / 40%);--theme-shadow-heavy: rgb(0 0 0 / 50%);--theme-shadow-focus: rgb(88 166 255 / 40%);--hover-surface: rgb(0 0 0 / 24%);--active-surface: rgb(0 0 0 / 36%);--nav-hover-surface: var(--hover-surface);--nav-active-surface: var(--active-surface);--interactive-fg: var(--theme-text-primary);--interactive-fg-hover: var(--theme-text-primary);--interactive-fg-active: var(--theme-text-primary);--interactive-bg-hover: var(--hover-surface);--interactive-bg-active: var(--active-surface);--shadow-hover: 0 6px 18px var(--theme-shadow-medium);--shadow-active: 0 3px 10px var(--theme-shadow-heavy);--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 30%);--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 40%), 0 1px 2px 0 rgb(0 0 0 / 30%);--shadow-base: 0 4px 6px -1px rgb(0 0 0 / 40%), 0 2px 4px -1px rgb(0 0 0 / 30%);--shadow-md: 0 10px 15px -3px rgb(0 0 0 / 40%), 0 4px 6px -2px rgb(0 0 0 / 30%);--shadow-lg: 0 20px 25px -5px rgb(0 0 0 / 40%), 0 10px 10px -5px rgb(0 0 0 / 20%);--shadow-xl: 0 25px 50px -12px rgb(0 0 0 / 50%);--shadow-2xl: 0 50px 100px -20px rgb(0 0 0 / 50%)}@media (prefers-contrast: more){:root{--focus-ring-width: 3px;--border-width-1: 2px;--border-width-2: 3px}}body.high-contrast,body.theme-high-contrast{--focus-ring-width: 3px;--border-width-1: 2px;--border-width-2: 3px;--theme-bg-primary: #000;--theme-bg-secondary: #111;--theme-bg-tertiary: #222;--theme-bg-interactive: #333;--theme-bg-overlay: rgb(0 0 0 / 95%);--theme-bg-overlay-light: rgb(255 255 255 / 15%);--theme-bg-overlay-medium: rgb(255 255 255 / 25%);--theme-border-overlay: rgb(255 255 255 / 40%);--theme-text-primary: #fff;--theme-text-secondary: #fff;--theme-text-tertiary: #ccc;--theme-text-muted: #aaa;--theme-text-inverse: #000;--theme-text-inverse-secondary: rgb(0 0 0 / 80%);--theme-text-on-accent: #000;--theme-border-primary: #fff;--theme-border-secondary: #ccc;--theme-border-interactive: #fff;--theme-border-focus: #ff0;--theme-border-error: #f00;--theme-border-success: #0f0;--theme-accent-primary: #ff0;--theme-accent-secondary: #fff;--theme-accent-success: #0f0;--theme-accent-warning: #fa0;--theme-accent-error: #f00;--theme-accent-info: #0af;--theme-shadow-light: rgb(255 255 255 / 10%);--theme-shadow-medium: rgb(255 255 255 / 20%);--theme-shadow-heavy: rgb(255 255 255 / 30%);--theme-shadow-focus: rgb(255 255 0 / 50%);--color-gray-400: #6b7280;--color-gray-500: #4b5563;--color-gray-600: #374151}@media (prefers-reduced-motion: reduce){:root{--duration-75: 0ms;--duration-100: 0ms;--duration-150: 0ms;--duration-200: 0ms;--duration-300: 0ms;--duration-500: 0ms;--duration-700: 0ms;--duration-1000: 0ms}}body.reduced-motion{--duration-75: 0ms;--duration-100: 0ms;--duration-150: 0ms;--duration-200: 0ms;--duration-300: 0ms;--duration-500: 0ms;--duration-700: 0ms;--duration-1000: 0ms}html.font-size-small{--user-font-scale: .875;--user-font-size: calc(var(--font-size-base) * var(--user-font-scale))}html.font-size-medium{--user-font-scale: 1;--user-font-size: calc(var(--font-size-base) * var(--user-font-scale))}html.font-size-large{--user-font-scale: 1.125;--user-font-size: calc(var(--font-size-base) * var(--user-font-scale))}html.font-size-extra-large{--user-font-scale: 1.25;--user-font-size: calc(var(--font-size-base) * var(--user-font-scale))}@media print{:root{--color-surface: white;--color-on-surface: black;--shadow-xs: none;--shadow-sm: none;--shadow-base: none;--shadow-md: none;--shadow-lg: none;--shadow-xl: none;--shadow-2xl: none}}@media (prefers-reduced-motion: reduce){body *,body *:before,body *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media print{body *,body *:before,body *:after{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}}@media (prefers-contrast: more){body *,body *:before,body *:after{border-color:currentcolor}}.component,.panel,.card,.section{background:var(--theme-bg-primary);color:var(--theme-text-primary);border:1px solid var(--theme-border-primary);border-radius:var(--radius-md);transition:all var(--duration-200) ease}.interactive,.button,.clickable{background:var(--theme-bg-interactive);color:var(--theme-text-primary);border:1px solid var(--theme-border-interactive);cursor:pointer;transition:all var(--duration-200) ease}.interactive:hover,.button:hover,.clickable:hover{opacity:var(--theme-hover-opacity);border-color:var(--theme-border-focus);box-shadow:0 2px 8px var(--theme-shadow-medium)}.interactive:focus,.button:focus,.clickable:focus{outline:2px solid var(--theme-border-focus);outline-offset:2px;box-shadow:0 0 0 3px var(--theme-shadow-focus)}.text-primary{color:var(--theme-text-primary)}.text-secondary{color:var(--theme-text-secondary)}.text-muted{color:var(--theme-text-muted)}.text-inverse{color:var(--theme-text-inverse)}.bg-primary{background:var(--theme-bg-primary)}.bg-secondary{background:var(--theme-bg-secondary)}.bg-tertiary{background:var(--theme-bg-tertiary)}.border-primary{border-color:var(--theme-border-primary)}.border-secondary{border-color:var(--theme-border-secondary)}.border-focus{border-color:var(--theme-border-focus)}.accent-primary{color:var(--theme-accent-primary)}.accent-success{color:var(--theme-accent-success)}.accent-warning{color:var(--theme-accent-warning)}.accent-error{color:var(--theme-accent-error)}.shadow-light{box-shadow:0 1px 3px var(--theme-shadow-light)}.shadow-medium{box-shadow:0 4px 6px var(--theme-shadow-medium)}.shadow-heavy{box-shadow:0 10px 15px var(--theme-shadow-heavy)}.modal,.overlay,.backdrop{background:var(--theme-bg-overlay);backdrop-filter:blur(4px)}.modal-content,.dialog-content{background:var(--theme-bg-primary);color:var(--theme-text-primary);border:1px solid var(--theme-border-primary);border-radius:var(--radius-lg);box-shadow:0 20px 25px var(--theme-shadow-heavy)}.form-input,.form-select,.form-textarea{background:var(--theme-bg-primary);color:var(--theme-text-primary);border:1px solid var(--theme-border-primary);border-radius:var(--radius-sm);padding:var(--space-3) var(--space-4);transition:all var(--duration-200) ease}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--theme-border-focus);box-shadow:0 0 0 3px var(--theme-shadow-focus)}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{opacity:var(--theme-disabled-opacity);cursor:not-allowed}.nav-item,.menu-item,.tab-item{background:transparent;color:var(--theme-text-secondary);border:1px solid transparent;padding:var(--space-2) var(--space-4);transition:all var(--duration-200) ease}.nav-item:hover,.menu-item:hover,.tab-item:hover{background:transparent;color:var(--theme-text-primary)}.nav-item.active,.menu-item.active,.tab-item.active{background:var(--theme-bg-secondary);color:var(--theme-accent-primary);border-color:var(--theme-border-focus)}.status-success{background:var(--theme-accent-success);color:var(--theme-text-on-accent)}.status-warning{background:var(--theme-accent-warning);color:var(--theme-text-on-accent)}.status-error{background:var(--theme-accent-error);color:var(--theme-text-on-accent)}.status-info{background:var(--theme-accent-info);color:var(--theme-text-on-accent)}}@layer layout{:root{--container-padding: 16px;--font-scale: 1;--touch-target-min: 44px;--device-type: "unknown";--device-category: "unknown";--breakpoint-xs: 360px;--breakpoint-sm: 375px;--breakpoint-md: 390px;--breakpoint-lg: 393px;--breakpoint-xl: 428px;--breakpoint-tablet-sm: 768px;--breakpoint-tablet-md: 800px;--breakpoint-tablet-lg: 820px;--breakpoint-tablet-xl: 1024px;--breakpoint-laptop-sm: 1280px;--breakpoint-laptop-md: 1366px;--breakpoint-laptop-lg: 1500px;--breakpoint-laptop-xl: 1536px;--breakpoint-desktop-xl: 1920px;--breakpoint-desktop-2k: 2560px;--breakpoint-desktop-4k: 3840px}@media only screen and (width <= 767px){:root{--device-category: "mobile";--layout-type: "single-column";--nav-type: "bottom-nav";--sidebar-behavior: "overlay"}}@media only screen and (width <= 359px){:root{--device-type: "mobile-xxs";--container-padding: 8px;--font-scale: .8;--touch-target-min: 44px;--floating-tab-width: 180px;--floating-tab-height: 44px;--floating-tab-protrusion: 24px}}@media only screen and (width >= 360px) and (width <= 374px){:root{--device-type: "mobile-xs";--container-padding: 12px;--font-scale: .85;--touch-target-min: 44px;--floating-tab-width: 200px;--floating-tab-height: 48px;--floating-tab-protrusion: 30px}}@media only screen and (width >= 375px) and (width <= 389px){:root{--device-type: "mobile-sm";--container-padding: 14px;--font-scale: .9;--touch-target-min: 44px;--floating-tab-width: 210px;--floating-tab-height: 50px;--floating-tab-protrusion: 32px}}@media only screen and (width >= 390px) and (width <= 399px){:root{--device-type: "mobile-md";--container-padding: 16px;--font-scale: .95;--touch-target-min: 44px;--floating-tab-width: 220px;--floating-tab-height: 52px;--floating-tab-protrusion: 34px}}@media only screen and (width >= 400px) and (width <= 479px){:root{--device-type: "mobile-lg";--container-padding: 18px;--font-scale: 1;--touch-target-min: 44px;--floating-tab-width: 240px;--floating-tab-height: 54px;--floating-tab-protrusion: 36px}}@media only screen and (width >= 768px) and (width <= 1279px){:root{--device-category: "tablet";--layout-type: "two-column";--nav-type: "side-nav";--sidebar-behavior: "collapse"}}@media only screen and (width >= 768px) and (width <= 820px){:root{--device-type: "tablet-sm";--container-padding: 20px;--font-scale: 1.05;--touch-target-min: 44px;--floating-tab-width: 260px;--floating-tab-height: 58px;--floating-tab-protrusion: 38px}}@media only screen and (width >= 821px) and (width <= 1023px){:root{--device-type: "tablet-md";--container-padding: 24px;--font-scale: 1.1;--touch-target-min: 44px;--floating-tab-width: 270px;--floating-tab-height: 59px;--floating-tab-protrusion: 40px}}@media only screen and (width >= 1024px) and (width <= 1279px){:root{--device-type: "tablet-lg";--container-padding: 28px;--font-scale: 1.15;--touch-target-min: 44px;--floating-tab-width: 280px;--floating-tab-height: 60px;--floating-tab-protrusion: 42px}}@media only screen and (width >= 1280px) and (width <= 1919px){:root{--device-category: "laptop";--layout-type: "multi-column";--nav-type: "top-nav";--sidebar-behavior: "persistent"}}@media only screen and (width >= 1280px) and (width <= 1366px){:root{--device-type: "laptop-sm";--container-padding: 32px;--font-scale: 1;--touch-target-min: 40px;--floating-tab-width: 300px;--floating-tab-height: 62px;--floating-tab-protrusion: 44px}}@media only screen and (width >= 1367px) and (width <= 1535px){:root{--device-type: "laptop-md";--container-padding: 36px;--font-scale: 1.05;--touch-target-min: 40px;--floating-tab-width: 310px;--floating-tab-height: 63px;--floating-tab-protrusion: 46px}}@media only screen and (width >= 1536px) and (width <= 1919px){:root{--device-type: "laptop-lg";--container-padding: 40px;--font-scale: 1.1;--touch-target-min: 40px;--floating-tab-width: 320px;--floating-tab-height: 64px;--floating-tab-protrusion: 48px}}@media only screen and (width >= 1920px){:root{--device-category: "desktop";--layout-type: "wide-multi-column";--nav-type: "mega-nav";--sidebar-behavior: "dual-sidebar"}}@media only screen and (width >= 1920px) and (width <= 2559px){:root{--device-type: "desktop-fhd";--container-padding: 48px;--font-scale: 1.15;--touch-target-min: 40px;--floating-tab-width: 340px;--floating-tab-height: 66px;--floating-tab-protrusion: 50px}}@media only screen and (width >= 2560px) and (width <= 3839px){:root{--device-type: "desktop-2k";--container-padding: 56px;--font-scale: 1.25;--touch-target-min: 40px;--floating-tab-width: 360px;--floating-tab-height: 68px;--floating-tab-protrusion: 52px}}@media only screen and (width >= 3840px){:root{--device-type: "desktop-4k";--container-padding: 64px;--font-scale: 1.4;--touch-target-min: 44px;--floating-tab-width: 400px;--floating-tab-height: 72px;--floating-tab-protrusion: 54px}}@media only screen and (orientation: portrait){:root{--orientation: "portrait";--header-height: 80px;--header-h: 80px;--footer-height: 80px}}@media only screen and (orientation: landscape){:root{--orientation: "landscape";--header-height: 80px;--header-h: 80px;--footer-height: 64px}}@media (prefers-contrast: more){:root{--accessibility-mode: "high-contrast";--border-width: 2px;--focus-ring-width: 4px}}@media (prefers-reduced-motion: reduce){:root{--animation-duration: 0ms;--transition-duration: 0ms;--accessibility-mode: "reduced-motion"}}@media (prefers-reduced-data: reduce){:root{--data-saver-mode: "enabled";--image-quality: "low";--animation-enabled: "false"}}@media (hover: hover) and (pointer: fine){:root{--input-mode: "fine";--hover-enabled: true}}@media (hover: none) and (pointer: coarse){:root{--input-mode: "coarse";--hover-enabled: false}}@media print{:root{--device-type: "print";--color-scheme: "light"}.floating-tab-link,.floating-tour-tab-link,.floating-surprise-tab-link,.floating-action-tab,.floating-surprise-tab,.floating-tour-tab,nav,.sidebar,.modal,.tooltip{display:none}}}@layer utilities{.floating-tab-responsive{width:var(--floating-tab-width);height:var(--floating-tab-height);transform:translate(calc(100% - var(--floating-tab-protrusion)))}.layout-container-responsive{padding-left:var(--container-padding);padding-right:var(--container-padding);max-width:100vw;box-sizing:border-box;margin-left:auto;margin-right:auto}.layout-container-tight{padding-left:calc(var(--container-padding) * .75);padding-right:calc(var(--container-padding) * .75)}.layout-container-loose{padding-left:calc(var(--container-padding) * 1.5);padding-right:calc(var(--container-padding) * 1.5)}.text-responsive{font-size:calc(1rem * var(--font-scale))}.text-responsive-small{font-size:calc(.875rem * var(--font-scale))}.text-responsive-large{font-size:calc(1.125rem * var(--font-scale))}.text-responsive-heading{font-size:calc(1.5rem * var(--font-scale));line-height:calc(1.2 * var(--font-scale, 1))}.text-responsive-h1{font-size:calc(2.25rem * var(--font-scale));line-height:calc(1.1 * var(--font-scale, 1))}.text-responsive-h2{font-size:calc(1.875rem * var(--font-scale));line-height:calc(1.15 * var(--font-scale, 1))}.text-responsive-h3{font-size:calc(1.5rem * var(--font-scale));line-height:calc(1.2 * var(--font-scale, 1))}.text-responsive-h4{font-size:calc(1.25rem * var(--font-scale));line-height:calc(1.25 * var(--font-scale, 1))}.text-responsive-body{font-size:calc(1rem * var(--font-scale));line-height:calc(1.5 * var(--font-scale, 1))}.text-responsive-caption{font-size:calc(.75rem * var(--font-scale));line-height:calc(1.4 * var(--font-scale, 1))}@media only screen and (width <= 360px){.text-responsive-heading{font-size:calc(1.25rem * var(--font-scale))}}.touch-target{min-height:var(--touch-target-min);min-width:var(--touch-target-min)}.flex{display:flex}.inline-flex{display:inline-flex}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-row-reverse{flex-direction:row-reverse}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.content-start{align-content:flex-start}.content-end{align-content:flex-end}.content-center{align-content:center}.content-between{align-content:space-between}.content-around{align-content:space-around}.content-evenly{align-content:space-evenly}.self-auto{align-self:auto}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-stretch{align-self:stretch}.self-baseline{align-self:baseline}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-initial{flex:0 1 auto}.flex-none{flex:none}.grow{flex-grow:1}.grow-0{flex-grow:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.gap-xs{gap:calc(var(--container-padding) * .25)}.gap-sm{gap:calc(var(--container-padding) * .5)}.gap-md{gap:var(--container-padding)}.gap-lg{gap:calc(var(--container-padding) * 1.5)}.gap-xl{gap:calc(var(--container-padding) * 2)}@media only screen and (width <= 767px){.mobile\:flex-col{flex-direction:column}.mobile\:flex-wrap{flex-wrap:wrap}.mobile\:justify-center{justify-content:center}.mobile\:items-center{align-items:center}}@media only screen and (width >= 768px) and (width <= 1279px){.tablet\:flex-row{flex-direction:row}.tablet\:justify-between{justify-content:space-between}}@media only screen and (width >= 1280px){.desktop\:flex-row{flex-direction:row}.desktop\:justify-start{justify-content:flex-start}}.mobile-hide{display:block}.mobile-show{display:none}.tablet-hide{display:block}.tablet-show{display:none}.desktop-hide{display:block}.desktop-show{display:none}@media only screen and (width <= 767px){.mobile-hide{display:none}.mobile-show{display:block}.mobile\:text-center{text-align:center}.mobile\:full-width{width:100%}.mobile\:padding-sm{padding:var(--spacing-3)}.mobile\:margin-auto{margin:0 auto}}@media only screen and (width >= 768px) and (width <= 1279px){.tablet-hide{display:none}.tablet-show{display:block}.tablet\:two-column{column-count:2;column-gap:var(--spacing-6)}}@media only screen and (width >= 1280px){.desktop-hide{display:none}.desktop-show{display:block}.desktop\:three-column{column-count:3;column-gap:var(--spacing-8)}}@media (prefers-reduced-motion: reduce){.respect-motion{animation-duration:.01ms;animation-iteration-count:1;transition-duration:.01ms;scroll-behavior:auto}.no-motion{animation:none;transition:none}}@media (prefers-contrast: more){.high-contrast-border{border:2px solid var(--theme-border-focus, currentColor)}.high-contrast-text{color:var(--theme-text-primary, CanvasText);background:var(--theme-bg-primary, Canvas)}.high-contrast-focus:focus{outline:3px solid var(--theme-border-focus, Highlight);outline-offset:2px}}@media print{.print-hide{display:none}.print-show{display:block}.print-page-break{page-break-after:always}.print-no-break{page-break-inside:avoid}.print-black-text{color:var(--theme-text-primary, black)}.print-white-bg{background:var(--theme-bg-primary, white)}}@media (hover: none) and (pointer: coarse){.touch-larger{min-height:44px;min-width:44px}.touch-spacing{margin:8px}.touch-no-hover:hover{background:initial;transform:none;box-shadow:initial}}@media only screen and (width <= 320px){.layout-container-responsive{padding-left:6px;padding-right:6px}.layout-container-tight{padding-left:4px;padding-right:4px}}}@layer components{.view-toggle-controls{display:flex;gap:var(--spacing-2);margin-top:var(--spacing-6);justify-content:center;align-items:center;background:var(--theme-bg-secondary, 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(--theme-text-secondary, var(--color-gray-600));white-space:nowrap;flex:0 0 auto;min-width:0}.view-toggle-btn:hover{background:var(--theme-bg-primary, var(--color-white));color:var(--theme-text-primary, var(--color-gray-800));box-shadow:var(--shadow-sm)}.view-toggle-btn.active{background:var(--theme-bg-primary, 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}.main-section-header{display:flex;flex-direction:column;align-items:center;gap:.75rem}.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(--theme-bg-secondary, var(--color-gray-50));border:1px solid var(--theme-border-primary, var(--color-gray-200));border-radius:var(--radius-base);font-size:var(--font-size-xs);color:var(--theme-text-tertiary, var(--color-gray-500));cursor:help}.keyboard-hint .hint-text{line-height:1}.keyboard-hint kbd{background:var(--theme-bg-primary, var(--color-white));border:1px solid var(--theme-border-secondary, 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(--theme-text-primary, 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);flex-wrap:wrap;padding:var(--spacing-4) var(--spacing-6);margin-bottom:var(--spacing-6);background:var(--theme-bg-secondary, var(--color-gray-50));border:1px solid var(--theme-border-primary, var(--color-gray-200));border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);position:sticky;top:var(--spacing-4);z-index:var(--z-docked);max-width:100%;box-sizing:border-box}@media (width >= 1024px){.category-controls-toolbar{top:calc(var(--header-h, 80px) + var(--spacing-2))}}.search-container{flex:1;min-width:200px;max-width:400px;position:relative}.category-controls-group{display:flex;align-items:center;gap:var(--spacing-2);flex-shrink:0;min-width:0;flex-wrap:wrap}.sort-container{position:relative;display:inline-flex;isolation:isolate;--dropdown-offset: var(--spacing-2)}.clear-all-container{display:inline-flex;gap:var(--spacing-2)}.search-input{background:var(--theme-bg-primary, white);border:1px solid var(--color-gray-300);color:var(--theme-text-primary, var(--color-gray-800));font-size:var(--font-size-sm);padding:var(--spacing-3) var(--spacing-10) var(--spacing-3) var(--spacing-11);width:100%;box-sizing:border-box;border-radius:var(--radius-md);transition:all var(--transition-base)}@media (width >= 768px){.search-input{font-size:var(--font-size-base)}}.search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.search-input::placeholder{color:var(--color-gray-500)}.toolbar-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);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:.875rem;font-weight:500;letter-spacing:-.01em;line-height:1.4;color:var(--theme-text-primary, var(--color-gray-800));text-shadow:0 .5px 1px rgb(0 0 0 / 2%);background:linear-gradient(135deg,var(--theme-bg-primary, #fff) 0%,var(--theme-bg-secondary, #fafbfc) 100%);box-shadow:0 1px 3px #00000014,0 1px 2px #0000000f}@media (width >= 768px){.toolbar-btn{font-size:.9375rem;padding:var(--spacing-3) var(--spacing-5)}}.toolbar-btn:hover{border-color:var(--color-gray-500);transform:translateY(-1px);background:linear-gradient(135deg,var(--theme-bg-secondary, #f8fafc) 0%,var(--theme-bg-tertiary, #f1f5f9) 100%);box-shadow:0 4px 12px #0000001f,0 2px 4px #00000014;color:var(--theme-text-primary, var(--color-gray-900));text-shadow:0 .5px 1px rgb(0 0 0 / 6%)}.toolbar-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(--theme-text-primary, var(--color-gray-900));text-shadow:0 .5px 1px rgb(0 0 0 / 6%)}.clear-all-btn{color:var(--theme-text-secondary, var(--color-gray-700));border-color:var(--color-gray-300)}.clear-all-btn:hover{color:var(--color-red-600);border-color:var(--color-red-300);background:linear-gradient(135deg,var(--theme-bg-primary, #fefefe) 0%,var(--theme-bg-danger, #fef2f2) 100%)}.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)}.clear-all-btn:focus-visible{outline:2px solid var(--color-red-500);outline-offset:2px}.sort-dropdown{position:absolute;top:calc(100% + var(--dropdown-offset, 0px));inset-inline-end:0;z-index:var( --z-dropdown );background:var(--theme-bg-primary, 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;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all var(--transition-fast);pointer-events:none}.sort-btn[aria-expanded=true]+.sort-dropdown{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.sort-dropdown.open{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.filter-dropdown{position:absolute;top:calc(100% + var(--dropdown-offset, 0px));inset-inline-end:0;z-index:var(--z-dropdown);background:var(--theme-bg-primary, var(--color-white));border:none;border-radius:var(--radius-md);box-shadow:0 8px 32px #0000001f,0 2px 8px #00000014;min-width:220px;max-height:320px;overflow-y:auto;margin-top:0;display:block;opacity:0;visibility:hidden;transform:translateY(-8px);transition:all var(--transition-fast);pointer-events:none}.filter-btn[aria-expanded=true]+.filter-dropdown,.filter-dropdown.open{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.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:var(--font-weight-medium);letter-spacing:-.005em;line-height:1.45;color:var(--theme-text-primary, var(--color-gray-800));text-shadow:0 .5px .5px rgb(0 0 0 / 1.5%);background:transparent}.sort-option:hover{color:var(--theme-text-primary, var(--color-gray-950));transform:translate(2px);background:linear-gradient(90deg,var(--theme-bg-secondary, rgb(241 245 249 / 90%)) 0%,var(--theme-bg-tertiary, rgb(226 232 240 / 95%)) 100%);box-shadow:0 1px 4px #00000014;text-shadow:0 .5px 1px rgb(0 0 0 / 4%)}.sort-option.active{font-weight:var(--font-weight-semibold);color:var(--color-primary-900);background:linear-gradient(90deg,var(--color-primary-100) 0%,var(--color-primary-200) 100%);box-shadow:inset 0 0 0 1px var(--color-primary-300),0 1px 4px var(--color-primary-shadow);text-shadow:0 .5px 1px var(--color-primary-text-shadow);border-left:3px solid var(--color-primary-600);padding-left:calc(var(--spacing-4) - 3px)}.sort-option:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (width <= 768px){.category-controls-toolbar{flex-direction:column;gap:var(--spacing-3);padding:var(--spacing-3);position:static}.search-container{width:100%;max-width:none;order:1;min-width:0}.category-controls-group{width:100%;justify-content:space-between;order:2;min-width:0;flex-wrap:nowrap}.sort-btn,.clear-all-btn{flex:1;justify-content:center;padding:var(--spacing-3) var(--spacing-2);font-size:.875rem;min-width:0}}@media (width >= 768px) and (width <= 1023px){.category-controls-toolbar{gap:var(--spacing-3)}.search-container{max-width:360px;min-width:240px;flex:0 1 auto}.category-controls-group{gap:var(--spacing-2);flex-wrap:nowrap}}.sort-btn,.filter-btn,.clear-all-btn{position:relative;user-select:none;-webkit-user-select:none;touch-action:manipulation}.toolbar-btn .dropdown-arrow{display:inline-block;margin-inline-start:var(--spacing-1);transition:transform var(--transition-fast);transform-origin:center}.sort-btn[aria-expanded=true] .dropdown-arrow,.filter-btn[aria-expanded=true] .dropdown-arrow{transform:rotate(180deg)}@media (prefers-reduced-motion: reduce){.toolbar-btn,.sort-dropdown,.filter-dropdown{transition:none!important;transform:none!important}.toolbar-btn:hover{transform:none;box-shadow:var(--shadow-sm)}}@media (width <= 480px){.category-controls-group{flex-direction:column;gap:var(--spacing-2)}.sort-btn,.clear-all-btn{width:100%}}.category-controls-toolbar img,.category-controls-toolbar video,.category-controls-toolbar canvas,.category-controls-toolbar iframe{max-width:100%;height:auto}.category-controls-toolbar svg,.toolbar-btn svg{width:1.125em;height:1.125em;flex:0 0 auto;color:currentColor}.categories-section{display:flex;flex-direction:column;align-items:center;width:100%;min-height:fit-content;gap:var(--spacing-6);padding:var(--container-padding, 12px);box-sizing:border-box;max-width:min(var(--container-xl, 1280px),100%);margin-inline:auto;padding-inline:var(--container-padding, 12px)}.categories-section .main-section-header{width:100%;max-width:100%;flex:0 0 auto}@media (width >= 480px){.categories-section{padding:calc(var(--container-padding, 16px) * 1.25);gap:var(--spacing-8)}}@media (width >= 768px){.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-8);margin-bottom:var(--spacing-8);padding:0;width:100%;max-width:100%;box-sizing:border-box;overflow-x:visible;flex:1 1 auto;min-width:0}@media (width >= 768px){.categories-grid,.simulations-grid{gap:var(--spacing-12);margin-bottom:var(--spacing-12)}}@media (width >= 1024px){.categories-grid,.simulations-grid{max-width:min(var(--container-xl, 1280px),100%);margin-inline:auto;padding-inline:var(--container-padding, 24px)}}.category-section{background:var(--theme-bg-primary, var(--color-white));border:1px solid var(--theme-border-primary, 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;flex:0 0 auto;min-width:0}.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,var(--theme-bg-fade, 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{display:flex;flex-direction:column}.category-section .scenarios-container{display:flex;flex-direction:row;overflow-x:auto;gap:var(--spacing-4);padding:var(--spacing-4)}.categories-section{gap:var(--spacing-4);padding:calc(var(--container-padding, 12px) * 1.5) var(--container-padding, 12px)}}.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}}@layer components{.category-header{background:var(--theme-bg-secondary);padding:var(--spacing-8);display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--theme-border-primary)}.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(--theme-text-primary);margin:0 0 var(--spacing-1) 0;line-height:var(--line-height-tight)}.category-description{font-size:var(--font-size-base);color:var(--theme-text-secondary);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)}.category-time,.category-progress-text{font-size:var(--font-size-sm);color:var(--theme-text-secondary);font-weight:var(--font-weight-medium)}.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(--theme-text-primary);z-index:var(--z-base, 0);position:relative;transition:all var(--transition-base)}.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))}}.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:var(--z-base, 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:var(--z-docked, 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}.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:var(--z-tooltip, 1080);position:fixed;display:block;visibility:visible}.progress-ring-tooltip.visible{opacity:1;transform:translate(-50%) translateY(0);display:block;visibility:visible}.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)}}@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%;transform:translate(-50%);margin-left:0;margin-right:0}.progress-ring-tooltip.visible{transform:translate(-50%) translateY(0)}}@media (width <= 480px){.progress-ring-tooltip{max-width:200px;min-width:150px;font-size:var(--font-size-xs);padding:var(--spacing-2);left:50%;transform:translate(-50%)}}@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:var(--z-docked, 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}.scenario-hover-category-header{border-width:2px}}}@layer components{.scenario-hero{background:linear-gradient(135deg,var(--theme-accent-primary) 0%,color-mix(in oklab,var(--theme-accent-primary),#000 20%) 100%);color:var(--theme-text-on-accent);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(--theme-bg-primary);border-radius:var(--radius-lg);transition:all .3s ease}@media (width <= 768px){.categories-section{padding:var(--spacing-4);gap:var(--spacing-6)}}@media (width <= 480px){.categories-section{padding:var(--spacing-3);gap:var(--spacing-4);border-radius:var(--radius-md)}}.scenarios-grid{gap:var(--spacing-6);padding-bottom:var(--spacing-2)}@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)}@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:opacity .18s ease,box-shadow .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:opacity .18s ease,transform .18s ease;transform-style:preserve-3d;backface-visibility:hidden;will-change:opacity,transform}.scenario-card-wrapper:hover{transform:translateY(-2px);box-shadow:0 8px 32px #0000001f}.scenarios-grid[data-view=scenario] .scenario-hover-category-header .category-description,.scenarios-grid[data-view=scenario] .scenario-hover-category-header .category-difficulty,.scenarios-grid[data-view=scenario] .scenario-hover-category-header .category-time{display:none!important}.scenario-card-wrapper.is-filtered-out,.scenario-card-wrapper[aria-hidden=true]{opacity:0;transform:scale(.98);pointer-events:none}.scenario-card-wrapper.is-entering{opacity:0;transform:scale(.98)}.scenario-card-wrapper.is-entering.is-visible{opacity:1;transform:none}.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);flex-wrap:wrap;padding:var(--spacing-4) var(--spacing-6);margin-bottom:var(--spacing-6);background:var(--theme-bg-secondary);border:1px solid var(--theme-border-primary);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].is-updating{opacity:.92}@media (width >= 1024px){.scenario-controls-toolbar{top:calc(var(--header-h, 80px) + var(--spacing-2))}}.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;flex-wrap:wrap}.scenario-controls-toolbar .sort-container{position:relative;display:inline-flex;isolation:isolate;--dropdown-offset: var(--spacing-2)}.scenario-controls-toolbar .clear-all-container{display:inline-flex;gap:var(--spacing-2)}.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 .controls-group{gap:var(--spacing-3)}.scenario-controls-toolbar .filter-container,.scenario-controls-toolbar .sort-container{display:inline-flex!important;min-height:40px}.scenario-controls-toolbar .search-input{background:var(--theme-bg-primary);border:1px solid var(--theme-border-secondary);color:var(--theme-text-primary);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(--theme-border-focus);box-shadow:0 0 0 3px var(--theme-shadow-focus),0 1px 3px #0000001a;outline:none;transform:translateY(-1px)}.scenario-controls-toolbar .search-input::placeholder{color:var(--theme-text-tertiary);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(--theme-border-secondary);border-radius:var(--radius-md);background:var(--theme-bg-primary);color:var(--theme-text-primary);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 rgb(0 0 0 / 2%)}.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(--theme-border-error);border-radius:var(--radius-md);background:var(--theme-bg-primary);color:var(--theme-accent-error);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 rgb(0 0 0 / 2%)}@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%}}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:var(--spacing-3);width:18px;height:18px;color:var(--theme-text-tertiary);z-index:2;pointer-events:none}.search-clear{position:absolute;right:var(--spacing-3);width:18px;height:18px;color:var(--theme-text-tertiary);background:none;border:none;cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-base);z-index:2}.search-clear:hover{color:var(--theme-text-secondary);background:var(--theme-bg-secondary)}.search-autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;z-index:1000;background:var(--theme-bg-primary);border:1px solid var(--theme-border-primary);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(--theme-border-secondary)}.autocomplete-section:last-child{border-bottom:none}.autocomplete-section-header{padding:var(--spacing-2) var(--spacing-3);background:var(--theme-bg-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--theme-text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--theme-border-secondary)}.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(--theme-text-tertiary);font-style:italic}.search-autocomplete-item{padding:var(--spacing-3);cursor:pointer;transition:background-color var(--transition-fast);border-bottom:1px solid var(--theme-border-primary)}.search-autocomplete-item:last-child{border-bottom:none}.search-autocomplete-item:hover{background:var(--theme-bg-secondary)}.search-autocomplete-item.highlighted{background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 85%);color:var(--theme-accent-primary)}.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(--theme-border-primary)}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover{background:var(--theme-bg-secondary)}.autocomplete-item.highlighted{background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 85%);color:var(--theme-accent-primary)}.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(--theme-bg-tertiary);color:var(--theme-text-secondary);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(--theme-text-primary);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(--theme-text-tertiary);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(--theme-bg-secondary);border-radius:var(--radius-md);border:1px solid var(--theme-border-primary);grid-column:1 / -1;order:0}.count-text{font-size:var(--font-size-sm);color:var(--theme-text-secondary);margin:0;font-weight:var(--font-weight-medium);text-align:center}.count-number{font-weight:var(--font-weight-bold);color:var(--theme-accent-primary)}.basic-fallback{text-align:center;padding:var(--spacing-20) var(--spacing-6);background:var(--theme-bg-secondary);border-radius:var(--radius-xl);border:2px dashed var(--theme-border-secondary);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(--theme-text-primary);margin-bottom:var(--spacing-4)}.basic-fallback p{font-size:var(--font-size-lg);color:var(--theme-text-secondary);margin-bottom:var(--spacing-8);line-height:var(--line-height-relaxed)}.basic-fallback .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}.basic-fallback .btn:focus{outline:none;box-shadow:0 0 0 3px var(--theme-shadow-focus)}.basic-fallback .btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.basic-fallback .btn-primary{background:var(--theme-accent-primary);color:var(--theme-text-on-accent);border-color:var(--theme-accent-primary)}.basic-fallback .btn-primary:hover{background:color-mix(in oklab,var(--theme-accent-primary),#000 10%);border-color:color-mix(in oklab,var(--theme-accent-primary),#000 10%);transform:translateY(-1px);box-shadow:0 4px 12px #00000040}.basic-fallback .btn-primary:active{transform:translateY(0);box-shadow:0 2px 4px #00000040}.filter-section{background:var(--theme-bg-secondary);padding:var(--spacing-12) 0;border-bottom:1px solid var(--theme-border-primary)}.filter-section .filter-container,.filter-section .sort-container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-6);position:relative}.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(--theme-text-primary);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(--theme-bg-primary);border-radius:var(--radius-xl);padding:var(--spacing-8);box-shadow:0 4px 6px #0000000d;border:1px solid var(--theme-border-primary);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-section .filter-btn,.filter-section .sort-btn{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-5);border:1px solid var(--theme-border-secondary);border-radius:var(--radius-md);background:var(--theme-bg-primary);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(--theme-text-primary);box-shadow:0 1px 3px #00000014,0 1px 2px #0000000f;text-shadow:0 .5px 1px rgb(0 0 0 / 2%)}.filter-section .sort-btn{font-weight:575;color:var(--theme-text-primary);border:1px solid var(--theme-border-secondary);background:var(--theme-bg-primary);text-shadow:0 .5px 1px rgb(0 0 0 / 4%);letter-spacing:-.005em}.filter-btn:hover,.sort-btn:hover{border-color:var(--theme-border-interactive);transform:translateY(-1px);background:var(--theme-bg-secondary);box-shadow:0 4px 12px #0000001f,0 2px 4px #00000014;color:var(--theme-text-primary);text-shadow:0 .5px 1px rgb(0 0 0 / 6%)}.sort-btn:hover{border-color:var(--theme-border-interactive);color:var(--theme-text-primary);background:var(--theme-bg-secondary);box-shadow:0 6px 16px #00000026,0 3px 6px #0000001a;text-shadow:0 1px 2px rgb(0 0 0 / 8%)}.filter-btn:focus,.sort-btn:focus{outline:none;border-color:var(--theme-border-focus);box-shadow:0 0 0 3px var(--color-primary-light),0 4px 12px #0000001f,0 2px 4px #00000014;color:var(--theme-text-primary);text-shadow:0 .5px 1px rgb(0 0 0 / 6%)}.sort-btn:focus{box-shadow:0 0 0 3px #3b82f626,0 4px 16px #00000026,0 2px 6px #0000001a;color:var(--theme-text-primary);text-shadow:0 .5px 1px rgb(0 0 0 / 8%)}.filter-btn[aria-expanded=true],.sort-btn[aria-expanded=true]{border-color:var(--theme-accent-primary);transform:translateY(1px);background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 80%);color:var(--theme-text-on-accent);box-shadow:0 2px 8px #3b82f633,0 1px 3px #0000001f;text-shadow:0 .5px 1px rgb(59 130 246 / 10%)}.sort-btn[aria-expanded=true]{border-color:color-mix(in oklab,var(--theme-accent-primary),#000 15%);color:var(--theme-text-on-accent);background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 75%);box-shadow:0 2px 10px #3b82f640,0 1px 4px #00000026;text-shadow:0 .5px 1px rgb(59 130 246 / 15%)}.filter-icon,.sort-icon{width:16px;height:16px;color:var(--theme-text-tertiary);transition:transform var(--transition-fast)}.filter-btn[aria-expanded=true] .filter-icon,.sort-btn[aria-expanded=true] .sort-icon{transform:rotate(180deg)}.scenario-controls-toolbar .dropdown-arrow{display:inline-block;margin-inline-start:var(--spacing-1);transition:transform var(--transition-fast);transform-origin:center}.filter-btn[aria-expanded=true] .dropdown-arrow,.sort-btn[aria-expanded=true] .dropdown-arrow{transform:rotate(180deg)}.filter-dropdown,.sort-dropdown{position:absolute;top:calc(100% + var(--dropdown-offset, 0px));inset-inline-end:0;z-index:100;background:var(--theme-bg-primary);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:hover,.sort-dropdown:hover{display:block!important;opacity:1!important;visibility:visible!important;transform:translateY(0);pointer-events:auto!important}.filter-btn[aria-expanded=true]+.filter-dropdown,.sort-btn[aria-expanded=true]+.sort-dropdown,.filter-dropdown.open,.sort-dropdown.open{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,.scenario-controls-toolbar .sort-container:hover .sort-dropdown{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(--theme-accent-primary);background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 80%);color:var(--theme-accent-primary)}.scenario-controls-toolbar img,.scenario-controls-toolbar video,.scenario-controls-toolbar canvas,.scenario-controls-toolbar iframe{max-width:100%;height:auto}.scenario-controls-toolbar svg,.scenario-controls-toolbar .toolbar-btn svg{width:1.125em;height:1.125em;flex:0 0 auto;color:currentColor}.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( --theme-text-primary );text-shadow:0 .5px .5px rgb(0 0 0 / 1.5%);background:transparent}.sort-option{font-weight:475;color:var(--theme-text-primary);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-color:var(--theme-bg-secondary);color:var(--theme-text-primary);transform:translate(2px);box-shadow:0 1px 3px #0000000d;text-shadow:0 .5px 1px rgb(0 0 0 / 2.5%)}.sort-option:hover{color:var( --theme-text-primary );background-color:var(--theme-bg-secondary);box-shadow:0 1px 4px #00000014;text-shadow:0 .5px 1px rgb(0 0 0 / 4%)}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-color:var(--theme-bg-interactive);color:var(--theme-accent-primary);font-weight:550;box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--theme-accent-primary),#fff 80%),0 1px 3px color-mix(in oklab,var(--theme-accent-primary),transparent 90%);text-shadow:0 .5px 1px color-mix(in oklab,var(--theme-accent-primary),transparent 92%);border-left:3px solid color-mix(in oklab,var(--theme-accent-primary),#fff 65%);padding-left:calc(var(--spacing-4) - 3px)}.sort-option.active{font-weight:575;color:var(--theme-accent-primary);background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 85%);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--theme-accent-primary),#fff 55%),0 1px 4px color-mix(in oklab,var(--theme-accent-primary),transparent 85%);text-shadow:0 .5px 1px color-mix(in oklab,var(--theme-accent-primary),transparent 88%);border-left:3px solid var(--theme-accent-primary)}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}.sort-option .check-icon{color:var( --theme-accent-primary );filter:drop-shadow(0 .5px 1px rgb(59 130 246 / 20%))}.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 rgb(59 130 246 / 15%))}.filter-option.active .check-icon,.sort-option.active .check-icon{opacity:1;transform:scale(1.05);filter:drop-shadow(0 1px 2px rgb(59 130 246 / 25%))}.sort-option.active .check-icon{color:var(--theme-accent-primary);transform:scale(1.1);filter:drop-shadow(0 1px 2px rgb(59 130 246 / 30%))}.tag-chip{display:inline-flex;align-items:center;gap:var(--spacing-1);padding:var(--spacing-1) var(--spacing-3);background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 85%);color:var(--theme-accent-primary);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:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 80%);color:var(--theme-accent-primary)}.tag-chip.active,.tag-chip.selected{background:var(--theme-accent-primary);color:var(--theme-text-on-accent)}.tag-chip-remove{width:14px;height:14px;border-radius:var(--radius-full);background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 80%);color:var(--theme-accent-primary);border:none;cursor:pointer;transition:all var(--transition-fast)}.tag-chip:hover .tag-chip-remove{background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 70%);color:var(--theme-accent-primary)}.tag-chip.active .tag-chip-remove{background:#fff3;color:var(--theme-text-on-accent)}.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(--theme-accent-primary);color:var(--theme-text-on-accent);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:color-mix(in oklab,var(--theme-accent-primary),#000 10%);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(--theme-bg-tertiary);color:var(--theme-text-secondary);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(--theme-text-tertiary);background:none;border:none;cursor:pointer;transition:color var(--transition-fast)}.active-filter-remove:hover{color:var(--theme-text-secondary)}.filter-section .clear-all-container{position:relative;margin-left:var(--spacing-2)}.filter-section .clear-all-btn{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-5);border:1px solid var(--theme-border-error);border-radius:var(--radius-md);background-color:var(--theme-bg-primary);color:var(--theme-accent-error);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;box-shadow:0 1px 3px #ef44441f,0 1px 2px #0000000f;text-shadow:0 .5px 1px rgb(0 0 0 / 2%)}.clear-all-btn:hover{border-color:var(--theme-accent-error);background-color:var(--theme-bg-secondary);color:var(--theme-accent-error);transform:translateY(-1px);box-shadow:0 4px 12px color-mix(in oklab,var(--theme-accent-error),transparent 85%),0 2px 4px #00000014;text-shadow:0 .5px 1px rgb(0 0 0 / 6%)}.clear-all-btn:focus{outline:none;border-color:var(--theme-accent-error);box-shadow:0 0 0 3px color-mix(in oklab,var(--theme-accent-error),transparent 90%),0 4px 12px color-mix(in oklab,var(--theme-accent-error),transparent 88%),0 2px 4px #00000014;color:var(--theme-accent-error);text-shadow:0 .5px 1px rgb(0 0 0 / 6%)}.clear-all-btn:active{background-color:var(--theme-bg-tertiary);transform:translateY(0);box-shadow:0 2px 6px #ef444433,0 1px 2px #0000001a}.clear-all-icon{width:16px;height:16px;color:var(--theme-accent-error);transition:color var(--transition-fast)}.clear-all-btn:hover .clear-all-icon{color:color-mix(in oklab,var(--theme-accent-error),#000 10%)}.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(--theme-bg-primary)}.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(--theme-border-primary)}.results-header h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--theme-text-primary);margin:0}.results-count{font-size:var(--font-size-sm);color:var(--theme-text-secondary);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(--theme-text-secondary);font-size:var(--font-size-sm)}.sort-select{padding:var(--spacing-2) var(--spacing-3);border:2px solid var(--theme-border-primary);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--theme-bg-primary);transition:border-color .2s ease}.sort-select:focus{outline:none;border-color:var(--theme-border-focus)}.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(--theme-accent-primary);border-radius:var(--radius-md);background:var(--theme-bg-primary);color:var(--theme-accent-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(--theme-accent-primary);color:var(--theme-text-on-accent)}.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(--theme-border-primary);border-top:4px solid var(--theme-accent-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(--theme-text-secondary);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(--theme-bg-secondary);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(--theme-text-secondary);margin-bottom:var(--spacing-2)}.no-results h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--theme-text-primary);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(--theme-text-secondary);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 .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);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);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: more){.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(4px);z-index:16000;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:16005;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,var(--theme-bg-primary) 0%,var(--theme-bg-secondary) 100%);border-radius:24px;box-shadow:var(--shadow-xl),0 8px 32px var(--theme-shadow-medium),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 var(--theme-border-primary);background:var(--gradient-primary);color:var(--theme-text-inverse);position:relative;flex-shrink:0}.scenario-modal-header:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-modal-accent, var(--gradient-primary))}.scenario-title-section{margin-bottom:.5rem}.scenario-category{display:block;font-size:.875rem;font-weight:500;color:var(--theme-text-inverse-secondary);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em}.scenario-title{font-size:var(--font-size-3xl);font-weight:800;margin:0;color:var(--theme-text-inverse);text-shadow:0 2px 4px var(--theme-shadow-medium);letter-spacing:-.025em}.close-button{position:absolute;top:1.5rem;right:2rem;background:var(--theme-bg-overlay-light);border:1px solid var(--theme-border-overlay);color:var(--theme-text-inverse);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:var(--font-size-2xl);line-height:1;transition:all .2s ease;backdrop-filter:blur(10px)}.close-button:hover{background:var(--theme-bg-overlay-medium);transform:scale(1.1)}.close-button:focus{outline:2px solid var(--theme-border-overlay);outline-offset:2px}.scenario-modal .scenario-content,.modal-dialog .scenario-content,.scenario-modal-dialog .scenario-content{display:grid;grid-template-columns:2fr 1fr;grid-template-areas:"main sidebar";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;grid-template-areas:"main" "sidebar";gap:2rem;padding:1.5rem}}.scenario-main{background:var(--theme-bg-primary);border-radius:16px;padding:2rem;box-shadow:var(--shadow-lg);border:1px solid var(--theme-border-primary);height:fit-content;grid-area:main}.scenario-sidebar{background:var(--theme-bg-primary);border-radius:16px;padding:1rem;box-shadow:var(--shadow-lg);border:1px solid var(--theme-border-primary);height:fit-content;position:sticky;top:2rem;grid-area:sidebar;min-width:400px;max-width:450px;overflow:visible;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:var(--font-size-lg);font-weight:600;color:var(--theme-text-primary);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:var(--font-size-xl);color:var(--theme-text-primary);line-height:1.8;margin:0;font-weight:600;background:linear-gradient(135deg,#f59e0b1a,#fbbf240d);padding:2rem;border-radius:16px;border-left:6px solid var(--color-warning);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:var(--font-size-lg);color:var(--theme-text-primary);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:var(--theme-bg-primary);border:2px solid var(--theme-border-secondary);border-radius:12px;cursor:pointer;transition:all .3s ease;text-align:left;font-size:var(--font-size-base);line-height:1.5;position:relative;box-shadow:var(--shadow-sm)}.option-card:hover{border-color:var(--color-primary);background:var(--theme-bg-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.option-card:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}.option-card.selected{border-color:var(--color-primary);background:var(--gradient-primary-subtle);transform:none;box-shadow:var(--shadow-lg)}.option-card.selected:hover{border-color:var(--color-primary-dark);background:var(--gradient-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-xl);cursor:pointer}.option-card.selected:hover .option-title{color:var(--color-primary-dark);transition:color .2s ease}.option-card.selected:hover .option-description{color:var(--color-secondary);transition:color .2s ease}.option-card.selected:after{content:"";position:absolute;top:.75rem;right:.75rem;width:20px;height:20px;background:var(--gradient-primary);border-radius:50%;opacity:.8;transition:all .2s ease}.option-card.selected:hover:after{background:var(--gradient-primary-hover);transform:scale(1.1);opacity:1}.option-card.selected:before{content:"✓";position:absolute;top:.85rem;right:.85rem;width:10px;height:10px;color:var(--theme-text-inverse);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:var(--theme-text-primary);font-weight:600;font-size:var(--font-size-base);margin:0}.option-description{color:var(--theme-text-secondary);font-size:var(--font-size-sm);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:16010;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:var(--color-white);z-index:var(--z-popover);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:var(--z-dropdown)}.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:var(--theme-text-primary);margin:0 0 .75rem;background:var(--gradient-primary);background-clip:text;-webkit-text-fill-color:transparent}.pros-cons-content .option-description p{color:var(--theme-text-secondary);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:var(--theme-bg-tertiary);padding:1.5rem;border-radius:12px;border:1px solid var(--theme-border-secondary)}.pros-section{margin-bottom:20px}.pros-title{font-size:1.1rem;font-weight:700;color:var(--theme-accent-success);margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.cons-title{font-size:1.1rem;font-weight:700;color:var(--theme-accent-error);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:var(--theme-text-secondary);line-height:1.5;font-size:.95rem}.pros-list li:before{content:"•";position:absolute;left:0;color:var(--theme-accent-success);font-weight:700;font-size:1.2rem}.cons-list li:before{content:"•";position:absolute;left:0;color:var(--theme-accent-error);font-weight:700;font-size:1.2rem}.scenario-modal-dialog .scenario-modal-footer{padding:1rem 2rem 1.25rem;background:var(--theme-bg-secondary);border-top:1px solid var(--theme-border-primary);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:var(--gradient-warm);color:var(--theme-text-inverse);padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;text-shadow:0 1px 2px var(--theme-shadow-light);box-shadow:0 2px 4px var(--theme-shadow-medium);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}.scenario-modal-footer .btn-secondary{background:var(--color-white);color:var(--theme-text-muted);border:2px solid var(--theme-border-primary)}.scenario-modal-footer .btn-secondary:hover:not(:disabled){background:var(--theme-bg-interactive);border-color:var(--theme-border-secondary);transform:translateY(-1px)}.scenario-modal-footer .btn-primary{background:var(--gradient-primary);color:var(--theme-text-inverse);box-shadow:0 4px 12px var(--theme-shadow-medium)}.scenario-modal-footer .btn-primary:hover:not(:disabled){box-shadow:0 6px 20px var(--theme-shadow-heavy);transform:translateY(-2px)}.feedback-close{position:absolute;top:1.5rem;right:1.5rem;background:var(--theme-bg-overlay-light);border:1px solid var(--theme-border-primary);cursor:pointer;padding:.5rem;border-radius:50%;color:var(--theme-text-muted);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 var(--theme-shadow-light)}.feedback-close:hover{background:#ef44441a;border-color:#ef44444d;color:var(--theme-accent-error);transform:scale(1.1)}.feedback-close:focus{outline:2px solid var(--theme-border-focus);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;max-width:320px}.scenario-modal #scenario-radar-chart canvas{width:320px;height:320px;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%)}}}@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:fixed;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:17000;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}.coach-mark-btn.primary:focus-visible{outline:2px solid #ffffff;outline-offset:2px;box-shadow:0 0 0 3px #ffffff4d}.coach-mark-btn.secondary:focus-visible{outline:2px solid #1a73e8;outline-offset:2px;box-shadow:0 0 0 3px #1a73e81a}.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}}.scenario-reflection-modal .onboarding-click-highlight{box-shadow:none!important;animation:onboarding-click-pulse-reflection 1.3s ease-in-out infinite;transform-origin:center center;will-change:transform}@keyframes onboarding-click-pulse-reflection{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@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 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:17000!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}.modal-backdrop:has(~.onboarding-spotlight),.pre-launch-modal-backdrop:has(~.onboarding-spotlight){opacity:0!important;background:transparent!important}.modal-backdrop.backdrop-transparent,.pre-launch-modal-backdrop.backdrop-transparent{opacity:0!important;background:transparent!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 var(--theme-border-primary, #e5e5e5);background:var(--modal-header-bg, linear-gradient(135deg, #667eea 0%, #764ba2 100%));color:var(--theme-text-inverse, #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 var(--theme-border-primary, #e5e5e5);background:var(--theme-bg-primary, #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:var(--theme-bg-secondary, #f8f9fa);border-bottom:1px solid var(--theme-border-primary, #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,var(--theme-bg-secondary, #f8f9fa) 0%,transparent 100%)}.pre-launch-tabs:after{right:0;background:linear-gradient(to left,var(--theme-bg-secondary, #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}html[data-theme=light] .modal-backdrop:has(.pre-launch-modal) .modal-dialog,body[data-theme=light] .modal-backdrop:has(.pre-launch-modal) .modal-dialog,html[data-theme=light] .modal-backdrop:has(.pre-launch-modal) .modal-header,body[data-theme=light] .modal-backdrop:has(.pre-launch-modal) .modal-header,html[data-theme=light] .modal-backdrop:has(.pre-launch-modal) .modal-body,body[data-theme=light] .modal-backdrop:has(.pre-launch-modal) .modal-body,html[data-theme=light] .modal-backdrop:has(.pre-launch-modal) .modal-footer,body[data-theme=light] .modal-backdrop:has(.pre-launch-modal) .modal-footer{background:var(--theme-bg-primary)!important;color:var(--theme-text-primary)!important;border-color:var(--theme-border-primary)!important;color-scheme:light}html[data-theme=dark] .modal-backdrop:has(.pre-launch-modal) .modal-dialog,body[data-theme=dark] .modal-backdrop:has(.pre-launch-modal) .modal-dialog,html[data-theme=dark] .modal-backdrop:has(.pre-launch-modal) .modal-header,body[data-theme=dark] .modal-backdrop:has(.pre-launch-modal) .modal-header,html[data-theme=dark] .modal-backdrop:has(.pre-launch-modal) .modal-body,body[data-theme=dark] .modal-backdrop:has(.pre-launch-modal) .modal-body,html[data-theme=dark] .modal-backdrop:has(.pre-launch-modal) .modal-footer,body[data-theme=dark] .modal-backdrop:has(.pre-launch-modal) .modal-footer{background:var(--theme-bg-primary)!important;color:var(--theme-text-primary)!important;border-color:var(--theme-border-primary)!important;color-scheme:dark}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 rgb(102 126 234 / 30%);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 rgb(245 158 11 / 30%)}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 rgb(34 197 94 / 30%)}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 rgb(102 126 234 / 30%))}.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 rgb(33 150 243 / 30%))}.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 rgb(156 39 176 / 30%))}.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 rgb(233 30 99 / 30%))}.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 #28a7457f,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:#000000e5;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:#000000e5;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: rgb(0 0 0 / 10%);--radar-grid-color-1: rgb(0 0 0 / 15%);--radar-grid-color-2: rgb(0 0 0 / 20%);--radar-grid-color-default: rgb(0 0 0 / 10%);--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-polygon-border: #2563eb;--radar-polygon-fill: rgb(37 99 235 / 55%);--radar-polygon-point: #1d4ed8}.radar-chart-container.theme-light,.radar-chart-scenario.theme-light{background-color:var(--radar-theme-light-background, #fff);border-color:var(--radar-theme-light-border, #e2e8f0);color:var(--radar-theme-light-text, #333)}.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, #444);color:var(--radar-theme-dark-text, #fff)}body.theme-light,body:not(.theme-dark,.dark-mode){--radar-polygon-border: #2563eb;--radar-polygon-fill: rgb(37 99 235 / 55%);--radar-polygon-point: #1d4ed8}body.dark-mode,body.theme-dark{--radar-polygon-border: #60a5fa;--radar-polygon-fill: rgb(96 165 250 / 65%);--radar-polygon-point: #93c5fd}body.theme-high-contrast,body.high-contrast,body.high-contrast-mode{--radar-polygon-border: #ffeb3b;--radar-polygon-fill: rgb(255 235 59 / 50%);--radar-polygon-point: #fff176}.radar-chart-container.theme-high-contrast,.radar-chart-scenario.theme-high-contrast{background-color:var(--radar-theme-high-contrast-background, #000);border-color:var(--radar-theme-high-contrast-border, #fff);color:var(--radar-theme-high-contrast-text, #fff)}@media (width <= 768px){.radar-chart-container{padding:1rem;margin:1rem 0}}@media (width <= 1024px){.radar-chart-demo-container{max-width:90%}.radar-chart-scenario{padding:1.25rem}}.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;isolation:isolate;z-index:1;background:linear-gradient(135deg,var(--theme-bg-secondary, var(--color-background-secondary, #f8fafc)) 0%,var(--theme-bg-tertiary, var(--color-background-tertiary, #e2e8f0)) 100%);border-radius:12px;box-shadow:0 2px 8px #0000000f,0 1px 3px #0000000a;border:1px solid var(--theme-border-subtle, var(--color-gray-200, #e2e8f0));transition:all .2s ease}.scenario-radar-chart:hover{box-shadow:0 4px 16px #0000001a,0 2px 8px #0000000f;border-color:var(--theme-accent-primary, var(--color-primary, #667eea))}.scenario-radar-chart.animating{transition:all .3s ease;transform:scale(1.02);box-shadow:0 0 20px #007bff7f}body.dark-mode .scenario-radar-chart.animating,body.theme-dark .scenario-radar-chart.animating{box-shadow:0 0 20px #64b4ff66}.scenario-radar-chart canvas{border-radius:8px;background:transparent}.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:transparent;border:1px solid #e2e8f0}.scenario-modal-radar-chart{width:100%;max-width:380px;height:var(--radar-chart-size, 400px);min-height:var(--radar-chart-size, 400px);position:relative;margin:0 auto}.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:transparent;image-rendering:auto;image-rendering:-moz-crisp-edges;image-rendering:-webkit-optimize-contrast}canvas[role=img]{position:relative;z-index:5;isolation:isolate}.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}.scenario-modal .chartjs-tooltip,.scenario-modal-dialog .chartjs-tooltip{z-index:1060!important}.progress-ring-tooltip{display:block!important;z-index:1200!important;position:fixed!important}.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}.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}.radar-chart-demo-container{padding:.5rem}}.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{color:#000!important}}.scenario-radar-chart:empty:before,.scenario-radar-chart: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%)}canvas[role=img]+div[style*="position: absolute"]{z-index:1060!important;position:fixed!important}.chart-tooltip:not(.progress-ring-tooltip){z-index:1060!important;position:fixed!important;pointer-events:none!important}.progress-ring-tooltip,.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}}@layer reset,tokens,base,layout,components,utilities,overrides;@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}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( --theme-text-primary, var(--color-on-surface, var(--color-gray-900)) );background-color:var( --theme-bg-primary, var(--color-surface, var(--color-white)) );-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)}}.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}}@layer components{.simulations-section,.educator-section,.about-section{background:var(--color-background);color:var(--color-text-primary);padding:var(--spacing-20) var(--spacing-6);max-width:min(var(--container-xl, 1280px),100vw);width:100%;margin:0 auto;overflow-x:hidden;box-sizing:border-box;contain:layout style}@media (min-width: 1440px){.simulations-section,.educator-section,.about-section{max-width:min(var(--container-2xl, 1536px),92vw)}}.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 <= 479px){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:var(--theme-accent-success);border:1px solid var(--theme-accent-success)}.difficulty-intermediate{background:#fa03;color:var(--theme-accent-warning);border:1px solid var(--theme-accent-warning)}.difficulty-advanced{background:#f443;color:var(--theme-accent-error);border:1px solid var(--theme-accent-error)}.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 <= 479px){.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 <= 479px){.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,var(--color-background-subtle) 0%,var(--color-background-elevation-1) 100%);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,var(--color-primary),var(--color-primary-dark));color:var(--color-text-inverse);box-shadow:0 4px 12px #8b5cf64d}.donor-badge.gold{background:linear-gradient(135deg,var(--theme-accent-warning),#d97706);color:var(--color-text-inverse);box-shadow:0 4px 12px #f59e0b4d}.donor-badge.silver{background:linear-gradient(135deg,var(--color-gray-500),var(--color-gray-600));color:var(--color-text-inverse);box-shadow:0 4px 12px #6b72804d}.donor-badge.bronze{background:linear-gradient(135deg,#cd7c0e,#b45309);color:var(--color-text-inverse);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:var(--color-text-secondary)}.simulation-container{border:1px solid var(--color-border);height:auto!important;min-height:200px}}.btn: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}}:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark){background:var(--theme-bg-primary);color:var(--theme-text-primary)}:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) h1,:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) h2,:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) h3,:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) h4,:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) h5,:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) h6{color:var(--theme-text-primary)}:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) p{color:var(--theme-text-secondary)}:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) .main-content .main-section-title,body.theme-dark .main-content .main-section-title{color:var(--theme-text-primary)}:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) .main-section-description,body.theme-dark .main-section-description{color:var(--theme-text-secondary)}:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) .main-content,:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) .simulations-section,:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) section{background:var(--theme-bg-primary);color:var(--theme-text-primary)}:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) .card,:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) .container{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);color:var(--theme-text-primary)}:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) .card:hover{border-color:var(--theme-border-hover);box-shadow:0 4px 12px var(--theme-shadow-hover)}:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) .btn-secondary{background:var(--theme-bg-secondary);color:var(--theme-text-primary);border:1px solid var(--theme-border)}:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) .btn-secondary:hover{background:var(--theme-border);border-color:var(--theme-border-hover)}:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) input,:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) textarea,:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) select{background:var(--theme-bg-secondary);color:var(--theme-text-primary);border:1px solid var(--theme-border)}:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) input:focus,:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) textarea:focus,:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) select:focus{border-color:var(--color-primary);background:var(--theme-bg-primary)}:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) footer{background:var(--theme-bg-secondary);border-top:1px solid var(--theme-border);color:var(--theme-text-secondary)}:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) footer a{color:var(--theme-text-primary)}:is(body.dark-mode,body.theme-dark,body.theme-system.theme-dark) 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}main a,.content a,.article a,.modal-body a,.pre-launch-modal a,.scenario-modal a,footer a,.prose a{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:2px}main a:hover,.content a:hover,.article a:hover,.modal-body a:hover,.pre-launch-modal a:hover,.scenario-modal a:hover,footer a:hover,.prose 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))}}@layer layout{:root{--container-padding: 16px;--font-scale: 1;--touch-target-min: 44px;--device-type: "unknown";--device-category: "unknown";--breakpoint-xs: 360px;--breakpoint-sm: 375px;--breakpoint-md: 390px;--breakpoint-lg: 393px;--breakpoint-xl: 428px;--breakpoint-tablet-sm: 768px;--breakpoint-tablet-md: 800px;--breakpoint-tablet-lg: 820px;--breakpoint-tablet-xl: 1024px;--breakpoint-laptop-sm: 1280px;--breakpoint-laptop-md: 1366px;--breakpoint-laptop-lg: 1500px;--breakpoint-laptop-xl: 1536px;--breakpoint-desktop-xl: 1920px;--breakpoint-desktop-2k: 2560px;--breakpoint-desktop-4k: 3840px}@media only screen and (width <= 767px){:root{--device-category: "mobile";--layout-type: "single-column";--nav-type: "bottom-nav";--sidebar-behavior: "overlay"}}@media only screen and (width <= 359px){:root{--device-type: "mobile-xxs";--container-padding: 8px;--font-scale: .8;--touch-target-min: 44px;--floating-tab-width: 180px;--floating-tab-height: 44px;--floating-tab-protrusion: 24px}}@media only screen and (width >= 360px) and (width <= 374px){:root{--device-type: "mobile-xs";--container-padding: 12px;--font-scale: .85;--touch-target-min: 44px;--floating-tab-width: 200px;--floating-tab-height: 48px;--floating-tab-protrusion: 30px}}@media only screen and (width >= 375px) and (width <= 389px){:root{--device-type: "mobile-sm";--container-padding: 14px;--font-scale: .9;--touch-target-min: 44px;--floating-tab-width: 210px;--floating-tab-height: 50px;--floating-tab-protrusion: 32px}}@media only screen and (width >= 390px) and (width <= 399px){:root{--device-type: "mobile-md";--container-padding: 16px;--font-scale: .95;--touch-target-min: 44px;--floating-tab-width: 220px;--floating-tab-height: 52px;--floating-tab-protrusion: 34px}}@media only screen and (width >= 400px) and (width <= 479px){:root{--device-type: "mobile-lg";--container-padding: 18px;--font-scale: 1;--touch-target-min: 44px;--floating-tab-width: 240px;--floating-tab-height: 54px;--floating-tab-protrusion: 36px}}@media only screen and (width >= 768px) and (width <= 1279px){:root{--device-category: "tablet";--layout-type: "two-column";--nav-type: "side-nav";--sidebar-behavior: "collapse"}}@media only screen and (width >= 768px) and (width <= 820px){:root{--device-type: "tablet-sm";--container-padding: 20px;--font-scale: 1.05;--touch-target-min: 44px;--floating-tab-width: 260px;--floating-tab-height: 58px;--floating-tab-protrusion: 38px}}@media only screen and (width >= 821px) and (width <= 1023px){:root{--device-type: "tablet-md";--container-padding: 24px;--font-scale: 1.1;--touch-target-min: 44px;--floating-tab-width: 270px;--floating-tab-height: 59px;--floating-tab-protrusion: 40px}}@media only screen and (width >= 1024px) and (width <= 1279px){:root{--device-type: "tablet-lg";--container-padding: 28px;--font-scale: 1.15;--touch-target-min: 44px;--floating-tab-width: 280px;--floating-tab-height: 60px;--floating-tab-protrusion: 42px}}@media only screen and (width >= 1280px) and (width <= 1919px){:root{--device-category: "laptop";--layout-type: "multi-column";--nav-type: "top-nav";--sidebar-behavior: "persistent"}}@media only screen and (width >= 1280px) and (width <= 1366px){:root{--device-type: "laptop-sm";--container-padding: 32px;--font-scale: 1;--touch-target-min: 40px;--floating-tab-width: 300px;--floating-tab-height: 62px;--floating-tab-protrusion: 44px}}@media only screen and (width >= 1367px) and (width <= 1535px){:root{--device-type: "laptop-md";--container-padding: 36px;--font-scale: 1.05;--touch-target-min: 40px;--floating-tab-width: 310px;--floating-tab-height: 63px;--floating-tab-protrusion: 46px}}@media only screen and (width >= 1536px) and (width <= 1919px){:root{--device-type: "laptop-lg";--container-padding: 40px;--font-scale: 1.1;--touch-target-min: 40px;--floating-tab-width: 320px;--floating-tab-height: 64px;--floating-tab-protrusion: 48px}}@media only screen and (width >= 1920px){:root{--device-category: "desktop";--layout-type: "wide-multi-column";--nav-type: "mega-nav";--sidebar-behavior: "dual-sidebar"}}@media only screen and (width >= 1920px) and (width <= 2559px){:root{--device-type: "desktop-fhd";--container-padding: 48px;--font-scale: 1.15;--touch-target-min: 40px;--floating-tab-width: 340px;--floating-tab-height: 66px;--floating-tab-protrusion: 50px}}@media only screen and (width >= 2560px) and (width <= 3839px){:root{--device-type: "desktop-2k";--container-padding: 56px;--font-scale: 1.25;--touch-target-min: 40px;--floating-tab-width: 360px;--floating-tab-height: 68px;--floating-tab-protrusion: 52px}}@media only screen and (width >= 3840px){:root{--device-type: "desktop-4k";--container-padding: 64px;--font-scale: 1.4;--touch-target-min: 44px;--floating-tab-width: 400px;--floating-tab-height: 72px;--floating-tab-protrusion: 54px}}@media only screen and (orientation: portrait){:root{--orientation: "portrait";--header-height: 80px;--header-h: 80px;--footer-height: 80px}}@media only screen and (orientation: landscape){:root{--orientation: "landscape";--header-height: 80px;--header-h: 80px;--footer-height: 64px}}@media (prefers-contrast: more){:root{--accessibility-mode: "high-contrast";--border-width: 2px;--focus-ring-width: 4px}}@media (prefers-reduced-motion: reduce){:root{--animation-duration: 0ms;--transition-duration: 0ms;--accessibility-mode: "reduced-motion"}}@media (prefers-reduced-data: reduce){:root{--data-saver-mode: "enabled";--image-quality: "low";--animation-enabled: "false"}}@media (hover: hover) and (pointer: fine){:root{--input-mode: "fine";--hover-enabled: true}}@media (hover: none) and (pointer: coarse){:root{--input-mode: "coarse";--hover-enabled: false}}@media print{:root{--device-type: "print";--color-scheme: "light"}.floating-tab-link,.floating-tour-tab-link,.floating-surprise-tab-link,.floating-action-tab,.floating-surprise-tab,.floating-tour-tab,nav,.sidebar,.modal,.tooltip{display:none}}}@layer utilities{.floating-tab-responsive{width:var(--floating-tab-width);height:var(--floating-tab-height);transform:translate(calc(100% - var(--floating-tab-protrusion)))}.layout-container-responsive{padding-left:var(--container-padding);padding-right:var(--container-padding);max-width:100vw;box-sizing:border-box;margin-left:auto;margin-right:auto}.layout-container-tight{padding-left:calc(var(--container-padding) * .75);padding-right:calc(var(--container-padding) * .75)}.layout-container-loose{padding-left:calc(var(--container-padding) * 1.5);padding-right:calc(var(--container-padding) * 1.5)}.text-responsive{font-size:calc(1rem * var(--font-scale))}.text-responsive-small{font-size:calc(.875rem * var(--font-scale))}.text-responsive-large{font-size:calc(1.125rem * var(--font-scale))}.text-responsive-heading{font-size:calc(1.5rem * var(--font-scale));line-height:calc(1.2 * var(--font-scale, 1))}.text-responsive-h1{font-size:calc(2.25rem * var(--font-scale));line-height:calc(1.1 * var(--font-scale, 1))}.text-responsive-h2{font-size:calc(1.875rem * var(--font-scale));line-height:calc(1.15 * var(--font-scale, 1))}.text-responsive-h3{font-size:calc(1.5rem * var(--font-scale));line-height:calc(1.2 * var(--font-scale, 1))}.text-responsive-h4{font-size:calc(1.25rem * var(--font-scale));line-height:calc(1.25 * var(--font-scale, 1))}.text-responsive-body{font-size:calc(1rem * var(--font-scale));line-height:calc(1.5 * var(--font-scale, 1))}.text-responsive-caption{font-size:calc(.75rem * var(--font-scale));line-height:calc(1.4 * var(--font-scale, 1))}@media only screen and (width <= 360px){.text-responsive-heading{font-size:calc(1.25rem * var(--font-scale))}}.touch-target{min-height:var(--touch-target-min);min-width:var(--touch-target-min)}.flex{display:flex}.inline-flex{display:inline-flex}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-row-reverse{flex-direction:row-reverse}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.content-start{align-content:flex-start}.content-end{align-content:flex-end}.content-center{align-content:center}.content-between{align-content:space-between}.content-around{align-content:space-around}.content-evenly{align-content:space-evenly}.self-auto{align-self:auto}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-stretch{align-self:stretch}.self-baseline{align-self:baseline}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-initial{flex:0 1 auto}.flex-none{flex:none}.grow{flex-grow:1}.grow-0{flex-grow:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.gap-xs{gap:calc(var(--container-padding) * .25)}.gap-sm{gap:calc(var(--container-padding) * .5)}.gap-md{gap:var(--container-padding)}.gap-lg{gap:calc(var(--container-padding) * 1.5)}.gap-xl{gap:calc(var(--container-padding) * 2)}@media only screen and (width <= 767px){.mobile\:flex-col{flex-direction:column}.mobile\:flex-wrap{flex-wrap:wrap}.mobile\:justify-center{justify-content:center}.mobile\:items-center{align-items:center}}@media only screen and (width >= 768px) and (width <= 1279px){.tablet\:flex-row{flex-direction:row}.tablet\:justify-between{justify-content:space-between}}@media only screen and (width >= 1280px){.desktop\:flex-row{flex-direction:row}.desktop\:justify-start{justify-content:flex-start}}.mobile-hide{display:block}.mobile-show{display:none}.tablet-hide{display:block}.tablet-show{display:none}.desktop-hide{display:block}.desktop-show{display:none}@media only screen and (width <= 767px){.mobile-hide{display:none}.mobile-show{display:block}.mobile\:text-center{text-align:center}.mobile\:full-width{width:100%}.mobile\:padding-sm{padding:var(--spacing-3)}.mobile\:margin-auto{margin:0 auto}}@media only screen and (width >= 768px) and (width <= 1279px){.tablet-hide{display:none}.tablet-show{display:block}.tablet\:two-column{column-count:2;column-gap:var(--spacing-6)}}@media only screen and (width >= 1280px){.desktop-hide{display:none}.desktop-show{display:block}.desktop\:three-column{column-count:3;column-gap:var(--spacing-8)}}@media (prefers-reduced-motion: reduce){.respect-motion{animation-duration:.01ms;animation-iteration-count:1;transition-duration:.01ms;scroll-behavior:auto}.no-motion{animation:none;transition:none}}@media (prefers-contrast: more){.high-contrast-border{border:2px solid var(--theme-border-focus, currentColor)}.high-contrast-text{color:var(--theme-text-primary, CanvasText);background:var(--theme-bg-primary, Canvas)}.high-contrast-focus:focus{outline:3px solid var(--theme-border-focus, Highlight);outline-offset:2px}}@media print{.print-hide{display:none}.print-show{display:block}.print-page-break{page-break-after:always}.print-no-break{page-break-inside:avoid}.print-black-text{color:var(--theme-text-primary, black)}.print-white-bg{background:var(--theme-bg-primary, white)}}@media (hover: none) and (pointer: coarse){.touch-larger{min-height:44px;min-width:44px}.touch-spacing{margin:8px}.touch-no-hover:hover{background:initial;transform:none;box-shadow:initial}}@media only screen and (width <= 320px){.layout-container-responsive{padding-left:6px;padding-right:6px}.layout-container-tight{padding-left:4px;padding-right:4px}}}@layer components{.about-page{min-height:100vh;background:linear-gradient(135deg,#f8f9fa,#e9ecef);padding:2rem 0}.about-container{max-width:1200px;margin:0 auto;padding:0 2rem}.about-hero{text-align:center;margin-bottom:4rem;padding:3rem 0;background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000001a}.about-title{font-size:3.5rem;font-weight:700;color:var(--primary-dark, #2c3e50);margin-bottom:1rem;line-height:1.2}.about-subtitle{font-size:1.5rem;font-weight:600;color:var(--primary-accent, #3498db);margin-bottom:2rem;line-height:1.3}.about-intro{font-size:1.2rem;color:var(--text-secondary, #666);line-height:1.6;max-width:800px;margin:0 auto}.about-section{background:#fff;border-radius:12px;padding:3rem;margin-bottom:2rem;box-shadow:0 4px 16px #0000000d;border:1px solid rgb(0 0 0 / 5%)}.about-page .section-title,.about-content .section-title{font-size:calc(1.8rem * var(--font-scale, 1));font-weight:700;color:var(--color-gray-900);margin-bottom:var(--spacing-4);text-align:center;position:relative}.section-content{font-size:1.1rem;color:var(--text-primary, #333);line-height:1.7;margin-bottom:1.5rem}.section-content:last-child{margin-bottom:0}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}.feature-card{background:var(--bg-light, #f8f9fa);border-radius:12px;padding:2rem;border:2px solid transparent;transition:all .3s ease}.feature-card:hover{border-color:var(--primary-accent, #3498db);transform:translateY(-4px);box-shadow:0 8px 24px #3498db26}.feature-title{font-size:1.3rem;font-weight:600;color:var(--primary-dark, #2c3e50);margin-bottom:1rem}.feature-description{font-size:1rem;color:var(--text-secondary, #666);line-height:1.6}.research-section{background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border:2px solid var(--primary-accent, #3498db)}.benefits-list{list-style:none;padding:0;margin:1.5rem 0}.benefits-list li{position:relative;padding:.5rem 0 .5rem 2rem;font-size:1.1rem;color:var(--text-primary, #333)}.benefits-list li:before{content:"✅";position:absolute;left:0;top:.5rem;font-size:1.2rem}.audience-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin:2rem 0}.audience-card{background:var(--bg-light, #f8f9fa);border-radius:12px;padding:2rem;text-align:center;border:2px solid transparent;transition:all .3s ease}.audience-card:hover{border-color:var(--primary-accent, #3498db);transform:translateY(-4px);box-shadow:0 8px 24px #3498db26}.audience-icon{font-size:3rem;margin-bottom:1rem}.audience-title{font-size:1.3rem;font-weight:600;color:var(--primary-dark, #2c3e50);margin-bottom:1rem}.audience-description{font-size:1rem;color:var(--text-secondary, #666);line-height:1.6}.join-section{background:linear-gradient(135deg,#e8f5e8,#f0f8ff);border:2px solid var(--success-color, #27ae60);text-align:center}.cta-buttons{display:flex;gap:1rem;justify-content:center;margin-top:2rem;flex-wrap:wrap}.cta-button{display:inline-block;padding:1rem 2rem;border-radius:8px;text-decoration:none;font-weight:600;font-size:1.1rem;transition:all .3s ease;border:2px solid transparent}.cta-button.primary{background:var(--primary-accent, #3498db);color:#fff;border-color:var(--primary-accent, #3498db)}.cta-button.primary:hover{background:var(--primary-dark, #2980b9);border-color:var(--primary-dark, #2980b9);transform:translateY(-2px);box-shadow:0 8px 24px #3498db4d}.cta-button.secondary{background:transparent;color:var(--primary-accent, #3498db);border-color:var(--primary-accent, #3498db)}.cta-button.secondary:hover{background:var(--primary-accent, #3498db);color:#fff;transform:translateY(-2px);box-shadow:0 8px 24px #3498db4d}.footer{background:var(--primary-dark, #2c3e50);color:#fff;padding:3rem 0 1rem;margin-top:4rem}.footer-container{max-width:1200px;margin:0 auto;padding:0 2rem}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:2rem}.footer-section h3,.footer-section h4{color:var(--primary-accent, #3498db);margin-bottom:1rem}.footer-section ul{list-style:none;padding:0}.footer-section ul li{margin-bottom:.5rem}.footer-section ul li a{color:#bdc3c7;text-decoration:none;transition:color .3s ease}.footer-section ul li a:hover{color:var(--primary-accent, #3498db)}.footer-bottom{border-top:1px solid #34495e;padding-top:1rem;text-align:center;color:#bdc3c7}@media (width <= 768px){.about-container{padding:0 1rem}.about-title{font-size:2.5rem}.about-subtitle{font-size:1.3rem}.about-intro{font-size:1.1rem}.about-section{padding:2rem}.about-page .section-title,.about-content .section-title{font-size:2rem}.feature-grid,.audience-grid{grid-template-columns:1fr}.cta-buttons{flex-direction:column;align-items:center}.cta-button{width:100%;max-width:300px;text-align:center}}@media (width <= 480px){.about-hero{padding:2rem 1rem}.about-title{font-size:2rem}.about-subtitle{font-size:1.1rem}.about-section{padding:1.5rem}.about-page .section-title,.about-content .section-title{font-size:1.8rem}.feature-card,.audience-card{padding:1.5rem}}body.dark-mode .about-page{background:linear-gradient(135deg,var(--theme-bg-primary) 0%,var(--theme-bg-secondary) 100%);color:var(--theme-text-primary)}body.dark-mode .about-container{color:var(--theme-text-primary)}body.dark-mode .about-hero{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);box-shadow:0 8px 32px var(--theme-shadow)}body.dark-mode .about-title{color:var(--theme-text-primary)}body.dark-mode .about-subtitle{color:var(--theme-accent)}body.dark-mode .about-intro{color:var(--theme-text-secondary)}body.dark-mode .about-section{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);box-shadow:0 4px 16px var(--theme-shadow)}body.dark-mode .about-page .section-title,body.dark-mode .about-content .section-title,body.dark-mode .section-content{color:var(--theme-text-primary)}body.dark-mode .feature-card{background:var(--theme-bg-tertiary);border-color:var(--theme-border)}body.dark-mode .feature-card:hover{border-color:var(--theme-accent);box-shadow:0 8px 24px var(--theme-shadow)}body.dark-mode .feature-title{color:var(--theme-text-primary)}body.dark-mode .feature-description{color:var(--theme-text-secondary)}body.dark-mode .research-section{background:linear-gradient(135deg,var(--theme-bg-info) 0%,var(--theme-bg-info-light) 100%);border-color:var(--theme-info)}body.dark-mode .benefits-list li{color:var(--theme-text-primary)}body.dark-mode .audience-card{background:var(--theme-bg-tertiary);border-color:var(--theme-border)}body.dark-mode .audience-card:hover{border-color:var(--theme-accent);box-shadow:0 8px 24px var(--theme-shadow)}body.dark-mode .audience-title{color:var(--theme-text-primary)}body.dark-mode .audience-description{color:var(--theme-text-secondary)}body.dark-mode .join-section{background:linear-gradient(135deg,var(--theme-bg-success) 0%,var(--theme-bg-success-light) 100%);border-color:var(--theme-success)}body.dark-mode .cta-button.primary{background:var(--theme-accent);color:var(--theme-text-on-accent);border-color:var(--theme-accent)}body.dark-mode .cta-button.primary:hover{background:var(--theme-accent-dark);border-color:var(--theme-accent-dark);box-shadow:0 8px 24px var(--theme-shadow)}body.dark-mode .cta-button.secondary{background:transparent;color:var(--theme-accent);border-color:var(--theme-accent)}body.dark-mode .cta-button.secondary:hover{background:var(--theme-accent);color:var(--theme-text-on-accent);box-shadow:0 8px 24px var(--theme-shadow)}body.dark-mode .footer{background:var(--theme-bg-quaternary);color:var(--theme-text-on-dark)}body.dark-mode .footer-section h3,body.dark-mode .footer-section h4{color:var(--theme-accent)}body.dark-mode .footer-section ul li a{color:var(--theme-text-secondary)}body.dark-mode .footer-section ul li a:hover{color:var(--theme-accent)}body.dark-mode .footer-bottom{border-top-color:var(--theme-border);color:var(--theme-text-secondary)}}@layer reset,tokens,base,layout,components,utilities,overrides;@layer reset{*,*:before,*:after{box-sizing:border-box}img,video,canvas,svg,iframe{max-width:100%;height:auto}}@layer tokens;@layer base{html{scroll-behavior:auto;scroll-snap-type:none;overflow:hidden auto;scrollbar-gutter:stable both-edges}html.loaded{scroll-behavior:smooth}body{margin:0;font-family:var( --font-family-base, var( --font-family-primary, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif ) );line-height:var(--line-height-base, 1.6);color:var(--theme-text-primary, #111827);background-color:var(--theme-bg-primary, #fff);font-size:var(--font-size-base, 1rem)}h1,h2,h3,h4,h5,h6{color:var(--theme-text-primary, #2d3748);font-family:inherit;margin:0}}@layer layout{.layout-container-responsive{width:100%;max-width:var(--container-max-width, 1200px);margin:0 auto;padding-left:var(--container-padding-x, 1.5rem);padding-right:var(--container-padding-x, 1.5rem)}.main-content{min-height:100vh;width:100%;max-width:100vw;overflow-x:hidden}.grid{display:grid}.flex{display:flex}.flex-column{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.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)}@media (width >= 768px){.md-grid-cols-2{grid-template-columns:repeat(2,1fr)}.md-grid-cols-3{grid-template-columns:repeat(3,1fr)}}@media (width >= 1024px){.lg-grid-cols-3{grid-template-columns:repeat(3,1fr)}.lg-grid-cols-4{grid-template-columns:repeat(4,1fr)}}}@layer components;@layer utilities{.m-0{margin:0}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-3{margin:.75rem}.m-4{margin:1rem}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-normal{font-weight:400}.hidden{display:none}.block{display:block}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-scroll{overflow:scroll}.rounded{border-radius:.375rem}.rounded-md{border-radius:.5rem}.rounded-lg{border-radius:.75rem}.rounded-xl{border-radius:1rem}.rounded-full{border-radius:9999px}.shadow{box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f}.shadow-md{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.shadow-xl{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}}@layer overrides{@media (forced-colors: active){.button,.primary-button,.secondary-button{border:2px solid currentColor}.modal-backdrop{background:#000c}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{body.theme-dark,.hero{background:#fff!important;color:#000!important}.modal,.settings-menu,.dropdown{background:#fff!important;color:#000!important;box-shadow:none!important}}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}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}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}body.theme-dark .scenario-hover-category-header,body.dark-mode .scenario-hover-category-header{background:#1f2937fa;border-color:var(--color-gray-600)}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)}@media (prefers-contrast: more){body.theme-dark .progress-ring-tooltip,body.dark-mode .progress-ring-tooltip{background:#fff;color:#000}}@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-color, var(--color-accent-300)),0 0 14px var(--progress-pulse-light, var(--color-accent-200));color:var(--progress-pulse-dark, var(--color-accent-500))}}.error-border,.input-error{border-color:var(--color-error)!important}.success-border,.input-success{border-color:var(--color-success)!important}.canvas-auto-size{width:100%!important;height:100%!important}.canvas-block{display:block!important}.canvas-no-touch{touch-action:none!important}.canvas-debug-active{border:2px solid rgb(0 200 0 / 50%)!important;box-shadow:0 0 10px #00c8004d!important}.canvas-success-subtle{border:1px solid rgb(0 200 0 / 30%)!important;box-shadow:0 0 5px #00c80033!important}.canvas-debug-outline{outline:2px solid #007acc!important}.canvas-dynamic-size{width:var(--canvas-width, 400px)!important;height:var(--canvas-height, 300px)!important}.scenario-modal-radar-chart,.scenario-modal-radar-chart.radar-chart-container,.scenario-modal-radar-chart.scenario-radar-chart{transition:none!important;animation:none!important}.scenario-modal-radar-chart.scenario-radar-chart,.scenario-modal-radar-chart.scenario-radar-chart.animating{transform:none!important}.scenario-modal-radar-chart canvas{transition:none!important;animation:none!important}}.canvas-no-outline{outline:none!important}.auth-modal{padding:4px 0}.auth-actions{display:flex;flex-direction:column;gap:12px;padding-top:4px}.auth-subtitle{font-size:.95rem;color:#555;text-align:center}.social-auth-buttons{display:flex;flex-direction:column;gap:8px}.social-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px}.email-auth-toggle{margin-top:4px;text-align:center}.email-auth-form{margin-top:8px}.auth-modal .email-form{display:flex;flex-direction:column;gap:10px}.auth-modal .email-form .form-group{margin:0}.auth-modal .email-form input[type=email],.auth-modal .email-form input[type=password],.auth-modal .email-form input[type=text]{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:8px;font-size:.95rem;box-sizing:border-box}.auth-modal .email-form .btn.btn-primary{width:100%;padding:10px 12px}.auth-modal .email-form .btn.btn-link{display:block;width:100%;text-align:center;margin-top:4px}.auth-privacy .privacy-note{margin-top:6px;font-size:.8rem;color:#666;text-align:center}@layer components{.auth-modal .auth-tabs{display:flex;justify-content:center;align-items:center;gap:12px;border-bottom:1px solid var(--theme-border-secondary, #e5e7eb);padding-bottom:6px;margin:6px 0 10px}.auth-modal .auth-tab{background:none;border:none;padding:8px 12px;font-size:.95rem;color:var(--theme-text-secondary, #4b5563);cursor:pointer;border-bottom:2px solid transparent;border-radius:6px 6px 0 0}.auth-modal .auth-tab:hover{color:var(--theme-text-primary, #111827)}.auth-modal .auth-tab.active{color:var(--theme-text-primary, #111827);border-bottom-color:var(--theme-border-focus, #1a73e8)}.auth-modal .auth-tab:focus-visible{outline:none;box-shadow:0 0 0 var(--focus-ring-width, 2px) var(--theme-shadow-focus, rgb(59 130 246 / 40%))}.auth-modal .email-form input[type=email]:focus,.auth-modal .email-form input[type=password]:focus,.auth-modal .email-form input[type=text]:focus{outline:none;border-color:var(--theme-border-focus, #1a73e8);box-shadow:0 0 0 var(--focus-ring-width, 2px) var(--theme-shadow-focus, rgb(59 130 246 / 40%))}}@layer components{.rte-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:6px 0 8px}.rte-btn{border:1px solid #ddd;background:#fff;border-radius:4px;padding:4px 8px;font-size:.85rem;cursor:pointer}.rte-btn:hover{background:#f6f6f6}.rte-sep{width:1px;height:20px;background:#e5e5e5;display:inline-block}.rte-label{font-size:.8rem;color:#666;margin-left:4px}.rte-select{padding:4px 8px;border:1px solid #ddd;border-radius:4px;font-size:.85rem}.fs-sm{font-size:.9em}.fs-md{font-size:1em}.fs-lg{font-size:1.15em}.blog-page{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,Helvetica Neue,sans-serif;line-height:1.6;color:#1a1a1a;background:#fafafa;margin:0}.container{max-width:1200px;margin:0 auto;padding:0 24px}.blog-header{background:#fff;border-bottom:1px solid #e5e5e5;padding:32px 0;margin-bottom:48px}.blog-header-content{display:flex;justify-content:space-between;align-items:center}.blog-title{font-size:2.25rem;font-weight:700;margin:0;color:#111;letter-spacing:-.025em}.blog-subtitle{font-size:1.125rem;color:#666;margin:8px 0 0;font-weight:400}.blog-actions{display:flex;flex-direction:column;gap:1rem;align-items:flex-end}.contribute-info{display:flex;flex-direction:column;align-items:center;gap:.5rem;text-align:center}.contribute-text{font-size:.875rem;color:#666;margin:0;font-weight:500}.admin-section{display:none}.admin-btn{background:linear-gradient(135deg,#ff6b6b,#ee5a52);color:#fff;border:none}.admin-btn:hover{background:linear-gradient(135deg,#ff5252,#e53935);border-color:transparent}.btn-minimal{background:transparent;border:1px solid #ddd;padding:8px 16px;border-radius:6px;font-size:.875rem;font-weight:500;color:#333;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:.5rem;text-decoration:none}.btn-minimal:hover{border-color:#999;background:#f8f8f8}.filter-section{background:#fff;border-bottom:1px solid #e5e5e5;padding:24px 0;margin-bottom:48px}.filter-bar{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.search-group{flex:1;min-width:200px}.filter-section .search-input{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:.875rem;background:#fafafa;transition:all .2s ease}.filter-section .search-input:focus{outline:none;border-color:#06c;background:#fff;box-shadow:0 0 0 3px #0066cc1a}.filter-groups{display:flex;gap:16px;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:4px}.filter-label{font-size:.75rem;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.05em}.filter-select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:.875rem;background:#fff;color:#333;min-width:140px;cursor:pointer}.filter-select:focus{outline:none;border-color:#06c}.sort-group{margin-left:auto}.sort-select{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:.875rem;background:#fff;color:#333;min-width:120px;cursor:pointer}.articles-section{padding-bottom:96px}.articles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:32px;margin-bottom:48px}.article-card{background:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:24px;transition:all .2s ease;cursor:pointer;animation:fadeInUp .5s ease-out}.article-card:hover{border-color:#ccc;transform:translateY(-2px);box-shadow:0 8px 24px #0000001a}.article-header{margin-bottom:16px}.article-title{font-size:1.25rem;font-weight:600;color:#111;line-height:1.4;margin:0 0 8px}.article-meta{display:flex;align-items:center;gap:12px;font-size:.875rem;color:#666;margin-bottom:12px}.article-author{font-weight:500}.article-date,.article-reading-time{color:#999}.article-excerpt{font-size:.9375rem;color:#444;line-height:1.6;margin-bottom:16px}.article-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.article-tag{display:inline-flex;align-items:center;padding:4px 8px;background:#f0f0f0;border-radius:4px;font-size:.75rem;font-weight:500;color:#555;text-decoration:none}.article-tag:hover{background:#e5e5e5}.article-tag[data-category=format]{background:#e6f3ff;color:#06c}.article-tag[data-category=topic]{background:#e8f5e8;color:green}.article-tag[data-category=depth]{background:#fff5e6;color:#c60}.article-tag[data-category=audience]{background:#f0e6ff;color:#60c}.article-tag[data-category=platform]{background:#ffe6f0;color:#c06}.article-footer{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid #f0f0f0}.article-engagement{display:flex;align-items:center;gap:16px;font-size:.875rem;color:#666}.engagement-item{display:flex;align-items:center;gap:4px}.article-actions{display:flex;gap:8px}.action-btn{background:transparent;border:none;padding:6px;border-radius:4px;cursor:pointer;color:#666;transition:all .2s ease}.action-btn:hover{background:#f0f0f0;color:#333}.load-more-section{text-align:center;padding-top:24px;border-top:1px solid #e5e5e5}.load-more{padding:12px 24px;font-size:.875rem}.featured-article{grid-column:1 / -1;background:linear-gradient(135deg,#f8f9ff,#f0f4ff);border:1px solid #d6e3ff;padding:32px;border-radius:12px;margin-bottom:16px}.featured-badge{display:inline-flex;align-items:center;gap:4px;background:#06c;color:#fff;padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:600;margin-bottom:12px}.featured-article .article-title{font-size:1.5rem;color:#06c}@media (width <= 768px){.container{padding:0 16px}.blog-header{padding:24px 0;margin-bottom:32px}.blog-header-content{flex-direction:column;align-items:flex-start;gap:16px}.blog-title{font-size:1.875rem}.blog-subtitle{font-size:1rem}.filter-bar{flex-direction:column;align-items:stretch;gap:16px}.filter-groups{flex-direction:column;gap:12px}.sort-group{margin-left:0}.articles-grid{grid-template-columns:1fr;gap:24px}.article-card{padding:20px}.featured-article{padding:24px}}@media (width <= 480px){.blog-title{font-size:1.5rem}.article-meta{flex-direction:column;align-items:flex-start;gap:4px}.article-footer{flex-direction:column;align-items:flex-start;gap:12px}}.dark-mode .blog-page{background:var(--theme-bg-primary);color:var(--theme-text-primary)}.dark-mode .blog-header{background:var(--theme-bg-secondary);border-bottom-color:var(--theme-border)}.dark-mode .blog-title{color:var(--theme-text-primary)}.dark-mode .blog-subtitle{color:var(--theme-text-secondary)}.dark-mode .btn-minimal{border-color:var(--theme-border);color:var(--theme-text-primary);background:var(--theme-bg-secondary)}.dark-mode .btn-minimal:hover{border-color:var(--theme-accent);background:var(--theme-bg-tertiary)}.dark-mode .filter-section{background:var(--theme-bg-secondary);border-bottom-color:var(--theme-border)}.dark-mode .search-input,.dark-mode .filter-select,.dark-mode .sort-select{background:var(--theme-bg-tertiary);border-color:var(--theme-border);color:var(--theme-text-primary)}.dark-mode .search-input:focus,.dark-mode .filter-select:focus,.dark-mode .sort-select:focus{border-color:var(--theme-accent);background:var(--theme-bg-secondary);box-shadow:0 0 0 3px rgb(var(--theme-accent-rgb),.1)}.dark-mode .filter-label{color:var(--theme-text-secondary)}.dark-mode .article-card{background:var(--theme-bg-secondary);border-color:var(--theme-border)}.dark-mode .article-card:hover{border-color:var(--theme-accent);box-shadow:0 8px 24px var(--theme-shadow)}.dark-mode .article-title{color:var(--theme-text-primary)}.dark-mode .article-meta,.dark-mode .article-author{color:var(--theme-text-secondary)}.dark-mode .article-date,.dark-mode .article-reading-time{color:var(--theme-text-muted)}.dark-mode .article-excerpt{color:var(--theme-text-secondary)}.dark-mode .article-tag{background:var(--theme-bg-tertiary);color:var(--theme-text-secondary);border:1px solid var(--theme-border)}.dark-mode .article-tag:hover{background:var(--theme-bg-quaternary);color:var(--theme-text-primary)}.dark-mode .article-tag[data-category=format]{background:rgb(var(--theme-info-rgb),.1);color:var(--theme-info);border-color:var(--theme-info)}.dark-mode .article-tag[data-category=topic]{background:rgb(var(--theme-success-rgb),.1);color:var(--theme-success);border-color:var(--theme-success)}.dark-mode .article-tag[data-category=depth]{background:rgb(var(--theme-warning-rgb),.1);color:var(--theme-warning);border-color:var(--theme-warning)}.dark-mode .article-tag[data-category=audience]{background:rgb(var(--theme-accent-rgb),.1);color:var(--theme-accent);border-color:var(--theme-accent)}.dark-mode .article-tag[data-category=platform]{background:rgb(var(--theme-error-rgb),.1);color:var(--theme-error);border-color:var(--theme-error)}.dark-mode .article-footer{border-top-color:var(--theme-border)}.dark-mode .article-engagement,.dark-mode .action-btn{color:var(--theme-text-secondary)}.dark-mode .action-btn:hover{background:var(--theme-bg-tertiary);color:var(--theme-text-primary)}.dark-mode .load-more-section{border-top-color:var(--theme-border)}.dark-mode .load-more{background:var(--theme-bg-secondary);color:var(--theme-text-primary);border:1px solid var(--theme-border)}.dark-mode .load-more:hover{background:var(--theme-accent);color:var(--theme-text-on-accent);border-color:var(--theme-accent)}.dark-mode .featured-article{background:linear-gradient(135deg,var(--theme-bg-info) 0%,var(--theme-bg-info-light) 100%);border-color:var(--theme-info)}.dark-mode .featured-badge{background:var(--theme-accent);color:var(--theme-text-on-accent)}.dark-mode .featured-article .article-title{color:var(--theme-accent)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.btn-minimal:focus,.filter-section .search-input:focus,.filter-select:focus,.sort-select:focus,.article-card:focus{outline:2px solid #06c;outline-offset:2px}@media print{.filter-section,.load-more-section,.article-actions{display:none}.article-card{break-inside:avoid;border:1px solid #ccc;margin-bottom:16px}}}@layer components{.reusable-modal-backdrop{position:fixed;inset:0;background:#00000073;z-index:10000;opacity:0;pointer-events:none;transition:opacity .2s}.reusable-modal-backdrop.show{opacity:1;pointer-events:auto}.reusable-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%) scale(.98);background:var(--background-secondary, #fff);color:var(--text-primary, #1f2937);border-radius:12px;box-shadow:0 8px 32px #0000002e;z-index:10001;min-width:320px;max-width:90vw;min-height:120px;max-height:90vh;display:flex;flex-direction:column;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}.reusable-modal.show{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1)}.reusable-modal-header{padding:20px 24px 12px;font-size:1.2rem;font-weight:600;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between}.reusable-modal-title{margin:0;font-size:1.1rem;font-weight:600}.reusable-modal-close{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;border-radius:4px;padding:2px 8px;transition:background .15s}.reusable-modal-close:hover,.reusable-modal-close:focus{background:#f3f4f6;color:#111827;outline:2px solid #3b82f6}.reusable-modal-body{padding:16px 24px;flex:1 1 auto;overflow-y:auto}.reusable-modal-footer{padding:12px 24px 20px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:8px}@media (width <= 600px){.reusable-modal{min-width:0;width:98vw;max-width:98vw;padding:0}.reusable-modal-header,.reusable-modal-body,.reusable-modal-footer{padding-left:10px;padding-right:10px}}body.dark-mode .reusable-modal-backdrop{background:#000000b3}body.dark-mode .reusable-modal{background:var(--theme-bg-secondary);color:var(--theme-text-primary);border:1px solid var(--theme-border);box-shadow:0 12px 40px #0000007f}body.dark-mode .reusable-modal-header{background:var(--theme-bg-primary);border-bottom:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .reusable-modal-close{color:var(--theme-text-secondary);background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .reusable-modal-close:hover{color:var(--theme-text-primary);background:var(--theme-bg-primary);border-color:var(--theme-border-hover)}body.dark-mode .reusable-modal-body{background:var(--theme-bg-secondary);color:var(--theme-text-primary)}body.dark-mode .reusable-modal-footer{background:var(--theme-bg-primary);border-top:1px solid var(--theme-border)}body.dark-mode .reusable-modal-footer .btn{background:var(--theme-bg-secondary);color:var(--theme-text-primary);border:1px solid var(--theme-border)}body.dark-mode .reusable-modal-footer .btn:hover{background:var(--theme-bg-primary);border-color:var(--theme-border-hover)}body.dark-mode .reusable-modal-footer .btn.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}body.dark-mode .reusable-modal-footer .btn.btn-primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}body.dark-mode .reusable-modal-footer .btn.btn-secondary{background:var(--theme-bg-secondary);color:var(--theme-text-secondary);border:1px solid var(--theme-border)}body.dark-mode .reusable-modal-footer .btn.btn-secondary:hover{background:var(--theme-bg-primary);color:var(--theme-text-primary);border-color:var(--theme-border-hover)}}@layer components{.blog-page .filter-section.sticky{position:sticky;top:0;z-index:50;background:var(--theme-bg-primary, var(--sa-surface, #fff));border-bottom:1px solid var(--theme-border-primary, rgb(0 0 0 / 6%))}body.dark-mode .blog-page .filter-section.sticky,body.theme-dark .blog-page .filter-section.sticky{background:var(--theme-bg-primary, #0b0b0d);border-bottom-color:var(--theme-border-subtle, rgb(255 255 255 / 8%))}.blog-page .filter-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.blog-page .filter-groups{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.blog-page .filter-popover{position:relative}.blog-page .filter-button{appearance:none;border:1px solid rgb(0 0 0 / 10%);background:none;padding:6px 10px;border-radius:8px;cursor:pointer;font:500 14px/1.2 system-ui,-apple-system,Segoe UI,Roboto,Arial}body.dark-mode .blog-page .filter-button{border-color:#ffffff24;color:#e5e7eb}.blog-page .filter-popover .popover{position:absolute;left:0;top:calc(100% + 6px);min-width:240px;background:var(--sa-surface, #fff);border:1px solid rgb(0 0 0 / 10%);border-radius:10px;box-shadow:0 10px 30px #0000001f;padding:8px 10px;display:none;max-height:320px;overflow:auto}body.dark-mode .blog-page .filter-popover .popover{background:#111217;border-color:#ffffff1f}.blog-page .filter-popover .popover.show{display:block}.blog-page .filter-popover .popover-content label{display:flex;align-items:center;gap:8px;padding:6px 4px;font-size:14px}.blog-page .filter-popover .popover-actions{display:flex;justify-content:space-between;gap:8px;padding-top:6px}.blog-page .chips-row{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0 4px}.blog-page .chip{display:inline-flex;align-items:center;gap:6px;background:#0000000f;border-radius:9999px;padding:6px 10px;font-size:12px}body.dark-mode .blog-page .chip{background:#ffffff14;color:#e5e7eb}.blog-page .chip button{border:0;background:transparent;cursor:pointer;font-size:14px;line-height:1}#filters-drawer .modal-container{width:360px;max-width:90vw;height:100%;margin-left:auto;border-radius:0;transform:translate(100%);transition:transform .2s ease}#filters-drawer.show .modal-container{transform:translate(0)}#filters-drawer .drawer-body{padding:16px}#filters-drawer .drawer-section{margin-bottom:14px}#filters-drawer .drawer-actions{display:flex;gap:8px;justify-content:flex-end;padding:8px 16px 16px}.blog-page .admin-save-feedback{display:none;flex-direction:column;gap:6px;margin:12px 0 6px;padding:10px 12px;border-radius:10px;border:1px solid transparent;font-size:14px;line-height:1.4;transition:background .2s ease,border-color .2s ease}.blog-page .admin-save-feedback:not([hidden]){display:flex}.blog-page .admin-save-feedback--info{background:#3b82f614;border-color:#3b82f633;color:var(--sa-text, #0b1120)}.blog-page .admin-save-feedback--success{background:#10b9811f;border-color:#10b98159}.blog-page .admin-save-feedback--error{background:#ef44441f;border-color:#ef44444d;color:var(--sa-text, #0b1120)}body.dark-mode .blog-page .admin-save-feedback--info{background:#60a5fa26;border-color:#60a5fa40;color:#e5e7eb}body.dark-mode .blog-page .admin-save-feedback--success{background:#22c55e2e;border-color:#22c55e52;color:#e8fff5}.taxonomy-fieldset{margin-top:var(--spacing-6, 24px);border:1px solid var(--theme-border-subtle, rgb(0 0 0 / 12%));border-radius:var(--radius-lg, 16px);padding:var(--spacing-4, 16px);background:var(--theme-bg-secondary, rgb(255 255 255 / 65%))}body.dark-mode .taxonomy-fieldset,body.theme-dark .taxonomy-fieldset{background:var(--theme-bg-secondary, rgb(17 17 23 / 65%));border-color:var(--theme-border-primary, rgb(255 255 255 / 12%))}.taxonomy-fieldset legend{font:600 15px/1.4 system-ui,-apple-system,Segoe UI,Roboto,Arial;padding:0 var(--spacing-2, 8px)}.taxonomy-help{margin:var(--spacing-2, 8px) 0 var(--spacing-4, 16px);font-size:13px;color:var(--theme-text-subtle, rgb(31 41 55 / 70%))}body.dark-mode .taxonomy-help,body.theme-dark .taxonomy-help{color:var(--theme-text-muted, rgb(209 213 219 / 70%))}.taxonomy-group{margin-bottom:var(--spacing-4, 16px)}.taxonomy-label{display:block;font-weight:600;font-size:13px;margin-bottom:var(--spacing-2, 8px);color:var(--theme-text-secondary, rgb(30 41 59 / 85%))}body.dark-mode .taxonomy-label,body.theme-dark .taxonomy-label{color:var(--theme-text-secondary, rgb(226 232 240 / 80%))}.taxonomy-options{display:flex;flex-wrap:wrap;gap:var(--spacing-2, 8px)}.taxonomy-option{display:inline-flex;align-items:center;gap:var(--spacing-1, 6px);padding:var(--spacing-1, 6px) var(--spacing-2, 10px);border-radius:9999px;border:1px solid var(--theme-border-subtle, rgb(0 0 0 / 8%));background:var(--theme-bg-primary, #fff);font-size:13px;cursor:pointer;transition:border-color .2s ease,background .2s ease}.taxonomy-option:hover,.taxonomy-option:focus-within{border-color:var(--color-primary, #6366f1);background:color-mix(in srgb,var(--color-primary, #6366f1) 12%,#fff)}.taxonomy-options--pill .taxonomy-option{min-width:0}body.dark-mode .taxonomy-option,body.theme-dark .taxonomy-option{background:var(--theme-bg-primary, #10131a);border-color:var(--theme-border-subtle, rgb(255 255 255 / 12%));color:var(--theme-text-primary, #e5e7eb)}body.dark-mode .taxonomy-option:hover,body.dark-mode .taxonomy-option:focus-within,body.theme-dark .taxonomy-option:hover,body.theme-dark .taxonomy-option:focus-within{background:color-mix(in srgb,var(--color-primary, #6366f1) 22%,var(--theme-bg-primary, #0d0f16));border-color:var(--color-primary, #6366f1)}.taxonomy-option input{accent-color:var(--theme-accent, var(--color-primary, #6366f1))}.taxonomy-options input{margin:0}@media (width <= 640px){.taxonomy-options{gap:var(--spacing-1, 6px)}.taxonomy-option{font-size:12px;padding:var(--spacing-1, 6px) var(--spacing-2, 10px)}}body.dark-mode .blog-page .admin-save-feedback--error{background:#f8717138;border-color:#f8717152;color:#fee2e2}.blog-page .admin-save-feedback__message{font-weight:600}.blog-page .admin-save-feedback progress{width:100%;height:6px;border-radius:9999px;overflow:hidden;accent-color:var(--sa-primary, #2563eb);background-color:#0f172a14}body.dark-mode .blog-page .admin-save-feedback progress{background-color:#94a3b833;accent-color:#60a5fa}}@layer components{:root{--modal-backdrop: rgb(0 0 0 / 50%);--modal-background: var(--theme-bg-primary);--modal-border: var(--theme-border-primary);--modal-shadow: var(--shadow-xl);--nav-background: var(--theme-bg-primary);--nav-border: var(--theme-border-primary);--nav-item-hover: var(--nav-hover-surface, var(--hover-surface));--nav-item-selected: var(--accent-primary);--nav-item-focus: var(--theme-border-focus);--form-background: var(--theme-bg-primary);--form-border: var(--theme-border-primary);--form-border-focus: var(--theme-border-focus);--form-border-error: var(--theme-border-error);--form-disabled-bg: var(--theme-bg-secondary);--tooltip-background: rgb(0 0 0 / 90%);--tooltip-text: var(--theme-text-on-accent);--modal-border-radius: var(--radius-lg);--button-border-radius: var(--radius-base);--input-border-radius: var(--radius-base);--transition-modal: .3s ease-out;--z-modal-backdrop: 999;--z-modal: 1000;--z-tooltip: 1500;--touch-target-min: var( --touch-target-min, 44px );--focus-ring-width: 2px;--focus-ring-offset: 2px;--component-padding: var(--container-padding, 1rem);--component-font-scale: var(--font-scale, 1)}.transition-standard{transition:all var(--transition-fast, .15s) ease-in-out}.transition-modal{transition:opacity var(--transition-modal, .3s) ease-out}.transition-tooltip{transition:opacity var(--transition-fast, .15s) ease-in-out}.transition-nav{transition:all var(--transition-normal, .2s) ease-in-out}.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--theme-bg-overlay);z-index:var(--z-modal);opacity:0;pointer-events:none;transition:opacity var(--duration-300) var(--ease-out);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;overflow-y:auto;padding:var(--space-4);contain:strict}.modal-backdrop.visible{opacity:1;pointer-events:auto}.modal-dialog{background:var(--modal-background);border-radius:var(--modal-border-radius);box-shadow:var(--modal-shadow);z-index:var(--z-modal);min-width:300px;max-width:90vw;max-height:95vh;position:relative;display:flex;flex-direction:column;overflow:visible;animation:var(--animation-modal-in, modalSlideIn var(--transition-modal));border:1px solid var(--modal-border);contain:layout style}.modal-dialog:focus{outline:none}.modal-header{padding:calc(var(--component-padding) * var(--component-font-scale));border-bottom:1px solid var(--modal-border);display:flex;justify-content:space-between;align-items:center;background:var(--modal-background);flex-shrink:0;border-top-left-radius:var(--modal-border-radius);border-top-right-radius:var(--modal-border-radius)}.modal-title{margin:0;font-size:calc(var(--font-size-lg, 18px) * var(--component-font-scale));font-weight:var(--font-weight-semibold, 600);color:var(--color-gray-900, #333);line-height:var(--line-height-tight, 1.25)}.modal-close{background:none;border:none;font-size:calc(var(--font-size-2xl, 24px) * var(--component-font-scale));cursor:pointer;color:var(--color-gray-600, #666);width:var(--touch-target-min);height:var(--touch-target-min);display:flex;align-items:center;justify-content:center;border-radius:var(--button-border-radius);transition:all var(--transition-fast);position:relative}.modal-close:hover,.modal-close:focus{background-color:var(--nav-item-hover);color:var(--color-gray-800, #333)}.modal-close:focus-visible{outline:var(--focus-ring-width) solid var(--form-border-focus);outline-offset:var(--focus-ring-offset)}.modal-body{padding:calc(var(--component-padding) * var(--component-font-scale));background:var(--modal-background);flex:1;overflow:hidden auto;min-height:0;max-height:calc(90vh - calc(var(--component-padding) * 7 * var(--component-font-scale)))}.modal-backdrop:not(.pre-launch-modal) .modal-body{max-height:none}.modal-footer{padding:calc(var(--spacing-3, 12px) * var(--component-font-scale)) calc(var(--spacing-4, 16px) * var(--component-font-scale));border-top:1px solid var(--modal-border);display:flex;align-items:center;justify-content:flex-end;gap:calc(var(--spacing-2, 8px) * var(--component-font-scale));background:var(--modal-background);flex-shrink:0;position:relative;z-index:10;flex-wrap:wrap;overflow:auto visible;min-height:var(--touch-target-min, 44px);scroll-behavior:smooth;scrollbar-width:thin;border-bottom-left-radius:var(--modal-border-radius);border-bottom-right-radius:var(--modal-border-radius);transition:all var(--transition-normal, .2s) ease-in-out}.scroll-indicator{position:absolute;top:50%;transform:translateY(-50%);width:20px;height:20px;background:var(--modal-background);border:1px solid var(--modal-border);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--text-color);cursor:pointer;transition:opacity var(--transition-fast);z-index:20;pointer-events:none;box-shadow:0 2px 4px #0000001a}.scroll-indicator-left{left:4px}.scroll-indicator-right{right:4px}.scroll-indicator:hover{background:var(--color-background-hover, #f3f4f6)}.modal-footer.has-overflow-x{padding-left:30px;padding-right:30px}.modal-footer.needs-stacking{flex-direction:column;align-items:stretch}.modal-footer.needs-stacking .modal-button{width:100%;justify-content:center}.modal-footer.mobile-layout{flex-direction:column;align-items:stretch;gap:var(--spacing-2, 8px)}.modal-footer.mobile-layout .modal-button{width:100%;justify-content:center}.modal-footer.small-mobile-layout{padding:var(--spacing-2, 8px)}.modal-footer>.modal-button:not(:last-child){margin-right:0}.modal-footer.many-buttons{justify-content:center;flex-wrap:wrap}.modal-footer.many-buttons .modal-button{min-width:60px;padding:var(--spacing-2, 8px) var(--spacing-3, 12px);font-size:var(--font-size-xs, 12px)}.navigation-menu{background:var(--nav-background);border:1px solid var(--nav-border);border-radius:var(--button-border-radius);box-shadow:var(--shadow-md, 0 2px 8px rgb(0 0 0 / 10%));contain:layout style;isolation:isolate}.navigation-menu.vertical{min-width:200px}.navigation-menu.horizontal{display:flex}.navigation-menu.horizontal .nav-item{border-bottom:none;border-right:1px solid var(--color-gray-100, #f0f0f0)}.navigation-menu.horizontal .nav-item:last-child{border-right:none}.navigation-menu .nav-item{padding:calc(var(--spacing-3, 12px) * var(--component-font-scale)) calc(var(--spacing-4, 16px) * var(--component-font-scale));cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:space-between;min-height:var(--touch-target-min);position:relative;color:var(--color-gray-700, #555);text-decoration:none;font-weight:var(--font-weight-medium, 500);font-size:calc(1rem * var(--component-font-scale))}.navigation-menu .nav-item:last-child{border-bottom:none}.navigation-menu .nav-item:hover:not(.disabled){background-color:var(--nav-item-hover);color:var(--color-gray-900, #333);transform:translate(2px)}.navigation-menu .nav-item.selected{background-color:var(--nav-item-selected);color:var(--color-white, white);font-weight:var(--font-weight-semibold, 600)}.navigation-menu .nav-item.selected:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--color-white, white)}.navigation-menu .nav-item:focus-visible{outline:var(--focus-ring-width) solid var(--nav-item-focus);outline-offset:-2px;z-index:1}.navigation-menu .nav-item.disabled{opacity:.6;cursor:not-allowed;color:var(--color-gray-400, #999)}.navigation-menu .nav-item-icon{margin-right:calc(var(--spacing-2, 10px) * var(--component-font-scale));opacity:.7;font-size:calc(var(--font-size-base, 16px) * var(--component-font-scale));width:calc(20px * var(--component-font-scale));height:calc(20px * var(--component-font-scale));display:flex;align-items:center;justify-content:center}.navigation-menu .nav-item.selected .nav-item-icon{opacity:1}.navigation-menu .nav-item-badge{background:var(--color-error, #f44336);color:var(--color-white, white);border-radius:var(--radius-full, 50px);padding:2px 6px;font-size:var(--font-size-xs, 10px);font-weight:var(--font-weight-bold, 700);min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;margin-left:auto}.navigation-menu .nav-item.selected .nav-item-badge{background:#fff3}.navigation-menu:focus-within{box-shadow:0 0 0 2px var(--nav-item-focus)}.navigation-menu .nav-item[aria-current=page],.navigation-menu .nav-item[aria-selected=true]{background-color:var(--nav-item-selected);color:var(--color-white, white)}.navigation-menu .nav-item[aria-disabled=true]{opacity:.6;cursor:not-allowed;pointer-events:none}.chart-container{background:var(--modal-background);border:1px solid var(--modal-border);border-radius:var(--modal-border-radius);padding:calc(var(--component-padding) * var(--component-font-scale));box-shadow:var(--shadow-sm, 0 2px 4px rgb(0 0 0 / 10%));position:relative;contain:layout style}.chart-container.loading{pointer-events:none}.chart-container.loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:32px;height:32px;border:3px solid var(--color-gray-300, #ccc);border-top:3px solid var(--nav-item-selected);border-radius:50%;animation:componentSpin 1s linear infinite;z-index:10}.chart-title{font-size:calc(var(--font-size-lg, 16px) * var(--component-font-scale));font-weight:var(--font-weight-semibold, 600);margin-bottom:calc(var(--component-padding) * var(--component-font-scale));text-align:center;color:var(--color-gray-900, #333);line-height:var(--line-height-tight, 1.25)}.chart-legend{display:flex;justify-content:center;gap:var(--spacing-5, 20px);margin-top:var(--spacing-4, 15px);font-size:var(--font-size-xs, 12px);flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:var(--spacing-1, 5px);color:var(--color-gray-700, #555);font-weight:var(--font-weight-medium, 500)}.legend-color{width:12px;height:12px;border-radius:var(--radius-sm, 2px);border:1px solid var(--modal-border);flex-shrink:0}.chart-no-data{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;color:var(--color-gray-500, #999);font-style:italic}.chart-no-data:before{content:"📊";font-size:var(--font-size-4xl, 48px);margin-bottom:var(--spacing-2, 8px)}.form-field{margin-bottom:calc(var(--component-padding) * var(--component-font-scale));position:relative}.form-label{display:block;margin-bottom:calc(var(--spacing-1, 5px) * var(--component-font-scale));font-size:calc(var(--font-size-sm, 14px) * var(--component-font-scale));font-weight:var(--font-weight-medium, 500);color:var(--color-gray-900, #333);line-height:var(--line-height-normal, 1.5)}.form-label.required:after{content:" *";color:var(--form-border-error);font-weight:var(--font-weight-bold, 700)}.form-input,.form-select,.form-textarea{width:100%;padding:calc(var(--spacing-2, 10px) * var(--component-font-scale)) calc(var(--spacing-3, 12px) * var(--component-font-scale));border:1px solid var(--form-border);border-radius:var(--input-border-radius);font-size:calc(var(--font-size-sm, 14px) * var(--component-font-scale));font-family:inherit;line-height:var(--line-height-normal, 1.5);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast);background:var(--form-background);color:var(--color-gray-900, #333);min-height:var(--touch-target-min)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--form-border-focus);box-shadow:0 0 0 3px #2196f31a}.form-input:focus-visible,.form-select:focus-visible,.form-textarea:focus-visible{outline:var(--focus-ring-width) solid var(--form-border-focus);outline-offset:var(--focus-ring-offset)}.form-input.error,.form-select.error,.form-textarea.error{border-color:var(--form-border-error);box-shadow:0 0 0 3px #f443361a}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background-color:var(--form-disabled-bg);color:var(--color-gray-500, #999);cursor:not-allowed}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-gray-500, #999);opacity:1}.form-error{margin-top:var(--spacing-1, 5px);font-size:var(--font-size-xs, 12px);color:var(--form-border-error);display:flex;align-items:center;gap:var(--spacing-1, 4px)}.form-error:before{content:"⚠";font-size:var(--font-size-sm, 14px)}.form-success{margin-top:var(--spacing-1, 5px);font-size:var(--font-size-xs, 12px);color:var(--color-success, #4caf50);display:flex;align-items:center;gap:var(--spacing-1, 4px)}.form-success:before{content:"✓";font-size:var(--font-size-sm, 14px)}.form-textarea{min-height:80px;resize:vertical;font-family:inherit}.form-select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 8px center;background-repeat:no-repeat;background-size:16px;padding-right:var(--spacing-8, 32px);appearance:none;cursor:pointer}.form-select:disabled{cursor:not-allowed}.form-group{display:flex;gap:var(--spacing-3, 12px);align-items:flex-end}.form-group .form-field{flex:1;margin-bottom:0}.form-input-wrapper{position:relative;display:flex;align-items:center}.form-input-icon{position:absolute;left:var(--spacing-3, 12px);color:var(--color-gray-500, #999);z-index:1;pointer-events:none}.form-input-wrapper .form-input{padding-left:var(--spacing-8, 40px)}.form-input-wrapper.icon-right .form-input-icon{left:auto;right:var(--spacing-3, 12px)}.form-input-wrapper.icon-right .form-input{padding-left:var(--spacing-3, 12px);padding-right:var(--spacing-8, 40px)}.form-input.loading,.form-select.loading{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24'%3e%3ccircle cx='12' cy='12' r='10' stroke='%23ccc' stroke-width='4'/%3e%3cpath fill='%232196f3' d='m4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z'/%3e%3c/svg%3e");background-position:right 8px center;background-repeat:no-repeat;background-size:16px;padding-right:var(--spacing-8, 32px)}.tooltip{position:absolute;background:var(--tooltip-background);color:var(--tooltip-text);padding:calc(var(--spacing-2, 8px) * var(--component-font-scale)) calc(var(--spacing-3, 12px) * var(--component-font-scale));border-radius:var(--button-border-radius);font-size:calc(var(--font-size-xs, 12px) * var(--component-font-scale));z-index:var(--z-tooltip);pointer-events:none;opacity:0;transition:opacity var(--transition-fast);max-width:calc(250px * var(--component-font-scale));white-space:normal;line-height:var(--line-height-normal, 1.5);box-shadow:var(--shadow-md, 0 2px 8px rgb(0 0 0 / 15%));border:1px solid var(--modal-border)}.tooltip.visible{opacity:1}.tooltip.large{max-width:300px;padding:var(--spacing-3, 12px) var(--spacing-4, 16px);font-size:var(--font-size-sm, 14px)}.tooltip:before{content:"";position:absolute;border:6px solid transparent}.tooltip.top,.tooltip.bottom{margin:6px 0}.tooltip.left,.tooltip.right{margin:0 6px}.tooltip.top:before,.tooltip.bottom:before{left:50%;transform:translate(-50%)}.tooltip.left:before,.tooltip.right:before{top:50%;transform:translateY(-50%)}.tooltip.top:before{top:100%;border-top-color:var(--tooltip-background)}.tooltip.bottom:before{bottom:100%;border-bottom-color:var(--tooltip-background)}.tooltip.left:before{left:100%;border-left-color:var(--tooltip-background)}.tooltip.right:before{right:100%;border-right-color:var(--tooltip-background)}.tooltip.error{background:var(--form-border-error);color:var(--color-white, white)}.tooltip.error:before{border-color:var(--form-border-error) var(--form-border-error) var(--form-border-error) var(--form-border-error)}.tooltip.success{background:var(--color-success, #4caf50);color:var(--color-white, white)}.tooltip.warning{background:var(--color-warning, #ff9800);color:var(--color-white, white)}.component-loading{position:relative;pointer-events:none;opacity:.7}.component-loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:24px;height:24px;border:2px solid var(--color-gray-300, #ccc);border-top:2px solid var(--nav-item-selected);border-radius:50%;animation:componentSpin .8s linear infinite;z-index:10}.component-error{border-color:var(--form-border-error)!important;background-color:#f443360d}.component-error:before{content:"⚠";position:absolute;top:var(--spacing-1, 4px);right:var(--spacing-1, 4px);color:var(--form-border-error);font-weight:700;z-index:10}.component-success{border-color:var(--color-success, #4caf50)!important;background-color:#4caf500d}.component-success:before{content:"✓";position:absolute;top:var(--spacing-1, 4px);right:var(--spacing-1, 4px);color:var(--color-success, #4caf50);font-weight:700;z-index:10}.advanced-ui-hidden{display:none!important}.advanced-ui-visible{display:block!important}.advanced-ui-flex{display:flex!important}.advanced-ui-inline-flex{display:inline-flex!important}.advanced-ui-center{display:flex;align-items:center;justify-content:center}.advanced-ui-disabled{opacity:.6;pointer-events:none;cursor:not-allowed}.advanced-ui-clickable{cursor:pointer}.advanced-ui-no-select{user-select:none}.advanced-ui-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.advanced-ui-border{border:1px solid var(--modal-border)}.advanced-ui-border-rounded{border-radius:var(--button-border-radius)}.advanced-ui-shadow{box-shadow:var(--shadow-md, 0 2px 8px rgb(0 0 0 / 10%))}.advanced-ui-transition{transition:all var(--transition-fast)}.advanced-ui-m-0{margin:0}.advanced-ui-m-1{margin:var(--spacing-1, 4px)}.advanced-ui-m-2{margin:var(--spacing-2, 8px)}.advanced-ui-m-3{margin:var(--spacing-3, 12px)}.advanced-ui-m-4{margin:var(--spacing-4, 16px)}.advanced-ui-p-0{padding:0}.advanced-ui-p-1{padding:var(--spacing-1, 4px)}.advanced-ui-p-2{padding:var(--spacing-2, 8px)}.advanced-ui-p-3{padding:var(--spacing-3, 12px)}.advanced-ui-p-4{padding:var(--spacing-4, 16px)}.advanced-ui-text-left{text-align:left}.advanced-ui-text-center{text-align:center}.advanced-ui-text-right{text-align:right}.advanced-ui-font-bold{font-weight:var(--font-weight-bold, 700)}.advanced-ui-font-medium{font-weight:var(--font-weight-medium, 500)}.advanced-ui-font-normal{font-weight:var(--font-weight-normal, 400)}.advanced-ui-text-primary{color:var(--nav-item-selected)}.advanced-ui-text-error{color:var(--form-border-error)}.advanced-ui-text-success{color:var(--color-success, #4caf50)}.advanced-ui-text-muted{color:var(--color-gray-500, #999)}.advanced-ui-bg-primary{background-color:var(--nav-item-selected)}.advanced-ui-bg-error{background-color:var(--form-border-error)}.advanced-ui-bg-success{background-color:var(--color-success, #4caf50)}.advanced-ui-bg-muted{background-color:var(--color-gray-100, #f5f5f5)}.modal-dialog,.navigation-menu,.chart-container,.tooltip{contain:layout style}.navigation-menu .nav-item,.modal-button,.form-input,.form-select,.form-textarea{will-change:auto}.navigation-menu .nav-item:hover,.modal-button:hover{will-change:background-color,transform}.modal-title,.chart-title,.form-label{text-rendering:optimizelegibility;font-feature-settings:"kern" 1}@media (prefers-reduced-motion: reduce){.modal-dialog{animation:none;opacity:1;transform:translate(-50%,-50%)}.navigation-menu .nav-item:hover,.modal-button:hover{transform:none}}@media (prefers-contrast: high){:root{--modal-backdrop: rgb(0 0 0 / 50%);--modal-background: var(--theme-bg-primary);--modal-border: var(--theme-border-primary);--modal-shadow: var(--shadow-xl);--nav-background: var(--theme-bg-primary);--nav-border: var(--theme-border-primary);--nav-item-hover: var(--nav-hover-surface, var(--hover-surface));--nav-item-selected: var(--accent-primary);--nav-item-focus: var(--theme-border-focus);--form-background: var(--theme-bg-primary);--form-border: var(--theme-border-primary);--form-border-focus: var(--theme-border-focus);--form-border-error: var(--theme-border-error);--form-disabled-bg: var(--theme-bg-secondary);--tooltip-background: rgb(0 0 0 / 90%);--tooltip-text: var(--theme-text-on-accent);--modal-border-radius: var(--radius-lg);--button-border-radius: var(--radius-base);--input-border-radius: var(--radius-base);--transition-modal: .3s ease-out;--z-modal-backdrop: 999;--z-modal: 1000;--z-tooltip: 1500;--touch-target-min: var( --touch-target-min, 44px );--focus-ring-width: 2px;--focus-ring-offset: 2px;--component-padding: var(--container-padding, 1rem);--component-font-scale: var(--font-scale, 1)}.modal-dialog,.navigation-menu,.chart-container,.form-input,.form-select,.form-textarea{border-width:2px;border-style:solid}.navigation-menu .nav-item.selected{background:#000;color:#fff}.modal-button.primary{background:#000;color:#fff;border:2px solid #000}.modal-button.secondary{background:#fff;color:#000;border:2px solid #000}}.modal-dialog[tabindex="-1"]:focus{outline:none}.modal-skip-link{position:absolute;top:-40px;left:6px;background:var(--nav-item-selected);color:var(--color-white, white);padding:var(--spacing-2, 8px) var(--spacing-3, 12px);border-radius:var(--button-border-radius);text-decoration:none;font-weight:var(--font-weight-medium, 500);z-index:calc(var(--z-modal) + 1);transition:top var(--transition-fast)}.modal-skip-link:focus{top:6px}.sr-only-advanced{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}.live-region{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}[aria-busy=true]{cursor:wait;pointer-events:none}[aria-invalid=true]{border-color:var(--form-border-error)!important}.modal-dialog .focus-trap-start,.modal-dialog .focus-trap-end{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}@media (hover: none) and (pointer: coarse){.navigation-menu .nav-item,.modal-button,.modal-close,.form-input,.form-select,.form-textarea{min-height:var(--touch-target-min)}.navigation-menu .nav-item,.modal-button,.modal-close{min-width:var(--touch-target-min)}.navigation-menu .nav-item{padding:calc(var(--spacing-4, 16px) * var(--component-font-scale))}.modal-button{padding:calc(var(--spacing-3, 12px) * var(--component-font-scale)) calc(var(--spacing-5, 20px) * var(--component-font-scale));font-size:calc(var(--font-size-base, 16px) * var(--component-font-scale))}.form-input,.form-select,.form-textarea{font-size:calc(var(--font-size-base, 16px) * var(--component-font-scale))}.navigation-menu .nav-item:hover{transform:none;background-color:var(--nav-item-hover)}.tooltip{display:none}}[dir=rtl] .nav-item-icon{margin-right:0;margin-left:var(--spacing-2, 10px)}[dir=rtl] .navigation-menu .nav-item.selected:before{left:auto;right:0}[dir=rtl] .navigation-menu .nav-item:hover{transform:translate(-2px)}[dir=rtl] .form-input-icon{left:auto;right:var(--spacing-3, 12px)}[dir=rtl] .form-input-wrapper .form-input{padding-left:var(--spacing-3, 12px);padding-right:var(--spacing-8, 40px)}[dir=rtl] .form-input-wrapper.icon-right .form-input-icon{right:auto;left:var(--spacing-3, 12px)}[dir=rtl] .form-input-wrapper.icon-right .form-input{padding-left:var(--spacing-8, 40px);padding-right:var(--spacing-3, 12px)}[dir=rtl] .form-select{background-position:left 8px center;padding-right:var(--spacing-3, 12px);padding-left:var(--spacing-8, 32px)}[dir=rtl] .modal-footer{justify-content:flex-start}[dir=rtl] .tooltip.left:before{left:auto;right:100%;border-left-color:transparent;border-right-color:var(--tooltip-background)}[dir=rtl] .tooltip.right:before{right:auto;left:100%;border-right-color:transparent;border-left-color:var(--tooltip-background)}@media print{.modal-backdrop,.tooltip{display:none!important}.modal-dialog{position:static!important;transform:none!important;box-shadow:none!important;border:2px solid #000!important;page-break-inside:avoid}.navigation-menu{border:1px solid #000!important;box-shadow:none!important}.navigation-menu .nav-item.selected{background:#000!important;color:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.form-input,.form-select,.form-textarea{border:1px solid #000!important;background:#fff!important;color:#000!important}.chart-container{border:1px solid #000!important;box-shadow:none!important}}.modal-footer::-webkit-scrollbar{height:4px}.modal-footer::-webkit-scrollbar-track{background:var(--color-background-secondary, #f8fafc)}.modal-footer::-webkit-scrollbar-thumb{background:var(--color-border-light, #e5e7eb);border-radius:2px}.modal-footer::-webkit-scrollbar-thumb:hover{background:var(--color-border, #d1d5db)}.modal-footer.has-overflow:before{content:"";position:absolute;right:0;top:0;bottom:0;width:20px;background:linear-gradient(to left,var(--modal-background),transparent);pointer-events:none;z-index:1}@media only screen and (width <= 767px){.modal-backdrop{padding:calc(var(--component-padding) * .5);align-items:flex-start;padding-top:var(--component-padding)}.modal-dialog{max-height:calc(100vh - calc(var(--component-padding) * 2));margin-top:auto;margin-bottom:auto}.modal-footer{padding:calc(var(--spacing-2, 8px) * var(--component-font-scale)) calc(var(--spacing-3, 12px) * var(--component-font-scale));gap:calc(var(--spacing-2, 8px) * var(--component-font-scale));flex-direction:column;align-items:stretch}.modal-footer .modal-button{width:100%;justify-content:center;margin:0}.modal-footer .modal-button+.modal-button{margin-top:calc(var(--spacing-2, 8px) * var(--component-font-scale))}}@media only screen and (width <= 479px){.modal-backdrop{padding:calc(var(--component-padding) * .25);padding-top:calc(var(--component-padding) * .5)}.modal-dialog{max-height:calc(100vh - var(--component-padding))}.modal-footer{padding:calc(var(--spacing-1, 4px) * var(--component-font-scale)) calc(var(--spacing-2, 8px) * var(--component-font-scale))}}@media only screen and (width >= 768px) and (width <= 1279px){.modal-dialog{min-width:calc(400px * var(--component-font-scale));max-width:85vw}.navigation-menu{min-width:calc(250px * var(--component-font-scale))}.navigation-menu .nav-item{padding:calc(var(--spacing-4, 16px) * var(--component-font-scale))}.chart-container{padding:calc(var(--component-padding) * 1.25 * var(--component-font-scale))}.form-input,.form-select,.form-textarea{font-size:calc(var(--font-size-base, 16px) * var(--component-font-scale))}}@media only screen and (width >= 1280px){.modal-dialog{min-width:calc(500px * var(--component-font-scale));max-width:min(800px,80vw)}.navigation-menu{min-width:calc(300px * var(--component-font-scale))}.navigation-menu .nav-item{padding:calc(var(--spacing-4, 16px) * var(--component-font-scale)) calc(var(--spacing-5, 20px) * var(--component-font-scale))}.chart-container{padding:calc(var(--component-padding) * 1.5 * var(--component-font-scale))}.tooltip.large{max-width:calc(400px * var(--component-font-scale));padding:calc(var(--spacing-4, 16px) * var(--component-font-scale));font-size:calc(var(--font-size-base, 16px) * var(--component-font-scale))}}.modal-footer .modal-button:focus-visible{outline:var(--focus-ring-width, 2px) solid var(--form-border-focus);outline-offset:var(--focus-ring-offset, 2px);z-index:21}.modal-footer .modal-button{transition:all var(--transition-fast, .15s) ease-in-out}.modal-dialog{margin:0;max-height:calc(100vh - calc(var(--component-padding) * 4))}.modal-header:first-child{border-top-left-radius:var(--modal-border-radius);border-top-right-radius:var(--modal-border-radius)}.modal-footer:last-child{border-bottom-left-radius:var(--modal-border-radius);border-bottom-right-radius:var(--modal-border-radius)}.modal-body:first-child{border-top-left-radius:var(--modal-border-radius);border-top-right-radius:var(--modal-border-radius)}.modal-body:last-child{border-bottom-left-radius:var(--modal-border-radius);border-bottom-right-radius:var(--modal-border-radius)}.modal-header,.modal-body,.modal-footer{isolation:isolate}.modal-dialog:has(.modal-body:empty),.modal-dialog:has(.modal-body:not(:has(*))){min-height:200px;justify-content:center}.modal-dialog:has(.modal-footer){min-height:150px}body.dark-mode{--modal-backdrop: rgb(0 0 0 / 80%);--modal-background: var(--theme-bg-secondary);--modal-border: var(--theme-border-primary);--modal-shadow: 0 20px 40px rgb(0 0 0 / 50%);--nav-background: var(--theme-bg-secondary);--nav-border: var(--theme-border-primary);--nav-item-hover: var(--theme-bg-primary);--nav-item-selected: var(--color-primary);--nav-item-focus: var(--color-primary);--form-background: var(--theme-bg-primary);--form-border: var(--theme-border-primary);--form-border-focus: var(--color-primary);--form-border-error: var(--color-error);--form-disabled-bg: var(--theme-bg-secondary);--tooltip-background: var(--theme-bg-primary);--tooltip-text: var(--theme-text-primary)}body.dark-mode .modal-dialog{background:var(--theme-bg-secondary);border:1px solid var(--theme-border-primary);color:var(--theme-text-primary)}body.dark-mode .modal-header{background:var(--theme-bg-primary);border-bottom:1px solid var(--theme-border-primary);color:var(--theme-text-primary)}body.dark-mode .modal-title{color:var(--theme-text-primary)}body.dark-mode .modal-close{color:var(--theme-text-secondary);background:var(--theme-bg-secondary);border:1px solid var(--theme-border-primary)}body.dark-mode .modal-close:hover{color:var(--theme-text-primary);background:var(--theme-bg-primary);border-color:var(--theme-border-interactive)}body.dark-mode .modal-body{background:var(--theme-bg-secondary);color:var(--theme-text-primary)}body.dark-mode .modal-footer{background:var(--theme-bg-primary);border-top:1px solid var(--theme-border-primary)}body.dark-mode .navigation-menu{background:var(--theme-bg-secondary);border:1px solid var(--theme-border-primary)}body.dark-mode .navigation-menu .nav-item{color:var(--theme-text-primary)}body.dark-mode .navigation-menu .nav-item:hover:not(.disabled){background-color:var(--nav-item-hover);color:var(--theme-text-primary)}body.dark-mode .navigation-menu .nav-item.selected{background:#4a9eff1a;color:var(--color-primary);border-left-color:var(--color-primary)}body.dark-mode .navigation-menu .nav-item.disabled{color:var(--theme-text-muted);background:var(--theme-bg-secondary)}body.dark-mode .navigation-menu .nav-item-badge{background:var(--color-primary);color:#fff}body.dark-mode .chart-container{background:var(--theme-bg-primary);border:1px solid var(--theme-border-primary)}body.dark-mode .chart-title{color:var(--theme-text-primary)}body.dark-mode .chart-legend{background:var(--theme-bg-secondary);border:1px solid var(--theme-border-primary)}body.dark-mode .legend-item{color:var(--theme-text-primary)}body.dark-mode .chart-no-data{color:var(--theme-text-secondary)}body.dark-mode .form-field,body.dark-mode .form-label{color:var(--theme-text-primary)}body.dark-mode .form-input,body.dark-mode .form-select,body.dark-mode .form-textarea{background:var(--theme-bg-primary);color:var(--theme-text-primary);border:1px solid var(--theme-border-primary)}body.dark-mode .form-input:focus,body.dark-mode .form-select:focus,body.dark-mode .form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #4a9eff33}body.dark-mode .form-input.error,body.dark-mode .form-select.error,body.dark-mode .form-textarea.error{border-color:var(--color-error)}body.dark-mode .form-input:disabled,body.dark-mode .form-select:disabled,body.dark-mode .form-textarea:disabled{background:var(--theme-bg-secondary);color:var(--theme-text-muted);border-color:var(--theme-border-primary)}body.dark-mode .form-input::placeholder,body.dark-mode .form-textarea::placeholder{color:var(--theme-text-muted)}body.dark-mode .form-error{color:var(--color-error)}body.dark-mode .form-success{color:var(--color-success)}body.dark-mode .form-input-icon{color:var(--theme-text-secondary)}body.dark-mode .tooltip{background:var(--theme-bg-primary);color:var(--theme-text-primary);border:1px solid var(--theme-border-primary);box-shadow:0 4px 12px var(--theme-shadow-hover)}}html[data-theme=dark] .navigation-menu .nav-item:hover:not(.disabled),body[data-theme=dark] .navigation-menu .nav-item:hover:not(.disabled),body.theme-dark .navigation-menu .nav-item:hover:not(.disabled){background-color:var(--nav-item-hover);color:var(--theme-text-primary)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.navigation-menu{background:var(--theme-bg-secondary)}}@layer components{:root{--ethics-primary: #4c7fff;--ethics-dark: #0b0f19;--ethics-light: #f5f7fa;--ethics-card-bg: #ffffff;--ethics-shadow: 0 3px 6px rgb(0 0 0 / 8%);--ethics-border-radius: 1rem}.ethics-wrapper{max-width:900px;margin:2rem auto;padding:2rem 1rem;background:var(--ethics-light);border-radius:var(--ethics-border-radius)}.ethics-hero{text-align:center;margin-bottom:3rem}.ethics-hero h1{font-size:clamp(2rem,4vw + 1rem,3rem);color:var(--ethics-primary);margin-bottom:1rem}.ethics-hero p{font-size:1.2rem;line-height:1.6;color:var(--ethics-dark);max-width:600px;margin:0 auto}.ethics-nav{background:var(--ethics-card-bg);border-radius:var(--ethics-border-radius);padding:1.5rem;margin-bottom:3rem;box-shadow:var(--ethics-shadow)}.ethics-nav ul{display:flex;flex-wrap:wrap;gap:1rem;padding:0;margin:0;list-style:none;justify-content:center}.ethics-nav a{color:var(--ethics-primary);font-weight:600;text-decoration:none;padding:.5rem 1rem;border-radius:.5rem;transition:background-color .3s ease}.ethics-nav a:hover,.ethics-nav a:focus{background-color:#4c7fff1a;text-decoration:underline}.ethics-section{background:var(--ethics-card-bg);border-radius:var(--ethics-border-radius);padding:2rem;margin-bottom:2rem;box-shadow:var(--ethics-shadow)}.ethics-section h2{color:var(--ethics-primary);font-size:2rem;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.ethics-section p,.ethics-section li{line-height:1.6;color:var(--ethics-dark)}.ethics-section ul{padding-left:1.5rem}.ethics-section ul li{margin-bottom:.5rem}.ethics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}.ethics-card{background:var(--ethics-card-bg);border-radius:var(--ethics-border-radius);padding:1.5rem;box-shadow:var(--ethics-shadow);border:2px solid transparent;transition:border-color .3s ease,transform .3s ease}.ethics-card:hover{border-color:var(--ethics-primary);transform:translateY(-2px)}.ethics-card h3{color:var(--ethics-primary);margin-top:0;margin-bottom:1rem;font-size:1.3rem}.ethics-card p{margin:0;color:var(--ethics-dark)}.ethics-card details summary{cursor:pointer;font-weight:600;color:var(--ethics-primary);margin-bottom:.5rem}.ethics-card details[open] summary{margin-bottom:1rem}.ethics-guide-page .chart-container{position:relative;min-height:400px;margin:2rem 0;padding:1rem;background:var(--ethics-card-bg);border-radius:var(--ethics-border-radius);box-shadow:var(--ethics-shadow)}.cta-button{display:inline-block;margin-top:1.5rem;padding:1rem 2rem;background:var(--ethics-primary);color:#fff;border-radius:.5rem;text-decoration:none;font-weight:600;transition:background-color .3s ease,transform .3s ease}.cta-button:hover,.cta-button:focus{background:#3a5acc;transform:translateY(-2px)}.ethics-footer{text-align:center;margin-top:3rem;padding-top:2rem;border-top:1px solid rgb(76 127 255 / 20%);color:#666}.highlight-box{background:#4c7fff1a;border-left:4px solid var(--ethics-primary);padding:1rem 1.5rem;margin:1.5rem 0;border-radius:0 .5rem .5rem 0}.ethics-table-container{overflow-x:auto;margin:2rem 0;border-radius:var(--ethics-border-radius);box-shadow:var(--ethics-shadow)}.ethics-dimensions-table{width:100%;border-collapse:collapse;background:var(--ethics-card-bg)}.ethics-dimensions-table th,.ethics-dimensions-table td{padding:1rem;text-align:left;border-bottom:1px solid rgb(76 127 255 / 10%)}.ethics-dimensions-table th{background:#4c7fff1a;color:var(--ethics-primary);font-weight:600}.ethics-dimensions-table tr:hover{background:#4c7fff0d}#philosophical-frameworks .frameworks-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;margin:2rem 0}#philosophical-frameworks .framework-card{background:var(--ethics-card-bg);border-radius:var(--ethics-border-radius);overflow:hidden;box-shadow:var(--ethics-shadow);border:2px solid transparent;transition:all .3s ease}#philosophical-frameworks .framework-card:hover{border-color:var(--ethics-primary);transform:translateY(-3px)}#philosophical-frameworks .framework-header{background:linear-gradient(135deg,var(--ethics-primary),#3a5acc);color:#fff;padding:1.5rem;display:flex;justify-content:space-between;align-items:center}#philosophical-frameworks .framework-header h3{margin:0;font-size:1.4rem}#philosophical-frameworks .framework-badge{background:#fff3;padding:.3rem .8rem;border-radius:1rem;font-size:.8rem;font-weight:600}#philosophical-frameworks .framework-content{padding:1.5rem}#philosophical-frameworks .framework-content p{margin-bottom:1rem}#philosophical-frameworks .framework-content ul{padding-left:1.5rem;margin-bottom:1rem}#philosophical-frameworks .framework-content li{margin-bottom:.5rem}#philosophical-frameworks .framework-example{background:#4c7fff1a;padding:1rem;border-radius:.5rem;margin-top:1rem;font-style:italic}.pathways-container{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:2rem;margin:2rem 0}.pathway-level{background:var(--ethics-card-bg);border-radius:var(--ethics-border-radius);overflow:hidden;box-shadow:var(--ethics-shadow);border-left:5px solid var(--ethics-primary);display:flex;flex-direction:column;height:100%}.level-header{background:linear-gradient(135deg,#f8f9ff,#e8f2ff);padding:1.5rem;display:flex;align-items:center;gap:1rem}.level-number{width:3rem;height:3rem;background:var(--ethics-primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem}.level-header h3{margin:0;flex:1;color:var(--ethics-primary)}.level-badge{padding:.3rem .8rem;border-radius:1rem;font-size:.8rem;font-weight:600;color:#fff}.level-badge.beginner{background:#22c55e}.level-badge.intermediate{background:#f59e0b}.level-badge.advanced{background:#ef4444}.level-badge.expert{background:#8b5cf6}.level-content{padding:1.5rem;flex:1;display:flex;flex-direction:column}.gamification-badge{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;padding:1rem;border-radius:.5rem;margin-top:auto;font-weight:600}.pledge-container{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin:2rem 0}.pledge-card{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:2px solid var(--ethics-primary);border-radius:var(--ethics-border-radius);padding:2rem}.pledge-card h3{color:var(--ethics-primary);margin-top:0;text-align:center}.pledge-items{display:flex;flex-direction:column;gap:1rem}.pledge-item{display:flex;align-items:flex-start;gap:1rem}.pledge-icon{font-size:1.5rem;flex-shrink:0}.pledge-item p{margin:0}.pledge-guidelines{background:var(--ethics-card-bg);border-radius:var(--ethics-border-radius);padding:2rem;box-shadow:var(--ethics-shadow)}.pledge-guidelines h3{color:var(--ethics-primary);margin-top:0}.pledge-guidelines ul{padding-left:1.5rem}.pledge-guidelines li{margin-bottom:.8rem}.ethics-quiz-section{background:repeating-linear-gradient(transparent,transparent 94px,#d63447 95px,#d63447 96px,transparent 97px),repeating-linear-gradient(#fff,#fff 24px,#e7eff8 25px);border-left:5px solid #343434;border-radius:var(--ethics-border-radius);padding:3rem 2rem;margin:3rem 0;box-shadow:0 4px 15px #0000001a;position:relative}.ethics-quiz-section:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#ffffffe5,#f7fafff2);border-radius:var(--ethics-border-radius);z-index:1}.ethics-quiz-section>*{position:relative;z-index:2}.ethics-quiz-section h2{color:var(--ethics-primary);text-align:center;margin-bottom:1rem;font-size:2.2rem;font-family:Georgia,serif;text-shadow:0 1px 2px rgb(0 0 0 / 10%)}.quiz-intro{text-align:center;font-size:1.2rem;margin-bottom:2.5rem;color:var(--ethics-dark);line-height:1.6;font-style:italic}.quiz-container{max-width:700px;margin:0 auto}.quiz-question{background:#fffc;border-radius:.8rem;padding:1.5rem;margin-bottom:2rem;border:2px solid rgb(76 127 255 / 10%);box-shadow:0 2px 8px #0000000d;backdrop-filter:blur(5px)}.quiz-question h3{color:var(--ethics-primary);margin-bottom:1rem;font-size:1.3rem;font-family:Georgia,serif}.quiz-question p{color:var(--ethics-dark);line-height:1.6;margin-bottom:1.2rem}.quiz-options{display:flex;flex-direction:column;gap:.8rem}.quiz-option{background:#fff;color:var(--ethics-dark);border:2px solid #e7eff8;border-radius:.5rem;padding:1rem 1.5rem;text-align:left;cursor:pointer;transition:all .3s ease;font-size:1rem;font-weight:500;line-height:1.5;font-family:inherit}.quiz-option:hover{background:#f8fafe;border-color:var(--ethics-primary);transform:translate(8px);box-shadow:0 3px 10px #4c7fff33}.quiz-option.selected{background:var(--ethics-primary);color:#fff;border-color:var(--ethics-primary);transform:translate(8px);box-shadow:0 4px 12px #4c7fff4d}.quiz-results{background:#ffffffe5;border-radius:.8rem;padding:2rem;margin-top:2rem;text-align:center;border:2px solid var(--ethics-primary);box-shadow:0 4px 15px #4c7fff33;display:none}.quiz-results.show{display:block;animation:fade-in-up .5s ease}@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.quiz-score{font-size:2rem;font-weight:700;margin-bottom:1rem;color:var(--ethics-primary)}.quiz-message{font-size:1.1rem;line-height:1.6;margin-bottom:1.5rem;color:var(--ethics-dark)}.quiz-restart-btn{background:var(--ethics-primary);color:#fff;border:none;border-radius:.5rem;padding:.8rem 2rem;font-weight:600;cursor:pointer;transition:all .3s ease}.quiz-restart-btn:hover{background:#3a5acc;transform:translateY(-2px);box-shadow:0 4px 12px #4c7fff4d}@media (width <= 768px){.ethics-wrapper{margin:1rem;padding:1rem}.ethics-nav ul{flex-direction:column;align-items:center}.ethics-grid,#philosophical-frameworks .frameworks-grid,.pledge-container{grid-template-columns:1fr}.level-header{flex-direction:column;text-align:center;gap:.5rem}.pathways-container{grid-template-columns:1fr;grid-template-rows:auto}.ethics-dimensions-table{font-size:.9rem}.ethics-dimensions-table th,.ethics-dimensions-table td{padding:.5rem}}@media (prefers-reduced-motion: reduce){.quiz-results.show{animation:none}.quiz-option:hover,.cta-button:hover{transform:none}}}@layer components{.enhanced-profile{--primary-color: #2563eb;--primary-hover: #1d4ed8;--secondary-color: #64748b;--accent-color: #f59e0b;--success-color: #10b981;--warning-color: #f59e0b;--error-color: #ef4444;--background-color: #fff;--surface-color: #f8fafc;--border-color: #e2e8f0;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 5%);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 10%), 0 2px 4px -2px rgb(0 0 0 / 10%);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 10%), 0 4px 6px -4px rgb(0 0 0 / 10%);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 10%), 0 8px 10px -6px rgb(0 0 0 / 10%);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--transition-fast: .15s ease-in-out;--transition-normal: .3s ease-in-out;--transition-slow: .5s ease-in-out}.enhanced-header{background:linear-gradient(135deg,#1e293b,#334155);border-bottom:3px solid var(--primary-color);position:sticky;top:0;z-index:100;backdrop-filter:blur(10px)}.header-container{max-width:1400px;margin:0 auto;padding:0 1.5rem}.header-content{display:flex;align-items:center;justify-content:space-between;min-height:80px;gap:2rem}.logo-section{display:flex;align-items:center;flex-shrink:0}.logo-link{display:flex;align-items:center;gap:1rem;text-decoration:none;transition:var(--transition-fast)}.logo-link:hover{transform:translateY(-1px)}.logo-icon{width:48px;height:48px;font-size:1.5rem;background:linear-gradient(135deg,var(--primary-color),var(--accent-color));border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:var(--shadow-md)}.logo-text{display:flex;flex-direction:column;gap:.25rem}.logo-title{font-size:1.5rem;font-weight:700;color:#fff;margin:0}.logo-subtitle{font-size:.875rem;color:#94a3b8;font-weight:500;margin:0}.header-nav{display:flex;align-items:center;flex:1;justify-content:center}.nav-links{display:flex;gap:2rem;list-style:none;margin:0;padding:0}.header-nav .nav-link{display:flex;align-items:center;gap:.5rem;color:#e2e8f0;text-decoration:none;font-weight:500;padding:.75rem 1rem;border-radius:var(--radius-md);transition:var(--transition-fast);position:relative}.header-nav .nav-link:hover,.header-nav .nav-link.active{color:#fff;background:#ffffff1a;transform:translateY(-1px)}.nav-link:after{content:"";position:absolute;bottom:-2px;left:50%;width:0;height:2px;background:var(--accent-color);transition:var(--transition-fast);transform:translate(-50%)}.header-nav .nav-link:hover:after,.header-nav .nav-link.active:after{width:80%}.nav-icon{font-size:1rem}.header-actions{display:flex;align-items:center;gap:1rem;flex-shrink:0}.mobile-menu-toggle{display:none;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.5rem;flex-direction:column;gap:.25rem}.mobile-menu-toggle span{width:24px;height:2px;background:#fff;transition:var(--transition-fast)}.profile-hero-section{background:linear-gradient(135deg,#f8fafc,#e2e8f0);padding:4rem 0 2rem;position:relative;overflow:hidden}.hero-background{position:absolute;inset:0;opacity:.1}.hero-pattern{width:100%;height:100%;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grid" width="10" height="10" patternUnits="userSpaceOnUse"><path d="M 10 0 L 0 0 0 10" fill="none" stroke="%23334155" stroke-width="0.5"/></pattern></defs><rect width="100" height="100" fill="url(%23grid)"/></svg>')}.hero-content{text-align:center;max-width:800px;margin:0 auto;position:relative;z-index:1}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,var(--primary-color),var(--accent-color));color:#fff;padding:.5rem 1.5rem;border-radius:50px;font-size:.875rem;font-weight:600;margin-bottom:1.5rem;box-shadow:var(--shadow-md)}.hero-title{font-size:3rem;font-weight:800;color:var(--text-primary);margin-bottom:1rem;line-height:1.1;background:linear-gradient(135deg,var(--text-primary),var(--primary-color));-webkit-text-fill-color:transparent;background-clip:text}.hero-description{font-size:1.125rem;color:var(--text-secondary);margin-bottom:2rem;line-height:1.6;max-width:600px;margin-left:auto;margin-right:auto}.enhanced-profile-section{padding:3rem 0;background:var(--background-color)}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.enhanced-profile-header{margin-bottom:3rem}.profile-header-card{background:#fff;border-radius:var(--radius-xl);padding:2.5rem;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);display:flex;gap:2rem;align-items:center;position:relative;overflow:hidden}.profile-header-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-color),var(--accent-color))}.profile-main-info{display:flex;gap:2rem;align-items:center;flex:1}.profile-avatar-section,.avatar-container{position:relative}.profile-avatar-img{width:120px;height:120px;border-radius:50%;border:4px solid white;box-shadow:var(--shadow-lg);object-fit:cover}.avatar-status{position:absolute;bottom:8px;right:8px;width:24px;height:24px;border-radius:50%;border:3px solid white;box-shadow:var(--shadow-md)}.avatar-status.online{background:var(--success-color)}.avatar-edit-btn{position:absolute;bottom:-8px;right:-8px;width:40px;height:40px;background:var(--primary-color);color:#fff;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);transition:var(--transition-fast)}.avatar-edit-btn:hover{background:var(--primary-hover);transform:scale(1.1)}.profile-details{flex:1}.profile-name-section{margin-bottom:1rem}.profile-name{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem}.profile-badges{display:flex;gap:.75rem;flex-wrap:wrap}.tier-badge{background:linear-gradient(135deg,var(--primary-color),var(--primary-hover));color:#fff;padding:.25rem .75rem;border-radius:50px;font-size:.875rem;font-weight:600;box-shadow:var(--shadow-sm)}.verification-badge{background:linear-gradient(135deg,var(--success-color),#059669);color:#fff;padding:.25rem .75rem;border-radius:50px;font-size:.875rem;font-weight:600;box-shadow:var(--shadow-sm)}.profile-metadata{display:flex;flex-direction:column;gap:.5rem}.metadata-item{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.875rem}.metadata-item i{color:var(--text-muted);width:16px}.profile-actions{display:flex;flex-direction:column;gap:.75rem;align-self:flex-start}.enhanced-profile-stats{margin-bottom:3rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.stat-card{background:#fff;border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-md);border:1px solid var(--border-color);transition:var(--transition-normal);position:relative;overflow:hidden}.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.stat-card.scenarios{border-left:4px solid #3b82f6}.stat-card.research{border-left:4px solid #10b981}.stat-card.community{border-left:4px solid #f59e0b}.stat-card.donations{border-left:4px solid #ef4444}.stat-icon{position:absolute;top:1.5rem;right:1.5rem;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.25rem;opacity:.1}.scenarios .stat-icon{background:#3b82f6;color:#fff}.research .stat-icon{background:#10b981;color:#fff}.community .stat-icon{background:#f59e0b;color:#fff}.donations .stat-icon{background:#ef4444;color:#fff}.stat-content h3{font-size:.875rem;font-weight:600;color:var(--text-secondary);margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.05em}.stat-number{display:block;font-size:2.5rem;font-weight:800;margin-bottom:.5rem}.scenarios .stat-number{color:#3b82f6}.research .stat-number{color:#10b981}.community .stat-number{color:#f59e0b}.donations .stat-number{color:#ef4444}.stat-description{color:var(--text-muted);font-size:.875rem;margin:0 0 1rem;line-height:1.4}.stat-progress{height:4px;background:var(--border-color);border-radius:2px;overflow:hidden}.progress-bar{height:100%;border-radius:2px;transition:var(--transition-slow)}.scenarios .progress-bar{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.research .progress-bar{background:linear-gradient(90deg,#10b981,#34d399)}.community .progress-bar{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.donations .progress-bar{background:linear-gradient(90deg,#ef4444,#f87171)}.activity-timeline-section{margin-bottom:3rem}.main-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.profile-page .main-section-title,.user-profile .main-section-title{display:flex;align-items:center;gap:var(--spacing-3);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin:0}.view-all-btn{background:none;border:1px solid var(--border-color);color:var(--text-secondary);padding:.5rem 1rem;border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);font-size:.875rem;display:flex;align-items:center;gap:.5rem}.view-all-btn:hover{background:var(--surface-color);border-color:var(--primary-color);color:var(--primary-color)}.timeline-container{background:#fff;border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.timeline-item{display:flex;gap:1rem;padding:1.5rem 0;border-bottom:1px solid var(--border-color)}.timeline-item:last-child{border-bottom:none;padding-bottom:0}.timeline-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.875rem;flex-shrink:0}.timeline-icon.completed{background:linear-gradient(135deg,var(--success-color),#059669)}.timeline-icon.research{background:linear-gradient(135deg,var(--primary-color),var(--primary-hover))}.timeline-icon.community{background:linear-gradient(135deg,var(--accent-color),#f97316)}.timeline-content{flex:1}.timeline-content h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem}.timeline-content p{color:var(--text-secondary);font-size:.875rem;margin:0 0 .5rem;line-height:1.4}.timeline-date{font-size:.75rem;color:var(--text-muted);font-weight:500}.enhanced-section-card{background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);border:1px solid var(--border-color);overflow:hidden;margin-bottom:2rem;transition:var(--transition-normal)}.enhanced-section-card:hover{box-shadow:var(--shadow-xl)}.card-header{display:flex;align-items:center;gap:1rem;padding:2rem 2rem 1rem;background:var(--surface-color);border-bottom:1px solid var(--border-color)}.header-icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:#fff;flex-shrink:0}.research-section .header-icon{background:linear-gradient(135deg,var(--primary-color),var(--primary-hover))}.support-section .header-icon{background:linear-gradient(135deg,var(--error-color),#dc2626)}.account-section .header-icon{background:linear-gradient(135deg,var(--secondary-color),#475569)}.header-content{flex:1}.header-content h2{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin:0 0 .25rem}.header-content p{color:var(--text-secondary);font-size:.875rem;margin:0;line-height:1.4}.header-actions{display:flex;gap:.5rem}.info-btn{width:32px;height:32px;border-radius:50%;background:#0000000d;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-muted);transition:var(--transition-fast)}.info-btn:hover{background:var(--primary-color);color:#fff}.card-content{padding:2rem}.support-intro{margin-bottom:2rem}.support-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.support-stat{text-align:center;padding:1rem;background:var(--surface-color);border-radius:var(--radius-md)}.stat-value{display:block;font-size:1.5rem;font-weight:700;color:var(--primary-color);margin-bottom:.25rem}.stat-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.funding-progress{text-align:center}.progress-track{height:8px;background:var(--border-color);border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,var(--success-color),#34d399);border-radius:4px;transition:var(--transition-slow)}.progress-text{font-size:.875rem;color:var(--text-secondary);font-weight:500}.enhanced-donation-tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}.tier-card{background:#fff;border:2px solid var(--border-color);border-radius:var(--radius-lg);padding:2rem;text-align:center;position:relative;transition:var(--transition-normal);overflow:hidden}.tier-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.tier-card.featured{border-color:var(--primary-color);box-shadow:var(--shadow-lg);transform:scale(1.05)}.tier-badge{position:absolute;top:1rem;right:1rem;background:var(--accent-color);color:#fff;padding:.25rem .75rem;border-radius:50px;font-size:.75rem;font-weight:600}.tier-card.featured .tier-badge{background:var(--primary-color)}.tier-icon{font-size:3rem;margin-bottom:1rem}.tier-card h3{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0 0 1rem}.tier-price{margin-bottom:1.5rem}.price{font-size:2.5rem;font-weight:800;color:var(--primary-color)}.period{font-size:1rem;color:var(--text-muted);font-weight:500}.tier-benefits{list-style:none;padding:0;margin:0 0 2rem;text-align:left}.tier-benefits li{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem;font-size:.875rem;color:var(--text-secondary)}.tier-benefits i{color:var(--success-color);font-size:.75rem}.account-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.account-action-card{background:var(--surface-color);border-radius:var(--radius-lg);padding:2rem;text-align:center;transition:var(--transition-normal);border:1px solid var(--border-color)}.account-action-card:hover{background:#fff;box-shadow:var(--shadow-md);transform:translateY(-2px)}.action-icon{width:64px;height:64px;border-radius:50%;background:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;font-size:1.5rem}.action-content h4{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.action-content p{color:var(--text-secondary);font-size:.875rem;margin:0 0 1.5rem;line-height:1.4}.enhanced-login-required{min-height:80vh;display:flex;align-items:center;justify-content:center}.login-hero-section{width:100%;position:relative;overflow:hidden}.login-hero-content{max-width:1200px;margin:0 auto;padding:4rem 1.5rem;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.hero-animation{position:relative;height:400px;display:flex;align-items:center;justify-content:center}.floating-icons{position:relative;width:300px;height:300px}.floating-icons i{position:absolute;font-size:3rem;color:var(--primary-color);opacity:.2;animation:float 6s ease-in-out infinite}.floating-icons .icon-1{top:20%;left:20%;animation-delay:0s}.floating-icons .icon-2{top:20%;right:20%;animation-delay:1.5s}.floating-icons .icon-3{bottom:20%;left:20%;animation-delay:3s}.floating-icons .icon-4{bottom:20%;right:20%;animation-delay:4.5s}.login-content{max-width:500px}.login-badge{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,var(--primary-color),var(--accent-color));color:#fff;padding:.5rem 1.5rem;border-radius:50px;font-size:.875rem;font-weight:600;margin-bottom:2rem;box-shadow:var(--shadow-md)}.login-title{font-size:3rem;font-weight:800;color:var(--text-primary);margin-bottom:1rem;line-height:1.1}.login-description{font-size:1.125rem;color:var(--text-secondary);margin-bottom:3rem;line-height:1.6}.login-benefits-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:3rem}.benefit-card{background:#fff;border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm);border:1px solid var(--border-color);transition:var(--transition-normal)}.benefit-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.benefit-icon{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:#fff;margin-bottom:1rem}.benefit-card.research .benefit-icon{background:linear-gradient(135deg,var(--primary-color),var(--primary-hover))}.benefit-card.community .benefit-icon{background:linear-gradient(135deg,var(--success-color),#059669)}.benefit-card.discussions .benefit-icon{background:linear-gradient(135deg,var(--accent-color),#f97316)}.benefit-card.progress .benefit-icon{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.benefit-content h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.benefit-content p{color:var(--text-secondary);font-size:.875rem;margin:0 0 1rem;line-height:1.4}.benefit-features{list-style:none;padding:0;margin:0}.benefit-features li{color:var(--text-muted);font-size:.75rem;margin-bottom:.25rem;position:relative;padding-left:1rem}.benefit-features li:before{content:"•";position:absolute;left:0;color:var(--primary-color)}.login-actions{margin-bottom:3rem}.login-btn{width:100%;padding:1rem 2rem;font-size:1rem;font-weight:600;border-radius:var(--radius-lg);position:relative;overflow:hidden;margin-bottom:1rem}.btn-shine{position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgb(255 255 255 / 20%),transparent);transition:left .5s}.login-btn:hover .btn-shine{left:100%}.login-alternative{text-align:center;position:relative;margin:1.5rem 0}.divider-text{background:var(--background-color);padding:0 1rem;color:var(--text-muted);font-size:.875rem;position:relative;z-index:1}.login-alternative:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--border-color)}.guest-btn{width:100%;padding:.875rem 2rem;font-size:.875rem}.login-trust-indicators{display:flex;justify-content:center;gap:2rem;margin-bottom:3rem}.trust-item{display:flex;align-items:center;gap:.5rem;color:var(--text-muted);font-size:.75rem;font-weight:500}.trust-item i{color:var(--success-color)}.login-testimonial{background:var(--surface-color);border-radius:var(--radius-lg);padding:2rem;border-left:4px solid var(--primary-color)}.testimonial-content p{font-style:italic;color:var(--text-secondary);margin-bottom:1rem;line-height:1.6}.testimonial-author{display:flex;align-items:center;gap:1rem}.author-avatar img{width:48px;height:48px;border-radius:50%;object-fit:cover}.author-name{font-weight:600;color:var(--text-primary);display:block;margin-bottom:.25rem}.author-role{font-size:.875rem;color:var(--text-muted)}.enhanced-footer{background:linear-gradient(135deg,#1e293b,#334155);color:#fff;padding:4rem 0 2rem;margin-top:4rem}.footer-container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.footer-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:3rem;margin-bottom:3rem}.main-section-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.section-icon{font-size:1.5rem;color:var(--accent-color)}.footer-section h3{font-size:1.25rem;font-weight:700;color:#fff;margin:0}.footer-section p{color:#cbd5e1;margin-bottom:1.5rem;line-height:1.6}.footer-links{display:flex;flex-direction:column;gap:.75rem}.footer-link{color:#e2e8f0;text-decoration:none;transition:var(--transition-fast);display:flex;align-items:center;gap:.5rem;font-size:.875rem}.footer-link:hover{color:var(--accent-color);transform:translate(4px)}.footer-bottom{border-top:1px solid #475569;padding-top:2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:2rem}.footer-meta{flex:1}.footer-copyright{color:#cbd5e1;margin:0 0 .5rem;font-size:.875rem}.copyright-note{color:#94a3b8;font-size:.75rem;margin:0}.footer-badges{display:flex;gap:.75rem;flex-wrap:wrap}.badge{background:#ffffff1a;color:#fff;padding:.25rem .75rem;border-radius:50px;font-size:.75rem;font-weight:600}.enhanced-loading{position:fixed;inset:0;background:#fffffff2;backdrop-filter:blur(8px);z-index:9999;display:flex;align-items:center;justify-content:center}.loading-container{text-align:center;max-width:400px;padding:3rem;background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl)}.loading-spinner{position:relative;width:80px;height:80px;margin:0 auto 2rem}.spinner-ring{position:absolute;width:100%;height:100%;border:4px solid transparent;border-radius:50%;animation:spin 2s linear infinite}.spinner-ring:nth-child(1){border-top-color:var(--primary-color);animation-delay:0s}.spinner-ring:nth-child(2){border-right-color:var(--accent-color);animation-delay:.3s}.spinner-ring:nth-child(3){border-bottom-color:var(--success-color);animation-delay:.6s}.loading-title{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.loading-subtitle{font-size:.875rem;color:var(--text-secondary);margin:0 0 2rem}.loading-progress{width:100%;height:4px;background:var(--border-color);border-radius:2px;overflow:hidden}.loading-progress .progress-bar{height:100%;background:linear-gradient(90deg,var(--primary-color),var(--accent-color));border-radius:2px;animation:loading-progress 2s ease-in-out infinite}.enhanced-profile-section .btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:var(--radius-md);font-weight:600;font-size:.875rem;text-decoration:none;cursor:pointer;transition:var(--transition-fast);position:relative;overflow:hidden;white-space:nowrap}.enhanced-profile-section .btn-primary{background:linear-gradient(135deg,var(--primary-color),var(--primary-hover));color:#fff;box-shadow:var(--shadow-md)}.enhanced-profile-section .btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.enhanced-profile-section .btn-secondary{background:var(--secondary-color);color:#fff;box-shadow:var(--shadow-sm)}.enhanced-profile-section .btn-secondary:hover{background:#475569;transform:translateY(-1px)}.enhanced-profile-section .btn-outline{background:transparent;color:var(--primary-color);border:2px solid var(--primary-color)}.enhanced-profile-section .btn-outline:hover{background:var(--primary-color);color:#fff}.enhanced-profile-section .btn-outline.danger{color:var(--error-color);border-color:var(--error-color)}.enhanced-profile-section .btn-outline.danger:hover{background:var(--error-color);color:#fff}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes loading-progress{0%{transform:translate(-100%)}50%{transform:translate(0)}to{transform:translate(100%)}}@media (width <= 1024px){.login-hero-content{grid-template-columns:1fr;gap:3rem;text-align:center}.hero-animation{order:2;height:300px}.login-content{order:1;max-width:100%}.profile-header-card,.profile-main-info{flex-direction:column;text-align:center}.profile-actions{flex-direction:row;justify-content:center}}@media (width <= 768px){.hero-title,.login-title{font-size:2.5rem}.header-nav{display:none}.mobile-menu-toggle{display:flex}.stats-grid{grid-template-columns:1fr 1fr}.enhanced-donation-tiers,.account-grid,.login-benefits-grid,.support-stats{grid-template-columns:1fr}.login-trust-indicators{flex-direction:column;gap:1rem}.footer-bottom{flex-direction:column;text-align:center}}@media (width <= 480px){.hero-title,.login-title{font-size:2rem}.stats-grid{grid-template-columns:1fr}.profile-header-card,.card-header,.card-content{padding:1.5rem}.login-hero-content{padding:2rem 1rem}.timeline-item{flex-direction:column;text-align:center}.timeline-icon{align-self:center}}.dark-mode .enhanced-profile{--background-color: #0f172a;--surface-color: #1e293b;--border-color: #334155;--text-primary: #f8fafc;--text-secondary: #cbd5e1;--text-muted: #64748b}*:focus{outline:2px solid var(--primary-color);outline-offset:2px}.btn:focus{outline:none;box-shadow:0 0 0 3px #2563eb33}@media (prefers-contrast: high){.enhanced-profile{--border-color: #000;--text-primary: #000;--text-secondary: #000}.btn-outline{border-width:3px}}.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}.skip-link{position:absolute;top:-100px;left:0;background:var(--primary-color);color:#fff;padding:.75rem 1rem;text-decoration:none;border-radius:0 0 var(--radius-md) 0;font-weight:600;transition:var(--transition-fast);z-index:10001}.skip-link:focus{top:0}@media print{.enhanced-header,.enhanced-footer,.enhanced-loading,.enhanced-profile-section .btn{display:none!important}.enhanced-section-card,.stat-card,.tier-card{break-inside:avoid;box-shadow:none;border:1px solid #ccc}}body.dark-mode .enhanced-profile{--background-color: var(--theme-bg-primary);--surface-color: var(--theme-bg-secondary);--border-color: var(--theme-border);--text-primary: var(--theme-text-primary);--text-secondary: var(--theme-text-secondary);--text-muted: var(--theme-text-muted);--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 20%);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 30%), 0 2px 4px -2px rgb(0 0 0 / 30%);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 40%), 0 4px 6px -4px rgb(0 0 0 / 40%);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 50%), 0 8px 10px -6px rgb(0 0 0 / 50%)}body.dark-mode .enhanced-header{background:linear-gradient(135deg,#1a1a1a,#2d2d2d);border-bottom:3px solid var(--color-primary)}body.dark-mode .header-nav .nav-link{color:var(--theme-text-primary)}body.dark-mode .header-nav .nav-link:hover{color:var(--color-primary)}body.dark-mode .enhanced-section-card{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .profile-page .main-section-title,body.dark-mode .user-profile .main-section-title{color:var(--theme-text-primary)}body.dark-mode .section-subtitle{color:var(--theme-text-secondary)}body.dark-mode .stat-card{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .stat-value{color:var(--theme-text-primary)}body.dark-mode .stat-label{color:var(--theme-text-secondary)}body.dark-mode .tier-card{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .tier-card.current-tier{border-color:var(--color-primary);box-shadow:0 0 20px #4a9eff4d}body.dark-mode .tier-title{color:var(--theme-text-primary)}body.dark-mode .tier-description{color:var(--theme-text-secondary)}body.dark-mode .progress-bar{background:var(--theme-bg-primary);border:1px solid var(--theme-border)}body.dark-mode .progress-fill{background:var(--color-primary)}body.dark-mode .progress-text{color:var(--theme-text-primary)}body.dark-mode .achievement-badge{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .achievement-badge.earned{border-color:var(--color-success);box-shadow:0 0 12px #4caf504d}body.dark-mode .badge-icon{color:var(--color-primary)}body.dark-mode .badge-title{color:var(--theme-text-primary)}body.dark-mode .badge-description{color:var(--theme-text-secondary)}body.dark-mode .timeline-item{background:var(--theme-bg-secondary);border:1px solid var(--theme-border)}body.dark-mode .timeline-date{color:var(--theme-text-muted)}body.dark-mode .timeline-content{color:var(--theme-text-primary)}body.dark-mode .btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}body.dark-mode .btn-primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}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-bg-primary);border-color:var(--theme-border-hover)}body.dark-mode .form-input{background:var(--theme-bg-primary);color:var(--theme-text-primary);border:1px solid var(--theme-border)}body.dark-mode .form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #4a9eff33}body.dark-mode .skip-link{background:var(--color-primary);color:#fff}}@layer utilities{.loader-spinner{display:inline-block;width:48px;height:48px;border:4px solid var(--loader-bg, #e0e0e0);border-top:4px solid var(--loader-fg, #1a73e8);border-radius:50%;animation:loader-spin 1s linear infinite;box-sizing:border-box}@keyframes loader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loader-spinner[hidden]{display:none!important}.loader-spinner.centered{display:block;margin:2rem auto}body.dark-mode .loader-spinner{border:4px solid var(--theme-border);border-top:4px solid var(--color-primary)}body.dark-mode .loader-spinner.success{border-top-color:var(--color-success)}body.dark-mode .loader-spinner.warning{border-top-color:var(--color-warning)}body.dark-mode .loader-spinner.error{border-top-color:var(--color-error)}body.dark-mode .loader-spinner.info{border-top-color:var(--color-info)}}@layer components{.contribution-btn{position:relative;padding:1rem 1.5rem;background:linear-gradient(135deg,var(--primary-color),var(--primary-color-dark));border:none;border-radius:12px;color:#fff;font-weight:600;text-decoration:none;transition:all .3s ease;box-shadow:0 4px 12px #ff6b6b4d;overflow:hidden}.contribution-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff6b6b66;background:linear-gradient(135deg,var(--primary-color-dark),var(--primary-color))}.contribution-btn .btn-subtitle{display:block;font-size:.75rem;font-weight:400;opacity:.9;margin-top:.25rem}.contribution-btn .btn-icon{margin-right:.5rem;font-size:1.1em}.submission-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;opacity:0;visibility:hidden;transition:all .3s ease}.submission-modal.show{opacity:1;visibility:visible}.submission-form-container{background:var(--background-color);border-radius:16px;box-shadow:0 20px 40px #0000004d;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;position:relative;transform:translateY(20px);transition:transform .3s ease}.submission-modal.show .submission-form-container{transform:translateY(0)}.modal-header{background:linear-gradient(135deg,var(--primary-color),var(--primary-color-dark));color:#fff;padding:1.5rem 2rem;border-radius:16px 16px 0 0;display:flex;align-items:center;justify-content:space-between}.modal-title{margin:0;font-size:1.5rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.modal-close{background:#fff3;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;color:#fff;font-size:1.5rem}.modal-close:hover{background:#ffffff4d;transform:rotate(90deg)}.modal-body{padding:2rem}.status-banner{background:var(--info-color);border:1px solid var(--info-border);border-radius:8px;padding:1rem;margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem}.status-banner.success{background:var(--success-light);border-color:var(--success-color);color:var(--success-dark)}.status-banner.warning{background:var(--warning-light);border-color:var(--warning-color);color:var(--warning-dark)}.status-banner.error{background:var(--error-light);border-color:var(--error-color);color:var(--error-dark)}.status-icon{font-size:1.25rem;flex-shrink:0}.status-message{font-weight:500}.info-card{background:var(--card-background);border:1px solid var(--border-light);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.info-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.info-icon{font-size:1.25rem}.info-header h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-color)}.info-content p{margin:0 0 1rem;color:var(--text-muted)}.benefits-list,.guidelines-list{list-style:none;padding:0;margin:0}.benefits-list li,.guidelines-list li{padding:.5rem 0;display:flex;align-items:flex-start;gap:.5rem}.donor-benefits{background:linear-gradient(135deg,#ffd7001a,#ff6b6b1a);border-color:var(--primary-color)}.submission-form{max-width:100%}.form-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-light)}.form-section:last-child{border-bottom:none;margin-bottom:0}.blog-submission-page .section-title,.submission-form .section-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-900);margin:0 0 var(--spacing-6) 0;display:flex;align-items:center;gap:.5rem}.form-group{margin-bottom:1.5rem}.form-label{display:block;font-weight:500;color:var(--text-color);margin-bottom:.5rem;font-size:.9rem}.required{color:var(--error-color);font-weight:600}.form-input,.form-select,.form-textarea{width:100%;padding:.75rem 1rem;border:2px solid var(--border-light);border-radius:8px;font-size:.9rem;font-family:inherit;background:var(--input-background);color:var(--text-color);transition:all .3s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #ff6b6b1a}.form-textarea{resize:vertical;min-height:100px;line-height:1.5}.content-editor{font-family:Monaco,Menlo,monospace;font-size:.85rem}.input-feedback{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem}.char-count{font-size:.75rem;color:var(--text-muted)}.input-help{margin-top:.5rem}.help-text{font-size:.75rem;color:var(--text-muted);font-style:italic}.checkbox-group{display:flex;align-items:flex-start;gap:.75rem}.checkbox-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;line-height:1.5}.checkbox-label input[type=checkbox]{display:none}.checkbox-custom{width:20px;height:20px;border:2px solid var(--border-light);border-radius:4px;background:var(--input-background);position:relative;flex-shrink:0;transition:all .3s ease;margin-top:2px}.checkbox-label input[type=checkbox]:checked+.checkbox-custom{background:var(--primary-color);border-color:var(--primary-color)}.checkbox-label input[type=checkbox]:checked+.checkbox-custom:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:.75rem;font-weight:600}.checkbox-text{font-size:.9rem;color:var(--text-color)}.checkbox-text .link{color:var(--primary-color);text-decoration:underline}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1.5rem;border-top:1px solid var(--border-light);margin-top:1.5rem}.form-actions .btn{min-width:140px;padding:.75rem 1.5rem;font-weight:500}.btn.loading{position:relative;color:transparent;pointer-events:none}.btn.loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;border:2px solid currentcolor;border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.contribution-section{margin-bottom:2rem}.contribution-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{background:var(--card-background);border:1px solid var(--border-light);border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1rem;transition:all .3s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.stat-icon{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:#fff;flex-shrink:0}.stat-icon.published{background:linear-gradient(135deg,var(--success-color),var(--success-dark))}.stat-icon.pending{background:linear-gradient(135deg,var(--warning-color),var(--warning-dark))}.stat-icon.draft{background:linear-gradient(135deg,var(--info-color),var(--info-dark))}.stat-icon.total-views{background:linear-gradient(135deg,var(--primary-color),var(--primary-color-dark))}.stat-content{display:flex;flex-direction:column}.stat-number{font-size:1.5rem;font-weight:700;color:var(--text-color);line-height:1}.stat-label{font-size:.875rem;color:var(--text-muted);margin-top:.25rem}.contribution-controls{display:flex;gap:2rem;margin-bottom:2rem;padding:1rem;background:var(--background-soft);border-radius:8px}.filter-group,.sort-group{display:flex;align-items:center;gap:.5rem}.filter-label{font-size:.875rem;font-weight:500;color:var(--text-color);white-space:nowrap}.filter-select{min-width:150px;padding:.5rem .75rem;border:1px solid var(--border-light);border-radius:6px;background:var(--input-background);color:var(--text-color);font-size:.875rem}.contribution-list{min-height:200px}.contribution-item{background:var(--card-background);border:1px solid var(--border-light);border-radius:12px;padding:1.5rem;margin-bottom:1rem;transition:all .3s ease}.contribution-item:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #ff6b6b1a}.contribution-header{display:flex;justify-content:between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.contribution-info{flex:1}.contribution-title{font-size:1.125rem;font-weight:600;color:var(--text-color);margin:0 0 .5rem;line-height:1.4}.contribution-meta{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem;font-size:.875rem;color:var(--text-muted)}.contribution-type{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;background:var(--info-light);color:var(--info-dark);border-radius:20px;font-size:.75rem;font-weight:500}.contribution-status{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:500}.contribution-status.published{background:var(--success-light);color:var(--success-dark)}.contribution-status.pending{background:var(--warning-light);color:var(--warning-dark)}.contribution-status.draft{background:var(--info-light);color:var(--info-dark)}.contribution-excerpt{color:var(--text-muted);line-height:1.5;margin-bottom:1rem}.contribution-stats-inline{display:flex;gap:1rem;margin-bottom:1rem;font-size:.875rem;color:var(--text-muted)}.contribution-stat{display:flex;align-items:center;gap:.25rem}.contribution-actions{display:flex;gap:.5rem;justify-content:flex-end}.contribution-actions .btn{padding:.5rem 1rem;font-size:.875rem}.empty-state{text-align:center;padding:3rem 2rem;color:var(--text-muted)}.empty-icon{font-size:3rem;color:var(--border-light);margin-bottom:1rem}.empty-state h3{color:var(--text-color);margin-bottom:.5rem}.empty-state p{margin-bottom:2rem;max-width:400px;margin-left:auto;margin-right:auto}.empty-actions{display:flex;gap:1rem;justify-content:center}.load-more-container{text-align:center;padding:1.5rem 0}.thread-modal-container{max-width:900px;width:100%;max-height:90vh;overflow-y:auto}.thread-content{padding:0}.original-post{background:var(--card-background);border:2px solid var(--primary-color);border-radius:12px;padding:2rem;margin-bottom:2rem}.post-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.author-info{display:flex;align-items:center;gap:1rem}.author-avatar{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--primary-color-dark));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:1.25rem}.author-details{display:flex;flex-direction:column}.author-name{font-weight:600;color:var(--text-color);font-size:1.125rem}.author-meta{display:flex;align-items:center;gap:1rem;margin-top:.25rem}.author-tier{background:var(--info-light);color:var(--info-dark);padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:500}.post-date{color:var(--text-muted);font-size:.875rem}.post-actions{display:flex;gap:.5rem}.post-content{color:var(--text-color);line-height:1.6;margin-bottom:1.5rem;white-space:pre-wrap}.post-meta{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--border-light)}.post-tags{display:flex;gap:.5rem;flex-wrap:wrap}.post-tag{background:var(--background-soft);color:var(--text-muted);padding:.25rem .75rem;border-radius:20px;font-size:.75rem;border:1px solid var(--border-light)}.post-stats{display:flex;gap:1rem;color:var(--text-muted);font-size:.875rem}.stat-item{display:flex;align-items:center;gap:.25rem}.replies-section{margin-top:2rem}.replies-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--border-light)}.replies-title{font-size:1.25rem;font-weight:600;color:var(--text-color);display:flex;align-items:center;gap:.5rem;margin:0}.replies-sort{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.replies-sort label{color:var(--text-muted);font-weight:500}.replies-container{margin-bottom:2rem}.reply-item{background:var(--card-background);border:1px solid var(--border-light);border-radius:12px;padding:1.5rem;margin-bottom:1rem;transition:all .3s ease}.reply-item:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #ff6b6b1a}.reply-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.reply-author-info{display:flex;align-items:center;gap:.75rem}.reply-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--info-color),var(--info-dark));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:1rem}.reply-author-details{display:flex;flex-direction:column}.reply-author-name{font-weight:600;color:var(--text-color);font-size:1rem}.reply-meta{display:flex;align-items:center;gap:.75rem;margin-top:.25rem;font-size:.75rem;color:var(--text-muted)}.reply-content{color:var(--text-color);line-height:1.6;margin-bottom:1rem;white-space:pre-wrap}.reply-actions{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--border-light)}.reply-action-buttons{display:flex;gap:.5rem}.reply-action-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:.5rem;border-radius:6px;transition:all .3s ease;display:flex;align-items:center;gap:.25rem;font-size:.875rem}.reply-action-btn:hover{background:var(--background-soft);color:var(--text-color)}.reply-action-btn.active{color:var(--primary-color);background:#ff6b6b1a}.reply-stats{display:flex;gap:1rem;color:var(--text-muted);font-size:.75rem}.reply-form-section{background:var(--background-soft);border:1px solid var(--border-light);border-radius:12px;padding:2rem;margin-top:2rem}.reply-form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.form-title{font-size:1.125rem;font-weight:600;color:var(--text-color);display:flex;align-items:center;gap:.5rem;margin:0}.user-info{display:flex;align-items:center;gap:.75rem}.user-avatar{width:35px;height:35px;border-radius:50%;background:linear-gradient(135deg,var(--success-color),var(--success-dark));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.875rem}.user-name{font-weight:500;color:var(--text-color)}.reply-form{max-width:100%}.reply-options{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.load-more-replies{text-align:center;padding:1rem 0}.login-required-message{background:var(--info-light);border:1px solid var(--info-color);border-radius:12px;padding:2rem;text-align:center;margin-top:2rem}.message-content{max-width:400px;margin:0 auto}.message-content i{font-size:3rem;color:var(--info-color);margin-bottom:1rem}.message-content h3{color:var(--text-color);margin-bottom:.5rem}.message-content p{color:var(--text-muted);margin-bottom:1.5rem}.message-actions{display:flex;gap:1rem;justify-content:center}.reply-item.nested{margin-left:2rem;border-left:3px solid var(--primary-color);border-radius:0 12px 12px 0}.reply-item.nested .reply-avatar{width:35px;height:35px;font-size:.875rem}.helper-badge{background:var(--warning-light);color:var(--warning-dark);padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:500}.helpful-reply{border-color:var(--success-color);background:#22c55e0d}.helpful-reply .reply-header:before{content:"✓";background:var(--success-color);color:#fff;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;position:absolute;top:-10px;right:-10px}@media (width <= 768px){.thread-modal-container{margin:.5rem;max-height:95vh}.original-post{padding:1.5rem}.post-header{flex-direction:column;gap:1rem}.post-actions{align-self:flex-start}.replies-header{flex-direction:column;gap:1rem;align-items:flex-start}.reply-item{padding:1rem}.reply-item.nested{margin-left:1rem}.reply-form-section{padding:1.5rem}.reply-form-header{flex-direction:column;gap:1rem;align-items:flex-start}.message-actions{flex-direction:column}.message-actions .btn{width:100%}}@media (width <= 480px){.original-post{padding:1rem}.reply-item{padding:.75rem}.reply-form-section{padding:1rem}.post-meta,.reply-actions{flex-direction:column;gap:1rem;align-items:flex-start}}.dark-mode .submission-form-container{background:var(--dark-surface);border:1px solid var(--dark-border)}.dark-mode .info-card{background:var(--dark-card);border-color:var(--dark-border)}.dark-mode .form-input,.dark-mode .form-select,.dark-mode .form-textarea{background:var(--dark-input);border-color:var(--dark-border);color:var(--dark-text)}.dark-mode .checkbox-custom{background:var(--dark-input);border-color:var(--dark-border)}.emoji-avatar{background:linear-gradient(135deg,#667eea,#764ba2)!important;color:#fff!important;font-size:1.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;border:2px solid rgb(255 255 255 / 20%)}.author-avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover}.reply-avatar.emoji-avatar{font-size:1.2rem}.user-avatar.emoji-avatar{font-size:1.3rem}.auth-section .user-avatar.emoji-avatar{font-size:1.1rem}.submission-process-info{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color-light)}.submission-process-info h4{color:var(--text-color-primary);font-size:1rem;font-weight:600;margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.process-steps{display:flex;flex-direction:column;gap:1rem}.process-step{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:var(--surface-color);border-radius:8px;border-left:3px solid var(--border-color);transition:all .2s ease}.process-step.donor-step{border-left-color:var(--accent-color);background:linear-gradient(135deg,#ffc1071a,#ffc1070d)}.process-step:hover{transform:translate(2px);box-shadow:0 2px 8px #0000001a}.step-icon{font-size:1.2rem;flex-shrink:0;margin-top:.1rem}.step-content{flex:1;font-size:.9rem;line-height:1.4}.step-content strong{color:var(--text-color-primary);font-weight:600}.donor-step .step-content a{font-weight:600;text-decoration:underline;transition:opacity .2s ease}.donor-step .step-content a:hover{opacity:.8}@media (width <= 768px){.process-steps{gap:.75rem}.process-step{padding:.6rem}.step-content{font-size:.85rem}}}@layer components{:root{--primary-color: #1a73e8;--primary-gradient: linear-gradient(135deg, #1a73e8 0%, #4285f4 100%);--success-color: #4caf50;--warning-color: #ff9800;--background-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--text-color: #333;--border-radius: 8px;--box-shadow: 0 20px 40px rgb(0 0 0 / 10%);--transition: all .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.consent-container{max-width:800px;margin:0 auto;background:#fff;border-radius:16px;box-shadow:var(--box-shadow);overflow:hidden;animation:slideUp .6s ease-out}.consent-header{background:var(--primary-gradient);color:#fff;padding:30px;text-align:center;position:relative}.consent-header:before{content:"";position:absolute;inset:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grid" width="10" height="10" patternUnits="userSpaceOnUse"><path d="M 10 0 L 0 0 0 10" fill="none" stroke="rgb(255%20255%20255%20/%2010%)" stroke-width="0.5"/></pattern></defs><rect width="100" height="100" fill="url(%23grid)"/></svg>');opacity:.3}.consent-header *{position:relative;z-index:1}.study-info{background:#ffffff1a;padding:15px;border-radius:var(--border-radius);margin-top:15px;backdrop-filter:blur(10px)}.section{margin-bottom:30px}.rc-animate .section{opacity:0;animation:fadeIn .6s ease-out forwards}.rc-animate .section:nth-child(1){animation-delay:.1s}.rc-animate .section:nth-child(2){animation-delay:.2s}.rc-animate .section:nth-child(3){animation-delay:.3s}.rc-animate .section:nth-child(4){animation-delay:.4s}.rc-animate .section:nth-child(5){animation-delay:.5s}.rc-animate .section:nth-child(6){animation-delay:.6s}.rc-animate .section:nth-child(7){animation-delay:.7s}@media (prefers-reduced-motion: reduce){.rc-animate .section{animation:none!important;opacity:1!important;transform:none!important}}.section h2{font-size:20px;color:var(--primary-color);margin-bottom:15px;padding-bottom:8px;border-bottom:2px solid #e8f0fe;position:relative}.section h2:before{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--primary-gradient);transition:width .5s ease}.section:hover h2:before{width:100%}.highlight-box{background:#f8f9fa;border-left:4px solid var(--primary-color);padding:20px;margin:20px 0;border-radius:0 var(--border-radius) var(--border-radius) 0;position:relative;overflow:hidden}.highlight-box:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--primary-gradient);animation:pulse 2s infinite}.highlight-box.warning{border-left-color:var(--warning-color);background:#fff8e1}.highlight-box.warning:before{background:var(--warning-color)}.highlight-box.success{border-left-color:var(--success-color);background:#e8f5e8}.highlight-box.success:before{background:var(--success-color)}.consent-checkbox{display:flex;align-items:flex-start;margin-bottom:20px;padding:15px;background:#fff;border-radius:var(--border-radius);border:2px solid #e0e0e0;transition:var(--transition);cursor:pointer;position:relative;overflow:hidden}.consent-checkbox:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgb(26 115 232 / 10%),transparent);transition:left .5s ease}.consent-checkbox:hover:before{left:100%}.consent-checkbox.checked{border-color:var(--primary-color);background:#e3f2fd;transform:translateY(-2px);box-shadow:0 4px 12px #1a73e833}.consent-checkbox input[type=checkbox]{margin-right:12px;margin-top:2px;transform:scale(1.2);cursor:pointer}.consent-checkbox label{cursor:pointer;font-size:14px;line-height:1.5;position:relative;z-index:1}.consent-container .btn{padding:15px 30px;border:none;border-radius:var(--border-radius);font-size:16px;font-weight:600;cursor:pointer;transition:var(--transition);text-decoration:none;display:inline-flex;align-items:center;gap:8px;position:relative;overflow:hidden}.consent-container .btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#fff3;border-radius:50%;transition:width .3s ease,height .3s ease;transform:translate(-50%,-50%)}.consent-container .btn:hover:before{width:300px;height:300px}.consent-container .btn-primary{background:var(--primary-gradient);color:#fff;position:relative;z-index:1}.consent-container .btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #1a73e84d}.consent-container .btn-primary:disabled{background:#ccc;cursor:not-allowed;transform:none}.consent-container .btn-secondary{background:#f1f3f4;color:#5f6368;border:1px solid #dadce0}.consent-container .btn-secondary:hover{background:#e8eaed}.progress-indicator{position:fixed;top:0;left:0;width:100%;height:3px;background:#1a73e81a;z-index:1000}.progress-bar{height:100%;background:var(--primary-gradient);width:0%;transition:width .3s ease;position:relative}.progress-bar:after{content:"";position:absolute;top:0;right:0;width:20px;height:100%;background:linear-gradient(90deg,transparent,rgb(255 255 255 / 50%));animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-20px)}to{transform:translate(20px)}}.contact-info{text-align:center;margin-top:20px;padding:20px;background:#e8f0fe;border-radius:var(--border-radius);position:relative}.contact-info:before{content:"💬";position:absolute;top:-10px;left:50%;transform:translate(-50%);background:#fff;padding:5px 10px;border-radius:50%;font-size:20px}@media (width <= 768px){.consent-container{margin:10px;border-radius:12px}.consent-header{padding:20px}.consent-header h1{font-size:24px}.consent-content,.consent-form{padding:20px}.consent-actions{flex-direction:column}.btn{width:100%;justify-content:center}.section{margin-bottom:20px}.highlight-box{margin:15px 0;padding:15px}}.dark-mode:root{--text-color: #e8eaed;--background-gradient: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%)}.dark-mode .consent-container{background:#2d2d2d;color:var(--text-color)}.dark-mode .section p,.dark-mode .section li{color:#e8eaed}.dark-mode .highlight-box{background:#3c3c3c;color:#e8eaed}.dark-mode .highlight-box.warning{background:#4a3728}.dark-mode .highlight-box.success{background:#2d4a2d}.dark-mode .consent-checkbox{background:#3c3c3c;border-color:#5f6368;color:#e8eaed}.dark-mode .consent-checkbox.checked{background:#1e3a5f;border-color:var(--primary-color)}.dark-mode .contact-info{background:#1e3a5f;color:#e8eaed}@media print{.progress-indicator,.consent-actions,.consent-container .btn{display:none!important}.consent-container{box-shadow:none;border:1px solid #ccc}.consent-header{background:#f5f5f5!important;color:#333!important}.section{page-break-inside:avoid}}.component,.panel,.card,.section{color:#111827}}@layer components{.gdpr-cookie-notice{position:fixed;left:20px;right:20px;z-index:9999;background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 2px 10px #0000001a;transform:translateY(100%);transition:transform .3s ease-in-out;font-family:var(--font-family-primary);max-width:400px;margin:0 auto}.gdpr-cookie-notice.gdpr-notice-bottom{bottom:20px;border-top:2px solid var(--color-primary)}.gdpr-cookie-notice.gdpr-notice-top{top:20px;transform:translateY(-100%);border-bottom:2px solid var(--color-primary)}.gdpr-cookie-notice.gdpr-notice-visible{transform:translateY(0)}.gdpr-notice-content{padding:16px;text-align:center}.gdpr-notice-text h3{margin:0 0 8px;color:var(--color-text-primary);font-size:16px;font-weight:600}.gdpr-notice-text p{margin:0 0 16px;color:var(--color-text-secondary);font-size:14px;line-height:1.4}.gdpr-cookie-types,.gdpr-cookie-types li{display:none}.gdpr-cookie-types li:before{display:none}.gdpr-cookie-types strong{display:none}.gdpr-notice-actions{margin-top:12px}.gdpr-cookie-preferences{display:none}.gdpr-buttons{display:flex;gap:8px;justify-content:center}.gdpr-btn{padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:center;white-space:nowrap}.gdpr-btn-secondary{background:var(--color-background-subtle);color:var(--color-text-secondary);border:1px solid var(--color-border)}.gdpr-btn-secondary:hover{background:var(--color-background-hover);transform:translateY(-1px)}.gdpr-checkbox-wrapper{display:flex;align-items:center;cursor:pointer;padding:var(--spacing-2);border-radius:var(--border-radius-sm);transition:background-color .2s ease;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.gdpr-checkbox-wrapper:hover{background:var(--color-background-hover)}.gdpr-checkbox-wrapper input[type=checkbox]{position:absolute;opacity:0;cursor:pointer}.gdpr-checkmark{height:18px;width:18px;background-color:var(--color-background);border:2px solid var(--color-border);border-radius:var(--border-radius-sm);margin-right:var(--spacing-3);position:relative;transition:all .2s ease;flex-shrink:0}.gdpr-checkbox-wrapper input[type=checkbox]:checked+.gdpr-checkmark{background-color:var(--color-primary);border-color:var(--color-primary)}.gdpr-checkbox-wrapper input[type=checkbox]:disabled+.gdpr-checkmark{background-color:var(--color-background-disabled);border-color:var(--color-border-disabled);opacity:.6}.gdpr-checkmark:after{content:"";position:absolute;display:none;left:5px;top:2px;width:4px;height:8px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.gdpr-checkbox-wrapper input[type=checkbox]:checked+.gdpr-checkmark:after{display:block}.gdpr-buttons{display:flex;flex-direction:column;gap:var(--spacing-2)}.gdpr-btn{padding:var(--spacing-3) var(--spacing-4);border:none;border-radius:var(--border-radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease;text-align:center;text-decoration:none;display:inline-block}.gdpr-btn-primary{background:var(--color-primary);color:var(--color-primary-contrast)}.gdpr-btn-primary:hover{background:var(--color-primary-hover);transform:translateY(-1px)}.gdpr-btn-secondary{background:var(--color-background);color:var(--color-text-primary);border:1px solid var(--color-border)}.gdpr-btn-secondary:hover{background:var(--color-background-hover);border-color:var(--color-border-hover)}.gdpr-notice-footer{grid-column:1 / -1;display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-4);padding-top:var(--spacing-4);border-top:1px solid var(--color-border-subtle)}.gdpr-privacy-link{color:var(--color-link);text-decoration:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.gdpr-privacy-link:hover{color:var(--color-link-hover);text-decoration:underline}.gdpr-close-btn{background:none;border:none;font-size:24px;color:var(--color-text-tertiary);cursor:pointer;padding:var(--spacing-1);border-radius:var(--border-radius-sm);width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.gdpr-close-btn:hover{background:var(--color-background-hover);color:var(--color-text-primary)}.gdpr-confirmation{position:fixed;bottom:var(--spacing-6);right:var(--spacing-6);z-index:10000;background:var(--color-success);color:var(--color-success-contrast);padding:var(--spacing-4) var(--spacing-6);border-radius:var(--border-radius-lg);box-shadow:0 4px 12px #00000026;transform:translate(100%);transition:transform .3s ease-in-out}.gdpr-confirmation.gdpr-confirmation-visible{transform:translate(0)}.gdpr-confirmation-content{display:flex;align-items:center;gap:var(--spacing-3);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.gdpr-confirmation-icon{font-size:var(--font-size-lg)}@media (max-width: 768px){.gdpr-cookie-notice{left:10px;right:10px;max-width:none}.gdpr-notice-content{padding:12px}.gdpr-buttons{flex-direction:column;gap:6px}.gdpr-btn{padding:10px 16px;font-size:14px}}@media (max-width: 480px){.gdpr-notice-content{padding:10px}.gdpr-notice-text h3{font-size:15px}.gdpr-notice-text p{font-size:13px}.gdpr-btn{padding:8px 12px;font-size:13px}}@media (prefers-contrast: high){.gdpr-cookie-notice{border-width:2px}.gdpr-checkmark{border-width:3px}.gdpr-btn{border-width:2px}}@media (prefers-reduced-motion: reduce){.gdpr-cookie-notice,.gdpr-confirmation,.gdpr-btn,.gdpr-checkbox-wrapper{transition:none}}}@layer overrides{body.dark-mode .gdpr-cookie-notice,body.theme-dark .gdpr-cookie-notice{background:var(--theme-bg-secondary);border-color:var(--theme-border);box-shadow:0 4px 20px #0000004d}body.dark-mode .gdpr-notice-text h3,body.theme-dark .gdpr-notice-text h3{color:var(--theme-text-primary)}body.dark-mode .gdpr-notice-text p,body.theme-dark .gdpr-notice-text p,body.dark-mode .gdpr-cookie-types li,body.theme-dark .gdpr-cookie-types li{color:var(--theme-text-secondary)}body.dark-mode .gdpr-cookie-types strong,body.theme-dark .gdpr-cookie-types strong{color:var(--theme-text-primary)}body.dark-mode .gdpr-cookie-preferences,body.theme-dark .gdpr-cookie-preferences{background:var(--theme-bg-tertiary);border-color:var(--theme-border-subtle)}body.dark-mode .gdpr-checkbox-wrapper:hover,body.theme-dark .gdpr-checkbox-wrapper:hover{background:var(--theme-bg-hover)}body.dark-mode .gdpr-checkmark,body.theme-dark .gdpr-checkmark{background:var(--theme-bg-primary);border-color:var(--theme-border)}body.dark-mode .gdpr-btn-secondary,body.theme-dark .gdpr-btn-secondary{background:var(--theme-bg-secondary);color:var(--theme-text-primary);border-color:var(--theme-border)}body.dark-mode .gdpr-btn-secondary:hover,body.theme-dark .gdpr-btn-secondary:hover{background:var(--theme-bg-hover);border-color:var(--theme-border-hover)}body.dark-mode .gdpr-privacy-link,body.theme-dark .gdpr-privacy-link{color:var(--theme-link)}body.dark-mode .gdpr-privacy-link:hover,body.theme-dark .gdpr-privacy-link:hover{color:var(--theme-link-hover)}body.dark-mode .gdpr-close-btn,body.theme-dark .gdpr-close-btn{color:var(--theme-text-tertiary)}body.dark-mode .gdpr-close-btn:hover,body.theme-dark .gdpr-close-btn:hover{background:var(--theme-bg-hover);color:var(--theme-text-primary)}}@layer components{.enhanced-donation-widget{background:#fff;border-radius:12px;padding:24px;box-shadow:0 4px 20px #0000001a;max-width:600px;margin:0 auto}.enhanced-donation-widget.inline{background:transparent;box-shadow:none;padding:16px}.enhanced-donation-widget.minimal{padding:16px;max-width:400px}.donation-header{text-align:center;margin-bottom:24px}.donation-title{font-size:1.5rem;font-weight:600;color:#2c3e50;margin:0 0 8px}.donation-subtitle{color:#6c757d;margin:0;font-size:1rem}.auth-status-banner{margin-bottom:20px}.auth-banner{padding:12px 16px;border-radius:8px;font-size:.9rem}.auth-banner.authenticated{background:linear-gradient(135deg,#d4edda,#c3e6cb);border:1px solid #b6d7a8;color:#155724}.auth-banner.not-authenticated{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border:1px solid #ffc107;color:#856404}.user-info{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.user-name{font-weight:600}.auth-status{font-size:.85rem}.auth-message{display:flex;align-items:center;gap:8px}.auth-icon{font-size:1.2em}.auth-link{color:#007bff;text-decoration:none;font-weight:500}.auth-link:hover{text-decoration:underline}.donation-type-selector{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px}.donation-type-btn{background:#fff;border:2px solid #e9ecef;border-radius:8px;padding:16px 12px;text-align:center;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;gap:4px}.donation-type-btn:hover{border-color:#007bff;background:#f8f9ff}.donation-type-btn.active{border-color:#007bff;background:linear-gradient(135deg,#e3f2fd,#bbdefb);color:#1565c0}.type-description{font-size:.8rem;color:#6c757d;font-weight:400}.donation-type-btn.active .type-description{color:#1976d2}.tier-selection{margin-bottom:24px}.tier-option{border:2px solid #e9ecef;border-radius:8px;padding:16px;margin-bottom:12px;cursor:pointer;transition:all .3s ease;background:#fff}.tier-option:hover{border-color:#007bff;background:#f8f9ff}.tier-option.selected{border-color:#007bff;background:linear-gradient(135deg,#e3f2fd,#f8f9ff)}.tier-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.tier-flair{font-size:1.5rem;margin-right:12px}.tier-name{font-weight:600;color:#2c3e50;flex:1}.tier-amount{font-size:1.2rem;font-weight:700;color:#007bff}.tier-description{color:#6c757d;font-size:.9rem}.donation-benefits{background:#f8f9fa;border-radius:8px;padding:16px;margin-bottom:24px}.donation-benefits h4{margin:0 0 12px;color:#2c3e50;font-size:1rem}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.benefit-item{display:flex;align-items:center;gap:8px;font-size:.9rem}.benefit-icon{font-size:1.2rem}.benefit-text{color:#495057}.benefit-item.authenticated-only{opacity:1;transition:opacity .3s ease}.benefit-item.authenticated-only.hidden{opacity:.5}.donation-actions{text-align:center}.donation-submit-btn{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff;border:none;border-radius:8px;padding:16px 32px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:8px;margin-bottom:12px}.donation-submit-btn:hover{background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-2px);box-shadow:0 4px 12px #007bff4d}.donation-submit-btn:disabled{background:#6c757d;cursor:not-allowed;transform:none;box-shadow:none}.btn-icon{font-size:1.2rem}.donation-security{color:#6c757d;font-size:.8rem;display:flex;align-items:center;justify-content:center;gap:4px}.recognition-prompt{background:linear-gradient(135deg,#d4edda,#c3e6cb);border:1px solid #b6d7a8;border-radius:8px;padding:20px;margin-top:20px;text-align:center}.recognition-prompt.hidden{display:none}.recognition-content h4{color:#155724;margin:0 0 12px}.recognition-content p{color:#155724;margin:0 0 16px}.recognition-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.recognition-actions .btn{padding:8px 16px;border-radius:6px;font-size:.9rem}.btn-outline{background:#fff;border:2px solid #007bff;color:#007bff}.btn-outline:hover{background:#007bff;color:#fff}.btn-text{background:transparent;border:none;color:#6c757d;text-decoration:underline}.btn-text:hover{color:#495057}.donation-accordion{max-width:600px;margin:30px auto;border:1px solid #dee2e6;border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #0000001a;background:#fff}.donation-accordion .accordion-item{border-bottom:none}.donation-accordion .accordion-header{display:flex;align-items:center;justify-content:center;padding:16px 20px;background:linear-gradient(135deg,#667eea,#764ba2);cursor:pointer;transition:all .3s ease;user-select:none;color:#fff;border:none;outline:none}.donation-accordion .accordion-header:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190);transform:translateY(-1px);box-shadow:0 6px 25px #00000026}.donation-accordion .accordion-header:focus{outline:3px solid rgb(102 126 234 / 30%);outline-offset:-3px}.donation-accordion .accordion-icon{margin-right:12px;font-size:14px;transition:transform .3s ease;color:#fff}.donation-accordion .accordion-header[aria-expanded=true] .accordion-icon{transform:rotate(90deg)}.donation-accordion .accordion-title{flex:1;font-weight:600;font-size:1.25rem;color:#fff;margin:0}.donation-accordion .accordion-subtitle{font-size:.9rem;color:#ffffffe5;font-weight:400;margin-left:8px}.donation-accordion .accordion-content{padding:0;background:#fff;overflow:hidden;max-height:0;transition:none}.loaded .donation-accordion .accordion-content:not(.no-transition){transition:max-height .4s ease,padding .4s ease}.donation-accordion .accordion-content:not(.collapsed){max-height:1000px;padding:0}.donation-accordion .accordion-content.collapsed{max-height:0;padding:0}.donation-accordion .accordion-content-inner{padding:20px}.donation-accordion .enhanced-donation-widget{background:transparent;border-radius:0;padding:0;box-shadow:none;margin:0}.donation-accordion .donation-header{display:none}.donation-accordion .tier-option:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000001a}.donation-accordion .donation-submit-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;padding:14px 28px;font-size:1.1rem;font-weight:600;transition:all .3s ease}.donation-accordion .donation-submit-btn:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190);transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}@media (width <= 768px){.donation-accordion{margin:20px 16px;border-radius:8px}.donation-accordion .accordion-header{padding:12px 16px}.donation-accordion .accordion-title{font-size:1.1rem}.donation-accordion .accordion-subtitle{font-size:.8rem}.donation-accordion .accordion-content-inner{padding:16px}}body.dark-mode .enhanced-donation-widget{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);box-shadow:0 4px 20px var(--theme-shadow-hover)}body.dark-mode .enhanced-donation-widget.inline{background:transparent;border:none;box-shadow:none}body.dark-mode .donation-title{color:var(--theme-text-primary)}body.dark-mode .donation-subtitle{color:var(--theme-text-secondary)}body.dark-mode .auth-banner{background:var(--theme-bg-primary);border:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .auth-banner.success{background:#4caf501a;border-color:var(--color-success);color:var(--color-success)}body.dark-mode .auth-banner.warning{background:#ffc1071a;border-color:var(--color-warning);color:var(--color-warning)}body.dark-mode .donation-amounts{background:var(--theme-bg-primary);border:1px solid var(--theme-border)}body.dark-mode .amount-option{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .amount-option:hover{background:var(--theme-bg-primary);border-color:var(--theme-border-hover)}body.dark-mode .amount-option.selected{background:#4a9eff1a;border-color:var(--color-primary);color:var(--color-primary)}body.dark-mode .custom-amount-input{background:var(--theme-bg-primary);color:var(--theme-text-primary);border:1px solid var(--theme-border)}body.dark-mode .custom-amount-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #4a9eff33}body.dark-mode .payment-methods{background:var(--theme-bg-primary);border:1px solid var(--theme-border)}body.dark-mode .payment-method{background:var(--theme-bg-secondary);border:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .payment-method:hover{background:var(--theme-bg-primary);border-color:var(--theme-border-hover)}body.dark-mode .payment-method.selected{background:#4a9eff1a;border-color:var(--color-primary)}body.dark-mode .payment-method-label{color:var(--theme-text-primary)}body.dark-mode .payment-method-description{color:var(--theme-text-secondary)}body.dark-mode .donation-summary{background:var(--theme-bg-primary);border:1px solid var(--theme-border)}body.dark-mode .summary-item{color:var(--theme-text-secondary);border-bottom:1px solid var(--theme-border)}body.dark-mode .summary-item-value{color:var(--theme-text-primary)}body.dark-mode .summary-total{color:var(--theme-text-primary);border-top:1px solid var(--theme-border)}body.dark-mode .donation-submit-btn{background:var(--color-primary);color:#fff;border:1px solid var(--color-primary)}body.dark-mode .donation-submit-btn:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}body.dark-mode .donation-submit-btn:disabled{background:var(--theme-bg-secondary);color:var(--theme-text-muted);border-color:var(--theme-border)}body.dark-mode .donation-cancel-btn{background:var(--theme-bg-secondary);color:var(--theme-text-primary);border:1px solid var(--theme-border)}body.dark-mode .donation-cancel-btn:hover{background:var(--theme-bg-primary);border-color:var(--theme-border-hover)}body.dark-mode .donation-progress{background:var(--theme-bg-primary);border:1px solid var(--theme-border)}body.dark-mode .progress-step{color:var(--theme-text-muted)}body.dark-mode .progress-step.active{color:var(--color-primary)}body.dark-mode .progress-step.completed{color:var(--color-success)}body.dark-mode .donation-accordion{background:var(--theme-bg-primary);border:1px solid var(--theme-border)}body.dark-mode .accordion-header{background:var(--theme-bg-secondary);border-bottom:1px solid var(--theme-border);color:var(--theme-text-primary)}body.dark-mode .accordion-header:hover{background:var(--theme-bg-primary)}body.dark-mode .donation-accordion .accordion-title{color:var(--theme-text-primary)}body.dark-mode .accordion-subtitle{color:var(--theme-text-secondary)}body.dark-mode .accordion-content{background:var(--theme-bg-secondary)}body.dark-mode .accordion-content-inner{color:var(--theme-text-primary)}body.dark-mode .btn-outline{background:var(--theme-bg-secondary);border-color:var(--color-primary);color:var(--color-primary)}body.dark-mode .btn-outline:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}body.dark-mode .btn-text{color:var(--theme-text-secondary)}body.dark-mode .btn-text:hover{color:var(--theme-text-primary)}}@layer components{.donor-flair-badge{display:inline-block;font-size:1em;line-height:1;margin:0 2px;vertical-align:middle;transition:all .3s ease}.donor-flair-badge.small{font-size:.8em}.donor-flair-badge.large{font-size:1.3em}.donor-flair-badge.floating{position:absolute;top:-8px;right:-8px;font-size:.7em;background:var(--color-background, #fff);border-radius:50%;padding:2px;box-shadow:0 2px 4px #0000001a}.donor-flair-badge[data-tier="3"]{filter:drop-shadow(0 0 2px rgb(255 215 0 / 50%))}.donor-flair-badge[data-tier="2"]{filter:drop-shadow(0 0 2px rgb(192 192 192 / 50%))}.donor-flair-badge[data-tier="1"]{filter:drop-shadow(0 0 2px rgb(205 127 50 / 50%))}.has-donor-flair{font-weight:500;position:relative}.has-donor-flair:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--flair-color, #007bff),transparent);opacity:.3}.appreciation-title{color:#2c3e50;margin:0 0 20px;font-size:1.3rem;display:flex;align-items:center;justify-content:center;gap:8px}.appreciation-icon{font-size:1.4em;animation:gentle-bounce 2s ease-in-out infinite}@keyframes gentle-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.donor-showcase{margin-bottom:24px}.donor-placeholder{padding:20px;color:var(--color-text-secondary, #6c757d);font-style:italic}.donor-tier-group{margin-bottom:24px;background:var(--color-background, #fff);border-radius:8px;padding:16px;box-shadow:0 2px 8px #0000000d}.tier-title{color:var(--color-text-primary, #2c3e50);margin:0 0 12px;font-size:1.1rem;display:flex;align-items:center;gap:8px}.tier-flair{font-size:1.3em}.donor-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.donor-card{background:var(--color-background-elevation-1, #f8f9fa);border-radius:6px;padding:12px;border-left:3px solid var(--flair-color, #007bff)}.donor-info{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.donor-name{font-weight:500;color:var(--color-text-primary, #2c3e50)}.donor-flair{font-size:1.1em}.donor-date{font-size:.8rem;color:#6c757d}.become-supporter{background:var(--color-background, #fff);border-radius:8px;padding:16px;margin-top:16px}.become-supporter p{margin:0 0 12px;color:var(--color-text-secondary, #495057)}.become-supporter-btn{background:linear-gradient(135deg,var(--color-primary, #007bff),var(--color-primary-dark, #0056b3));color:#fff;border:none;border-radius:6px;padding:10px 20px;font-weight:500;cursor:pointer;transition:all .3s ease}.become-supporter-btn:hover{background:linear-gradient(135deg,var(--color-primary-dark, #0056b3),var(--color-primary-darker, #004085));transform:translateY(-1px);box-shadow:0 4px 12px #007bff4d}.nav-link.has-donor-flair{position:relative}.nav-link.has-donor-flair:before{content:"";position:absolute;top:-2px;right:-2px;width:8px;height:8px;background:var(--flair-color, #007bff);border-radius:50%;border:2px solid var(--color-background, #fff);animation:pulse-flair 2s ease-in-out infinite}@keyframes pulse-flair{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}@media (prefers-reduced-motion: reduce){.appreciation-icon,.nav-link.has-donor-flair:before{animation:none!important}}.profile-header .has-donor-flair{font-size:1.2em;background:linear-gradient(135deg,var(--color-background-elevation-1, #f8f9fa),var(--color-background-elevation-2, #e9ecef));padding:8px 16px;border-radius:20px;display:inline-block;margin:8px 0}.comment-author.has-donor-flair,.forum-post-author.has-donor-flair{background:linear-gradient(135deg,#007bff1a,#0056b31a);border-radius:4px;padding:2px 6px}.donor-card[data-tier="3"],.donor-tier-group[data-tier="3"]{--flair-color: #ffd700}.donor-card[data-tier="2"],.donor-tier-group[data-tier="2"]{--flair-color: #c0c0c0}.donor-card[data-tier="1"],.donor-tier-group[data-tier="1"]{--flair-color: #cd7f32}@media (width <= 768px){.donor-appreciation-section{padding:12px;margin:16px auto;max-width:100%}.appreciation-title{font-size:1.1rem;flex-direction:column;gap:4px}.donor-list{grid-template-columns:1fr}.donor-card{padding:10px}.donor-info{flex-direction:column;align-items:flex-start;gap:4px}.profile-header .has-donor-flair{font-size:1em;padding:6px 12px}}.donor-flair-badge:focus-visible{outline:2px solid var(--color-primary, #007bff);outline-offset:2px}.has-donor-flair:focus-within{outline:2px solid var(--flair-color, var(--color-primary, #007bff));outline-offset:2px;border-radius:2px}@media (prefers-contrast: more){.donor-flair-badge{background:#fff;border:1px solid currentcolor;border-radius:50%;padding:2px}.has-donor-flair:after{opacity:1;height:2px}.donor-card{border:2px solid var(--flair-color, #007bff)}}@media print{.donor-flair-badge,.appreciation-icon{color:#000!important;text-shadow:none!important;filter:none!important}.donor-appreciation-section{background:#fff!important;border:1px solid #000!important}.become-supporter{display:none}}}@layer components{.donor-appreciation-section{padding:calc(var(--spacing-4) * 1.5) var(--spacing-4);background:linear-gradient(135deg,var(--theme-bg-secondary) 0%,var(--theme-bg-tertiary) 50%,var(--theme-bg-secondary) 100%);position:relative;overflow:hidden;max-width:1400px;margin:var(--space-6) auto;width:100%;font-size:calc(1rem * var(--font-scale, 1));border-radius:var(--radius-xl);text-align:center}#donor-appreciation{margin-left:auto;margin-right:auto}.donor-appreciation-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,color-mix(in srgb,var(--theme-accent-primary) 5%,transparent) 0%,transparent 50%);pointer-events:none}.donor-appreciation-section .main-section-header{text-align:center;margin-bottom:3rem;position:relative}.donor-appreciation-section .main-section-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--theme-text-primary);margin-bottom:var(--spacing-4);letter-spacing:-.02em}.donor-appreciation-section .main-section-description{font-size:1.25rem;color:var(--theme-text-secondary);max-width:600px;margin:0 auto;line-height:1.6}.donor-wall-container{max-width:1200px;margin:0 auto;position:relative;contain:layout paint style}.donor-wall-header{text-align:center;margin-bottom:2.5rem}.donor-wall-title{font-size:2rem;font-weight:600;color:var(--color-text-primary);margin-bottom:.5rem}.donor-wall-subtitle{font-size:1.1rem;color:var(--color-text-secondary);margin-bottom:2rem;max-width:500px;margin-left:auto;margin-right:auto}.donor-wall-filters{display:flex;justify-content:center;gap:.5rem;margin-bottom:2rem;flex-wrap:wrap}.donor-wall-filters .filter-btn{padding:.75rem 1.5rem;background:var(--theme-bg-secondary);border:2px solid var(--theme-accent-quaternary);border-radius:var(--radius-full);color:var(--color-text-secondary);font-weight:500;font-size:.95rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.donor-wall-filters .filter-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--theme-bg-primary) 20%,transparent),transparent);transition:left .5s}.donor-wall-filters .filter-btn:hover:before{left:100%}.donor-wall-filters .filter-btn:hover{border-color:var(--color-primary);color:var(--color-text-primary);transform:translateY(-2px);box-shadow:0 8px 25px color-mix(in srgb,var(--theme-accent-primary) 15%,transparent)}.donor-wall-filters .filter-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:0 6px 20px color-mix(in srgb,var(--theme-accent-primary) 30%,transparent)}.donor-wall-filters .filter-btn:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-accent-primary) 30%,transparent)}.donor-wall-filters .filter-btn:focus:not(:focus-visible){box-shadow:none}.donor-carousel-container{position:relative;margin-bottom:2rem;background:linear-gradient(145deg,color-mix(in srgb,var(--theme-bg-secondary) 90%,transparent),color-mix(in srgb,var(--theme-bg-primary) 95%,transparent),color-mix(in srgb,var(--theme-bg-secondary) 90%,transparent));border-radius:var(--radius-3xl);padding:2.5rem 2rem 2rem;box-shadow:0 8px 32px color-mix(in srgb,var(--theme-shadow) 6%,transparent),0 2px 8px color-mix(in srgb,var(--theme-shadow) 4%,transparent),inset 0 1px color-mix(in srgb,var(--theme-bg-primary) 80%,transparent);border:1px solid color-mix(in srgb,var(--theme-border-primary) 60%,transparent);backdrop-filter:blur(10px);overflow:hidden}.donor-carousel-container:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,color-mix(in srgb,var(--theme-accent-secondary) 3%,transparent) 0%,transparent 50%),radial-gradient(circle at 80% 80%,color-mix(in srgb,var(--theme-accent-tertiary) 3%,transparent) 0%,transparent 50%),linear-gradient(135deg,color-mix(in srgb,var(--theme-bg-primary) 10%,transparent) 0%,transparent 100%);pointer-events:none;z-index:var(--z-base)}.donor-carousel-container:after{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,color-mix(in srgb,var(--theme-accent-secondary) 60%,transparent),color-mix(in srgb,var(--theme-accent-tertiary) 60%,transparent),color-mix(in srgb,var(--theme-accent-secondary) 60%,transparent));border-radius:24px 24px 0 0;z-index:calc(var(--z-base) + 1)}.donor-carousel{display:flex;align-items:center;gap:1.5rem;position:relative;z-index:calc(var(--z-base) + 2)}.carousel-nav{background:linear-gradient(145deg,var(--theme-bg-primary) 0%,var(--theme-bg-secondary) 100%);border:1px solid var(--theme-border-primary);border-radius:var(--border-radius-lg);width:52px;height:52px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);color:var(--color-text-secondary);z-index:var(--z-docked);flex-shrink:0;box-shadow:0 4px 16px color-mix(in srgb,var(--theme-shadow) 8%,transparent),0 1px 4px color-mix(in srgb,var(--theme-shadow) 4%,transparent),inset 0 1px color-mix(in srgb,var(--theme-bg-primary) 90%,transparent);backdrop-filter:blur(8px);position:relative;overflow:hidden}.carousel-nav:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,color-mix(in srgb,var(--theme-accent-secondary) 10%,transparent) 0%,transparent 50%,color-mix(in srgb,var(--theme-accent-tertiary) 10%,transparent) 100%);opacity:0;transition:opacity .3s ease}.carousel-nav:disabled{opacity:.3;cursor:not-allowed;transform:none;background:color-mix(in srgb,var(--theme-bg-secondary) 50%,transparent);border-color:color-mix(in srgb,var(--theme-border-primary) 30%,transparent);pointer-events:none}.carousel-nav:hover:not(:disabled){background:linear-gradient(145deg,color-mix(in srgb,var(--theme-accent-secondary) 15%,transparent),color-mix(in srgb,var(--theme-accent-tertiary) 15%,transparent));border-color:color-mix(in srgb,var(--theme-accent-secondary) 40%,transparent);color:var(--color-text-primary);transform:translateY(-2px) scale(1.05);box-shadow:0 8px 24px color-mix(in srgb,var(--theme-shadow) 12%,transparent),0 4px 8px color-mix(in srgb,var(--theme-shadow) 6%,transparent),inset 0 1px color-mix(in srgb,var(--theme-bg-primary) 100%,transparent)}.carousel-nav:hover:not(:disabled):before{opacity:1}.carousel-nav svg{width:20px;height:20px}.donor-cards-track{flex:1;overflow:hidden;border-radius:20px;position:relative;background:linear-gradient(135deg,color-mix(in srgb,var(--theme-bg-primary) 40%,transparent),color-mix(in srgb,var(--theme-bg-secondary) 20%,transparent));backdrop-filter:blur(4px);border:1px solid color-mix(in srgb,var(--theme-bg-primary) 30%,transparent);min-height:360px;contain:layout paint style}.donor-cards-container{display:flex;gap:1.5rem;transition:transform .6s cubic-bezier(.4,0,.2,1);padding:1.5rem 1rem;will-change:transform;content-visibility:auto;contain-intrinsic-size:360px 1000px}.donor-card{background:linear-gradient(145deg,var(--theme-bg-primary) 0%,var(--theme-bg-secondary) 100%);border-radius:20px;padding:2rem;min-width:320px;width:320px;height:320px;flex-shrink:0;border:1px solid color-mix(in srgb,var(--theme-accent-primary) 12%,transparent);transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 4px 20px color-mix(in srgb,var(--theme-accent-primary) 8%,transparent),0 1px 3px color-mix(in srgb,var(--theme-shadow) 6%,transparent),inset 0 1px color-mix(in srgb,var(--theme-bg-primary) 80%,transparent);display:flex;flex-direction:column;align-items:center;justify-content:space-between;text-align:center}.donor-card.skeleton{position:relative;overflow:hidden}.skeleton-block,.skeleton-line{border-radius:12px;background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb 37%,#f3f4f6 63%);background-size:400% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite}.donor-card.skeleton .donor-avatar.skeleton-block{width:80px;height:80px}.donor-card.skeleton .donor-badge.skeleton-badge{position:absolute;bottom:-3px;right:-3px;width:24px;height:24px;border-radius:50%}.donor-card.skeleton .donor-info .skeleton-line.name{width:70%;height:16px;margin:12px auto 6px}.donor-card.skeleton .donor-info .skeleton-line.since{width:50%;height:12px;margin:6px auto 14px}.donor-card.skeleton .donor-reflection.skeleton-block{width:100%;height:120px}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:0 0}}.donor-card:before{content:"";position:absolute;inset:0;padding:2px;background:linear-gradient(135deg,#6366f1,#8b5cf6,#ec4899 60%,#f59e0b);border-radius:20px;opacity:0;transition:opacity .4s ease}.donor-card:after{content:"";position:absolute;inset:12px;background:linear-gradient(45deg,color-mix(in srgb,var(--theme-accent-primary) 6%,transparent),color-mix(in srgb,var(--theme-accent-secondary) 6%,transparent),color-mix(in srgb,var(--theme-accent-tertiary) 6%,transparent) 60%,color-mix(in srgb,var(--theme-accent-quaternary) 6%,transparent));border-radius:16px;opacity:0;transition:all .4s ease;pointer-events:none}.donor-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 12px 40px color-mix(in srgb,var(--theme-accent-primary) 15%,transparent),0 4px 12px color-mix(in srgb,var(--theme-accent-secondary) 10%,transparent),inset 0 1px color-mix(in srgb,var(--theme-bg-primary) 90%,transparent);border-color:color-mix(in srgb,var(--theme-accent-primary) 25%,transparent)}.donor-card:hover:before{opacity:1}.donor-card:hover:after{opacity:1}.donor-avatar{position:relative;width:80px;height:80px;margin:0 auto 1rem;border-radius:50%;overflow:hidden;border:3px solid color-mix(in srgb,var(--theme-accent-primary) 15%,transparent);box-shadow:0 4px 20px color-mix(in srgb,var(--theme-accent-primary) 12%,transparent),0 1px 3px color-mix(in srgb,var(--theme-shadow) 8%,transparent);transition:all .4s cubic-bezier(.4,0,.2,1);background:linear-gradient(145deg,var(--theme-bg-secondary) 0%,var(--theme-bg-primary) 100%);flex-shrink:0}.donor-avatar:hover{transform:scale(1.08);box-shadow:0 8px 30px color-mix(in srgb,var(--theme-accent-primary) 20%,transparent),0 2px 8px color-mix(in srgb,var(--theme-accent-secondary) 15%,transparent);border-color:color-mix(in srgb,var(--theme-accent-primary) 30%,transparent)}.donor-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;transition:transform .3s ease}.donor-avatar:hover img{transform:scale(1.1)}.anonymous-avatar{width:100%;height:100%;background:linear-gradient(135deg,#6366f1,#8b5cf6,#ec4899);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:2rem;position:relative;overflow:hidden}.anonymous-avatar:before{content:"";position:absolute;inset:0;background:linear-gradient(45deg,rgb(255 255 255 / 10%) 0%,transparent 50%,rgb(255 255 255 / 10%) 100%);border-radius:50%;animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%) rotate(45deg)}to{transform:translate(100%) rotate(45deg)}}.anonymous-avatar:after{content:"👤";font-size:1.8rem}.donor-badge{position:absolute;bottom:-3px;right:-3px;width:24px;height:24px;border-radius:50%;border:2px solid rgb(255 255 255 / 90%);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #00000026,0 0 0 1px #0000000d;transition:all .3s ease}.donor-badge:hover{transform:scale(1.1);box-shadow:0 4px 12px #0003,0 0 0 1px #0000001a}.donor-badge.gold-tier{background:linear-gradient(135deg,#fbbf24,#f59e0b,#d97706)}.donor-badge.silver-tier{background:linear-gradient(135deg,#e5e7eb,#9ca3af,#6b7280)}.donor-badge.bronze-tier{background:linear-gradient(135deg,#f97316,#ea580c,#c2410c)}.donor-badge:after{color:#fff;font-size:10px;font-weight:700}.donor-badge.gold-tier:after{content:"⭐"}.donor-badge.silver-tier:after{content:"✨"}.donor-badge.bronze-tier:after{content:"🏅"}.donor-info{flex:1;display:flex;flex-direction:column;justify-content:space-between;align-items:center;gap:1rem;text-align:center;width:100%}.donor-name{font-size:1.25rem;font-weight:700;color:#1e293b;margin:0;letter-spacing:.01em;line-height:1.3;transition:color .3s ease;text-align:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);background-clip:text;-webkit-text-fill-color:transparent}.donor-since{font-size:.8rem;color:#64748b;margin:0;font-weight:600;text-transform:uppercase;letter-spacing:.05em;opacity:.9;padding:.4rem 1rem;background:linear-gradient(135deg,#6366f114,#8b5cf614);border-radius:20px;border:1px solid rgb(99 102 241 / 15%);align-self:center;width:fit-content}.donor-reflection{background:linear-gradient(145deg,#f8fafccc,#f1f5f9e5);border-radius:16px;padding:1.25rem;border:1px solid rgb(99 102 241 / 12%);position:relative;box-shadow:0 2px 8px #6366f10f,inset 0 1px #fffc;transition:all .4s cubic-bezier(.4,0,.2,1);overflow:hidden;flex:1;margin:0;backdrop-filter:blur(10px);min-height:100px}.donor-reflection:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#6366f1,#8b5cf6,#ec4899);border-radius:16px 16px 0 0}.donor-reflection:hover{transform:translateY(-2px) scale(1.01);border-color:#6366f140;box-shadow:0 8px 25px #6366f11f,0 3px 10px #8b5cf614,inset 0 1px #ffffffe5;backdrop-filter:blur(15px)}.donor-reflection p{font-size:.8rem;color:var(--color-text-secondary);font-style:italic;margin:0;line-height:1.4;font-weight:500;text-align:left;position:relative;z-index:calc(var(--z-base) + 2);letter-spacing:.02em}.donor-reflection:after{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:linear-gradient(to bottom,var(--color-primary) 0%,var(--color-secondary) 100%);border-radius:12px 0 0 12px}.carousel-indicators{display:flex;justify-content:center;gap:.5rem;margin-top:1.5rem}.indicator{width:12px;height:12px;border-radius:50%;border:none;background:var(--theme-accent-quaternary);cursor:pointer;transition:all .3s ease}.indicator:hover{background:var(--theme-accent-secondary);transform:scale(1.2)}.indicator.active{background:var(--color-primary);transform:scale(1.3);box-shadow:0 2px 8px color-mix(in srgb,var(--theme-accent-primary) 40%,transparent)}.donor-stats-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin:3rem 0;padding:2.5rem 2rem;background:linear-gradient(145deg,color-mix(in srgb,var(--theme-bg-primary) 95%,transparent),color-mix(in srgb,var(--theme-bg-secondary) 90%,transparent));border-radius:20px;border:1px solid color-mix(in srgb,var(--theme-accent-quaternary) 60%,transparent);box-shadow:var(--theme-shadow);backdrop-filter:blur(8px);position:relative;overflow:hidden}.donor-stats-summary:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 25% 25%,color-mix(in srgb,var(--theme-accent-secondary) 2%,transparent) 0%,transparent 50%),radial-gradient(circle at 75% 75%,color-mix(in srgb,var(--theme-accent-tertiary) 2%,transparent) 0%,transparent 50%);pointer-events:none}.stat-item{text-align:center;position:relative;padding:1rem .5rem;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:12px;z-index:calc(var(--z-base) + 1)}.stat-item:hover{transform:translateY(-2px);background:#fff9;box-shadow:0 4px 16px #00000014}.stat-item:not(:last-child):after{content:"";position:absolute;right:-1rem;top:25%;bottom:25%;width:1px;background:linear-gradient(to bottom,transparent 0%,rgb(139 197 174 / 30%) 20%,rgb(205 159 128 / 30%) 50%,rgb(139 197 174 / 30%) 80%,transparent 100%)}.stat-number{display:block;font-size:2.5rem;font-weight:700;color:var(--color-primary);line-height:1;margin-bottom:.5rem;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));background-clip:text;-webkit-text-fill-color:transparent}.stat-label{font-size:.95rem;color:var(--color-text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.05em}.support-cta{text-align:center;background:var(--theme-bg-secondary);border-radius:20px;padding:3rem 2rem;border:2px solid var(--theme-accent-quaternary);position:relative;overflow:hidden}.support-cta:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,color-mix(in srgb,var(--theme-accent-primary) 3%,transparent) 0%,transparent 70%);pointer-events:none}.support-cta h3{font-size:2rem;font-weight:600;color:var(--theme-text-primary);margin-bottom:1rem;position:relative}.support-cta p{font-size:1.1rem;color:var(--theme-text-secondary);max-width:600px;margin:0 auto 2rem;line-height:1.6;position:relative}.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;position:relative}.cta-buttons .btn{padding:1rem 2rem;font-size:1.1rem;font-weight:600;border-radius:50px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;min-width:200px}.cta-buttons .btn-primary{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border:none;color:#fff;box-shadow:0 8px 25px color-mix(in srgb,var(--theme-accent-primary) 30%,transparent)}.cta-buttons .btn-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgb(255 255 255 / 20%),transparent);transition:left .5s}.cta-buttons .btn-primary:hover:before{left:100%}.cta-buttons .btn-primary:hover{transform:translateY(-3px);box-shadow:0 12px 35px color-mix(in srgb,var(--theme-accent-primary) 40%,transparent)}.cta-buttons .btn-outline{background:transparent;border:2px solid var(--color-border);color:var(--color-text-primary)}.cta-buttons .btn-outline:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff;transform:translateY(-3px);box-shadow:0 8px 25px color-mix(in srgb,var(--theme-accent-primary) 30%,transparent)}@media (width <= 1024px){.donor-stats-summary{gap:1.5rem;padding:2rem 1.5rem}.stat-item:not(:last-child):after{right:-.75rem}}@media (width >= 1440px){.donor-appreciation-section{padding:3rem;max-width:1600px}.donor-wall-container{max-width:1400px}.donor-carousel-container{padding:3rem 2.5rem}.donor-card{min-width:340px;width:340px;height:340px;padding:2.25rem}.donor-stats-summary{padding:3rem 2.5rem;gap:2.5rem}}@media (width <= 768px){.donor-appreciation-section{padding:calc(var(--container-padding, 12px) * 2) var(--container-padding, 12px)}#donor-appreciation{margin-left:auto;margin-right:auto;width:100%;max-width:calc(100% - 40px)}.donor-appreciation-section .main-section-title{font-size:calc(var(--font-size-2xl, 1.5rem) * var(--font-scale, .9))}.donor-wall-filters{gap:calc(var(--container-padding, 12px) * .15)}.donor-wall-filters .filter-btn{padding:calc(var(--container-padding, 12px) * .4) calc(var(--container-padding, 12px) * .8);font-size:calc(.9rem * var(--font-scale, .9))}.donor-carousel-container{padding:calc(var(--container-padding, 12px) * 1.5) calc(var(--container-padding, 12px) * 1.2) calc(var(--container-padding, 12px) * 1.2);border-radius:20px}.donor-carousel{gap:.75rem}.carousel-nav{width:44px;height:44px;border-radius:14px}.carousel-nav svg{width:18px;height:18px}.donor-cards-container{padding:1rem .5rem}.donor-card{min-width:280px;width:280px;height:300px;padding:1.5rem;border-radius:18px;flex-direction:column;align-items:center;text-align:center;gap:1rem;justify-content:space-between}.donor-avatar{width:70px;height:70px;margin:0 auto .75rem}.donor-info{align-items:center;text-align:center;gap:.5rem}.donor-name{font-size:1rem;text-align:center}.donor-since{font-size:.75rem;align-self:center}.donor-reflection{padding:1rem}.donor-reflection p{font-size:.75rem;text-align:center}.donor-stats-summary{grid-template-columns:1fr;gap:1.5rem;padding:2rem 1.5rem}.stat-item:not(:last-child):after{display:none}.stat-item:not(:last-child){border-bottom:1px solid color-mix(in srgb,var(--theme-accent-secondary) 20%,transparent);padding-bottom:1.5rem;margin-bottom:.5rem}.stat-number{font-size:2rem}.support-cta{padding:2rem 1rem}.support-cta h3{font-size:1.5rem}.cta-buttons{flex-direction:column;align-items:center}.cta-buttons .btn{width:100%;max-width:280px}}@media (width <= 480px){.donor-carousel-container{padding:calc(var(--container-padding, 8px) * 1.5) var(--container-padding, 8px);border-radius:calc(var(--container-padding, 8px) * 1.8)}#donor-appreciation{margin-left:auto;margin-right:auto;padding-left:calc(var(--container-padding, 8px) * .5);padding-right:calc(var(--container-padding, 8px) * .5)}.donor-cards-container{gap:var(--container-padding, 8px);padding:var(--container-padding, 8px) calc(var(--container-padding, 8px) * .25)}.donor-card{min-width:calc(240px * var(--font-scale, .85));width:calc(240px * var(--font-scale, .85));height:calc(280px * var(--font-scale, .85));padding:calc(var(--container-padding, 8px) * 1.25);border-radius:calc(var(--container-padding, 8px) * 1.6)}.donor-avatar{width:calc(60px * var(--font-scale, .85));height:calc(60px * var(--font-scale, .85));margin-bottom:calc(var(--container-padding, 8px) * .75)}.donor-badge{width:20px;height:20px;bottom:-2px;right:-2px}.donor-name{font-size:.95rem}.donor-since{font-size:.75rem}.donor-reflection{padding:.875rem}.donor-reflection p{font-size:.85rem}.carousel-nav{width:40px;height:40px;border-radius:12px}.carousel-nav svg{width:16px;height:16px}.donor-wall-filters{flex-direction:column;align-items:center}.donor-wall-filters .filter-btn{width:200px;border-radius:14px}}}@layer utilities{@keyframes slide-in-from-right{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.donor-card.animate-in{animation:slide-in-from-right .6s cubic-bezier(.4,0,.2,1) forwards}.donor-card.no-motion,.carousel-nav.no-motion,.filter-btn.no-motion,.btn.no-motion{transition:none}.donor-card.animate-in.no-motion{animation:none}.donor-card.high-contrast-border{border-width:3px}.donor-badge.high-contrast-border{border-width:4px}@media (prefers-contrast: more){.filter-btn.active{outline:3px solid var(--color-primary)}}.donor-card:focus-within{outline:3px solid var(--color-primary);outline-offset:2px}.carousel-nav:focus,.filter-btn:focus,.indicator:focus{outline:3px solid var(--color-primary);outline-offset:2px}@media (prefers-reduced-motion: reduce){.donor-card.animate-in,.skeleton-block,.skeleton-line{animation:none!important}.carousel-nav,.filter-btn,.btn,.donor-card,.donor-avatar,.donor-reflection{transition:none!important}}}@layer layout{:root{--container-padding: 16px;--font-scale: 1;--touch-target-min: 44px;--device-type: "unknown";--device-category: "unknown";--breakpoint-xs: 360px;--breakpoint-sm: 375px;--breakpoint-md: 390px;--breakpoint-lg: 393px;--breakpoint-xl: 428px;--breakpoint-tablet-sm: 768px;--breakpoint-tablet-md: 800px;--breakpoint-tablet-lg: 820px;--breakpoint-tablet-xl: 1024px;--breakpoint-laptop-sm: 1280px;--breakpoint-laptop-md: 1366px;--breakpoint-laptop-lg: 1500px;--breakpoint-laptop-xl: 1536px;--breakpoint-desktop-xl: 1920px;--breakpoint-desktop-2k: 2560px;--breakpoint-desktop-4k: 3840px}@media only screen and (width <= 767px){:root{--device-category: "mobile";--layout-type: "single-column";--nav-type: "bottom-nav";--sidebar-behavior: "overlay"}}@media only screen and (width <= 359px){:root{--device-type: "mobile-xxs";--container-padding: 8px;--font-scale: .8;--touch-target-min: 44px;--floating-tab-width: 180px;--floating-tab-height: 44px;--floating-tab-protrusion: 24px}}@media only screen and (width >= 360px) and (width <= 374px){:root{--device-type: "mobile-xs";--container-padding: 12px;--font-scale: .85;--touch-target-min: 44px;--floating-tab-width: 200px;--floating-tab-height: 48px;--floating-tab-protrusion: 30px}}@media only screen and (width >= 375px) and (width <= 389px){:root{--device-type: "mobile-sm";--container-padding: 14px;--font-scale: .9;--touch-target-min: 44px;--floating-tab-width: 210px;--floating-tab-height: 50px;--floating-tab-protrusion: 32px}}@media only screen and (width >= 390px) and (width <= 399px){:root{--device-type: "mobile-md";--container-padding: 16px;--font-scale: .95;--touch-target-min: 44px;--floating-tab-width: 220px;--floating-tab-height: 52px;--floating-tab-protrusion: 34px}}@media only screen and (width >= 400px) and (width <= 479px){:root{--device-type: "mobile-lg";--container-padding: 18px;--font-scale: 1;--touch-target-min: 44px;--floating-tab-width: 240px;--floating-tab-height: 54px;--floating-tab-protrusion: 36px}}@media only screen and (width >= 768px) and (width <= 1279px){:root{--device-category: "tablet";--layout-type: "two-column";--nav-type: "side-nav";--sidebar-behavior: "collapse"}}@media only screen and (width >= 768px) and (width <= 820px){:root{--device-type: "tablet-sm";--container-padding: 20px;--font-scale: 1.05;--touch-target-min: 44px;--floating-tab-width: 260px;--floating-tab-height: 58px;--floating-tab-protrusion: 38px}}@media only screen and (width >= 821px) and (width <= 1023px){:root{--device-type: "tablet-md";--container-padding: 24px;--font-scale: 1.1;--touch-target-min: 44px;--floating-tab-width: 270px;--floating-tab-height: 59px;--floating-tab-protrusion: 40px}}@media only screen and (width >= 1024px) and (width <= 1279px){:root{--device-type: "tablet-lg";--container-padding: 28px;--font-scale: 1.15;--touch-target-min: 44px;--floating-tab-width: 280px;--floating-tab-height: 60px;--floating-tab-protrusion: 42px}}@media only screen and (width >= 1280px) and (width <= 1919px){:root{--device-category: "laptop";--layout-type: "multi-column";--nav-type: "top-nav";--sidebar-behavior: "persistent"}}@media only screen and (width >= 1280px) and (width <= 1366px){:root{--device-type: "laptop-sm";--container-padding: 32px;--font-scale: 1;--touch-target-min: 40px;--floating-tab-width: 300px;--floating-tab-height: 62px;--floating-tab-protrusion: 44px}}@media only screen and (width >= 1367px) and (width <= 1535px){:root{--device-type: "laptop-md";--container-padding: 36px;--font-scale: 1.05;--touch-target-min: 40px;--floating-tab-width: 310px;--floating-tab-height: 63px;--floating-tab-protrusion: 46px}}@media only screen and (width >= 1536px) and (width <= 1919px){:root{--device-type: "laptop-lg";--container-padding: 40px;--font-scale: 1.1;--touch-target-min: 40px;--floating-tab-width: 320px;--floating-tab-height: 64px;--floating-tab-protrusion: 48px}}@media only screen and (width >= 1920px){:root{--device-category: "desktop";--layout-type: "wide-multi-column";--nav-type: "mega-nav";--sidebar-behavior: "dual-sidebar"}}@media only screen and (width >= 1920px) and (width <= 2559px){:root{--device-type: "desktop-fhd";--container-padding: 48px;--font-scale: 1.15;--touch-target-min: 40px;--floating-tab-width: 340px;--floating-tab-height: 66px;--floating-tab-protrusion: 50px}}@media only screen and (width >= 2560px) and (width <= 3839px){:root{--device-type: "desktop-2k";--container-padding: 56px;--font-scale: 1.25;--touch-target-min: 40px;--floating-tab-width: 360px;--floating-tab-height: 68px;--floating-tab-protrusion: 52px}}@media only screen and (width >= 3840px){:root{--device-type: "desktop-4k";--container-padding: 64px;--font-scale: 1.4;--touch-target-min: 44px;--floating-tab-width: 400px;--floating-tab-height: 72px;--floating-tab-protrusion: 54px}}@media only screen and (orientation: portrait){:root{--orientation: "portrait";--header-height: 80px;--header-h: 80px;--footer-height: 80px}}@media only screen and (orientation: landscape){:root{--orientation: "landscape";--header-height: 80px;--header-h: 80px;--footer-height: 64px}}@media (prefers-contrast: more){:root{--accessibility-mode: "high-contrast";--border-width: 2px;--focus-ring-width: 4px}}@media (prefers-reduced-motion: reduce){:root{--animation-duration: 0ms;--transition-duration: 0ms;--accessibility-mode: "reduced-motion"}}@media (prefers-reduced-data: reduce){:root{--data-saver-mode: "enabled";--image-quality: "low";--animation-enabled: "false"}}@media (hover: hover) and (pointer: fine){:root{--input-mode: "fine";--hover-enabled: true}}@media (hover: none) and (pointer: coarse){:root{--input-mode: "coarse";--hover-enabled: false}}@media print{:root{--device-type: "print";--color-scheme: "light"}.floating-tab-link,.floating-tour-tab-link,.floating-surprise-tab-link,.floating-action-tab,.floating-surprise-tab,.floating-tour-tab,nav,.sidebar,.modal,.tooltip{display:none}}}@layer utilities{.floating-tab-responsive{width:var(--floating-tab-width);height:var(--floating-tab-height);transform:translate(calc(100% - var(--floating-tab-protrusion)))}.layout-container-responsive{padding-left:var(--container-padding);padding-right:var(--container-padding);max-width:100vw;box-sizing:border-box;margin-left:auto;margin-right:auto}.layout-container-tight{padding-left:calc(var(--container-padding) * .75);padding-right:calc(var(--container-padding) * .75)}.layout-container-loose{padding-left:calc(var(--container-padding) * 1.5);padding-right:calc(var(--container-padding) * 1.5)}.text-responsive{font-size:calc(1rem * var(--font-scale))}.text-responsive-small{font-size:calc(.875rem * var(--font-scale))}.text-responsive-large{font-size:calc(1.125rem * var(--font-scale))}.text-responsive-heading{font-size:calc(1.5rem * var(--font-scale));line-height:calc(1.2 * var(--font-scale, 1))}.text-responsive-h1{font-size:calc(2.25rem * var(--font-scale));line-height:calc(1.1 * var(--font-scale, 1))}.text-responsive-h2{font-size:calc(1.875rem * var(--font-scale));line-height:calc(1.15 * var(--font-scale, 1))}.text-responsive-h3{font-size:calc(1.5rem * var(--font-scale));line-height:calc(1.2 * var(--font-scale, 1))}.text-responsive-h4{font-size:calc(1.25rem * var(--font-scale));line-height:calc(1.25 * var(--font-scale, 1))}.text-responsive-body{font-size:calc(1rem * var(--font-scale));line-height:calc(1.5 * var(--font-scale, 1))}.text-responsive-caption{font-size:calc(.75rem * var(--font-scale));line-height:calc(1.4 * var(--font-scale, 1))}@media only screen and (width <= 360px){.text-responsive-heading{font-size:calc(1.25rem * var(--font-scale))}}.touch-target{min-height:var(--touch-target-min);min-width:var(--touch-target-min)}.flex{display:flex}.inline-flex{display:inline-flex}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-row-reverse{flex-direction:row-reverse}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.content-start{align-content:flex-start}.content-end{align-content:flex-end}.content-center{align-content:center}.content-between{align-content:space-between}.content-around{align-content:space-around}.content-evenly{align-content:space-evenly}.self-auto{align-self:auto}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.self-stretch{align-self:stretch}.self-baseline{align-self:baseline}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-initial{flex:0 1 auto}.flex-none{flex:none}.grow{flex-grow:1}.grow-0{flex-grow:0}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.gap-xs{gap:calc(var(--container-padding) * .25)}.gap-sm{gap:calc(var(--container-padding) * .5)}.gap-md{gap:var(--container-padding)}.gap-lg{gap:calc(var(--container-padding) * 1.5)}.gap-xl{gap:calc(var(--container-padding) * 2)}@media only screen and (width <= 767px){.mobile\:flex-col{flex-direction:column}.mobile\:flex-wrap{flex-wrap:wrap}.mobile\:justify-center{justify-content:center}.mobile\:items-center{align-items:center}}@media only screen and (width >= 768px) and (width <= 1279px){.tablet\:flex-row{flex-direction:row}.tablet\:justify-between{justify-content:space-between}}@media only screen and (width >= 1280px){.desktop\:flex-row{flex-direction:row}.desktop\:justify-start{justify-content:flex-start}}.mobile-hide{display:block}.mobile-show{display:none}.tablet-hide{display:block}.tablet-show{display:none}.desktop-hide{display:block}.desktop-show{display:none}@media only screen and (width <= 767px){.mobile-hide{display:none}.mobile-show{display:block}.mobile\:text-center{text-align:center}.mobile\:full-width{width:100%}.mobile\:padding-sm{padding:var(--spacing-3)}.mobile\:margin-auto{margin:0 auto}}@media only screen and (width >= 768px) and (width <= 1279px){.tablet-hide{display:none}.tablet-show{display:block}.tablet\:two-column{column-count:2;column-gap:var(--spacing-6)}}@media only screen and (width >= 1280px){.desktop-hide{display:none}.desktop-show{display:block}.desktop\:three-column{column-count:3;column-gap:var(--spacing-8)}}@media (prefers-reduced-motion: reduce){.respect-motion{animation-duration:.01ms;animation-iteration-count:1;transition-duration:.01ms;scroll-behavior:auto}.no-motion{animation:none;transition:none}}@media (prefers-contrast: more){.high-contrast-border{border:2px solid var(--theme-border-focus, currentColor)}.high-contrast-text{color:var(--theme-text-primary, CanvasText);background:var(--theme-bg-primary, Canvas)}.high-contrast-focus:focus{outline:3px solid var(--theme-border-focus, Highlight);outline-offset:2px}}@media print{.print-hide{display:none}.print-show{display:block}.print-page-break{page-break-after:always}.print-no-break{page-break-inside:avoid}.print-black-text{color:var(--theme-text-primary, black)}.print-white-bg{background:var(--theme-bg-primary, white)}}@media (hover: none) and (pointer: coarse){.touch-larger{min-height:44px;min-width:44px}.touch-spacing{margin:8px}.touch-no-hover:hover{background:initial;transform:none;box-shadow:initial}}@media only screen and (width <= 320px){.layout-container-responsive{padding-left:6px;padding-right:6px}.layout-container-tight{padding-left:4px;padding-right:4px}}}:root{--floating-tab-width: 280px;--floating-tab-height: 60px;--floating-tab-protrusion: 90px;--container-padding: 20px;--font-scale: 1}.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,.floating-surprise-tab-link,.floating-tour-tab-link{z-index:var(--z-floating-tabs)}@layer components{.no-flash-initially{display:none!important}}.modal-backdrop~.floating-action-tab-link,.modal-backdrop~.floating-surprise-tab-link,.modal-backdrop~.floating-tour-tab-link{z-index:var(--z-dropdown)}.modal-backdrop:has(.pre-launch-modal)~.floating-action-tab-link,.modal-backdrop:has(.pre-launch-modal)~.floating-surprise-tab-link,.modal-backdrop:has(.pre-launch-modal)~.floating-tour-tab-link{z-index:500!important}body:has(.pre-launch-modal.visible) .floating-action-tab-link,body:has(.pre-launch-modal) .floating-action-tab-link,body:has(.pre-launch-modal.visible) .floating-surprise-tab-link,body:has(.pre-launch-modal) .floating-surprise-tab-link,body:has(.pre-launch-modal.visible) .floating-tour-tab-link,body:has(.pre-launch-modal) .floating-tour-tab-link{z-index:500!important}.floating-tab-link{position:fixed;top:50%;right:0;transform:translateY(-50%);z-index:var(--z-dropdown);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-action-tab-icon{flex-shrink:0;width:24px;height:24px;margin-right:16px;display:flex;align-items:center;justify-content:center;font-size:20px;line-height:1}.floating-action-tab-icon:before{content:"💖";font-size:20px;display:block;filter:drop-shadow(0 1px 2px rgb(0 0 0 / 10%));transition:all .3s ease}.floating-action-tab-heart-icon{width:24px;height:24px;color:#fffffff2;filter:drop-shadow(0 1px 2px rgb(0 0 0 / 10%));transition:all .3s ease;display:flex!important;align-items:center;justify-content:center;font-size:20px;line-height:1}svg.heart-icon,svg.floating-action-tab-heart-icon{display:block!important;visibility:visible!important;opacity:1!important}.floating-action-tab:hover .floating-action-tab-heart-icon{transform:scale(1.1);color:#ff6b6b;filter:drop-shadow(0 2px 4px rgb(0 0 0 / 20%))}.floating-action-tab:hover .floating-action-tab-icon:before{transform:scale(1.1);filter:drop-shadow(0 2px 4px rgb(0 0 0 / 20%)) brightness(1.1)}.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)}.floating-action-tab-arrow-icon{width:16px;height:16px;color:#ffffffe5;transition:transform .2s ease;display:inline-block!important}svg.arrow-icon,svg.floating-action-tab-arrow-icon{display:block!important;visibility:visible!important;opacity:1!important}.floating-action-tab:hover .floating-action-tab-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:var(--z-floating-tabs);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;opacity:0;transform:translate(20px);transition:all .3s cubic-bezier(.4,0,.2,1)}.floating-surprise-tab.expanded .floating-surprise-tab-text{opacity:1;transform:translate(0)}.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;z-index:1;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:var(--z-floating-tabs);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;opacity:0;transform:translate(20px);transition:all .3s cubic-bezier(.4,0,.2,1)}.floating-tour-tab.expanded .floating-tour-tab-text{opacity:1;transform:translate(0)}.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 only screen and (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)}}@keyframes tab-auto-retract{0%,70%{transform:translate(0)}to{transform:translate(calc(100% - var(--floating-tab-protrusion, 90px)))}}.floating-surprise-tab.expanded.auto-collapse{animation:tab-auto-retract var(--tab-auto-retract-duration, 3.2s) ease-in-out forwards;animation-delay:var(--tab-auto-retract-delay, .4s)}.floating-surprise-tab.expanded.auto-collapse:hover,.floating-surprise-tab.expanded.auto-collapse:active,.floating-surprise-tab.expanded.auto-collapse:focus-within{animation-play-state:paused}.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)"}.no-motion .floating-action-tab,.no-motion .floating-action-tab .text,.no-motion .floating-action-tab .icon,.no-motion .floating-action-tab:before,.no-motion .floating-surprise-tab,.no-motion .floating-surprise-tab-arrow,.no-motion .floating-surprise-tab-ripple,.no-motion .floating-surprise-tab-icon,.no-motion .floating-tour-tab,.no-motion .floating-tour-tab-arrow,.no-motion .floating-tour-tab-icon,.no-motion .floating-tab-text,.no-motion .floating-tab-arrow,.no-motion .floating-tab-ripple,.no-motion .floating-action-tab-heart-icon,.no-motion .floating-action-tab-arrow-icon{transition:none!important;animation:none!important}.no-motion .floating-action-tab:hover{transform:translateY(0)}.no-motion .floating-action-tab.expanded .icon{transform:none}.high-contrast-border .floating-action-tab,.high-contrast-border .floating-surprise-tab,.high-contrast-border .floating-tour-tab{border:2px solid #fff}.high-contrast-border .tab-title,.high-contrast-border .tab-subtitle,.high-contrast-border .floating-action-tab-heart-icon,.high-contrast-border .floating-action-tab-arrow-icon,.high-contrast-border .surprise-tab-title,.high-contrast-border .surprise-tab-subtitle,.high-contrast-border .tour-tab-title,.high-contrast-border .tour-tab-subtitle{color:#fff;text-shadow:none}.high-contrast-border .floating-tab-ripple,.high-contrast-border .floating-surprise-tab-ripple,.high-contrast-border .floating-tour-tab-ripple{background:#ffffff7f}.high-contrast-border .floating-action-tab.component-style{border:2px solid var(--color-white);background:var(--color-primary)}.high-contrast-border .floating-action-tab.component-style:hover{border-color:var(--color-primary);background:var(--color-white);color:var(--color-primary)}.high-contrast-border .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 .floating-action-tab-heart-icon,body.dark-mode .floating-action-tab:hover .floating-action-tab-heart-icon,body.dark-mode .tab-title{color:var(--theme-text-on-accent)}body.dark-mode .tab-subtitle{color:#ffffffd9}body.dark-mode .floating-action-tab-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)}.print-hide.floating-tab-link,.print-hide.floating-action-tab-link,.print-hide.floating-surprise-tab-link,.print-hide.floating-tour-tab-link{display:none!important}@layer components;@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:fixed;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:17000;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}.coach-mark-btn.primary:focus-visible{outline:2px solid #ffffff;outline-offset:2px;box-shadow:0 0 0 3px #ffffff4d}.coach-mark-btn.secondary:focus-visible{outline:2px solid #1a73e8;outline-offset:2px;box-shadow:0 0 0 3px #1a73e81a}.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}}.scenario-reflection-modal .onboarding-click-highlight{box-shadow:none!important;animation:onboarding-click-pulse-reflection 1.3s ease-in-out infinite;transform-origin:center center;will-change:transform}@keyframes onboarding-click-pulse-reflection{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@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 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:17000!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}.modal-backdrop:has(~.onboarding-spotlight),.pre-launch-modal-backdrop:has(~.onboarding-spotlight){opacity:0!important;background:transparent!important}.modal-backdrop.backdrop-transparent,.pre-launch-modal-backdrop.backdrop-transparent{opacity:0!important;background:transparent!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{.scenario-hero{background:linear-gradient(135deg,var(--theme-accent-primary) 0%,color-mix(in oklab,var(--theme-accent-primary),#000 20%) 100%);color:var(--theme-text-on-accent);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(--theme-bg-primary);border-radius:var(--radius-lg);transition:all .3s ease}@media (width <= 768px){.categories-section{padding:var(--spacing-4);gap:var(--spacing-6)}}@media (width <= 480px){.categories-section{padding:var(--spacing-3);gap:var(--spacing-4);border-radius:var(--radius-md)}}.scenarios-grid{gap:var(--spacing-6);padding-bottom:var(--spacing-2)}@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)}@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:opacity .18s ease,box-shadow .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:opacity .18s ease,transform .18s ease;transform-style:preserve-3d;backface-visibility:hidden;will-change:opacity,transform}.scenario-card-wrapper:hover{transform:translateY(-2px);box-shadow:0 8px 32px #0000001f}.scenarios-grid[data-view=scenario] .scenario-hover-category-header .category-description,.scenarios-grid[data-view=scenario] .scenario-hover-category-header .category-difficulty,.scenarios-grid[data-view=scenario] .scenario-hover-category-header .category-time{display:none!important}.scenario-card-wrapper.is-filtered-out,.scenario-card-wrapper[aria-hidden=true]{opacity:0;transform:scale(.98);pointer-events:none}.scenario-card-wrapper.is-entering{opacity:0;transform:scale(.98)}.scenario-card-wrapper.is-entering.is-visible{opacity:1;transform:none}.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);flex-wrap:wrap;padding:var(--spacing-4) var(--spacing-6);margin-bottom:var(--spacing-6);background:var(--theme-bg-secondary);border:1px solid var(--theme-border-primary);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].is-updating{opacity:.92}@media (width >= 1024px){.scenario-controls-toolbar{top:calc(var(--header-h, 80px) + var(--spacing-2))}}.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;flex-wrap:wrap}.scenario-controls-toolbar .sort-container{position:relative;display:inline-flex;isolation:isolate;--dropdown-offset: var(--spacing-2)}.scenario-controls-toolbar .clear-all-container{display:inline-flex;gap:var(--spacing-2)}.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 .controls-group{gap:var(--spacing-3)}.scenario-controls-toolbar .filter-container,.scenario-controls-toolbar .sort-container{display:inline-flex!important;min-height:40px}.scenario-controls-toolbar .search-input{background:var(--theme-bg-primary);border:1px solid var(--theme-border-secondary);color:var(--theme-text-primary);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(--theme-border-focus);box-shadow:0 0 0 3px var(--theme-shadow-focus),0 1px 3px #0000001a;outline:none;transform:translateY(-1px)}.scenario-controls-toolbar .search-input::placeholder{color:var(--theme-text-tertiary);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(--theme-border-secondary);border-radius:var(--radius-md);background:var(--theme-bg-primary);color:var(--theme-text-primary);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 rgb(0 0 0 / 2%)}.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(--theme-border-error);border-radius:var(--radius-md);background:var(--theme-bg-primary);color:var(--theme-accent-error);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 rgb(0 0 0 / 2%)}@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%}}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:var(--spacing-3);width:18px;height:18px;color:var(--theme-text-tertiary);z-index:2;pointer-events:none}.search-clear{position:absolute;right:var(--spacing-3);width:18px;height:18px;color:var(--theme-text-tertiary);background:none;border:none;cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-base);z-index:2}.search-clear:hover{color:var(--theme-text-secondary);background:var(--theme-bg-secondary)}.search-autocomplete-dropdown{position:absolute;top:100%;left:0;right:0;z-index:1000;background:var(--theme-bg-primary);border:1px solid var(--theme-border-primary);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(--theme-border-secondary)}.autocomplete-section:last-child{border-bottom:none}.autocomplete-section-header{padding:var(--spacing-2) var(--spacing-3);background:var(--theme-bg-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--theme-text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--theme-border-secondary)}.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(--theme-text-tertiary);font-style:italic}.search-autocomplete-item{padding:var(--spacing-3);cursor:pointer;transition:background-color var(--transition-fast);border-bottom:1px solid var(--theme-border-primary)}.search-autocomplete-item:last-child{border-bottom:none}.search-autocomplete-item:hover{background:var(--theme-bg-secondary)}.search-autocomplete-item.highlighted{background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 85%);color:var(--theme-accent-primary)}.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(--theme-border-primary)}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item:hover{background:var(--theme-bg-secondary)}.autocomplete-item.highlighted{background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 85%);color:var(--theme-accent-primary)}.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(--theme-bg-tertiary);color:var(--theme-text-secondary);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(--theme-text-primary);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(--theme-text-tertiary);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(--theme-bg-secondary);border-radius:var(--radius-md);border:1px solid var(--theme-border-primary);grid-column:1 / -1;order:0}.count-text{font-size:var(--font-size-sm);color:var(--theme-text-secondary);margin:0;font-weight:var(--font-weight-medium);text-align:center}.count-number{font-weight:var(--font-weight-bold);color:var(--theme-accent-primary)}.basic-fallback{text-align:center;padding:var(--spacing-20) var(--spacing-6);background:var(--theme-bg-secondary);border-radius:var(--radius-xl);border:2px dashed var(--theme-border-secondary);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(--theme-text-primary);margin-bottom:var(--spacing-4)}.basic-fallback p{font-size:var(--font-size-lg);color:var(--theme-text-secondary);margin-bottom:var(--spacing-8);line-height:var(--line-height-relaxed)}.basic-fallback .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}.basic-fallback .btn:focus{outline:none;box-shadow:0 0 0 3px var(--theme-shadow-focus)}.basic-fallback .btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.basic-fallback .btn-primary{background:var(--theme-accent-primary);color:var(--theme-text-on-accent);border-color:var(--theme-accent-primary)}.basic-fallback .btn-primary:hover{background:color-mix(in oklab,var(--theme-accent-primary),#000 10%);border-color:color-mix(in oklab,var(--theme-accent-primary),#000 10%);transform:translateY(-1px);box-shadow:0 4px 12px #00000040}.basic-fallback .btn-primary:active{transform:translateY(0);box-shadow:0 2px 4px #00000040}.filter-section{background:var(--theme-bg-secondary);padding:var(--spacing-12) 0;border-bottom:1px solid var(--theme-border-primary)}.filter-section .filter-container,.filter-section .sort-container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-6);position:relative}.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(--theme-text-primary);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(--theme-bg-primary);border-radius:var(--radius-xl);padding:var(--spacing-8);box-shadow:0 4px 6px #0000000d;border:1px solid var(--theme-border-primary);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-section .filter-btn,.filter-section .sort-btn{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-5);border:1px solid var(--theme-border-secondary);border-radius:var(--radius-md);background:var(--theme-bg-primary);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(--theme-text-primary);box-shadow:0 1px 3px #00000014,0 1px 2px #0000000f;text-shadow:0 .5px 1px rgb(0 0 0 / 2%)}.filter-section .sort-btn{font-weight:575;color:var(--theme-text-primary);border:1px solid var(--theme-border-secondary);background:var(--theme-bg-primary);text-shadow:0 .5px 1px rgb(0 0 0 / 4%);letter-spacing:-.005em}.filter-btn:hover,.sort-btn:hover{border-color:var(--theme-border-interactive);transform:translateY(-1px);background:var(--theme-bg-secondary);box-shadow:0 4px 12px #0000001f,0 2px 4px #00000014;color:var(--theme-text-primary);text-shadow:0 .5px 1px rgb(0 0 0 / 6%)}.sort-btn:hover{border-color:var(--theme-border-interactive);color:var(--theme-text-primary);background:var(--theme-bg-secondary);box-shadow:0 6px 16px #00000026,0 3px 6px #0000001a;text-shadow:0 1px 2px rgb(0 0 0 / 8%)}.filter-btn:focus,.sort-btn:focus{outline:none;border-color:var(--theme-border-focus);box-shadow:0 0 0 3px var(--color-primary-light),0 4px 12px #0000001f,0 2px 4px #00000014;color:var(--theme-text-primary);text-shadow:0 .5px 1px rgb(0 0 0 / 6%)}.sort-btn:focus{box-shadow:0 0 0 3px #3b82f626,0 4px 16px #00000026,0 2px 6px #0000001a;color:var(--theme-text-primary);text-shadow:0 .5px 1px rgb(0 0 0 / 8%)}.filter-btn[aria-expanded=true],.sort-btn[aria-expanded=true]{border-color:var(--theme-accent-primary);transform:translateY(1px);background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 80%);color:var(--theme-text-on-accent);box-shadow:0 2px 8px #3b82f633,0 1px 3px #0000001f;text-shadow:0 .5px 1px rgb(59 130 246 / 10%)}.sort-btn[aria-expanded=true]{border-color:color-mix(in oklab,var(--theme-accent-primary),#000 15%);color:var(--theme-text-on-accent);background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 75%);box-shadow:0 2px 10px #3b82f640,0 1px 4px #00000026;text-shadow:0 .5px 1px rgb(59 130 246 / 15%)}.filter-icon,.sort-icon{width:16px;height:16px;color:var(--theme-text-tertiary);transition:transform var(--transition-fast)}.filter-btn[aria-expanded=true] .filter-icon,.sort-btn[aria-expanded=true] .sort-icon{transform:rotate(180deg)}.scenario-controls-toolbar .dropdown-arrow{display:inline-block;margin-inline-start:var(--spacing-1);transition:transform var(--transition-fast);transform-origin:center}.filter-btn[aria-expanded=true] .dropdown-arrow,.sort-btn[aria-expanded=true] .dropdown-arrow{transform:rotate(180deg)}.filter-dropdown,.sort-dropdown{position:absolute;top:calc(100% + var(--dropdown-offset, 0px));inset-inline-end:0;z-index:100;background:var(--theme-bg-primary);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:hover,.sort-dropdown:hover{display:block!important;opacity:1!important;visibility:visible!important;transform:translateY(0);pointer-events:auto!important}.filter-btn[aria-expanded=true]+.filter-dropdown,.sort-btn[aria-expanded=true]+.sort-dropdown,.filter-dropdown.open,.sort-dropdown.open{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,.scenario-controls-toolbar .sort-container:hover .sort-dropdown{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(--theme-accent-primary);background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 80%);color:var(--theme-accent-primary)}.scenario-controls-toolbar img,.scenario-controls-toolbar video,.scenario-controls-toolbar canvas,.scenario-controls-toolbar iframe{max-width:100%;height:auto}.scenario-controls-toolbar svg,.scenario-controls-toolbar .toolbar-btn svg{width:1.125em;height:1.125em;flex:0 0 auto;color:currentColor}.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( --theme-text-primary );text-shadow:0 .5px .5px rgb(0 0 0 / 1.5%);background:transparent}.sort-option{font-weight:475;color:var(--theme-text-primary);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-color:var(--theme-bg-secondary);color:var(--theme-text-primary);transform:translate(2px);box-shadow:0 1px 3px #0000000d;text-shadow:0 .5px 1px rgb(0 0 0 / 2.5%)}.sort-option:hover{color:var( --theme-text-primary );background-color:var(--theme-bg-secondary);box-shadow:0 1px 4px #00000014;text-shadow:0 .5px 1px rgb(0 0 0 / 4%)}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-color:var(--theme-bg-interactive);color:var(--theme-accent-primary);font-weight:550;box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--theme-accent-primary),#fff 80%),0 1px 3px color-mix(in oklab,var(--theme-accent-primary),transparent 90%);text-shadow:0 .5px 1px color-mix(in oklab,var(--theme-accent-primary),transparent 92%);border-left:3px solid color-mix(in oklab,var(--theme-accent-primary),#fff 65%);padding-left:calc(var(--spacing-4) - 3px)}.sort-option.active{font-weight:575;color:var(--theme-accent-primary);background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 85%);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--theme-accent-primary),#fff 55%),0 1px 4px color-mix(in oklab,var(--theme-accent-primary),transparent 85%);text-shadow:0 .5px 1px color-mix(in oklab,var(--theme-accent-primary),transparent 88%);border-left:3px solid var(--theme-accent-primary)}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}.sort-option .check-icon{color:var( --theme-accent-primary );filter:drop-shadow(0 .5px 1px rgb(59 130 246 / 20%))}.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 rgb(59 130 246 / 15%))}.filter-option.active .check-icon,.sort-option.active .check-icon{opacity:1;transform:scale(1.05);filter:drop-shadow(0 1px 2px rgb(59 130 246 / 25%))}.sort-option.active .check-icon{color:var(--theme-accent-primary);transform:scale(1.1);filter:drop-shadow(0 1px 2px rgb(59 130 246 / 30%))}.tag-chip{display:inline-flex;align-items:center;gap:var(--spacing-1);padding:var(--spacing-1) var(--spacing-3);background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 85%);color:var(--theme-accent-primary);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:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 80%);color:var(--theme-accent-primary)}.tag-chip.active,.tag-chip.selected{background:var(--theme-accent-primary);color:var(--theme-text-on-accent)}.tag-chip-remove{width:14px;height:14px;border-radius:var(--radius-full);background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 80%);color:var(--theme-accent-primary);border:none;cursor:pointer;transition:all var(--transition-fast)}.tag-chip:hover .tag-chip-remove{background:color-mix(in oklab,var(--theme-accent-primary),var(--theme-bg-primary) 70%);color:var(--theme-accent-primary)}.tag-chip.active .tag-chip-remove{background:#fff3;color:var(--theme-text-on-accent)}.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(--theme-accent-primary);color:var(--theme-text-on-accent);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:color-mix(in oklab,var(--theme-accent-primary),#000 10%);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(--theme-bg-tertiary);color:var(--theme-text-secondary);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(--theme-text-tertiary);background:none;border:none;cursor:pointer;transition:color var(--transition-fast)}.active-filter-remove:hover{color:var(--theme-text-secondary)}.filter-section .clear-all-container{position:relative;margin-left:var(--spacing-2)}.filter-section .clear-all-btn{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-5);border:1px solid var(--theme-border-error);border-radius:var(--radius-md);background-color:var(--theme-bg-primary);color:var(--theme-accent-error);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;box-shadow:0 1px 3px #ef44441f,0 1px 2px #0000000f;text-shadow:0 .5px 1px rgb(0 0 0 / 2%)}.clear-all-btn:hover{border-color:var(--theme-accent-error);background-color:var(--theme-bg-secondary);color:var(--theme-accent-error);transform:translateY(-1px);box-shadow:0 4px 12px color-mix(in oklab,var(--theme-accent-error),transparent 85%),0 2px 4px #00000014;text-shadow:0 .5px 1px rgb(0 0 0 / 6%)}.clear-all-btn:focus{outline:none;border-color:var(--theme-accent-error);box-shadow:0 0 0 3px color-mix(in oklab,var(--theme-accent-error),transparent 90%),0 4px 12px color-mix(in oklab,var(--theme-accent-error),transparent 88%),0 2px 4px #00000014;color:var(--theme-accent-error);text-shadow:0 .5px 1px rgb(0 0 0 / 6%)}.clear-all-btn:active{background-color:var(--theme-bg-tertiary);transform:translateY(0);box-shadow:0 2px 6px #ef444433,0 1px 2px #0000001a}.clear-all-icon{width:16px;height:16px;color:var(--theme-accent-error);transition:color var(--transition-fast)}.clear-all-btn:hover .clear-all-icon{color:color-mix(in oklab,var(--theme-accent-error),#000 10%)}.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(--theme-bg-primary)}.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(--theme-border-primary)}.results-header h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--theme-text-primary);margin:0}.results-count{font-size:var(--font-size-sm);color:var(--theme-text-secondary);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(--theme-text-secondary);font-size:var(--font-size-sm)}.sort-select{padding:var(--spacing-2) var(--spacing-3);border:2px solid var(--theme-border-primary);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--theme-bg-primary);transition:border-color .2s ease}.sort-select:focus{outline:none;border-color:var(--theme-border-focus)}.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(--theme-accent-primary);border-radius:var(--radius-md);background:var(--theme-bg-primary);color:var(--theme-accent-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(--theme-accent-primary);color:var(--theme-text-on-accent)}.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(--theme-border-primary);border-top:4px solid var(--theme-accent-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(--theme-text-secondary);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(--theme-bg-secondary);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(--theme-text-secondary);margin-bottom:var(--spacing-2)}.no-results h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--theme-text-primary);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(--theme-text-secondary);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 .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);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);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: more){.scenario-controls-toolbar .search-input,.filter-btn,.sort-btn,.scenario-card{border-width:2px}}}@layer components{.teacher-create-classroom-modal h6{font-size:var(--font-size-lg)}.teacher-create-classroom-modal .scenario-info .scenario-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.modal-backdrop.teacher-create-classroom-modal .modal-dialog{display:flex;flex-direction:column;max-height:90vh;width:min(1120px,96vw)!important;max-width:96vw!important}.modal-backdrop.teacher-create-classroom-modal .modal-dialog .modal-body{overflow-y:auto!important;-webkit-overflow-scrolling:touch;max-height:80vh;min-height:0;flex:1 1 auto}.teacher-create-classroom-modal .classroom-creation-form{display:flex;flex-direction:column;gap:12px}.teacher-create-classroom-modal .classroom-stepper{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:8px}.teacher-create-classroom-modal .classroom-stepper .step-tab{border:1px solid var(--color-gray-300, #d1d5db);background:var(--color-gray-50, #f9fafb);color:var(--color-gray-800, #1f2937);border-radius:8px;padding:6px 8px;cursor:pointer}.teacher-create-classroom-modal .classroom-stepper .step-tab[aria-selected=true]{background:var(--color-white, #fff);border-color:var(--color-primary, #1a73e8);color:var(--color-primary, #1a73e8);font-weight:600}.teacher-create-classroom-modal .scenario-selection-container{display:grid;grid-template-columns:2fr 1fr;gap:12px;align-items:start}.teacher-create-classroom-modal .categories-list{max-height:70vh;overflow:auto;-webkit-overflow-scrolling:touch}.teacher-create-classroom-modal .category-header{display:flex;align-items:center;gap:8px;padding:6px 4px;flex-wrap:nowrap}.teacher-create-classroom-modal .category-header h5{order:1;margin:0;flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.teacher-create-classroom-modal .category-header .scenario-count{order:2;margin-left:8px;white-space:nowrap;color:var(--color-gray-600, #4b5563);font-size:.9em;flex:0 0 auto}.teacher-create-classroom-modal .category-header .category-selected-badge{order:3;margin-left:8px;flex:0 0 auto}.teacher-create-classroom-modal .category-header .expand-icon{order:4;margin-left:auto;flex:0 0 auto}.teacher-create-classroom-modal .category-selected-badge{border:1px solid var(--color-gray-300, #d1d5db);background:var(--color-gray-50, #f9fafb);color:var(--color-gray-700, #374151);border-radius:999px;font-size:12px;padding:2px 8px;visibility:hidden}.teacher-create-classroom-modal .selected-scenarios{position:sticky;top:0;align-self:start;max-height:70vh;overflow:auto;-webkit-overflow-scrolling:touch;background:var(--color-white, #fff);border:1px solid var(--color-gray-200, #e5e7eb);border-radius:8px;padding:10px}.teacher-create-classroom-modal .scenario-title-row{display:flex;align-items:center;gap:8px}.teacher-create-classroom-modal .scenario-title-row .difficulty{margin-left:auto}.teacher-create-classroom-modal .selected-scenarios .selected-scenario-item{display:flex;align-items:center;gap:8px;border:1px solid var(--color-gray-200,#e5e7eb);border-radius:6px;padding:6px;margin-bottom:6px;background:#fff}.teacher-create-classroom-modal .selected-scenarios .drag-handle{cursor:grab;color:#6b7280}.teacher-create-classroom-modal .selected-scenarios .selected-scenario-item.dragging{opacity:.7}.teacher-create-classroom-modal .selected-scenarios .selected-scenario-item.drag-over{outline:2px dashed var(--color-primary,#1a73e8)}.teacher-create-classroom-modal .selected-scenarios .scenario-info{flex:1;display:flex;gap:6px;align-items:center}.teacher-create-classroom-modal .selected-scenarios .scenario-actions{display:flex;gap:6px}.teacher-create-classroom-modal .review-block{border:1px solid var(--color-gray-200,#e5e7eb);border-radius:8px;padding:10px;background:#fff}.teacher-create-classroom-modal .category-group[aria-expanded=true] .category-scenarios,.teacher-create-classroom-modal .category-scenarios[style*="display: block"]{max-height:60vh;overflow:auto}.teacher-create-classroom-modal .category-bulk-actions{display:flex;gap:8px;justify-content:flex-end;margin:6px 0}.teacher-create-classroom-modal .modal-actions{position:sticky;bottom:0;background:linear-gradient(to top,#fffffff5,#ffffffe0);padding:10px;border-top:1px solid var(--color-gray-200, #e5e7eb);display:flex;gap:8px;justify-content:flex-end;z-index:1}@media (max-width: 768px){.modal-backdrop.teacher-create-classroom-modal .scenario-selection-container{grid-template-columns:1fr}.modal-backdrop.teacher-create-classroom-modal .modal-dialog .modal-body{max-height:75vh}.teacher-create-classroom-modal .categories-list,.teacher-create-classroom-modal .selected-scenarios{max-height:60vh}.teacher-create-classroom-modal .classroom-stepper{grid-template-columns:repeat(2,1fr)}}.scenario-tooltip{--scenario-tooltip-bg: var(--color-gray-900, #111);--scenario-tooltip-fg: var(--color-white, #fff);position:fixed;z-index:10000;max-width:320px;background:var(--scenario-tooltip-bg);color:var(--scenario-tooltip-fg);padding:8px 10px;border-radius:8px;font-size:.875rem;line-height:1.3;box-shadow:0 8px 24px #00000040;pointer-events:none}.scenario-tooltip.above:after,.scenario-tooltip.below:after{content:"";position:absolute;left:50%;transform:translate(-50%);width:0;height:0;border-style:solid;filter:drop-shadow(0 1px 1px rgba(0,0,0,.2))}.scenario-tooltip.above:after{bottom:-6px;border-width:6px 6px 0 6px;border-color:var(--scenario-tooltip-bg) transparent transparent transparent}.scenario-tooltip.below:after{top:-6px;border-width:0 6px 6px 6px;border-color:transparent transparent var(--scenario-tooltip-bg) transparent}}@layer components{.student-waiting-room-modal .session-status-display{display:flex;align-items:center;gap:var(--spacing-3, .75rem)}.student-waiting-room-modal .session-status-display .status-indicator{display:flex!important;align-items:center;gap:var(--spacing-3, .75rem);width:auto!important;height:auto!important;border-radius:0!important;margin-right:0;background:none}.student-waiting-room-modal .status-text{display:block;flex:1 1 auto;min-width:0}.student-waiting-room-modal #status-title{margin:0 0 var(--spacing-1, .25rem) 0}.student-waiting-room-modal #status-description{display:block;margin:0;white-space:normal;word-break:normal;overflow-wrap:anywhere;writing-mode:horizontal-tb}.student-waiting-room-modal .scenario-title{color:var(--theme-text-primary)}.final-choices-container .choices-list{display:flex;flex-direction:column;gap:var(--spacing-3, .75rem)}.final-choices-container .choice-review-item{padding:var(--spacing-3, .75rem) var(--spacing-4, 1rem);border:1px solid var(--border-subtle, rgb(0 0 0 / 8%));border-radius:var(--radius-2, 8px);background:var(--surface-elevated, transparent)}.final-choices-container .scenario-header{display:flex;align-items:center;gap:var(--spacing-3, .75rem);margin-bottom:var(--spacing-2, .5rem)}.final-choices-container .scenario-number{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border-radius:999px;background:var(--accent-muted, rgb(0 0 0 / 6%));color:var(--theme-text-primary);font-weight:600}.final-choices-container .scenario-info h5{margin:0;color:var(--theme-text-primary)}.final-choices-container .scenario-category{color:var(--theme-text-tertiary, #666);font-size:.9em}.final-choices-container .choice-display{display:flex;flex-direction:column;gap:var(--spacing-1, .25rem)}.final-choices-container .choice-label{color:var(--theme-text-tertiary, #666);font-size:.9em}.final-choices-container .choice-value{color:var(--theme-text-primary);font-weight:600;word-break:normal;overflow-wrap:anywhere}.final-choices-container .choice-description{color:var(--theme-text-secondary);font-size:.95em;line-height:1.4;white-space:normal;word-break:normal;overflow-wrap:anywhere}.final-choices-container .confidence-level{color:var(--theme-text-tertiary, #666);font-size:.875em}}@layer components{@keyframes slide-in-right{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slide-down{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.pwa-notification{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;box-sizing:border-box;background:var(--theme-bg-secondary);color:var(--theme-text-primary);border-left:4px solid var(--theme-accent-primary);box-shadow:var( --shadow-md, 0 10px 15px -3px rgb(0 0 0 / 10%), 0 4px 6px -2px rgb(0 0 0 / 5%) );pointer-events:auto;border:2px solid transparent}.pwa-notification button{transition:all .2s ease;font-family:inherit;background:var(--theme-accent-primary);color:var(--theme-text-on-accent);border:1px solid var(--theme-accent-primary);border-radius:.5rem;padding:.5rem .75rem}.pwa-notification button:hover{background:color-mix(in oklab,var(--theme-accent-primary),white 10%);transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.pwa-notification button:active{transform:translateY(0)}.pwa-notification[id]:not(:last-of-type){display:none!important}@media (width <= 480px){.pwa-notification{left:10px!important;right:10px!important;max-width:none!important;top:10px!important}.pwa-notification button{display:block;width:100%;margin:5px 0!important}}.pwa-notification:focus-within{border-color:var(--theme-accent-primary);outline:none}.pwa-notification button:focus{outline:2px solid var(--theme-accent-primary);outline-offset:2px}@media (prefers-contrast: more){.pwa-notification{border:2px solid currentcolor}.pwa-notification button{border:1px solid currentcolor!important}}@media (prefers-reduced-motion: reduce){.pwa-notification{animation:none!important}.pwa-notification button{transition:none!important}}}
