.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-family:var(--font-heading);font-size:2.5rem;font-weight:400;letter-spacing:-.02em;margin-bottom:.75rem;color:var(--accent-lime)}.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;background-image:radial-gradient(circle,rgba(255,255,255,.18) 1px,transparent 1px),radial-gradient(ellipse at 50% 20%,rgba(0,136,255,.1) 0%,rgba(212,255,0,.04) 30%,transparent 60%);background-size:28px 28px,100% 100%;background-position:center top}.home-page .page-layout__content{display:flex;flex-direction:column;align-items:center;flex:1}.hero{display:flex;align-items:center;gap:3rem;max-width:1200px;width:100%;margin-bottom:4rem;min-height:340px}.hero-text{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:1.25rem}.hero-logo{margin-bottom:.25rem}.hero-subtitle{font-size:1.1rem;color:var(--text-secondary);font-weight:300;line-height:1.7;max-width:560px}.hero-cta{display:inline-flex;align-items:center;gap:.5rem;margin-top:.5rem;padding:.6rem 1.4rem;border:1px solid rgba(212,255,0,.35);border-radius:8px;background:#d4ff000f;color:var(--accent-lime);font-family:var(--font-display);font-size:.85rem;letter-spacing:.04em;cursor:pointer;transition:all .25s ease}.hero-cta:hover{background:#d4ff001f;border-color:#d4ff0080;transform:translateY(-1px)}.hero-cta svg{opacity:.7;transition:transform .25s ease}.hero-cta:hover svg{transform:translateY(2px);opacity:1}.hero-visual-wrapper{flex:1;display:flex;align-items:center;justify-content:center;position:relative;padding:3rem}.hero-visual-wrapper:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;height:90%;background:radial-gradient(ellipse at center,rgba(0,136,255,.18) 0%,rgba(167,139,250,.12) 25%,rgba(212,255,0,.06) 45%,transparent 70%);border-radius:50%;filter:blur(50px);pointer-events:none}.hero-animation{position:relative;width:100%;max-width:480px;height:auto}.hero-detect{transform-box:fill-box;transform-origin:center;animation:heroDetect 2.5s ease-in-out infinite}.hero-path{stroke-dasharray:10 6;opacity:.45;animation:heroPathFlow 1.5s linear infinite}.hero-agent{animation:heroAgentBreathe 4s ease-in-out infinite}.hero-node{animation:heroNodePulse 2.5s ease-in-out infinite}.hero-particle{transform-box:fill-box;transform-origin:center;animation:heroParticleFloat 4s ease-in-out infinite}@keyframes heroDetect{0%,to{opacity:.15;transform:scale(.7)}50%{opacity:.65;transform:scale(1.3)}}@keyframes heroPathFlow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-16}}@keyframes heroAgentBreathe{0%,to{stroke-opacity:1}50%{stroke-opacity:.55}}@keyframes heroNodePulse{0%,to{opacity:.15}50%{opacity:.5}}@keyframes heroParticleFloat{0%{opacity:0;transform:translateY(0)}25%{opacity:.45;transform:translateY(-3px)}75%{opacity:.4;transform:translateY(-9px)}to{opacity:0;transform:translateY(-12px)}}.courses-heading{font-family:var(--font-heading);font-size:1.1rem;font-weight:400;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:1.25rem;max-width:1200px;width:100%}.courses-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;max-width:1200px;width:100%}.course-card{background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:0;display:flex;flex-direction:column;align-items:flex-start;gap:0;transition:all .3s ease;text-align:left;position:relative;overflow:hidden}.course-card.enabled:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);opacity:1;transition:opacity .3s ease}.course-card.enabled{cursor:pointer}.course-visual{width:100%;padding:1.25rem 1rem .75rem;display:flex;align-items:center;justify-content:center;border-bottom:1px solid rgba(255,255,255,.05)}.course-visual-svg{width:100%;height:auto;max-height:120px}.course-card.accent-lime.enabled:hover{border-color:#d4ff004d;background:#d4ff000a;box-shadow:0 8px 32px #d4ff0014,0 0 0 1px #d4ff000d;transform:translateY(-4px)}.course-card.accent-blue.enabled:hover{border-color:#0088ff59;background:#0088ff0d;box-shadow:0 8px 32px #0088ff1a,0 0 0 1px #0088ff0f;transform:translateY(-4px)}.course-card.accent-lavender.enabled:hover{border-color:#a78bfa59;background:#a78bfa0d;box-shadow:0 8px 32px #a78bfa1a,0 0 0 1px #a78bfa0f;transform:translateY(-4px)}.course-card.accent-orange.enabled:hover{border-color:#ff9f4359;background:#ff9f430d;box-shadow:0 8px 32px #ff9f431a,0 0 0 1px #ff9f430f;transform:translateY(-4px)}.course-card.disabled{opacity:.7;cursor:not-allowed}.course-card__header{display:flex;align-items:center;justify-content:space-between;width:100%;gap:.5rem}.course-name{font-size:1.1rem;font-weight:600;color:var(--text-primary);line-height:1.3}.course-description{font-size:.85rem;color:var(--text-secondary);line-height:1.6;font-weight:300}.course-card__header,.course-description,.course-meta{padding-left:1.5rem;padding-right:1.5rem}.course-card__header{padding-top:1rem}.course-description{padding-top:.4rem}.course-meta{font-size:.75rem;color:var(--text-muted);font-weight:500;text-transform:uppercase;letter-spacing:.05em;margin-top:auto;padding-top:.5rem;padding-bottom:1.25rem}.coming-soon-badge{font-family:var(--font-display);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);background:#ffffff0d;padding:.25rem .5rem;border-radius:4px;flex-shrink:0;white-space:nowrap}@media (max-width: 960px){.hero{flex-direction:column;text-align:center;gap:2rem;min-height:auto}.hero-text{align-items:center}.hero-subtitle{max-width:520px}.hero-visual-wrapper{width:100%;max-width:400px}.hero-animation{max-width:100%}.courses-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.hero-visual-wrapper{max-width:320px}.courses-grid{grid-template-columns:1fr;max-width:480px}}@media (max-width: 480px){.course-card__header,.course-description,.course-meta{padding-left:1rem;padding-right:1rem}.course-name{font-size:1rem}.course-description{font-size:.8125rem}.course-visual{padding:1rem .75rem .5rem}}.home-footer{margin-top:auto;padding:2.5rem 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}}.course-hero{display:flex;align-items:center;gap:2.5rem;max-width:860px;width:100%;margin:0 auto;padding:1rem 0 2.5rem}.course-hero__text{flex:1;min-width:0}.course-hero__title{font-family:var(--font-heading);font-size:2.5rem;font-weight:400;letter-spacing:-.02em;margin-bottom:.75rem;color:var(--text-primary)}.course-hero__description{font-size:1.1rem;color:var(--text-secondary);font-weight:300;line-height:1.6}.course-hero__visual{flex-shrink:0;width:260px}.course-hero__visual .course-visual{padding:0;border-bottom:none}.course-hero__visual .course-visual-svg{max-height:140px}@media (max-width: 768px){.course-hero{flex-direction:column;text-align:center;gap:1.5rem}.course-hero__title{font-size:2rem}.course-hero__visual{width:220px}}@media (max-width: 480px){.course-hero__visual{width:180px}}.foundations-page.page-layout{background-image:radial-gradient(circle,rgba(255,255,255,.18) 1px,transparent 1px),radial-gradient(ellipse at 50% 20%,rgba(0,136,255,.1) 0%,rgba(212,255,0,.04) 30%,transparent 60%);background-size:28px 28px,100% 100%;background-position:center top}.foundations-page .course-list{display:flex;flex-direction:column;gap:.75rem;max-width:860px;width:100%;margin:0 auto}.foundations-page .course-item{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1.25rem;transition:all .2s ease;text-align:left}.foundations-page .course-item.enabled{cursor:pointer}.foundations-page .course-item.enabled:hover{background:#ffffff14;border-color:var(--accent-cyan);transform:translate(4px)}.foundations-page .course-item.disabled{opacity:.4;cursor:not-allowed}.foundations-page .course-item.completed{border-color:#00e5ff40}.foundations-page .course-item__number{font-size:.75rem;font-weight:600;color:var(--text-muted);min-width:1.5rem;text-align:center;flex-shrink:0}.foundations-page .course-item__icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;border-radius:10px;background:#ffffff0f}.foundations-page .course-item__icon svg{width:22px;height:22px}.foundations-page .course-item__icon.learn{color:var(--accent-lime)}.foundations-page .course-item__icon.lab{color:var(--accent-cyan)}.foundations-page .course-item__info{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.foundations-page .course-item__header{display:flex;align-items:center;gap:.75rem}.foundations-page .course-item__title{font-size:1.1rem;font-weight:600;color:var(--text-primary);line-height:1.3}.foundations-page .course-item__badge{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding:.15rem .5rem;border-radius:4px;flex-shrink:0;white-space:nowrap}.foundations-page .course-item__badge.learn{color:var(--accent-lime);background:#d4ff001a}.foundations-page .course-item__badge.lab{color:var(--accent-cyan);background:#00e5ff1a}.foundations-page .course-item__description{font-size:.875rem;color:var(--text-secondary);line-height:1.5;font-weight:300}.foundations-page .course-item__complete{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--accent-cyan);color:var(--bg-primary);font-size:.75rem;font-weight:600;flex-shrink:0}.foundations-page .course-item__arrow{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-muted);transition:color .2s ease,transform .2s ease}.foundations-page .course-item__arrow svg{width:18px;height:18px}.foundations-page .course-item.enabled:hover .course-item__arrow{color:var(--accent-cyan);transform:translate(2px)}@media (max-width: 480px){.foundations-page .course-item{padding:1rem;gap:.75rem}.foundations-page .course-item__number{display:none}.foundations-page .course-item__icon{width:36px;height:36px}.foundations-page .course-item__icon svg{width:18px;height:18px}.foundations-page .course-item__title{font-size:1rem}.foundations-page .course-item__description{font-size:.8125rem}}.key-takeaways-section{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(212,255,0,.05) 100%);border:1px solid var(--border-color);border-radius:12px;padding:2rem;margin-top:2rem}.key-takeaways-section h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.takeaways-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:1.5rem 0}.takeaway{display:flex;gap:1rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem}.takeaway-number{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--accent-cyan);border-radius:50%;color:#000;font-weight:700;font-size:.95rem}.takeaway-content h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 .35rem}.takeaway-content p{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin:0}.next-steps-box{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem 1.5rem;margin-top:1rem}.next-steps-box h4{font-size:1rem;font-weight:600;color:var(--accent-lime);margin:0 0 .5rem}.next-steps-box p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0}@media (max-width: 900px){.takeaways-grid{grid-template-columns:1fr}}@media (max-width: 768px){.key-takeaways-section{padding:1.5rem}.key-takeaways-section h2{font-size:1.2rem}}.keep-learning{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem 2.5rem}.keep-learning h2{font-size:1.3rem;font-weight:500;color:var(--text-primary);margin-bottom:.75rem}.keep-learning__intro{font-size:.95rem;line-height:1.6;color:var(--text-secondary);margin-bottom:1.5rem}.keep-learning__next h3,.keep-learning__labs h3,.keep-learning__related h3{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:.75rem}.keep-learning__next{margin-bottom:2rem}.keep-learning__next-card{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#00e5ff14,#d4ff000d);border:1px solid var(--accent-cyan);border-radius:10px;text-decoration:none;transition:all .2s ease}.keep-learning__next-card:hover{background:linear-gradient(135deg,#00e5ff1f,#d4ff0014);transform:translate(4px);box-shadow:0 4px 12px #00e5ff26}.keep-learning__next-content{display:flex;flex-direction:column;gap:.25rem}.keep-learning__next-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--accent-cyan)}.keep-learning__next-content h4{font-size:1.1rem;font-weight:500;color:var(--text-primary);margin:0}.keep-learning__next-content p{font-size:.875rem;line-height:1.5;color:var(--text-secondary);margin:0;margin-top:.25rem}.keep-learning__next-arrow{font-size:1.5rem;color:var(--accent-cyan);flex-shrink:0;margin-left:1rem}.keep-learning__labs{margin-bottom:2rem}.keep-learning__labs:last-child,.keep-learning__related:last-child{margin-bottom:0}.keep-learning__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.25rem}.keep-learning__card{display:flex;gap:1rem;padding:1.25rem 1.5rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;text-decoration:none;transition:all .2s ease}.keep-learning__card:hover{border-color:var(--accent-cyan);background:var(--bg-tertiary);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.keep-learning__card-icon{font-size:2rem;line-height:1;flex-shrink:0}.keep-learning__card-content{display:flex;flex-direction:column;gap:.5rem}.keep-learning__card-content h4{font-size:1.05rem;font-weight:500;color:var(--text-primary);margin:0}.keep-learning__card-content p{font-size:.875rem;line-height:1.5;color:var(--text-secondary);margin:0}.keep-learning__card-cta{font-size:.85rem;font-weight:500;color:var(--accent-cyan);margin-top:.25rem}.keep-learning__card:hover .keep-learning__card-cta{text-decoration:underline}@media (max-width: 768px){.keep-learning{padding:1.5rem}.keep-learning__next-card{flex-direction:column;text-align:center;gap:1rem}.keep-learning__next-arrow{display:none}.keep-learning__grid{grid-template-columns:1fr}.keep-learning__card{flex-direction:column;text-align:center}.keep-learning__card-icon{align-self:center}}.login-prompt-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease}.login-prompt-modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:2rem;width:100%;max-width:400px;animation:slideUp .3s ease}.login-prompt-header{text-align:center;margin-bottom:1.5rem}.login-prompt-header h2{font-size:1.35rem;color:var(--text-primary);margin-bottom:.5rem}.login-prompt-header p{color:var(--text-muted);font-size:.9rem}.login-prompt-form{display:flex;flex-direction:column;gap:.875rem}.login-prompt-form .form-group{display:flex;flex-direction:column;gap:.35rem}.login-prompt-form .form-group label{font-size:.8rem;font-weight:500;color:var(--text-secondary)}.login-prompt-form .form-group input{padding:.625rem .875rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.9rem;transition:border-color .2s ease}.login-prompt-form .form-group input::placeholder{color:var(--text-muted)}.login-prompt-form .form-group input:focus{outline:none;border-color:var(--accent-cyan)}.login-prompt-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:.625rem .875rem;border-radius:6px;font-size:.85rem}.login-prompt-submit{padding:.75rem 1.25rem;background:var(--accent-cyan);color:#000;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:.25rem}.login-prompt-submit:hover:not(:disabled){background:#00c4db}.login-prompt-submit:disabled{opacity:.7;cursor:not-allowed}.login-prompt-switch{text-align:center;margin-top:1rem}.login-prompt-switch p{color:var(--text-muted);font-size:.85rem}.login-prompt-switch button{background:none;border:none;color:var(--accent-cyan);font-size:.85rem;cursor:pointer;text-decoration:underline}.login-prompt-divider{display:flex;align-items:center;margin:1.25rem 0}.login-prompt-divider:before,.login-prompt-divider:after{content:"";flex:1;height:1px;background:var(--border-color)}.login-prompt-divider span{padding:0 1rem;color:var(--text-muted);font-size:.8rem;text-transform:uppercase}.login-prompt-skip{width:100%;padding:.75rem 1.25rem;background:transparent;border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);font-size:.9rem;cursor:pointer;transition:all .2s ease}.login-prompt-skip:hover{border-color:var(--text-muted);color:var(--text-primary)}.login-prompt-skip-note{text-align:center;color:var(--text-muted);font-size:.75rem;margin-top:.5rem}@media (max-width: 480px){.login-prompt-modal{margin:1rem;padding:1.5rem}}.mark-complete{display:flex;justify-content:center;margin:2rem 0}.mark-complete__button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary)}.mark-complete__button:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--accent-cyan);color:var(--text-primary)}.mark-complete__button:disabled{opacity:.6;cursor:not-allowed}.mark-complete__button--completed{background:#00e5ff1a;border-color:var(--accent-cyan);color:var(--accent-cyan)}.mark-complete__button--completed:hover:not(:disabled){background:#00e5ff26}.mark-complete__icon{font-size:1.1rem;line-height:1}.mark-complete__icon--empty{font-size:1rem;opacity:.7}.mark-complete__loading{color:var(--text-muted);font-style:italic}.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}.intro-agents-page .demo-layout{flex-direction:column;align-items:center}.intro-agents-page .rules-panel{width:100%;min-width:unset}}.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;scroll-margin-top: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)}.agent-architectures-page .comparison-table .table-link{color:var(--text-primary);text-decoration:none;font-weight:500;transition:color .2s ease}.agent-architectures-page .comparison-table .table-link:hover{color:var(--accent-cyan);text-decoration:underline}.agent-architectures-page .intro-section .comparison-table-container{margin-top:1.5rem}.agent-architectures-page .interactive-demo{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.agent-architectures-page .interactive-demo h4{font-size:1rem;font-weight:500;color:var(--text-primary);margin:0 0 .5rem}.agent-architectures-page .demo-intro{font-size:.9rem;color:var(--text-secondary);margin:0 0 1.25rem;line-height:1.6}.agent-architectures-page .reflex-grid-demo{background:var(--bg-primary);border-radius:8px;padding:1.5rem}.agent-architectures-page .demo-layout{display:flex;gap:2rem;align-items:flex-start;justify-content:space-between}.agent-architectures-page .demo-grid-container{display:flex;flex-direction:column;align-items:center;gap:.75rem}.agent-architectures-page .demo-grid{display:grid;gap:2px;background:var(--border-color);padding:2px;border-radius:6px}.agent-architectures-page .demo-cell{width:52px;height:52px;background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;position:relative;transition:background-color .3s ease}.agent-architectures-page .demo-cell.obstacle{background:var(--bg-tertiary)!important}.agent-architectures-page .demo-cell.goal-cell{background:#d4ff0026!important}.agent-architectures-page .demo-cell.visited{background:#00e5ff1a}.agent-architectures-page .demo-cell.visited.goal-cell{background:linear-gradient(135deg,#00e5ff1a,#d4ff0026)!important}.agent-architectures-page .demo-cell.on-path{background:#ff9f4333}.agent-architectures-page .demo-cell.on-breadcrumb{background:#00e5ff40}.agent-architectures-page .breadcrumb-marker{font-size:20px;color:var(--accent-cyan);opacity:.9;font-weight:700}.agent-architectures-page .demo-cell.current-target{box-shadow:inset 0 0 0 2px var(--accent-orange)}.agent-architectures-page .path-dot{font-size:24px;color:var(--accent-orange);opacity:.8}.agent-architectures-page .obstacle-icon,.agent-architectures-page .goal-icon{font-size:20px}.agent-architectures-page .sample-icon{font-size:18px;animation:pulse-sample 2s ease-in-out infinite}@keyframes pulse-sample{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.agent-architectures-page .rover-icon{color:var(--accent-orange);display:flex;align-items:center;justify-content:center;width:36px;height:36px;transition:transform .15s ease,color .15s ease}.agent-architectures-page .rover-icon svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.agent-architectures-page .rover-icon.complete{color:var(--accent-lime);animation:celebrate .5s ease-in-out}.agent-architectures-page .rover-icon.simple,.agent-architectures-page .rover-icon.model-based,.agent-architectures-page .rover-icon.goal-based{color:var(--accent-orange)}@keyframes celebrate{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}.agent-architectures-page .demo-controls{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:center}.agent-architectures-page .demo-btn{padding:.4rem .75rem;border:none;border-radius:5px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease}.agent-architectures-page .demo-btn.start{background:var(--accent-cyan);color:#000}.agent-architectures-page .demo-btn.start:hover:not(:disabled){background:#00c4db}.agent-architectures-page .demo-btn.stop{background:#f59e0b;color:#000}.agent-architectures-page .demo-btn.stop:hover{background:#d97706}.agent-architectures-page .demo-btn.step{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--text-muted)}.agent-architectures-page .demo-btn.step:hover:not(:disabled){border-color:var(--accent-cyan);color:var(--accent-cyan)}.agent-architectures-page .demo-btn.reset,.agent-architectures-page .demo-btn.shuffle{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color)}.agent-architectures-page .demo-btn.reset:hover,.agent-architectures-page .demo-btn.shuffle:hover{border-color:var(--text-muted);color:var(--text-primary)}.agent-architectures-page .demo-btn:disabled{opacity:.4;cursor:not-allowed}.agent-architectures-page .demo-stats{display:flex;gap:1rem;font-size:.8rem;color:var(--text-secondary)}.agent-architectures-page .demo-stats .success{color:var(--accent-lime);font-weight:500}.agent-architectures-page .rules-panel{flex:1;min-width:280px;max-width:450px}.agent-architectures-page .rules-panel h4{font-size:1rem;font-weight:500;color:var(--text-primary);margin:0 0 1rem}.agent-architectures-page .rules-list{display:flex;flex-direction:column;gap:.6rem}.agent-architectures-page .rule-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;padding:.75rem 1rem;transition:all .3s ease}.agent-architectures-page .rule-item.active{border-color:var(--accent-lime);background:#d4ff0014}.agent-architectures-page .rule-number{font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.4rem}.agent-architectures-page .rule-item.active .rule-number{color:var(--accent-lime)}.agent-architectures-page .rule-content{font-size:.875rem;line-height:1.5}.agent-architectures-page .rule-condition{color:var(--text-secondary);margin-bottom:.15rem}.agent-architectures-page .rule-action{color:var(--text-primary)}.agent-architectures-page .rule-label{font-weight:600;color:var(--accent-cyan);margin-right:.3rem;font-size:.75rem}.agent-architectures-page .rules-note{margin-top:1rem;padding:.75rem 1rem;background:#00e5ff0f;border-radius:6px;font-size:.8rem;color:var(--text-secondary);line-height:1.6}.agent-architectures-page .rules-note strong{color:var(--accent-cyan)}.agent-architectures-page .internal-state-display{margin-top:1rem;padding:.75rem 1rem;background:#00e5ff1a;border:1px solid rgba(0,229,255,.3);border-radius:6px;font-size:.8rem;color:var(--text-secondary);line-height:1.6}.agent-architectures-page .internal-state-display strong{color:var(--accent-cyan)}.agent-architectures-page .internal-state-display .state-items{display:flex;gap:1rem;margin-top:.4rem;font-size:.75rem}.agent-architectures-page .internal-state-display .state-items span{background:#0003;padding:.2rem .5rem;border-radius:4px}.agent-architectures-page .internal-state-display .state-note{margin-top:.5rem;font-size:.7rem;color:var(--text-tertiary);font-style:italic}.agent-architectures-page .no-memory-note{margin-top:1rem;padding:.6rem .8rem;background:#d4ff001a;border:1px solid rgba(212,255,0,.3);border-radius:6px;font-size:.75rem;color:var(--text-secondary)}.agent-architectures-page .no-memory-note strong{color:var(--accent-lime)}.agent-architectures-page .goal-state-display{margin-top:1rem;padding:.75rem 1rem;background:#ff9f431a;border:1px solid rgba(255,159,67,.3);border-radius:6px;font-size:.8rem;color:var(--text-secondary);line-height:1.8}.agent-architectures-page .goal-state-display strong{color:var(--accent-orange)}.agent-architectures-page .demo-cell.hazard{position:relative}.agent-architectures-page .demo-cell.hazard-5{background:#ef444440!important}.agent-architectures-page .demo-cell.hazard-3{background:#fbbf2440!important}.agent-architectures-page .demo-cell.hazard.on-path{background:linear-gradient(135deg,#ff9f434d,#ef444433)!important}.agent-architectures-page .hazard-indicator{font-size:16px;opacity:.7}.agent-architectures-page .rover-icon.utility-based{color:var(--accent-orange)}.agent-architectures-page .hazard-legend{display:flex;gap:1rem;font-size:.75rem;color:var(--text-secondary);margin-top:.5rem}.agent-architectures-page .hazard-legend .legend-item{display:flex;align-items:center;gap:.25rem}.agent-architectures-page .hazard-sample{font-size:12px}.agent-architectures-page .hazard-sample.high{color:#ef4444}.agent-architectures-page .hazard-sample.med{color:#fbbf24}.agent-architectures-page .utility-score{font-weight:600}.agent-architectures-page .utility-score.positive{color:var(--accent-lime)}.agent-architectures-page .utility-score.negative{color:#ef4444}.agent-architectures-page .utility-calculation{margin-top:1rem;padding:.75rem 1rem;background:#ff9f431a;border:1px solid rgba(255,159,67,.3);border-radius:6px;font-size:.8rem}.agent-architectures-page .utility-calculation strong{color:var(--accent-orange);display:block;margin-bottom:.5rem}.agent-architectures-page .calc-row{display:flex;justify-content:space-between;padding:.2rem 0;color:var(--text-secondary)}.agent-architectures-page .calc-row.total{border-top:1px solid var(--border-color);margin-top:.25rem;padding-top:.35rem;font-weight:600;color:var(--text-primary)}.agent-architectures-page .calc-row .positive{color:var(--accent-lime)}.agent-architectures-page .calc-row .negative{color:#ef4444}.agent-architectures-page .rover-icon.learning{color:var(--accent-orange)}.agent-architectures-page .learning-agent .demo-cell.unexplored{background:#1e1e28e6;position:relative}.agent-architectures-page .learning-agent .fog-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:#ffffff4d;font-weight:700;z-index:1}.agent-architectures-page .learning-agent .demo-cell.explored{background:#d4ff0014;box-shadow:inset 0 0 0 1px #d4ff0026}.agent-architectures-page .learning-agent .demo-cell.explored:not(.known-hazard){animation:revealCell .3s ease-out}@keyframes revealCell{0%{background:#d4ff004d}to{background:#d4ff0014}}.agent-architectures-page .demo-cell.known-hazard{background:#ef444433}.agent-architectures-page .demo-cell.just-discovered{animation:hazardDiscovered .5s ease-out;background:#ef444466!important}@keyframes hazardDiscovered{0%{background:#ef4444cc;transform:scale(1.1)}to{background:#ef444466;transform:scale(1)}}.agent-architectures-page .learned-hazard{font-size:16px;color:#ef4444}.agent-architectures-page .demo-btn.new-episode{background:var(--accent-lime);color:#000;font-weight:500}.agent-architectures-page .demo-btn.new-episode:hover{background:#c4e600}.agent-architectures-page .episode-badge{background:var(--accent-orange);color:#000;padding:.15rem .5rem;border-radius:4px;font-weight:600;font-size:.75rem}.agent-architectures-page .score{font-weight:600}.agent-architectures-page .score.positive{color:var(--accent-lime)}.agent-architectures-page .score.negative{color:#ef4444}.agent-architectures-page .learning-status{margin-top:1rem;padding:.75rem 1rem;background:#a78bfa1a;border:1px solid rgba(167,139,250,.3);border-radius:6px;font-size:.8rem}.agent-architectures-page .learning-status strong{color:var(--accent-lavender);display:block;margin-bottom:.35rem}.agent-architectures-page .knowledge-info{color:var(--text-secondary)}.agent-architectures-page .discovery-alert{margin-top:.5rem;padding:.4rem .6rem;background:#ef444426;border-radius:4px;color:#ef4444;font-weight:500;animation:pulseAlert .5s ease-out}@keyframes pulseAlert{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.agent-architectures-page .episode-history{margin-top:1rem;padding:.75rem 1rem;background:#d4ff0014;border:1px solid rgba(212,255,0,.2);border-radius:6px;font-size:.8rem}.agent-architectures-page .episode-history strong{color:var(--accent-lime);display:block;margin-bottom:.5rem}.agent-architectures-page .scores-list{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem}.agent-architectures-page .episode-score{padding:.2rem .5rem;border-radius:4px;font-weight:500;font-size:.75rem}.agent-architectures-page .episode-score.good{background:#d4ff0026;color:var(--accent-lime)}.agent-architectures-page .episode-score.bad{background:#ef444426;color:#ef4444}.agent-architectures-page .improvement{color:var(--text-secondary);font-size:.75rem;padding-top:.25rem;border-top:1px solid var(--border-color)}.agent-architectures-page .qlearning-agent .qlearning-grid{position:relative}.agent-architectures-page .qlearning-cell{position:relative;overflow:hidden}.agent-architectures-page .qlearning-cell .heat-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--heat-color, transparent);transition:background .3s ease;z-index:0}.agent-architectures-page .qlearning-cell.rough-terrain{background:#fbbf2426}.agent-architectures-page .qlearning-cell.hazard-terrain{background:#ef444433}.agent-architectures-page .qlearning-cell.goal-cell{background:#d4ff0033!important}.agent-architectures-page .qlearning-cell.just-updated{animation:qUpdatePulse .4s ease-out}@keyframes qUpdatePulse{0%{box-shadow:inset 0 0 0 3px var(--accent-cyan)}to{box-shadow:inset 0 0 0 0 transparent}}.agent-architectures-page .terrain-indicator{font-size:14px;position:relative;z-index:1;opacity:.6}.agent-architectures-page .terrain-indicator.rough{color:#fbbf24}.agent-architectures-page .terrain-indicator.hazard{color:#ef4444}.agent-architectures-page .policy-arrow{font-size:18px;font-weight:700;color:var(--accent-cyan);position:relative;z-index:2;opacity:.9;text-shadow:0 1px 2px rgba(0,0,0,.5)}.agent-architectures-page .cell-qvalue{position:absolute;bottom:2px;right:3px;font-size:9px;font-weight:600;z-index:2;opacity:.8}.agent-architectures-page .cell-qvalue.positive{color:var(--accent-lime)}.agent-architectures-page .cell-qvalue.negative{color:#ef4444}.agent-architectures-page .terrain-legend{display:flex;gap:1rem;font-size:.7rem;color:var(--text-secondary);margin-top:.5rem;flex-wrap:wrap;justify-content:center}.agent-architectures-page .terrain-legend .legend-item{display:flex;align-items:center;gap:.3rem}.agent-architectures-page .legend-swatch{width:12px;height:12px;border-radius:2px;border:1px solid var(--border-color)}.agent-architectures-page .legend-swatch.normal{background:var(--bg-secondary)}.agent-architectures-page .legend-swatch.rough{background:#fbbf244d}.agent-architectures-page .legend-swatch.hazard{background:#ef444459}.agent-architectures-page .legend-swatch.goal{background:#d4ff0059}.agent-architectures-page .qlearning-panel{display:flex;flex-direction:column;gap:.75rem}.agent-architectures-page .epsilon-control{padding:.75rem 1rem;background:#00e5ff14;border:1px solid rgba(0,229,255,.2);border-radius:6px}.agent-architectures-page .epsilon-control label{display:block;font-size:.8rem;color:var(--text-secondary);margin-bottom:.5rem}.agent-architectures-page .epsilon-control strong{color:var(--accent-cyan)}.agent-architectures-page .epsilon-slider{width:100%;height:6px;border-radius:3px;background:var(--bg-tertiary);-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.agent-architectures-page .epsilon-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--accent-cyan);cursor:pointer;transition:transform .15s ease}.agent-architectures-page .epsilon-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.agent-architectures-page .epsilon-labels{display:flex;justify-content:space-between;font-size:.65rem;color:var(--text-muted);margin-top:.25rem}.agent-architectures-page .learning-params{display:flex;gap:1rem;padding:.5rem .75rem;background:var(--bg-tertiary);border-radius:4px;font-size:.75rem}.agent-architectures-page .learning-params .param{display:flex;gap:.3rem}.agent-architectures-page .learning-params .param-label{color:var(--text-muted)}.agent-architectures-page .learning-params .param-value{color:var(--text-primary);font-weight:500}.agent-architectures-page .update-display{padding:.75rem 1rem;background:#ff9f431a;border:1px solid rgba(255,159,67,.25);border-radius:6px;font-size:.8rem}.agent-architectures-page .update-display strong{color:var(--accent-orange);display:block;margin-bottom:.5rem}.agent-architectures-page .update-details{display:flex;flex-direction:column;gap:.25rem}.agent-architectures-page .update-row{display:flex;justify-content:space-between;color:var(--text-secondary)}.agent-architectures-page .update-row .exploration{color:var(--accent-cyan);font-weight:500}.agent-architectures-page .update-row .exploitation{color:var(--accent-lime);font-weight:500}.agent-architectures-page .update-row .positive{color:var(--accent-lime)}.agent-architectures-page .update-row .negative{color:#ef4444}.agent-architectures-page .update-formula{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border-color);font-family:SF Mono,Monaco,Cascadia Code,monospace;font-size:.7rem;color:var(--text-muted);text-align:center}.agent-architectures-page .learning-progress{padding:.6rem .8rem;background:#a78bfa1a;border:1px solid rgba(167,139,250,.25);border-radius:6px;font-size:.8rem}.agent-architectures-page .learning-progress strong{color:var(--accent-lavender);display:block;margin-bottom:.3rem}.agent-architectures-page .progress-info{color:var(--text-secondary);font-size:.75rem}.agent-architectures-page .qlearning-note{padding:.6rem .8rem;background:#d4ff000f;border-radius:6px;font-size:.75rem;color:var(--text-secondary);line-height:1.5}.agent-architectures-page .qlearning-note strong{color:var(--accent-lime)}.agent-architectures-page .qlearning-note em{color:var(--accent-cyan);font-style:normal}@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}.agent-architectures-page .demo-layout{flex-direction:column;align-items:center}.agent-architectures-page .rules-panel{width:100%;max-width:100%}}@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}}.state-belief-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem}.state-belief-page .concept-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem 2.5rem}.state-belief-page .concept-section.intro{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(0,229,255,.05) 100%);border-left:3px solid var(--accent-cyan)}.state-belief-page .concept-section.highlight{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(212,255,0,.05) 100%);border-left:3px solid var(--accent-lime)}.state-belief-page .concept-section.preview{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(167,139,250,.05) 100%);border-left:3px solid var(--accent-lavender)}.state-belief-page .concept-section h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin-bottom:1rem;letter-spacing:-.01em}.state-belief-page .concept-section p{font-size:1rem;line-height:1.75;color:var(--text-secondary);margin-bottom:1rem}.state-belief-page .concept-section p:last-child{margin-bottom:0}.state-belief-page .concept-section strong{color:var(--text-primary);font-weight:600}.state-belief-page .concept-section em{color:var(--accent-cyan);font-style:normal;font-weight:500}.state-belief-page .diagram-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem 2.5rem}.state-belief-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}.state-belief-page .state-diagram{width:100%;max-width:820px;height:auto;margin:0 auto;display:block;background:var(--bg-primary);border-radius:8px;padding:1rem}.state-belief-page .section-label{font-size:16px;font-weight:600;fill:var(--text-primary)}.state-belief-page .state-title{font-size:14px;font-weight:600;fill:#fff}.state-belief-page .state-title.dark{fill:#1a1a2e}.state-belief-page .state-subtitle{font-size:11px;font-weight:400;fill:#fffc}.state-belief-page .state-subtitle.dark{fill:#1a1a2eb3}.state-belief-page .state-example{font-size:10px;fill:#fff9;font-style:italic}.state-belief-page .state-example.dark{fill:#1a1a2e99}.state-belief-page .hidden-label{font-size:10px;fill:var(--text-muted);font-style:italic}.state-belief-page .portion-label{font-size:11px;font-weight:500;fill:var(--accent-orange)}.state-belief-page .portion-label.hidden{fill:var(--text-muted)}.state-belief-page .portion-sublabel{font-size:9px;fill:var(--text-secondary)}.state-belief-page .portion-sublabel.hidden{fill:var(--text-muted);opacity:.6}.state-belief-page .info-note{font-size:10px;fill:var(--text-muted);font-style:italic}.state-belief-page .flow-label{font-size:10px;fill:var(--text-secondary)}.state-belief-page .flow-label-small{font-size:9px;fill:var(--text-muted);font-style:italic}.state-belief-page .sensor-subtitle{font-size:12px;fill:#ffffffe6}.state-belief-page .blocked-x{font-size:12px;fill:var(--text-muted)}.state-belief-page .insight-icon{font-size:14px}.state-belief-page .insight-micro{font-size:8px;fill:var(--accent-lime);font-weight:600}.state-belief-page .legend-title{font-size:11px;fill:var(--text-muted);font-style:italic}.state-belief-page .gap-label{font-size:11px;fill:var(--text-muted);letter-spacing:.05em}.state-belief-page .arrow-label{font-size:10px;fill:var(--text-muted)}.state-belief-page .arrow-label-small{font-size:9px;fill:var(--text-muted);font-style:italic}.state-belief-page .diagram-caption{margin-top:1.5rem;font-size:.9rem;color:var(--text-muted);text-align:center;line-height:1.6;font-style:italic}.state-belief-page .stateful-comparison{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1.5rem}.state-belief-page .comparison-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease}.state-belief-page .comparison-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000004d}.state-belief-page .comparison-card.stateless{border-top:3px solid var(--accent-orange)}.state-belief-page .comparison-card.stateful{border-top:3px solid var(--accent-cyan)}.state-belief-page .card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.state-belief-page .card-icon{font-size:1.5rem}.state-belief-page .card-header h4{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0}.state-belief-page .card-content{display:flex;flex-direction:column;gap:1rem}.state-belief-page .flow-diagram{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;background:var(--bg-secondary);border-radius:8px}.state-belief-page .flow-box{padding:.5rem .75rem;border-radius:6px;font-size:.85rem;font-weight:500}.state-belief-page .flow-box.input{background:#ff9f4333;color:var(--accent-orange);border:1px solid var(--accent-orange)}.state-belief-page .flow-box.process{background:#00e5ff33;color:var(--accent-cyan);border:1px solid var(--accent-cyan)}.state-belief-page .flow-box.output{background:#d4ff0033;color:var(--accent-lime);border:1px solid var(--accent-lime)}.state-belief-page .flow-box.state-box{position:relative;padding-bottom:1.25rem}.state-belief-page .state-indicator{position:absolute;bottom:.25rem;right:.5rem;font-size:.75rem}.state-belief-page .flow-arrow{color:var(--text-muted);font-size:1.25rem}.state-belief-page .card-description{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0}.state-belief-page .card-description em{color:var(--accent-cyan);font-style:normal;font-weight:500}.state-belief-page .example-box{font-size:.85rem;color:var(--text-muted);padding:.75rem;background:var(--bg-tertiary);border-radius:6px;border-left:2px solid var(--border-color)}.state-belief-page .example-box strong{color:var(--text-secondary)}.state-belief-page .key-insight{display:flex;gap:1rem;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#d4ff0014,#00e5ff0d);border:1px solid rgba(212,255,0,.3);border-radius:10px;margin-top:1.5rem}.state-belief-page .insight-icon{font-size:1.5rem;flex-shrink:0}.state-belief-page .key-insight p{margin:0;font-size:.95rem;line-height:1.7;color:var(--text-secondary)}.state-belief-page .key-insight strong{color:var(--accent-lime)}.state-belief-page .key-insight em{color:var(--accent-cyan);font-style:normal;font-weight:500}.state-belief-page .state-comparison-table{margin:1.5rem 0;overflow-x:auto}.state-belief-page .state-comparison-table table{width:100%;border-collapse:collapse;font-size:.9rem}.state-belief-page .state-comparison-table th{background:var(--bg-tertiary);color:var(--text-primary);font-weight:600;padding:.75rem 1rem;text-align:left;border-bottom:2px solid var(--border-color)}.state-belief-page .state-comparison-table td{padding:.75rem 1rem;border-bottom:1px solid var(--border-color);color:var(--text-secondary);vertical-align:top}.state-belief-page .state-comparison-table tr:hover td{background:#ffffff05}.state-belief-page .type-badge{display:inline-block;padding:.35rem .75rem;border-radius:6px;font-weight:600;font-size:.8rem}.state-belief-page .type-badge.orange{background:#ff9f4326;color:var(--accent-orange)}.state-belief-page .type-badge.cyan{background:#00e5ff26;color:var(--accent-cyan)}.state-belief-page .type-badge.lime{background:#d4ff0026;color:var(--accent-lime)}.state-belief-page .examples-cell{font-style:italic;color:var(--text-muted)}.state-belief-page .state-descriptions{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.5rem}.state-belief-page .state-desc{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem}.state-belief-page .state-desc.orange{border-top:3px solid var(--accent-orange)}.state-belief-page .state-desc.cyan{border-top:3px solid var(--accent-cyan)}.state-belief-page .state-desc.lime{border-top:3px solid var(--accent-lime)}.state-belief-page .state-desc h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem}.state-belief-page .state-desc p{font-size:.9rem;line-height:1.6;color:var(--text-secondary);margin:0}.state-belief-page .belief-reality-gap{margin:1.5rem 0;padding:1.5rem;background:var(--bg-primary);border-radius:10px;border:1px solid var(--border-color)}.state-belief-page .gap-illustration{display:flex;align-items:stretch;gap:1rem}.state-belief-page .reality-side,.state-belief-page .belief-side{flex:1;background:var(--bg-secondary);border-radius:8px;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.state-belief-page .reality-side{border:1px solid var(--accent-orange)}.state-belief-page .belief-side{border:1px solid var(--accent-cyan)}.state-belief-page .gap-illustration .label{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.state-belief-page .reality-side .label{color:var(--accent-orange)}.state-belief-page .belief-side .label{color:var(--accent-cyan)}.state-belief-page .gap-illustration .content{display:flex;flex-direction:column;gap:.35rem;font-family:SF Mono,Consolas,monospace;font-size:.8rem;color:var(--text-secondary)}.state-belief-page .gap-arrow{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 .5rem;min-width:100px}.state-belief-page .gap-text{font-size:.7rem;color:var(--text-muted);text-align:center;margin-bottom:.5rem;font-style:italic}.state-belief-page .gap-arrow .arrow{font-size:2rem;color:var(--text-muted)}.state-belief-page .implications{margin-top:1.5rem;padding:1.25rem;background:var(--bg-primary);border-radius:8px;border-left:3px solid var(--accent-cyan)}.state-belief-page .implications h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem}.state-belief-page .implications ul{margin:0;padding-left:1.25rem}.state-belief-page .implications li{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin-bottom:.35rem}.state-belief-page .implications li strong{color:var(--accent-cyan)}.state-belief-page .implications li em{color:var(--text-primary);font-style:normal}.state-belief-page .observability-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.5rem}.state-belief-page .obs-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem;display:flex;flex-direction:column;gap:.75rem}.state-belief-page .obs-card.full{border-top:3px solid var(--accent-lime)}.state-belief-page .obs-card.partial{border-top:3px solid var(--accent-orange)}.state-belief-page .obs-card.unobs{border-top:3px solid var(--accent-lavender)}.state-belief-page .obs-card h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.state-belief-page .obs-card p{font-size:.9rem;color:var(--text-secondary);line-height:1.5;margin:0}.state-belief-page .obs-card .example{font-size:.8rem;color:var(--text-muted);font-style:italic;padding:.5rem .75rem;background:var(--bg-secondary);border-radius:6px}.state-belief-page .obs-card .formula{font-family:SF Mono,Consolas,monospace;font-size:.85rem;color:var(--accent-cyan);text-align:center;padding:.5rem;background:var(--bg-tertiary);border-radius:6px;margin-top:auto}.state-belief-page .architecture-state-table{margin:1.5rem 0;overflow-x:auto}.state-belief-page .architecture-state-table table{width:100%;border-collapse:collapse;font-size:.9rem}.state-belief-page .architecture-state-table th{background:var(--bg-tertiary);color:var(--text-primary);font-weight:600;padding:.75rem 1rem;text-align:left;border-bottom:2px solid var(--border-color)}.state-belief-page .architecture-state-table td{padding:.75rem 1rem;border-bottom:1px solid var(--border-color);color:var(--text-secondary)}.state-belief-page .architecture-state-table tr:hover td{background:#ffffff05}.state-belief-page .arch-cell{display:flex;align-items:center;gap:.5rem}.state-belief-page .arch-icon{font-size:1.1rem}.state-belief-page .arch-name{font-weight:500;color:var(--text-primary)}.state-belief-page .none-cell{color:var(--text-muted);font-style:italic}.state-belief-page .note-cell{font-size:.85rem;color:var(--text-muted);font-style:italic}.state-belief-page .state-representations-visual{display:flex;flex-direction:column;gap:1.5rem;margin-top:1.5rem}.state-belief-page .representation-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;display:grid;grid-template-columns:320px 1fr;grid-template-rows:auto 1fr;gap:1rem 1.5rem}.state-belief-page .representation-card .card-header{grid-column:1 / -1;display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.state-belief-page .representation-card .rep-icon{font-size:1.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:var(--bg-secondary)}.state-belief-page .representation-card.atomic{border-left:4px solid var(--accent-orange)}.state-belief-page .representation-card.atomic .rep-icon{background:#ff9f4326}.state-belief-page .representation-card.factored{border-left:4px solid var(--accent-cyan)}.state-belief-page .representation-card.factored .rep-icon{background:#00e5ff26}.state-belief-page .representation-card.structured{border-left:4px solid var(--accent-lime)}.state-belief-page .representation-card.structured .rep-icon{background:#d4ff0026}.state-belief-page .representation-card h4{font-size:1.15rem;font-weight:600;color:var(--text-primary);margin:0}.state-belief-page .visual-container{display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border-radius:8px;padding:1rem}.state-belief-page .rep-diagram{width:100%;max-width:300px;height:auto}.state-belief-page .representation-card .card-description{display:flex;flex-direction:column;gap:1rem}.state-belief-page .representation-card .card-description p{font-size:.95rem;line-height:1.7;color:var(--text-secondary);margin:0}.state-belief-page .representation-card .card-description strong{color:var(--text-primary)}.state-belief-page .representation-comparison{margin-top:2rem;padding:1.5rem;background:var(--bg-primary);border-radius:10px;border:1px solid var(--border-color)}.state-belief-page .representation-comparison h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.state-belief-page .comparison-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.state-belief-page .comparison-item{padding:1rem;background:var(--bg-secondary);border-radius:8px}.state-belief-page .rep-label{display:inline-block;padding:.25rem .75rem;border-radius:4px;font-size:.8rem;font-weight:600;margin-bottom:.75rem}.state-belief-page .rep-label.atomic{background:#ff9f4326;color:var(--accent-orange)}.state-belief-page .rep-label.factored{background:#00e5ff26;color:var(--accent-cyan)}.state-belief-page .rep-label.structured{background:#d4ff0026;color:var(--accent-lime)}.state-belief-page .comparison-item p{font-size:.85rem;line-height:1.6;color:var(--text-secondary);margin:0}.state-belief-page .progression-note{margin-top:1.5rem;padding:1rem 1.25rem;background:var(--bg-primary);border-radius:8px;border-left:3px solid var(--accent-lavender)}.state-belief-page .progression-note p{font-size:.95rem;line-height:1.7;color:var(--text-secondary);margin:0}.state-belief-page .preview-points{display:flex;flex-direction:column;gap:.75rem;margin-top:1.25rem}.state-belief-page .preview-point{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--bg-primary);border-radius:8px;border:1px solid var(--border-color)}.state-belief-page .point-icon{font-size:1.25rem}.state-belief-page .preview-point span:last-child{font-size:.9rem;color:var(--text-secondary)}.state-belief-page .preview-point strong{color:var(--accent-lavender)}@media (max-width: 1024px){.state-belief-page .state-descriptions,.state-belief-page .observability-cards,.state-belief-page .representation-card,.state-belief-page .comparison-grid{grid-template-columns:1fr}}@media (max-width: 768px){.state-belief-page .concept-section,.state-belief-page .diagram-section{padding:1.5rem}.state-belief-page .stateful-comparison{grid-template-columns:1fr}.state-belief-page .gap-illustration{flex-direction:column}.state-belief-page .gap-arrow{flex-direction:row;min-width:unset;padding:.5rem 0}.state-belief-page .gap-arrow .arrow{transform:rotate(90deg)}.state-belief-page .state-comparison-table,.state-belief-page .architecture-state-table{font-size:.8rem}.state-belief-page .state-comparison-table th,.state-belief-page .state-comparison-table td,.state-belief-page .architecture-state-table th,.state-belief-page .architecture-state-table td{padding:.5rem .75rem}}.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}.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;max-height:600px}.python-editor-wrapper .cm-editor{flex:1;background:transparent}.python-editor-wrapper .cm-scroller{font-family:var(--font-mono, "JetBrains Mono", monospace);line-height:1.6;overflow:auto!important;max-height:600px}.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)}.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}.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}.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}.run-btn:hover{background:#c5e600;transform:scale(1.02)}.run-btn.running:hover{background:#ff9500}.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}.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-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}.editor-hints{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.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}}.model-based-builder-page .builder-container{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:1600px;width:100%;margin-bottom:2rem}.model-based-builder-page .builder-left{display:flex;flex-direction:column;gap:1.25rem}.model-based-builder-page .scenario-selector h3{font-size:.9rem;font-weight:500;color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.model-based-builder-page .scenario-list{display:flex;flex-wrap:wrap;gap:.5rem}.model-based-builder-page .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;position:relative}.model-based-builder-page .scenario-btn:hover{border-color:var(--text-muted)}.model-based-builder-page .scenario-btn.active{border-color:var(--accent-lavender);background:#b284ff1a}.model-based-builder-page .scenario-btn.completed{border-color:var(--accent-lime)}.model-based-builder-page .scenario-btn.completed .scenario-name{color:var(--accent-lime)}.model-based-builder-page .scenario-difficulty{font-size:.7rem;color:var(--accent-orange);letter-spacing:1px}.model-based-builder-page .scenario-name{font-size:.85rem;font-weight:500;color:var(--text-primary)}.model-based-builder-page .check-mark{position:absolute;top:.25rem;right:.25rem;color:var(--accent-lime);font-weight:700}.model-based-builder-page .scenario-info{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.model-based-builder-page .scenario-info h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.model-based-builder-page .scenario-info p{font-size:.9rem;color:var(--text-secondary);margin-bottom:.75rem;line-height:1.5}.model-based-builder-page .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)}.model-based-builder-page .hint-box strong{color:var(--accent-lavender)}.model-based-builder-page .grid-wrapper{display:flex;justify-content:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem}.model-based-builder-page .builder-grid{display:grid;gap:2px;background:var(--bg-tertiary);padding:4px;border-radius:8px}.model-based-builder-page .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;transition:background-color .2s ease}.model-based-builder-page .builder-cell.visited{background:#b284ff26;border-color:#b284ff4d}.model-based-builder-page .builder-cell.wall{background:#6b72804d}.model-based-builder-page .wall-icon{opacity:.9}.model-based-builder-page .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}}.model-based-builder-page .item-icon{animation:item-float 2s ease-in-out infinite;filter:drop-shadow(0 0 4px var(--accent-orange))}.model-based-builder-page .item-icon.collected{opacity:.3;filter:grayscale(.5);animation:none}@keyframes item-float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.model-based-builder-page .patrol-icon{font-size:1.2rem;filter:drop-shadow(0 0 4px var(--accent-cyan))}.model-based-builder-page .patrol-icon.visited{color:var(--accent-lime);filter:drop-shadow(0 0 4px var(--accent-lime))}.model-based-builder-page .agent-icon{font-size:1.75rem;transition:transform .15s ease;filter:drop-shadow(0 0 6px var(--accent-lavender));z-index:10}.model-based-builder-page .percept-display{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.model-based-builder-page .percept-display h4{font-size:.8rem;font-weight:500;color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.model-based-builder-page .percept-values{display:flex;flex-wrap:wrap;gap:.75rem}.model-based-builder-page .percept-item{font-size:.85rem;color:var(--text-secondary);background:var(--bg-tertiary);padding:.35rem .6rem;border-radius:4px;font-family:var(--font-mono)}.model-based-builder-page .percept-item strong{color:var(--text-primary)}.model-based-builder-page .percept-item.wall strong{color:#ef4444}.model-based-builder-page .percept-item.goal strong{color:var(--accent-lime)}.model-based-builder-page .percept-item.position strong{color:var(--accent-lavender)}.model-based-builder-page .last-action{margin-top:.75rem;font-size:.85rem;color:var(--text-muted)}.model-based-builder-page .last-action strong{color:var(--accent-lavender);font-family:var(--font-mono)}.model-based-builder-page .state-visualizer{background:var(--bg-secondary);border:1px solid var(--accent-lavender);border-radius:8px;padding:1rem}.model-based-builder-page .state-visualizer h4{font-size:.8rem;font-weight:500;color:var(--accent-lavender);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.model-based-builder-page .state-entries{display:flex;flex-direction:column;gap:.5rem}.model-based-builder-page .state-entry{display:flex;align-items:center;gap:.5rem;font-size:.85rem;font-family:var(--font-mono)}.model-based-builder-page .state-key{color:var(--accent-lavender)}.model-based-builder-page .state-value{color:var(--text-primary);background:var(--bg-tertiary);padding:.2rem .5rem;border-radius:4px}.model-based-builder-page .state-empty{font-size:.85rem;color:var(--text-muted);font-style:italic}.model-based-builder-page .builder-controls{display:flex;justify-content:space-between;align-items:center;gap:1rem}.model-based-builder-page .control-buttons{display:flex;gap:.75rem}.model-based-builder-page .run-btn{padding:.75rem 1.5rem;font-size:1rem;font-weight:600;background:var(--accent-lavender);color:#000;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.model-based-builder-page .run-btn:hover{background:#c9a8ff;transform:scale(1.02)}.model-based-builder-page .run-btn.running{background:var(--accent-orange)}.model-based-builder-page .run-btn.running:hover{background:#ff9500}.model-based-builder-page .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}.model-based-builder-page .reset-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.model-based-builder-page .stats-display{display:flex;gap:1.5rem}.model-based-builder-page .stats-display .stat{font-size:.9rem;color:var(--text-muted)}.model-based-builder-page .stats-display .stat strong{color:var(--text-primary);font-family:var(--font-display)}.model-based-builder-page .status-message{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:8px;animation:slide-in .3s ease}.model-based-builder-page .status-message.success{background:#d4ff001a;border:1px solid var(--accent-lime)}.model-based-builder-page .status-message.failed{background:#ef44441a;border:1px solid #ef4444}.model-based-builder-page .status-icon{font-size:1.5rem}.model-based-builder-page .status-text{font-size:.95rem;color:var(--text-primary)}.model-based-builder-page .status-text strong{display:block;margin-bottom:.25rem}.model-based-builder-page .status-message.success .status-text{color:var(--accent-lime)}.model-based-builder-page .status-message.failed .status-text{color:#ef4444}.model-based-builder-page .builder-right{display:flex;flex-direction:column;gap:1rem}.model-based-builder-page .editor-header{display:flex;justify-content:space-between;align-items:center}.model-based-builder-page .editor-header h3{font-size:.9rem;font-weight:500;color:var(--accent-lavender);text-transform:uppercase;letter-spacing:.05em}.model-based-builder-page .editor-help{font-size:.8rem;color:var(--text-muted)}.model-based-builder-page .editor-help code{background:var(--bg-tertiary);padding:.15rem .4rem;border-radius:3px;color:var(--accent-lavender);font-family:var(--font-mono)}.model-based-builder-page .model-based-code-editor{flex:1;min-height:400px}.model-based-builder-page .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)}.model-based-builder-page .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}.model-based-builder-page .loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--accent-lavender);border-radius:50%;animation:spin 1s linear infinite}.model-based-builder-page .pyodide-error{padding:1rem;margin-bottom:1rem;background:#ef44441a;border:1px solid #ef4444;border-radius:8px;color:#ef4444;max-width:1600px;width:100%}.model-based-builder-page .editor-hints{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.model-based-builder-page .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}.model-based-builder-page .editor-hints h4:first-child{margin-top:0}.model-based-builder-page .editor-hints ul{margin:0;padding-left:1.25rem}.model-based-builder-page .editor-hints li{font-size:.85rem;color:var(--text-secondary);line-height:1.6}.model-based-builder-page .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}.model-based-builder-page .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}.model-based-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}.model-based-builder-page .learning-section h3{font-size:1rem;font-weight:500;color:var(--accent-lavender);letter-spacing:.03em;margin-bottom:1.25rem}.model-based-builder-page .learning-content{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.model-based-builder-page .learning-card{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.model-based-builder-page .learning-card h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem}.model-based-builder-page .learning-card p{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin:0}.model-based-builder-page .learning-card strong{color:var(--accent-lavender)}@media (max-width: 1200px){.model-based-builder-page .builder-container{grid-template-columns:1fr}.model-based-builder-page .learning-content{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.model-based-builder-page .scenario-list{flex-direction:column}.model-based-builder-page .scenario-btn{min-width:unset;width:100%}.model-based-builder-page .builder-controls{flex-direction:column;align-items:stretch}.model-based-builder-page .control-buttons,.model-based-builder-page .stats-display{justify-content:center}.model-based-builder-page .learning-content{grid-template-columns:1fr}.model-based-builder-page .builder-cell{width:36px;height:36px;font-size:1.1rem}.model-based-builder-page .agent-icon{font-size:1.3rem}}.planning-page.page-layout{background-image:radial-gradient(circle,rgba(255,255,255,.18) 1px,transparent 1px),radial-gradient(ellipse at 50% 20%,rgba(0,136,255,.1) 0%,rgba(212,255,0,.04) 30%,transparent 60%);background-size:28px 28px,100% 100%;background-position:center top}.planning-page .course-list{display:flex;flex-direction:column;gap:.75rem;max-width:860px;width:100%;margin:0 auto}.planning-page .course-item{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1.25rem;transition:all .2s ease;text-align:left}.planning-page .course-item.enabled{cursor:pointer}.planning-page .course-item.enabled:hover{background:#ffffff14;border-color:var(--accent-cyan);transform:translate(4px)}.planning-page .course-item.disabled{opacity:.4;cursor:not-allowed}.planning-page .course-item.completed{border-color:#00e5ff40}.planning-page .course-item__number{font-size:.75rem;font-weight:600;color:var(--text-muted);min-width:1.5rem;text-align:center;flex-shrink:0}.planning-page .course-item__icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;border-radius:10px;background:#ffffff0f}.planning-page .course-item__icon svg{width:22px;height:22px}.planning-page .course-item__icon.learn{color:var(--accent-lime)}.planning-page .course-item__icon.lab{color:var(--accent-cyan)}.planning-page .course-item__info{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.planning-page .course-item__header{display:flex;align-items:center;gap:.75rem}.planning-page .course-item__title{font-size:1.1rem;font-weight:600;color:var(--text-primary);line-height:1.3}.planning-page .course-item__badge{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding:.15rem .5rem;border-radius:4px;flex-shrink:0;white-space:nowrap}.planning-page .course-item__badge.learn{color:var(--accent-lime);background:#d4ff001a}.planning-page .course-item__badge.lab{color:var(--accent-cyan);background:#00e5ff1a}.planning-page .course-item__description{font-size:.875rem;color:var(--text-secondary);line-height:1.5;font-weight:300}.planning-page .course-item__complete{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--accent-cyan);color:var(--bg-primary);font-size:.75rem;font-weight:600;flex-shrink:0}.planning-page .course-item__arrow{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-muted);transition:color .2s ease,transform .2s ease}.planning-page .course-item__arrow svg{width:18px;height:18px}.planning-page .course-item.enabled:hover .course-item__arrow{color:var(--accent-cyan);transform:translate(2px)}@media (max-width: 480px){.planning-page .course-item{padding:1rem;gap:.75rem}.planning-page .course-item__number{display:none}.planning-page .course-item__icon{width:36px;height:36px}.planning-page .course-item__icon svg{width:18px;height:18px}.planning-page .course-item__title{font-size:1rem}.planning-page .course-item__description{font-size:.8125rem}}.foundations-planning-page .planning-search-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;margin:1.5rem 0}.foundations-planning-page .planning-search-visual .visual-header{text-align:center;margin-bottom:1.5rem}.foundations-planning-page .planning-search-visual .visual-header p{font-size:.9rem;color:var(--text-secondary);margin:0;line-height:1.6}.foundations-planning-page .planning-search-visual .visual-header strong{color:var(--text-primary)}.foundations-planning-page .planning-search-visual .visual-content{display:grid;grid-template-columns:1fr 280px;gap:1.5rem;align-items:flex-start}.foundations-planning-page .planning-search-visual .graph-container{background:#0003;border-radius:10px;padding:1rem}.foundations-planning-page .planning-search-visual .state-space-graph{width:100%;max-width:520px;display:block;margin:0 auto}.foundations-planning-page .planning-search-visual .state-node{fill:var(--bg-secondary);stroke:var(--border-color);stroke-width:2;cursor:pointer;transition:all .2s ease}.foundations-planning-page .planning-search-visual .state-node:hover{stroke:var(--accent-cyan)}.foundations-planning-page .planning-search-visual .state-node.highlighted{stroke:var(--accent-cyan);stroke-width:3;fill:#00e5ff1a}.foundations-planning-page .planning-search-visual .state-node.initial{fill:#ff9f4326;stroke:var(--accent-orange)}.foundations-planning-page .planning-search-visual .state-node.initial.highlighted{fill:#ff9f434d;stroke:var(--accent-orange);stroke-width:3}.foundations-planning-page .planning-search-visual .state-node.goal{fill:#d4ff0026;stroke:var(--accent-lime)}.foundations-planning-page .planning-search-visual .state-node.goal.highlighted{fill:#d4ff004d;stroke:var(--accent-lime);stroke-width:3}.foundations-planning-page .planning-search-visual .state-node.on-path{stroke-width:3}.foundations-planning-page .planning-search-visual .state-label{fill:var(--text-primary);font-size:14px;font-weight:600;text-anchor:middle;pointer-events:none}.foundations-planning-page .planning-search-visual .state-type{font-size:10px;text-anchor:middle;font-weight:500}.foundations-planning-page .planning-search-visual .state-type.initial{fill:var(--accent-orange)}.foundations-planning-page .planning-search-visual .state-type.goal{fill:var(--accent-lime)}.foundations-planning-page .planning-search-visual .transition-arrow{stroke:var(--text-muted);stroke-width:2;opacity:.5;cursor:pointer;transition:all .2s ease}.foundations-planning-page .planning-search-visual .transition-arrow:hover,.foundations-planning-page .planning-search-visual .transition-arrow.highlighted{stroke:var(--accent-cyan);opacity:.9;stroke-width:2.5}.foundations-planning-page .planning-search-visual .transition-arrow.on-path{stroke:var(--accent-lime);opacity:1;stroke-width:3}.foundations-planning-page .planning-search-visual .transition-label .label-bg{fill:var(--bg-tertiary);opacity:.9}.foundations-planning-page .planning-search-visual .transition-label.highlighted .label-bg{fill:#00e5ff33}.foundations-planning-page .planning-search-visual .transition-label.on-path .label-bg{fill:#d4ff0033}.foundations-planning-page .planning-search-visual .transition-label .action-text{fill:var(--text-secondary);font-size:10px;text-anchor:middle}.foundations-planning-page .planning-search-visual .transition-label .cost-text{fill:var(--accent-orange);font-size:9px;text-anchor:start}.foundations-planning-page .planning-search-visual .transition-label.highlighted .action-text{fill:var(--accent-cyan)}.foundations-planning-page .planning-search-visual .transition-label.on-path .action-text{fill:var(--accent-lime)}.foundations-planning-page .planning-search-visual .visual-controls{display:flex;flex-direction:column;gap:1rem}.foundations-planning-page .planning-search-visual .concept-tooltip{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:.75rem 1rem;min-height:60px;display:flex;flex-direction:column;gap:.25rem}.foundations-planning-page .planning-search-visual .tooltip-label{font-size:.85rem;font-weight:600;color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.03em}.foundations-planning-page .planning-search-visual .tooltip-desc{font-size:.85rem;color:var(--text-secondary);line-height:1.5}.foundations-planning-page .planning-search-visual .tooltip-hint{font-size:.85rem;color:var(--text-muted);font-style:italic}.foundations-planning-page .planning-search-visual .path-selector{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:.75rem 1rem}.foundations-planning-page .planning-search-visual .selector-label{display:block;font-size:.8rem;font-weight:500;color:var(--text-primary);margin-bottom:.5rem}.foundations-planning-page .planning-search-visual .path-buttons{display:flex;flex-direction:column;gap:.5rem}.foundations-planning-page .planning-search-visual .path-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:all .2s ease}.foundations-planning-page .planning-search-visual .path-btn:hover{border-color:var(--text-muted)}.foundations-planning-page .planning-search-visual .path-btn.selected{border-color:var(--accent-lime);background:#d4ff001a}.foundations-planning-page .planning-search-visual .path-btn .path-name{font-size:.85rem;font-weight:500;color:var(--text-primary)}.foundations-planning-page .planning-search-visual .path-btn .path-cost{font-size:.8rem;color:var(--text-muted);margin-left:auto}.foundations-planning-page .planning-search-visual .path-btn.selected .path-cost{color:var(--accent-lime);font-weight:600}.foundations-planning-page .planning-search-visual .path-btn .optimal-tag{font-size:.7rem;padding:.15rem .4rem;background:var(--accent-lime);color:var(--bg-primary);border-radius:4px;font-weight:600;text-transform:uppercase}.foundations-planning-page .planning-search-visual .path-breakdown{background:#d4ff001a;border:1px solid rgba(212,255,0,.3);border-radius:8px;padding:.75rem 1rem}.foundations-planning-page .planning-search-visual .breakdown-title{display:block;font-size:.8rem;font-weight:500;color:var(--accent-lime);margin-bottom:.5rem}.foundations-planning-page .planning-search-visual .breakdown-costs{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.foundations-planning-page .planning-search-visual .breakdown-costs .cost-item{font-size:.8rem;padding:.25rem .5rem;background:var(--bg-tertiary);border-radius:4px;color:var(--text-secondary)}.foundations-planning-page .planning-search-visual .breakdown-costs .cost-item:after{content:" +";color:var(--text-muted)}.foundations-planning-page .planning-search-visual .breakdown-costs .cost-item:last-of-type:after{content:none}.foundations-planning-page .planning-search-visual .breakdown-costs .cost-total{font-size:.85rem;font-weight:600;color:var(--accent-lime);margin-left:.25rem}.foundations-planning-page .planning-search-visual .visual-legend{display:flex;gap:1.5rem;justify-content:center;padding-top:1rem;border-top:1px solid var(--border-color);margin-top:1rem}.foundations-planning-page .planning-search-visual .legend-item{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--text-secondary)}.foundations-planning-page .planning-search-visual .legend-icon{width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center}.foundations-planning-page .planning-search-visual .legend-icon.state-icon{background:var(--bg-secondary);border:2px solid var(--border-color)}.foundations-planning-page .planning-search-visual .legend-icon.initial-icon{background:#ff9f4326;border:2px solid var(--accent-orange)}.foundations-planning-page .planning-search-visual .legend-icon.goal-icon{background:#d4ff0026;border:2px solid var(--accent-lime)}.foundations-planning-page .planning-search-visual .legend-icon.action-icon{border-radius:0;width:auto;height:auto;color:var(--accent-orange);font-weight:600}@media (max-width: 768px){.foundations-planning-page .planning-search-visual .visual-content{grid-template-columns:1fr}.foundations-planning-page .planning-search-visual .visual-legend{flex-wrap:wrap;gap:.75rem 1.25rem}.foundations-planning-page .planning-search-visual .path-buttons{flex-direction:row;flex-wrap:wrap}.foundations-planning-page .planning-search-visual .path-btn{flex:1;min-width:80px;flex-direction:column;align-items:flex-start;gap:.25rem}.foundations-planning-page .planning-search-visual .path-btn .path-cost{margin-left:0}}.foundations-planning-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem;max-width:1000px}.foundations-planning-page .content-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem}.foundations-planning-page .content-section h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.foundations-planning-page .content-section>p{font-size:.95rem;line-height:1.75;color:var(--text-secondary);margin:0 0 1.5rem}.foundations-planning-page .content-section>p strong{color:var(--text-primary)}.foundations-planning-page .content-section>p em{color:var(--accent-cyan);font-style:normal}.foundations-planning-page .intro-section{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(0,229,255,.05) 100%)}.foundations-planning-page .comparison-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1.5rem}.foundations-planning-page .comparison-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;transition:all .2s ease}.foundations-planning-page .comparison-card h4{font-size:1.1rem;font-weight:500;color:var(--text-primary);margin:0 0 .75rem;display:flex;align-items:center;gap:.5rem}.foundations-planning-page .comparison-card .card-icon{font-size:1.5rem;margin-bottom:.75rem}.foundations-planning-page .comparison-card ul{margin:0;padding-left:1.25rem}.foundations-planning-page .comparison-card li{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin-bottom:.25rem}.foundations-planning-page .comparison-card.reactive{border-color:#ff9f434d}.foundations-planning-page .comparison-card.reactive h4{color:var(--accent-orange)}.foundations-planning-page .comparison-card.planning{border-color:#00e5ff4d}.foundations-planning-page .comparison-card.planning h4{color:var(--accent-cyan)}.foundations-planning-page .demo-grid{display:grid;gap:2px;background:var(--border-color);padding:2px;border-radius:8px}.foundations-planning-page .demo-cell{background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;position:relative;transition:background-color .3s ease}.foundations-planning-page .demo-cell.obstacle{background:var(--bg-tertiary)!important}.foundations-planning-page .demo-cell.goal-cell{background:#d4ff001f!important}.foundations-planning-page .demo-cell.on-path{background:#00e5ff26}.foundations-planning-page .demo-cell.start-cell{background:#00e5ff26!important}.foundations-planning-page .demo-cell.rough-terrain{background:#ff9f4326!important}.foundations-planning-page .obstacle-icon,.foundations-planning-page .goal-icon{font-size:1.25rem}.foundations-planning-page .path-dot{font-size:1.5rem;color:var(--accent-cyan);font-weight:700}.foundations-planning-page .rover-icon{color:var(--accent-orange);display:flex;align-items:center;justify-content:center;transition:transform .15s ease,color .15s ease}.foundations-planning-page .rover-icon svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.foundations-planning-page .rover-icon.complete{color:var(--accent-lime);animation:celebrate .5s ease-in-out}.foundations-planning-page .demo-controls{display:flex;gap:.5rem;margin-top:1rem;justify-content:center}.foundations-planning-page .demo-btn{padding:.5rem 1rem;border:none;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.foundations-planning-page .demo-btn.start{background:var(--accent-cyan);color:#000}.foundations-planning-page .demo-btn.start:hover:not(:disabled){background:#00c4db}.foundations-planning-page .demo-btn.stop{background:#f59e0b;color:#000}.foundations-planning-page .demo-btn.step{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.foundations-planning-page .demo-btn.step:hover:not(:disabled){border-color:var(--accent-cyan);color:var(--accent-cyan)}.foundations-planning-page .demo-btn.reset{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.foundations-planning-page .demo-btn.reset:hover{border-color:var(--text-muted);color:var(--text-primary)}.foundations-planning-page .demo-btn:disabled{opacity:.4;cursor:not-allowed}.foundations-planning-page .demo-stats{display:flex;gap:1.5rem;font-size:.85rem;color:var(--text-secondary);margin-top:.75rem;justify-content:center}.foundations-planning-page .demo-stats .success{color:var(--accent-lime);font-weight:500}.foundations-planning-page .planning-demo{background:var(--bg-primary);border-radius:10px;padding:1.5rem}.foundations-planning-page .mode-selector{display:flex;gap:.5rem;margin-bottom:1.5rem;justify-content:center}.foundations-planning-page .mode-btn{padding:.6rem 1.25rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.foundations-planning-page .mode-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.foundations-planning-page .mode-btn.active{background:var(--accent-cyan);border-color:var(--accent-cyan);color:#000}.foundations-planning-page .demo-content{display:grid;grid-template-columns:auto 1fr;gap:2rem;align-items:flex-start}.foundations-planning-page .grid-container{display:flex;flex-direction:column;align-items:center}.foundations-planning-page .mode-description{min-width:280px}.foundations-planning-page .description-box{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem}.foundations-planning-page .description-box h4{font-size:1rem;font-weight:500;color:var(--text-primary);margin:0 0 .5rem}.foundations-planning-page .description-box p{font-size:.9rem;color:var(--text-secondary);margin:0 0 .75rem}.foundations-planning-page .description-box ul{margin:0;padding-left:1.25rem}.foundations-planning-page .description-box li{font-size:.85rem;color:var(--text-secondary);line-height:1.6;margin-bottom:.25rem}.foundations-planning-page .description-box.planning{border-color:#00e5ff4d}.foundations-planning-page .description-box.planning h4{color:var(--accent-cyan)}.foundations-planning-page .description-box.reactive{border-color:#ff9f434d}.foundations-planning-page .description-box.reactive h4{color:var(--accent-orange)}.foundations-planning-page .phase-indicator{margin-top:1rem;padding:.5rem .75rem;background:#00e5ff1a;border-radius:4px;font-size:.8rem;color:var(--accent-cyan)}.foundations-planning-page .phase-indicator.warning{background:#ff9f431a;color:var(--accent-orange)}.foundations-planning-page .path-cost-explanation{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem 1.5rem;margin:1.5rem 0}.foundations-planning-page .path-cost-explanation h4{font-size:.95rem;font-weight:600;color:var(--accent-cyan);margin:0 0 .75rem}.foundations-planning-page .path-cost-explanation>p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0 0 1rem}.foundations-planning-page .path-cost-explanation strong{color:var(--text-primary)}.foundations-planning-page .planning-summary-table{margin-top:1.5rem}.foundations-planning-page .planning-summary-table h4{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.03em}.foundations-planning-page .planning-summary-table .summary-table{margin-top:0}.foundations-planning-page .cost-models-section{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border-color)}.foundations-planning-page .cost-models-section h5{font-size:.85rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.03em}.foundations-planning-page .cost-model-grid.compact{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.foundations-planning-page .cost-model-grid.compact .cost-model{padding:.6rem .75rem}.foundations-planning-page .cost-model-grid.compact .model-name,.foundations-planning-page .cost-model-grid.compact .model-desc{font-size:.8rem}.foundations-planning-page .cost-formula{background:#0000004d;border-radius:8px;padding:1rem 1.25rem;margin:1rem 0}.foundations-planning-page .formula-display{display:flex;flex-direction:column;align-items:center;gap:.5rem}.foundations-planning-page .formula-main{font-family:Times New Roman,serif;font-size:1.05rem;font-style:italic;color:var(--text-primary)}.foundations-planning-page .formula-note{font-size:.85rem;color:var(--text-muted)}.foundations-planning-page .path-planning-demo{background:linear-gradient(135deg,var(--bg-primary) 0%,rgba(255,100,50,.05) 100%);border-radius:10px;padding:1.5rem;margin-top:1.5rem}.foundations-planning-page .path-planning-demo.large-grid .terrain-grid{grid-template-columns:repeat(5,1fr);max-width:480px}.foundations-planning-page .path-planning-demo.large-grid .terrain-cell{min-height:80px}.foundations-planning-page .path-planning-demo.large-grid .cell-name,.foundations-planning-page .path-planning-demo.large-grid .cell-coords{font-size:.85rem}.foundations-planning-page .path-planning-demo.large-grid .cell-cost{font-size:.8rem}.foundations-planning-page .planning-instructions{text-align:center;font-size:.9rem;color:var(--text-secondary);margin-bottom:1.5rem;padding:.75rem 1rem;background:var(--bg-secondary);border-radius:6px}.foundations-planning-page .planning-instructions strong{color:var(--text-primary)}.foundations-planning-page .planning-instructions em{color:var(--accent-lime);font-style:normal;font-weight:500}.foundations-planning-page .terrain-cell.on-planned-path{box-shadow:inset 0 0 0 2px var(--accent-cyan)}.foundations-planning-page .terrain-cell.on-optimal-path{box-shadow:inset 0 0 0 2px #d4ff0066}.foundations-planning-page .terrain-cell.planned-end{box-shadow:0 0 0 3px var(--accent-lime),0 0 15px #d4ff004d}.foundations-planning-page .planned-rover,.foundations-planning-page .planned-end-marker{color:var(--accent-lime);opacity:.5;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5));transition:transform .3s ease}.foundations-planning-page .rover-icon.success{color:var(--accent-lime);animation:celebrate .5s ease-in-out}.foundations-planning-page .terrain-cell.rover-here{box-shadow:0 0 0 3px var(--accent-orange),0 0 15px #ff9f434d}.foundations-planning-page .path-step-marker{position:absolute;width:20px;height:20px;border-radius:50%;background:var(--accent-cyan);color:var(--bg-primary);font-size:.8rem;font-weight:700;display:flex;align-items:center;justify-content:center}.foundations-planning-page .optimal-hint{position:absolute;color:var(--accent-lime);font-size:1rem;opacity:.6}.foundations-planning-page .path-cost-display{background:var(--bg-secondary);border-radius:8px;padding:1rem;margin-bottom:1rem}.foundations-planning-page .cost-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.foundations-planning-page .cost-label{font-size:.85rem;font-weight:500;color:var(--text-primary)}.foundations-planning-page .cost-value{font-size:1.5rem;font-weight:700;color:var(--accent-orange)}.foundations-planning-page .cost-value.optimal{color:var(--accent-lime)}.foundations-planning-page .optimal-indicator{text-align:center}.foundations-planning-page .optimal-badge{display:inline-block;padding:.4rem .75rem;background:#d4ff0026;border:1px solid rgba(212,255,0,.3);border-radius:20px;color:var(--accent-lime);font-size:.8rem;font-weight:600}.foundations-planning-page .suboptimal-badge{display:inline-block;padding:.3rem .6rem;background:#ff9f431a;border-radius:4px;color:var(--accent-orange);font-size:.85rem}.foundations-planning-page .incomplete-badge{display:inline-block;padding:.3rem .6rem;background:#ffffff0d;border-radius:4px;color:var(--text-muted);font-size:.85rem}.foundations-planning-page .ready-badge{display:inline-block;padding:.3rem .6rem;background:#00e5ff1a;border-radius:4px;color:var(--accent-cyan);font-size:.85rem;font-weight:500}.foundations-planning-page .executing-badge{display:inline-block;padding:.3rem .6rem;background:#ff9f431a;border-radius:4px;color:var(--accent-orange);font-size:.85rem;animation:pulse-badge 1s ease-in-out infinite}@keyframes pulse-badge{0%,to{opacity:1}50%{opacity:.6}}.foundations-planning-page .plan-actions{display:flex;gap:.5rem;margin-top:.75rem}.foundations-planning-page .plan-actions button{padding:.6rem 1rem;border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.foundations-planning-page .undo-btn{flex:0 0 auto;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-secondary)}.foundations-planning-page .undo-btn:hover:not(:disabled){border-color:var(--text-muted);color:var(--text-primary)}.foundations-planning-page .execute-btn{flex:1;background:var(--accent-cyan);border:none;color:#000}.foundations-planning-page .execute-btn:hover:not(:disabled){background:#00c4db}.foundations-planning-page .plan-actions button:disabled{opacity:.4;cursor:not-allowed}.foundations-planning-page .planned-actions-list{background:var(--bg-secondary);border-radius:8px;padding:.75rem 1rem;margin-top:1rem}.foundations-planning-page .list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.foundations-planning-page .list-header h4{font-size:.8rem;font-weight:500;color:var(--text-primary);margin:0}.foundations-planning-page .action-count{font-size:.8rem;color:var(--text-muted)}.foundations-planning-page .empty-plan{font-size:.8rem;color:var(--text-muted);font-style:italic;text-align:center;padding:.5rem}.foundations-planning-page .action-sequence{display:flex;flex-wrap:wrap;gap:.35rem}.foundations-planning-page .sequence-action{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;font-size:.9rem;color:var(--text-secondary)}.foundations-planning-page .sequence-action.executed{background:#00e5ff26;border-color:var(--accent-cyan);color:var(--accent-cyan)}.foundations-planning-page .optimal-toggle{margin-top:1rem;padding:.5rem .75rem;background:var(--bg-secondary);border-radius:6px}.foundations-planning-page .optimal-toggle label{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--text-secondary);cursor:pointer}.foundations-planning-page .optimal-toggle input[type=checkbox]{accent-color:var(--accent-lime)}.foundations-planning-page .execution-display{text-align:center;padding:1.5rem 1rem}.foundations-planning-page .execution-animation{display:flex;align-items:center;justify-content:center;gap:.75rem;color:var(--accent-orange);font-size:.9rem}.foundations-planning-page .spinner{width:20px;height:20px;border:2px solid rgba(255,159,67,.3);border-top-color:var(--accent-orange);border-radius:50%;animation:spin .8s linear infinite}.foundations-planning-page .completion-display{text-align:center;padding:1rem}.foundations-planning-page .mission-result{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:6px;font-weight:500;font-size:.9rem;margin-bottom:1rem}.foundations-planning-page .mission-result.success{background:#d4ff0026;border:1px solid rgba(212,255,0,.3);color:var(--accent-lime)}.foundations-planning-page .mission-result.failure{background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#ef4444}.foundations-planning-page .result-icon{font-size:1.1rem}.foundations-planning-page .try-again-btn{padding:.5rem 1.25rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease}.foundations-planning-page .try-again-btn:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}.foundations-planning-page .completed-paths{margin-top:1rem;padding:.75rem 1rem;background:var(--bg-secondary);border-radius:8px}.foundations-planning-page .completed-paths h4{font-size:.8rem;font-weight:500;color:var(--text-primary);margin:0 0 .5rem}.foundations-planning-page .paths-list{display:flex;flex-wrap:wrap;gap:.5rem}.foundations-planning-page .completed-path{display:flex;align-items:center;gap:.35rem;padding:.3rem .6rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;font-size:.85rem}.foundations-planning-page .completed-path.optimal{border-color:var(--accent-lime);background:#d4ff001a}.foundations-planning-page .path-number{color:var(--text-muted)}.foundations-planning-page .path-cost-badge{color:var(--accent-orange);font-weight:500}.foundations-planning-page .completed-path.optimal .path-cost-badge,.foundations-planning-page .optimal-star{color:var(--accent-lime)}.foundations-planning-page .action-header-buttons{display:flex;gap:.5rem}.foundations-planning-page .state-space-demo{background:var(--bg-primary);border-radius:10px;padding:1.5rem;margin-top:1.5rem}.foundations-planning-page .state-space-demo.rover-demo{background:linear-gradient(135deg,var(--bg-primary) 0%,rgba(255,100,50,.05) 100%)}.foundations-planning-page .demo-context{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#ff9f431a;border:1px solid rgba(255,159,67,.2);border-radius:8px;margin-bottom:1.5rem}.foundations-planning-page .context-icon{font-size:1.25rem}.foundations-planning-page .context-text{font-size:.9rem;color:var(--text-secondary)}.foundations-planning-page .context-text strong{color:var(--accent-orange)}.foundations-planning-page .state-explanation{text-align:center;font-size:.9rem;color:var(--text-secondary);margin-bottom:1.5rem;padding:.5rem 1rem;background:var(--bg-secondary);border-radius:6px}.foundations-planning-page .state-explanation strong{color:var(--accent-cyan)}.foundations-planning-page .demo-layout-horizontal{display:grid;grid-template-columns:1fr 320px;gap:2rem;align-items:flex-start}.foundations-planning-page .terrain-grid-section{display:flex;flex-direction:column;align-items:center;gap:1rem}.foundations-planning-page .terrain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;background:var(--border-color);padding:4px;border-radius:10px;max-width:380px;width:100%}.foundations-planning-page .terrain-cell{aspect-ratio:1;min-height:100px;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;transition:all .3s ease;padding:.5rem}.foundations-planning-page .terrain-cell.flat{background:linear-gradient(135deg,#4a3728,#5c4333)}.foundations-planning-page .terrain-cell.rough{background:linear-gradient(135deg,#3d2a1a,#4a3020);box-shadow:inset 0 0 20px #0000004d}.foundations-planning-page .terrain-cell.hazard{background:linear-gradient(135deg,#4a1a1a,#5c2020);box-shadow:inset 0 0 20px #0006}.foundations-planning-page .terrain-cell.base{background:linear-gradient(135deg,#2a4a5c,#1e3a4a)}.foundations-planning-page .terrain-cell.goal{background:linear-gradient(135deg,#3d5c2a,#2d4a1e)}.foundations-planning-page .terrain-cell.current{box-shadow:0 0 0 3px var(--accent-cyan),0 0 20px #00e5ff4d}.foundations-planning-page .terrain-cell.result,.foundations-planning-page .terrain-cell.preview{box-shadow:0 0 0 3px var(--accent-lime),0 0 20px #d4ff004d}.foundations-planning-page .cell-coords{font-size:.85rem;font-weight:600;color:#ffffff80;position:absolute;top:4px;left:6px;font-family:monospace}.foundations-planning-page .cell-name{font-size:.8rem;font-weight:500;color:#ffffffb3;text-transform:uppercase;letter-spacing:.02em;position:absolute;top:4px;right:6px}.foundations-planning-page .cell-cost{font-size:.85rem;color:#fff6;position:absolute;bottom:4px;left:0;right:0;text-align:center}.foundations-planning-page .rover-icon{color:var(--accent-orange);filter:drop-shadow(0 2px 4px rgba(0,0,0,.5));transition:transform .3s ease}.foundations-planning-page .preview-rover{color:var(--accent-lime);opacity:.6;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5));transition:transform .3s ease;animation:pulse-preview 1s ease-in-out infinite}@keyframes pulse-preview{0%,to{opacity:.4}50%{opacity:.8}}.foundations-planning-page .result-marker{font-size:1.75rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5));animation:pulse-destination 1s ease-in-out infinite}@keyframes pulse-destination{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.foundations-planning-page .location-marker{position:absolute;bottom:6px;font-size:.8rem;font-weight:700;padding:.15rem .4rem;border-radius:3px;letter-spacing:.05em}.foundations-planning-page .location-marker.start{background:#00e5ff4d;color:var(--accent-cyan)}.foundations-planning-page .location-marker.goal{background:#d4ff004d;color:var(--accent-lime)}.foundations-planning-page .terrain-legend{display:flex;gap:1.5rem;font-size:.85rem;color:var(--text-secondary)}.foundations-planning-page .legend-item{display:flex;align-items:center;gap:.4rem}.foundations-planning-page .legend-color{width:14px;height:14px;border-radius:3px}.foundations-planning-page .legend-color.flat{background:linear-gradient(135deg,#4a3728,#5c4333)}.foundations-planning-page .legend-color.rough{background:linear-gradient(135deg,#3d2a1a,#4a3020)}.foundations-planning-page .legend-color.hazard{background:linear-gradient(135deg,#4a1a1a,#5c2020)}.foundations-planning-page .state-display{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.foundations-planning-page .current-state-box,.foundations-planning-page .result-state-box{padding:.75rem 1rem;border-radius:8px;text-align:center}.foundations-planning-page .current-state-box{background:#00e5ff1a;border:1px solid rgba(0,229,255,.3)}.foundations-planning-page .result-state-box{background:#d4ff001a;border:1px solid rgba(212,255,0,.3)}.foundations-planning-page .state-display .state-label{display:block;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.25rem}.foundations-planning-page .state-display .state-value{display:block;font-size:1.1rem;font-weight:600;font-family:monospace;margin-bottom:.25rem}.foundations-planning-page .current-state-box .state-value{color:var(--accent-cyan)}.foundations-planning-page .result-state-box .state-value{color:var(--accent-lime)}.foundations-planning-page .state-display .state-detail{font-size:.85rem;color:var(--text-secondary)}.foundations-planning-page .mission-stats{display:flex;gap:1rem;padding:.75rem;background:var(--bg-secondary);border-radius:8px}.foundations-planning-page .stat{flex:1;text-align:center}.foundations-planning-page .stat-label{display:block;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.25rem}.foundations-planning-page .stat-value{font-size:.9rem;font-weight:600;color:var(--text-primary)}.foundations-planning-page .graph-section{display:flex;justify-content:center}.foundations-planning-page .state-space-svg{width:100%;max-width:450px;display:block}.foundations-planning-page .state-circle{fill:var(--bg-secondary);stroke:var(--border-color);stroke-width:2;transition:all .2s ease}.foundations-planning-page .state-circle:hover{stroke:var(--accent-cyan)}.foundations-planning-page .state-circle.selected{fill:#00e5ff26;stroke:var(--accent-cyan);stroke-width:2.5}.foundations-planning-page .state-circle.initial{fill:#ff9f4333;stroke:var(--accent-orange)}.foundations-planning-page .state-circle.goal{fill:#d4ff0033;stroke:var(--accent-lime)}.foundations-planning-page .state-circle.current{fill:#00e5ff40;stroke:var(--accent-cyan);stroke-width:3}.foundations-planning-page .state-circle.result{fill:#d4ff0040;stroke:var(--accent-lime);stroke-width:3}.foundations-planning-page .state-label{fill:var(--text-primary);font-size:14px;font-weight:600;text-anchor:middle;pointer-events:none}.foundations-planning-page .state-type-label{font-size:10px;text-anchor:middle;pointer-events:none}.foundations-planning-page .state-type-label.initial{fill:var(--accent-orange)}.foundations-planning-page .state-type-label.goal{fill:var(--accent-lime)}.foundations-planning-page .transition-line{stroke:var(--text-muted);stroke-width:1.5;opacity:.3;transition:all .2s ease}.foundations-planning-page .transition-line.available{stroke:var(--accent-cyan);stroke-width:2;opacity:.8}.foundations-planning-page .transition-line.selected{stroke:var(--accent-lime);stroke-width:2.5;opacity:1}.foundations-planning-page .transition-label{fill:var(--accent-cyan);font-size:10px;text-anchor:middle}.foundations-planning-page .transition-label.selected{fill:var(--accent-lime);font-weight:600}.foundations-planning-page .demo-hint{text-align:center;font-size:.8rem;color:var(--text-muted);margin-top:1rem;font-style:italic}.foundations-planning-page .controls-section{display:flex;flex-direction:column;gap:1.25rem}.foundations-planning-page .transition-formula{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:center;padding:1rem;background:var(--bg-secondary);border-radius:8px}.foundations-planning-page .transition-formula .formula-box{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;padding:.5rem .75rem;text-align:center;min-width:70px;transition:all .3s ease}.foundations-planning-page .transition-formula .formula-box.current-state{border-color:var(--accent-cyan);background:#00e5ff1a}.foundations-planning-page .transition-formula .formula-box.action.selected{border-color:var(--accent-orange);background:#ff9f431a}.foundations-planning-page .transition-formula .formula-box.result-state.visible{border-color:var(--accent-lime);background:#d4ff001a}.foundations-planning-page .transition-formula .formula-label{display:block;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.15rem}.foundations-planning-page .transition-formula .formula-value{font-size:.9rem;color:var(--text-primary);font-weight:500}.foundations-planning-page .transition-formula .formula-operator{font-size:1.1rem;color:var(--text-muted);font-weight:300}.foundations-planning-page .actions-panel{background:var(--bg-secondary);border-radius:8px;padding:1rem}.foundations-planning-page .actions-panel .actions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.foundations-planning-page .actions-panel h4{font-size:.85rem;font-weight:500;color:var(--text-primary);margin:0}.foundations-planning-page .actions-panel .reset-btn{padding:.3rem .6rem;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-tertiary);color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s ease}.foundations-planning-page .actions-panel .reset-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.foundations-planning-page .actions-panel .goal-reached{margin-top:.75rem;padding:.6rem;background:#d4ff0026;border:1px solid rgba(212,255,0,.3);border-radius:6px;color:var(--accent-lime);font-weight:500;font-size:.9rem;text-align:center}.foundations-planning-page .actions-panel .action-buttons{display:flex;flex-direction:column;gap:.5rem}.foundations-planning-page .actions-panel .action-btn{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:.15rem .5rem;padding:.6rem .9rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-tertiary);color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s ease;text-align:left}.foundations-planning-page .actions-panel .action-btn:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}.foundations-planning-page .actions-panel .action-btn.selected{background:#d4ff001a;border-color:var(--accent-lime);color:var(--accent-lime)}.foundations-planning-page .actions-panel .action-btn.disabled{opacity:.4;cursor:not-allowed}.foundations-planning-page .actions-panel .action-name{font-weight:500;grid-column:1;grid-row:1}.foundations-planning-page .actions-panel .action-detail{font-size:.85rem;opacity:.7;grid-column:1;grid-row:2}.foundations-planning-page .actions-panel .action-cost{font-size:.8rem;font-weight:600;color:var(--accent-orange);grid-column:2;grid-row:1 / 3;align-self:center}.foundations-planning-page .actions-panel .apply-btn{margin-top:.75rem;padding:.6rem 1rem;border:none;border-radius:6px;background:var(--accent-lime);color:#000;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease;width:100%}.foundations-planning-page .actions-panel .apply-btn:hover{background:#c4e600}.foundations-planning-page .demo-instructions{background:var(--bg-secondary);border-radius:8px;padding:1rem}.foundations-planning-page .demo-instructions p{font-size:.8rem;color:var(--text-secondary);margin:.35rem 0;line-height:1.5}.foundations-planning-page .demo-instructions p strong{color:var(--accent-cyan)}.foundations-planning-page .concept-box{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem 1.5rem;margin-top:1.5rem}.foundations-planning-page .concept-box h4{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem;text-transform:uppercase;letter-spacing:.03em}.foundations-planning-page .concept-list{margin:0}.foundations-planning-page .concept-item{margin-bottom:1rem}.foundations-planning-page .concept-item:last-child{margin-bottom:0}.foundations-planning-page .concept-item dt{font-weight:600;color:var(--accent-cyan);font-size:.95rem;margin-bottom:.25rem}.foundations-planning-page .concept-item dd{margin:0;font-size:.9rem;color:var(--text-secondary);line-height:1.6}.foundations-planning-page .transition-model-demo{background:var(--bg-primary);border-radius:10px;padding:1.5rem;margin-top:1.5rem}.foundations-planning-page .formula-box{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;padding:.75rem 1rem;text-align:center;min-width:120px;transition:all .3s ease}.foundations-planning-page .formula-box.current-state{border-color:var(--accent-cyan);background:#00e5ff1a}.foundations-planning-page .formula-box.action{border-color:var(--border-color)}.foundations-planning-page .formula-box.action.selected{border-color:var(--accent-orange);background:#ff9f431a}.foundations-planning-page .formula-box.result-state{border-color:var(--border-color);opacity:.5}.foundations-planning-page .formula-box.result-state.visible{border-color:var(--accent-lime);background:#d4ff001a;opacity:1}.foundations-planning-page .formula-label{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.25rem}.foundations-planning-page .formula-value{font-size:.9rem;color:var(--text-primary);font-weight:500}.foundations-planning-page .formula-operator{font-size:1.25rem;color:var(--text-muted);font-weight:300}.foundations-planning-page .demo-grid.small{gap:1px;padding:1px}.foundations-planning-page .demo-cell.current{background:#00e5ff40!important}.foundations-planning-page .demo-cell.result{background:#d4ff0040!important}.foundations-planning-page .state-marker{font-size:.9rem;font-weight:600}.foundations-planning-page .state-marker.current{color:var(--accent-cyan)}.foundations-planning-page .state-marker.result{color:var(--accent-lime)}.foundations-planning-page .formula-block{background:var(--bg-tertiary);padding:1rem;border-radius:6px;margin:1rem 0;font-family:var(--font-display)}.foundations-planning-page .formula-block p{margin:.5rem 0;font-size:.9rem;color:var(--text-secondary)}.foundations-planning-page .formula-block strong{color:var(--accent-cyan)}.foundations-planning-page .example-text{font-size:.85rem;color:var(--text-muted);font-style:italic;margin-top:.75rem}.foundations-planning-page .cspace-intro{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem 1.5rem;margin:1.5rem 0}.foundations-planning-page .cspace-intro h4{font-size:.95rem;font-weight:600;color:var(--accent-cyan);margin:0 0 .75rem}.foundations-planning-page .cspace-intro>p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0 0 1rem}.foundations-planning-page .cspace-intro strong{color:var(--text-primary)}.foundations-planning-page .cspace-intro em{color:var(--accent-cyan);font-style:normal}.foundations-planning-page .cspace-examples{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.foundations-planning-page .cspace-example{display:grid;grid-template-columns:160px 120px 1fr;gap:1rem;align-items:center;padding:.5rem .75rem;background:#0003;border-radius:6px;font-size:.85rem}.foundations-planning-page .cspace-example .robot-type{color:var(--text-secondary)}.foundations-planning-page .cspace-example .cspace-def{font-family:Times New Roman,serif;font-style:italic;color:var(--accent-cyan);font-size:.95rem}.foundations-planning-page .cspace-example .cspace-meaning{color:var(--text-muted);font-size:.8rem}.foundations-planning-page .cspace-note{font-size:.8rem;color:var(--text-muted);margin:0;padding-top:.5rem;border-top:1px solid var(--border-color)}.foundations-planning-page .path-trajectory-comparison{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:1.5rem 0}.foundations-planning-page .comparison-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem}.foundations-planning-page .comparison-card h4{font-size:1.1rem;font-weight:600;margin:0 0 .75rem}.foundations-planning-page .path-card h4{color:var(--accent-cyan)}.foundations-planning-page .trajectory-card h4{color:var(--accent-lime)}.foundations-planning-page .comparison-card .definition{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin-bottom:1rem}.foundations-planning-page .formal-def{background:#0000004d;border-radius:8px;padding:.75rem 1rem;margin-bottom:1rem}.foundations-planning-page .formal-def .math{display:block;font-family:Times New Roman,serif;font-size:1.1rem;font-style:italic;color:var(--text-primary);margin-bottom:.25rem}.foundations-planning-page .formal-def .explanation{font-size:.85rem;color:var(--text-muted)}.foundations-planning-page .comparison-card .example-box{background:#ffffff08;border-left:3px solid var(--border-color);padding:.75rem 1rem;border-radius:0 6px 6px 0}.foundations-planning-page .path-card .example-box{border-left-color:var(--accent-cyan)}.foundations-planning-page .trajectory-card .example-box{border-left-color:var(--accent-lime)}.foundations-planning-page .comparison-card .example-box strong{font-size:.8rem;color:var(--text-primary)}.foundations-planning-page .comparison-card .example-box p{font-size:.8rem;color:var(--text-secondary);margin:.25rem 0}.foundations-planning-page .comparison-card .example-box code{display:block;font-size:.85rem;background:#0000004d;padding:.5rem;border-radius:4px;margin:.5rem 0;overflow-x:auto;color:var(--accent-cyan)}.foundations-planning-page .trajectory-card .example-box code{color:var(--accent-lime)}.foundations-planning-page .comparison-card .example-box .note{font-style:italic;color:var(--text-muted);font-size:.85rem}.foundations-planning-page .distinction-box{margin:1.5rem 0}.foundations-planning-page .distinction-content{display:flex;flex-direction:column;gap:1rem}.foundations-planning-page .distinction-item{padding-left:1rem;border-left:3px solid var(--border-color)}.foundations-planning-page .distinction-item strong{color:var(--accent-cyan)}.foundations-planning-page .distinction-item em{color:var(--text-primary)}.foundations-planning-page .distinction-item p{margin:.25rem 0 0;font-size:.85rem;color:var(--text-secondary)}.foundations-planning-page .path-illustration{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:1.5rem}.foundations-planning-page .path-component{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem}.foundations-planning-page .path-component h4{font-size:.85rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem;text-transform:uppercase;letter-spacing:.03em}.foundations-planning-page .sequence{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.foundations-planning-page .seq-item{padding:.4rem .75rem;border-radius:4px;font-size:.85rem;font-weight:500}.foundations-planning-page .seq-item.action{background:#ff9f4326;color:var(--accent-orange);border:1px solid rgba(255,159,67,.3)}.foundations-planning-page .seq-item.state{background:#00e5ff26;color:var(--accent-cyan);border:1px solid rgba(0,229,255,.3)}.foundations-planning-page .seq-item.state.goal{background:#d4ff0026;color:var(--accent-lime);border:1px solid rgba(212,255,0,.3)}.foundations-planning-page .seq-arrow{color:var(--text-muted);font-size:1rem}.foundations-planning-page .seq-item.timed{line-height:1.2;padding:.4rem .6rem}.foundations-planning-page .seq-item.timed small{display:block;font-size:.85rem;color:var(--accent-lime);margin-top:.2rem}.foundations-planning-page .trajectory-sequence{background:#d4ff000d;padding:.75rem;border-radius:6px;border:1px dashed rgba(212,255,0,.2)}.foundations-planning-page .path-cost-demo{background:var(--bg-primary);border-radius:10px;padding:1.5rem;margin-top:1.5rem}.foundations-planning-page .paths-header{text-align:center;margin-bottom:1.25rem}.foundations-planning-page .paths-header p{font-size:.9rem;color:var(--text-secondary);margin:0}.foundations-planning-page .paths-header strong{color:var(--text-primary)}.foundations-planning-page .path-selector{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap;margin-bottom:1.5rem}.foundations-planning-page .path-option{position:relative;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem 1.25rem;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s ease}.foundations-planning-page .path-option:hover{border-color:var(--path-color);background:#ffffff08}.foundations-planning-page .path-option.selected{border-color:var(--path-color);background:#ffffff0d;box-shadow:0 0 12px #ffffff1a}.foundations-planning-page .path-option .path-name{font-size:.85rem;font-weight:500;color:var(--text-primary)}.foundations-planning-page .path-option .path-cost{font-size:.8rem;color:var(--text-muted)}.foundations-planning-page .path-option.selected .path-cost{color:var(--path-color);font-weight:600}.foundations-planning-page .path-option .optimal-badge{position:absolute;top:-8px;right:-8px;background:var(--accent-lime);color:var(--bg-primary);font-size:.8rem;font-weight:600;padding:.2rem .4rem;border-radius:4px;text-transform:uppercase}.foundations-planning-page .pc-content{display:grid;grid-template-columns:auto 1fr;gap:2rem;align-items:flex-start}.foundations-planning-page .pc-grid-container{display:flex;flex-direction:column;align-items:center;gap:1rem}.foundations-planning-page .paths-grid{display:grid;grid-template-columns:repeat(4,85px);gap:12px;padding:6px}.foundations-planning-page .paths-grid .terrain-cell{position:relative;width:85px;height:85px;aspect-ratio:unset;min-height:unset;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:all .2s ease}.foundations-planning-page .paths-grid .terrain-cell.on-path{z-index:1;box-shadow:0 0 0 3px var(--path-color)}.foundations-planning-page .paths-grid .cell-coords{position:absolute;top:4px;left:6px;font-size:.8rem;color:#fff6;font-family:monospace}.foundations-planning-page .paths-grid .cell-terrain-name{font-size:.8rem;color:#ffffffb3;text-transform:uppercase;letter-spacing:.02em}.foundations-planning-page .paths-grid .cell-energy{font-size:.85rem;color:#ffffff80;margin-top:.25rem}.foundations-planning-page .paths-grid .path-order{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;color:var(--bg-primary)}.foundations-planning-page .paths-grid .location-marker{position:absolute;bottom:4px;font-size:.85rem;font-weight:600;padding:.15rem .35rem;border-radius:3px}.foundations-planning-page .pc-breakdown{min-width:260px}.foundations-planning-page .pc-breakdown h4{font-size:1rem;font-weight:600;margin:0 0 .25rem}.foundations-planning-page .pc-breakdown .path-desc{font-size:.8rem;color:var(--text-muted);margin:0 0 1rem}.foundations-planning-page .cost-list{display:flex;flex-direction:column;gap:.35rem}.foundations-planning-page .cost-item{display:flex;align-items:center;gap:.5rem;padding:.4rem .6rem;background:var(--bg-secondary);border-radius:4px;font-size:.8rem}.foundations-planning-page .cost-step{color:var(--text-muted);min-width:1.5rem}.foundations-planning-page .cost-action{flex:1;color:var(--text-secondary)}.foundations-planning-page .cost-value{color:var(--accent-orange);font-weight:500}.foundations-planning-page .cost-total{display:flex;justify-content:space-between;padding:.6rem .75rem;background:#ffffff0d;border:1px solid var(--border-color);border-radius:4px;font-size:.9rem;margin-top:.75rem}.foundations-planning-page .cost-total span:first-child{color:var(--text-primary);font-weight:500}.foundations-planning-page .total-value{font-weight:700}.foundations-planning-page .pc-explanation{margin-top:1.5rem;padding:1rem;background:var(--bg-secondary);border-radius:6px;font-size:.9rem;color:var(--text-secondary);line-height:1.6}.foundations-planning-page .pc-explanation strong{color:var(--text-primary)}.foundations-planning-page .pc-explanation p{margin:.5rem 0 0}.foundations-planning-page .cost-examples{margin-top:1.5rem}.foundations-planning-page .cost-examples h4{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.foundations-planning-page .cost-model-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.foundations-planning-page .cost-model{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;padding:1rem}.foundations-planning-page .model-name{display:block;font-size:.9rem;font-weight:500;color:var(--accent-cyan);margin-bottom:.25rem}.foundations-planning-page .model-desc{font-size:.8rem;color:var(--text-secondary)}.foundations-planning-page .summary-section .content-section>p{margin-bottom:1rem}.foundations-planning-page .summary-table{width:100%;border-collapse:collapse;font-size:.9rem;margin-top:1rem}.foundations-planning-page .summary-table th,.foundations-planning-page .summary-table td{padding:.85rem 1rem;text-align:left;border-bottom:1px solid var(--border-color)}.foundations-planning-page .summary-table th{background:var(--bg-tertiary);color:var(--text-primary);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.foundations-planning-page .summary-table td{color:var(--text-secondary)}.foundations-planning-page .summary-table td:first-child{color:var(--text-primary);font-weight:500}.foundations-planning-page .summary-table td:nth-child(2){color:var(--accent-cyan);font-family:var(--font-display)}.foundations-planning-page .summary-table tbody tr:hover{background:var(--bg-primary)}@media (max-width: 900px){.foundations-planning-page .demo-layout-horizontal,.foundations-planning-page .demo-content,.foundations-planning-page .pc-content{grid-template-columns:1fr}.foundations-planning-page .controls-section,.foundations-planning-page .mode-description,.foundations-planning-page .pc-breakdown{width:100%}.foundations-planning-page .terrain-grid{max-width:320px}.foundations-planning-page .terrain-cell{min-height:85px}.foundations-planning-page .comparison-cards,.foundations-planning-page .path-trajectory-comparison,.foundations-planning-page .path-illustration,.foundations-planning-page .cost-model-grid{grid-template-columns:1fr}.foundations-planning-page .cspace-example{grid-template-columns:1fr;gap:.25rem;text-align:center}.foundations-planning-page .path-selector{flex-direction:column;align-items:stretch}.foundations-planning-page .path-option{flex-direction:row;justify-content:space-between}.foundations-planning-page .paths-grid{grid-template-columns:repeat(4,65px)}.foundations-planning-page .paths-grid .terrain-cell{width:65px;height:65px}.foundations-planning-page .transition-formula{gap:.35rem}.foundations-planning-page .transition-formula .formula-box{min-width:60px;padding:.4rem .5rem}.foundations-planning-page .terrain-legend{flex-direction:column;gap:.5rem}.foundations-planning-page .path-planning-demo.large-grid .terrain-grid{max-width:350px}.foundations-planning-page .path-planning-demo.large-grid .terrain-cell{min-height:60px}}@media (max-width: 768px){.foundations-planning-page .content-section{padding:1.5rem}.foundations-planning-page .content-section h2{font-size:1.2rem}.foundations-planning-page .summary-table{font-size:.8rem}.foundations-planning-page .summary-table th,.foundations-planning-page .summary-table td{padding:.6rem .5rem}.foundations-planning-page .transition-formula{flex-direction:column;gap:.5rem}.foundations-planning-page .transition-formula .formula-operator{display:none}}.from-search-to-planning-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem;max-width:1000px}.from-search-to-planning-page .content-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem}.from-search-to-planning-page .content-section h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.from-search-to-planning-page .content-section h3{font-size:1.15rem;font-weight:500;color:var(--text-primary);margin:1.5rem 0 1rem}.from-search-to-planning-page .content-section>p{font-size:.95rem;line-height:1.75;color:var(--text-secondary);margin:0 0 1.5rem}.from-search-to-planning-page .content-section>p strong{color:var(--text-primary)}.from-search-to-planning-page .content-section>p em{color:var(--accent-cyan);font-style:normal}.from-search-to-planning-page .intro-section{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(0,229,255,.05) 100%)}.state-explosion-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.explosion-examples{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.5rem}.example-row{display:flex;justify-content:space-between;padding:.5rem .75rem;background:var(--bg-secondary);border-radius:4px;font-size:.85rem}.example-row.highlight{background:#ff9f431a;border:1px solid rgba(255,159,67,.2)}.example-context{color:var(--text-secondary)}.example-calc{color:var(--accent-orange);font-weight:500;font-family:monospace}.explosion-insight{background:#00e5ff14;border:1px solid rgba(0,229,255,.2);border-radius:8px;padding:1rem 1.25rem;font-size:.9rem;color:var(--text-secondary);line-height:1.6}.explosion-insight strong{color:var(--accent-cyan)}.explosion-insight em{color:var(--text-primary);font-style:normal}.transition-box{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin-top:1.5rem}.transition-box h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem}.transition-box p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0 0 1rem}.transition-box em{color:var(--accent-cyan);font-style:normal}.key-insight{background:#d4ff0014;border:1px solid rgba(212,255,0,.2);border-radius:6px;padding:1rem;font-size:.9rem;color:var(--text-secondary);line-height:1.6}.key-insight strong{color:var(--accent-lime)}.key-insight em{color:var(--text-primary);font-style:normal}.strips-overview{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:1.5rem 0}.strips-component{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem}.strips-component h4{font-size:.95rem;font-weight:600;color:var(--accent-cyan);margin:0 0 .75rem}.strips-component p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0 0 .75rem}.strips-component p:last-child{margin-bottom:0}.strips-component code{background:var(--bg-tertiary);padding:.15rem .4rem;border-radius:3px;font-size:.85rem;color:var(--accent-cyan)}.strips-component ul{margin:0;padding-left:1.25rem}.strips-component li{font-size:.9rem;color:var(--text-secondary);line-height:1.5;margin-bottom:.25rem}.strips-component li strong{color:var(--text-primary)}.closed-world-note{background:#ff9f431a;border:1px solid rgba(255,159,67,.2);border-radius:6px;padding:.75rem;font-size:.85rem;color:var(--text-secondary);margin-top:.75rem}.closed-world-note strong{color:var(--accent-orange)}.predicates-box{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem 1.5rem;margin:1.5rem 0}.predicates-box h4{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem;text-transform:uppercase;letter-spacing:.03em}.predicate-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.5rem}.predicate{display:flex;align-items:baseline;gap:.75rem;padding:.5rem .75rem;background:var(--bg-secondary);border-radius:4px}.predicate code{font-size:.9rem;color:var(--accent-cyan);min-width:100px}.predicate span{font-size:.85rem;color:var(--text-muted)}.actions-schemas-section{margin:1.5rem 0}.actions-schemas-section h4{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem;text-transform:uppercase;letter-spacing:.03em}.actions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.strips-action-schema{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.schema-header{background:var(--bg-tertiary);padding:.6rem 1rem;border-bottom:1px solid var(--border-color)}.action-name{font-weight:600;color:var(--accent-orange);font-size:.95rem}.action-params{color:var(--text-muted);font-size:.9rem}.schema-body{padding:1rem}.schema-section{margin-bottom:.75rem}.schema-section:last-child{margin-bottom:0}.section-label{display:block;font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:.35rem}.literals{display:flex;flex-wrap:wrap;gap:.35rem}.literal{font-size:.8rem;padding:.2rem .5rem;border-radius:3px;font-family:monospace}.literal.positive{background:#00e5ff1a;color:var(--accent-cyan)}.literal.negative{background:#ef44441a;color:#ef4444}.effects-split{display:flex;gap:1rem}.add-list,.delete-list{flex:1}.list-label{display:block;font-size:.7rem;font-weight:600;margin-bottom:.25rem}.add-list .list-label{color:var(--accent-lime)}.delete-list .list-label{color:#ef4444}.blocks-world-demo{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;margin:1.5rem 0}.blocks-world-demo .demo-header{text-align:center;margin-bottom:1.5rem}.blocks-world-demo .demo-header p{font-size:.9rem;color:var(--text-secondary);margin:0}.blocks-world-demo .demo-header strong{color:var(--accent-lime)}.blocks-world-demo .demo-layout{display:grid;grid-template-columns:1fr 320px;gap:1.5rem;align-items:flex-start}.world-view{display:flex;flex-direction:column;align-items:center}.blocks-svg .table{fill:#4a5568}.blocks-svg .table-label{fill:var(--text-muted);font-size:12px;text-anchor:middle}.blocks-svg .arm-base,.blocks-svg .arm-gripper,.blocks-svg .arm-gripper-left{fill:#6b7280}.blocks-svg .block{stroke:#0000004d;stroke-width:2;transition:transform .3s ease}.blocks-svg .block-label{fill:#fff;font-size:18px;font-weight:700;text-anchor:middle}.action-message{margin-top:1rem;padding:.5rem 1rem;background:var(--bg-secondary);border-radius:6px;font-size:.85rem;color:var(--text-secondary)}.action-message.success{background:#d4ff0026;color:var(--accent-lime);font-weight:500}.state-and-actions{display:flex;flex-direction:column;gap:1rem}.current-state-panel,.goal-state-panel{background:var(--bg-secondary);border-radius:8px;padding:.75rem 1rem}.current-state-panel h4,.goal-state-panel h4{font-size:.8rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.03em}.current-state-panel{border:1px solid rgba(0,229,255,.2)}.goal-state-panel{border:1px solid rgba(212,255,0,.2)}.fluents-list{display:flex;flex-wrap:wrap;gap:.35rem}.fluent{font-size:.75rem;padding:.2rem .4rem;background:var(--bg-tertiary);border-radius:3px;color:var(--accent-cyan);font-family:monospace}.fluents-list.goal .fluent{color:var(--accent-lime)}.blocks-world-demo .actions-panel{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:.75rem 1rem}.blocks-world-demo .actions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.blocks-world-demo .actions-header h4{font-size:.8rem;font-weight:600;color:var(--text-primary);margin:0;text-transform:uppercase;letter-spacing:.03em}.action-buttons-header{display:flex;gap:.5rem}.small-btn{padding:.25rem .5rem;font-size:.75rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.small-btn:hover:not(:disabled){border-color:var(--text-muted);color:var(--text-primary)}.small-btn:disabled{opacity:.4;cursor:not-allowed}.action-buttons{display:flex;flex-direction:column;gap:.35rem}.action-btn{padding:.5rem .75rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:.85rem;font-family:monospace;cursor:pointer;transition:all .2s ease;text-align:left}.action-btn:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}.action-btn.selected{border-color:var(--accent-lime);background:#d4ff001a;color:var(--accent-lime)}.blocks-world-demo .goal-reached{padding:.75rem;background:#d4ff0026;border:1px solid rgba(212,255,0,.3);border-radius:6px;color:var(--accent-lime);font-weight:500;font-size:.9rem;text-align:center}.plan-trace{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.plan-trace h4{font-size:.8rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.03em}.trace-sequence{display:flex;gap:.35rem}.trace-step{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#00e5ff26;border:1px solid rgba(0,229,255,.3);border-radius:4px;font-size:.8rem;font-weight:600;color:var(--accent-cyan)}.frame-problem-box{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin-top:1.5rem}.frame-problem-box h4{font-size:1rem;font-weight:600;color:var(--accent-orange);margin:0 0 .75rem}.frame-problem-box p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0 0 1rem}.frame-problem-box em{color:var(--text-primary);font-style:normal}.strips-assumption{background:#ff9f431a;border:1px solid rgba(255,159,67,.2);border-radius:6px;padding:.75rem 1rem;font-size:.95rem;color:var(--text-primary);font-weight:500;text-align:center;margin-bottom:1rem}.pddl-structure{margin:1.5rem 0}.pddl-structure h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.pddl-files{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.pddl-file-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem}.pddl-file-card.domain{border-color:#00e5ff4d}.pddl-file-card.problem{border-color:#d4ff004d}.pddl-file-card h5{font-size:1rem;font-weight:600;margin:0 0 .5rem}.pddl-file-card.domain h5{color:var(--accent-cyan)}.pddl-file-card.problem h5{color:var(--accent-lime)}.pddl-file-card p{font-size:.9rem;color:var(--text-secondary);margin:0 0 .5rem}.pddl-file-card p em{color:var(--text-primary);font-style:normal}.pddl-file-card ul{margin:0 0 .75rem;padding-left:1.25rem}.pddl-file-card li{font-size:.85rem;color:var(--text-muted);line-height:1.5}.file-tag{display:inline-block;font-size:.75rem;padding:.2rem .5rem;background:var(--bg-secondary);border-radius:4px;color:var(--text-muted)}.pddl-example{margin:1.5rem 0}.pddl-example h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.pddl-example>p{font-size:.9rem;color:var(--text-secondary);margin:0 0 1rem}.pddl-code-container{display:flex;flex-direction:column;gap:1.5rem}.pddl-code-block{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.pddl-code-block.domain{border-color:#00e5ff4d}.pddl-code-block.problem{border-color:#d4ff004d}.code-header{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.file-icon{font-size:1rem}.file-name{font-size:.85rem;font-weight:500;color:var(--text-primary)}.annotated-code{padding:.75rem 0;overflow-x:auto}.code-line{display:grid;grid-template-columns:minmax(420px,auto) 1fr;gap:1.5rem;padding:.2rem 1rem;align-items:center;min-height:1.5rem}.code-line.section-start{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border-color)}.code-line.section-start:first-child{margin-top:0;padding-top:.2rem;border-top:none}.code-line:hover{background:#ffffff05}.code-line.has-annotation:hover{background:#00e5ff0d}.line-code{font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:.8rem;line-height:1.4;white-space:pre}.line-code code{color:var(--text-secondary);display:inline-block}.pddl-code-block.domain .code-line.section-start .line-code code{color:var(--accent-cyan)}.pddl-code-block.problem .code-line.section-start .line-code code{color:var(--accent-lime)}.line-annotation{padding-left:1rem;border-left:2px solid var(--border-color)}.annotation-text{font-size:.75rem;color:var(--text-muted);line-height:1.4}.pddl-code-block.domain .line-annotation{border-left-color:#00e5ff4d}.pddl-code-block.problem .line-annotation{border-left-color:#d4ff004d}.code-line.has-annotation .annotation-text{color:var(--text-secondary)}.planners-note{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin-top:1.5rem}.planners-note h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem}.planners-note>p{font-size:.9rem;color:var(--text-secondary);margin:0 0 1rem}.planner-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.planner{display:flex;flex-direction:column;padding:.75rem;background:var(--bg-secondary);border-radius:6px}.planner strong{font-size:.9rem;color:var(--accent-cyan);margin-bottom:.2rem}.planner span{font-size:.8rem;color:var(--text-muted)}.search-direction-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.direction-selector{display:flex;gap:.5rem;margin-bottom:1.5rem;justify-content:center}.direction-btn{padding:.6rem 1.25rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.direction-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.direction-btn.active{background:var(--accent-cyan);border-color:var(--accent-cyan);color:#000}.search-visualization{margin-bottom:1.5rem}.steps-container{display:flex;align-items:center;justify-content:center;gap:.25rem;flex-wrap:wrap}.search-step{display:flex;flex-direction:column;align-items:center;gap:.35rem;position:relative}.step-node{width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;transition:all .2s ease}.search-step.initial .step-node{border-color:var(--accent-orange);background:#ff9f431a}.search-step.goal .step-node{border-color:var(--accent-lime);background:#d4ff001a}.search-step.exploring .step-node{border-color:var(--accent-cyan);background:#00e5ff1a}.step-state{font-size:.85rem;font-weight:600;color:var(--text-primary)}.step-desc{font-size:.75rem;color:var(--text-muted);text-align:center;max-width:80px}.step-arrow{font-size:1.25rem;color:var(--text-muted);margin:0 .5rem}.step-arrow.forward{color:var(--accent-cyan)}.step-arrow.backward{color:var(--accent-lime)}.direction-comparison{background:var(--bg-secondary);border-radius:8px;padding:1rem 1.25rem}.comparison-content h5{font-size:.9rem;font-weight:600;margin:0 0 .75rem}.comparison-content.forward h5{color:var(--accent-cyan)}.comparison-content.backward h5{color:var(--accent-lime)}.comparison-content ul{margin:0;padding-left:1.25rem}.comparison-content li{font-size:.85rem;color:var(--text-secondary);line-height:1.6;margin-bottom:.25rem}.comparison-content li strong{color:var(--accent-orange)}.heuristics-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.heuristic-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.heuristic-tab{padding:.5rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s ease}.heuristic-tab:hover{border-color:var(--text-muted);color:var(--text-primary)}.heuristic-tab.active{background:var(--accent-cyan);border-color:var(--accent-cyan);color:#000}.heuristic-details h4{font-size:1.1rem;font-weight:600;color:var(--accent-cyan);margin:0 0 .75rem}.heuristic-desc{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0 0 1rem}.heuristic-example{background:var(--bg-secondary);border-radius:6px;padding:1rem;margin-bottom:1rem}.heuristic-example strong{color:var(--text-primary);font-size:.85rem}.heuristic-example p{font-size:.85rem;color:var(--text-muted);margin:.25rem 0 0;line-height:1.5}.heuristic-tradeoffs{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.heuristic-tradeoffs h5{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;margin:0 0 .5rem}.pros h5{color:var(--accent-lime)}.cons h5{color:var(--accent-orange)}.heuristic-tradeoffs ul{margin:0;padding-left:1.1rem}.heuristic-tradeoffs li{font-size:.8rem;color:var(--text-secondary);line-height:1.5;margin-bottom:.2rem}.alternative-approaches{margin-top:1.5rem}.alternative-approaches h3{font-size:1.15rem;font-weight:500;color:var(--text-primary);margin:0 0 1rem}.approaches-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.approach-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem}.approach-card h4{font-size:1rem;font-weight:600;color:var(--accent-cyan);margin:0 0 .5rem}.approach-card p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0 0 .75rem}.approach-detail{background:var(--bg-secondary);border-radius:4px;padding:.75rem;font-size:.8rem;color:var(--text-muted);line-height:1.5}.approach-detail strong{color:var(--text-secondary)}.state-of-art-box{background:linear-gradient(135deg,#00e5ff14,#d4ff000d);border:1px solid rgba(0,229,255,.2);border-radius:10px;padding:1.5rem;margin-top:1.5rem}.state-of-art-box h4{font-size:1rem;font-weight:600;color:var(--accent-cyan);margin:0 0 .75rem}.state-of-art-box>p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0 0 .75rem}.state-of-art-box ul{margin:0 0 .75rem;padding-left:1.25rem}.state-of-art-box li{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin-bottom:.25rem}.state-of-art-box strong{color:var(--text-primary)}@media (max-width: 900px){.blocks-world-demo .demo-layout,.strips-overview,.actions-grid,.pddl-files,.planner-list,.heuristic-tradeoffs,.approaches-grid{grid-template-columns:1fr}.steps-container{flex-direction:column;gap:.5rem}.step-arrow{transform:rotate(90deg)}.step-arrow.backward{transform:rotate(-90deg)}.code-line{grid-template-columns:1fr;gap:.25rem}.line-annotation{padding-left:.75rem;margin-left:.5rem}}@media (max-width: 768px){.from-search-to-planning-page .content-section{padding:1.5rem}.from-search-to-planning-page .content-section h2{font-size:1.2rem}.direction-selector,.heuristic-tabs{flex-direction:column}.predicate-list{grid-template-columns:1fr}}.advanced-planning-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem;max-width:1000px}.advanced-planning-page .content-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem}.advanced-planning-page .content-section h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.advanced-planning-page .content-section h3{font-size:1.15rem;font-weight:500;color:var(--text-primary);margin:1.5rem 0 1rem}.advanced-planning-page .content-section>p{font-size:.95rem;line-height:1.75;color:var(--text-secondary);margin:0 0 1.5rem}.advanced-planning-page .content-section>p strong{color:var(--text-primary)}.advanced-planning-page .content-section>p em{color:var(--accent-cyan);font-style:normal}.advanced-planning-page .intro-section{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(0,229,255,.05) 100%)}.partial-order-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.plan-comparison{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem}.plan-type{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.plan-type.total-order{border-color:#ff9f434d}.plan-type.partial-order{border-color:#00e5ff4d}.plan-type h4{font-size:1rem;font-weight:600;margin:0 0 1rem}.plan-type.total-order h4{color:var(--accent-orange)}.plan-type.partial-order h4{color:var(--accent-cyan)}.plan-diagram{margin-bottom:.75rem}.plan-svg{width:100%;height:auto;background:#0003;border-radius:6px}.plan-desc{font-size:.85rem;color:var(--text-muted);text-align:center;margin:.5rem 0 0}.plan-properties{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.property{font-size:.75rem;padding:.25rem .5rem;border-radius:4px}.property.positive{background:#22c55e26;color:#22c55e}.property.negative{background:#ef444426;color:#ef4444}.pop-components{margin-bottom:2rem}.pop-components h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.components-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.component-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1rem;text-align:center}.component-icon{font-size:1.5rem;display:block;margin-bottom:.5rem}.component-card h5{font-size:.85rem;font-weight:600;color:var(--accent-cyan);margin:0 0 .35rem}.component-card p{font-size:.8rem;color:var(--text-muted);margin:0;line-height:1.4}.threat-resolution h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem}.threat-intro{font-size:.9rem;color:var(--text-secondary);margin:0 0 1rem;line-height:1.6}.threat-intro strong{color:#ef4444}.threat-demo{background:var(--bg-secondary);border-radius:8px;padding:1rem}.threat-controls{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.threat-btn,.resolution-btn{padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-tertiary);color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s ease}.threat-btn:hover,.resolution-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.threat-btn.active{background:#ef444426;border-color:#ef4444;color:#ef4444}.resolution-btn.active{background:#22c55e26;border-color:#22c55e;color:#22c55e}.threat-svg{width:100%;max-width:450px;height:auto;display:block;margin:0 auto 1rem;background:#0003;border-radius:6px}.threat-rect{transition:all .5s ease}.resolution-explanation{text-align:center;font-size:.9rem;min-height:2.5rem}.resolution-explanation p{margin:0;color:var(--text-secondary)}.threat-text{color:#ef4444!important}.resolved-text{color:#22c55e!important}.principle-box{background:var(--bg-primary);border:1px solid rgba(0,229,255,.3);border-radius:10px;padding:1.5rem;margin-top:1.5rem}.principle-box h4{font-size:1rem;font-weight:600;color:var(--accent-cyan);margin:0 0 .75rem}.principle-box>p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0 0 .75rem}.principle-box ul{margin:0 0 1rem;padding-left:1.25rem}.principle-box li{font-size:.9rem;color:var(--text-secondary);line-height:1.5;margin-bottom:.25rem}.principle-tradeoff{background:#ff9f431a;border-radius:6px;padding:.75rem 1rem;font-size:.85rem;color:var(--text-secondary)}.principle-tradeoff strong{color:var(--accent-orange)}.sussman-anomaly-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.anomaly-header{text-align:center;margin-bottom:1.5rem}.anomaly-header h4{font-size:1rem;font-weight:600;color:var(--accent-orange);margin:0 0 .35rem}.anomaly-header p{font-size:.9rem;color:var(--text-secondary);margin:0}.anomaly-demo{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:center;margin-bottom:1rem}.blocks-display{display:flex;flex-direction:column;align-items:center;gap:1rem}.blocks-svg{width:100%;max-width:320px;background:#0003;border-radius:8px}.blocks-svg .block{transition:all .3s ease}.goal-state{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;background:var(--bg-secondary);border-radius:6px}.goal-label{font-size:.8rem;color:var(--text-muted);font-weight:500}.goal-stack{display:flex;flex-direction:column;align-items:center;gap:2px}.goal-block{width:28px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:3px;font-size:10px;font-weight:700;color:#fff}.goal-block.a{background:#ef4444}.goal-block.b{background:#3b82f6}.goal-block.c{background:#22c55e}.goal-table{font-size:9px;color:var(--text-muted)}.step-info{background:var(--bg-secondary);border-radius:8px;padding:1rem}.step-info h5{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.step-info p{font-size:.9rem;color:var(--text-secondary);margin:0 0 .75rem;line-height:1.5}.step-issue{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#ef44441a;border-radius:4px;font-size:.85rem;color:#ef4444}.step-controls{display:flex;align-items:center;justify-content:center;gap:1rem;grid-column:1 / -1;padding-top:1rem;border-top:1px solid var(--border-color)}.step-btn{padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-tertiary);color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s ease}.step-btn:hover:not(:disabled){border-color:var(--accent-cyan);color:var(--accent-cyan)}.step-btn:disabled{opacity:.4;cursor:not-allowed}.step-indicators{display:flex;gap:.5rem}.step-dot{width:10px;height:10px;border-radius:50%;background:var(--bg-tertiary);border:1px solid var(--border-color);cursor:pointer;transition:all .2s ease}.step-dot:hover{border-color:var(--accent-cyan)}.step-dot.active{background:var(--accent-cyan);border-color:var(--accent-cyan)}.step-dot.success{background:var(--accent-lime);border-color:var(--accent-lime)}.anomaly-lesson{background:#d4ff0014;border:1px solid rgba(212,255,0,.2);border-radius:8px;padding:1rem;font-size:.9rem;color:var(--text-secondary);line-height:1.6}.anomaly-lesson strong{color:var(--accent-lime)}.implication-box{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin-top:1.5rem}.implication-box h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem}.implication-box p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0}.implication-box strong{color:var(--accent-orange)}.htn-concepts{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.5rem 0}.concept-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem}.concept-card h4{font-size:.95rem;font-weight:600;color:var(--accent-cyan);margin:0 0 .5rem}.concept-card p{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin:0}.concept-card code{background:var(--bg-tertiary);padding:.1rem .35rem;border-radius:3px;font-size:.8rem;color:var(--accent-cyan)}.htn-decomposition-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.htn-header{text-align:center;margin-bottom:1.5rem}.htn-header p{font-size:.9rem;color:var(--text-secondary);margin:0}.htn-tree{display:flex;flex-direction:column;gap:1rem}.htn-level{display:flex;justify-content:center;gap:1rem;position:relative}.htn-level.level-1{gap:2rem;align-items:center}.htn-level.level-2{padding-left:2rem}.htn-level.taxi-level,.htn-level.drive-level{border-left:2px solid rgba(0,229,255,.3);margin-left:8rem}.method-choice{display:flex;flex-direction:column;align-items:center;gap:.25rem}.choice-label{font-size:.75rem;color:var(--text-muted)}.method-or{font-size:.85rem;font-weight:600;color:var(--text-muted);padding:0 1rem}.htn-node{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border-radius:6px;cursor:pointer;transition:all .2s ease}.htn-node.compound{background:#00e5ff26;border:1px solid rgba(0,229,255,.3)}.htn-node.compound:hover{background:#00e5ff40}.htn-node.compound.expanded{background:#00e5ff4d;border-color:var(--accent-cyan)}.htn-node.primitive{background:#d4ff0026;border:1px solid rgba(212,255,0,.3);cursor:default}.node-icon{font-size:1rem}.node-label{font-size:.85rem;font-weight:500}.htn-node.compound .node-label{color:var(--accent-cyan)}.htn-node.primitive .node-label{color:var(--accent-lime)}.expand-icon{font-size:.9rem;font-weight:700;color:var(--accent-cyan);margin-left:auto}.htn-sequence{display:flex;align-items:center;gap:.5rem;padding:.5rem;flex-wrap:wrap}.seq-arrow{color:var(--text-muted);font-size:1rem}.htn-legend{display:flex;justify-content:center;gap:2rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-color)}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--text-secondary)}.legend-node{width:16px;height:16px;border-radius:4px}.compound-legend{background:#00e5ff33;border:1px solid var(--accent-cyan)}.primitive-legend{background:#d4ff0033;border:1px solid var(--accent-lime)}.htn-comparison-table{margin-top:1.5rem;overflow-x:auto}.htn-comparison-table table{width:100%;border-collapse:collapse;font-size:.9rem}.htn-comparison-table th,.htn-comparison-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-color)}.htn-comparison-table th{background:var(--bg-tertiary);color:var(--text-primary);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em}.htn-comparison-table td{color:var(--text-secondary)}.htn-comparison-table td:first-child{color:var(--text-primary);font-weight:500}.htn-comparison-table tbody tr:hover{background:var(--bg-primary)}.applications-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:1.5rem 0}.application-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem}.application-card.highlight{border-color:#d4ff004d;background:linear-gradient(135deg,var(--bg-primary) 0%,rgba(212,255,0,.05) 100%)}.app-icon{font-size:1.5rem;display:block;margin-bottom:.5rem}.application-card h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 .35rem}.application-card.highlight h4{color:var(--accent-lime)}.application-card p{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin:0}.llm-connection-box{background:linear-gradient(135deg,var(--bg-primary) 0%,rgba(212,255,0,.08) 100%);border:1px solid rgba(212,255,0,.3);border-radius:10px;padding:1.5rem;margin-top:1.5rem}.llm-connection-box h4{font-size:1rem;font-weight:600;color:var(--accent-lime);margin:0 0 .75rem}.llm-connection-box p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0 0 .75rem}.llm-connection-box p:last-child{margin-bottom:0}.llm-connection-box em{color:var(--text-primary);font-style:normal}@media (max-width: 900px){.plan-comparison,.anomaly-demo,.htn-concepts,.applications-grid{grid-template-columns:1fr}.components-grid{grid-template-columns:repeat(2,1fr)}.htn-level.level-1{flex-direction:column;gap:.5rem}.htn-level.taxi-level,.htn-level.drive-level{margin-left:1rem}.htn-sequence{flex-direction:column;align-items:flex-start;gap:.25rem}.seq-arrow{transform:rotate(90deg);margin:.25rem 0 .25rem 2rem}.step-controls{flex-direction:column;gap:.75rem}}@media (max-width: 768px){.advanced-planning-page .content-section{padding:1.5rem}.advanced-planning-page .content-section h2{font-size:1.2rem}.components-grid{grid-template-columns:1fr}.threat-controls{flex-direction:column;align-items:stretch}.htn-legend{flex-direction:column;align-items:center;gap:.5rem}}.motion-planning-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem;max-width:1000px}.motion-planning-page .content-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem}.motion-planning-page .content-section h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.motion-planning-page .content-section h3{font-size:1.15rem;font-weight:500;color:var(--accent-cyan);margin:2rem 0 1rem}.motion-planning-page .content-section>p{font-size:.95rem;line-height:1.75;color:var(--text-secondary);margin:0 0 1.5rem}.motion-planning-page .content-section>p strong{color:var(--text-primary)}.motion-planning-page .content-section>p em{color:var(--accent-cyan);font-style:normal}.motion-planning-page .intro-section{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(0,229,255,.05) 100%)}.motion-planning-page .hierarchy-visual{display:grid;grid-template-columns:1fr 300px;gap:2rem;align-items:center;margin:1.5rem 0}.motion-planning-page .hierarchy-pyramid{display:flex;justify-content:center}.motion-planning-page .pyramid-svg{width:100%;max-width:400px}.motion-planning-page .pyramid-level{cursor:pointer;transition:all .2s ease;stroke-width:2}.motion-planning-page .pyramid-level.task{fill:#00e5ff1a;stroke:var(--accent-cyan)}.motion-planning-page .pyramid-level.motion{fill:#d4ff001a;stroke:var(--accent-lime)}.motion-planning-page .pyramid-level.control{fill:#ff9f431a;stroke:var(--accent-orange)}.motion-planning-page .pyramid-level:hover,.motion-planning-page .pyramid-level.selected{stroke-width:3}.motion-planning-page .pyramid-level.task:hover,.motion-planning-page .pyramid-level.task.selected{fill:#00e5ff33}.motion-planning-page .pyramid-level.motion:hover,.motion-planning-page .pyramid-level.motion.selected{fill:#d4ff0033}.motion-planning-page .pyramid-level.control:hover,.motion-planning-page .pyramid-level.control.selected{fill:#ff9f4333}.motion-planning-page .pyramid-svg .level-label{font-size:14px;font-weight:600;fill:var(--text-primary);pointer-events:none}.motion-planning-page .pyramid-svg .time-label{font-size:10px;fill:var(--text-muted)}.motion-planning-page .pyramid-svg .time-arrow{stroke:var(--text-muted);stroke-width:1.5}.motion-planning-page .pyramid-svg .abstraction-label{font-size:10px;fill:var(--text-muted)}.motion-planning-page .hierarchy-details{min-height:200px}.motion-planning-page .level-detail{background:var(--bg-primary);border-radius:8px;padding:1.25rem;border-left:4px solid}.motion-planning-page .level-detail.task{border-color:var(--accent-cyan)}.motion-planning-page .level-detail.motion{border-color:var(--accent-lime)}.motion-planning-page .level-detail.control{border-color:var(--accent-orange)}.motion-planning-page .level-detail h4{margin:0 0 .25rem;font-size:1.1rem;color:var(--text-primary)}.motion-planning-page .level-subtitle{display:block;font-size:.85rem;color:var(--text-muted);margin-bottom:.75rem}.motion-planning-page .level-detail p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0 0 1rem}.motion-planning-page .level-examples{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.75rem}.motion-planning-page .examples-label{font-size:.8rem;color:var(--text-muted)}.motion-planning-page .example-tag{font-size:.75rem;padding:.25rem .5rem;background:var(--bg-tertiary);border-radius:4px;color:var(--text-secondary)}.motion-planning-page .level-timescale{font-size:.85rem}.motion-planning-page .timescale-label{color:var(--text-muted)}.motion-planning-page .timescale-value{color:var(--accent-orange);font-weight:500}.motion-planning-page .level-hint{background:var(--bg-primary);border-radius:8px;padding:1.25rem;text-align:center}.motion-planning-page .level-hint p{font-size:.9rem;color:var(--text-muted);margin:0 0 .5rem}.motion-planning-page .hint-note{font-size:.85rem;color:var(--text-muted);font-style:italic}.motion-planning-page .hierarchy-summary{background:var(--bg-primary);border-radius:8px;padding:1.25rem;margin-top:1.5rem}.motion-planning-page .hierarchy-summary p{font-size:.95rem;color:var(--text-secondary);margin:0;line-height:1.6}.motion-planning-page .cspace-visual{margin:1.5rem 0}.motion-planning-page .cspace-3d-layout{display:grid;grid-template-columns:240px 1fr;gap:1.5rem;margin-bottom:1.5rem}.motion-planning-page .cspace-panel{background:var(--bg-primary);border-radius:10px;padding:1rem;display:flex;flex-direction:column;align-items:center}.motion-planning-page .cspace-panel h4{font-size:.95rem;font-weight:600;margin:0 0 .75rem;text-align:center}.motion-planning-page .workspace-panel h4{color:var(--accent-cyan)}.motion-planning-page .cspace-3d-panel h4{color:var(--accent-lime)}.motion-planning-page .panel-desc{font-size:.8rem;color:var(--text-muted);margin:.5rem 0 0;text-align:center}.motion-planning-page .panel-desc-3d{font-size:.8rem;color:var(--text-muted);margin:.75rem 0 0;text-align:center}.motion-planning-page .workspace-svg-3d{width:100%;max-width:200px;background:#0003;border-radius:8px}.motion-planning-page .workspace-config{margin-top:.5rem;font-size:.8rem;color:var(--accent-cyan);font-family:monospace}.motion-planning-page .plotly-container{width:100%;height:350px;background:#0000004d;border-radius:10px;overflow:hidden}.motion-planning-page .plotly-container .js-plotly-plot{width:100%!important;height:100%!important}.motion-planning-page .cspace-3d-panel{min-width:0}.motion-planning-page .cspace-controls{background:var(--bg-primary);border-radius:8px;padding:1rem 1.5rem;margin-bottom:1rem}.motion-planning-page .cspace-sliders{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:700px;margin:0 auto}.motion-planning-page .slider-group label{display:flex;flex-direction:column;gap:.5rem}.motion-planning-page .slider-label{font-size:.85rem;color:var(--text-secondary);text-align:center}.motion-planning-page .slider-label strong{color:var(--accent-cyan);font-size:1rem}.motion-planning-page .slider-group input[type=range]{width:100%;accent-color:var(--accent-cyan);height:6px}.motion-planning-page .obstacle-outline{fill:none;stroke:#ef4444;stroke-width:1;stroke-dasharray:4 2;opacity:.5}.motion-planning-page .axis-tick{font-size:8px;fill:var(--text-muted)}.motion-planning-page .cspace-explanation{background:var(--bg-primary);border-radius:8px;padding:1rem 1.25rem}.motion-planning-page .cspace-explanation p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0 0 .75rem}.motion-planning-page .cspace-explanation p:last-child{margin-bottom:0}.motion-planning-page .cspace-explanation strong{color:var(--text-primary)}.motion-planning-page .cspace-explanation em{color:var(--accent-lime);font-style:normal}.motion-planning-page .cspace-benefit{padding:.75rem;background:#d4ff001a;border-radius:6px;margin:0!important}.motion-planning-page .grid-line{stroke:var(--border-color);stroke-width:.5;opacity:.3}.motion-planning-page .obstacle{fill:#4a1a1a;stroke:#ef4444;stroke-width:2}.motion-planning-page .obstacle-label{fill:#ef4444;font-size:10px;font-weight:500}.motion-planning-page .robot{transition:all .2s ease}.motion-planning-page .robot.colliding .robot-base,.motion-planning-page .robot.colliding .robot-end{fill:#ef4444}.motion-planning-page .robot.colliding .robot-arm{stroke:#ef4444}.motion-planning-page .robot-base{fill:var(--accent-cyan)}.motion-planning-page .robot-arm{stroke:var(--accent-cyan);stroke-width:3}.motion-planning-page .robot-end{fill:var(--accent-cyan)}.motion-planning-page .goal-marker{fill:#d4ff004d;stroke:var(--accent-lime);stroke-width:2}.motion-planning-page .goal-label{fill:var(--accent-lime);font-size:12px;font-weight:600}.motion-planning-page .c-obstacle{fill:#ef444433;stroke:#ef4444;stroke-width:2}.motion-planning-page .c-obstacle-label{fill:#ef4444;font-size:11px}.motion-planning-page .free-label{fill:var(--text-muted);font-size:10px}.motion-planning-page .config-point{fill:var(--accent-cyan);stroke:#fff;stroke-width:2;transition:all .2s ease}.motion-planning-page .config-point.in-obstacle{fill:#ef4444}.motion-planning-page .c-goal{fill:#d4ff004d;stroke:var(--accent-lime);stroke-width:2}.motion-planning-page .c-goal-label{fill:var(--accent-lime);font-size:10px;font-weight:600}.motion-planning-page .axis-label{fill:var(--text-muted);font-size:10px}.motion-planning-page .collision-warning{padding:.75rem 1rem;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ef4444;font-size:.85rem;font-weight:500;text-align:center;margin-top:1rem}.motion-planning-page .cspace-definition{background:var(--bg-primary);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.motion-planning-page .cspace-definition h4{font-size:1rem;color:var(--accent-cyan);margin:0 0 .75rem}.motion-planning-page .cspace-definition p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0 0 1rem}.motion-planning-page .cspace-examples-list{display:flex;flex-direction:column;gap:.5rem}.motion-planning-page .cspace-ex{display:grid;grid-template-columns:1fr auto;gap:.25rem 1rem;padding:.6rem .75rem;background:#0003;border-radius:4px;font-size:.85rem}.motion-planning-page .cspace-ex .robot-type{color:var(--text-secondary)}.motion-planning-page .cspace-ex .cspace-dim{color:var(--accent-cyan);font-family:Times New Roman,serif;font-style:italic;text-align:right}.motion-planning-page .cspace-ex .cspace-explain{grid-column:1 / -1;font-size:.8rem;color:var(--text-muted);font-style:italic}.motion-planning-page .cspace-insight{background:#00e5ff1a;border:1px solid rgba(0,229,255,.3);border-radius:8px;padding:1.25rem;margin-top:1.5rem}.motion-planning-page .cspace-insight h4{font-size:.95rem;color:var(--accent-cyan);margin:0 0 .5rem}.motion-planning-page .cspace-insight p{font-size:.9rem;color:var(--text-secondary);margin:0;line-height:1.6}.motion-planning-page .cell-decomp-visual{margin:1.5rem 0}.motion-planning-page .decomp-side-by-side{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.motion-planning-page .decomp-panel{background:var(--bg-primary);border-radius:10px;padding:1rem}.motion-planning-page .decomp-panel h4{font-size:.95rem;font-weight:600;color:var(--accent-cyan);margin:0 0 .75rem;text-align:center}.motion-planning-page .decomp-svg{width:100%;background:#0003;border-radius:8px}.motion-planning-page .decomp-line{stroke:var(--accent-cyan);stroke-width:1;stroke-dasharray:4 2;opacity:.6}.motion-planning-page .grid-line-light{stroke:var(--border-color);stroke-width:.5;opacity:.4}.motion-planning-page .cell-label{fill:var(--text-muted);font-size:11px}.motion-planning-page .occupied-cell{fill:#ef44444d;stroke:#ef4444;stroke-width:1}.motion-planning-page .path-cell{fill:#00e5ff33;stroke:var(--accent-cyan);stroke-width:1}.motion-planning-page .start-marker{fill:#00e5ff4d;stroke:var(--accent-cyan);stroke-width:2}.motion-planning-page .marker-label{fill:#fff;font-size:10px;font-weight:600}.motion-planning-page .decomp-path{stroke:var(--accent-lime);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.motion-planning-page .waypoint{fill:var(--accent-lime);stroke:#fff;stroke-width:1}.motion-planning-page .decomp-desc{margin-top:1rem}.motion-planning-page .decomp-desc p{font-size:.85rem;color:var(--text-secondary);margin:0 0 .75rem;line-height:1.5}.motion-planning-page .decomp-desc .pros-cons{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem}.motion-planning-page .decomp-desc .pro{color:var(--accent-lime)}.motion-planning-page .decomp-desc .con{color:var(--text-muted)}.motion-planning-page .pros,.motion-planning-page .cons{font-size:.85rem}.motion-planning-page .pros .label{color:var(--accent-lime);font-weight:500;margin-right:.5rem}.motion-planning-page .cons .label{color:var(--accent-orange);font-weight:500;margin-right:.5rem}.motion-planning-page .pros span:not(.label),.motion-planning-page .cons span:not(.label){color:var(--text-secondary)}.motion-planning-page .combinatorial-summary{background:var(--bg-primary);border-radius:10px;padding:1.5rem;margin-top:2rem}.motion-planning-page .combinatorial-summary h4{font-size:1rem;color:var(--text-primary);margin:0 0 1rem}.motion-planning-page .combinatorial-summary ul{margin:0 0 1rem;padding-left:1.25rem}.motion-planning-page .combinatorial-summary li{font-size:.9rem;color:var(--text-secondary);margin-bottom:.5rem;line-height:1.5}.motion-planning-page .combinatorial-summary li strong{color:var(--accent-cyan)}.motion-planning-page .summary-note{font-size:.85rem;color:var(--text-muted);font-style:italic;margin:0;padding-top:.75rem;border-top:1px solid var(--border-color)}.motion-planning-page .visibility-graph-visual{margin:1.5rem 0}.motion-planning-page .vis-phase-indicator{display:flex;justify-content:center;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.85rem}.motion-planning-page .phase-label{padding:.4rem .75rem;border-radius:4px;background:var(--bg-tertiary);color:var(--text-muted);transition:all .3s ease}.motion-planning-page .phase-label.active{background:var(--accent-cyan);color:#000;font-weight:600}.motion-planning-page .phase-arrow{color:var(--text-muted);font-size:.8rem}.motion-planning-page .vis-svg{width:100%;max-width:400px;background:#0003;border-radius:8px;display:block;margin:0 auto}.motion-planning-page .vis-edge{stroke:var(--accent-cyan);stroke-width:1;opacity:.3}.motion-planning-page .vis-edge.on-path{stroke:var(--accent-lime);stroke-width:3;opacity:1}.motion-planning-page .vis-vertex{fill:var(--accent-cyan)}.motion-planning-page .vis-explanation{background:var(--bg-primary);border-radius:8px;padding:1.25rem;margin-top:1rem}.motion-planning-page .vis-explanation h4{font-size:1rem;color:var(--text-primary);margin:0 0 .5rem}.motion-planning-page .vis-explanation p{font-size:.9rem;color:var(--text-secondary);margin:0 0 1rem;line-height:1.6}.motion-planning-page .vis-note{font-size:.85rem;color:var(--text-muted);margin:0}.motion-planning-page .vis-note strong{color:var(--accent-orange)}.motion-planning-page .sampling-key-idea{background:#d4ff001a;border:1px solid rgba(212,255,0,.3);border-radius:8px;padding:1.25rem;margin:1.5rem 0}.motion-planning-page .sampling-key-idea h4{font-size:.95rem;color:var(--accent-lime);margin:0 0 .5rem}.motion-planning-page .sampling-key-idea p{font-size:.9rem;color:var(--text-secondary);margin:0;line-height:1.6}.motion-planning-page .prm-visual{background:var(--bg-primary);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.motion-planning-page .prm-header h4{font-size:1.1rem;color:var(--text-primary);margin:0 0 .5rem}.motion-planning-page .prm-header p{font-size:.9rem;color:var(--text-secondary);margin:0 0 1.5rem}.motion-planning-page .prm-controls{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap;justify-content:center}.motion-planning-page .prm-btn{padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-tertiary);color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s ease}.motion-planning-page .prm-btn:hover:not(:disabled){border-color:var(--text-muted)}.motion-planning-page .prm-btn:disabled{opacity:.4;cursor:not-allowed}.motion-planning-page .prm-btn.sample{border-color:var(--accent-cyan);color:var(--accent-cyan)}.motion-planning-page .prm-btn.connect{border-color:var(--accent-lime);color:var(--accent-lime)}.motion-planning-page .prm-btn.query{border-color:var(--accent-orange);color:var(--accent-orange)}.motion-planning-page .prm-btn.reset{background:transparent}.motion-planning-page .prm-svg{width:100%;max-width:400px;background:#0003;border-radius:8px;display:block;margin:0 auto}.motion-planning-page .prm-edge{stroke:var(--text-muted);stroke-width:1;opacity:.3}.motion-planning-page .prm-edge.on-path{stroke:var(--accent-lime);stroke-width:3;opacity:1}.motion-planning-page .prm-node{fill:var(--accent-cyan);opacity:.7}.motion-planning-page .prm-node.on-path{fill:var(--accent-lime);opacity:1;r:7}.motion-planning-page .prm-phases{display:flex;justify-content:center;gap:2rem;margin-top:1rem}.motion-planning-page .phase{display:flex;align-items:center;gap:.5rem;opacity:.4}.motion-planning-page .phase.active,.motion-planning-page .phase.done{opacity:1}.motion-planning-page .phase-num{width:24px;height:24px;border-radius:50%;background:var(--bg-tertiary);border:2px solid var(--border-color);display:flex;align-items:center;justify-content:center;font-size:.8rem;color:var(--text-muted)}.motion-planning-page .phase.active .phase-num{border-color:var(--accent-cyan);color:var(--accent-cyan)}.motion-planning-page .phase.done .phase-num{background:var(--accent-lime);border-color:var(--accent-lime);color:#000}.motion-planning-page .phase-name{font-size:.85rem;color:var(--text-secondary)}.motion-planning-page .prm-step-explanation{background:var(--bg-primary);border-radius:8px;padding:1rem;margin-top:1rem;min-height:60px}.motion-planning-page .prm-step-explanation p{margin:0;font-size:.9rem;color:var(--text-secondary);line-height:1.5}.motion-planning-page .prm-step-explanation strong{color:var(--accent-cyan)}.motion-planning-page .prm-details{margin-top:1.5rem}.motion-planning-page .prm-details h4{font-size:1rem;color:var(--text-primary);margin:0 0 1rem}.motion-planning-page .property-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.motion-planning-page .property{background:var(--bg-tertiary);border-radius:6px;padding:1rem}.motion-planning-page .property-name{display:block;font-size:.9rem;font-weight:500;color:var(--accent-cyan);margin-bottom:.25rem}.motion-planning-page .property p{font-size:.85rem;color:var(--text-secondary);margin:0}.motion-planning-page .rrt-visual{background:var(--bg-primary);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.motion-planning-page .rrt-header h4{font-size:1.1rem;color:var(--text-primary);margin:0 0 .5rem}.motion-planning-page .rrt-header p{font-size:.9rem;color:var(--text-secondary);margin:0 0 1rem}.motion-planning-page .rrt-variant-selector{display:flex;justify-content:center;gap:.5rem;margin-bottom:1rem}.motion-planning-page .variant-btn{padding:.5rem 1.5rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-tertiary);color:var(--text-secondary);font-size:.9rem;cursor:pointer;transition:all .2s ease}.motion-planning-page .variant-btn:hover{border-color:var(--text-muted)}.motion-planning-page .variant-btn.active{background:var(--accent-lime);border-color:var(--accent-lime);color:#000}.motion-planning-page .rrt-controls{display:flex;gap:.5rem;justify-content:center;align-items:center;margin-bottom:1rem}.motion-planning-page .rrt-btn{padding:.5rem 1.25rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-tertiary);color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s ease}.motion-planning-page .rrt-btn:disabled{opacity:.4;cursor:not-allowed}.motion-planning-page .rrt-btn.run{background:var(--accent-lime);border-color:var(--accent-lime);color:#000}.motion-planning-page .node-count{font-size:.85rem;color:var(--text-muted);margin-left:1rem}.motion-planning-page .rrt-svg{width:100%;max-width:400px;background:#0003;border-radius:8px;display:block;margin:0 auto}.motion-planning-page .rrt-edge{stroke:var(--accent-cyan);stroke-width:1;opacity:.5}.motion-planning-page .rrt-edge.on-path{stroke:var(--accent-lime);stroke-width:3;opacity:1}.motion-planning-page .rrt-node{fill:var(--accent-cyan);opacity:.6}.motion-planning-page .rrt-node.on-path{fill:var(--accent-lime);opacity:1}.motion-planning-page .goal-region{fill:#d4ff001a;stroke:var(--accent-lime);stroke-width:1;stroke-dasharray:4 2}.motion-planning-page .rrt-step-explanation{background:var(--bg-primary);border-radius:8px;padding:1rem;margin-top:1rem;min-height:50px}.motion-planning-page .rrt-step-explanation p{margin:0;font-size:.9rem;color:var(--text-secondary);line-height:1.5}.motion-planning-page .rrt-step-explanation strong{color:var(--accent-cyan)}.motion-planning-page .rrt-success{text-align:center;padding:.75rem;background:#d4ff0026;border:1px solid rgba(212,255,0,.3);border-radius:6px;color:var(--accent-lime);font-weight:500;margin-top:1rem}.motion-planning-page .rrt-comparison{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem}.motion-planning-page .compare-item{padding:1rem;background:var(--bg-tertiary);border-radius:6px;border:2px solid transparent}.motion-planning-page .compare-item.active{border-color:var(--accent-lime)}.motion-planning-page .compare-item h5{font-size:.95rem;color:var(--text-primary);margin:0 0 .5rem}.motion-planning-page .compare-item ul{margin:0;padding-left:1rem}.motion-planning-page .compare-item li{font-size:.8rem;color:var(--text-secondary);margin-bottom:.25rem}.motion-planning-page .compare-item li em{color:var(--accent-cyan);font-style:normal}.motion-planning-page .rrt-details{margin-top:1.5rem}.motion-planning-page .rrt-details h4{font-size:1rem;color:var(--text-primary);margin:0 0 1rem}.motion-planning-page .comparison-table{width:100%;border-collapse:collapse;font-size:.85rem}.motion-planning-page .comparison-table th,.motion-planning-page .comparison-table td{padding:.75rem;text-align:left;border-bottom:1px solid var(--border-color)}.motion-planning-page .comparison-table th{background:var(--bg-tertiary);color:var(--text-primary);font-weight:600}.motion-planning-page .comparison-table td{color:var(--text-secondary)}.motion-planning-page .comparison-table td:first-child{color:var(--text-primary)}.motion-planning-page .sampling-comparison{margin-top:2rem}.motion-planning-page .sampling-comparison h4{font-size:1rem;color:var(--text-primary);margin:0 0 1rem}.motion-planning-page .comparison-cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.motion-planning-page .comparison-card{padding:1.25rem;background:var(--bg-tertiary);border-radius:8px;border:2px solid var(--border-color)}.motion-planning-page .comparison-card.prm{border-color:#00e5ff4d}.motion-planning-page .comparison-card.rrt{border-color:#d4ff004d}.motion-planning-page .comparison-card h5{font-size:.95rem;margin:0 0 .75rem}.motion-planning-page .comparison-card.prm h5{color:var(--accent-cyan)}.motion-planning-page .comparison-card.rrt h5{color:var(--accent-lime)}.motion-planning-page .comparison-card ul{margin:0;padding-left:1rem}.motion-planning-page .comparison-card li{font-size:.85rem;color:var(--text-secondary);margin-bottom:.35rem}.motion-planning-page .kinodynamic-visual{margin:1.5rem 0}.motion-planning-page .kino-header p{font-size:.95rem;color:var(--text-secondary);line-height:1.6;margin:0 0 1.5rem}.motion-planning-page .constraint-selector{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:center;margin-bottom:1rem}.motion-planning-page .constraint-selector span{font-size:.85rem;color:var(--text-muted)}.motion-planning-page .constraint-btn{padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-tertiary);color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s ease}.motion-planning-page .constraint-btn:hover{border-color:var(--text-muted)}.motion-planning-page .constraint-btn.active{background:var(--accent-lime);border-color:var(--accent-lime);color:#000}.motion-planning-page .kino-svg{width:100%;max-width:400px;background:var(--bg-primary);border-radius:8px;display:block;margin:0 auto}.motion-planning-page .path.geometric{stroke:var(--accent-cyan);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.motion-planning-page .path.velocity{stroke:var(--accent-lime);stroke-width:3;stroke-linecap:round}.motion-planning-page .path.dynamics{stroke:var(--accent-orange);stroke-width:3;stroke-linecap:round}.motion-planning-page .kino-explanations{margin-top:1rem}.motion-planning-page .kino-explain{background:var(--bg-primary);border-radius:8px;padding:1rem;border-left:4px solid var(--accent-cyan)}.motion-planning-page .kino-explain.velocity{border-color:var(--accent-lime)}.motion-planning-page .kino-explain.dynamics{border-color:var(--accent-orange)}.motion-planning-page .kino-explain h5{font-size:.95rem;color:var(--text-primary);margin:0 0 .5rem}.motion-planning-page .kino-explain p{font-size:.85rem;color:var(--text-secondary);margin:0}.motion-planning-page .kino-examples{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.5rem}.motion-planning-page .kino-example{background:var(--bg-primary);border-radius:8px;padding:1rem;text-align:center}.motion-planning-page .kino-example .example-icon{font-size:1.5rem;display:block;margin-bottom:.5rem}.motion-planning-page .kino-example h5{font-size:.9rem;color:var(--text-primary);margin:0 0 .35rem}.motion-planning-page .kino-example p{font-size:.8rem;color:var(--text-muted);margin:0}.motion-planning-page .kinorrt-visual{background:var(--bg-secondary);border-radius:12px;padding:1.5rem;margin-top:1.5rem}.motion-planning-page .kinorrt-visual h4{font-size:1.05rem;color:var(--accent-lime);margin:0 0 .5rem}.motion-planning-page .kinorrt-intro{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin-bottom:1rem}.motion-planning-page .kinorrt-controls{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.motion-planning-page .kinorrt-btn{padding:.5rem 1rem;border-radius:6px;border:none;font-size:.85rem;cursor:pointer;transition:all .2s ease}.motion-planning-page .kinorrt-btn.start{background:var(--accent-lime);color:#000;font-weight:600}.motion-planning-page .kinorrt-btn.start:hover:not(:disabled){background:#e8ff4d}.motion-planning-page .kinorrt-btn.start:disabled{opacity:.5;cursor:not-allowed}.motion-planning-page .kinorrt-btn.reset{background:var(--bg-primary);color:var(--text-secondary);border:1px solid var(--border-color)}.motion-planning-page .kinorrt-btn.reset:hover:not(:disabled){border-color:var(--text-muted)}.motion-planning-page .kinorrt-btn.reset:disabled{opacity:.4;cursor:not-allowed}.motion-planning-page .kinorrt-btn.compare{background:transparent;color:var(--accent-cyan);border:1px solid var(--accent-cyan)}.motion-planning-page .kinorrt-btn.compare:hover{background:#00e5ff1a}.motion-planning-page .kinorrt-btn.compare.active{background:var(--accent-cyan);color:#000}.motion-planning-page .kinorrt-display{display:flex;gap:1rem}.motion-planning-page .kinorrt-display.side-by-side{display:grid;grid-template-columns:1fr 1fr}.motion-planning-page .kinorrt-panel{background:var(--bg-primary);border-radius:10px;padding:1rem;flex:1}.motion-planning-page .kinorrt-panel.comparison{border:1px dashed rgba(255,159,67,.4)}.motion-planning-page .panel-label{font-size:.8rem;font-weight:600;color:var(--accent-lime);margin-bottom:.5rem;text-align:center}.motion-planning-page .kinorrt-panel.comparison .panel-label{color:var(--accent-orange)}.motion-planning-page .kinorrt-svg{width:100%;height:auto;background:#0003;border-radius:8px}.motion-planning-page .kinorrt-obstacle{fill:#ef444466;stroke:#ef4444cc;stroke-width:1.5}.motion-planning-page .kinorrt-goal{fill:#d4ff0033;stroke:var(--accent-lime);stroke-width:2;stroke-dasharray:5 3}.motion-planning-page .goal-label,.motion-planning-page .start-label{font-size:11px;fill:var(--text-muted);text-anchor:middle}.motion-planning-page .kinorrt-edge{stroke:var(--accent-cyan);stroke-width:1.5;opacity:.7}.motion-planning-page .kinorrt-edge.curved{stroke:var(--accent-lime);opacity:.9}.motion-planning-page .kinorrt-car{fill:var(--accent-cyan)}.motion-planning-page .kinorrt-car-front{fill:var(--accent-lime)}.motion-planning-page .kinorrt-start{fill:var(--accent-cyan)}.motion-planning-page .rrt-edge{stroke:var(--accent-orange);stroke-width:1.5;opacity:.7}.motion-planning-page .panel-note{font-size:.75rem;color:var(--text-muted);text-align:center;margin-top:.5rem;font-style:italic}.motion-planning-page .panel-note.problem{color:var(--accent-orange)}.motion-planning-page .kinorrt-status{background:var(--bg-primary);border-radius:8px;padding:.75rem 1rem;margin-top:1rem;font-size:.85rem;color:var(--text-secondary)}.motion-planning-page .kinorrt-status.exploring{border-left:3px solid var(--accent-cyan)}.motion-planning-page .kinorrt-status.goal-reached{border-left:3px solid var(--accent-lime);color:var(--accent-lime)}.motion-planning-page .kinorrt-status.max-iterations{border-left:3px solid var(--accent-orange)}.motion-planning-page .kinorrt-key-difference{margin-top:1.25rem}.motion-planning-page .kinorrt-key-difference h5{font-size:.9rem;color:var(--text-primary);margin:0 0 .75rem}.motion-planning-page .difference-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.motion-planning-page .diff-item{background:var(--bg-primary);border-radius:8px;padding:.75rem 1rem}.motion-planning-page .diff-item .diff-label{font-size:.8rem;font-weight:600;color:var(--accent-orange);display:block;margin-bottom:.25rem}.motion-planning-page .diff-item.kino .diff-label{color:var(--accent-lime)}.motion-planning-page .diff-item p{font-size:.8rem;color:var(--text-secondary);margin:0;line-height:1.4}@media (max-width: 900px){.motion-planning-page .kinorrt-display.side-by-side,.motion-planning-page .difference-grid{grid-template-columns:1fr}}.motion-planning-page .kino-concepts{margin-top:1.5rem}.motion-planning-page .kino-concepts h4{font-size:1rem;color:var(--text-primary);margin:0 0 1rem}.motion-planning-page .concept-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.motion-planning-page .concept{background:var(--bg-primary);border-radius:8px;padding:1rem}.motion-planning-page .concept h5{font-size:.9rem;color:var(--accent-cyan);margin:0 0 .5rem}.motion-planning-page .concept p{font-size:.85rem;color:var(--text-secondary);margin:0;line-height:1.5}.motion-planning-page .concept p em{color:var(--accent-orange);font-style:normal}.motion-planning-page .kino-methods{margin-top:1.5rem}.motion-planning-page .kino-methods h4{font-size:1rem;color:var(--text-primary);margin:0 0 .75rem}.motion-planning-page .kino-methods ul{margin:0;padding-left:0;list-style:none}.motion-planning-page .kino-methods li{font-size:.9rem;color:var(--text-secondary);margin-bottom:.75rem;padding-left:1.5rem;position:relative;line-height:1.5}.motion-planning-page .kino-methods li:before{content:"→";position:absolute;left:0;color:var(--accent-cyan)}.motion-planning-page .kino-methods li strong{color:var(--accent-lime)}.motion-planning-page .tamp-visual{margin:1.5rem 0}.motion-planning-page .tamp-flow{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1.5rem}.motion-planning-page .tamp-box{width:100%;max-width:400px;padding:1rem 1.25rem;border-radius:10px;transition:all .3s ease;opacity:.6}.motion-planning-page .tamp-box.active{opacity:1;transform:scale(1.02)}.motion-planning-page .task-box{background:#00e5ff1a;border:2px solid rgba(0,229,255,.3)}.motion-planning-page .task-box.active{border-color:var(--accent-cyan);box-shadow:0 0 20px #00e5ff33}.motion-planning-page .motion-box{background:#d4ff001a;border:2px solid rgba(212,255,0,.3)}.motion-planning-page .motion-box.active{border-color:var(--accent-lime);box-shadow:0 0 20px #d4ff0033}.motion-planning-page .box-header{font-size:.9rem;font-weight:600;margin-bottom:.5rem}.motion-planning-page .task-box .box-header{color:var(--accent-cyan)}.motion-planning-page .motion-box .box-header{color:var(--accent-lime)}.motion-planning-page .box-label{font-size:.75rem;color:var(--text-muted);margin-bottom:.25rem}.motion-planning-page .box-content code{display:block;font-size:.85rem;color:var(--text-secondary);background:#0003;padding:.5rem;border-radius:4px}.motion-planning-page .motion-result{font-size:.85rem;color:var(--text-secondary);padding:.5rem;background:#0003;border-radius:4px}.motion-planning-page .motion-result.checking{color:var(--accent-lime)}.motion-planning-page .motion-result.fail{color:#ef4444;background:#ef44441a}.motion-planning-page .tamp-arrow{display:flex;flex-direction:column;align-items:center;gap:.25rem;opacity:.4;transition:all .3s ease}.motion-planning-page .tamp-arrow.active{opacity:1}.motion-planning-page .tamp-arrow.down span:first-child{font-size:1.5rem;color:var(--accent-cyan)}.motion-planning-page .tamp-arrow.feedback{height:0;overflow:hidden}.motion-planning-page .tamp-arrow.feedback.active{height:auto;padding:.75rem;background:#ef44441a;border-radius:8px;margin:.5rem 0}.motion-planning-page .tamp-arrow.feedback span:first-child{font-size:1.5rem;color:#ef4444}.motion-planning-page .arrow-label{font-size:.75rem;color:var(--text-muted)}.motion-planning-page .tamp-step-indicator{display:flex;justify-content:center;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.motion-planning-page .tamp-step-indicator span{font-size:.8rem;color:var(--text-muted);padding:.25rem .5rem;border-radius:4px;transition:all .3s ease}.motion-planning-page .tamp-step-indicator span.current{background:var(--accent-cyan);color:#000;font-weight:600}.motion-planning-page .tamp-step-indicator span.done{color:var(--text-secondary)}.motion-planning-page .tamp-insight{background:var(--bg-primary);border-radius:8px;padding:1rem;font-size:.9rem;color:var(--text-secondary);line-height:1.5}.motion-planning-page .tamp-insight strong{color:var(--accent-cyan)}.motion-planning-page .tamp-steps{display:flex;flex-direction:column;gap:.75rem}.motion-planning-page .tamp-step{display:flex;gap:1rem;align-items:flex-start;padding:.75rem;background:var(--bg-tertiary);border-radius:6px}.motion-planning-page .tamp-step.problem{background:#ef44441a;border:1px solid rgba(239,68,68,.2)}.motion-planning-page .step-num{width:24px;height:24px;border-radius:50%;background:var(--accent-cyan);color:#000;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600;flex-shrink:0}.motion-planning-page .step-content{font-size:.85rem;color:var(--text-secondary);line-height:1.5}.motion-planning-page .step-content strong{color:var(--text-primary)}.motion-planning-page .step-issue{display:block;color:#ef4444;font-size:.85rem;margin-top:.25rem}.motion-planning-page .tamp-approaches h5{font-size:1rem;color:var(--text-primary);margin:0 0 1rem}.motion-planning-page .approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.motion-planning-page .approach{background:var(--bg-primary);border-radius:8px;padding:1rem}.motion-planning-page .approach-name{display:block;font-size:.9rem;font-weight:500;color:var(--accent-cyan);margin-bottom:.35rem}.motion-planning-page .approach p{font-size:.8rem;color:var(--text-muted);margin:0}.motion-planning-page .tamp-challenges{background:#ff9f431a;border:1px solid rgba(255,159,67,.3);border-radius:8px;padding:1.25rem;margin-top:1.5rem}.motion-planning-page .tamp-challenges h4{font-size:.95rem;color:var(--accent-orange);margin:0 0 .75rem}.motion-planning-page .tamp-challenges ul{margin:0;padding-left:1rem}.motion-planning-page .tamp-challenges li{font-size:.85rem;color:var(--text-secondary);margin-bottom:.5rem;line-height:1.5}.motion-planning-page .tamp-challenges li strong{color:var(--text-primary)}.motion-planning-page .tamp-modern{background:var(--bg-primary);border-radius:8px;padding:1.25rem;margin-top:1rem}.motion-planning-page .tamp-modern h4{font-size:.95rem;color:var(--accent-lime);margin:0 0 .5rem}.motion-planning-page .tamp-modern p{font-size:.9rem;color:var(--text-secondary);margin:0;line-height:1.6}@media (max-width: 900px){.motion-planning-page .hierarchy-visual,.motion-planning-page .cspace-3d-layout{grid-template-columns:1fr}.motion-planning-page .cspace-3d-layout .workspace-panel{max-width:300px;margin:0 auto}.motion-planning-page .cspace-sliders{grid-template-columns:1fr;gap:1rem}.motion-planning-page .property-grid,.motion-planning-page .rrt-comparison,.motion-planning-page .comparison-cards,.motion-planning-page .concept-grid,.motion-planning-page .kino-examples,.motion-planning-page .approach-grid{grid-template-columns:1fr}.motion-planning-page .tamp-step-indicator{gap:.5rem}.motion-planning-page .tamp-step-indicator span{font-size:.7rem}}@media (max-width: 768px){.motion-planning-page .content-section{padding:1.5rem}.motion-planning-page .content-section h2{font-size:1.2rem}.motion-planning-page .decomp-side-by-side{grid-template-columns:1fr}.motion-planning-page .vis-phase-indicator{flex-wrap:wrap}.motion-planning-page .prm-controls,.motion-planning-page .rrt-controls,.motion-planning-page .constraint-selector,.motion-planning-page .cspace-toggle{flex-direction:column}.motion-planning-page .pros-cons{flex-direction:column;gap:.5rem}}.pathfinding-lab-page .lab-container{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:1600px;width:100%;margin-bottom:2rem}.lab-left{display:flex;flex-direction:column;gap:1.25rem}.challenge-selector h3{font-size:.9rem;font-weight:500;color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.challenge-list{display:flex;flex-direction:column;gap:.5rem}.challenge-btn{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s ease;text-align:left;position:relative}.challenge-btn:hover{border-color:var(--text-muted)}.challenge-btn.active{border-color:var(--accent-cyan);background:#00e5ff1a}.challenge-btn.completed{border-color:var(--accent-lime)}.challenge-btn.completed .challenge-name{color:var(--accent-lime)}.challenge-difficulty{font-size:.7rem;color:var(--accent-orange);letter-spacing:1px;flex-shrink:0}.challenge-name{font-size:.9rem;font-weight:500;color:var(--text-primary);flex:1}.check-mark{color:var(--accent-lime);font-weight:700;font-size:1rem}.challenge-info{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.challenge-info h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.challenge-info p{font-size:.9rem;color:var(--text-secondary);line-height:1.5;margin:0}.grid-wrapper{display:flex;justify-content:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem}.pathfinding-grid{display:grid;gap:1px;background:var(--bg-tertiary);padding:1px;border-radius:4px}.pathfinding-cell{width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;position:relative;transition:background-color .2s ease}.pathfinding-cell.flat{background:#8b4513}.pathfinding-cell.rocky{background:#654321}.pathfinding-cell.dunes{background:peru}.pathfinding-cell.wall{background:#3d3d3d}.pathfinding-cell.explored{background:#00e5ff40}.pathfinding-cell.path{background:#d4ff0059}.pathfinding-cell.start{background:#00e5ff59}.pathfinding-cell.goal{background:#d4ff0033}.pathfinding-cell.goal.path{background:#d4ff0073}.mars-rover-icon{color:#f5f5f5;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 0 4px rgba(255,255,255,.5));z-index:10}.mars-rover-icon svg{filter:drop-shadow(0 2px 3px rgba(0,0,0,.4))}.mars-rover-icon.complete{color:var(--accent-lime);filter:drop-shadow(0 0 8px var(--accent-lime));animation:celebrate .5s ease-in-out}@keyframes celebrate{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.obstacle-icon{font-size:1rem;opacity:.9}.cell-icon{font-size:1.1rem;z-index:2}.goal-icon{animation:goal-pulse 1.5s ease-in-out infinite;filter:drop-shadow(0 0 6px var(--accent-lime))}.goal-reached{filter:drop-shadow(0 0 8px var(--accent-lime));animation:none}@keyframes goal-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.15);opacity:.8}}.terrain-legend{display:flex;flex-wrap:wrap;gap:1rem;padding:.75rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px}.legend-item{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--text-secondary)}.legend-color{width:16px;height:16px;border-radius:3px;border:1px solid rgba(255,255,255,.1)}.legend-icon{font-size:.85rem;width:16px;text-align:center}.legend-icon.rover-sample{width:16px;height:16px;background:#f5f5f5;border-radius:3px;box-shadow:0 0 4px #ffffff4d}.legend-icon.goal-sample{filter:drop-shadow(0 0 3px var(--accent-lime))}.legend-color.flat{background:#8b4513}.legend-color.rocky{background:#654321}.legend-color.dunes{background:peru}.legend-color.wall{background:#3d3d3d}.legend-color.explored{background:#00e5ff4d}.legend-color.path{background:#d4ff0066}.lab-controls{display:flex;justify-content: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:not(:disabled){background:#c5e600;transform:scale(1.02)}.run-btn:disabled{opacity:.6;cursor:not-allowed}.run-btn.running{background:var(--accent-orange)}.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)}.result-display{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)}}.result-display.success{background:#d4ff001a;border:1px solid var(--accent-lime)}.result-display.error{background:#ef44441a;border:1px solid #ef4444}.result-display.no-path{background:#fb923c1a;border:1px solid var(--accent-orange)}.result-error{color:#ef4444;font-size:.9rem;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-word}.result-success{color:var(--text-primary)}.result-stats{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:.75rem}.result-stats .stat{font-size:.9rem;color:var(--text-secondary)}.result-stats .stat strong{color:var(--text-primary)}.optimal-badge{color:var(--accent-lime);font-weight:600;font-size:.95rem}.comparison-note{margin-top:.5rem;font-size:.85rem;color:var(--text-muted);font-style:italic}.result-no-path{color:var(--accent-orange);font-size:.95rem}.explored-count{font-size:.85rem;color:var(--text-muted)}.lab-right{display:flex;flex-direction:column;gap:1rem}.editor-header h3{font-size:.9rem;font-weight:500;color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.05em}.pathfinding-code-editor{flex:1;min-height:400px}.console-output{background:#0d1117;border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.console-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#ffffff08;border-bottom:1px solid var(--border-color);font-size:.75rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.clear-console-btn{background:transparent;border:1px solid var(--border-color);color:var(--text-muted);font-size:.7rem;padding:.2rem .5rem;border-radius:4px;cursor:pointer;transition:all .2s ease}.clear-console-btn:hover{border-color:var(--text-secondary);color:var(--text-secondary)}.console-content{padding:.75rem 1rem;margin:0;font-family:var(--font-mono);font-size:.8rem;line-height:1.6;color:var(--text-secondary);max-height:150px;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.console-content:empty:before{content:"Run your code to see output...";color:var(--text-muted);font-style:italic}.editor-hints{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1rem;max-height:350px;overflow-y:auto}.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;margin-bottom:.25rem}.example-code{background:var(--bg-tertiary);padding:.75rem 1rem;border-radius:6px;font-family:var(--font-mono);font-size:.75rem;color:var(--text-secondary);line-height:1.5;overflow-x:auto;margin:0}.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}.pyodide-error{padding:1rem;margin-bottom:1rem;background:#ef44441a;border:1px solid #ef4444;border-radius:8px;color:#ef4444;max-width:1600px;width:100%}.pathfinding-lab-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}.pathfinding-lab-page .learning-section h3{font-size:1rem;font-weight:500;color:var(--accent-cyan);letter-spacing:.03em;margin-bottom:1.25rem}.pathfinding-lab-page .learning-content{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.pathfinding-lab-page .learning-card{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.pathfinding-lab-page .learning-card h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem}.pathfinding-lab-page .learning-card p{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin:0}@media (max-width: 1200px){.pathfinding-lab-page .lab-container{grid-template-columns:1fr}.pathfinding-lab-page .learning-content{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.challenge-list{flex-direction:column}.lab-controls{flex-direction:column;align-items:stretch}.control-buttons{justify-content:center}.pathfinding-lab-page .learning-content{grid-template-columns:1fr}.pathfinding-cell{width:28px;height:28px;font-size:.9rem}.result-stats{flex-direction:column;gap:.5rem}}.planning-lab-page{--primary-color: #6366f1;--primary-light: #818cf8;--primary-dark: #4f46e5;--success-color: #22c55e;--error-color: #ef4444;--warning-color: #f59e0b;--bg-dark: #1e1e2e;--bg-medium: #2a2a3e;--bg-light: #3a3a4e;--text-primary: #f0f0f5;--text-secondary: #a0a0b0;--border-color: #4a4a5e}.planning-lab-page .lab-container{display:grid;grid-template-columns:420px 1fr;gap:2rem;margin-top:1rem}.planning-lab-page .lab-left{display:flex;flex-direction:column;gap:1.25rem}.planning-lab-page .lab-right{display:flex;flex-direction:column;gap:1rem}.planning-lab-page .challenge-selector h3{font-size:.875rem;font-weight:600;color:var(--text-secondary);margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.05em}.planning-lab-page .challenge-list{display:flex;flex-direction:column;gap:.5rem}.planning-lab-page .challenge-btn{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--bg-medium);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s;text-align:left}.planning-lab-page .challenge-btn:hover{background:var(--bg-light);border-color:var(--primary-color)}.planning-lab-page .challenge-btn.active{background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary-color) 100%);border-color:var(--primary-light)}.planning-lab-page .challenge-btn.completed,.planning-lab-page .challenge-btn.completed.active{border-color:var(--success-color)}.planning-lab-page .challenge-difficulty{font-size:.75rem;color:var(--warning-color);min-width:48px}.planning-lab-page .challenge-name{flex:1;font-size:.875rem;color:var(--text-primary)}.planning-lab-page .challenge-btn.active .challenge-name{color:#fff}.planning-lab-page .check-mark{color:var(--success-color);font-weight:700;font-size:1rem}.planning-lab-page .challenge-info{background:var(--bg-medium);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.planning-lab-page .challenge-info h4{font-size:1rem;font-weight:600;color:var(--primary-light);margin-bottom:.5rem}.planning-lab-page .challenge-info p{font-size:.875rem;color:var(--text-secondary);line-height:1.5;margin:0}.planning-lab-page .blocks-visualization{background:var(--bg-medium);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.planning-lab-page .blocks-svg{width:100%;max-width:300px;height:auto;margin:0 auto;display:block}.planning-lab-page .blocks-svg .table{fill:#5c5470}.planning-lab-page .blocks-svg .table-label{fill:var(--text-secondary);font-size:10px;text-anchor:middle}.planning-lab-page .blocks-svg .arm-base,.planning-lab-page .blocks-svg .arm-gripper{fill:#6b7280}.planning-lab-page .blocks-svg .block{stroke:#0003;stroke-width:2}.planning-lab-page .blocks-svg .block-label{fill:#fff;font-size:16px;font-weight:700;text-anchor:middle}.planning-lab-page .visualization-toggle{display:flex;gap:.5rem;margin-bottom:.75rem}.planning-lab-page .toggle-btn{flex:1;padding:.5rem .75rem;background:var(--bg-light);border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s}.planning-lab-page .toggle-btn:hover{background:var(--bg-dark);color:var(--text-primary)}.planning-lab-page .toggle-btn.active{background:var(--primary-color);border-color:var(--primary-light);color:#fff}.planning-lab-page .state-indicator{display:flex;align-items:center;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color)}.planning-lab-page .state-label{font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase}.planning-lab-page .state-text{font-size:.875rem;font-weight:500}.planning-lab-page .state-indicator.initial .state-text{color:var(--text-primary)}.planning-lab-page .state-indicator.goal .state-text{color:var(--warning-color)}.planning-lab-page .states-panel{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.planning-lab-page .state-display{background:var(--bg-medium);border:1px solid var(--border-color);border-radius:8px;padding:.75rem}.planning-lab-page .state-display h4{font-size:.75rem;font-weight:600;color:var(--text-secondary);margin-bottom:.5rem;text-transform:uppercase}.planning-lab-page .fluents-list{display:flex;flex-wrap:wrap;gap:.35rem}.planning-lab-page .fluent{background:var(--bg-light);color:var(--text-primary);padding:.2rem .5rem;border-radius:4px;font-size:.7rem;font-family:Monaco,Menlo,monospace;white-space:nowrap}.planning-lab-page .lab-controls{display:flex;flex-direction:column;gap:.75rem}.planning-lab-page .control-buttons{display:flex;gap:.75rem}.planning-lab-page .run-btn{flex:1;padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary-color) 100%);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.planning-lab-page .run-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-light) 100%);transform:translateY(-1px)}.planning-lab-page .run-btn:disabled{opacity:.6;cursor:not-allowed}.planning-lab-page .run-btn.running{background:var(--bg-light)}.planning-lab-page .reset-btn{padding:.75rem 1rem;background:var(--bg-medium);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:8px;font-size:.9rem;cursor:pointer;transition:all .2s}.planning-lab-page .reset-btn:hover{background:var(--bg-light);color:var(--text-primary)}.planning-lab-page .result-display{background:var(--bg-medium);border-radius:8px;padding:1rem;border:1px solid}.planning-lab-page .result-display.success{border-color:var(--success-color);background:#22c55e1a}.planning-lab-page .result-display.error{border-color:var(--error-color);background:#ef44441a}.planning-lab-page .success-badge{display:inline-block;background:var(--success-color);color:#fff;padding:.35rem .75rem;border-radius:20px;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.planning-lab-page .success-message{font-size:.875rem;color:var(--text-primary);margin:.5rem 0;line-height:1.5}.planning-lab-page .result-error{color:var(--error-color)}.planning-lab-page .result-error pre{background:#0003;padding:.75rem;border-radius:4px;margin-top:.5rem;font-size:.8rem;overflow-x:auto;white-space:pre-wrap}.planning-lab-page .plan-display{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.planning-lab-page .plan-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.planning-lab-page .plan-header h4{font-size:.875rem;font-weight:600;color:var(--text-primary);margin:0}.planning-lab-page .plan-stats{font-size:.75rem;color:var(--text-secondary)}.planning-lab-page .plan-sequence{display:flex;flex-direction:column;gap:.35rem}.planning-lab-page .plan-step{display:flex;align-items:center;gap:.75rem;padding:.35rem .5rem;background:#0003;border-radius:4px}.planning-lab-page .step-number{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:var(--primary-color);color:#fff;border-radius:50%;font-size:.7rem;font-weight:600}.planning-lab-page .step-action{font-family:Monaco,Menlo,monospace;font-size:.8rem;color:var(--text-primary)}.planning-lab-page .concept-review{background:var(--bg-medium);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.planning-lab-page .concept-review h4{font-size:.75rem;font-weight:600;color:var(--text-secondary);margin-bottom:.75rem;text-transform:uppercase}.planning-lab-page .concept-content{font-size:.8rem;color:var(--text-primary);line-height:1.5}.planning-lab-page .concept-content p{margin:0 0 .5rem}.planning-lab-page .concept-content p:last-child{margin-bottom:0}.planning-lab-page .concept-content strong{color:var(--primary-light)}.planning-lab-page .concept-content ul,.planning-lab-page .concept-content ol{margin:.25rem 0 .75rem;padding-left:1.25rem}.planning-lab-page .concept-content li{margin-bottom:.25rem}.planning-lab-page .editor-header{display:flex;justify-content:space-between;align-items:center}.planning-lab-page .editor-header h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.planning-lab-page .planning-code-editor{border-radius:8px;overflow:hidden}.planning-lab-page .console-output{background:#1a1a2e;border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.planning-lab-page .console-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#0000004d;border-bottom:1px solid var(--border-color);font-size:.75rem;color:var(--text-secondary)}.planning-lab-page .clear-console-btn{background:transparent;border:none;color:var(--text-secondary);font-size:.7rem;cursor:pointer;padding:.2rem .5rem;border-radius:4px}.planning-lab-page .clear-console-btn:hover{background:#ffffff1a;color:var(--text-primary)}.planning-lab-page .console-content{padding:.75rem;margin:0;font-family:Monaco,Menlo,monospace;font-size:.8rem;color:#a0ffa0;min-height:80px;max-height:150px;overflow-y:auto;white-space:pre-wrap}.planning-lab-page .editor-hints{background:var(--bg-medium);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.planning-lab-page .editor-hints h4{font-size:.8rem;font-weight:600;color:var(--text-secondary);margin:0 0 .5rem;text-transform:uppercase}.planning-lab-page .editor-hints h4:not(:first-child){margin-top:1rem}.planning-lab-page .editor-hints ul{margin:0;padding-left:1.25rem}.planning-lab-page .editor-hints li{font-size:.8rem;color:var(--text-primary);line-height:1.5;margin-bottom:.35rem}.planning-lab-page .example-code{background:#1a1a2e;padding:.75rem;border-radius:4px;font-family:Monaco,Menlo,monospace;font-size:.75rem;color:#a0ffa0;overflow-x:auto;margin:.5rem 0 0;white-space:pre}.planning-lab-page .learning-section{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--border-color)}.planning-lab-page .learning-section h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:1.25rem;text-align:center}.planning-lab-page .learning-content{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.planning-lab-page .learning-card{background:var(--bg-medium);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem}.planning-lab-page .learning-card h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.planning-lab-page .learning-card p{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin:0}.planning-lab-page .pyodide-loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000}.planning-lab-page .pyodide-loading{display:flex;flex-direction:column;align-items:center;gap:1rem;color:var(--text-primary)}.planning-lab-page .loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.planning-lab-page .pyodide-error{background:#ef444433;border:1px solid var(--error-color);color:var(--error-color);padding:1rem;border-radius:8px;margin-bottom:1rem}@media (max-width: 1200px){.planning-lab-page .lab-container{grid-template-columns:1fr}.planning-lab-page .learning-content{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.planning-lab-page .states-panel,.planning-lab-page .learning-content{grid-template-columns:1fr}.planning-lab-page .control-buttons{flex-direction:column}}.visualization-container{display:flex;flex-direction:column;gap:.5rem;height:calc(100vh - 120px);min-height:500px}.visualization-header{display:flex;justify-content:space-between;align-items:center;flex-shrink:0;gap:1rem;padding:1rem 1.25rem .5rem}.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}.bfs-content{display:flex;flex-direction:column;height:100%}.bfs-content .graph-svg{flex:1;min-height:0}.node.in-queue{fill:var(--accent-blue);stroke:#93c5fd;opacity:.7}.node.goal-node{stroke-dasharray:4 2}.goal-marker{font-size:24px;text-anchor:middle;dominant-baseline:middle}.queue-visualization{padding:1rem 1.5rem;background:var(--bg-tertiary);border-top:1px solid var(--border-color)}.queue-display{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.queue-label{font-size:.85rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.queue-items{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.queue-item{display:inline-flex;align-items:center;gap:.35rem;background:var(--accent-blue);color:#fff;padding:.35rem .75rem;border-radius:6px;font-size:.9rem;font-weight:600;font-family:JetBrains Mono,monospace}.queue-item.front{background:var(--accent-orange);box-shadow:0 0 0 2px #fb923c4d}.front-label{font-size:.7rem;font-weight:500;opacity:.9;margin-left:.25rem}.queue-empty{color:var(--text-tertiary);font-style:italic;font-size:.9rem}.node-group.in-queue .node-label,.node-group.in-queue .node-distance{fill:#fff}.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}.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-overview-page em{color:var(--accent-cyan);font-style:normal}.search-types-section{margin-top:2rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem}.search-types-section>h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin:0 0 .75rem}.search-types-section .section-intro{color:var(--text-secondary);font-size:.95rem;line-height:1.7;margin-bottom:1.5rem}.search-types-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.search-type-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem}.search-type-card.uninformed{border-color:#fb923c4d}.search-type-card.informed{border-color:#00e5ff4d}.search-type-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.search-type-icon{font-size:1.5rem}.search-type-header h3{font-size:1.1rem;font-weight:500;margin:0}.search-type-card.uninformed .search-type-header h3{color:var(--accent-orange)}.search-type-card.informed .search-type-header h3{color:var(--accent-cyan)}.search-type-aka{font-size:.8rem;color:var(--text-tertiary)}.search-type-card>p{color:var(--text-secondary);font-size:.9rem;line-height:1.6;margin-bottom:1rem}.search-type-characteristics h4,.search-type-examples h4{font-size:.85rem;font-weight:500;color:var(--text-primary);margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.5px}.search-type-characteristics ul{margin:0 0 1rem;padding-left:1.25rem}.search-type-characteristics li{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin-bottom:.25rem}.search-type-examples{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.algo-tag{background:var(--bg-tertiary);color:var(--text-secondary);padding:.25rem .6rem;border-radius:4px;font-size:.8rem;font-weight:500}.search-types-insight{background:#00e5ff14;border:1px solid rgba(0,229,255,.2);border-radius:8px;padding:1rem 1.25rem}.search-types-insight p{color:var(--text-secondary);font-size:.9rem;line-height:1.6;margin:0}.search-types-insight strong{color:var(--accent-cyan)}.algorithm-category-header{margin-top:3rem;padding:1.25rem 1.5rem;background:#fb923c14;border:1px solid rgba(251,146,60,.2);border-radius:10px}.algorithm-category-header.informed{background:#00e5ff14;border-color:#00e5ff33}.algorithm-category-header h2{font-size:1.1rem;font-weight:600;color:var(--accent-orange);margin:0 0 .25rem;text-transform:uppercase;letter-spacing:.5px}.algorithm-category-header.informed h2{color:var(--accent-cyan)}.algorithm-category-header p{color:var(--text-secondary);font-size:.9rem;margin:0}.algorithm-relationship{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border-color)}.algorithm-relationship h4{font-size:1rem;font-weight:500;color:var(--text-primary);margin-bottom:.5rem}.algorithm-relationship p{color:var(--text-secondary);font-size:.95rem;line-height:1.7;margin:0}.astar-formula-box{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem 1.5rem;margin:1rem 0}.formula-breakdown{display:flex;flex-direction:column;gap:1rem}.formula-item{display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:1.25rem;font-family:SF Mono,Monaco,Inconsolata,monospace}.formula-symbol{color:var(--text-primary);font-weight:600}.formula-symbol.g{color:var(--accent-orange)}.formula-symbol.h{color:var(--accent-cyan)}.formula-equals,.formula-plus{color:var(--text-tertiary)}.formula-explanations{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.formula-explain{display:flex;flex-direction:column;align-items:center;gap:.25rem}.formula-term{font-family:SF Mono,Monaco,Inconsolata,monospace;font-weight:600;font-size:.9rem;color:var(--text-primary)}.formula-term.g{color:var(--accent-orange)}.formula-term.h{color:var(--accent-cyan)}.formula-explain span:last-child{font-size:.8rem;color:var(--text-tertiary);text-align:center}.comparison-table-container{overflow-x:auto;margin-bottom:1.5rem}.comparison-table{width:100%;border-collapse:collapse;font-size:.9rem}.comparison-table th{text-align:left;padding:.75rem 1rem;background:var(--bg-tertiary);color:var(--text-primary);font-weight:600;font-size:.85rem;border-bottom:1px solid var(--border-color)}.comparison-table td{padding:.75rem 1rem;color:var(--text-secondary);border-bottom:1px solid var(--border-color)}.comparison-table tbody tr:last-child td{border-bottom:none}.comparison-table td strong{color:var(--text-primary)}.intro-content ul.environment-list,.intro-content ul.concept-list{margin:.75rem 0 1rem;padding-left:1.5rem;color:var(--text-secondary)}.intro-content ul.environment-list li,.intro-content ul.concept-list li{margin-bottom:.4rem;font-size:.95rem;line-height:1.6}.intro-content ul.environment-list li strong,.intro-content ul.concept-list li strong{color:var(--text-primary)}.algorithm-section{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border-color)}.algorithm-header{margin-bottom:1.5rem}.algorithm-header h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.algorithm-tagline{color:var(--text-secondary);font-size:1rem;margin:0}.algorithm-description{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem 2rem;margin-bottom:1.5rem}.algorithm-description>p{color:var(--text-secondary);font-size:.95rem;line-height:1.7;margin-bottom:1.25rem}.algorithm-description>p:last-child{margin-bottom:0}.key-concepts,.when-to-use,.heuristic-explanation{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border-color)}.key-concepts h4,.when-to-use h4,.heuristic-explanation h4{font-size:1rem;font-weight:500;color:var(--text-primary);margin-bottom:.75rem}.key-concepts ul,.heuristic-explanation ul{margin:0;padding-left:1.25rem;color:var(--text-secondary)}.key-concepts li,.heuristic-explanation li{margin-bottom:.4rem;font-size:.9rem;line-height:1.6}.key-concepts li strong,.heuristic-explanation li strong{color:var(--text-primary)}.when-to-use p,.heuristic-explanation p{color:var(--text-secondary);font-size:.95rem;line-height:1.7;margin:0}.when-to-use p em{font-style:italic}.visualization-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.visualization-title{font-size:1.1rem;font-weight:500;color:var(--text-primary);margin:0}.comparison-section{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border-color)}.comparison-section>h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:1.5rem}.comparison-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:1.5rem}.comparison-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem}.comparison-card h4{font-size:1rem;font-weight:500;color:var(--text-primary);margin-bottom:1rem}.comparison-card ul{margin:0;padding-left:1.25rem;color:var(--text-secondary)}.comparison-card li{margin-bottom:.5rem;font-size:.9rem;line-height:1.5}.comparison-card li em{font-style:italic}.comparison-note{background:#38bdf814;border:1px solid rgba(56,189,248,.2);border-radius:8px;padding:1rem 1.25rem}.comparison-note p{color:var(--text-secondary);font-size:.9rem;line-height:1.6;margin:0}.comparison-note strong{color:var(--text-primary)}.heuristics-section{margin-top:2rem}.heuristic-visual-box{background:var(--bg-primary);border:1px solid rgba(0,229,255,.3);border-radius:10px;padding:1.5rem;margin:1.25rem 0}.heuristic-concept{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1rem}.heuristic-icon{font-size:2rem}.heuristic-definition{display:flex;align-items:center;gap:.75rem;font-size:1.1rem}.heuristic-formula{font-family:SF Mono,Monaco,Inconsolata,monospace;font-weight:600;color:var(--accent-cyan);font-size:1.25rem}.heuristic-arrow{color:var(--text-tertiary)}.heuristic-meaning{color:var(--text-secondary)}.heuristic-intuition{color:var(--text-secondary);font-size:.9rem;line-height:1.6;text-align:center;margin:0}.property-detail{display:block;font-size:.85rem;color:var(--text-tertiary);margin-top:.25rem;margin-left:0}.property-note{background:#fb923c14;border:1px solid rgba(251,146,60,.2);border-radius:6px;padding:.75rem 1rem;margin-top:1rem;font-size:.9rem;color:var(--text-secondary)}.property-note strong{color:var(--accent-orange)}.heuristic-examples{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border-color)}.heuristic-examples>h4{font-size:1rem;font-weight:500;color:var(--text-primary);margin-bottom:1rem}.heuristic-examples-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.heuristic-example-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem}.heuristic-example-card h5{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem}.heuristic-formula-display{font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:.9rem;color:var(--accent-cyan);background:var(--bg-tertiary);padding:.5rem .75rem;border-radius:4px;margin-bottom:.75rem;text-align:center}.heuristic-example-card p{font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin-bottom:.75rem}.heuristic-use-case{font-size:.8rem;color:var(--text-tertiary);padding-top:.5rem;border-top:1px solid var(--border-color)}.use-case-label{font-weight:500;color:var(--text-secondary)}.heuristic-tradeoff{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border-color)}.heuristic-tradeoff h4{font-size:1rem;font-weight:500;color:var(--text-primary);margin-bottom:.75rem}.heuristic-tradeoff>p{color:var(--text-secondary);font-size:.95rem;line-height:1.7;margin-bottom:1rem}.tradeoff-spectrum{display:flex;align-items:center;justify-content:space-between;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1rem 1.5rem;gap:1rem}.spectrum-end{display:flex;flex-direction:column;align-items:center;gap:.25rem}.spectrum-end.weak .spectrum-label{color:var(--accent-orange)}.spectrum-end.strong .spectrum-label{color:var(--accent-cyan)}.spectrum-label{font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:.9rem;font-weight:600}.spectrum-desc{font-size:.8rem;color:var(--text-tertiary);text-align:center}.spectrum-arrow{flex:1;text-align:center;color:var(--text-tertiary);font-size:.85rem;position:relative}.spectrum-arrow:before{content:"";position:absolute;left:0;right:0;top:50%;height:2px;background:linear-gradient(to right,var(--accent-orange),var(--accent-cyan));opacity:.4;z-index:0}@media (max-width: 900px){.comparison-grid,.search-types-grid{grid-template-columns:1fr}.formula-explanations{gap:1rem}.heuristic-examples-grid{grid-template-columns:1fr}.tradeoff-spectrum{flex-direction:column;text-align:center}.spectrum-arrow{transform:rotate(90deg);padding:1rem 0}.spectrum-arrow:before{width:100px;left:50%;transform:translate(-50%)}}.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}.foundation-models-page.page-layout{background-image:radial-gradient(circle,rgba(255,255,255,.18) 1px,transparent 1px),radial-gradient(ellipse at 50% 20%,rgba(0,136,255,.1) 0%,rgba(212,255,0,.04) 30%,transparent 60%);background-size:28px 28px,100% 100%;background-position:center top}.foundation-models-page .course-list{display:flex;flex-direction:column;gap:.75rem;max-width:860px;width:100%;margin:0 auto}.foundation-models-page .course-item{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1.25rem;transition:all .2s ease;text-align:left}.foundation-models-page .course-item.enabled{cursor:pointer}.foundation-models-page .course-item.enabled:hover{background:#ffffff14;border-color:var(--accent-cyan);transform:translate(4px)}.foundation-models-page .course-item.disabled{opacity:.4;cursor:not-allowed}.foundation-models-page .course-item.completed{border-color:#00e5ff40}.foundation-models-page .course-item__number{font-size:.75rem;font-weight:600;color:var(--text-muted);min-width:1.5rem;text-align:center;flex-shrink:0}.foundation-models-page .course-item__icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;border-radius:10px;background:#ffffff0f}.foundation-models-page .course-item__icon svg{width:22px;height:22px}.foundation-models-page .course-item__icon.learn{color:var(--accent-lime)}.foundation-models-page .course-item__icon.lab{color:var(--accent-cyan)}.foundation-models-page .course-item__info{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.foundation-models-page .course-item__header{display:flex;align-items:center;gap:.75rem}.foundation-models-page .course-item__title{font-size:1.1rem;font-weight:600;color:var(--text-primary);line-height:1.3}.foundation-models-page .course-item__badge{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding:.15rem .5rem;border-radius:4px;flex-shrink:0;white-space:nowrap}.foundation-models-page .course-item__badge.learn{color:var(--accent-lime);background:#d4ff001a}.foundation-models-page .course-item__badge.lab{color:var(--accent-cyan);background:#00e5ff1a}.foundation-models-page .course-item__description{font-size:.875rem;color:var(--text-secondary);line-height:1.5;font-weight:300}.foundation-models-page .course-item__complete{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--accent-cyan);color:var(--bg-primary);font-size:.75rem;font-weight:600;flex-shrink:0}.foundation-models-page .course-item__arrow{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-muted);transition:color .2s ease,transform .2s ease}.foundation-models-page .course-item__arrow svg{width:18px;height:18px}.foundation-models-page .course-item.enabled:hover .course-item__arrow{color:var(--accent-cyan);transform:translate(2px)}@media (max-width: 480px){.foundation-models-page .course-item{padding:1rem;gap:.75rem}.foundation-models-page .course-item__number{display:none}.foundation-models-page .course-item__icon{width:36px;height:36px}.foundation-models-page .course-item__icon svg{width:18px;height:18px}.foundation-models-page .course-item__title{font-size:1rem}.foundation-models-page .course-item__description{font-size:.8125rem}}.transformers-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem;max-width:1000px}.transformers-page .content-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem}.transformers-page .content-section h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.transformers-page .content-section>p{font-size:.95rem;line-height:1.75;color:var(--text-secondary);margin:0 0 1.5rem}.transformers-page .content-section>p strong{color:var(--text-primary)}.transformers-page .content-section>p em{color:var(--accent-cyan);font-style:normal}.transformers-page .intro-section{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(0,229,255,.05) 100%)}.transformers-page .impact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:1.5rem}.transformers-page .impact-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;text-align:center;transition:all .2s ease}.transformers-page .impact-card:hover{border-color:var(--accent-cyan);transform:translateY(-2px)}.transformers-page .impact-card .card-icon{font-size:2rem;margin-bottom:.75rem}.transformers-page .impact-card h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.transformers-page .impact-card p{font-size:.85rem;color:var(--text-secondary);margin:0;line-height:1.5}.transformers-page .transformer-flow-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;margin:1.5rem 0;overflow:visible}.transformers-page .transformer-flow-visual .visual-header{text-align:center;margin-bottom:1.5rem}.transformers-page .transformer-flow-visual .visual-header h3{font-size:1.1rem;font-weight:600;color:var(--accent-cyan);margin:0 0 .5rem}.transformers-page .transformer-flow-visual .visual-header p{font-size:.9rem;color:var(--text-secondary);margin:0}.transformers-page .transformer-flow-visual .visual-content{display:flex;flex-direction:row;gap:1.5rem;align-items:flex-start}.transformers-page .transformer-flow-visual .architecture-diagram{flex:1;min-width:0;background:#0003;border-radius:10px;padding:1rem}.transformers-page .transformer-flow-visual .step-controls{flex-shrink:0;width:300px;position:sticky;top:100px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:1rem}.transformers-page .transformer-svg{width:100%;height:auto;min-height:500px;display:block}.transformers-page .transformer-svg .component rect{fill:var(--bg-secondary);stroke:var(--border-color);stroke-width:2;transition:all .3s ease}.transformers-page .transformer-svg .component.active rect{stroke:var(--accent-lime);fill:#d4ff001a}.transformers-page .transformer-svg .component-label{fill:var(--text-secondary);font-size:14px;text-anchor:middle;transition:fill .3s ease}.transformers-page .transformer-svg .component.active .component-label{fill:var(--accent-lime)}.transformers-page .transformer-svg .token-text{fill:var(--text-primary);font-size:13px;text-anchor:middle;font-weight:500}.transformers-page .transformer-svg .token-id{fill:var(--text-muted);font-size:11px;text-anchor:middle}.transformers-page .transformer-svg .vector-label{fill:var(--text-muted);font-size:11px;text-anchor:middle;font-family:monospace}.transformers-page .transformer-svg .flow-arrow{stroke:var(--border-color);stroke-width:2;fill:none;opacity:.3;transition:all .3s ease}.transformers-page .transformer-svg .flow-arrow.active{stroke:var(--accent-lime);opacity:.8}.transformers-page .transformer-svg .plus-sign{fill:var(--accent-lime);font-size:24px;text-anchor:middle;opacity:0;transition:opacity .3s ease}.transformers-page .transformer-svg .plus-sign.visible{opacity:1}.transformers-page .transformer-svg .block-outline{fill:#00e5ff08;stroke:var(--border-color);stroke-width:2}.transformers-page .transformer-svg .transformer-block.active .block-outline{stroke:var(--accent-lime);fill:#d4ff000d}.transformers-page .transformer-svg .block-title{fill:var(--text-muted);font-size:13px;font-weight:500}.transformers-page .transformer-svg .attention-curve{stroke:var(--accent-orange);stroke-width:2;fill:none;opacity:.7}.transformers-page .transformer-svg .attention-curve.light{opacity:.3}.transformers-page .transformer-svg .stack-label{fill:var(--accent-lime);font-size:12px;text-anchor:middle;opacity:.8}.transformers-page .transformer-svg .skip-connection{stroke:var(--text-muted);stroke-width:2;stroke-dasharray:4 2;opacity:.4;transition:all .3s ease}.transformers-page .transformer-svg .skip-connection.active{stroke:var(--accent-lime);opacity:.9}.transformers-page .transformer-svg .skip-label{fill:var(--text-muted);font-size:16px;font-weight:600;opacity:.5}.transformers-page .transformer-svg .skip-label.active{fill:var(--accent-lime);opacity:1}.transformers-page .transformer-svg .add-norm rect{fill:var(--bg-secondary);stroke:var(--border-color)}.transformers-page .transformer-svg .add-norm.active rect{fill:#d4ff001a;stroke:var(--accent-lime)}.transformers-page .transformer-svg .add-norm .component-label{fill:var(--text-secondary)}.transformers-page .transformer-svg .add-norm.active .component-label{fill:var(--accent-lime)}.transformers-page .transformer-svg .block-input rect{fill:var(--bg-tertiary);stroke:var(--border-color);stroke-dasharray:4 2}.transformers-page .transformer-svg .block-input.active rect{stroke:var(--accent-lime)}.transformers-page .transformer-svg .flow-text{fill:var(--text-muted);font-size:28px}.transformers-page .transformer-svg .flow-text-label{fill:var(--text-muted);font-size:12px;text-anchor:middle}.transformers-page .transformer-svg .prediction-label{fill:var(--accent-lime);font-size:13px;text-anchor:middle;font-weight:500}.transformers-page .transformer-svg .tokens-group.active .token rect{stroke:var(--accent-orange);fill:#ff9f431a}.transformers-page .transformer-svg .embeddings-group.active .embedding-vector rect{stroke:var(--accent-lime);fill:#d4ff001a}.transformers-page .transformer-svg .transformer-block.active .block-outline{stroke:var(--accent-lime);stroke-dasharray:none}.transformers-page .step-controls{display:flex;flex-direction:column;gap:.75rem}.transformers-page .step-info{padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.transformers-page .step-number{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.transformers-page .step-title{font-size:1.1rem;font-weight:600;color:var(--accent-cyan);margin:0 0 .5rem}.transformers-page .step-description{font-size:.95rem;color:var(--text-primary);margin:0 0 .75rem;line-height:1.5}.transformers-page .step-detail{font-size:.85rem;color:var(--text-secondary);margin:0;line-height:1.6}.transformers-page .step-section-link{display:inline-block;margin-top:.75rem;font-size:.85rem;color:var(--accent-cyan);text-decoration:none;opacity:.9;transition:opacity .2s ease}.transformers-page .step-section-link:hover{opacity:1;text-decoration:underline}.transformers-page .component-tooltip{background:var(--bg-secondary);border:1px solid var(--accent-cyan);border-radius:8px;padding:.75rem 1rem;display:flex;flex-direction:column;gap:.25rem}.transformers-page .tooltip-label{font-size:.8rem;font-weight:600;color:var(--accent-cyan);text-transform:capitalize}.transformers-page .tooltip-desc{font-size:.8rem;color:var(--text-secondary)}.transformers-page .step-navigation{display:flex;flex-direction:column;gap:1rem}.transformers-page .step-dots{display:flex;gap:.5rem;justify-content:center}.transformers-page .step-dot{width:12px;height:12px;border-radius:50%;border:2px solid var(--border-color);background:transparent;cursor:pointer;transition:all .2s ease}.transformers-page .step-dot:hover{border-color:var(--text-muted)}.transformers-page .step-dot.completed{background:var(--accent-cyan);border-color:var(--accent-cyan)}.transformers-page .step-dot.active{border-color:var(--accent-lime);background:var(--accent-lime);transform:scale(1.2)}.transformers-page .nav-buttons{display:flex;gap:.5rem}.transformers-page .nav-btn{flex:1;padding:.6rem 1rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-tertiary);color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s ease}.transformers-page .nav-btn:hover:not(:disabled){border-color:var(--text-muted);color:var(--text-primary)}.transformers-page .nav-btn:disabled{opacity:.4;cursor:not-allowed}.transformers-page .nav-btn.play-btn{background:var(--accent-cyan);border-color:var(--accent-cyan);color:var(--bg-primary)}.transformers-page .nav-btn.play-btn:hover{background:#00c4db}.transformers-page .nav-btn.play-btn.playing{background:var(--accent-orange);border-color:var(--accent-orange)}.transformers-page .attention-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.transformers-page .attention-header{text-align:center;margin-bottom:1.5rem}.transformers-page .attention-header h4{font-size:1rem;font-weight:600;color:var(--accent-cyan);margin:0 0 .5rem}.transformers-page .attention-header p{font-size:.85rem;color:var(--text-secondary);margin:0}.transformers-page .attention-content{display:flex;flex-direction:column;gap:.75rem;max-width:750px;margin:0 auto}.transformers-page .token-row{display:flex;align-items:center;gap:.5rem}.transformers-page .row-label{font-size:.8rem;color:var(--text-muted);width:50px;text-align:right;flex-shrink:0}.transformers-page .attention-token{flex:1;padding:.5rem .4rem;border:2px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);color:var(--text-primary);font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:center;min-width:0}.transformers-page .attention-token:hover{border-color:var(--accent-cyan)}.transformers-page .attention-token.selected{border-color:var(--accent-cyan);background:#00e5ff26;color:var(--accent-cyan)}.transformers-page .attention-token.key-token{cursor:default}.transformers-page .attention-token.high-attention{border-color:var(--accent-lime);background:#d4ff001a}.transformers-page .attention-weights-label{display:flex;justify-content:center;padding-left:50px}.transformers-page .attention-weights-label span{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.transformers-page .attention-arrows-section{display:flex;gap:.5rem;padding-left:58px}.transformers-page .attention-connection{flex:1;display:flex;flex-direction:column;align-items:center;gap:.2rem;transition:opacity .3s ease}.transformers-page .connection-bar{width:100%;background:var(--accent-lime);border-radius:3px;transition:height .2s ease}.transformers-page .attention-score{font-size:.7rem;color:var(--accent-lime);font-weight:600}.transformers-page .attention-explanation{text-align:center;padding:1rem;background:var(--bg-secondary);border-radius:8px;margin-top:.5rem}.transformers-page .attention-explanation p{font-size:.85rem;color:var(--text-secondary);margin:0}.transformers-page .attention-explanation strong{color:var(--accent-cyan)}.transformers-page .qkv-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.transformers-page .qkv-header{text-align:center;margin-bottom:1.5rem}.transformers-page .qkv-header h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.transformers-page .qkv-header p{font-size:.85rem;color:var(--text-secondary);margin:0}.transformers-page .qkv-diagram{display:flex;flex-direction:column;align-items:center;gap:.5rem}.transformers-page .input-embedding{margin-bottom:.5rem}.transformers-page .embedding-box{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;padding:.75rem 2rem;display:flex;flex-direction:column;align-items:center}.transformers-page .embedding-box .box-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase}.transformers-page .embedding-box .box-value{font-size:1.2rem;font-weight:600;font-style:italic;color:var(--text-primary)}.transformers-page .transform-arrows{height:60px}.transformers-page .arrows-svg{width:200px;height:60px}.transformers-page .transform-arrow{stroke:var(--text-muted);stroke-width:2;fill:none;marker-end:url(#arrowhead)}.transformers-page .qkv-matrices{display:flex;gap:1rem}.transformers-page .matrix-box{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;padding:1rem 1.25rem;display:flex;flex-direction:column;align-items:center;gap:.25rem;cursor:pointer;transition:all .2s ease}.transformers-page .matrix-box.query{border-color:var(--accent-cyan)}.transformers-page .matrix-box.query.active{background:#00e5ff1a}.transformers-page .matrix-box.key{border-color:var(--accent-orange)}.transformers-page .matrix-box.key.active{background:#ff9f431a}.transformers-page .matrix-box.value{border-color:var(--accent-lime)}.transformers-page .matrix-box.value.active{background:#d4ff001a}.transformers-page .matrix-name{font-size:.9rem;font-weight:600;color:var(--text-primary)}.transformers-page .matrix-formula{font-size:.8rem;font-family:monospace;color:var(--text-muted)}.transformers-page .matrix-question{font-size:.75rem;color:var(--text-secondary);font-style:italic;text-align:center}.transformers-page .attention-formula{margin-top:2rem;text-align:center}.transformers-page .attention-formula h5{font-size:.85rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem}.transformers-page .attention-formula .formula-box{background:#0000004d;border-radius:8px;padding:1rem;margin-bottom:.75rem}.transformers-page .attention-formula .formula{font-family:Times New Roman,serif;font-size:1.1rem;font-style:italic;color:var(--accent-cyan)}.transformers-page .formula-explanation{font-size:.85rem;color:var(--text-secondary);max-width:600px;margin:0 auto;line-height:1.6}.transformers-page .positional-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.transformers-page .positional-header{text-align:center;margin-bottom:1.5rem}.transformers-page .positional-header h4{font-size:1rem;font-weight:600;color:var(--accent-lime);margin:0 0 .5rem}.transformers-page .positional-header p{font-size:.85rem;color:var(--text-secondary);max-width:600px;margin:0 auto}.transformers-page .wave-chart-container{display:flex;justify-content:center;margin-bottom:1.5rem;background:#0003;border-radius:8px;padding:1rem}.transformers-page .wave-chart{width:100%;max-width:800px;height:auto}.transformers-page .wave-chart .grid-line{stroke:var(--border-color);stroke-width:1;opacity:.3}.transformers-page .wave-chart .zero-line{stroke:var(--text-muted);stroke-width:1;opacity:.5}.transformers-page .wave-chart .wave-path{stroke-linecap:round;stroke-linejoin:round}.transformers-page .wave-chart .axis-line{stroke:var(--text-muted);stroke-width:1}.transformers-page .wave-chart .axis-label{fill:var(--text-muted);font-size:11px;font-family:monospace}.transformers-page .wave-chart .axis-title{fill:var(--text-secondary);font-size:11px;text-transform:uppercase;letter-spacing:.03em}.transformers-page .wave-chart .legend-title{fill:var(--text-secondary);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.transformers-page .wave-chart .legend-label{fill:var(--text-secondary);font-size:12px;font-family:monospace}.transformers-page .encoding-insights{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.25rem;background:var(--bg-secondary);border-radius:8px}.transformers-page .insight-item{display:flex;gap:.75rem;align-items:flex-start}.transformers-page .insight-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#00e5ff26;border-radius:4px;font-size:.9rem;color:var(--accent-cyan);flex-shrink:0}.transformers-page .insight-text{font-size:.85rem;color:var(--text-secondary);line-height:1.5}.transformers-page .insight-text strong{color:var(--text-primary)}.transformers-page .encoding-formulas{display:flex;gap:2rem;justify-content:center;padding-top:1rem;border-top:1px solid var(--border-color)}.transformers-page .formula-item{display:flex;flex-direction:column;gap:.25rem}.transformers-page .formula-item .formula-label{font-size:.75rem;color:var(--text-muted)}.transformers-page .formula-item .formula{font-family:Times New Roman,serif;font-size:.9rem;font-style:italic;color:var(--text-primary)}.transformers-page .concept-box{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem 1.5rem;margin:1.5rem 0}.transformers-page .concept-box h4{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem;text-transform:uppercase;letter-spacing:.03em}.transformers-page .tokenization-types{display:flex;flex-direction:column;gap:.75rem}.transformers-page .token-type{display:grid;grid-template-columns:180px 1fr auto;gap:1rem;align-items:center;padding:.75rem 1rem;background:#0003;border-radius:6px}.transformers-page .token-type .type-name{font-size:.9rem;font-weight:500;color:var(--accent-cyan)}.transformers-page .token-type .type-desc{font-size:.85rem;color:var(--text-secondary)}.transformers-page .token-type .type-example{font-size:.8rem;font-family:monospace;color:var(--accent-orange);background:var(--bg-tertiary);padding:.25rem .5rem;border-radius:4px}.transformers-page .embedding-example{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.transformers-page .embedding-lookup{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;justify-content:center}.transformers-page .lookup-step{display:flex;flex-direction:column;align-items:center;gap:.25rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;padding:.75rem 1rem}.transformers-page .lookup-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase}.transformers-page .lookup-value{font-size:.95rem;font-weight:500;color:var(--text-primary)}.transformers-page .lookup-value.vector{font-family:monospace;font-size:.8rem;color:var(--accent-cyan)}.transformers-page .embedding-lookup .arrow{font-size:1.5rem;color:var(--text-muted)}.transformers-page .embedding-note{text-align:center;font-size:.8rem;color:var(--text-muted);margin:1rem 0 0}.transformers-page .note-box{background:#ff9f431a;border:1px solid rgba(255,159,67,.3);border-radius:8px;padding:1rem 1.25rem;margin:1.5rem 0;font-size:.9rem;color:var(--text-secondary)}.transformers-page .note-box strong{color:var(--accent-orange)}.transformers-page .attention-example{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.transformers-page .attention-example h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.transformers-page .example-text{font-size:1rem;color:var(--text-secondary);padding:.75rem 1rem;background:#0003;border-radius:6px;margin-bottom:1rem}.transformers-page .example-text strong{color:var(--accent-lime)}.transformers-page .attention-example>p{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin:0}.transformers-page .multihead-detailed-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.transformers-page .mh-step{margin-bottom:1.5rem}.transformers-page .mh-step:last-of-type{margin-bottom:1rem}.transformers-page .mh-step-label{font-size:.85rem;color:var(--text-secondary);margin-bottom:.75rem}.transformers-page .mh-step-label sup{color:var(--accent-lime)}.transformers-page .mh-heads-row{display:flex;gap:1rem;justify-content:center}.transformers-page .mh-head-output{display:flex;flex-direction:column;align-items:center;gap:.4rem}.transformers-page .mh-matrix-small{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;padding:4px;background:var(--bg-secondary);border:2px solid var(--accent-cyan);border-radius:4px}.transformers-page .mh-head-output:nth-child(1) .mh-matrix-small{border-color:#00e5ff}.transformers-page .mh-head-output:nth-child(2) .mh-matrix-small{border-color:#d4ff00}.transformers-page .mh-head-output:nth-child(3) .mh-matrix-small{border-color:#ff9f43}.transformers-page .mh-head-output:nth-child(4) .mh-matrix-small{border-color:#ff6b6b}.transformers-page .mh-cell{width:14px;height:14px;background:var(--accent-cyan);border-radius:2px}.transformers-page .mh-head-output:nth-child(1) .mh-cell{background:#00e5ff}.transformers-page .mh-head-output:nth-child(2) .mh-cell{background:#d4ff00}.transformers-page .mh-head-output:nth-child(3) .mh-cell{background:#ff9f43}.transformers-page .mh-head-output:nth-child(4) .mh-cell{background:#ff6b6b}.transformers-page .mh-head-label{font-size:.8rem;font-weight:500;color:var(--text-secondary)}.transformers-page .mh-concat-row{display:flex;flex-direction:column;align-items:center;gap:.5rem}.transformers-page .mh-concat-matrix{display:flex;gap:0;padding:4px;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:4px}.transformers-page .mh-concat-section{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;padding:2px}.transformers-page .mh-concat-section[data-head="0"] .mh-cell{background:#00e5ff}.transformers-page .mh-concat-section[data-head="1"] .mh-cell{background:#d4ff00}.transformers-page .mh-concat-section[data-head="2"] .mh-cell{background:#ff9f43}.transformers-page .mh-concat-section[data-head="3"] .mh-cell{background:#ff6b6b}.transformers-page .mh-concat-label{font-size:.8rem;color:var(--text-muted);font-family:monospace}.transformers-page .mh-projection-row{display:flex;justify-content:center}.transformers-page .mh-equation{display:flex;align-items:center;gap:.75rem}.transformers-page .mh-concat-matrix.small{padding:3px}.transformers-page .mh-concat-matrix.small .mh-concat-section{grid-template-columns:repeat(3,1fr);gap:1px;padding:1px}.transformers-page .mh-concat-matrix.small .mh-cell{width:8px;height:8px}.transformers-page .mh-operator{font-size:1.2rem;color:var(--text-muted);font-weight:300}.transformers-page .mh-weight-matrix{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;padding:4px;background:var(--bg-secondary);border:2px solid var(--accent-lime);border-radius:4px;position:relative}.transformers-page .mh-weight-matrix .mh-cell{width:10px;height:10px}.transformers-page .mh-cell.weight{background:var(--accent-lime)}.transformers-page .mh-weight-label{position:absolute;bottom:-20px;left:50%;transform:translate(-50%);font-size:.8rem;color:var(--accent-lime);font-weight:500;white-space:nowrap}.transformers-page .mh-output-matrix{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;padding:4px;background:var(--bg-secondary);border:2px solid var(--accent-cyan);border-radius:4px;position:relative}.transformers-page .mh-output-matrix .mh-cell{width:14px;height:14px}.transformers-page .mh-cell.output{background:linear-gradient(135deg,#00e5ff,#d4ff00,#ff9f43)}.transformers-page .mh-output-label{position:absolute;bottom:-20px;left:50%;transform:translate(-50%);font-size:.85rem;color:var(--accent-cyan);font-weight:600}.transformers-page .mh-explanation{margin-top:1.5rem;padding:1rem;background:var(--bg-secondary);border-radius:8px}.transformers-page .mh-explanation p{font-size:.85rem;color:var(--text-secondary);margin:0;line-height:1.6}.transformers-page .mh-explanation strong{color:var(--accent-cyan)}.transformers-page .residual-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.transformers-page .residual-diagram{display:flex;justify-content:center;margin-bottom:1.5rem}.transformers-page .residual-svg{width:100%;max-width:320px;height:auto}.transformers-page .residual-svg .input-box{fill:var(--bg-secondary);stroke:var(--accent-cyan);stroke-width:2}.transformers-page .residual-svg .output-box{fill:var(--bg-secondary);stroke:var(--accent-lime);stroke-width:2}.transformers-page .residual-svg .sublayer-box{fill:var(--bg-secondary);stroke:var(--accent-orange);stroke-width:2}.transformers-page .residual-svg .norm-box{fill:var(--bg-secondary);stroke:var(--text-muted);stroke-width:2}.transformers-page .residual-svg .box-text{font-size:13px;font-weight:500;text-anchor:middle}.transformers-page .residual-svg .input-text{fill:var(--accent-cyan)}.transformers-page .residual-svg .output-text{fill:var(--accent-lime)}.transformers-page .residual-svg .sublayer-text{fill:var(--accent-orange)}.transformers-page .residual-svg .sublayer-subtext{fill:var(--text-muted);font-size:10px;text-anchor:middle}.transformers-page .residual-svg .norm-text{fill:var(--text-secondary)}.transformers-page .residual-svg .add-circle{fill:var(--accent-lime)}.transformers-page .residual-svg .add-text{fill:var(--bg-primary);font-size:18px;font-weight:600;text-anchor:middle}.transformers-page .residual-svg .flow-line{stroke:var(--text-muted);stroke-width:2}.transformers-page .residual-svg .skip-line{stroke:var(--accent-lime);stroke-width:2;stroke-dasharray:6 3}.transformers-page .residual-svg .arrow-up,.transformers-page .residual-svg .arrow-right{fill:var(--text-muted)}.transformers-page .residual-svg .arrow-up-skip,.transformers-page .residual-svg .arrow-left-skip{fill:var(--accent-lime)}.transformers-page .residual-svg .skip-label{fill:var(--accent-lime);font-size:11px;font-weight:500}.transformers-page .residual-benefits{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.transformers-page .benefit-item{background:var(--bg-secondary);border-radius:8px;padding:1rem}.transformers-page .benefit-title{display:block;font-size:.9rem;font-weight:600;color:var(--accent-cyan);margin-bottom:.5rem}.transformers-page .benefit-item p{font-size:.85rem;color:var(--text-secondary);margin:0;line-height:1.5}.transformers-page .benefit-item code{background:#0000004d;padding:.15rem .4rem;border-radius:4px;font-size:.8rem;color:var(--accent-lime)}@media (max-width: 600px){.transformers-page .residual-benefits{grid-template-columns:1fr}}.transformers-page .ffn-visual-enhanced{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.transformers-page .ffn-diagram-enhanced{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:1.5rem}.transformers-page .ffn-column{display:flex;flex-direction:column;align-items:center;gap:.5rem}.transformers-page .ffn-neurons{display:flex;flex-direction:column;gap:4px;padding:8px;background:var(--bg-secondary);border-radius:8px;border:2px solid var(--border-color)}.transformers-page .ffn-neurons.small{border-color:var(--accent-cyan)}.transformers-page .ffn-neurons.large{border-color:var(--accent-orange);background:#ff9f431a}.transformers-page .neuron{width:24px;height:8px;border-radius:4px;background:var(--accent-cyan)}.transformers-page .ffn-neurons.large .neuron{background:var(--accent-orange)}.transformers-page .col-label{font-size:.8rem;font-weight:500;color:var(--text-primary)}.transformers-page .col-dim{font-size:.7rem;color:var(--text-muted);font-family:monospace}.transformers-page .hidden-col .col-dim{color:var(--accent-orange)}.transformers-page .ffn-transform{display:flex;flex-direction:column;align-items:center;gap:.25rem}.transformers-page .transform-lines{width:60px;height:80px}.transformers-page .transform-lines svg{width:100%;height:100%}.transformers-page .transform-line{fill:none;stroke:var(--text-muted);stroke-width:1.5;opacity:.5}.transformers-page .transform-label{font-size:.7rem;color:var(--text-muted);font-family:monospace}.transformers-page .ffn-formula{text-align:center;padding:.75rem 1rem;background:#0003;border-radius:6px;margin-bottom:1rem}.transformers-page .ffn-formula .formula{font-family:Times New Roman,serif;font-size:1rem;font-style:italic;color:var(--accent-cyan)}.transformers-page .ffn-insights{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.transformers-page .ffn-insight{background:var(--bg-secondary);border-radius:8px;padding:1rem}.transformers-page .insight-title{display:block;font-size:.85rem;font-weight:600;color:var(--accent-orange);margin-bottom:.5rem}.transformers-page .ffn-insight p{font-size:.8rem;color:var(--text-secondary);margin:0;line-height:1.5}@media (max-width: 600px){.transformers-page .ffn-diagram-enhanced{flex-wrap:wrap;gap:1rem}.transformers-page .ffn-insights{grid-template-columns:1fr}.transformers-page .transform-lines{transform:rotate(90deg);width:40px;height:60px}}.transformers-page .layers-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.transformers-page .layer-stack{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1.5rem}.transformers-page .stack-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;padding:.5rem 2rem;font-size:.85rem;color:var(--text-secondary);width:200px;text-align:center}.transformers-page .stack-item.input{border-color:var(--accent-cyan);color:var(--accent-cyan)}.transformers-page .stack-item.output{border-color:var(--accent-lime);color:var(--accent-lime)}.transformers-page .stack-item.ellipsis{background:transparent;border:none;color:var(--text-muted)}.transformers-page .layer-counts{display:flex;gap:2rem;justify-content:center}.transformers-page .model-count{display:flex;flex-direction:column;align-items:center;gap:.25rem}.transformers-page .model-name{font-size:.85rem;font-weight:500;color:var(--text-primary)}.transformers-page .model-count .count{font-size:.8rem;color:var(--accent-cyan)}.transformers-page .output-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin:1.5rem 0}.transformers-page .output-pipeline-enhanced{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-bottom:1.5rem;flex-wrap:wrap;padding:.5rem}.transformers-page .pipeline-stage{display:flex;flex-direction:column;align-items:center;gap:.4rem}.transformers-page .stage-visual{display:flex;gap:3px;padding:8px 10px;background:var(--bg-secondary);border-radius:6px;border:2px solid var(--border-color)}.transformers-page .stage-visual .vec-bar{width:6px;height:32px;border-radius:3px;background:var(--accent-cyan)}.transformers-page .stage-visual.hidden-vec{border-color:var(--accent-cyan)}.transformers-page .stage-visual.logits-vec{border-color:var(--accent-orange)}.transformers-page .stage-visual.logits-vec .vec-bar{background:var(--accent-orange)}.transformers-page .stage-visual.probs-vec{border-color:var(--accent-lime)}.transformers-page .stage-visual.probs-vec .vec-bar{background:var(--accent-lime)}.transformers-page .stage-label{font-size:.8rem;font-weight:500;color:var(--text-primary)}.transformers-page .stage-dim{font-size:.7rem;font-family:monospace;color:var(--text-muted)}.transformers-page .stage-note{font-size:.65rem;color:var(--text-muted)}.transformers-page .pipeline-arrow-op{display:flex;flex-direction:column;align-items:center;gap:.15rem;min-width:80px}.transformers-page .arrow-line{font-size:1.5rem;color:var(--text-muted);line-height:1}.transformers-page .arrow-op-label{font-size:.8rem;font-weight:500;color:var(--text-primary);background:var(--bg-secondary);padding:.2rem .5rem;border-radius:4px;border:1px solid var(--border-color)}.transformers-page .arrow-op-label.softmax-label{border-color:var(--accent-lime);color:var(--accent-lime)}.transformers-page .arrow-op-dim{font-size:.65rem;color:var(--text-muted);font-family:monospace}.transformers-page .arrow-op-formula{font-size:.7rem;color:var(--accent-lime);font-style:italic}.transformers-page .prediction-example{background:var(--bg-secondary);border-radius:8px;padding:1rem 1.25rem}.transformers-page .example-input{display:block;font-size:.85rem;color:var(--text-muted);margin-bottom:.75rem}.transformers-page .example-outputs{display:flex;gap:.5rem;flex-wrap:wrap}.transformers-page .output-token{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;padding:.4rem .6rem;font-size:.85rem;color:var(--text-secondary)}.transformers-page .output-token span{color:var(--text-muted);font-size:.75rem;margin-left:.25rem}.transformers-page .output-token.high{border-color:var(--accent-lime);background:#d4ff001a;color:var(--accent-lime)}.transformers-page .output-token.low{opacity:.5}@media (max-width: 750px){.transformers-page .transformer-flow-visual .visual-content{flex-direction:column}.transformers-page .transformer-flow-visual .step-controls{position:static;width:100%;order:-1;margin-bottom:1rem}.transformers-page .impact-cards{grid-template-columns:1fr}.transformers-page .multihead-visual{flex-direction:column}.transformers-page .heads-container{flex-wrap:wrap;justify-content:center}.transformers-page .ffn-diagram{flex-direction:column}.transformers-page .ffn-arrow{transform:rotate(90deg)}.transformers-page .token-type{grid-template-columns:1fr;gap:.5rem}.transformers-page .embedding-lookup{flex-direction:column}.transformers-page .embedding-lookup .arrow{transform:rotate(90deg)}.transformers-page .qkv-matrices{flex-direction:column}.transformers-page .encoding-formulas{flex-direction:column;gap:1rem;align-items:center}.transformers-page .wave-chart-container{padding:.5rem}}@media (max-width: 768px){.transformers-page .content-section{padding:1.5rem}.transformers-page .content-section h2{font-size:1.2rem}.transformers-page .output-pipeline{flex-direction:column}.transformers-page .pipeline-arrow{transform:rotate(90deg)}.transformers-page .layer-counts{flex-direction:column;gap:1rem}}.llm-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem;max-width:1000px}.llm-page .content-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem}.llm-page .content-section h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.llm-page .content-section>p{font-size:.95rem;line-height:1.75;color:var(--text-secondary);margin:0 0 1.5rem}.llm-page .content-section>p strong{color:var(--text-primary)}.llm-page .intro-section{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(0,229,255,.05) 100%)}.llm-page .pipeline-overview{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1.5rem;flex-wrap:wrap}.llm-page .pipeline-stage{display:flex;align-items:center;gap:.75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1rem 1.25rem}.llm-page .stage-number{width:32px;height:32px;border-radius:50%;background:var(--accent-cyan);color:var(--bg-primary);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem;flex-shrink:0}.llm-page .stage-content h4{margin:0 0 .25rem;font-size:.95rem;font-weight:600;color:var(--text-primary)}.llm-page .stage-content p{margin:0;font-size:.8rem;color:var(--text-muted)}.llm-page .pipeline-arrow{font-size:1.5rem;color:var(--text-muted)}.llm-page .pretrain-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin-bottom:1.5rem}.llm-page .pretrain-objective h4{font-size:.95rem;font-weight:600;color:var(--accent-cyan);margin:0 0 1rem;text-align:center}.llm-page .next-token-demo{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.llm-page .context-tokens{display:flex;gap:.5rem}.llm-page .token{padding:.5rem .75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;font-family:monospace;font-size:.9rem;color:var(--text-primary)}.llm-page .token.predicted{background:#d4ff0026;border-color:var(--accent-lime);color:var(--accent-lime)}.llm-page .prediction-arrow{font-size:1.5rem;color:var(--accent-lime)}.llm-page .predicted-token{display:flex;flex-direction:column;align-items:center;gap:.25rem}.llm-page .prediction-label{font-size:.7rem;color:var(--accent-lime);text-transform:uppercase}.llm-page .objective-note{font-size:.85rem;color:var(--text-secondary);text-align:center;margin:0}.llm-page .pretrain-components{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.llm-page .component-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem;text-align:center}.llm-page .component-card .card-icon{font-size:1.5rem;margin-bottom:.5rem}.llm-page .component-card h4{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.llm-page .component-card p{font-size:.8rem;color:var(--text-secondary);margin:0;line-height:1.5}.llm-page .note-box{background:#ff9f431a;border:1px solid rgba(255,159,67,.3);border-radius:8px;padding:1rem 1.25rem;font-size:.9rem;color:var(--text-secondary);line-height:1.6}.llm-page .note-box strong{color:var(--accent-orange)}.llm-page .post-training-stages{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:1.5rem}.llm-page .pt-stage{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem}.llm-page .pt-stage-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.llm-page .pt-stage-num{width:28px;height:28px;border-radius:50%;background:var(--accent-orange);color:var(--bg-primary);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.75rem}.llm-page .pt-stage-header h4{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary)}.llm-page .pt-stage-content p{font-size:.9rem;color:var(--text-secondary);margin:0 0 1rem;line-height:1.6}.llm-page .sft-visual-enhanced{background:var(--bg-secondary);border-radius:10px;padding:1.5rem;margin-top:1rem}.llm-page .sft-header{text-align:center;margin-bottom:1.5rem}.llm-page .sft-header h4{font-size:1rem;font-weight:600;color:var(--accent-cyan);margin:0}.llm-page .sft-mechanism-view{display:flex;flex-direction:column;gap:1.25rem}.llm-page .mechanism-objective{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1rem;text-align:center}.llm-page .objective-formula{display:flex;flex-direction:column;align-items:center;gap:.5rem}.llm-page .formula-label{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase}.llm-page .formula{font-family:Times New Roman,serif;font-size:1.25rem;color:var(--accent-cyan)}.llm-page .formula sub{font-size:.7em}.llm-page .formula-desc{font-size:.8rem;color:var(--text-secondary)}.llm-page .token-sequence-container{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.llm-page .sequence-section{margin-bottom:.75rem}.llm-page .sequence-section:last-child{margin-bottom:0}.llm-page .section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.llm-page .section-label{font-size:.75rem;font-weight:600;color:var(--text-muted)}.llm-page .token-row{display:flex;flex-wrap:wrap;gap:.35rem}.llm-page .token-box{position:relative;padding:.35rem .5rem;border-radius:4px;font-family:monospace;font-size:.8rem;transition:all .2s ease}.llm-page .token-box.masked{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-muted);opacity:.6}.llm-page .token-box.trainable{background:#d4ff001a;border:1px solid rgba(212,255,0,.3);color:var(--text-primary);cursor:pointer}.llm-page .token-box.trainable:hover,.llm-page .token-box.trainable.highlighted{background:#d4ff0040;border-color:var(--accent-lime);transform:translateY(-2px)}.llm-page .sequence-divider{display:flex;align-items:center;justify-content:center;padding:.5rem 0}.llm-page .sequence-divider span{font-size:.7rem;color:var(--accent-lime);font-weight:600}.llm-page .hover-instruction{margin-top:.5rem;font-size:.8rem;color:var(--text-muted);font-style:italic}.llm-page .prediction-detail{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.llm-page .prediction-context{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color);flex-wrap:wrap}.llm-page .context-label,.llm-page .target-label{font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase}.llm-page .context-tokens{background:var(--bg-secondary);border-radius:4px;padding:.25rem .5rem}.llm-page .context-text{font-family:monospace;font-size:.8rem;color:var(--text-secondary)}.llm-page .predict-arrow{font-size:1rem;color:var(--accent-cyan);font-weight:700}.llm-page .target-section{display:flex;align-items:center;gap:.35rem}.llm-page .target-token{font-family:monospace;font-weight:600;color:var(--accent-lime);background:#d4ff0026;padding:.2rem .5rem;border-radius:4px}.llm-page .prediction-probs{display:flex;flex-direction:column;gap:.4rem;margin-bottom:.75rem}.llm-page .probs-header{font-size:.75rem;font-weight:600;color:var(--text-muted);margin-bottom:.25rem}.llm-page .prob-item{display:flex;align-items:center;gap:.5rem}.llm-page .prob-item.correct .prob-token{color:var(--accent-lime)}.llm-page .prob-token{font-family:monospace;font-size:.8rem;color:var(--text-secondary);width:70px;flex-shrink:0}.llm-page .prob-bar-container{flex:1;height:10px;background:var(--bg-secondary);border-radius:5px;overflow:hidden}.llm-page .prob-bar{height:100%;background:linear-gradient(90deg,var(--accent-cyan),var(--accent-lime));border-radius:5px;transition:width .3s ease}.llm-page .prob-value{font-size:.75rem;color:var(--text-muted);width:35px;text-align:right}.llm-page .correct-indicator{font-size:.7rem;color:var(--accent-lime);margin-left:.25rem}.llm-page .loss-calculation{display:flex;align-items:center;gap:.5rem;padding-top:.75rem;border-top:1px solid var(--border-color);flex-wrap:wrap}.llm-page .loss-label{font-size:.75rem;color:var(--text-muted)}.llm-page .loss-formula{font-family:monospace;font-size:.8rem;color:var(--accent-orange)}.llm-page .loss-note{font-size:.7rem;color:var(--text-muted);font-style:italic}.llm-page .sft-process-diagram{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem}.llm-page .process-title{font-size:.85rem;font-weight:600;color:var(--text-primary);margin-bottom:1.25rem;text-align:center}.llm-page .process-sequence{display:flex;flex-direction:column;align-items:center;gap:.75rem}.llm-page .sequence-tokens-row{display:flex;align-items:stretch;gap:1rem;width:100%;justify-content:center}.llm-page .token-group{display:flex;flex-direction:column;align-items:center;padding:.75rem 1rem;border-radius:8px;min-width:160px}.llm-page .token-group.prompt-group{background:#6464641a;border:1px dashed var(--border-color)}.llm-page .token-group.response-group{background:#d4ff0014;border:1px solid rgba(212,255,0,.3)}.llm-page .group-label{font-size:.75rem;font-weight:600;margin-bottom:.5rem}.llm-page .prompt-group .group-label{color:var(--text-muted)}.llm-page .response-group .group-label{color:var(--accent-lime)}.llm-page .group-tokens{display:flex;gap:.25rem;margin-bottom:.4rem}.llm-page .seq-token{padding:.2rem .4rem;border-radius:3px;font-family:monospace;font-size:.7rem}.llm-page .seq-token.masked{background:var(--bg-secondary);color:var(--text-muted);opacity:.6}.llm-page .seq-token.active{background:#d4ff0033;color:var(--accent-lime)}.llm-page .group-note{font-size:.65rem;color:var(--text-muted);font-style:italic}.llm-page .sequence-separator{color:var(--border-color);font-size:1.5rem;display:flex;align-items:center}.llm-page .process-arrow-down{display:flex;flex-direction:column;align-items:center;padding:.5rem 0}.llm-page .process-arrow-down:before{content:"▼";color:var(--accent-cyan);font-size:.8rem;margin-bottom:.25rem}.llm-page .process-arrow-down span{font-size:.75rem;color:var(--accent-cyan);font-weight:500}.llm-page .token-training-flow{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap;padding:.75rem;background:var(--bg-secondary);border-radius:8px;width:100%;max-width:600px}.llm-page .training-flow-item{flex-shrink:0}.llm-page .flow-item-box{padding:.5rem .75rem;border-radius:6px;text-align:center;min-width:90px}.llm-page .flow-item-label{font-size:.65rem;font-weight:600;text-transform:uppercase;margin-bottom:.2rem}.llm-page .flow-item-content{font-size:.75rem}.llm-page .flow-item-box.context-box{background:var(--bg-primary);border:1px solid var(--border-color)}.llm-page .flow-item-box.context-box .flow-item-label{color:var(--text-muted)}.llm-page .flow-item-box.context-box .flow-item-content{color:var(--text-secondary)}.llm-page .flow-item-box.model-box{background:#00e5ff26;border:1px solid var(--accent-cyan)}.llm-page .flow-item-box.model-box .flow-item-label{color:var(--accent-cyan)}.llm-page .flow-item-box.model-box .flow-item-content{color:var(--text-primary)}.llm-page .flow-item-box.compare-box{background:var(--bg-primary);border:1px solid var(--accent-lime)}.llm-page .flow-item-box.compare-box .flow-item-label{color:var(--accent-lime)}.llm-page .flow-item-box.compare-box .flow-item-content{color:var(--text-secondary)}.llm-page .flow-item-box.loss-box{background:#ff9f4326;border:1px solid var(--accent-orange)}.llm-page .flow-item-box.loss-box .flow-item-label{color:var(--accent-orange)}.llm-page .flow-item-box.loss-box .flow-item-content{color:var(--text-primary);font-family:monospace}.llm-page .training-flow-arrow{color:var(--text-muted);font-size:1.1rem}.llm-page .weight-update-row{display:flex;align-items:center;gap:1rem;padding:.6rem 1rem;background:#d4ff001a;border:1px solid rgba(212,255,0,.3);border-radius:6px;flex-wrap:wrap;justify-content:center}.llm-page .update-formula{font-family:Times New Roman,serif;font-size:.9rem;color:var(--text-primary)}.llm-page .update-formula sub{font-size:.7em}.llm-page .update-result{font-size:.8rem;color:var(--accent-lime)}.llm-page .sft-examples-section{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border-color)}.llm-page .sft-examples-section h5{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.llm-page .examples-intro{font-size:.85rem;color:var(--text-secondary);margin:0 0 1rem}.llm-page .examples-grid-horizontal{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.llm-page .example-card-compact{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:.75rem 1rem;transition:all .2s ease}.llm-page .example-card-compact:hover{border-color:var(--accent-cyan)}.llm-page .example-type-badge{display:inline-block;font-size:.65rem;font-weight:600;color:var(--accent-orange);background:#ff9f4326;padding:.15rem .35rem;border-radius:3px;margin-bottom:.4rem}.llm-page .example-content{display:flex;flex-direction:column;gap:.25rem}.llm-page .example-prompt-mini,.llm-page .example-response-mini{display:flex;gap:.4rem;font-size:.75rem;line-height:1.4}.llm-page .example-prompt-mini span:last-child,.llm-page .example-response-mini span:last-child{color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.llm-page .role-tag{font-weight:600;flex-shrink:0}.llm-page .role-tag.human{color:var(--accent-cyan)}.llm-page .role-tag.assistant{color:var(--accent-lime)}.llm-page .sft-insight{background:#00e5ff1a;border:1px solid rgba(0,229,255,.3);border-radius:6px;padding:.75rem 1rem;font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin-top:1rem}.llm-page .sft-insight strong{color:var(--accent-cyan)}.llm-page .sft-insight em{color:var(--text-primary);font-style:normal;font-weight:500}.llm-page .rlhf-visual-enhanced{background:var(--bg-secondary);border-radius:10px;padding:1.5rem;margin-top:1rem}.llm-page .rlhf-header{text-align:center;margin-bottom:1.5rem}.llm-page .rlhf-header h4{font-size:1rem;font-weight:600;color:var(--accent-lime);margin:0 0 .25rem}.llm-page .rlhf-header p{font-size:.85rem;color:var(--text-muted);margin:0}.llm-page .rlhf-steps-nav{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.llm-page .step-nav-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-muted);cursor:pointer;transition:all .2s ease}.llm-page .step-nav-btn:disabled{cursor:not-allowed;opacity:.5}.llm-page .step-nav-btn.active{border-color:var(--accent-lime);color:var(--text-primary)}.llm-page .step-nav-btn.current{background:#d4ff001a}.llm-page .step-nav-btn .step-num{width:20px;height:20px;border-radius:50%;background:var(--border-color);color:var(--text-muted);display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600}.llm-page .step-nav-btn.active .step-num{background:var(--accent-lime);color:var(--bg-primary)}.llm-page .step-nav-btn .step-name{font-size:.8rem}.llm-page .step-connector{width:30px;height:2px;background:var(--border-color)}.llm-page .rlhf-step-content.step-1{display:flex;flex-direction:column;gap:1rem}.llm-page .comparison-prompt{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.llm-page .comparison-prompt .prompt-label{font-size:.75rem;font-weight:600;color:var(--accent-cyan);text-transform:uppercase;display:block;margin-bottom:.25rem}.llm-page .comparison-prompt p{font-size:.9rem;color:var(--text-primary);margin:0}.llm-page .comparison-instruction{text-align:center;font-size:.85rem;color:var(--text-muted)}.llm-page .comparison-responses{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.llm-page .response-option{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:8px;padding:1rem;text-align:left;cursor:pointer;transition:all .2s ease}.llm-page .response-option:hover:not(:disabled){border-color:var(--accent-lime);transform:translateY(-2px)}.llm-page .response-option.selected{border-color:var(--accent-lime);background:#d4ff000d}.llm-page .response-option.not-selected{opacity:.5}.llm-page .response-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.llm-page .response-label{font-size:.8rem;font-weight:600;color:var(--text-muted)}.llm-page .selected-badge{font-size:.75rem;font-weight:600;color:var(--accent-lime);background:#d4ff0026;padding:.2rem .5rem;border-radius:4px}.llm-page .response-option p{font-size:.85rem;color:var(--text-secondary);margin:0;line-height:1.5}.llm-page .preference-recorded{text-align:center;padding:.75rem;background:#d4ff001a;border-radius:6px;font-size:.85rem;color:var(--accent-lime)}.llm-page .rlhf-step-content.step-2{display:flex;flex-direction:column;gap:1rem}.llm-page .reward-model-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem}.llm-page .rm-explanation{text-align:center;margin-bottom:1.25rem}.llm-page .rm-explanation p{font-size:.9rem;color:var(--text-secondary);margin:0;line-height:1.6}.llm-page .rm-explanation strong{color:var(--accent-lime)}.llm-page .rm-process{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:1.25rem}.llm-page .rm-input,.llm-page .rm-output{text-align:center}.llm-page .rm-input-label,.llm-page .rm-output-label{font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;margin-bottom:.25rem}.llm-page .rm-input-content,.llm-page .rm-output-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;padding:.5rem .75rem}.llm-page .mini-prompt,.llm-page .score-label{font-size:.8rem;color:var(--text-primary)}.llm-page .rm-arrow{display:flex;flex-direction:column;align-items:center}.llm-page .rm-arrow-label{font-size:.7rem;font-weight:600;color:var(--accent-lime);margin-top:-.25rem}.llm-page .rm-scores{display:flex;flex-direction:column;gap:.75rem;padding-bottom:1.25rem}.llm-page .rm-score-item{display:flex;align-items:center;gap:.75rem;position:relative}.llm-page .score-response{font-size:.8rem;color:var(--text-secondary);width:90px;flex-shrink:0}.llm-page .score-bar-container{flex:1;height:12px;background:var(--bg-secondary);border-radius:6px;overflow:hidden}.llm-page .score-bar{height:100%;background:linear-gradient(90deg,var(--accent-cyan),var(--accent-lime));border-radius:6px;transition:width .5s ease}.llm-page .score-value{font-size:.85rem;font-weight:600;color:var(--text-primary);width:40px}.llm-page .preferred-indicator{position:absolute;right:0;top:100%;margin-top:.25rem;font-size:.75rem;color:var(--accent-lime);white-space:nowrap}.llm-page .continue-btn,.llm-page .reset-btn{align-self:center;padding:.5rem 1.25rem;border-radius:6px;border:1px solid var(--accent-cyan);background:transparent;color:var(--accent-cyan);font-size:.85rem;cursor:pointer;transition:all .2s ease}.llm-page .continue-btn:hover,.llm-page .reset-btn:hover{background:var(--accent-cyan);color:var(--bg-primary)}.llm-page .rlhf-step-content.step-3{display:flex;flex-direction:column;gap:1rem}.llm-page .rl-optimization-visual{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem}.llm-page .rl-explanation{text-align:center;font-size:.9rem;color:var(--text-secondary);margin:0 0 1.25rem;line-height:1.6}.llm-page .rl-explanation strong{color:var(--accent-cyan)}.llm-page .rl-loop{display:flex;align-items:center;justify-content:center;gap:.25rem;flex-wrap:wrap;margin-bottom:1.25rem;position:relative;padding-bottom:2rem}.llm-page .rl-loop-item{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem;background:var(--bg-secondary);border-radius:8px;min-width:120px}.llm-page .rl-loop-item .loop-icon{font-size:1.5rem}.llm-page .rl-loop-item span:not(.loop-icon){font-size:.75rem;color:var(--text-secondary);text-align:center}.llm-page .loop-arrow{flex-shrink:0}.llm-page .loop-arrow-back{position:absolute;bottom:0;left:50%;transform:translate(-50%)}.llm-page .rl-result{display:flex;align-items:center;justify-content:center;gap:1rem}.llm-page .result-before,.llm-page .result-after{flex:1;max-width:250px;padding:.75rem 1rem;border-radius:8px;text-align:center}.llm-page .result-before{background:#ff64641a;border:1px solid rgba(255,100,100,.3)}.llm-page .result-after{background:#d4ff001a;border:1px solid rgba(212,255,0,.3)}.llm-page .result-label{display:block;font-size:.75rem;font-weight:600;text-transform:uppercase;margin-bottom:.25rem}.llm-page .result-before .result-label{color:#ff6b6b}.llm-page .result-after .result-label{color:var(--accent-lime)}.llm-page .result-before p,.llm-page .result-after p{font-size:.8rem;color:var(--text-secondary);margin:0}.llm-page .result-arrow{font-size:1.25rem;color:var(--text-muted)}.llm-page .rlhf-insight{background:#d4ff001a;border:1px solid rgba(212,255,0,.3);border-radius:6px;padding:.75rem 1rem;font-size:.85rem;color:var(--text-secondary);line-height:1.5;margin-top:1rem}.llm-page .rlhf-insight strong{color:var(--accent-lime)}.llm-page .rlhf-insight em{color:var(--text-primary);font-style:normal;font-weight:500}.llm-page .alternatives-box{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem}.llm-page .alternatives-box h4{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.llm-page .alternatives-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.llm-page .alternative{background:var(--bg-secondary);border-radius:8px;padding:.75rem 1rem}.llm-page .alternative strong{display:block;font-size:.85rem;color:var(--accent-cyan);margin-bottom:.25rem}.llm-page .alternative p{font-size:.8rem;color:var(--text-secondary);margin:0;line-height:1.5}.llm-page .finetuning-types{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.llm-page .ft-type{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem}.llm-page .ft-type h4{font-size:.95rem;font-weight:600;color:var(--accent-cyan);margin:0 0 .5rem}.llm-page .ft-type>p{font-size:.85rem;color:var(--text-secondary);margin:0 0 1rem;line-height:1.5}.llm-page .ft-visual{display:flex;flex-direction:column;gap:4px}.llm-page .ft-visual .layer{padding:.5rem;border-radius:4px;font-size:.75rem;text-align:center}.llm-page .ft-visual.full .layer.active{background:#d4ff0033;border:1px solid var(--accent-lime);color:var(--accent-lime)}.llm-page .ft-visual .layer.frozen{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-muted)}.llm-page .ft-visual .layer.adapter{background:#00e5ff26;border:1px solid var(--accent-cyan);color:var(--accent-cyan)}.llm-page .ft-visual .layer.prompt-embed{background:#ff9f4326;border:1px solid var(--accent-orange);color:var(--accent-orange)}.llm-page .finetuning-uses{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem}.llm-page .finetuning-uses h4{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.llm-page .use-cases-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.llm-page .use-case{display:flex;flex-direction:column;align-items:center;text-align:center;padding:.75rem;background:var(--bg-secondary);border-radius:8px}.llm-page .use-icon{font-size:1.25rem;margin-bottom:.25rem}.llm-page .use-name{font-size:.8rem;font-weight:500;color:var(--text-primary)}.llm-page .use-desc{font-size:.7rem;color:var(--text-muted)}.llm-page .alignment-goals{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.llm-page .goal-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem;text-align:center}.llm-page .goal-card.helpful{border-color:var(--accent-cyan)}.llm-page .goal-card.harmless{border-color:var(--accent-orange)}.llm-page .goal-card.honest{border-color:var(--accent-lime)}.llm-page .goal-icon{font-size:1.5rem;margin-bottom:.5rem}.llm-page .goal-card h4{font-size:1rem;font-weight:600;margin:0 0 .5rem}.llm-page .goal-card.helpful h4{color:var(--accent-cyan)}.llm-page .goal-card.harmless h4{color:var(--accent-orange)}.llm-page .goal-card.honest h4{color:var(--accent-lime)}.llm-page .goal-card p{font-size:.85rem;color:var(--text-secondary);margin:0;line-height:1.5}.llm-page .alignment-challenges{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem;margin-bottom:1.5rem}.llm-page .alignment-challenges h4{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.llm-page .challenges-list{display:flex;flex-direction:column;gap:.75rem}.llm-page .challenge{display:grid;grid-template-columns:150px 1fr;gap:1rem;padding:.75rem 1rem;background:var(--bg-secondary);border-radius:8px}.llm-page .challenge-name{font-weight:600;font-size:.85rem;color:var(--accent-cyan)}.llm-page .challenge-desc{font-size:.85rem;color:var(--text-secondary)}.llm-page .alignment-techniques{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.25rem}.llm-page .alignment-techniques h4{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.llm-page .techniques-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.llm-page .technique{background:var(--bg-secondary);border-radius:8px;padding:.75rem 1rem}.llm-page .technique strong{display:block;font-size:.8rem;color:var(--text-primary);margin-bottom:.25rem}.llm-page .technique p{font-size:.75rem;color:var(--text-muted);margin:0}.llm-page .complete-pipeline{display:flex;flex-direction:column;gap:1rem}.llm-page .pipeline-item{background:var(--bg-primary);border:1px solid var(--accent-cyan);border-radius:10px;padding:1.25rem}.llm-page .pipeline-item.optional{border-style:dashed;opacity:.8}.llm-page .pipeline-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.llm-page .pipeline-num{width:28px;height:28px;border-radius:50%;background:var(--accent-cyan);color:var(--bg-primary);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.85rem}.llm-page .pipeline-title{font-size:1rem;font-weight:600;color:var(--text-primary)}.llm-page .pipeline-details{display:flex;gap:1rem;margin-bottom:.75rem;flex-wrap:wrap}.llm-page .pipeline-details .detail{font-size:.8rem;color:var(--text-secondary);padding:.25rem .5rem;background:var(--bg-secondary);border-radius:4px}.llm-page .pipeline-output{font-size:.85rem;font-weight:500;color:var(--accent-lime)}@media (max-width: 768px){.llm-page .content-section{padding:1.5rem}.llm-page .pretrain-components,.llm-page .finetuning-types,.llm-page .alignment-goals{grid-template-columns:1fr}.llm-page .alternatives-grid,.llm-page .use-cases-grid,.llm-page .techniques-grid{grid-template-columns:repeat(2,1fr)}.llm-page .pipeline-overview{flex-direction:column}.llm-page .pipeline-arrow{transform:rotate(90deg)}.llm-page .challenge{grid-template-columns:1fr;gap:.25rem}.llm-page .token-row{gap:.25rem}.llm-page .sequence-tokens-row{flex-direction:column;gap:.5rem}.llm-page .sequence-separator{display:none}.llm-page .token-group{min-width:auto;width:100%}.llm-page .token-training-flow{flex-direction:column;gap:.25rem}.llm-page .training-flow-arrow{transform:rotate(90deg)}.llm-page .weight-update-row{flex-direction:column;text-align:center}.llm-page .token-box{padding:.25rem .4rem;font-size:.75rem}.llm-page .prob-item{flex-wrap:wrap}.llm-page .prob-token{width:50px}.llm-page .examples-grid-horizontal{grid-template-columns:1fr}.llm-page .rlhf-steps-nav{flex-direction:column;gap:.5rem}.llm-page .step-connector{width:2px;height:20px}.llm-page .comparison-responses{grid-template-columns:1fr}.llm-page .rm-process{flex-direction:column}.llm-page .rm-arrow{transform:rotate(90deg)}.llm-page .preferred-indicator{right:auto;left:50%;transform:translate(-50%)}.llm-page .rl-loop{flex-direction:column;gap:.5rem;padding-bottom:0}.llm-page .loop-arrow{transform:rotate(90deg)}.llm-page .loop-arrow-back{display:none}.llm-page .rl-result{flex-direction:column}.llm-page .result-arrow{transform:rotate(90deg)}.llm-page .result-before,.llm-page .result-after{max-width:100%}}.llm-robotics-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem;max-width:1000px}.llm-robotics-page .content-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem}.llm-robotics-page .content-section h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.llm-robotics-page .content-section>p{font-size:.95rem;line-height:1.75;color:var(--text-secondary);margin:0 0 1.5rem}.llm-robotics-page .content-section>p strong{color:var(--text-primary)}.llm-robotics-page .intro-section{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(0,229,255,.05) 100%)}.llm-robotics-page .paradigm-shift{display:flex;align-items:stretch;gap:1.5rem;justify-content:center;flex-wrap:wrap}.llm-robotics-page .paradigm-card{flex:1;min-width:250px;max-width:350px;padding:1.25rem;border-radius:10px}.llm-robotics-page .paradigm-card.old{background:#9696961a;border:1px dashed var(--border-color)}.llm-robotics-page .paradigm-card.new{background:#00e5ff1a;border:1px solid var(--accent-cyan)}.llm-robotics-page .paradigm-label{font-size:.8rem;font-weight:600;text-transform:uppercase;margin-bottom:.75rem}.llm-robotics-page .paradigm-card.old .paradigm-label{color:var(--text-muted)}.llm-robotics-page .paradigm-card.new .paradigm-label{color:var(--accent-cyan)}.llm-robotics-page .paradigm-content{display:flex;flex-direction:column;gap:.4rem}.llm-robotics-page .paradigm-item{font-size:.85rem;color:var(--text-secondary);padding:.25rem 0}.llm-robotics-page .paradigm-card.old .paradigm-item:before{content:"✗ ";color:#ff6b6b}.llm-robotics-page .paradigm-card.new .paradigm-item:before{content:"✓ ";color:var(--accent-lime)}.llm-robotics-page .paradigm-arrow{display:flex;align-items:center;font-size:2rem;color:var(--text-muted)}.llm-robotics-page .planning-approaches{margin-bottom:1.5rem}.llm-robotics-page .planning-approaches h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.llm-robotics-page .approaches-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.llm-robotics-page .approach-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.llm-robotics-page .approach-icon{font-size:1.5rem;margin-bottom:.5rem}.llm-robotics-page .approach-name{font-size:.9rem;font-weight:600;color:var(--accent-cyan);margin-bottom:.35rem}.llm-robotics-page .approach-card p{font-size:.8rem;color:var(--text-secondary);margin:0 0 .5rem;line-height:1.4}.llm-robotics-page .approach-example{background:var(--bg-secondary);border-radius:4px;padding:.4rem .6rem}.llm-robotics-page .example-label{font-size:.65rem;color:var(--text-muted);display:block;margin-bottom:.15rem}.llm-robotics-page .approach-example code{font-size:.7rem;color:var(--accent-lime)}.llm-robotics-page .task-decomposition-demo{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem}.llm-robotics-page .demo-header{text-align:center;margin-bottom:1.25rem}.llm-robotics-page .demo-header h4{font-size:1rem;font-weight:600;color:var(--accent-cyan);margin:0 0 .25rem}.llm-robotics-page .demo-header p{font-size:.85rem;color:var(--text-muted);margin:0}.llm-robotics-page .task-selector{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;flex-wrap:wrap}.llm-robotics-page .selector-label{font-size:.8rem;color:var(--text-muted)}.llm-robotics-page .task-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.llm-robotics-page .task-btn{font-size:.75rem;padding:.4rem .75rem;border-radius:4px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.llm-robotics-page .task-btn:hover{border-color:var(--accent-cyan)}.llm-robotics-page .task-btn.active{background:var(--accent-cyan);border-color:var(--accent-cyan);color:var(--bg-primary)}.llm-robotics-page .decomposition-flow{display:flex;flex-direction:column;align-items:center;gap:.5rem}.llm-robotics-page .flow-stage{width:100%;max-width:500px}.llm-robotics-page .stage-label{font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;margin-bottom:.4rem}.llm-robotics-page .goal-box{display:flex;align-items:center;gap:.75rem;background:#00e5ff1a;border:1px solid var(--accent-cyan);border-radius:8px;padding:.75rem 1rem}.llm-robotics-page .user-icon{font-size:1.25rem}.llm-robotics-page .goal-text{font-size:.9rem;color:var(--text-primary);font-style:italic}.llm-robotics-page .flow-arrow{display:flex;flex-direction:column;align-items:center;padding:.25rem 0}.llm-robotics-page .arrow-line{width:2px;height:15px;background:var(--accent-cyan)}.llm-robotics-page .arrow-label{font-size:.7rem;color:var(--accent-cyan);margin:.25rem 0}.llm-robotics-page .arrow-head{color:var(--accent-cyan);font-size:.8rem}.llm-robotics-page .subtasks-list{display:flex;flex-direction:column;gap:.5rem}.llm-robotics-page .subtask-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:all .2s ease}.llm-robotics-page .subtask-item:hover{border-color:var(--accent-lime)}.llm-robotics-page .subtask-item.expanded{border-color:var(--accent-lime);background:#d4ff000d}.llm-robotics-page .subtask-header{display:flex;align-items:center;gap:.5rem;padding:.6rem .75rem}.llm-robotics-page .subtask-num{width:22px;height:22px;border-radius:50%;background:var(--accent-lime);color:var(--bg-primary);display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600;flex-shrink:0}.llm-robotics-page .subtask-name{flex:1;font-size:.85rem;color:var(--text-primary)}.llm-robotics-page .expand-icon{color:var(--text-muted);font-size:1rem}.llm-robotics-page .subtask-actions{padding:0 .75rem .75rem;margin-left:30px}.llm-robotics-page .actions-label{font-size:.7rem;color:var(--text-muted);margin-bottom:.25rem}.llm-robotics-page .actions-code{font-family:monospace;font-size:.75rem;color:var(--accent-cyan);background:var(--bg-primary);border-radius:4px;padding:.5rem;margin:0;overflow-x:auto}.llm-robotics-page .demo-insight{margin-top:1rem;padding:.75rem 1rem;background:#00e5ff1a;border:1px solid rgba(0,229,255,.3);border-radius:6px;font-size:.85rem;color:var(--text-secondary)}.llm-robotics-page .demo-insight strong{color:var(--accent-cyan)}.llm-robotics-page .grounding-problem{margin-bottom:1.5rem}.llm-robotics-page .problem-statement{display:flex;align-items:flex-start;gap:.75rem;background:#ff9f431a;border:1px solid rgba(255,159,67,.3);border-radius:8px;padding:1rem}.llm-robotics-page .problem-icon{font-size:1.25rem;flex-shrink:0}.llm-robotics-page .problem-text{font-size:.9rem;color:var(--text-secondary);line-height:1.5}.llm-robotics-page .problem-text strong{color:var(--accent-orange)}.llm-robotics-page .grounding-visualization{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem;margin-bottom:1.5rem}.llm-robotics-page .grounding-header{text-align:center;margin-bottom:1.25rem}.llm-robotics-page .grounding-header h4{font-size:1rem;font-weight:600;color:var(--accent-lime);margin:0 0 .25rem}.llm-robotics-page .grounding-header p{font-size:.85rem;color:var(--text-muted);margin:0}.llm-robotics-page .grounding-flow{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.llm-robotics-page .grounding-stage{text-align:center;padding:.75rem;min-width:100px}.llm-robotics-page .grounding-stage .stage-icon{font-size:1.5rem;margin-bottom:.25rem}.llm-robotics-page .grounding-stage .stage-title{font-size:.8rem;font-weight:600;color:var(--text-primary);margin-bottom:.15rem}.llm-robotics-page .grounding-stage .stage-desc{font-size:.7rem;color:var(--text-muted)}.llm-robotics-page .grounding-arrow{font-size:1.25rem;color:var(--text-muted)}.llm-robotics-page .affordance-demo{background:var(--bg-secondary);border-radius:8px;padding:1rem}.llm-robotics-page .affordance-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.llm-robotics-page .affordance-item{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:all .2s ease}.llm-robotics-page .affordance-item:hover{border-color:var(--accent-cyan)}.llm-robotics-page .affordance-item.selected{border-color:var(--accent-cyan);background:#00e5ff0d}.llm-robotics-page .action-text{flex:1;font-size:.85rem;color:var(--text-primary)}.llm-robotics-page .action-score{display:flex;align-items:center;gap:.5rem;width:120px}.llm-robotics-page .score-bar-bg{flex:1;height:8px;background:var(--bg-secondary);border-radius:4px;overflow:hidden}.llm-robotics-page .affordance-item.feasible .score-bar-fill{height:100%;background:var(--accent-lime);border-radius:4px}.llm-robotics-page .affordance-item.infeasible .score-bar-fill{height:100%;background:#ff6b6b;border-radius:4px}.llm-robotics-page .score-value{font-size:.75rem;color:var(--text-muted);width:30px}.llm-robotics-page .action-verdict{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700}.llm-robotics-page .action-verdict.yes{background:#d4ff0033;color:var(--accent-lime)}.llm-robotics-page .action-verdict.no{background:#ff646433;color:#ff6b6b}.llm-robotics-page .affordance-explanation{padding:.6rem .75rem;background:var(--bg-primary);border-radius:6px;font-size:.8rem;color:var(--text-secondary)}.llm-robotics-page .affordance-explanation strong{color:var(--text-primary)}.llm-robotics-page .grounding-solutions h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem}.llm-robotics-page .solutions-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.llm-robotics-page .solution-item{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;padding:.75rem}.llm-robotics-page .solution-name{display:block;font-size:.85rem;font-weight:600;color:var(--accent-cyan);margin-bottom:.25rem}.llm-robotics-page .solution-desc{font-size:.8rem;color:var(--text-secondary)}.llm-robotics-page .hri-capabilities{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem}.llm-robotics-page .hri-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1rem}.llm-robotics-page .hri-icon{font-size:1.5rem;margin-bottom:.5rem}.llm-robotics-page .hri-card h4{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 .35rem}.llm-robotics-page .hri-card p{font-size:.8rem;color:var(--text-secondary);margin:0 0 .5rem;line-height:1.4}.llm-robotics-page .hri-examples{display:flex;flex-direction:column;gap:.25rem}.llm-robotics-page .hri-examples span{font-size:.75rem;color:var(--text-muted);font-style:italic}.llm-robotics-page .dialogue-demo{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;padding:1.5rem}.llm-robotics-page .dialogue-header{text-align:center;margin-bottom:1.25rem}.llm-robotics-page .dialogue-header h4{font-size:1rem;font-weight:600;color:var(--accent-orange);margin:0 0 .25rem}.llm-robotics-page .dialogue-header p{font-size:.85rem;color:var(--text-muted);margin:0}.llm-robotics-page .dialogue-container{background:var(--bg-secondary);border-radius:8px;padding:1rem}.llm-robotics-page .dialogue-messages{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem;max-height:350px;overflow-y:auto}.llm-robotics-page .message{display:flex;gap:.75rem}.llm-robotics-page .message.human,.llm-robotics-page .message.robot{flex-direction:row}.llm-robotics-page .message-avatar{font-size:1.25rem;flex-shrink:0}.llm-robotics-page .message-content{flex:1;background:var(--bg-primary);border-radius:8px;padding:.6rem .75rem}.llm-robotics-page .message.human .message-content{border:1px solid var(--accent-cyan)}.llm-robotics-page .message.robot .message-content{border:1px solid var(--accent-lime)}.llm-robotics-page .message-speaker{font-size:.7rem;font-weight:600;text-transform:uppercase;margin-bottom:.2rem}.llm-robotics-page .message.human .message-speaker{color:var(--accent-cyan)}.llm-robotics-page .message.robot .message-speaker{color:var(--accent-lime)}.llm-robotics-page .message-text{font-size:.85rem;color:var(--text-primary);line-height:1.4}.llm-robotics-page .message-type-badge{display:inline-block;font-size:.65rem;padding:.15rem .4rem;border-radius:3px;margin-top:.35rem}.llm-robotics-page .message-type-badge.clarification{background:#ff9f4326;color:var(--accent-orange)}.llm-robotics-page .message-type-badge.confirmation{background:#00e5ff26;color:var(--accent-cyan)}.llm-robotics-page .message-type-badge.completion{background:#d4ff0026;color:var(--accent-lime)}.llm-robotics-page .dialogue-controls{display:flex;justify-content:center}.llm-robotics-page .dialogue-btn{padding:.5rem 1.25rem;border-radius:6px;font-size:.85rem;cursor:pointer;transition:all .2s ease}.llm-robotics-page .dialogue-btn.next{background:var(--accent-cyan);border:1px solid var(--accent-cyan);color:var(--bg-primary)}.llm-robotics-page .dialogue-btn.next:hover{background:transparent;color:var(--accent-cyan)}.llm-robotics-page .dialogue-btn.reset{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.llm-robotics-page .dialogue-btn.reset:hover{border-color:var(--accent-cyan);color:var(--text-primary)}.llm-robotics-page .dialogue-insight{margin-top:1rem;padding:.75rem 1rem;background:#ff9f431a;border:1px solid rgba(255,159,67,.3);border-radius:6px;font-size:.85rem;color:var(--text-secondary)}.llm-robotics-page .dialogue-insight strong{color:var(--accent-orange)}.llm-robotics-page .challenges-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.llm-robotics-page .challenge-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem}.llm-robotics-page .challenge-icon{font-size:1.5rem;margin-bottom:.5rem}.llm-robotics-page .challenge-card h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.llm-robotics-page .challenge-card p{font-size:.85rem;color:var(--text-secondary);margin:0 0 .75rem;line-height:1.5}.llm-robotics-page .mitigation{font-size:.8rem;color:var(--text-muted);padding-top:.5rem;border-top:1px solid var(--border-color)}.llm-robotics-page .mitigation strong{color:var(--accent-lime)}.llm-robotics-page .systems-list{display:flex;flex-direction:column;gap:.75rem}.llm-robotics-page .system-item{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1rem;display:flex;gap:1rem;align-items:flex-start}.llm-robotics-page .system-name{font-size:.9rem;font-weight:600;color:var(--accent-cyan);min-width:150px;flex-shrink:0}.llm-robotics-page .system-desc{font-size:.85rem;color:var(--text-secondary);line-height:1.5}@media (max-width: 768px){.llm-robotics-page .content-section{padding:1.5rem}.llm-robotics-page .paradigm-shift{flex-direction:column}.llm-robotics-page .paradigm-arrow{transform:rotate(90deg)}.llm-robotics-page .paradigm-card{max-width:100%}.llm-robotics-page .approaches-grid{grid-template-columns:1fr}.llm-robotics-page .grounding-flow{flex-direction:column}.llm-robotics-page .grounding-arrow{transform:rotate(90deg)}.llm-robotics-page .solutions-list,.llm-robotics-page .hri-capabilities,.llm-robotics-page .challenges-grid{grid-template-columns:1fr}.llm-robotics-page .system-item{flex-direction:column;gap:.5rem}.llm-robotics-page .system-name{min-width:auto}}.vlm-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem;max-width:1000px}.vlm-page .content-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem}.vlm-page .content-section h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.vlm-page .content-section>p{font-size:.95rem;line-height:1.75;color:var(--text-secondary);margin:0 0 1.5rem}.vlm-page .content-section>p strong{color:var(--text-primary)}.vlm-page .intro-section{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(0,229,255,.05) 100%)}.vlm-page .intro-comparison{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1.5rem}.vlm-page .comparison-item{background:var(--bg-primary);border-radius:10px;padding:1.5rem;border:1px solid var(--border-color)}.vlm-page .comparison-item h4{margin-bottom:1rem;font-size:.95rem;font-weight:600}.vlm-page .comparison-flow{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.vlm-page .flow-item{background:var(--bg-secondary);padding:.4rem .75rem;border-radius:6px;font-size:.85rem}.vlm-page .flow-item.result{background:var(--accent-cyan);color:var(--bg-primary);font-style:italic;max-width:100%}.vlm-page .comparison-item.vlm .flow-item.result{font-size:.8rem;padding:.5rem .75rem}.vlm-page .flow-arrow{color:var(--text-muted)}.vlm-page .comparison-item p{color:var(--text-muted);font-size:.85rem;margin:0}.vlm-page .architectures-container{display:flex;flex-direction:column;gap:1.5rem}.vlm-page .architecture-card{background:var(--bg-primary);border-radius:10px;padding:1.5rem;border:1px solid var(--border-color)}.vlm-page .arch-header{margin-bottom:1.5rem}.vlm-page .arch-header h4{margin-bottom:.5rem;color:var(--text-primary);font-size:1rem;font-weight:600}.vlm-page .arch-header p{color:var(--text-secondary);font-size:.9rem;margin:0}.vlm-page .arch-interactive{display:flex;flex-direction:row;gap:1.5rem;margin-bottom:1.5rem;align-items:flex-start}.vlm-page .arch-interactive .contrastive-diagram,.vlm-page .arch-interactive .generative-diagram{flex:1;min-width:0}.vlm-page .encoder-branch,.vlm-page .similarity-section,.vlm-page .gen-stage{opacity:.4;transition:opacity .3s,transform .3s}.vlm-page .encoder-branch.active,.vlm-page .similarity-section.active,.vlm-page .gen-stage.active,.vlm-page .encoder-branch.highlight,.vlm-page .similarity-section.highlight{opacity:1}.vlm-page .encoder-branch.highlight .branch-input{box-shadow:0 0 0 2px var(--accent-lime),0 0 12px #d4ff004d;background:#d4ff0026}.vlm-page .branch-encoder.highlight{box-shadow:0 0 0 2px var(--accent-lime),0 0 12px #d4ff004d;background:var(--accent-lime)!important;color:var(--bg-primary)!important}.vlm-page .branch-embedding.highlight{box-shadow:0 0 0 2px var(--accent-lime),0 0 12px #d4ff004d;background:#d4ff0026}.vlm-page .similarity-section.highlight .similarity-box{box-shadow:0 0 0 2px var(--accent-lime),0 0 12px #d4ff004d;transform:scale(1.02)}.vlm-page .gen-item.highlight{box-shadow:0 0 0 2px var(--accent-lime),0 0 12px #d4ff004d!important}.vlm-page .gen-item.image-input.highlight,.vlm-page .gen-item.text-input.highlight{background:#d4ff0026}.vlm-page .gen-item.vision-encoder.highlight,.vlm-page .gen-item.projection.highlight,.vlm-page .gen-item.tokenizer.highlight,.vlm-page .gen-item.llm-box.highlight{background:var(--accent-lime)!important;color:var(--bg-primary)!important}.vlm-page .gen-item.visual-tokens-box.highlight,.vlm-page .gen-item.text-tokens-box.highlight,.vlm-page .gen-item.combined-tokens.highlight{background:#d4ff0026}.vlm-page .gen-item.response-box.highlight{background:var(--accent-lime)!important;color:var(--bg-primary)!important}.vlm-page .branch-arrow{opacity:.3;transition:opacity .3s}.vlm-page .branch-arrow.active{opacity:1}.vlm-page .embedding-dim{display:block;font-size:.7rem;color:var(--text-muted);font-weight:400;margin-top:.25rem}.vlm-page .step-explanation{flex-shrink:0;width:280px;background:var(--bg-secondary);border-radius:8px;padding:1.25rem;border:1px solid var(--border-color);position:sticky;top:100px}.vlm-page .step-header{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.vlm-page .step-number{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.vlm-page .step-title{font-weight:600;color:var(--accent-cyan);font-size:1rem}.vlm-page .step-description{color:var(--text-secondary);font-size:.85rem;line-height:1.6;margin:0 0 1rem}.vlm-page .step-controls{display:flex;align-items:center;gap:.5rem;margin-top:.5rem}.vlm-page .step-btn{padding:.4rem .75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);font-size:.8rem;cursor:pointer;transition:all .2s;flex:1}.vlm-page .step-btn:hover:not(:disabled){border-color:var(--accent-cyan);color:var(--accent-cyan)}.vlm-page .step-btn:disabled{opacity:.4;cursor:not-allowed}.vlm-page .step-dots{display:flex;gap:.35rem;justify-content:center;flex-wrap:wrap;margin-bottom:.75rem}.vlm-page .step-dot{width:8px;height:8px;border-radius:50%;background:var(--bg-primary);border:2px solid var(--border-color);cursor:pointer;transition:all .2s}.vlm-page .step-dot:hover{border-color:var(--accent-cyan)}.vlm-page .step-dot.completed{background:var(--accent-cyan);border-color:var(--accent-cyan)}.vlm-page .step-dot.active{background:var(--accent-cyan);border-color:var(--accent-cyan);transform:scale(1.2)}.vlm-page .contrastive-diagram{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.5rem;background:var(--bg-secondary);border-radius:8px}.vlm-page .encoder-branch{display:flex;flex-direction:column;align-items:center;gap:.5rem;flex:1}.vlm-page .branch-input{font-size:1.1rem;padding:.5rem 1rem;background:var(--bg-primary);border-radius:8px;border:1px solid var(--border-color)}.vlm-page .branch-arrow{color:var(--text-muted);font-size:1.25rem}.vlm-page .branch-encoder{background:var(--accent-cyan);color:var(--bg-primary);padding:.75rem 1rem;border-radius:8px;text-align:center;font-weight:500;display:flex;flex-direction:column;gap:.25rem}.vlm-page .encoder-detail{font-size:.75rem;opacity:.8;font-weight:400}.vlm-page .branch-embedding{background:var(--bg-primary);padding:.5rem 1rem;border-radius:8px;font-size:.85rem;border:2px dashed var(--border-color)}.vlm-page .similarity-section{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding-top:4rem}.vlm-page .similarity-arrows{display:flex;gap:1rem;font-size:1.5rem;color:var(--text-muted)}.vlm-page .similarity-box{background:var(--accent-lime);color:var(--bg-primary);padding:.75rem 1rem;border-radius:8px;text-align:center}.vlm-page .similarity-label{font-weight:500;font-size:.9rem;margin-bottom:.25rem}.vlm-page .similarity-formula{font-family:Courier New,monospace;font-size:.75rem;opacity:.9}.vlm-page .generative-diagram{background:var(--bg-secondary);border-radius:8px;padding:1.5rem}.vlm-page .gen-flow-dual{display:flex;flex-direction:column;align-items:center;gap:.75rem}.vlm-page .gen-parallel-paths{display:flex;gap:2rem;justify-content:center;width:100%}.vlm-page .gen-path{display:flex;flex-direction:column;align-items:center;gap:.5rem;flex:1;max-width:180px;opacity:.4;transition:opacity .3s}.vlm-page .gen-path.active{opacity:1}.vlm-page .gen-merge{opacity:.4;transition:opacity .3s}.vlm-page .gen-merge.active{opacity:1}.vlm-page .merge-arrows{display:flex;gap:3rem;font-size:1.5rem;color:var(--text-muted)}.vlm-page .gen-unified-path{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:100%}.vlm-page .gen-unified-path .gen-item{opacity:.4;transition:opacity .3s}.vlm-page .gen-unified-path .gen-item.active{opacity:1}.vlm-page .gen-arrow{color:var(--text-muted);font-size:1.25rem;opacity:.4;transition:opacity .3s}.vlm-page .gen-arrow.active{opacity:1}.vlm-page .gen-arrow.long-arrow{display:flex;flex-direction:column;align-items:center;gap:0}.vlm-page .gen-arrow.long-arrow .arrow-line{width:2px;height:75px;background:var(--text-muted)}.vlm-page .gen-arrow.long-arrow .arrow-head{margin-top:-4px}.vlm-page .gen-item{background:var(--bg-primary);padding:.75rem 1rem;border-radius:8px;text-align:center;display:flex;flex-direction:column;gap:.25rem;border:1px solid var(--border-color);transition:all .3s}.vlm-page .gen-item.image-input,.vlm-page .gen-item.text-input{font-size:.85rem}.vlm-page .gen-item.text-input{font-style:italic}.vlm-page .visual-tokens-box,.vlm-page .text-tokens-box{background:var(--bg-primary);padding:.5rem;border-radius:8px;border:1px solid var(--border-color)}.vlm-page .mini-tokens{display:flex;gap:.25rem;justify-content:center;margin-bottom:.25rem}.vlm-page .mini-tokens .token{padding:.2rem .4rem;font-size:.7rem}.vlm-page .combined-tokens{padding:.75rem 1rem}.vlm-page .gen-item.vision-encoder,.vlm-page .gen-item.projection,.vlm-page .gen-item.llm-box{background:var(--accent-cyan);color:var(--bg-primary);font-weight:500;border:none}.vlm-page .gen-item.tokenizer{background:var(--accent-lavender);color:var(--bg-primary);border:none}.vlm-page .tokens-stage{flex-direction:column;align-items:center}.vlm-page .token-sequence{display:flex;gap:.25rem;flex-wrap:wrap;justify-content:center}.vlm-page .token{padding:.3rem .5rem;border-radius:4px;font-size:.8rem;font-family:monospace}.vlm-page .token.visual-token{background:var(--accent-orange);color:var(--bg-primary)}.vlm-page .token.text-token{background:var(--accent-lavender);color:var(--bg-primary)}.vlm-page .token-label{font-size:.8rem;color:var(--text-muted);margin-top:.5rem}.vlm-page .gen-item.response-box{background:var(--accent-lime);color:var(--bg-primary);font-style:italic;max-width:400px;border:none}.vlm-page .arch-details{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.vlm-page .arch-examples strong,.vlm-page .arch-strengths strong{display:block;margin-bottom:.5rem;color:var(--text-primary);font-size:.9rem}.vlm-page .example-tags{display:flex;gap:.5rem;flex-wrap:wrap}.vlm-page .example-tag{background:var(--bg-secondary);padding:.3rem .75rem;border-radius:20px;font-size:.85rem;color:var(--text-secondary)}.vlm-page .arch-strengths ul{list-style:none;padding:0;margin:0}.vlm-page .arch-strengths li{padding:.3rem 0;color:var(--text-secondary);font-size:.9rem}.vlm-page .arch-strengths li:before{content:"✓";color:var(--accent-lime);margin-right:.5rem}.vlm-page .scene-understanding-demo{background:var(--bg-primary);border-radius:10px;overflow:hidden;border:1px solid var(--border-color)}.vlm-page .understanding-tabs{display:flex;border-bottom:1px solid var(--border-color)}.vlm-page .understanding-tab{flex:1;padding:.75rem;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;font-size:.9rem;transition:all .2s}.vlm-page .understanding-tab:hover{background:var(--bg-secondary)}.vlm-page .understanding-tab.active{background:var(--bg-secondary);color:var(--accent-cyan);font-weight:500}.vlm-page .understanding-content{padding:1.5rem}.vlm-page .understanding-content h4{margin-bottom:1rem;color:var(--text-primary);font-size:.95rem;font-weight:600}.vlm-page .objects-list{display:flex;flex-direction:column;gap:.75rem}.vlm-page .object-item{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem;background:var(--bg-secondary);border-radius:8px}.vlm-page .object-info{display:flex;flex-direction:column;gap:.25rem}.vlm-page .object-info .object-label{font-weight:500;color:var(--text-primary)}.vlm-page .object-position{font-size:.8rem;color:var(--text-muted)}.vlm-page .confidence-bar{width:120px;height:24px;background:var(--bg-primary);border-radius:4px;position:relative;overflow:hidden}.vlm-page .confidence-fill{height:100%;background:var(--accent-cyan);border-radius:4px;transition:width .3s}.vlm-page .confidence-value{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:.75rem;font-weight:500;color:var(--text-primary)}.vlm-page .spatial-list{display:flex;flex-direction:column;gap:.5rem}.vlm-page .spatial-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--bg-secondary);border-radius:8px}.vlm-page .spatial-icon{font-size:1.25rem}.vlm-page .spatial-relation{color:var(--text-secondary)}.vlm-page .properties-list{display:flex;flex-direction:column;gap:.75rem}.vlm-page .property-item{display:flex;align-items:center;gap:1rem;padding:.75rem;background:var(--bg-secondary);border-radius:8px}.vlm-page .property-object{font-weight:500;color:var(--text-primary);min-width:80px}.vlm-page .property-tags{display:flex;gap:.5rem;flex-wrap:wrap}.vlm-page .property-tag{background:var(--accent-cyan);color:var(--bg-primary);padding:.2rem .6rem;border-radius:12px;font-size:.75rem}.vlm-page .understanding-note{margin-top:1.5rem;padding:1rem;background:var(--bg-primary);border-radius:8px;border-left:3px solid var(--accent-cyan);color:var(--text-secondary);font-size:.9rem}.vlm-page .visual-grounding-demo{background:var(--bg-primary);border-radius:10px;padding:1.5rem;border:1px solid var(--border-color)}.vlm-page .grounding-header{margin-bottom:1.5rem}.vlm-page .grounding-header h4{margin-bottom:.5rem;color:var(--text-primary);font-size:.95rem;font-weight:600}.vlm-page .grounding-header p{color:var(--text-secondary);font-size:.9rem;margin:0}.vlm-page .grounding-content{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.vlm-page .scene-container{display:flex;flex-direction:column;gap:.5rem}.vlm-page .scene-image-wrapper{position:relative;border-radius:8px;overflow:hidden;background:var(--bg-secondary)}.vlm-page .scene-photo{display:block;width:100%;height:auto;object-fit:cover}.vlm-page .bounding-box{position:absolute;border:2px solid transparent;border-radius:4px;transition:all .3s;pointer-events:none}.vlm-page .bounding-box.highlighted{border-color:var(--accent-cyan);box-shadow:0 0 0 2px var(--accent-cyan),0 0 20px #00e5ff80;background:#00e5ff26;z-index:10}.vlm-page .bbox-label{position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%);background:var(--accent-cyan);color:var(--bg-primary);padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;white-space:nowrap}.vlm-page .scene-image-wrapper:has(img[src=""]),.vlm-page .scene-image-wrapper:has(img:not([src])){aspect-ratio:4/3;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center}.vlm-page .desk-surface{position:absolute;bottom:0;left:0;right:0;height:60%;background:#4a3f2f;border-top:3px solid #6b5b43}} .vlm-page .scene-caption{text-align:center;font-size:.85rem;color:var(--text-muted)}.vlm-page .query-section{display:flex;flex-direction:column;gap:.75rem}.vlm-page .query-label{font-size:.9rem;color:var(--text-secondary);font-weight:500}.vlm-page .query-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.vlm-page .query-btn{padding:.5rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:20px;color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s}.vlm-page .query-btn:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}.vlm-page .query-btn.active{background:var(--accent-cyan);border-color:var(--accent-cyan);color:var(--bg-primary)}.vlm-page .query-results{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;padding:.75rem;background:var(--bg-secondary);border-radius:8px}.vlm-page .results-label{font-size:.85rem;color:var(--text-muted)}.vlm-page .result-item{padding:.25rem .6rem;background:var(--accent-cyan);color:var(--bg-primary);border-radius:4px;font-size:.8rem;font-weight:500}.vlm-page .query-results strong{display:block;margin-bottom:.5rem;color:var(--text-primary);font-size:.9rem}.vlm-page .query-results ul{list-style:none;padding:0;margin:0}.vlm-page .query-results li{padding:.25rem 0;color:var(--accent-lime)}.vlm-page .no-results{color:var(--text-muted);font-style:italic;margin:0}.vlm-page .grounding-insight{margin-top:1.5rem;padding:1rem;background:var(--bg-secondary);border-radius:8px;color:var(--text-secondary);font-size:.9rem;border-left:3px solid var(--accent-lime)}.vlm-page .pipeline-diagram{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:1.5rem;background:var(--bg-primary);border-radius:10px;margin-bottom:1.5rem;overflow-x:auto;border:1px solid var(--border-color)}.vlm-page .pipeline-stage{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;background:var(--bg-secondary);border-radius:8px;min-width:100px;text-align:center}.vlm-page .pipeline-stage.highlighted{background:var(--accent-cyan);color:var(--bg-primary)}.vlm-page .pipeline-stage.highlighted .stage-desc{color:#000000b3}.vlm-page .pipeline-stage .stage-icon{font-size:1.5rem}.vlm-page .pipeline-stage .stage-label{font-weight:500;font-size:.9rem}.vlm-page .pipeline-stage .stage-desc{font-size:.75rem;color:var(--text-muted);max-width:120px}.vlm-page .pipeline-arrow{color:var(--text-muted);font-size:1.25rem;flex-shrink:0}.vlm-page .pipeline-details{background:var(--bg-primary);border-radius:10px;padding:1.5rem;border:1px solid var(--border-color)}.vlm-page .pipeline-details h4{margin-bottom:1rem;color:var(--text-primary);font-size:.95rem;font-weight:600}.vlm-page .provides-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.vlm-page .provides-item{display:flex;gap:.75rem;padding:1rem;background:var(--bg-secondary);border-radius:8px}.vlm-page .provides-icon{font-size:1.5rem}.vlm-page .provides-item strong{display:block;margin-bottom:.25rem;color:var(--text-primary)}.vlm-page .provides-item p{margin:0;font-size:.85rem;color:var(--text-muted)}.vlm-page .challenges-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.vlm-page .challenge-card{background:var(--bg-primary);border-radius:10px;padding:1.25rem;border:1px solid var(--border-color)}.vlm-page .challenge-icon{font-size:1.5rem;margin-bottom:.75rem}.vlm-page .challenge-card h4{margin-bottom:.5rem;color:var(--text-primary);font-size:.95rem;font-weight:600}.vlm-page .challenge-card p{color:var(--text-secondary);font-size:.9rem;margin:0;line-height:1.5}@media (max-width: 768px){.vlm-page .content-section{padding:1.5rem}.vlm-page .intro-comparison{grid-template-columns:1fr}.vlm-page .contrastive-diagram{flex-direction:column;gap:1rem}.vlm-page .similarity-section{padding-top:0;flex-direction:row}.vlm-page .similarity-arrows{transform:rotate(90deg)}.vlm-page .arch-details,.vlm-page .grounding-content{grid-template-columns:1fr}.vlm-page .pipeline-diagram{flex-wrap:wrap;justify-content:center}.vlm-page .provides-grid,.vlm-page .challenges-grid{grid-template-columns:1fr}.vlm-page .gen-parallel-paths{flex-direction:column;gap:1.5rem}.vlm-page .gen-path{max-width:100%}.vlm-page .merge-arrows{flex-direction:column;gap:.5rem}.vlm-page .arch-interactive{flex-direction:column}.vlm-page .step-explanation{position:static;width:100%;order:-1}}.vla-page .content-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem;margin-bottom:2rem}.vla-page .content-section h2{font-size:1.5rem;margin-bottom:1rem;color:var(--text-primary)}.vla-page .content-section h3{font-size:1.2rem;margin:1.5rem 0 1rem;color:var(--text-primary)}.vla-page .content-section p{color:var(--text-secondary);line-height:1.7;margin-bottom:1rem}.vla-page .key-insight{background:var(--bg-tertiary);border-left:3px solid var(--accent-cyan);padding:1rem 1.25rem;border-radius:0 8px 8px 0;margin:1.5rem 0}.vla-page .key-insight strong{color:var(--accent-cyan)}.vla-page .approach-comparison{display:flex;gap:1rem;align-items:center;margin-top:1.5rem}.vla-page .approach-card{flex:1;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;transition:all .3s}.vla-page .approach-card.hovered{border-color:var(--accent-cyan);box-shadow:0 0 20px #00e5ff1a}.vla-page .approach-card h4{font-size:1.1rem;margin-bottom:1rem;color:var(--text-primary)}.vla-page .vs-divider{font-size:1rem;font-weight:600;color:var(--text-muted);padding:0 .5rem}.vla-page .pipeline-flow{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem;padding:1rem;background:var(--bg-secondary);border-radius:8px}.vla-page .pipeline-step{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem;font-size:.8rem;color:var(--text-secondary)}.vla-page .pipeline-step .step-icon{font-size:1.25rem}.vla-page .pipeline-step.vla-step{background:var(--accent-cyan);color:var(--bg-primary);border-radius:8px;padding:.75rem 1rem}.vla-page .flow-arrow{color:var(--text-muted);font-size:1rem}.vla-page .approach-traits{list-style:none;padding:0;margin:0}.vla-page .approach-traits li{padding:.4rem 0;font-size:.85rem;color:var(--text-secondary);border-bottom:1px solid var(--border-color)}.vla-page .approach-traits li:last-child{border-bottom:none}.vla-page .vla-architecture{display:flex;gap:2rem;margin-top:1.5rem}.vla-page .arch-diagram{flex:1;background:var(--bg-tertiary);border-radius:12px;padding:1.5rem}.vla-page .vla-flow{display:flex;flex-direction:column;align-items:center;gap:.5rem}.vla-page .vla-stage{width:100%;opacity:.4;transition:opacity .3s}.vla-page .vla-stage.active{opacity:1}.vla-page .stage-row{display:flex;gap:1rem;justify-content:center}.vla-page .vla-input{display:flex;align-items:center;gap:.5rem;background:var(--bg-secondary);padding:.75rem 1rem;border-radius:8px;border:1px solid var(--border-color);transition:all .3s}.vla-page .vla-stage.highlight .vla-input{border-color:var(--accent-lime);box-shadow:0 0 0 2px var(--accent-lime),0 0 12px #d4ff004d}.vla-page .input-icon{font-size:1.25rem}.vla-page .input-label{font-size:.85rem;color:var(--text-secondary)}.vla-page .vla-input.text-input .input-label{font-style:italic}.vla-page .vla-encoder{display:flex;flex-direction:column;align-items:center;gap:.25rem;background:var(--accent-cyan);color:var(--bg-primary);padding:.75rem 1.25rem;border-radius:8px;transition:all .3s}.vla-page .vla-encoder.highlight{box-shadow:0 0 0 2px var(--accent-lime),0 0 12px #d4ff004d;background:var(--accent-lime)}.vla-page .encoder-label{font-weight:500;font-size:.9rem}.vla-page .encoder-type{font-size:.75rem;opacity:.8}.vla-page .fusion-box{display:flex;flex-direction:column;align-items:center;gap:.5rem;background:var(--accent-lavender);color:var(--bg-primary);padding:1rem 1.5rem;border-radius:8px;width:fit-content;margin:0 auto;transition:all .3s}.vla-page .vla-stage.highlight .fusion-box{box-shadow:0 0 0 2px var(--accent-lime),0 0 12px #d4ff004d}.vla-page .fusion-label{font-weight:500;font-size:.9rem}.vla-page .token-mix{display:flex;align-items:center;gap:.25rem}.vla-page .token{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;font-size:.75rem;font-weight:600}.vla-page .vis-token{background:#0003}.vla-page .txt-token{background:#fff3}.vla-page .token-sep{font-size:.9rem;margin:0 .25rem}.vla-page .fusion-detail{font-size:.75rem;opacity:.8}.vla-page .action-head{display:flex;flex-direction:column;align-items:center;gap:.5rem;background:var(--accent-orange);color:var(--bg-primary);padding:1rem 1.5rem;border-radius:8px;width:fit-content;margin:0 auto;transition:all .3s}.vla-page .vla-stage.highlight .action-head{box-shadow:0 0 0 2px var(--accent-lime),0 0 12px #d4ff004d}.vla-page .action-label{font-weight:500;font-size:.9rem}.vla-page .action-tokens{display:flex;gap:.25rem}.vla-page .action-token{background:#0003;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-family:monospace}.vla-page .robot-box{display:flex;align-items:center;gap:.5rem;background:var(--bg-secondary);padding:.75rem 1.25rem;border-radius:8px;border:2px solid var(--border-color);width:fit-content;margin:0 auto;transition:all .3s}.vla-page .vla-stage.highlight .robot-box{border-color:var(--accent-lime);box-shadow:0 0 0 2px var(--accent-lime),0 0 12px #d4ff004d}.vla-page .robot-icon{font-size:1.5rem}.vla-page .robot-label{font-weight:500;color:var(--text-primary)}.vla-page .vla-arrow{color:var(--text-muted);font-size:1.25rem;opacity:.4;transition:opacity .3s}.vla-page .vla-arrow.active{opacity:1}.vla-page .step-explanation{flex-shrink:0;width:280px;background:var(--bg-tertiary);border-radius:12px;padding:1.5rem;position:sticky;top:100px;height:fit-content}.vla-page .step-header{margin-bottom:1rem}.vla-page .step-number{display:block;font-size:.75rem;color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.vla-page .step-title{font-size:1.1rem;font-weight:600;color:var(--text-primary)}.vla-page .step-description{font-size:.9rem;color:var(--text-secondary);line-height:1.6;margin-bottom:1.5rem}.vla-page .step-dots{display:flex;gap:.5rem;justify-content:center;margin-bottom:1rem}.vla-page .step-dot{width:8px;height:8px;border-radius:50%;background:var(--border-color);cursor:pointer;transition:all .2s}.vla-page .step-dot.active{background:var(--accent-cyan);transform:scale(1.25)}.vla-page .step-controls{display:flex;gap:.5rem}.vla-page .step-btn{flex:1;padding:.5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s}.vla-page .step-btn:hover:not(:disabled){border-color:var(--accent-cyan);color:var(--accent-cyan)}.vla-page .step-btn:disabled{opacity:.5;cursor:not-allowed}.vla-page .action-representation{margin-top:1.5rem;background:var(--bg-tertiary);border-radius:12px;overflow:hidden}.vla-page .action-tabs{display:flex;border-bottom:1px solid var(--border-color)}.vla-page .action-tab{flex:1;padding:1rem;background:transparent;border:none;color:var(--text-secondary);font-size:.9rem;cursor:pointer;transition:all .2s;border-bottom:2px solid transparent}.vla-page .action-tab:hover{color:var(--text-primary);background:var(--bg-secondary)}.vla-page .action-tab.active{color:var(--accent-cyan);border-bottom-color:var(--accent-cyan)}.vla-page .action-content{padding:1.5rem}.vla-page .action-desc{font-size:.9rem;color:var(--text-secondary);margin-bottom:1.5rem}.vla-page .continuous-output{display:flex;flex-direction:column;gap:.75rem}.vla-page .action-dim{display:flex;align-items:center;gap:.75rem}.vla-page .dim-label{width:30px;font-family:monospace;font-size:.85rem;color:var(--text-muted)}.vla-page .dim-bar{flex:1;height:8px;background:var(--bg-secondary);border-radius:4px;overflow:hidden}.vla-page .dim-fill{height:100%;background:var(--accent-cyan);border-radius:4px}.vla-page .dim-value{width:60px;font-family:monospace;font-size:.85rem;color:var(--text-secondary);text-align:right}.vla-page .gripper-dim .grip-state{background:var(--accent-lime);color:var(--bg-primary);padding:.25rem .75rem;border-radius:4px;font-size:.8rem;font-weight:500}.vla-page .discrete-output{display:flex;flex-direction:column;gap:1.5rem}.vla-page .tokenization-flow{display:flex;align-items:center;gap:.75rem;justify-content:center}.vla-page .continuous-val,.vla-page .discrete-bin,.vla-page .token-output{padding:.5rem 1rem;border-radius:6px;font-family:monospace;font-size:.85rem}.vla-page .continuous-val{background:var(--bg-secondary);color:var(--text-secondary)}.vla-page .discrete-bin{background:var(--accent-lavender);color:var(--bg-primary)}.vla-page .token-output{background:var(--accent-cyan);color:var(--bg-primary)}.vla-page .token-arrow{color:var(--text-muted)}.vla-page .token-sequence{display:flex;gap:.5rem;justify-content:center;flex-wrap:wrap}.vla-page .action-tok{background:var(--accent-cyan);color:var(--bg-primary);padding:.4rem .75rem;border-radius:4px;font-family:monospace;font-size:.8rem}.vla-page .chunk-visual{background:var(--bg-secondary);border-radius:8px;padding:1.5rem}.vla-page .time-axis{display:flex;justify-content:space-around;margin-bottom:1rem;font-size:.8rem;color:var(--text-muted);font-family:monospace}.vla-page .chunk-row{display:flex;align-items:center;gap:1rem}.vla-page .action-chunk{display:flex;gap:.5rem;flex:1}.vla-page .chunk-action{flex:1;padding:.75rem;background:var(--accent-orange);color:var(--bg-primary);border-radius:6px;text-align:center;font-family:monospace;font-size:.85rem}.vla-page .chunk-label{font-size:.8rem;color:var(--text-muted);white-space:nowrap}.vla-page .training-overview{display:flex;align-items:center;gap:.5rem;margin:1.5rem 0;flex-wrap:wrap;justify-content:center}.vla-page .training-step{background:var(--bg-tertiary);padding:1.25rem;border-radius:12px;text-align:center;flex:1;min-width:150px;max-width:200px}.vla-page .training-icon{font-size:2rem;margin-bottom:.5rem}.vla-page .training-step h4{font-size:.95rem;margin-bottom:.5rem;color:var(--text-primary)}.vla-page .training-step p{font-size:.8rem;color:var(--text-secondary);margin:0}.vla-page .training-arrow{color:var(--text-muted);font-size:1.25rem}.vla-page .data-callout{background:var(--bg-tertiary);border:1px solid var(--accent-orange);border-radius:12px;padding:1.25rem;margin-top:1.5rem}.vla-page .data-callout h4{color:var(--accent-orange);margin-bottom:.5rem;font-size:1rem}.vla-page .data-callout p{margin:0;font-size:.9rem}.vla-page .notable-models{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-top:1.5rem}.vla-page .model-card{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem;transition:all .2s}.vla-page .model-card:hover{border-color:var(--accent-cyan)}.vla-page .model-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.vla-page .model-icon{font-size:1.75rem}.vla-page .model-info h4{font-size:1.1rem;margin:0;color:var(--text-primary)}.vla-page .model-org{font-size:.8rem;color:var(--text-muted)}.vla-page .model-approach{font-size:.85rem;color:var(--text-secondary);margin-bottom:.75rem}.vla-page .model-highlight{font-size:.8rem;padding:.5rem .75rem;background:var(--bg-secondary);border-radius:6px}.vla-page .highlight-label{color:var(--accent-cyan);font-weight:500}.vla-page .capabilities-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:1.5rem}.vla-page .capability-card{background:var(--bg-tertiary);border-radius:12px;padding:1.5rem}.vla-page .capability-card h4{font-size:1.1rem;margin-bottom:1rem}.vla-page .capability-card.strengths h4{color:var(--accent-lime)}.vla-page .capability-card.challenges h4{color:var(--accent-orange)}.vla-page .capability-card ul{list-style:none;padding:0;margin:0}.vla-page .capability-card li{padding:.5rem 0;font-size:.9rem;color:var(--text-secondary);border-bottom:1px solid var(--border-color)}.vla-page .capability-card li:last-child{border-bottom:none}.vla-page .capability-card li strong{color:var(--text-primary)}.vla-page .decision-guide{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:1.5rem}.vla-page .decision-option{background:var(--bg-tertiary);border-radius:12px;padding:1.5rem}.vla-page .decision-option h4{font-size:1rem;margin-bottom:1rem;color:var(--accent-cyan)}.vla-page .decision-option ul{list-style:none;padding:0;margin:0}.vla-page .decision-option li{padding:.4rem 0 .4rem 1.25rem;position:relative;font-size:.9rem;color:var(--text-secondary)}.vla-page .decision-option li:before{content:"✓";position:absolute;left:0;color:var(--accent-cyan)}@media (max-width: 900px){.vla-page .vla-architecture{flex-direction:column}.vla-page .step-explanation{width:100%;position:static}.vla-page .approach-comparison{flex-direction:column}.vla-page .vs-divider{padding:.5rem 0}}@media (max-width: 768px){.vla-page .content-section{padding:1.5rem}.vla-page .training-overview{flex-direction:column}.vla-page .training-step{max-width:100%;width:100%}.vla-page .training-arrow{transform:rotate(90deg)}.vla-page .stage-row,.vla-page .action-tabs{flex-direction:column}.vla-page .action-tab{border-bottom:none;border-left:2px solid transparent}.vla-page .action-tab.active{border-bottom:none;border-left-color:var(--accent-cyan)}}.perception-page.page-layout{background-image:radial-gradient(circle,rgba(255,255,255,.18) 1px,transparent 1px),radial-gradient(ellipse at 50% 20%,rgba(0,136,255,.1) 0%,rgba(212,255,0,.04) 30%,transparent 60%);background-size:28px 28px,100% 100%;background-position:center top}.perception-page .course-list{display:flex;flex-direction:column;gap:.75rem;max-width:860px;width:100%;margin:0 auto}.perception-page .course-item{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1.25rem;transition:all .2s ease;text-align:left}.perception-page .course-item.enabled{cursor:pointer}.perception-page .course-item.enabled:hover{background:#ffffff14;border-color:var(--accent-cyan);transform:translate(4px)}.perception-page .course-item.disabled{opacity:.4;cursor:not-allowed}.perception-page .course-item.completed{border-color:#00e5ff40}.perception-page .course-item__number{font-size:.75rem;font-weight:600;color:var(--text-muted);min-width:1.5rem;text-align:center;flex-shrink:0}.perception-page .course-item__icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:44px;height:44px;border-radius:10px;background:#ffffff0f}.perception-page .course-item__icon svg{width:22px;height:22px}.perception-page .course-item__icon.learn{color:var(--accent-lime)}.perception-page .course-item__icon.lab{color:var(--accent-cyan)}.perception-page .course-item__info{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0}.perception-page .course-item__header{display:flex;align-items:center;gap:.75rem}.perception-page .course-item__title{font-size:1.1rem;font-weight:600;color:var(--text-primary);line-height:1.3}.perception-page .course-item__badge{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding:.15rem .5rem;border-radius:4px;flex-shrink:0;white-space:nowrap}.perception-page .course-item__badge.learn{color:var(--accent-lime);background:#d4ff001a}.perception-page .course-item__badge.lab{color:var(--accent-cyan);background:#00e5ff1a}.perception-page .course-item__description{font-size:.875rem;color:var(--text-secondary);line-height:1.5;font-weight:300}.perception-page .course-item__complete{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--accent-cyan);color:var(--bg-primary);font-size:.75rem;font-weight:600;flex-shrink:0}.perception-page .course-item__arrow{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-muted);transition:color .2s ease,transform .2s ease}.perception-page .course-item__arrow svg{width:18px;height:18px}.perception-page .course-item.enabled:hover .course-item__arrow{color:var(--accent-cyan);transform:translate(2px)}@media (max-width: 480px){.perception-page .course-item{padding:1rem;gap:.75rem}.perception-page .course-item__number{display:none}.perception-page .course-item__icon{width:36px;height:36px}.perception-page .course-item__icon svg{width:18px;height:18px}.perception-page .course-item__title{font-size:1rem}.perception-page .course-item__description{font-size:.8125rem}}.foundations-perception-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem}.foundations-perception-page .concept-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem 2.5rem}.foundations-perception-page .concept-section.intro{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(0,229,255,.05) 100%);border-left:3px solid var(--accent-cyan)}.foundations-perception-page .concept-section h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin-bottom:1rem;letter-spacing:-.01em}.foundations-perception-page .concept-section p{font-size:1rem;line-height:1.75;color:var(--text-secondary);margin-bottom:1rem}.foundations-perception-page .concept-section p:last-child{margin-bottom:0}.foundations-perception-page .concept-section strong{color:var(--text-primary);font-weight:600}.foundations-perception-page .concept-section em{color:var(--accent-cyan);font-style:normal;font-weight:500}.foundations-perception-page .key-insight{display:flex;gap:1rem;margin-top:1.5rem;padding:1.25rem 1.5rem;background:#00e5ff0f;border:1px solid rgba(0,229,255,.15);border-radius:10px}.foundations-perception-page .key-insight .insight-icon{font-size:1.25rem;flex-shrink:0;line-height:1.6}.foundations-perception-page .key-insight p{margin-bottom:0;font-size:.95rem;line-height:1.7}.foundations-perception-page .diagram-wrapper{margin:1.5rem 0;overflow-x:auto}.foundations-perception-page .pipeline-diagram{width:100%;max-width:920px;height:auto;margin:0 auto;display:block;background:var(--bg-primary);border-radius:8px;padding:1rem}.foundations-perception-page .pipeline-diagram .pipeline-title{font-size:17px;font-weight:600;fill:var(--text-primary)}.foundations-perception-page .pipeline-diagram .stage-label{font-size:15px;font-weight:600;fill:#fff}.foundations-perception-page .pipeline-diagram .stage-label.dark{fill:#1a1a2e}.foundations-perception-page .pipeline-diagram .stage-sublabel{font-size:13px;fill:#ffffffbf}.foundations-perception-page .pipeline-diagram .stage-sublabel.dark{fill:#1a1a2eb3}.foundations-perception-page .pipeline-diagram .stage-example{font-size:12px;fill:var(--text-muted)}.foundations-perception-page .pipeline-stages{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem}.foundations-perception-page .pipeline-stage{display:flex;gap:1rem;align-items:flex-start;padding:.75rem 1rem;background:#ffffff08;border-radius:8px;border:1px solid rgba(255,255,255,.05);font-size:.95rem;line-height:1.65;color:var(--text-secondary)}.foundations-perception-page .pipeline-stage strong{color:var(--text-primary)}.foundations-perception-page .stage-number{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#00e5ff1f;color:var(--accent-cyan);font-size:.8rem;font-weight:600;flex-shrink:0;margin-top:1px}.foundations-perception-page .active-passive-comparison{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:1.5rem 0}.foundations-perception-page .comparison-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:1.5rem}.foundations-perception-page .comparison-card .card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.foundations-perception-page .comparison-card .card-icon{font-size:1.5rem}.foundations-perception-page .comparison-card h4{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0}.foundations-perception-page .comparison-card .card-description{font-size:.95rem;line-height:1.7;color:var(--text-secondary);margin-bottom:1rem}.foundations-perception-page .comparison-card .example-box{font-size:.875rem;line-height:1.6;color:var(--text-secondary);padding:.75rem 1rem;background:#ffffff08;border-radius:8px;border-left:2px solid rgba(255,255,255,.1);margin-bottom:.75rem}.foundations-perception-page .comparison-card .example-box strong{color:var(--text-primary)}.foundations-perception-page .tradeoff-box{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem}.foundations-perception-page .tradeoff-box .pro{color:var(--accent-lime)}.foundations-perception-page .tradeoff-box .con{color:#ef4444}.foundations-perception-page .passive-card{border-color:#a78bfa33}.foundations-perception-page .active-card{border-color:#00e5ff33}.foundations-perception-page .inference-interactive{margin:1.5rem 0;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:12px;overflow:hidden}.foundations-perception-page .inference-diagram{width:100%;max-width:560px;height:auto;margin:0 auto;display:block;padding:1.25rem 1rem .5rem}.foundations-perception-page .inf-element{opacity:0;transition:opacity .5s ease,transform .5s ease;transform:translateY(6px)}.foundations-perception-page .inf-element--visible{opacity:1;transform:translateY(0)}.foundations-perception-page .inf-element--active rect,.foundations-perception-page .inf-element--active path{filter:drop-shadow(0 0 8px rgba(255,255,255,.12))}.foundations-perception-page .inference-diagram .box-title{font-size:14px;font-weight:600}.foundations-perception-page .inference-diagram .box-title.orange{fill:#ff9f43}.foundations-perception-page .inference-diagram .box-title.lavender{fill:#a78bfa}.foundations-perception-page .inference-diagram .box-subtitle{font-size:11px;fill:var(--text-muted)}.foundations-perception-page .inference-diagram .box-detail{font-size:11px;fill:var(--text-secondary)}.foundations-perception-page .inference-diagram .arrow-label{font-size:12px;font-weight:500}.foundations-perception-page .inference-diagram .arrow-label.orange{fill:#ff9f43}.foundations-perception-page .inference-diagram .arrow-label.cyan{fill:#00e5ff}.foundations-perception-page .inference-diagram .formula-text{font-size:13px;font-family:Georgia,serif;fill:var(--accent-cyan);font-style:italic}@keyframes dashFlow{to{stroke-dashoffset:-18}}.foundations-perception-page .inference-path{animation:dashFlow .8s linear infinite}.foundations-perception-page .inference-controls{padding:1rem 1.5rem 1.25rem;border-top:1px solid rgba(255,255,255,.06);text-align:center}.foundations-perception-page .inference-step-text{font-size:.9rem;line-height:1.6;color:var(--text-secondary);margin:0 0 1rem;min-height:2.8em}.foundations-perception-page .bayes-terms{display:flex;gap:1rem;margin-bottom:1.25rem;animation:bayesTermsFadeIn .5s ease}@keyframes bayesTermsFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.foundations-perception-page .bayes-term{flex:1;display:flex;flex-direction:column;gap:.3rem;padding:.75rem .85rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:8px;text-align:left}.foundations-perception-page .bayes-term__formula{font-family:Georgia,serif;font-style:italic;font-size:.85rem;font-weight:600}.foundations-perception-page .bayes-term__formula--cyan{color:var(--accent-cyan)}.foundations-perception-page .bayes-term__formula--orange{color:#ff9f43}.foundations-perception-page .bayes-term__formula--lavender{color:#a78bfa}.foundations-perception-page .bayes-term__name{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.foundations-perception-page .bayes-term__desc{font-size:.8rem;line-height:1.5;color:var(--text-secondary)}.foundations-perception-page .bayes-term__desc em{color:var(--text-primary);font-style:normal;font-weight:600}.foundations-perception-page .inference-buttons{display:flex;align-items:center;justify-content:center;gap:1rem}.foundations-perception-page .inf-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:8px;color:var(--text-primary);padding:.4rem 1rem;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s ease}.foundations-perception-page .inf-btn:hover:not(:disabled){background:#ffffff1a;border-color:#fff3}.foundations-perception-page .inf-btn:disabled{opacity:.3;cursor:not-allowed}.foundations-perception-page .inference-dots{display:flex;gap:.5rem}.foundations-perception-page .inf-dot{width:10px;height:10px;border-radius:50%;border:1.5px solid rgba(255,255,255,.2);background:transparent;cursor:pointer;padding:0;transition:all .2s ease}.foundations-perception-page .inf-dot--done{background:#00e5ff4d;border-color:#00e5ff80}.foundations-perception-page .inf-dot--active{background:var(--accent-cyan);border-color:var(--accent-cyan);box-shadow:0 0 6px #00e5ff66}.foundations-perception-page .bayes-demo{margin:1.5rem 0;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:12px;overflow:hidden}.foundations-perception-page .bayes-demo__header{padding:1.25rem 1.5rem .75rem}.foundations-perception-page .bayes-demo__observation{padding:.75rem 1.5rem;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);background:#00e5ff08;transition:background .3s ease}.foundations-perception-page .bayes-demo__observation--active{background:#00e5ff0f}.foundations-perception-page .obs-callout{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.foundations-perception-page .obs-callout--empty{display:flex;align-items:center;gap:.6rem}.foundations-perception-page .obs-callout--empty .obs-callout__text{font-size:.85rem;color:var(--text-muted)}.foundations-perception-page .obs-callout__icon{font-size:1.3rem;flex-shrink:0}.foundations-perception-page .obs-callout__body{display:flex;flex-direction:column;gap:.1rem}.foundations-perception-page .obs-callout__label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--accent-cyan)}.foundations-perception-page .obs-callout__reading{font-size:1rem;font-weight:600;color:var(--text-primary)}.foundations-perception-page .obs-callout__history{width:100%;display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.25rem;padding-top:.5rem;border-top:1px solid rgba(255,255,255,.05)}.foundations-perception-page .obs-history-chip{font-size:.7rem;color:var(--text-muted);background:#ffffff0a;padding:.15rem .5rem;border-radius:4px;border:1px solid rgba(255,255,255,.06)}.foundations-perception-page .bayes-demo__header h4{font-size:1rem;font-weight:700;color:var(--accent-cyan);margin:0 0 .35rem}.foundations-perception-page .bayes-demo__header p{font-size:.85rem;color:var(--text-muted);margin:0}.foundations-perception-page .bayes-demo__content{display:grid;grid-template-columns:1.4fr 1fr;gap:1.5rem;padding:1.25rem 1.5rem;align-items:start}.foundations-perception-page .bayes-demo__bars{display:flex;flex-direction:column;gap:.6rem}.foundations-perception-page .bars-label,.foundations-perception-page .likelihood-label,.foundations-perception-page .log-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.25rem}.foundations-perception-page .belief-row{display:flex;align-items:center;gap:.6rem}.foundations-perception-page .belief-row__label{font-size:.825rem;font-weight:600;color:var(--text-secondary);width:80px;flex-shrink:0;display:flex;align-items:center;gap:.35rem}.foundations-perception-page .belief-row__emoji{font-size:1rem}.foundations-perception-page .belief-row__bar-track{flex:1;height:22px;background:#ffffff0a;border-radius:6px;overflow:hidden}.foundations-perception-page .belief-row__bar-fill{height:100%;border-radius:6px;transition:width .5s cubic-bezier(.4,0,.2,1);min-width:2px}.foundations-perception-page .belief-row__bar-fill--leading{box-shadow:0 0 10px #ffffff26}.foundations-perception-page .belief-row__pct{font-size:.8rem;font-weight:700;color:var(--text-primary);width:50px;text-align:right;font-variant-numeric:tabular-nums}.foundations-perception-page .bayes-demo__likelihood{display:flex;flex-direction:column;gap:.35rem}.foundations-perception-page .likelihood-row{display:flex;align-items:center;gap:.4rem}.foundations-perception-page .likelihood-row__label{font-size:.85rem;width:24px;text-align:center}.foundations-perception-page .likelihood-row__bar-track{flex:1;height:14px;background:#ffffff0a;border-radius:4px;overflow:hidden}.foundations-perception-page .likelihood-row__bar-fill{height:100%;border-radius:4px;transition:width .4s ease}.foundations-perception-page .likelihood-row__val{font-size:.75rem;font-weight:600;color:var(--text-muted);width:32px;text-align:right;font-variant-numeric:tabular-nums}.foundations-perception-page .bayes-demo__actions{padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.06);display:flex;gap:.75rem}.foundations-perception-page .bayes-btn{padding:.5rem 1.25rem;border-radius:8px;font-size:.825rem;font-weight:700;cursor:pointer;transition:all .15s ease;border:none}.foundations-perception-page .bayes-btn--observe{background:#00e5ff26;color:var(--accent-cyan);border:1px solid rgba(0,229,255,.3)}.foundations-perception-page .bayes-btn--observe:hover:not(:disabled){background:#00e5ff40}.foundations-perception-page .bayes-btn--observe:disabled{opacity:.4;cursor:not-allowed}.foundations-perception-page .bayes-btn--reset{background:#ffffff0f;color:var(--text-secondary);border:1px solid rgba(255,255,255,.1)}.foundations-perception-page .bayes-btn--reset:hover{background:#ffffff1a}.foundations-perception-page .inference-concepts{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:1.5rem}.foundations-perception-page .inference-item{padding:1.25rem 1.5rem;background:#00e5ff0a;border:1px solid rgba(0,229,255,.1);border-radius:10px}.foundations-perception-page .inference-item h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.foundations-perception-page .inference-item p{font-size:.925rem;line-height:1.65;color:var(--text-secondary);margin:0}.foundations-perception-page .bio-inspiration-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:1.5rem}.foundations-perception-page .bio-card{padding:1.5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;display:flex;flex-direction:column;gap:.75rem}.foundations-perception-page .bio-card__header{display:flex;align-items:center;gap:.75rem}.foundations-perception-page .bio-card__icon{font-size:1.75rem;flex-shrink:0}.foundations-perception-page .bio-card__title{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.foundations-perception-page .bio-card__animal{font-size:.8rem;color:var(--text-muted)}.foundations-perception-page .bio-card__description{font-size:.925rem;line-height:1.65;color:var(--text-secondary);margin:0}.foundations-perception-page .bio-card__lesson{font-size:.85rem;line-height:1.55;color:var(--text-muted);padding:.75rem 1rem;background:#d4ff000a;border:1px solid rgba(212,255,0,.1);border-radius:8px;margin-top:auto}.foundations-perception-page .bio-card__lesson strong{color:var(--accent-lime);font-weight:600}.foundations-perception-page .challenges-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:1.5rem}.foundations-perception-page .challenge-card{padding:1.5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px}.foundations-perception-page .challenge-card__header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.foundations-perception-page .challenge-card__icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;flex-shrink:0}.foundations-perception-page .challenge-card__icon svg{width:22px;height:22px}.foundations-perception-page .challenge-card--orange .challenge-card__icon{color:var(--accent-orange);background:#ff9f431a}.foundations-perception-page .challenge-card--lavender .challenge-card__icon{color:var(--accent-lavender);background:#a78bfa1a}.foundations-perception-page .challenge-card--cyan .challenge-card__icon{color:var(--accent-cyan);background:#0088ff1a}.foundations-perception-page .challenge-card--lime .challenge-card__icon{color:var(--accent-lime);background:#d4ff001a}.foundations-perception-page .challenge-card__title{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.foundations-perception-page .challenge-card__description{font-size:.925rem;line-height:1.65;color:var(--text-secondary);margin:0}@media (max-width: 768px){.foundations-perception-page .concept-section{padding:1.5rem}.foundations-perception-page .concept-section h2{font-size:1.2rem}.foundations-perception-page .active-passive-comparison,.foundations-perception-page .bio-inspiration-grid,.foundations-perception-page .challenges-grid,.foundations-perception-page .inference-concepts{grid-template-columns:1fr}.foundations-perception-page .pipeline-diagram{padding:.5rem}.foundations-perception-page .inference-diagram{padding:.75rem .5rem .25rem}.foundations-perception-page .bayes-demo__content{grid-template-columns:1fr}.foundations-perception-page .inference-controls{padding:.75rem 1rem 1rem}.foundations-perception-page .bayes-terms{flex-direction:column;gap:.65rem}}@media (max-width: 480px){.foundations-perception-page .concept-section{padding:1.25rem}.foundations-perception-page .key-insight{flex-direction:column;gap:.5rem}}.sensor-modalities-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem}.sensor-modalities-page .concept-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem 2.5rem}.sensor-modalities-page .concept-section.intro{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(0,229,255,.05) 100%);border-left:3px solid var(--accent-cyan)}.sensor-modalities-page .concept-section h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin-bottom:1rem;letter-spacing:-.01em}.sensor-modalities-page .concept-section p{font-size:1rem;line-height:1.75;color:var(--text-secondary);margin-bottom:1rem}.sensor-modalities-page .concept-section p:last-child{margin-bottom:0}.sensor-modalities-page .concept-section strong{color:var(--text-primary);font-weight:600}.sensor-modalities-page .concept-section em{color:var(--accent-cyan);font-style:normal;font-weight:500}.sensor-modalities-page .key-insight{display:flex;gap:1rem;margin-top:1.5rem;padding:1.25rem 1.5rem;background:#00e5ff0f;border:1px solid rgba(0,229,255,.15);border-radius:10px}.sensor-modalities-page .key-insight .insight-icon{font-size:1.25rem;flex-shrink:0;line-height:1.6}.sensor-modalities-page .key-insight p{margin-bottom:0;font-size:.95rem;line-height:1.7}.sensor-modalities-page .diagram-wrapper{margin:1.5rem 0;overflow-x:auto}.sensor-modalities-page .taxonomy-diagram{width:100%;max-width:860px;height:auto;margin:0 auto;display:block;background:var(--bg-primary);border-radius:8px;padding:1rem}.sensor-modalities-page .tax-title{font-size:19px;font-weight:600;fill:var(--text-primary)}.sensor-modalities-page .tax-row-label{font-size:14px;font-weight:600;fill:var(--text-muted);text-transform:uppercase;letter-spacing:.08em}.sensor-modalities-page .tax-box-title{font-size:16px;font-weight:600;fill:#fff}.sensor-modalities-page .tax-box-title.dark{fill:#1a1a2e}.sensor-modalities-page .tax-box-title.passive{fill:var(--text-primary)}.sensor-modalities-page .tax-box-title.contact{fill:var(--accent-cyan)}.sensor-modalities-page .tax-box-title.noncontact{fill:var(--accent-orange)}.sensor-modalities-page .tax-box-sub{font-size:13px;fill:#ffffffb3}.sensor-modalities-page .tax-box-sub.dark{fill:#1a1a2eb3}.sensor-modalities-page .tax-box-sub.passive{fill:var(--text-muted)}.sensor-modalities-page .image-placeholder{width:100%;margin:1.5rem 0;border-radius:10px;overflow:hidden;border:1px dashed rgba(255,255,255,.12);background:#ffffff05}.sensor-modalities-page .image-placeholder__inner{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:2rem}.sensor-modalities-page .image-placeholder__icon{width:40px;height:40px;color:var(--text-muted);opacity:.5}.sensor-modalities-page .image-placeholder__text{font-size:.85rem;color:var(--text-muted);opacity:.6}.sensor-modalities-page .image-placeholder__description{font-size:.8rem;color:var(--text-muted);opacity:.5;line-height:1.55;text-align:center;max-width:520px;font-style:italic}.sensor-modalities-page .concept-section .image-placeholder__label{font-size:.65rem;font-weight:600;color:var(--text-muted);text-align:center;text-transform:uppercase;letter-spacing:.05em;padding:.3rem .5rem;border-top:1px solid rgba(255,255,255,.06);margin:0;line-height:1.3}.sensor-modalities-page .image-placeholder__caption{font-size:.85rem;color:var(--text-muted);text-align:center;padding:.75rem 1rem;border-top:1px solid rgba(255,255,255,.06);font-style:italic;line-height:1.5}.sensor-modalities-page .sensor-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:1.5rem}.sensor-modalities-page .sensor-card{padding:1.25rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px;display:flex;flex-direction:column;gap:.5rem}.sensor-modalities-page .sensor-card__images{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin:0 -.25rem .25rem}.sensor-modalities-page .sensor-image{border-radius:8px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:var(--bg-primary)}.sensor-modalities-page .sensor-image__img-wrapper{overflow:hidden}.sensor-modalities-page .sensor-image img{width:100%;height:100%;object-fit:cover;display:block}.sensor-modalities-page .concept-section .sensor-image__label{font-size:.65rem;font-weight:600;color:var(--text-muted);text-align:center;text-transform:uppercase;letter-spacing:.05em;padding:.3rem .5rem;border-top:1px solid rgba(255,255,255,.06);margin:0;line-height:1.3}.sensor-modalities-page .sensor-card .image-placeholder{margin:0;border-radius:8px}.sensor-modalities-page .sensor-card .image-placeholder__inner{padding:.75rem;gap:.4rem}.sensor-modalities-page .sensor-card .image-placeholder__icon{width:24px;height:24px}.sensor-modalities-page .sensor-card .image-placeholder__text{font-size:.7rem}.sensor-modalities-page .sensor-card .image-placeholder__description{font-size:.65rem;max-width:100%}.sensor-modalities-page .sensor-card__title{font-size:1rem;font-weight:700;color:var(--accent-cyan);margin:0;padding-bottom:.4rem;border-bottom:1px solid rgba(0,136,255,.15)}.sensor-modalities-page .sensor-card__description{font-size:.875rem;line-height:1.6;color:var(--text-secondary);margin:0}.sensor-modalities-page .sensor-card__usage{font-size:.825rem;line-height:1.6;color:var(--text-muted);margin:0;padding:.5rem .7rem;background:#0088ff0a;border-left:2px solid rgba(0,136,255,.25);border-radius:0 6px 6px 0;flex:1}.sensor-modalities-page .sensor-card__specs{font-size:.8rem;color:var(--accent-cyan);font-weight:500;padding-top:.5rem;border-top:1px solid rgba(255,255,255,.06)}.sensor-modalities-page .range-sensors-layout{display:flex;flex-direction:column;gap:2rem;margin-top:1.5rem}.sensor-modalities-page .range-sensor-block{display:grid;grid-template-columns:1fr 200px;gap:1.5rem;align-items:start}.sensor-modalities-page .range-sensor-block__text h3{font-size:1.15rem;font-weight:700;color:var(--accent-cyan);margin-bottom:.75rem;padding-bottom:.4rem;border-bottom:1px solid rgba(0,136,255,.15)}.sensor-modalities-page .range-sensor-block__usage{font-size:.875rem;line-height:1.6;color:var(--text-muted);margin-top:.75rem;padding:.5rem .7rem;background:#0088ff0a;border-left:2px solid rgba(0,136,255,.25);border-radius:0 6px 6px 0}.sensor-modalities-page .range-sensor-block__text p{font-size:.95rem;line-height:1.7;color:var(--text-secondary);margin:0}.sensor-modalities-page .range-sensor-block .image-placeholder,.sensor-modalities-page .range-sensor-block .sensor-image{margin:0;max-width:200px}.sensor-modalities-page .proprio-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:1.5rem}.sensor-modalities-page .proprio-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;overflow:hidden}.sensor-modalities-page .proprio-card .sensor-image__img-wrapper{overflow:hidden;border-bottom:1px solid rgba(255,255,255,.08)}.sensor-modalities-page .proprio-card .sensor-image__img-wrapper img{width:100%;height:100%;object-fit:cover;display:block}.sensor-modalities-page .proprio-card__body{padding:1.25rem}.sensor-modalities-page .proprio-card__title{font-size:1rem;font-weight:700;color:var(--accent-cyan);margin:0 0 .5rem;padding-bottom:.4rem;border-bottom:1px solid rgba(0,136,255,.15)}.sensor-modalities-page .proprio-card__description{font-size:.925rem;line-height:1.65;color:var(--text-secondary);margin:0}.sensor-modalities-page .tactile-layout{margin-top:.5rem}.sensor-modalities-page .tactile-intro{margin-bottom:1.5rem}.sensor-modalities-page .tactile-intro p{margin:0}.sensor-modalities-page .tactile-cards{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.25rem}.sensor-modalities-page .tactile-card{padding:1.25rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px}.sensor-modalities-page .tactile-card h4{font-size:1rem;font-weight:700;color:var(--accent-cyan);margin:0 0 .5rem;padding-bottom:.4rem;border-bottom:1px solid rgba(0,136,255,.15)}.sensor-modalities-page .tactile-card p{font-size:.9rem;line-height:1.6;color:var(--text-secondary);margin:0}.sensor-modalities-page .tactile-card .sensor-image{margin:-1.25rem -1.25rem .75rem;width:calc(100% + 2.5rem)}.sensor-modalities-page .tactile-card .sensor-image__img-wrapper{border-radius:10px 10px 0 0;overflow:hidden;border-bottom:1px solid rgba(255,255,255,.08)}.sensor-modalities-page .tactile-card .sensor-image__img-wrapper img{width:100%;height:100%;object-fit:cover;display:block}.sensor-modalities-page .other-modalities-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.25rem;margin-top:1.5rem}.sensor-modalities-page .modality-card{padding:1.5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px}.sensor-modalities-page .modality-card__header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.sensor-modalities-page .modality-card__icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;flex-shrink:0}.sensor-modalities-page .modality-card__icon svg{width:22px;height:22px}.sensor-modalities-page .modality-card--lavender .modality-card__icon{color:var(--accent-lavender);background:#a78bfa1a}.sensor-modalities-page .modality-card--cyan .modality-card__icon{color:var(--accent-cyan);background:#0088ff1a}.sensor-modalities-page .modality-card--lime .modality-card__icon{color:var(--accent-lime);background:#d4ff001a}.sensor-modalities-page .modality-card__title{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.sensor-modalities-page .modality-card__description{font-size:.925rem;line-height:1.65;color:var(--text-secondary);margin:0}.sensor-modalities-page .sensor-selection-table{margin:1.5rem 0;overflow-x:auto;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#ffffff05}.sensor-modalities-page .sensor-selection-table table{width:100%;border-collapse:collapse;font-size:.85rem}.sensor-modalities-page .sensor-selection-table .th-property{width:120px;background:transparent;border-bottom:2px solid rgba(255,255,255,.08)}.sensor-modalities-page .sensor-selection-table .th-sensor{padding:.85rem .75rem;text-align:center;border-bottom:2px solid rgba(255,255,255,.08);white-space:nowrap}.sensor-modalities-page .th-sensor__label{font-size:.8rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.sensor-modalities-page .th-sensor--cyan .th-sensor__label{color:var(--accent-cyan)}.sensor-modalities-page .th-sensor--orange .th-sensor__label{color:var(--accent-orange)}.sensor-modalities-page .th-sensor--lime .th-sensor__label{color:var(--accent-lime)}.sensor-modalities-page .th-sensor--lavender .th-sensor__label{color:var(--accent-lavender)}.sensor-modalities-page .th-sensor--pink .th-sensor__label{color:#f472b6}.sensor-modalities-page .sensor-selection-table tbody tr{transition:background .15s ease}.sensor-modalities-page .sensor-selection-table tbody tr:nth-child(odd){background:#ffffff05}.sensor-modalities-page .sensor-selection-table tbody tr:hover{background:#ffffff0d}.sensor-modalities-page .sensor-selection-table td{padding:.7rem .75rem;color:var(--text-secondary);border-bottom:1px solid rgba(255,255,255,.04);line-height:1.5;text-align:center;font-size:.825rem}.sensor-modalities-page .sensor-selection-table tr:last-child td{border-bottom:none}.sensor-modalities-page .sensor-selection-table .property-cell{font-weight:700;color:var(--text-primary);white-space:nowrap;text-align:left;padding-left:1.1rem;font-size:.85rem}.sensor-modalities-page .sensor-selection-table .cell--high{color:#4ade80}.sensor-modalities-page .sensor-selection-table .cell--mid{color:var(--accent-orange)}.sensor-modalities-page .sensor-selection-table .cell--low{color:#f87171}.sensor-modalities-page .selection-examples{margin-top:1.5rem}.sensor-modalities-page .selection-examples h4{font-size:1.05rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem}.sensor-modalities-page .domain-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.sensor-modalities-page .domain-card--expanded{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden;display:flex;flex-direction:column}.sensor-modalities-page .domain-card__top .sensor-image__img-wrapper{overflow:hidden;border-bottom:1px solid rgba(255,255,255,.08)}.sensor-modalities-page .domain-card__top .sensor-image__img-wrapper img{width:100%;height:100%;object-fit:cover;display:block}.sensor-modalities-page .domain-card__body{padding:1.25rem;display:flex;flex-direction:column;gap:.75rem}.sensor-modalities-page .domain-card__header{display:flex;align-items:center;gap:.75rem}.sensor-modalities-page .domain-card__icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;background:#0088ff1a;color:var(--accent-cyan);flex-shrink:0}.sensor-modalities-page .domain-card__icon svg{width:20px;height:20px}.sensor-modalities-page .domain-card h5{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.sensor-modalities-page .domain-card__sensors{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.sensor-modalities-page .domain-card__sensors li{font-size:.85rem;line-height:1.55;color:var(--text-secondary);padding-left:1rem;position:relative}.sensor-modalities-page .domain-card__sensors li:before{content:"";position:absolute;left:0;top:.55em;width:5px;height:5px;border-radius:50%;background:var(--accent-cyan);opacity:.6}.sensor-modalities-page .domain-card__sensors li strong{color:var(--text-primary);font-weight:600}@media (max-width: 768px){.sensor-modalities-page .concept-section{padding:1.5rem}.sensor-modalities-page .concept-section h2{font-size:1.2rem}.sensor-modalities-page .sensor-grid,.sensor-modalities-page .range-sensor-block,.sensor-modalities-page .proprio-grid,.sensor-modalities-page .domain-cards,.sensor-modalities-page .tactile-cards,.sensor-modalities-page .other-modalities-grid{grid-template-columns:1fr}.sensor-modalities-page .taxonomy-diagram{padding:.5rem}}@media (max-width: 480px){.sensor-modalities-page .concept-section{padding:1.25rem}.sensor-modalities-page .sensor-grid{grid-template-columns:1fr}.sensor-modalities-page .key-insight{flex-direction:column;gap:.5rem}}.sensor-suite-lab-page .mission-selector{margin-bottom:1.5rem}.sensor-suite-lab-page .mission-selector h3{font-size:.85rem;font-weight:600;color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.sensor-suite-lab-page .mission-progress-summary{font-size:.8rem;font-weight:600;color:var(--text-muted);margin-bottom:.6rem}.sensor-suite-lab-page .mission-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:1rem}.sensor-suite-lab-page .mission-card{display:flex;align-items:center;gap:.6rem;padding:.75rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;cursor:pointer;transition:all .2s ease;text-align:left}.sensor-suite-lab-page .mission-card:hover{border-color:var(--text-muted)}.sensor-suite-lab-page .mission-card--active{border-color:var(--accent-cyan);background:#0088ff14;box-shadow:0 0 0 1px var(--accent-cyan)}.sensor-suite-lab-page .mission-card--completed{border-color:var(--accent-lime)}.sensor-suite-lab-page .mission-card--completed .mission-card__name{color:var(--accent-lime)}.sensor-suite-lab-page .mission-card--completed.mission-card--active{border-color:var(--accent-cyan);box-shadow:0 0 0 1px var(--accent-cyan)}.sensor-suite-lab-page .mission-card__check{color:var(--accent-lime);font-weight:700;font-size:.9rem;flex-shrink:0}.sensor-suite-lab-page .mission-card__emoji{font-size:1.4rem;flex-shrink:0}.sensor-suite-lab-page .mission-card__name{font-size:.85rem;font-weight:600;flex:1;color:var(--text-primary);line-height:1.3}.sensor-suite-lab-page .mission-brief{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:1rem 1.25rem}.sensor-suite-lab-page .mission-brief__desc{font-size:.9rem;line-height:1.6;color:var(--text-secondary);margin:0 0 .5rem}.sensor-suite-lab-page .mission-brief__tip{font-size:.825rem;color:var(--accent-orange);margin:0;padding:.5rem .7rem;background:#ff9f430f;border-left:2px solid rgba(255,159,67,.3);border-radius:0 6px 6px 0}.sensor-suite-lab-page .lab-main{display:grid;grid-template-columns:1.6fr 1fr;gap:1.5rem;margin-bottom:1.5rem;align-items:start}.sensor-suite-lab-page .sensor-palette{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.sensor-suite-lab-page .palette-header{display:flex;align-items:flex-start;justify-content:space-between;padding:1rem 1.25rem .75rem;border-bottom:1px solid rgba(255,255,255,.06)}.sensor-suite-lab-page .palette-header h3{font-size:.85rem;font-weight:600;color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .2rem}.sensor-suite-lab-page .palette-hint{font-size:.75rem;color:var(--text-muted);margin:0;line-height:1.4}.sensor-suite-lab-page .palette-selected-count{font-size:.7rem;font-weight:700;color:var(--accent-lime);background:#d4ff001a;padding:.2rem .55rem;border-radius:10px;white-space:nowrap;flex-shrink:0}.sensor-suite-lab-page .palette-body{padding:.75rem 1.25rem 1rem;display:flex;flex-direction:column;gap:1rem}.sensor-suite-lab-page .palette-category{border-left:3px solid var(--cat-color);padding-left:.75rem}.sensor-suite-lab-page .palette-category__header{display:flex;align-items:center;gap:.4rem;margin-bottom:.4rem}.sensor-suite-lab-page .palette-category__dot{width:8px;height:8px;border-radius:50%;background:var(--cat-color);flex-shrink:0}.sensor-suite-lab-page .palette-category__label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--cat-color)}.sensor-suite-lab-page .palette-category__count{font-size:.6rem;font-weight:700;color:var(--accent-lime);background:#d4ff001a;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center}.sensor-suite-lab-page .palette-sensors{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.4rem}.sensor-suite-lab-page .palette-sensor{display:flex;align-items:center;gap:.5rem;padding:.5rem .65rem;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:8px;cursor:pointer;transition:all .15s ease;text-align:left;position:relative}.sensor-suite-lab-page .palette-sensor:hover{border-color:#ffffff26;background:#ffffff0a}.sensor-suite-lab-page .palette-sensor--selected{border-color:#d4ff0059;background:#d4ff000f}.sensor-suite-lab-page .palette-sensor--selected:hover{background:#d4ff001a}.sensor-suite-lab-page .palette-sensor--irrelevant{opacity:.4}.sensor-suite-lab-page .palette-sensor--irrelevant.palette-sensor--selected{opacity:1;border-color:#fb923c59;background:#fb923c0f}.sensor-suite-lab-page .palette-sensor__emoji{font-size:1.1rem;flex-shrink:0;width:26px;text-align:center}.sensor-suite-lab-page .palette-sensor__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.05rem}.sensor-suite-lab-page .palette-sensor__name{font-size:.8rem;font-weight:600;color:var(--text-primary);line-height:1.2}.sensor-suite-lab-page .palette-sensor__desc{font-size:.75rem;color:var(--text-muted);line-height:1.3}.sensor-suite-lab-page .palette-sensor__specs{font-size:.7rem;color:var(--text-muted);line-height:1.5;text-align:right;font-variant-numeric:tabular-nums;flex-shrink:0;opacity:.7}.sensor-suite-lab-page .palette-sensor__check{position:absolute;top:-4px;right:-4px;width:18px;height:18px;background:var(--accent-lime);color:#000;border-radius:50%;font-size:.65rem;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}.sensor-suite-lab-page .score-dashboard{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem;position:sticky;top:80px}.sensor-suite-lab-page .score-dashboard--empty{display:flex;align-items:center;justify-content:center;min-height:200px}.sensor-suite-lab-page .score-empty-msg{text-align:center;color:var(--text-muted)}.sensor-suite-lab-page .score-empty-icon{font-size:2rem;display:block;margin-bottom:.5rem}.sensor-suite-lab-page .score-empty-msg p{font-size:.85rem;margin:0}.sensor-suite-lab-page .score-threshold-hint{font-size:.75rem;color:var(--text-muted);margin-top:.5rem}.sensor-suite-lab-page .score-pass-banner{padding:.6rem .75rem;border-radius:8px;font-size:.825rem;font-weight:600;text-align:center;margin-bottom:1rem;background:#4ade8014;border:1px solid rgba(74,222,128,.2);color:#4ade80}.sensor-suite-lab-page .score-pass-banner--new{animation:passFlash .6s ease}@keyframes passFlash{0%{background:#4ade8040}to{background:#4ade8014}}.sensor-suite-lab-page .score-threshold-bar{display:flex;justify-content:space-between;font-size:.7rem;font-weight:600;color:var(--text-muted);margin-bottom:.75rem;padding:.35rem .6rem;background:#ffffff08;border-radius:6px}.sensor-suite-lab-page .score-grade{display:flex;flex-direction:column;align-items:center;padding:1rem;margin-bottom:1.25rem;border:2px solid;border-radius:12px;background:#ffffff05}.sensor-suite-lab-page .score-grade__letter{font-size:2.5rem;font-weight:800;line-height:1}.sensor-suite-lab-page .score-grade__label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-top:.15rem}.sensor-suite-lab-page .score-grade__pct{font-size:.85rem;font-weight:700;color:var(--text-secondary);font-variant-numeric:tabular-nums}.sensor-suite-lab-page .score-meters{display:flex;flex-direction:column;gap:.75rem}.sensor-suite-lab-page .score-meter__header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.25rem}.sensor-suite-lab-page .score-meter__label{font-size:.75rem;font-weight:600;color:var(--text-secondary)}.sensor-suite-lab-page .score-meter__val{font-size:.75rem;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.sensor-suite-lab-page .score-meter--over .score-meter__val{color:#f87171}.sensor-suite-lab-page .score-meter__track{height:8px;background:#ffffff0f;border-radius:4px;overflow:hidden}.sensor-suite-lab-page .score-meter__fill{height:100%;border-radius:4px;transition:width .4s cubic-bezier(.4,0,.2,1);min-width:2px}.sensor-suite-lab-page .score-meter__fill--over{box-shadow:0 0 8px #f8717166}.sensor-suite-lab-page .feedback-panel{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:1.5rem}.sensor-suite-lab-page .feedback-panel h3{font-size:.85rem;font-weight:600;color:var(--accent-cyan);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem}.sensor-suite-lab-page .feedback-section{margin-bottom:1rem}.sensor-suite-lab-page .feedback-section:last-child{margin-bottom:0}.sensor-suite-lab-page .feedback-section h4{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:.5rem}.sensor-suite-lab-page .feedback-section--perfect p{font-size:.875rem;color:#4ade80;line-height:1.6;margin:0;padding:.75rem;background:#4ade800f;border-radius:8px;border:1px solid rgba(74,222,128,.15)}.sensor-suite-lab-page .feedback-section--redundancy p{font-size:.825rem;color:var(--text-secondary);line-height:1.6;margin:0;padding:.5rem .7rem;background:#a78bfa0d;border-left:2px solid rgba(167,139,250,.3);border-radius:0 6px 6px 0}.sensor-suite-lab-page .feedback-item{display:flex;align-items:flex-start;gap:.6rem;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.04)}.sensor-suite-lab-page .feedback-item:last-child{border-bottom:none}.sensor-suite-lab-page .feedback-item__badge{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:.15rem .4rem;border-radius:4px;flex-shrink:0;margin-top:.15rem}.sensor-suite-lab-page .feedback-item--critical .feedback-item__badge{background:#f8717126;color:#f87171}.sensor-suite-lab-page .feedback-item--important .feedback-item__badge{background:#fbbf2426;color:#fbbf24}.sensor-suite-lab-page .feedback-item--nice .feedback-item__badge{background:#4ade801a;color:#4ade80}.sensor-suite-lab-page .feedback-item--unnecessary .feedback-item__badge{background:#fb923c26;color:#fb923c}.sensor-suite-lab-page .feedback-item--over .feedback-item__badge{background:#f8717126;color:#f87171}.sensor-suite-lab-page .feedback-item__body{font-size:.825rem;line-height:1.55;color:var(--text-secondary)}.sensor-suite-lab-page .feedback-item__body strong{color:var(--text-primary)}.sensor-suite-lab-page .feedback-item__suggest{color:var(--text-muted);font-style:italic}.sensor-suite-lab-page .lab-all-complete{padding:1rem 1.5rem;background:#4ade8014;border:1px solid rgba(74,222,128,.2);border-radius:12px;color:#4ade80;font-size:.95rem;font-weight:600;text-align:center;margin-bottom:1.5rem}@media (max-width: 1100px){.sensor-suite-lab-page .lab-main{grid-template-columns:1fr}.sensor-suite-lab-page .score-dashboard{position:static}}@media (max-width: 768px){.sensor-suite-lab-page .mission-cards{grid-template-columns:1fr 1fr}.sensor-suite-lab-page .palette-sensors{grid-template-columns:1fr}}@media (max-width: 480px){.sensor-suite-lab-page .mission-cards{grid-template-columns:1fr}}.state-estimation-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem}.state-estimation-page .concept-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem 2.5rem}.state-estimation-page .concept-section.intro{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(0,229,255,.05) 100%);border-left:3px solid var(--accent-cyan)}.state-estimation-page .concept-section h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin-bottom:1rem;letter-spacing:-.01em}.state-estimation-page .concept-section h3{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-top:1.5rem;margin-bottom:.75rem}.state-estimation-page .concept-section p{font-size:1rem;line-height:1.75;color:var(--text-secondary);margin-bottom:1rem}.state-estimation-page .concept-section p:last-child{margin-bottom:0}.state-estimation-page .concept-section strong{color:var(--text-primary);font-weight:600}.state-estimation-page .concept-section em{color:var(--accent-cyan);font-style:normal;font-weight:500}.state-estimation-page .key-insight{display:flex;gap:1rem;margin-top:1.5rem;padding:1.25rem 1.5rem;background:#00e5ff0f;border:1px solid rgba(0,229,255,.15);border-radius:10px}.state-estimation-page .key-insight .insight-icon{font-size:1.25rem;flex-shrink:0;line-height:1.6}.state-estimation-page .key-insight p{margin-bottom:0;font-size:.95rem;line-height:1.7}.state-estimation-page .model-variables{display:flex;flex-direction:column;gap:.5rem;margin:1.25rem 0;padding:1.25rem 1.5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px}.state-estimation-page .model-var{display:flex;align-items:baseline;gap:.75rem}.state-estimation-page .model-var code{font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.9rem;font-weight:600;flex-shrink:0;min-width:1.5rem}.state-estimation-page .model-var span{font-size:.92rem;line-height:1.5;color:var(--text-secondary)}.state-estimation-page .model-var--state code{color:var(--accent-cyan)}.state-estimation-page .model-var--obs code{color:var(--accent-lime)}.state-estimation-page .model-var--ctrl code{color:var(--accent-orange)}.state-estimation-page .two-models{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin:1.5rem 0}.state-estimation-page .model-card{padding:1.5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px;display:flex;flex-direction:column;gap:.5rem}.state-estimation-page .model-card h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.state-estimation-page .model-card p{font-size:.9rem;line-height:1.6;margin:0}.state-estimation-page .model-card__formula{display:block;margin-top:auto;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.06);font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.85rem;color:var(--accent-cyan);word-break:break-all}.state-estimation-page .model-card__vars{margin:.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:.2rem}.state-estimation-page .model-card__vars div{display:flex;align-items:baseline;gap:.5rem}.state-estimation-page .model-card__vars dt{font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.78rem;color:var(--text-primary);flex-shrink:0;min-width:2rem;opacity:.85}.state-estimation-page .model-card__vars dd{font-size:.78rem;color:var(--text-muted);margin:0;line-height:1.4}.state-estimation-page .model-card--process{border-top:3px solid var(--accent-orange)}.state-estimation-page .model-card--obs{border-top:3px solid var(--accent-lime)}.state-estimation-page .prob-bayes-hero{margin:1.5rem 0;padding:1.75rem 2rem;background:#a78bfa0f;border:1px solid rgba(167,139,250,.2);border-radius:12px}.state-estimation-page .prob-bayes-hero__terms{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.state-estimation-page .prob-term{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.5rem .75rem;border-radius:8px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}.state-estimation-page .prob-term strong{font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.9rem;letter-spacing:.02em}.state-estimation-page .prob-term em{font-size:.7rem;font-style:normal;font-weight:500;text-transform:uppercase;letter-spacing:.06em}.state-estimation-page .prob-term--posterior{border-color:#a78bfa4d;background:#a78bfa14}.state-estimation-page .prob-term--posterior strong,.state-estimation-page .prob-term--posterior em{color:var(--accent-lavender)}.state-estimation-page .prob-term--likelihood{border-color:#d4ff0033;background:#d4ff000f}.state-estimation-page .prob-term--likelihood strong,.state-estimation-page .prob-term--likelihood em{color:var(--accent-lime)}.state-estimation-page .prob-term--prior{border-color:#0088ff40;background:#0088ff14}.state-estimation-page .prob-term--prior strong,.state-estimation-page .prob-term--prior em{color:#08f}.state-estimation-page .prob-term--evidence{border-color:#ffffff1a}.state-estimation-page .prob-term--evidence strong,.state-estimation-page .prob-term--evidence em{color:var(--text-muted)}.state-estimation-page .prob-eq{font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:1.1rem;color:var(--text-muted);opacity:.5;padding:0 .1rem}.state-estimation-page .prob-bayes-hero__defs{margin:1.25rem 0 0;padding:1rem 0 0;border-top:1px solid rgba(167,139,250,.12);display:flex;flex-direction:column;gap:.35rem}.state-estimation-page .prob-bayes-hero__defs div{display:flex;align-items:baseline;gap:.75rem}.state-estimation-page .prob-bayes-hero__defs dt{font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.82rem;color:var(--text-primary);flex-shrink:0;min-width:4.5rem;opacity:.85}.state-estimation-page .prob-bayes-hero__defs dd{font-size:.85rem;color:var(--text-muted);margin:0;line-height:1.5}.state-estimation-page .bayes-equations{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin:1.5rem 0}.state-estimation-page .bayes-eq{padding:1.25rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px}.state-estimation-page .bayes-eq__label{display:inline-block;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:.2rem .6rem;border-radius:4px;margin-bottom:.75rem}.state-estimation-page .bayes-eq:first-child .bayes-eq__label{background:#ff9f4326;color:var(--accent-orange)}.state-estimation-page .bayes-eq:last-child .bayes-eq__label{background:#0088ff26;color:var(--accent-cyan)}.state-estimation-page .bayes-eq code{display:block;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.85rem;color:var(--text-primary);padding:.6rem .75rem;background:#ffffff08;border-radius:6px;margin-bottom:.75rem;overflow-x:auto}.state-estimation-page .bayes-eq p{font-size:.875rem;line-height:1.6;margin:0}.state-estimation-page .bayes-eq__vars{margin:.75rem 0 0;padding:.75rem 0 0;border-top:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;gap:.3rem}.state-estimation-page .bayes-eq__vars div{display:flex;align-items:baseline;gap:.5rem}.state-estimation-page .bayes-eq__vars dt{font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.75rem;color:var(--text-primary);flex-shrink:0;min-width:6.5rem;opacity:.85}.state-estimation-page .bayes-eq__vars dd{font-size:.78rem;color:var(--text-muted);margin:0;line-height:1.45}.state-estimation-page .bayes-stepper{margin-top:1rem;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden}.state-estimation-page .bayes-stepper__diagram{padding:1.25rem 1.25rem 0;background:var(--bg-primary)}.state-estimation-page .bayes-svg{width:100%;height:auto;display:block}.state-estimation-page .bayes-stepper__controls{padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.state-estimation-page .bayes-stepper__steps{display:flex;gap:.5rem}.state-estimation-page .bayes-step-btn{flex:1;display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:var(--text-muted);font-size:.8rem;cursor:pointer;transition:all .2s}.state-estimation-page .bayes-step-btn:hover{background:#ffffff0d}.state-estimation-page .bayes-step-btn.active{background:#0088ff1a;border-color:#0088ff4d;color:var(--accent-cyan)}.state-estimation-page .bayes-step-btn.done{border-color:#0088ff26;color:var(--text-secondary)}.state-estimation-page .bayes-step-btn__num{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#ffffff0f;font-size:.75rem;font-weight:700;flex-shrink:0}.state-estimation-page .bayes-step-btn.active .bayes-step-btn__num{background:#08f3}.state-estimation-page .bayes-stepper__info h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 .35rem}.state-estimation-page .bayes-stepper__info p{font-size:.9rem;line-height:1.6;color:var(--text-secondary);margin:0}.state-estimation-page .bayes-stepper__nav{display:flex;gap:.5rem;justify-content:flex-end}.state-estimation-page .bayes-stepper__nav button{padding:.4rem 1rem;font-size:.85rem;border-radius:6px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:var(--text-secondary);cursor:pointer;transition:all .2s}.state-estimation-page .bayes-stepper__nav button:hover:not(:disabled){background:#0088ff1a;border-color:#0088ff4d;color:var(--accent-cyan)}.state-estimation-page .bayes-stepper__nav button:disabled{opacity:.3;cursor:default}.state-estimation-page .why-predict{margin-top:1rem;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden}.state-estimation-page .why-predict__diagram{padding:1.25rem 1.25rem 0;background:var(--bg-primary)}.state-estimation-page .why-predict-svg{width:100%;height:auto;display:block}.state-estimation-page .why-predict__controls{padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.state-estimation-page .why-predict__steps{display:flex;gap:.5rem}.state-estimation-page .why-predict-step-btn{flex:1;display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:var(--text-muted);font-size:.8rem;cursor:pointer;transition:all .2s}.state-estimation-page .why-predict-step-btn:hover{background:#ffffff0d}.state-estimation-page .why-predict-step-btn.active{background:#0088ff1a;border-color:#0088ff4d;color:var(--accent-cyan)}.state-estimation-page .why-predict-step-btn.done{border-color:#0088ff26;color:var(--text-secondary)}.state-estimation-page .why-predict-step-btn__num{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#ffffff0f;font-size:.75rem;font-weight:700;flex-shrink:0}.state-estimation-page .why-predict-step-btn.active .why-predict-step-btn__num{background:#08f3}.state-estimation-page .why-predict__info h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 .35rem}.state-estimation-page .why-predict__info p{font-size:.9rem;line-height:1.6;color:var(--text-secondary);margin:0}.state-estimation-page .why-predict__nav{display:flex;gap:.5rem;justify-content:flex-end}.state-estimation-page .why-predict__nav button{padding:.4rem 1rem;font-size:.85rem;border-radius:6px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:var(--text-secondary);cursor:pointer;transition:all .2s}.state-estimation-page .why-predict__nav button:hover:not(:disabled){background:#0088ff1a;border-color:#0088ff4d;color:var(--accent-cyan)}.state-estimation-page .why-predict__nav button:disabled{opacity:.3;cursor:default}@media (max-width: 768px){.state-estimation-page .concept-section{padding:1.5rem}.state-estimation-page .concept-section h2{font-size:1.2rem}.state-estimation-page .two-models,.state-estimation-page .bayes-equations{grid-template-columns:1fr}.state-estimation-page .bayes-stepper__steps,.state-estimation-page .why-predict__steps{flex-wrap:wrap}.state-estimation-page .bayes-step-btn__label,.state-estimation-page .why-predict-step-btn__label{display:none}}@media (max-width: 480px){.state-estimation-page .concept-section{padding:1.25rem}.state-estimation-page .key-insight{flex-direction:column;gap:.5rem}}.estimation-algorithms-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem}.estimation-algorithms-page .concept-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem 2.5rem}.estimation-algorithms-page .concept-section.intro{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(0,229,255,.05) 100%);border-left:3px solid var(--accent-cyan)}.estimation-algorithms-page .concept-section h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin-bottom:1rem;letter-spacing:-.01em}.estimation-algorithms-page .concept-section h3{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-top:1.5rem;margin-bottom:.75rem}.estimation-algorithms-page .concept-section p{font-size:1rem;line-height:1.75;color:var(--text-secondary);margin-bottom:1rem}.estimation-algorithms-page .concept-section p:last-child{margin-bottom:0}.estimation-algorithms-page .concept-section strong{color:var(--text-primary);font-weight:600}.estimation-algorithms-page .concept-section em{color:var(--accent-cyan);font-style:normal;font-weight:500}.estimation-algorithms-page .key-insight{display:flex;gap:1rem;margin-top:1.5rem;padding:1.25rem 1.5rem;background:#00e5ff0f;border:1px solid rgba(0,229,255,.15);border-radius:10px}.estimation-algorithms-page .key-insight .insight-icon{font-size:1.25rem;flex-shrink:0;line-height:1.6}.estimation-algorithms-page .key-insight p{margin-bottom:0;font-size:.95rem;line-height:1.7}.estimation-algorithms-page .kalman-family{margin:1.5rem 0 2rem;background:#ffffff05;border:1px solid rgba(0,136,255,.2);border-radius:10px;overflow:hidden}.estimation-algorithms-page .kalman-family__tabs{display:flex;border-bottom:1px solid rgba(255,255,255,.08);background:#0088ff0f}.estimation-algorithms-page .kalman-tab{flex:1;padding:.85rem 1rem;background:none;border:none;font-size:.9rem;font-weight:700;color:var(--text-muted);cursor:pointer;transition:all .2s;letter-spacing:.04em;position:relative}.estimation-algorithms-page .kalman-tab:hover{color:var(--text-secondary);background:#ffffff0a}.estimation-algorithms-page .kalman-tab.active{color:var(--accent-cyan);background:#0088ff14}.estimation-algorithms-page .kalman-tab.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2.5px;background:var(--accent-cyan)}.estimation-algorithms-page .kalman-family__detail{padding:1.5rem}.estimation-algorithms-page .kalman-family__detail h4{font-size:1.05rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.estimation-algorithms-page .kalman-detail-intuition{font-size:.9rem;line-height:1.65;color:var(--text-secondary);margin:0 0 1rem;padding:.75rem 1rem;background:#ffffff05;border-left:2px solid rgba(0,229,255,.25);border-radius:0 6px 6px 0}.estimation-algorithms-page .kalman-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.estimation-algorithms-page .kalman-detail-item{padding:.75rem 1rem;background:#ffffff05;border-radius:8px;border:1px solid rgba(255,255,255,.05)}.estimation-algorithms-page .kalman-detail-label{display:block;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.35rem}.estimation-algorithms-page .kalman-detail-item p{font-size:.875rem;line-height:1.55;color:var(--text-secondary);margin:0}.estimation-algorithms-page .kalman-detail-models{display:flex;flex-direction:column;gap:.75rem}.estimation-algorithms-page .kalman-detail-equation{padding:.75rem 1rem;background:#0088ff0d;border:1px solid rgba(0,136,255,.12);border-radius:8px}.estimation-algorithms-page .kalman-detail-equation>code{display:block;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.82rem;color:var(--accent-cyan);margin-top:.3rem;line-height:1.6}.estimation-algorithms-page .kalman-step-eqs{margin-top:.5rem;padding-top:.5rem;border-top:1px dashed rgba(0,136,255,.15);display:flex;flex-direction:column;gap:.15rem}.estimation-algorithms-page .kalman-step-eqs code{display:block;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.82rem;color:var(--accent-lavender);line-height:1.6}.estimation-algorithms-page .kalman-detail-terms{margin:.65rem 0 0;padding:.65rem 0 0;border-top:1px solid rgba(0,136,255,.1);display:flex;flex-direction:column;gap:.3rem}.estimation-algorithms-page .kalman-detail-terms>div{display:flex;gap:.65rem;align-items:baseline;font-size:.8rem;line-height:1.5}.estimation-algorithms-page .kalman-detail-terms dt{font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.78rem;color:var(--accent-cyan);flex-shrink:0;min-width:70px}.estimation-algorithms-page .kalman-detail-terms dd{margin:0;color:var(--text-secondary)}.estimation-algorithms-page .kalman-demo{margin-top:1rem;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden}.estimation-algorithms-page .kalman-demo__canvas-wrap{background:var(--bg-primary);padding:1rem}.estimation-algorithms-page .kalman-demo__canvas{width:100%;height:auto;display:block;border-radius:6px}.estimation-algorithms-page .kalman-demo__controls{padding:1.25rem;display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.estimation-algorithms-page .kalman-demo__sliders{display:flex;gap:1.5rem;flex:1}.estimation-algorithms-page .kalman-demo__sliders label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary)}.estimation-algorithms-page .kalman-demo__sliders input[type=range]{width:100px;accent-color:var(--accent-cyan)}.estimation-algorithms-page .slider-val{font-family:SF Mono,monospace;font-size:.8rem;color:var(--accent-cyan);min-width:2.5ch;text-align:right}.estimation-algorithms-page .kalman-demo__buttons{display:flex;gap:.5rem}.estimation-algorithms-page .kalman-demo__buttons button{padding:.45rem 1rem;font-size:.85rem;border-radius:6px;border:1px solid rgba(0,136,255,.3);background:#0088ff1a;color:var(--accent-cyan);cursor:pointer;transition:all .2s}.estimation-algorithms-page .kalman-demo__buttons button:hover{background:#08f3}.estimation-algorithms-page .particle-viz{margin-top:1rem;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden}.estimation-algorithms-page .particle-viz__canvas-wrap{background:var(--bg-primary);padding:1rem}.estimation-algorithms-page .particle-viz__canvas{width:100%;height:auto;display:block;border-radius:6px}.estimation-algorithms-page .particle-viz__controls{padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.estimation-algorithms-page .particle-viz__phase{display:flex;gap:.5rem}.estimation-algorithms-page .phase-chip{flex:1;text-align:center;padding:.4rem .75rem;font-size:.8rem;border-radius:6px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);color:var(--text-muted);transition:all .2s}.estimation-algorithms-page .phase-chip.active{background:#0088ff1a;border-color:#0088ff4d;color:var(--accent-cyan);font-weight:600}.estimation-algorithms-page .phase-chip.done{border-color:#0088ff26;color:var(--text-secondary)}.estimation-algorithms-page .particle-viz__actions{display:flex;align-items:center;gap:1.5rem}.estimation-algorithms-page .particle-viz__actions label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:var(--text-secondary)}.estimation-algorithms-page .particle-viz__actions input[type=range]{width:100px;accent-color:var(--accent-cyan)}.estimation-algorithms-page .particle-viz__actions button{padding:.45rem 1rem;font-size:.85rem;border-radius:6px;border:1px solid rgba(0,136,255,.3);background:#0088ff1a;color:var(--accent-cyan);cursor:pointer;margin-left:auto;transition:all .2s}.estimation-algorithms-page .particle-viz__actions button:hover{background:#08f3}.estimation-algorithms-page .pf-steps{display:flex;flex-direction:column;gap:1rem;margin:1.5rem 0}.estimation-algorithms-page .pf-step{display:flex;gap:1rem;align-items:flex-start;padding:1rem 1.25rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:10px}.estimation-algorithms-page .pf-step__num{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#0088ff1a;color:var(--accent-cyan);font-size:.85rem;font-weight:700;flex-shrink:0;margin-top:.1rem}.estimation-algorithms-page .pf-step h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem}.estimation-algorithms-page .pf-step p{font-size:.9rem;line-height:1.6;color:var(--text-secondary);margin:0}.estimation-algorithms-page .pf-comparison{margin-top:1.5rem}.estimation-algorithms-page .pf-comparison h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.estimation-algorithms-page .comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.estimation-algorithms-page .comparison-item{padding:1.25rem;border-radius:10px}.estimation-algorithms-page .comparison-item--pf{background:#a78bfa0f;border:1px solid rgba(167,139,250,.15)}.estimation-algorithms-page .comparison-item--kf{background:#0088ff0f;border:1px solid rgba(0,136,255,.15)}.estimation-algorithms-page .comparison-item h5{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.estimation-algorithms-page .comparison-item ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.35rem}.estimation-algorithms-page .comparison-item li{font-size:.85rem;line-height:1.5;color:var(--text-secondary);padding-left:1rem;position:relative}.estimation-algorithms-page .comparison-item li:before{content:"•";position:absolute;left:0;color:var(--text-muted)}.estimation-algorithms-page .opt-concepts{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin:1.5rem 0}.estimation-algorithms-page .opt-card{padding:1.5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px}.estimation-algorithms-page .opt-card h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.estimation-algorithms-page .opt-card p{font-size:.925rem;line-height:1.65;margin-bottom:.75rem}.estimation-algorithms-page .opt-card p:last-child{margin-bottom:0}.estimation-algorithms-page .opt-formula{display:block;padding:.6rem .75rem;background:#0088ff0d;border-radius:6px;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.82rem;color:var(--accent-cyan);margin-top:.5rem}.estimation-algorithms-page .factor-graph-diagram{margin:1rem 0;background:var(--bg-primary);border-radius:10px;padding:1rem}.estimation-algorithms-page .factor-graph-svg{width:100%;height:auto;display:block;max-width:620px;margin:0 auto}.estimation-algorithms-page .opt-methods{margin-top:1.5rem}.estimation-algorithms-page .opt-methods h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.estimation-algorithms-page .opt-methods-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem}.estimation-algorithms-page .opt-method{padding:1.25rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:10px}.estimation-algorithms-page .opt-method h5{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.estimation-algorithms-page .opt-method p{font-size:.875rem;line-height:1.6;color:var(--text-secondary);margin:0}.estimation-algorithms-page .filter-smooth-diagram{margin:1rem 0;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden}.estimation-algorithms-page .filter-smooth-diagram__toggle{display:flex;border-bottom:1px solid rgba(255,255,255,.06)}.estimation-algorithms-page .filter-smooth-diagram__toggle button{flex:1;padding:.6rem 1rem;background:none;border:none;font-size:.85rem;font-weight:600;color:var(--text-muted);cursor:pointer;transition:all .2s;position:relative}.estimation-algorithms-page .filter-smooth-diagram__toggle button:hover{color:var(--text-secondary)}.estimation-algorithms-page .filter-smooth-diagram__toggle button.active{color:var(--accent-cyan)}.estimation-algorithms-page .filter-smooth-diagram__toggle button.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--accent-cyan)}.estimation-algorithms-page .filter-smooth-diagram__content{padding:1.25rem}.estimation-algorithms-page .filter-smooth-svg{width:100%;height:auto;display:block;max-width:600px;margin:0 auto 1rem}.estimation-algorithms-page .filter-smooth-diagram__caption p{font-size:.9rem;line-height:1.65;color:var(--text-secondary);margin:0}.estimation-algorithms-page .practical-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:1.5rem}.estimation-algorithms-page .practical-card{padding:1.5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px}.estimation-algorithms-page .practical-card:last-child:nth-child(odd){grid-column:1 / -1}.estimation-algorithms-page .practical-card__icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#0088ff1a;color:var(--accent-cyan);margin-bottom:.75rem}.estimation-algorithms-page .practical-card__icon svg{width:18px;height:18px}.estimation-algorithms-page .practical-card h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.estimation-algorithms-page .practical-card p{font-size:.9rem;line-height:1.65;color:var(--text-secondary);margin:0}@media (max-width: 768px){.estimation-algorithms-page .concept-section{padding:1.5rem}.estimation-algorithms-page .concept-section h2{font-size:1.2rem}.estimation-algorithms-page .opt-concepts,.estimation-algorithms-page .comparison-grid,.estimation-algorithms-page .kalman-detail-grid,.estimation-algorithms-page .opt-methods-grid,.estimation-algorithms-page .practical-grid{grid-template-columns:1fr}.estimation-algorithms-page .practical-card:last-child:nth-child(odd){grid-column:1}.estimation-algorithms-page .kalman-demo__sliders{flex-direction:column;gap:.75rem}.estimation-algorithms-page .kalman-demo__controls,.estimation-algorithms-page .particle-viz__actions{flex-direction:column;align-items:stretch}}@media (max-width: 480px){.estimation-algorithms-page .concept-section{padding:1.25rem}.estimation-algorithms-page .key-insight{flex-direction:column;gap:.5rem}}.sensor-fusion-page .page-layout__content{display:flex;flex-direction:column;gap:2.5rem}.sensor-fusion-page .concept-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem 2.5rem}.sensor-fusion-page .concept-section.intro{background:linear-gradient(135deg,var(--bg-secondary) 0%,rgba(0,229,255,.05) 100%);border-left:3px solid var(--accent-cyan)}.sensor-fusion-page .concept-section h2{font-size:1.4rem;font-weight:500;color:var(--text-primary);margin-bottom:1rem;letter-spacing:-.01em}.sensor-fusion-page .concept-section h3{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-top:1.5rem;margin-bottom:.75rem}.sensor-fusion-page .concept-section p{font-size:1rem;line-height:1.75;color:var(--text-secondary);margin-bottom:1rem}.sensor-fusion-page .concept-section p:last-child{margin-bottom:0}.sensor-fusion-page .concept-section strong{color:var(--text-primary);font-weight:600}.sensor-fusion-page .concept-section em{color:var(--accent-cyan);font-style:normal;font-weight:500}.sensor-fusion-page .key-insight{display:flex;gap:1rem;margin-top:1.5rem;padding:1.25rem 1.5rem;background:#00e5ff0f;border:1px solid rgba(0,229,255,.15);border-radius:10px}.sensor-fusion-page .key-insight .insight-icon{font-size:1.25rem;flex-shrink:0;line-height:1.6}.sensor-fusion-page .key-insight p{margin-bottom:0;font-size:.95rem;line-height:1.7}.sensor-fusion-page .why-fuse-cards{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.25rem;margin:1.5rem 0}.sensor-fusion-page .why-fuse-card{padding:1.5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px;display:flex;flex-direction:column;gap:.5rem}.sensor-fusion-page .why-fuse-card h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.sensor-fusion-page .why-fuse-card p{font-size:.9rem;line-height:1.6;margin:0}.sensor-fusion-page .why-fuse-card__example{margin-top:auto;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.06);font-size:.82rem;color:var(--text-muted);font-style:italic}.sensor-fusion-page .why-fuse-card--complementarity{border-top:3px solid var(--accent-cyan)}.sensor-fusion-page .why-fuse-card--redundancy{border-top:3px solid var(--accent-lime)}.sensor-fusion-page .why-fuse-card--coverage{border-top:3px solid var(--accent-orange)}.sensor-fusion-page .fusion-arch{margin:1.5rem 0;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden}.sensor-fusion-page .fusion-arch__tabs{display:flex;border-bottom:1px solid rgba(255,255,255,.06)}.sensor-fusion-page .fusion-arch-tab{flex:1;padding:.75rem 1rem;background:none;border:none;color:var(--text-muted);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s;border-bottom:2px solid transparent}.sensor-fusion-page .fusion-arch-tab:hover{color:var(--text-secondary);background:#ffffff05}.sensor-fusion-page .fusion-arch-tab.active{color:var(--accent-lavender);border-bottom-color:var(--accent-lavender);background:#a78bfa0d}.sensor-fusion-page .fusion-arch__diagram{padding:1rem 1rem 0;background:var(--bg-primary)}.sensor-fusion-page .fusion-arch-svg{width:100%;height:auto;display:block}.sensor-fusion-page .fusion-arch__detail{padding:1.25rem}.sensor-fusion-page .fusion-arch__detail p{font-size:.92rem;line-height:1.65;margin-bottom:.75rem}.sensor-fusion-page .fusion-arch__example{font-size:.85rem;color:var(--text-muted);padding:.75rem 1rem;background:#ffffff08;border-radius:6px;margin-bottom:1rem}.sensor-fusion-page .fusion-arch__bars{display:flex;flex-direction:column;gap:.5rem}.sensor-fusion-page .fusion-bar{display:flex;align-items:center;gap:.75rem}.sensor-fusion-page .fusion-bar__label{font-size:.78rem;color:var(--text-muted);min-width:130px;text-align:right}.sensor-fusion-page .fusion-bar__track{flex:1;max-width:140px;height:8px;background:#ffffff0f;border-radius:4px;overflow:hidden}.sensor-fusion-page .fusion-bar__fill{height:100%;border-radius:4px;transition:width .4s ease}.sensor-fusion-page .fusion-bar__fill--richness{background:var(--accent-cyan)}.sensor-fusion-page .fusion-bar__fill--modularity{background:var(--accent-lime)}.sensor-fusion-page .fusion-bar__fill--debug{background:var(--accent-orange)}.sensor-fusion-page .calibration-diagram{margin:1.5rem 0;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:10px;overflow:hidden}.sensor-fusion-page .calibration-diagram__tabs{display:flex;border-bottom:1px solid rgba(255,255,255,.06)}.sensor-fusion-page .calibration-tab{flex:1;padding:.75rem 1rem;background:none;border:none;color:var(--text-muted);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s;border-bottom:2px solid transparent}.sensor-fusion-page .calibration-tab:hover{color:var(--text-secondary);background:#ffffff05}.sensor-fusion-page .calibration-tab.active{color:var(--accent-cyan);border-bottom-color:var(--accent-cyan);background:#0088ff0d}.sensor-fusion-page .calibration-diagram__content{padding:1.25rem}.sensor-fusion-page .calibration-diagram__content p{font-size:.92rem;line-height:1.65}.sensor-fusion-page .calibration-items{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem}.sensor-fusion-page .calibration-item{display:flex;align-items:baseline;gap:1rem;padding:.6rem .75rem;background:#ffffff08;border-radius:6px;border-left:3px solid var(--accent-cyan)}.sensor-fusion-page .calibration-item__sensor{font-size:.85rem;font-weight:600;color:var(--text-primary);min-width:100px;flex-shrink:0}.sensor-fusion-page .calibration-item__params{font-size:.85rem;color:var(--text-muted);line-height:1.5}.sensor-fusion-page .prob-fusion-methods{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin:1.5rem 0}.sensor-fusion-page .prob-fusion-card{padding:1.5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px}.sensor-fusion-page .prob-fusion-card h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.sensor-fusion-page .prob-fusion-card p{font-size:.9rem;line-height:1.6;margin:0 0 .75rem}.sensor-fusion-page .prob-fusion-card p:last-child{margin-bottom:0}.sensor-fusion-page .prob-fusion-formula{display:block;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.82rem;color:var(--accent-cyan);padding:.6rem .75rem;background:#ffffff08;border-radius:6px;margin-bottom:.75rem;overflow-x:auto}.sensor-fusion-page .prob-fusion-note{font-size:.85rem;color:var(--text-muted)}.sensor-fusion-page .dl-fusion-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.25rem;margin:1.5rem 0}.sensor-fusion-page .dl-fusion-card{padding:1.5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px;border-top:3px solid var(--accent-lavender)}.sensor-fusion-page .dl-fusion-card h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.sensor-fusion-page .dl-fusion-card p{font-size:.9rem;line-height:1.6;margin:0}.sensor-fusion-page .dl-fusion-examples{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.75rem}.sensor-fusion-page .dl-example-chip{font-size:.75rem;font-weight:600;padding:.2rem .6rem;border-radius:4px;background:#a78bfa1f;color:var(--accent-lavender)}.sensor-fusion-page .dl-comparison{margin-top:1.5rem}.sensor-fusion-page .dl-comparison h4{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.sensor-fusion-page .comparison-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.sensor-fusion-page .comparison-item{padding:1.25rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px}.sensor-fusion-page .comparison-item h5{font-size:.9rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem}.sensor-fusion-page .comparison-item ul{margin:0;padding:0 0 0 1.25rem;display:flex;flex-direction:column;gap:.35rem}.sensor-fusion-page .comparison-item li{font-size:.85rem;color:var(--text-secondary);line-height:1.5}.sensor-fusion-page .comparison-item--classical{border-top:3px solid var(--accent-cyan)}.sensor-fusion-page .comparison-item--learned{border-top:3px solid var(--accent-lavender)}.sensor-fusion-page .async-timeline{margin:1rem 0 1.5rem;padding:1rem;background:#ffffff05;border:1px solid rgba(255,255,255,.08);border-radius:10px}.sensor-fusion-page .async-timeline-svg{width:100%;height:auto;display:block}.sensor-fusion-page .practical-challenges-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin:1.5rem 0}.sensor-fusion-page .practical-challenge-card{padding:1.25rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:10px}.sensor-fusion-page .practical-challenge-card h4{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.sensor-fusion-page .practical-challenge-card p{font-size:.9rem;line-height:1.6;margin:0}@media (max-width: 768px){.sensor-fusion-page .concept-section{padding:1.5rem}.sensor-fusion-page .concept-section h2{font-size:1.2rem}.sensor-fusion-page .why-fuse-cards,.sensor-fusion-page .dl-fusion-grid,.sensor-fusion-page .prob-fusion-methods,.sensor-fusion-page .comparison-grid,.sensor-fusion-page .practical-challenges-grid{grid-template-columns:1fr}.sensor-fusion-page .fusion-arch__tabs,.sensor-fusion-page .calibration-diagram__tabs{flex-direction:column}.sensor-fusion-page .fusion-arch-tab,.sensor-fusion-page .calibration-tab{border-bottom:none;border-left:2px solid transparent}.sensor-fusion-page .fusion-arch-tab.active{border-left-color:var(--accent-lavender);border-bottom-color:transparent}.sensor-fusion-page .calibration-tab.active{border-left-color:var(--accent-cyan);border-bottom-color:transparent}}@media (max-width: 480px){.sensor-fusion-page .concept-section{padding:1.25rem}.sensor-fusion-page .key-insight{flex-direction:column;gap:.5rem}.sensor-fusion-page .calibration-item{flex-direction:column;gap:.25rem}.sensor-fusion-page .fusion-bar__label{min-width:90px;font-size:.72rem}}.auth-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.auth-modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:16px;padding:2rem;width:100%;max-width:420px;position:relative;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:var(--text-muted);font-size:1.5rem;cursor:pointer;padding:.25rem .5rem;line-height:1;transition:color .2s ease}.auth-modal-close:hover{color:var(--text-primary)}.auth-modal-header{text-align:center;margin-bottom:1.5rem}.auth-modal-header h2{font-size:1.5rem;color:var(--text-primary);margin-bottom:.5rem}.auth-modal-header p{color:var(--text-muted);font-size:.9rem}.auth-form{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.form-group input{padding:.75rem 1rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}.form-group input::placeholder{color:var(--text-muted)}.form-group input:focus{outline:none;border-color:var(--accent-cyan);box-shadow:0 0 0 3px #00e5ff1a}.form-hint{font-size:.75rem;color:var(--text-muted)}.auth-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:.75rem 1rem;border-radius:8px;font-size:.9rem}.auth-submit-btn{padding:.875rem 1.5rem;background:var(--accent-cyan);color:#000;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.auth-submit-btn:hover:not(:disabled){background:#00c4db;transform:translateY(-1px)}.auth-submit-btn:disabled{opacity:.7;cursor:not-allowed}.auth-switch{text-align:center;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.auth-switch p{color:var(--text-muted);font-size:.9rem}.auth-switch button{background:none;border:none;color:var(--accent-cyan);font-size:.9rem;cursor:pointer;text-decoration:underline;transition:color .2s ease}.auth-switch button:hover{color:#00c4db}@media (max-width: 480px){.auth-modal{margin:1rem;padding:1.5rem}}.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;display:flex;align-items:center;gap:1rem}.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;margin-left:.5rem}.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}.auth-buttons{display:flex;align-items:center;gap:.5rem}.auth-btn{padding:.5rem 1rem;font-size:.85rem;font-weight:500;border-radius:6px;cursor:pointer;transition:all .2s ease}.login-btn{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.login-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.register-btn{background:var(--accent-cyan);border:none;color:#000}.register-btn:hover{background:#00c4db}.user-menu-container{position:relative}.user-menu-button{display:flex;align-items:center;gap:.5rem;padding:.35rem .75rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:20px;cursor:pointer;transition:all .2s ease}.user-menu-button:hover{border-color:var(--text-muted)}.user-avatar{width:24px;height:24px;background:var(--accent-cyan);color:#000;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600}.user-name{color:var(--text-secondary);font-size:.85rem}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;min-width:180px;box-shadow:0 4px 12px #0000004d;z-index:100;overflow:hidden;animation:dropdownFadeIn .15s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.user-menu-header{padding:.75rem 1rem;border-bottom:1px solid var(--border-color)}.user-menu-name{display:block;color:var(--text-primary);font-weight:500;font-size:.9rem}.user-menu-username{color:var(--text-muted);font-size:.8rem}.user-menu-item{width:100%;padding:.75rem 1rem;background:none;border:none;text-align:left;color:var(--text-secondary);font-size:.85rem;cursor:pointer;transition:all .2s ease}.user-menu-item:hover{background:var(--bg-tertiary);color:var(--text-primary)}@font-face{font-family:Ra Mono;src:url(/assets/Ra-Mono-BVlnx2h-.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}*{margin:0;padding:0;box-sizing:border-box}:root{--font-body: "Source Sans 3", -apple-system, BlinkMacSystemFont, sans-serif;--font-display: "Space Mono", monospace;--font-heading: "Ra 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: #0088ff;--accent-lavender: #a78bfa;--accent-green: #d4ff00;--accent-blue: #0088ff;--accent-purple: #a78bfa;--accent-orange: #ff9f43;--node-unvisited: #4b5563;--border-color: #2d333b;--button-primary: #0088ff;--button-hover: #0077ee}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,h4,h5,h6{font-family:var(--font-heading)}
