.page-layout{min-height:calc(100vh - 60px);display:flex;flex-direction:column;align-items:center;padding:3rem 2rem 4rem}.page-layout.centered{justify-content:center}.page-layout__header{text-align:center;margin-bottom:3rem;max-width:1000px;width:100%}.page-layout__header--narrow-margin{margin-bottom:2rem}.page-layout__title{font-size:2.5rem;font-weight:300;letter-spacing:-.02em;margin-bottom:.75rem;color:var(--text-primary)}.page-layout__description{font-size:1.1rem;color:var(--text-secondary);font-weight:300;line-height:1.6}.page-layout__content{width:100%}.page-layout__content--default{max-width:1000px}.page-layout__content--wide{max-width:1200px}.page-layout__content--narrow{max-width:800px}.page-layout__content--full{max-width:none}@media (max-width: 768px){.page-layout{padding:2rem 1rem 3rem}.page-layout__title{font-size:2rem}}.home-page.page-layout{justify-content:flex-start;padding-bottom:0}.home-page .page-layout__content{display:flex;flex-direction:column;align-items:center;flex:1}.hero{text-align:center;margin-bottom:4rem}.hero-logo{margin-bottom:1rem;display:flex;justify-content:center}.hero-subtitle{font-size:1.25rem;color:var(--text-secondary);font-weight:300;max-width:600px}.topics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:1000px;width:100%}.topic-card{background:#ffffff0f;border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:2rem 1.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;min-height:140px;transition:all .2s ease;box-shadow:0 4px 16px #0006}.topic-card.enabled{cursor:pointer}.topic-card.enabled:hover{background:var(--bg-tertiary);border-color:var(--accent-blue);transform:translateY(-2px)}.topic-card.disabled{opacity:.4;cursor:not-allowed}.topic-name{font-size:1.1rem;font-weight:500;color:var(--text-primary);text-align:center}.coming-soon-badge{font-family:var(--font-display);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);background:var(--bg-tertiary);padding:.25rem .5rem;border-radius:4px}@media (max-width: 768px){.topics-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.topics-grid{grid-template-columns:1fr}}.home-footer{margin-top:auto;padding:2rem 0;color:var(--text-muted);font-size:.875rem;text-align:center}.home-footer a{color:inherit;text-decoration:underline}.about-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem}.about-page .about-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem 2.5rem}.about-page .about-section p{font-size:1.05rem;line-height:1.8;color:var(--text-secondary);margin:0}.about-page .about-section a{color:var(--accent-cyan);text-decoration:none;font-weight:500;transition:color .2s ease}.about-page .about-section a:hover{color:var(--accent-lime);text-decoration:underline}@media (max-width: 768px){.about-page .about-section{padding:1.5rem}}.foundations-page .topics-columns{display:grid;grid-template-columns:1fr 1fr;gap:3rem;max-width:1000px;width:100%}.foundations-page .topics-column{display:flex;flex-direction:column}.foundations-page .column-title{font-size:1.3rem;font-weight:500;color:var(--text-primary);margin-bottom:1.25rem;display:flex;align-items:center;gap:.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--border-color)}.foundations-page .column-icon{font-size:1.2rem}.foundations-page .topics-list{display:flex;flex-direction:column;gap:1rem}.foundations-page .topic-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem 1.5rem;display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;transition:all .2s ease;text-align:left}.foundations-page .topic-card.enabled{cursor:pointer}.foundations-page .topic-card.enabled:hover{background:var(--bg-tertiary);border-color:var(--accent-blue);transform:translateY(-2px)}.foundations-page .topic-card.disabled{opacity:.4;cursor:not-allowed}.foundations-page .topic-name{font-size:1.1rem;font-weight:500;color:var(--text-primary)}.foundations-page .topic-description{font-size:.9rem;color:var(--text-secondary);font-weight:300;line-height:1.5}.foundations-page .empty-column{background:var(--bg-secondary);border:1px dashed var(--border-color);border-radius:12px;padding:2rem 1.5rem;display:flex;align-items:center;justify-content:center}.foundations-page .empty-message{color:var(--text-muted);font-size:.95rem;font-style:italic}@media (max-width: 768px){.foundations-page .topics-columns{grid-template-columns:1fr;gap:2rem}}.history-page .legend{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:1.5rem;margin-bottom:1rem;padding:0;background:none;border:none;border-radius:0}.history-page .legend-item{display:inline-flex;align-items:center;gap:.4rem}.history-page .legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.history-page .legend-dot.robotics{background:var(--accent-orange);box-shadow:0 0 6px var(--accent-orange)}.history-page .legend-dot.ai{background:var(--accent-cyan);box-shadow:0 0 6px var(--accent-cyan)}.history-page .legend-label{font-size:.75rem;color:var(--text-muted);white-space:nowrap}.history-page .timeline{position:relative;padding:2rem 0}.history-page .timeline-line{position:absolute;left:50%;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--border-color) 0%,var(--accent-cyan) 10%,var(--accent-orange) 50%,var(--accent-cyan) 90%,var(--border-color) 100%);transform:translate(-50%)}.history-page .timeline-item{position:relative;width:50%;padding:0 2.5rem;margin-bottom:2rem}.history-page .timeline-item.left{left:0;padding-right:3rem;text-align:right}.history-page .timeline-item.right{left:50%;padding-left:3rem;text-align:left}.history-page .timeline-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem 1.5rem;transition:transform .2s ease,box-shadow .2s ease}.history-page .timeline-item.robotics .timeline-content{border-left:3px solid var(--accent-orange)}.history-page .timeline-item.ai .timeline-content{border-left:3px solid var(--accent-cyan)}.history-page .timeline-item.left .timeline-content{border-left:none}.history-page .timeline-item.left.robotics .timeline-content{border-right:3px solid var(--accent-orange)}.history-page .timeline-item.left.ai .timeline-content{border-right:3px solid var(--accent-cyan)}.history-page .timeline-content:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000004d}.history-page .timeline-dot{position:absolute;top:1.5rem;width:16px;height:16px;border-radius:50%;border:3px solid var(--bg-primary);z-index:1}.history-page .timeline-item.left .timeline-dot{right:-8px}.history-page .timeline-item.right .timeline-dot{left:-8px}.history-page .timeline-item.robotics .timeline-dot{background:var(--accent-orange);box-shadow:0 0 12px var(--accent-orange)}.history-page .timeline-item.ai .timeline-dot{background:var(--accent-cyan);box-shadow:0 0 12px var(--accent-cyan)}.history-page .timeline-year{font-size:.85rem;font-weight:600;letter-spacing:.05em;margin-bottom:.5rem}.history-page .timeline-item.robotics .timeline-year{color:var(--accent-orange)}.history-page .timeline-item.ai .timeline-year{color:var(--accent-cyan)}.history-page .timeline-title{font-size:1.05rem;font-weight:500;color:var(--text-primary);margin-bottom:.5rem;line-height:1.3}.history-page .timeline-description{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0}@media (max-width: 768px){.history-page .legend{gap:1rem}.history-page .timeline-line{left:20px}.history-page .timeline-item{width:100%;padding-left:3rem!important;padding-right:0!important;left:0!important;text-align:left!important}.history-page .timeline-item .timeline-content{border-right:none!important}.history-page .timeline-item.robotics .timeline-content{border-left:3px solid var(--accent-orange)!important}.history-page .timeline-item.ai .timeline-content{border-left:3px solid var(--accent-cyan)!important}.history-page .timeline-dot{left:12px!important;right:auto!important}.history-page .timeline-content{padding:1rem 1.25rem}.history-page .timeline-title{font-size:1rem}.history-page .timeline-description{font-size:.85rem}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.history-page .timeline-item{animation:fadeInUp .5s ease forwards}.history-page .timeline-item:nth-child(1){animation-delay:.05s}.history-page .timeline-item:nth-child(2){animation-delay:.1s}.history-page .timeline-item:nth-child(3){animation-delay:.15s}.history-page .timeline-item:nth-child(4){animation-delay:.2s}.history-page .timeline-item:nth-child(5){animation-delay:.25s}.history-page .timeline-item:nth-child(6){animation-delay:.3s}.history-page .timeline-item:nth-child(7){animation-delay:.35s}.history-page .timeline-item:nth-child(8){animation-delay:.4s}.history-page .timeline-item:nth-child(9){animation-delay:.45s}.history-page .timeline-item:nth-child(10){animation-delay:.5s}.intro-agents-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem}.intro-agents-page .concept-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem 2.5rem}.intro-agents-page .concept-section h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin-bottom:1rem;letter-spacing:-.01em}.intro-agents-page .concept-section p{font-size:1rem;line-height:1.75;color:var(--text-secondary)}.intro-agents-page .concept-section strong{color:var(--text-primary);font-weight:600}.intro-agents-page .concept-section em{color:var(--accent-blue);font-style:normal;font-weight:500}.intro-agents-page .diagram-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem 2.5rem}.intro-agents-page .diagram-section h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin-bottom:1.5rem;letter-spacing:-.01em;text-align:center}.intro-agents-page .agent-world-diagram{width:100%;max-width:700px;height:auto;margin:0 auto;display:block;background:var(--bg-primary);border-radius:8px;padding:1rem}.intro-agents-page .section-title{font-size:18px;font-weight:600;fill:var(--text-primary)}.intro-agents-page .box-label{font-size:14px;font-weight:500;fill:#fff}.intro-agents-page .flow-label{font-size:12px;fill:var(--text-secondary);font-style:italic}.intro-agents-page .flow-label-external{font-size:12px;fill:var(--text-secondary);writing-mode:vertical-rl;text-orientation:mixed}.intro-agents-page .boundary-label{font-size:12px;fill:var(--text-muted);font-style:italic}.intro-agents-page .boundary-box{opacity:.8}.intro-agents-page .diagram-caption{margin-top:1.5rem;font-size:.9rem;color:var(--text-muted);text-align:center;line-height:1.6;font-style:italic}@keyframes flowPulse{0%,to{opacity:.6}50%{opacity:1}}.intro-agents-page .agent-world-diagram .connections path,.intro-agents-page .agent-world-diagram .connections line{animation:flowPulse 3s ease-in-out infinite}@media (max-width: 768px){.intro-agents-page .concept-section,.intro-agents-page .diagram-section{padding:1.5rem}.intro-agents-page .concept-section h2,.intro-agents-page .diagram-section h2{font-size:1.2rem}.intro-agents-page .agent-world-diagram{padding:.5rem}}.types-environments-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem}.types-environments-page .concept-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem 2.5rem}.types-environments-page .concept-section p{font-size:1rem;line-height:1.75;color:var(--text-secondary)}.types-environments-page .concept-section strong{color:var(--text-primary);font-weight:600}.types-environments-page .section-intro{margin-bottom:2rem}.types-environments-page .environment-types{display:flex;flex-direction:column;gap:1.5rem}.types-environments-page .env-type{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem 1.5rem}.types-environments-page .env-type h3{font-size:1.1rem;font-weight:500;color:var(--accent-cyan);margin-bottom:.75rem}.types-environments-page .env-type p{font-size:.95rem;line-height:1.7;margin-bottom:.75rem}.types-environments-page .examples{display:flex;flex-wrap:wrap;gap:.5rem;align-items:baseline}.types-environments-page .example-label{font-size:.85rem;color:var(--text-muted);font-weight:500}.types-environments-page .example{font-size:.85rem;color:var(--text-secondary);background:var(--bg-tertiary);padding:.25rem .6rem;border-radius:4px}.types-environments-page .examples-with-images{display:flex;gap:1.5rem;margin-top:1rem}.types-environments-page .example-item{flex:1;background:var(--bg-tertiary);border-radius:8px;overflow:hidden;border:1px solid var(--border-color)}.types-environments-page .example-image{width:100%;height:180px;object-fit:cover;object-position:center}.types-environments-page .example-text{padding:.75rem 1rem;display:flex;flex-direction:column;gap:.25rem}.types-environments-page .example-type{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--accent-cyan)}.types-environments-page .example-name{font-size:.9rem;color:var(--text-secondary);line-height:1.4}.types-environments-page .environment-table-container{margin-top:2.5rem}.types-environments-page .environment-table-container h3{font-size:1.15rem;font-weight:500;color:var(--text-primary);margin-bottom:1rem;text-align:center}.types-environments-page .environment-table{width:100%;border-collapse:collapse;font-size:.9rem}.types-environments-page .environment-table th,.types-environments-page .environment-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-color)}.types-environments-page .environment-table th{background:var(--bg-primary);color:var(--text-primary);font-weight:500;font-size:.85rem;text-transform:uppercase;letter-spacing:.03em}.types-environments-page .environment-table td{color:var(--text-secondary)}.types-environments-page .environment-table td:first-child{color:var(--text-primary);font-weight:500}.types-environments-page .environment-table td:nth-child(2){color:var(--accent-lime)}.types-environments-page .environment-table td:nth-child(3){color:var(--accent-orange)}.types-environments-page .environment-table tbody tr:hover{background:var(--bg-primary)}@media (max-width: 768px){.types-environments-page .concept-section{padding:1.5rem}.types-environments-page .env-type{padding:1rem}.types-environments-page .env-type h3{font-size:1rem}.types-environments-page .examples-with-images{flex-direction:column;gap:1rem}.types-environments-page .example-image{height:120px}.types-environments-page .environment-table{font-size:.8rem}.types-environments-page .environment-table th,.types-environments-page .environment-table td{padding:.5rem}}.agent-architectures-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem}.agent-architectures-page .intro-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem 2rem}.agent-architectures-page .intro-section p{font-size:1rem;line-height:1.75;color:var(--text-secondary);margin:0}.agent-architectures-page .intro-section strong{color:var(--text-primary)}.agent-architectures-page .agent-type-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem}.agent-architectures-page .section-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.agent-architectures-page .section-header h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin:0}.agent-architectures-page .complexity-badge{font-size:.75rem;font-weight:600;padding:.25rem .6rem;border-radius:4px;text-transform:uppercase;letter-spacing:.03em}.agent-architectures-page .complexity-badge.simple{background:#d4ff0026;color:var(--accent-lime)}.agent-architectures-page .complexity-badge.moderate{background:#00e5ff26;color:var(--accent-cyan)}.agent-architectures-page .complexity-badge.advanced{background:#ff9f4326;color:var(--accent-orange)}.agent-architectures-page .complexity-badge.expert{background:#a78bfa26;color:var(--accent-lavender)}.agent-architectures-page .section-content{display:flex;flex-direction:column;gap:1.5rem}.agent-architectures-page .description-text{font-size:.95rem;line-height:1.7;color:var(--text-secondary);margin:0}.agent-architectures-page .description-text strong{color:var(--text-primary);font-weight:500}.agent-architectures-page .description-text em{color:var(--accent-cyan);font-style:normal}.agent-architectures-page .description-text code{background:var(--bg-tertiary);padding:.15rem .4rem;border-radius:4px;font-size:.85em;color:var(--accent-lime)}.agent-architectures-page .characteristics,.agent-architectures-page .example{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1rem 1.25rem}.agent-architectures-page .characteristics h4,.agent-architectures-page .example h4{font-size:.85rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.03em}.agent-architectures-page .characteristics ul{margin:0;padding-left:1.25rem}.agent-architectures-page .characteristics li{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin-bottom:.25rem}.agent-architectures-page .characteristics li strong{color:var(--accent-cyan)}.agent-architectures-page .example p{font-size:.9rem;color:var(--text-secondary);margin:0;line-height:1.6;font-style:italic}.agent-architectures-page .visualization{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem}.agent-architectures-page .animation-container{display:flex;gap:2rem;align-items:flex-start}.agent-architectures-page .agent-diagram{flex:1;min-width:0;max-width:600px;height:auto}.agent-architectures-page .animation-controls{flex-shrink:0;width:240px}.agent-architectures-page .env-box{fill:var(--bg-tertiary);stroke:var(--text-muted);stroke-width:2}.agent-architectures-page .sensor-box{fill:#00e5ff1a;stroke:var(--accent-cyan);stroke-width:1.5}.agent-architectures-page .actuator-box{fill:#ff9f431a;stroke:var(--accent-orange);stroke-width:1.5}.agent-architectures-page .rules-box{fill:var(--bg-tertiary);stroke:var(--border-color);stroke-width:1.5;transition:all .3s ease}.agent-architectures-page .rules-box.active{fill:#d4ff0026;stroke:var(--accent-lime)}.agent-architectures-page .state-box{fill:#00e5ff1a;stroke:var(--accent-cyan);stroke-width:1.5;transition:all .3s ease}.agent-architectures-page .state-box.active{fill:#00e5ff40;stroke-width:2}.agent-architectures-page .model-box{fill:var(--bg-tertiary);stroke:var(--text-muted);stroke-width:2;stroke-dasharray:4 2}.agent-architectures-page .goal-box{fill:#d4ff001a;stroke:var(--accent-lime);stroke-width:1.5;transition:all .3s ease}.agent-architectures-page .goal-box.active{fill:#d4ff0040;stroke-width:2}.agent-architectures-page .planning-box{fill:#a78bfa1a;stroke:var(--accent-lavender);stroke-width:1.5;transition:all .3s ease}.agent-architectures-page .planning-box.active{fill:#a78bfa40;stroke-width:2}.agent-architectures-page .utility-box{fill:#ff9f431a;stroke:var(--accent-orange);stroke-width:1.5;transition:all .3s ease}.agent-architectures-page .utility-box.active{fill:#ff9f4340;stroke-width:2}.agent-architectures-page .action-box{fill:var(--bg-tertiary);stroke:var(--border-color);stroke-width:1.5;transition:all .3s ease}.agent-architectures-page .action-box.active{fill:#d4ff0033;stroke:var(--accent-lime)}.agent-architectures-page .agent-boundary{fill:none;stroke:var(--accent-cyan);stroke-width:2;stroke-dasharray:8 4;opacity:.6}.agent-architectures-page .world-boundary{fill:none;stroke:var(--accent-orange);stroke-width:2;stroke-dasharray:8 4;opacity:.6}.agent-architectures-page .design-boundary{stroke:var(--accent-lime);stroke-width:2;opacity:.8}.agent-architectures-page .boundary-label{font-size:12px;fill:var(--text-muted);font-style:italic}.agent-architectures-page .boundary-label-small{font-size:10px;fill:var(--text-muted);font-style:italic}.agent-architectures-page .flow-label-vertical{font-size:10px;fill:var(--text-muted);writing-mode:vertical-rl;text-orientation:mixed}.agent-architectures-page .box-title{font-size:11px;font-weight:500;fill:var(--text-primary)}.agent-architectures-page .box-subtitle{font-size:10px;fill:var(--text-secondary)}.agent-architectures-page .box-detail{font-size:9px;fill:var(--text-muted);font-family:var(--font-display)}.agent-architectures-page .flow-label{font-size:9px;fill:var(--text-muted);transition:fill .3s ease}.agent-architectures-page .flow-label.active{fill:var(--accent-lime)}.agent-architectures-page .arrow{stroke:var(--text-muted);stroke-width:1.5;fill:none;transition:stroke .3s ease}.agent-architectures-page .arrow.dashed{stroke-dasharray:4 2}.agent-architectures-page .arrow.active-flow{stroke:var(--accent-lime);stroke-width:2}.agent-architectures-page .critic-box{fill:#ff9f431a;stroke:var(--accent-orange);stroke-width:1.5;transition:all .3s ease}.agent-architectures-page .critic-box.active{fill:#ff9f4340;stroke-width:2}.agent-architectures-page .learning-box{fill:#a78bfa1a;stroke:var(--accent-lavender);stroke-width:1.5;transition:all .3s ease}.agent-architectures-page .learning-box.active{fill:#a78bfa40;stroke-width:2}.agent-architectures-page .performance-box{fill:#00e5ff1a;stroke:var(--accent-cyan);stroke-width:1.5;transition:all .3s ease}.agent-architectures-page .performance-box.active{fill:#00e5ff40;stroke-width:2}.agent-architectures-page .knowledge-box{fill:var(--bg-tertiary);stroke:var(--text-muted);stroke-width:2}.agent-architectures-page .problem-box{fill:#d4ff001a;stroke:var(--accent-lime);stroke-width:1.5;transition:all .3s ease}.agent-architectures-page .problem-box.active{fill:#d4ff0040;stroke-width:2}.agent-architectures-page .standard-box{fill:var(--bg-tertiary);stroke:var(--border-color);stroke-width:1;stroke-dasharray:4 2}.agent-architectures-page .perf-label{font-size:10px;fill:var(--text-muted)}.agent-architectures-page .perf-track{fill:var(--bg-tertiary);stroke:var(--border-color);stroke-width:1}.agent-architectures-page .perf-bar{fill:var(--accent-lime);transition:width .5s ease}.agent-architectures-page .perf-value{font-size:11px;font-weight:600;fill:var(--accent-lime)}.agent-architectures-page .predictions{opacity:0;transition:opacity .5s ease}.agent-architectures-page .predictions.visible{opacity:1}.agent-architectures-page .prediction-bar{fill:var(--bg-tertiary);stroke:var(--border-color);stroke-width:1;transition:all .3s ease}.agent-architectures-page .prediction-bar.selected{fill:#d4ff0026;stroke:var(--accent-lime)}.agent-architectures-page .prediction-label{font-size:9px;fill:var(--text-secondary)}.agent-architectures-page .utility-bar{transition:width .5s ease}.agent-architectures-page .utility-bar.low{fill:var(--accent-lime)}.agent-architectures-page .utility-bar.med{fill:var(--accent-orange)}.agent-architectures-page .utility-bar.high{fill:#ef4444}.agent-architectures-page .utility-value{font-size:9px;font-weight:600;fill:var(--text-primary)}.agent-architectures-page .description-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.agent-architectures-page .animation-controls{display:flex;flex-direction:column;gap:.5rem}.agent-architectures-page .step-indicator{display:flex;flex-direction:column;gap:.4rem}.agent-architectures-page .step{display:flex;align-items:center;gap:.5rem;padding:.4rem .6rem;border-radius:4px;transition:all .3s ease;opacity:.5}.agent-architectures-page .step.active{background:#d4ff001a;opacity:1}.agent-architectures-page .step-num{width:20px;height:20px;border-radius:50%;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;color:var(--text-muted);transition:all .3s ease}.agent-architectures-page .step.active .step-num{background:var(--accent-lime);color:#000}.agent-architectures-page .step-label{font-size:.8rem;color:var(--text-secondary)}.agent-architectures-page .step.active .step-label{color:var(--text-primary)}.agent-architectures-page .play-btn{align-self:flex-start;padding:.4rem .8rem;border-radius:4px;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);font-size:.8rem;cursor:pointer;transition:all .2s ease}.agent-architectures-page .play-btn:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}.agent-architectures-page .summary-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem}.agent-architectures-page .summary-section h2{font-size:1.3rem;font-weight:500;color:var(--text-primary);margin:0 0 1.5rem}.agent-architectures-page .comparison-table-container{overflow-x:auto}.agent-architectures-page .comparison-table{width:100%;border-collapse:collapse;font-size:.95rem}.agent-architectures-page .comparison-table th,.agent-architectures-page .comparison-table td{padding:1rem 1.25rem;text-align:center;border-bottom:1px solid var(--border-color)}.agent-architectures-page .comparison-table th:first-child,.agent-architectures-page .comparison-table td:first-child,.agent-architectures-page .comparison-table th:last-child,.agent-architectures-page .comparison-table td:last-child{text-align:left}.agent-architectures-page .comparison-table th{background:var(--bg-tertiary);color:var(--text-primary);font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.03em;vertical-align:top}.agent-architectures-page .comparison-table .th-title{display:block}.agent-architectures-page .comparison-table .th-desc{display:block;font-size:.75rem;font-weight:400;text-transform:none;color:var(--text-secondary);margin-top:.25rem;letter-spacing:0}.agent-architectures-page .comparison-table td{color:var(--text-secondary);line-height:1.5}.agent-architectures-page .comparison-table td:first-child{color:var(--text-primary);font-weight:500}.agent-architectures-page .comparison-table td.yes{color:var(--accent-lime);font-weight:600;font-size:1.1rem}.agent-architectures-page .comparison-table td.no{color:var(--text-muted);font-size:1.1rem}.agent-architectures-page .comparison-table tbody tr:hover{background:var(--bg-primary)}@media (max-width: 900px){.agent-architectures-page .animation-container{flex-direction:column}.agent-architectures-page .agent-diagram{max-width:100%}.agent-architectures-page .animation-controls{width:100%}.agent-architectures-page .description-row{grid-template-columns:1fr}}@media (max-width: 768px){.agent-architectures-page .agent-type-section{padding:1.5rem}.agent-architectures-page .section-header{flex-direction:column;align-items:flex-start;gap:.5rem}.agent-architectures-page .section-header h2{font-size:1.2rem}.agent-architectures-page .comparison-table{font-size:.75rem}.agent-architectures-page .comparison-table th,.agent-architectures-page .comparison-table td{padding:.5rem}}.best-score-display{display:flex;align-items:baseline;justify-content:center;gap:.5rem;margin-top:1.25rem;padding:.75rem 1.5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;display:inline-flex}.username-badge{font-size:.8rem;font-weight:600;color:#6366f1;background:#6366f126;padding:.25rem .625rem;border-radius:4px;margin-right:.5rem}.best-score-label{font-size:.9rem;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.05em}.best-score-value{font-size:1.75rem;font-weight:600;color:var(--accent-lavender);font-family:var(--font-display)}.best-score-max{font-size:1rem;color:var(--text-muted)}.simulator-container{display:flex;gap:2rem;flex-wrap:wrap;justify-content:center;align-items:flex-start;max-width:1200px;width:100%}.control-panel,.log-panel{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;width:280px}.panel-section{margin-bottom:1.5rem}.panel-section:last-child{margin-bottom:0}.panel-title{font-size:.85rem;font-weight:500;color:var(--accent-cyan);letter-spacing:.05em;text-transform:uppercase;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.toggle-row{margin-bottom:1rem}.toggle-row:last-child{margin-bottom:0}.toggle-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.4rem}.toggle-label{font-size:.95rem;font-weight:500;color:var(--text-primary)}.toggle-button{width:80px;padding:.4rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;letter-spacing:.05em;transition:all .2s ease}.toggle-button.active{background:var(--accent-lime);color:#000}.toggle-button.inactive{background:var(--accent-orange);color:#000}.toggle-button:hover{transform:scale(1.05)}.toggle-description{font-size:.8rem;color:var(--text-muted);line-height:1.4}.stat-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.stat-row:last-child{margin-bottom:0}.stat-label{font-size:.85rem;color:var(--text-muted)}.stat-value{font-size:1rem;font-weight:600;color:var(--text-primary);font-family:var(--font-display)}.stat-value.time{color:var(--accent-orange)}.stat-value.moves{color:var(--accent-cyan)}.reset-button{width:100%;padding:.75rem;background:transparent;border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);font-size:.9rem;font-weight:500;transition:all .2s ease}.reset-button:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}.grid-area{display:flex;flex-direction:column;align-items:center}.grid-wrapper{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem;position:relative;box-shadow:0 0 40px #00e5ff0d}.grid-wrapper:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,229,255,.02) 2px,rgba(0,229,255,.02) 4px);pointer-events:none;border-radius:12px}.grid{display:grid;gap:2px;position:relative;z-index:1}.grid-cell{width:48px;height:48px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;transition:all .2s ease}.grid-cell.hidden{background:var(--bg-primary);border-color:#2d333b4d}.grid-cell.goal{background:#00e5ff1a;border-color:var(--accent-cyan);box-shadow:0 0 15px #00e5ff33}.grid-cell .fog{color:var(--text-muted);font-size:1rem}.grid-cell .agent{animation:float 2s ease-in-out infinite;filter:drop-shadow(0 0 8px var(--accent-cyan))}.grid-cell .goal-icon{animation:pulse 1.5s ease-in-out infinite;filter:drop-shadow(0 0 8px var(--accent-lime))}.grid-cell .obstacle{opacity:.85}.grid-cell .other-agent{filter:drop-shadow(0 0 8px var(--accent-orange))}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.95)}}.movement-controls{margin-top:1.5rem;display:flex;flex-direction:column;align-items:center;gap:.4rem}.control-row{display:flex;gap:.4rem}.control-btn{width:48px;height:48px;border-radius:8px;background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--accent-cyan);font-size:1.25rem;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.control-btn:hover{background:var(--bg-tertiary);border-color:var(--accent-cyan);transform:scale(1.05)}.control-btn:active{transform:scale(.95)}.controls-hint{font-size:.75rem;color:var(--text-muted);margin-top:.5rem}.log-entries{min-height:100px;font-size:.85rem;line-height:1.8}.log-empty{color:var(--text-muted);font-style:italic}.log-entry{color:var(--text-secondary)}.log-entry.success{color:var(--accent-lime)}.log-entry.error{color:var(--accent-orange)}.log-entry.warning{color:#fc0}.success-message{margin-top:1rem;padding:.75rem;background:#d4ff001a;border:1px solid var(--accent-lime);border-radius:6px;color:var(--accent-lime);font-size:.9rem;text-align:center;animation:pulse 1s ease-in-out infinite}.legend{display:flex;flex-direction:column;gap:.5rem;font-size:.85rem;color:var(--text-secondary)}.legend-item{display:flex;align-items:center;gap:.5rem}.legend-icon{width:1.5rem;text-align:center}.fog-icon{color:var(--text-muted)}.learning-section{margin-top:2.5rem;max-width:1000px;width:100%;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem 2rem}.learning-title{font-size:1rem;font-weight:500;color:var(--accent-cyan);letter-spacing:.03em;margin-bottom:1rem}.learning-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.learning-item{font-size:.9rem;color:var(--text-secondary);line-height:1.6}.learning-item strong{color:var(--accent-lime);font-weight:500}@media (max-width: 1024px){.simulator-container{flex-direction:column;align-items:center}.control-panel,.log-panel{width:100%;max-width:400px}}@media (max-width: 768px){.learning-grid{grid-template-columns:1fr}.grid-cell{width:40px;height:40px;font-size:1.25rem}.control-btn{width:44px;height:44px}}.leaderboard-wrapper{margin-top:1rem}.leaderboard-config{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px 8px 0 0;padding:.75rem 1rem;border-bottom:none}.config-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:.5rem}.difficulty-badge{display:inline-block;padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.config-details{font-size:.7rem;color:var(--text-muted);font-family:var(--font-display);letter-spacing:.02em}.leaderboard-wrapper .leaderboard{border-radius:0 0 8px 8px;border-top:none}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0d1117d9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-primary) 100%);border:1px solid rgba(0,229,255,.3);border-radius:16px;padding:2.5rem;max-width:400px;width:90%;text-align:center;box-shadow:0 25px 50px -12px #00000080,0 0 40px #00e5ff1a;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-icon{font-size:3.5rem;margin-bottom:1rem;animation:bounce 1s ease infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.modal-title{color:var(--text-primary);font-size:1.75rem;font-weight:700;margin:0 0 .5rem}.modal-description{color:var(--text-secondary);font-size:.95rem;margin:0 0 1.5rem;line-height:1.5}.modal-form{display:flex;flex-direction:column;gap:1rem}.modal-input{width:100%;padding:.875rem 1rem;font-size:1rem;border:2px solid var(--border-color);border-radius:8px;background:var(--bg-tertiary);color:var(--text-primary);outline:none;transition:all .2s ease;box-sizing:border-box}.modal-input:focus{border-color:var(--accent-cyan);box-shadow:0 0 0 3px #00e5ff33}.modal-input::placeholder{color:var(--text-muted)}.modal-error{color:#f87171;font-size:.85rem;text-align:left;margin-top:-.5rem}.modal-button{width:100%;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;color:var(--bg-primary);background:var(--accent-cyan);border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.modal-button:hover{transform:translateY(-2px);box-shadow:0 10px 20px #00e5ff4d}.modal-button:active{transform:translateY(0)}.modal-hint{color:var(--text-muted);font-size:.8rem;margin:1rem 0 0}.leaderboard{background:linear-gradient(135deg,#1e293be6,#0f172ae6);border:1px solid rgba(99,102,241,.2);border-radius:12px;overflow:hidden}.leaderboard-header{display:flex;align-items:center;gap:.5rem;padding:1rem;background:#6366f11a;border-bottom:1px solid rgba(99,102,241,.2)}.leaderboard-icon{font-size:1.25rem}.leaderboard-title{margin:0;font-size:1rem;font-weight:600;color:#fff}.leaderboard-content{padding:.5rem;max-height:320px;overflow-y:auto}.leaderboard-loading,.leaderboard-error,.leaderboard-empty{padding:2rem 1rem;text-align:center;color:#94a3b8;font-size:.9rem}.leaderboard-error{color:#f87171}.loading-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(99,102,241,.3);border-top-color:#6366f1;border-radius:50%;animation:spin .8s linear infinite;margin-right:.5rem;vertical-align:middle}.leaderboard-list{list-style:none;margin:0;padding:0}.leaderboard-entry{display:flex;align-items:center;padding:.625rem .75rem;border-radius:8px;margin-bottom:.25rem;transition:background .2s ease}.leaderboard-entry:hover{background:#6366f11a}.leaderboard-entry.current-user{background:#6366f126;border:1px solid rgba(99,102,241,.3)}.leaderboard-entry.rank-1{background:linear-gradient(90deg,rgba(255,215,0,.1) 0%,transparent 100%)}.leaderboard-entry.rank-2{background:linear-gradient(90deg,rgba(192,192,192,.1) 0%,transparent 100%)}.leaderboard-entry.rank-3{background:linear-gradient(90deg,rgba(205,127,50,.1) 0%,transparent 100%)}.entry-rank{width:32px;font-size:.9rem;font-weight:600;color:#94a3b8}.rank-1 .entry-rank,.rank-2 .entry-rank,.rank-3 .entry-rank{font-size:1.1rem}.entry-username{flex:1;font-size:.9rem;color:#e2e8f0;display:flex;align-items:center;gap:.5rem}.you-badge{font-size:.65rem;font-weight:600;text-transform:uppercase;color:#6366f1;background:#6366f133;padding:.125rem .375rem;border-radius:4px}.entry-score{font-size:.95rem;font-weight:700;color:#10b981;min-width:40px;text-align:right}.leaderboard-content::-webkit-scrollbar{width:6px}.leaderboard-content::-webkit-scrollbar-track{background:#0003;border-radius:3px}.leaderboard-content::-webkit-scrollbar-thumb{background:#6366f166;border-radius:3px}.leaderboard-content::-webkit-scrollbar-thumb:hover{background:#6366f199}.race-controls{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;align-items:flex-end;margin-bottom:1.5rem;padding:1.25rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;max-width:1400px;width:100%}.control-group{display:flex;flex-direction:column;gap:.5rem}.control-label{font-size:.75rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.control-buttons{display:flex;gap:.5rem}.race-btn{padding:.6rem 1.25rem;border-radius:8px;font-size:.9rem;font-weight:500;transition:all .2s ease;border:1px solid var(--border-color);background:var(--bg-tertiary);color:var(--text-primary)}.race-btn.start{background:var(--accent-lime);color:#000;border-color:var(--accent-lime)}.race-btn.start:hover{background:#c5e600;transform:scale(1.02)}.race-btn.pause{background:var(--accent-orange);color:#000;border-color:var(--accent-orange)}.race-btn.pause:hover{background:#ff9500}.race-btn.reset:hover,.race-btn.secondary:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}.race-btn:disabled{opacity:.5;cursor:not-allowed}.tool-buttons{display:flex;gap:.5rem}.tool-btn{padding:.5rem .875rem;border-radius:6px;font-size:.85rem;font-weight:500;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary);transition:all .2s ease}.tool-btn.active{background:var(--accent-lavender);color:#000;border-color:var(--accent-lavender)}.tool-btn:hover:not(.active):not(:disabled){border-color:var(--accent-lavender);color:var(--accent-lavender)}.tool-btn:disabled{opacity:.5;cursor:not-allowed}.editor-hint{text-align:center;padding:.75rem;margin-bottom:1rem;background:#9370db1a;border:1px solid var(--accent-lavender);border-radius:8px;font-size:.9rem;color:var(--accent-lavender);max-width:1400px;width:100%}.winner-banner{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 2rem;margin-bottom:1.5rem;background:linear-gradient(135deg,#d4ff0026,#00e5ff26);border:2px solid var(--accent-lime);border-radius:12px;animation:winner-glow 2s ease-in-out infinite}@keyframes winner-glow{0%,to{box-shadow:0 0 20px #d4ff004d}50%{box-shadow:0 0 40px #d4ff0080}}.winner-emoji{font-size:2rem;animation:bounce .5s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.winner-text{font-size:1.5rem;font-weight:600;color:var(--accent-lime);font-family:var(--font-display)}.race-grids{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;max-width:1600px;width:100%;margin-bottom:2rem}.grid-panel{position:relative;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1rem;transition:all .3s ease}.grid-panel.finished{opacity:.8}.grid-panel.winner{border-color:var(--accent-lime);box-shadow:0 0 20px #d4ff0033}.grid-panel:hover{border-color:var(--text-muted)}.finish-badge{position:absolute;top:.5rem;right:.5rem;font-size:1.5rem;animation:pop-in .3s ease-out}@keyframes pop-in{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.agent-grid-container{display:flex;flex-direction:column;align-items:center}.agent-grid-header{display:flex;flex-direction:column;align-items:center;gap:.25rem;margin-bottom:.75rem}.agent-title-row{display:flex;align-items:center;gap:.5rem}.agent-emoji{font-size:1.25rem}.agent-name{font-size:.95rem;font-weight:600;color:var(--text-primary)}.agent-description{font-size:.75rem;color:var(--text-muted);text-align:center;line-height:1.3}.agent-grid-wrapper{background:var(--bg-tertiary);border-radius:8px;padding:4px;margin-bottom:.75rem}.agent-grid{display:grid;gap:1px}.race-cell{width:36px;height:36px;background:var(--bg-primary);border:1px solid rgba(45,51,59,.5);border-radius:2px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;transition:all .15s ease}.race-cell.goal{background:#00e5ff1a;border-color:var(--accent-cyan)}.race-cell.start{background:#d4ff001a;border-color:#d4ff004d}.race-cell.visited{background:#f59e0b1a}.path-trail{position:absolute;width:10px;height:10px;border-radius:50%;z-index:1;transition:opacity .3s ease}.race-cell{position:relative}.race-agent{filter:drop-shadow(0 0 4px currentColor);animation:agent-pulse 1s ease-in-out infinite;z-index:2}@keyframes agent-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.goal-icon{animation:goal-glow 1.5s ease-in-out infinite;filter:drop-shadow(0 0 4px var(--accent-lime))}@keyframes goal-glow{0%,to{opacity:1}50%{opacity:.7}}.obstacle{opacity:.85}.bonus{filter:drop-shadow(0 0 3px #22c55e);animation:bonus-float 2s ease-in-out infinite;transition:all .3s ease}.bonus.collected{opacity:.35;filter:grayscale(.5) drop-shadow(0 0 2px #22c55e);animation:none}@keyframes bonus-float{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.trap{filter:drop-shadow(0 0 3px #ef4444);animation:trap-pulse .8s ease-in-out infinite;transition:all .3s ease}.trap.hit{opacity:.35;filter:grayscale(.5) drop-shadow(0 0 2px #ef4444);animation:none}@keyframes trap-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(.95)}}.agent-stats{display:flex;gap:1rem;justify-content:center;margin-bottom:.5rem}.agent-stats .stat{display:flex;flex-direction:column;align-items:center;gap:.1rem}.agent-stats .stat-label{font-size:.65rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.agent-stats .stat-value{font-size:1rem;font-weight:600;font-family:var(--font-display);color:var(--text-primary)}.agent-description{text-align:center}.behavior-label{font-size:.75rem;color:var(--text-muted);line-height:1.4}.race-legend{display:flex;gap:3rem;justify-content:center;flex-wrap:wrap;margin-bottom:2rem;padding:1rem 1.5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;max-width:1400px;width:100%}.legend-section h4{font-size:.75rem;font-weight:500;color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.legend-item{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--text-secondary)}.legend-item .icon{font-size:1rem}.learning-section{max-width:1400px;width:100%;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem 2rem}.learning-title,.experiment-title{font-size:1rem;font-weight:500;color:var(--accent-cyan);letter-spacing:.03em;margin-bottom:1rem}.learning-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}.learning-card{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.learning-card.reflex{border-left:3px solid #ef4444}.learning-card.model-based{border-left:3px solid #f59e0b}.learning-card.goal-based{border-left:3px solid #3b82f6}.learning-card.utility-based{border-left:3px solid #22c55e}.card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.card-emoji{font-size:1.1rem}.card-title{font-size:.9rem;font-weight:600;color:var(--text-primary)}.learning-card p{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin:0}.experiment-section{border-top:1px solid var(--border-color);padding-top:1.5rem}.experiment-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem 2rem;margin:0;padding:0;list-style:none}.experiment-list li{font-size:.9rem;color:var(--text-secondary);line-height:1.5;padding-left:1.5rem;position:relative}.experiment-list li:before{content:"→";position:absolute;left:0;color:var(--accent-lime)}.experiment-list li strong{color:var(--text-primary)}@media (max-width: 1400px){.race-grids{grid-template-columns:repeat(2,1fr);gap:1.5rem}.learning-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 900px){.race-grids,.learning-grid,.experiment-list{grid-template-columns:1fr}.race-controls{flex-direction:column;align-items:stretch}.control-group{width:100%}.tool-buttons{flex-wrap:wrap}}@media (max-width: 480px){.race-cell{width:28px;height:28px;font-size:.9rem}.agent-grid{gap:1px}}.python-editor-wrapper{border-radius:8px;overflow:hidden;background:var(--bg-secondary);border:1px solid var(--border-color);display:flex;flex-direction:column}.python-editor-wrapper .cm-editor{flex:1}.python-editor-wrapper .cm-editor{background:transparent}.python-editor-wrapper .cm-scroller{font-family:var(--font-mono, "JetBrains Mono", monospace);line-height:1.6}.python-editor-wrapper.disabled{opacity:.7}.python-editor-wrapper.disabled .cm-editor{cursor:not-allowed}.python-editor-wrapper:focus-within{border-color:var(--accent-cyan);box-shadow:0 0 0 2px #00e5ff1a}.python-editor-wrapper .cm-scroller::-webkit-scrollbar{width:8px;height:8px}.python-editor-wrapper .cm-scroller::-webkit-scrollbar-track{background:var(--bg-tertiary)}.python-editor-wrapper .cm-scroller::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.python-editor-wrapper .cm-scroller::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.python-editor-wrapper .cm-placeholder{color:var(--text-muted);font-style:italic}.reflex-builder-page .builder-container{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:1600px;width:100%;margin-bottom:2rem}.builder-left{display:flex;flex-direction:column;gap:1.25rem}.scenario-selector h3{font-size:.9rem;font-weight:500;color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.scenario-list{display:flex;flex-wrap:wrap;gap:.5rem}.scenario-btn{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;padding:.5rem .75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s ease;min-width:140px}.scenario-btn:hover{border-color:var(--text-muted)}.scenario-btn.active{border-color:var(--accent-cyan);background:#00e5ff1a}.scenario-btn.completed{border-color:var(--accent-lime)}.scenario-btn.completed .scenario-name{color:var(--accent-lime)}.scenario-difficulty{font-size:.7rem;color:var(--accent-orange);letter-spacing:1px}.scenario-name{font-size:.85rem;font-weight:500;color:var(--text-primary)}.check-mark{position:absolute;top:.25rem;right:.25rem;color:var(--accent-lime);font-weight:700}.scenario-btn{position:relative}.scenario-info{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.scenario-info h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.scenario-info p{font-size:.9rem;color:var(--text-secondary);margin-bottom:.75rem;line-height:1.5}.hint-box{font-size:.85rem;color:var(--text-muted);background:var(--bg-tertiary);padding:.5rem .75rem;border-radius:6px;border-left:3px solid var(--accent-lavender)}.hint-box strong{color:var(--accent-lavender)}.grid-wrapper{display:flex;justify-content:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem}.builder-grid{display:grid;gap:2px;background:var(--bg-tertiary);padding:4px;border-radius:8px}.builder-cell{width:48px;height:48px;background:var(--bg-primary);border:1px solid rgba(45,51,59,.5);border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;position:relative}.builder-cell.wall{background:#6b72804d}.wall-icon{opacity:.9}.goal-icon{animation:goal-pulse 1.5s ease-in-out infinite;filter:drop-shadow(0 0 6px var(--accent-lime))}@keyframes goal-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.item-icon{animation:item-float 2s ease-in-out infinite;filter:drop-shadow(0 0 4px var(--accent-orange))}.item-icon.collected{opacity:.3;filter:grayscale(.5);animation:none}@keyframes item-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.agent-icon{font-size:1.75rem;transition:transform .15s ease;filter:drop-shadow(0 0 6px var(--accent-cyan));z-index:10}.percept-display{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.percept-display h4{font-size:.8rem;font-weight:500;color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.percept-values{display:flex;flex-wrap:wrap;gap:.75rem}.percept-item{font-size:.85rem;color:var(--text-secondary);background:var(--bg-tertiary);padding:.35rem .6rem;border-radius:4px;font-family:var(--font-mono)}.percept-item strong{color:var(--text-primary)}.percept-item.wall strong{color:#ef4444}.percept-item.goal strong{color:var(--accent-lime)}.last-action{margin-top:.75rem;font-size:.85rem;color:var(--text-muted)}.last-action strong{color:var(--accent-cyan);font-family:var(--font-mono)}.builder-controls{display:flex;justify-content:space-between;align-items:center;gap:1rem}.control-buttons{display:flex;gap:.75rem}.run-btn{padding:.75rem 1.5rem;font-size:1rem;font-weight:600;background:var(--accent-lime);color:#000;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.run-btn:hover{background:#c5e600;transform:scale(1.02)}.run-btn.running{background:var(--accent-orange)}.run-btn.running:hover{background:#ff9500}.reset-btn{padding:.75rem 1.25rem;font-size:.95rem;font-weight:500;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s ease}.reset-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.stats-display{display:flex;gap:1.5rem}.stats-display .stat{font-size:.9rem;color:var(--text-muted)}.stats-display .stat strong{color:var(--text-primary);font-family:var(--font-display)}.status-message{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:8px;animation:slide-in .3s ease}@keyframes slide-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.status-message.success{background:#d4ff001a;border:1px solid var(--accent-lime)}.status-message.failed{background:#ef44441a;border:1px solid #ef4444}.status-icon{font-size:1.5rem}.status-text{font-size:.95rem;color:var(--text-primary)}.status-text strong{display:block;margin-bottom:.25rem}.status-message.success .status-text{color:var(--accent-lime)}.status-message.failed .status-text{color:#ef4444}.bonus{color:var(--accent-orange)!important;font-weight:600}.builder-right{display:flex;flex-direction:column;gap:1rem}.editor-header{display:flex;justify-content:space-between;align-items:center}.editor-header h3{font-size:.9rem;font-weight:500;color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.05em}.editor-help{font-size:.8rem;color:var(--text-muted)}.editor-help code{background:var(--bg-tertiary);padding:.15rem .4rem;border-radius:3px;color:var(--accent-lavender);font-family:var(--font-mono)}.reflex-code-editor{flex:1;min-height:400px}.pyodide-loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0a0c0ed9;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.pyodide-loading{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;color:var(--text-primary);font-size:1rem}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--accent-cyan);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.pyodide-error{padding:1rem;margin-bottom:1rem;background:#ef44441a;border:1px solid #ef4444;border-radius:8px;color:#ef4444;max-width:1600px;width:100%}.editor-hints{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.editor-hints h4{font-size:.8rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;margin-top:1rem}.editor-hints h4:first-child{margin-top:0}.editor-hints ul{margin:0;padding-left:1.25rem}.editor-hints li{font-size:.85rem;color:var(--text-secondary);line-height:1.6}.editor-hints code{background:var(--bg-tertiary);padding:.1rem .35rem;border-radius:3px;color:var(--accent-lavender);font-family:var(--font-mono);font-size:.8rem}.example-code{background:var(--bg-tertiary);padding:.75rem 1rem;border-radius:6px;font-family:var(--font-mono);font-size:.8rem;color:var(--text-secondary);line-height:1.6;overflow-x:auto;margin:0}.reflex-builder-page .learning-section{max-width:1600px;width:100%;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem 2rem}.reflex-builder-page .learning-section h3{font-size:1rem;font-weight:500;color:var(--accent-cyan);letter-spacing:.03em;margin-bottom:1.25rem}.learning-content{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.reflex-builder-page .learning-card{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.reflex-builder-page .learning-card h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem}.reflex-builder-page .learning-card p{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin:0}@media (max-width: 1200px){.reflex-builder-page .builder-container{grid-template-columns:1fr}.learning-content{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.scenario-list{flex-direction:column}.scenario-btn{min-width:unset;width:100%}.builder-controls{flex-direction:column;align-items:stretch}.control-buttons,.stats-display{justify-content:center}.learning-content{grid-template-columns:1fr}.builder-cell{width:36px;height:36px;font-size:1.1rem}.agent-icon{font-size:1.3rem}}.planning-page .topics-columns{display:grid;grid-template-columns:1fr 1fr;gap:3rem;max-width:1000px;width:100%}.planning-page .topics-column{display:flex;flex-direction:column}.planning-page .column-title{font-size:1.3rem;font-weight:500;color:var(--text-primary);margin-bottom:1.25rem;display:flex;align-items:center;gap:.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--border-color)}.planning-page .column-icon{font-size:1.2rem}.planning-page .topics-list{display:flex;flex-direction:column;gap:1rem}.planning-page .topic-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem 1.5rem;display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;transition:all .2s ease;text-align:left}.planning-page .topic-card.enabled{cursor:pointer}.planning-page .topic-card.enabled:hover{background:var(--bg-tertiary);border-color:var(--accent-blue);transform:translateY(-2px);box-shadow:0 4px 20px #0000004d}.planning-page .topic-card.disabled{opacity:.4;cursor:not-allowed}.planning-page .topic-name{font-size:1.1rem;font-weight:500;color:var(--text-primary)}.planning-page .topic-description{font-size:.9rem;color:var(--text-secondary);font-weight:300;line-height:1.5}.planning-page .empty-column{background:var(--bg-secondary);border:1px dashed var(--border-color);border-radius:12px;padding:2rem 1.5rem;display:flex;align-items:center;justify-content:center}.planning-page .empty-message{color:var(--text-muted);font-size:.95rem;font-style:italic}@media (max-width: 768px){.planning-page .topics-columns{grid-template-columns:1fr;gap:2rem}}.algorithms-overview-page .intro-section{margin-bottom:2rem}.path-animation-container{display:flex;flex-direction:column;align-items:center;padding:1.5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;margin-bottom:1.5rem;overflow-x:auto}.path-animation-svg{border-radius:8px;overflow:hidden;max-width:100%;height:auto}.grid-cell{fill:var(--bg-primary);transition:fill .15s ease}.grid-cell.obstacle{fill:#4a5568}.grid-cell.explored{fill:#2a4a5a}.grid-cell.on-path{fill:#2d5a45}.grid-line{stroke:var(--border-color);stroke-width:1}.start-marker{fill:var(--accent-blue)}.goal-pole{fill:#9ca3af}.goal-flag{fill:var(--accent-green)}.robot{transition:transform .1s ease}.robot-body{fill:var(--accent-orange)}.robot-head{fill:#fbbf24}.robot-wheel{fill:#374151}.robot-eye{fill:#1f2937}.animation-labels{display:flex;gap:1.5rem;margin-top:1.25rem;flex-wrap:wrap;justify-content:center}.label-item{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--text-secondary)}.label-color{width:16px;height:16px;border-radius:4px;border:1px solid var(--border-color)}.label-color.start{background:var(--accent-blue)}.label-color.goal{background:var(--accent-green)}.label-color.obstacle{background:#4a5568}.label-color.explored{background:#2a4a5a}.label-color.path{background:#2d5a45}.animation-phase{margin-top:1rem;font-size:.9rem;color:var(--text-primary);font-weight:500;min-height:1.5rem}.intro-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem 2rem}.intro-content h2{font-size:1.25rem;font-weight:500;color:var(--text-primary);margin-bottom:.75rem}.intro-content h3{font-size:1.1rem;font-weight:500;color:var(--text-primary);margin-top:1.25rem;margin-bottom:.5rem}.intro-content p{color:var(--text-secondary);font-size:.95rem;line-height:1.7;margin-bottom:.75rem}.intro-content p:last-child{margin-bottom:0}.intro-content strong{color:var(--text-primary);font-weight:500}.algorithms-table-container{overflow-x:auto;border-radius:12px;border:1px solid var(--border-color);background:var(--bg-secondary)}.algorithms-table{width:100%;border-collapse:collapse;font-size:.9rem}.algorithms-table th{text-align:left;padding:1rem;background:var(--bg-tertiary);color:var(--text-primary);font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color);white-space:nowrap}.algorithms-table td{padding:1rem;color:var(--text-secondary);border-bottom:1px solid var(--border-color);vertical-align:top;line-height:1.5}.algorithms-table tbody tr:last-child td{border-bottom:none}.algorithms-table tbody tr:hover{background:#ffffff05}.algorithms-table tbody tr.has-interactive{background:#38bdf808}.algorithms-table tbody tr.has-interactive:hover{background:#38bdf80f}.algo-name-cell{min-width:160px}.algo-name{display:block;color:var(--text-primary);font-weight:500;margin-bottom:.5rem}.try-interactive-btn{background:transparent;color:var(--accent-blue);border:1px solid var(--accent-blue);border-radius:4px;padding:.35rem .6rem;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;text-decoration:none;display:inline-block}.try-interactive-btn:hover{background:var(--accent-blue);color:#fff}.type-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;white-space:nowrap}.type-badge.graph-based{background:#38bdf826;color:var(--accent-blue)}.type-badge.sampling-based{background:#fb923c26;color:var(--accent-orange)}.type-badge.reactive{background:#22c55e26;color:var(--accent-green)}@media (max-width: 1200px){.algorithms-table{font-size:.85rem}.algorithms-table th,.algorithms-table td{padding:.75rem}}@media (max-width: 768px){.algorithms-table{font-size:.8rem}.algorithms-table th,.algorithms-table td{padding:.5rem}.algo-name-cell{min-width:120px}}.visualization-container{display:flex;flex-direction:column;gap:.75rem;height:calc(100vh - 120px);min-height:500px}.visualization-header{display:flex;justify-content:space-between;align-items:center;flex-shrink:0;gap:1rem}.visualization-header-left{flex-shrink:0}.visualization-header-right{text-align:right}.visualization-header-right .subtitle{color:var(--text-secondary);font-size:.95rem}.visualization-main{background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-color);flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.visualization-controls-row{padding:1rem 1.25rem;border-bottom:1px solid var(--border-color);flex-shrink:0}.visualization-content{display:flex;flex:1;min-height:0;gap:1rem;padding:1rem}.visualization-area{flex:1;min-height:0;min-width:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.visualization-side-legend{display:flex;flex-direction:column;justify-content:center;flex-shrink:0}.visualization-side-legend .legend{flex-direction:column;align-items:flex-start;padding:1rem 1.25rem;gap:.75rem;border:none;background:var(--bg-tertiary)}.visualization-side-legend .legend-items{flex-direction:column;gap:.75rem}.visualization-side-legend .legend-item{font-size:.9rem}.visualization-side-legend .legend-dot{width:16px;height:16px}.controls-container{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.step-info{flex:1}.step-info h3{font-size:1rem;font-weight:600;margin-bottom:.25rem;color:var(--text-primary)}.step-description{color:var(--text-secondary);font-family:JetBrains Mono,monospace;font-size:.85rem}.buttons{display:flex;gap:.5rem;flex-shrink:0}.btn{padding:.5rem 1rem;border-radius:6px;font-size:.9rem;font-weight:500;display:flex;align-items:center;gap:.35rem}.btn-primary{background:var(--button-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--button-hover);transform:translateY(-1px)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--bg-card);color:var(--text-primary);border-color:var(--text-muted)}.legend{background:var(--bg-secondary);border-radius:12px;padding:.75rem 1.25rem;border:1px solid var(--border-color);display:flex;align-items:center;gap:1rem;flex-wrap:wrap;flex-shrink:0}.legend-title{font-weight:600;font-size:.9rem;color:var(--text-primary)}.legend-items{display:flex;gap:1.25rem;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.4rem;color:var(--text-secondary);font-size:.85rem}.legend-dot{width:14px;height:14px;border-radius:50%}@media (max-width: 768px){.visualization-header h3{font-size:1.25rem}.controls-container{flex-direction:column;align-items:stretch;gap:1rem}.buttons{justify-content:center;flex-wrap:wrap}.btn{flex:1;justify-content:center;min-width:100px}.legend-items{gap:1rem}}.graph-svg{width:100%;height:100%}.edge{stroke:var(--text-muted);stroke-width:2;transition:stroke .3s ease,stroke-width .3s ease}.edge.highlighted{stroke:var(--accent-blue);stroke-width:3}.edge-weight{fill:var(--text-secondary);font-size:18px;font-family:JetBrains Mono,monospace;font-weight:600;text-anchor:middle;dominant-baseline:middle}.node{stroke-width:3;transition:fill .3s ease,stroke .3s ease}.node-label{fill:#fff;font-size:24px;font-weight:700;text-anchor:middle;dominant-baseline:middle;pointer-events:none}.node-value,.node-distance,.node-scores{fill:#fffffff2;font-size:16px;font-family:JetBrains Mono,monospace;font-weight:600;text-anchor:middle;dominant-baseline:middle;pointer-events:none}.node-value-secondary,.node-f-score{fill:#ffffffd9;font-size:15px;font-family:JetBrains Mono,monospace;font-weight:500;text-anchor:middle;dominant-baseline:middle;pointer-events:none}.node.unvisited{fill:var(--node-unvisited);stroke:#6b7280}.node.current{fill:var(--accent-orange);stroke:#fdba74}.node.examining{fill:var(--accent-blue);stroke:#93c5fd}.node.visited,.node.closed{fill:var(--accent-green);stroke:#86efac}.node.open{fill:var(--accent-blue);stroke:#93c5fd;opacity:.7}.node.goal,.node.in-path{fill:var(--accent-purple);stroke:#c4b5fd}.node-group.visited .node-label,.node-group.visited .node-value,.node-group.visited .node-distance,.node-group.visited .node-scores,.node-group.visited .node-value-secondary,.node-group.visited .node-f-score,.node-group.closed .node-label,.node-group.closed .node-value,.node-group.closed .node-distance,.node-group.closed .node-scores,.node-group.closed .node-value-secondary,.node-group.closed .node-f-score{fill:#1a1a1a}.edge.in-path,.edge.in-shortest-path{stroke:var(--accent-purple);stroke-width:4}.node.in-path{stroke-width:4}:root{--accent-purple: #8b5cf6}.astar-content{display:flex;flex-direction:column;align-items:center;flex:1;height:100%;gap:1rem;min-width:0}.astar-content .graph-svg{width:100%;flex:1;min-height:0}.astar-content .node.goal-node{stroke-width:4;stroke-dasharray:5 3}.astar-content .node.in-path{stroke-width:4}.astar-content .h-badge-circle{fill:var(--accent-purple);stroke:#c4b5fd;stroke-width:2;opacity:.9}.astar-content .h-badge-text{fill:#fff;font-size:14px;font-family:JetBrains Mono,monospace;font-weight:600;text-anchor:middle;dominant-baseline:middle;pointer-events:none}.sets-visualization{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}.set-display{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--bg-tertiary);border-radius:8px;border:1px solid var(--border-color);min-width:150px}.set-label{color:var(--text-secondary);font-weight:500;font-size:.9rem;white-space:nowrap}.set-items{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.set-item{display:flex;align-items:center;justify-content:center;padding:.25rem .5rem;background:var(--accent-blue);color:#fff;font-weight:600;font-size:.85rem;border-radius:6px;transition:transform .2s ease,background-color .2s ease;opacity:.7}.set-item.best{background:var(--accent-orange);opacity:1}.set-item sub{font-size:.7rem;opacity:.8;margin-left:2px}.set-empty{color:var(--text-muted);font-style:italic;font-size:.9rem}.algorithm-page{display:flex;flex-direction:column;height:100%;padding:1rem 1.5rem;gap:.5rem}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-secondary);text-decoration:none;font-size:.9rem;padding:.5rem 0;transition:color .2s ease;align-self:flex-start}.back-link:hover{color:var(--text-primary)}.algorithm-page-title{font-size:1.75rem;font-weight:600;color:var(--text-primary);margin:0}.app{min-height:100vh;display:flex;flex-direction:column}.header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);padding:0 1.5rem;height:60px;display:flex;align-items:center}.header-content{max-width:1400px;margin:0 auto;width:100%;display:flex;align-items:center;gap:2rem}.header-nav{margin-left:auto}.nav-link{color:var(--text-secondary);text-decoration:none;font-size:.9rem;font-weight:500;padding:.5rem 1rem;border-radius:6px;transition:all .2s ease}.nav-link:hover{color:var(--text-primary);background:var(--bg-tertiary)}.logo{text-decoration:none;transition:opacity .2s ease}.logo:hover{opacity:.85}.breadcrumbs{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.breadcrumb-link{color:var(--text-secondary);text-decoration:none;transition:color .2s ease}.breadcrumb-link:hover{color:var(--accent-blue)}.breadcrumb-separator{color:var(--text-muted)}.breadcrumb-current{color:var(--text-primary)}.main-content{flex:1;display:flex;flex-direction:column}*{margin:0;padding:0;box-sizing:border-box}:root{--font-body: "Source Sans 3", -apple-system, BlinkMacSystemFont, sans-serif;--font-display: "Space Mono", monospace;--bg-primary: #0d1117;--bg-secondary: #161b22;--bg-tertiary: #1c2128;--bg-card: #141820;--text-primary: #ffffff;--text-secondary: #d1d5db;--text-muted: #9ca3af;--accent-lime: #d4ff00;--accent-cyan: #00e5ff;--accent-lavender: #a78bfa;--accent-green: #d4ff00;--accent-blue: #00e5ff;--accent-purple: #a78bfa;--accent-orange: #ff9f43;--node-unvisited: #4b5563;--border-color: #2d333b;--button-primary: #00e5ff;--button-hover: #00c4db}body{font-family:var(--font-body);background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.6}#root{min-height:100vh}button{font-family:var(--font-body);cursor:pointer;border:none;outline:none;transition:all .2s ease}button:disabled{opacity:.5;cursor:not-allowed}select{font-family:var(--font-body)}h1,h2,h3{font-family:var(--font-body);font-weight:600}
