.app{min-height:100vh;display:flex;flex-direction:column;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.container{max-width:1200px;margin:0 auto;padding:0 20px;width:100%}.header{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 6px #0000001a;padding:3rem 0;text-align:center}.title{font-size:3rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.subtitle{font-size:1.25rem;color:#666;font-weight:300}.main{flex:1;padding:4rem 0}.section{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:2.5rem;margin-bottom:2rem;box-shadow:0 8px 32px #0000001a}.section h2{font-size:2rem;color:#333;margin-bottom:1.5rem;padding-bottom:.5rem;border-bottom:3px solid #667eea}.section p{font-size:1.1rem;line-height:1.8;color:#555;margin-bottom:1rem}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:2rem}.feature-card{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:1.5rem;border-radius:12px;transition:transform .3s ease,box-shadow .3s ease;border:1px solid rgba(102,126,234,.2)}.feature-card:hover{transform:translateY(-5px);box-shadow:0 12px 24px #667eea4d}.feature-card h3{font-size:1.3rem;color:#333;margin-bottom:.75rem}.feature-card p{font-size:1rem;color:#555;line-height:1.6;margin:0}.use-cases{list-style:none;margin-top:1.5rem}.use-cases li{padding:1rem;margin-bottom:1rem;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:8px;border-left:4px solid #667eea;font-size:1.05rem;line-height:1.7}.use-cases li strong{color:#667eea;display:block;margin-bottom:.5rem;font-size:1.1rem}.workflow{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:2rem}.workflow-step{display:flex;flex-direction:column;align-items:center;text-align:center}.step-number{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;margin-bottom:1rem;box-shadow:0 4px 12px #667eea66}.step-content h3{font-size:1.2rem;color:#333;margin-bottom:.5rem}.step-content p{font-size:.95rem;color:#666;margin:0}.benefits{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:2rem}.benefit-item{padding:1.5rem;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:12px;border:1px solid rgba(102,126,234,.2)}.benefit-item h3{font-size:1.2rem;color:#667eea;margin-bottom:.75rem}.benefit-item p{font-size:1rem;color:#555;line-height:1.6;margin:0}.footer{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:2rem 0;text-align:center;box-shadow:0 -4px 6px #0000001a}.footer p{color:#666;font-size:.95rem}.demo-section{background:linear-gradient(135deg,#fffffffa,#f5f7fafa)}.demo-description{text-align:center;margin-bottom:2rem;color:#666}.demo-controls{text-align:center;margin-bottom:3rem}.demo-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem 2rem;font-size:1.1rem;font-weight:600;border-radius:12px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.demo-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.demo-button:active:not(:disabled){transform:translateY(0)}.demo-button:disabled{opacity:.7;cursor:not-allowed}.demo-button-running{animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.7}50%{opacity:1}}.execution-chain{margin-top:2rem}.execution-step{margin-bottom:1.5rem;opacity:.5;transition:opacity .5s ease,transform .5s ease}.execution-step.active{opacity:1}.execution-step.current{transform:scale(1.02);animation:highlight 1.5s ease-in-out}@keyframes highlight{0%,to{box-shadow:0 0 #667eea00}50%{box-shadow:0 0 20px #667eea4d}}.execution-step-header{display:flex;align-items:flex-start;gap:1.5rem;background:#fff;padding:1.5rem;border-radius:12px;border:2px solid #e0e0e0;transition:border-color .5s ease,background .5s ease}.execution-step.active .execution-step-header{border-color:#667eea;background:linear-gradient(135deg,#667eea0d,#764ba20d)}.execution-step.current .execution-step-header{border-color:#667eea;border-width:3px;background:linear-gradient(135deg,#667eea1a,#764ba21a)}.execution-step-number{width:50px;height:50px;border-radius:50%;background:#e0e0e0;color:#999;display:flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:700;flex-shrink:0;transition:all .5s ease;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.execution-step.active .execution-step-number{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea66}.execution-step-content{flex:1}.execution-step-content h3{font-size:1.3rem;color:#333;margin-bottom:.5rem;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.execution-step.active .execution-step-content h3{color:#667eea}.execution-description{font-size:1rem;color:#666;margin-bottom:.75rem;line-height:1.6;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.execution-details{margin-top:.75rem;padding:.75rem;background:#667eea1a;border-radius:6px;border-left:3px solid #667eea}.execution-details code{font-size:.9rem;color:#667eea;font-family:Helvetica,Helvetica Neue,Arial,sans-serif;font-weight:500}.execution-status{font-size:1.5rem;flex-shrink:0;animation:fadeIn .5s ease}@keyframes fadeIn{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.execution-connector{width:3px;height:30px;background:#e0e0e0;margin-left:25px;margin-top:.5rem;margin-bottom:.5rem;transition:background .5s ease}.execution-connector.active{background:linear-gradient(180deg,#667eea,#764ba2);animation:flow 1.5s ease-in-out}@keyframes flow{0%{background-position:0% 0%}to{background-position:0% 100%}}.demo-complete{margin-top:2rem;padding:2rem;background:linear-gradient(135deg,#667eea1a,#764ba21a);border-radius:12px;text-align:center;border:2px solid #667eea;animation:slideIn .5s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.demo-complete h3{font-size:1.5rem;color:#667eea;margin-bottom:.5rem;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.demo-complete p{color:#666;font-size:1rem;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.real-data-badge{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(102,126,234,.2)}.real-data-badge span{background:#667eea1a;padding:.5rem 1rem;border-radius:20px;font-size:.85rem;color:#667eea;font-weight:600;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.error-message{background:#ff00001a;border:2px solid #ff4444;color:#c00;padding:1rem;border-radius:8px;margin-bottom:1.5rem;text-align:center;font-family:Helvetica,Helvetica Neue,Arial,sans-serif;font-weight:500}.park-selector-container{margin-bottom:2rem;padding:1.5rem;background:#ffffff80;border-radius:12px;border:2px solid rgba(102,126,234,.2)}.park-select-label{display:block;font-size:1.1rem;font-weight:600;color:#333;margin-bottom:.75rem;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.park-select-wrapper{position:relative;width:100%}.park-select-input{width:100%;padding:1rem;font-size:1rem;border:2px solid #e0e0e0;border-radius:8px;font-family:Helvetica,Helvetica Neue,Arial,sans-serif;transition:border-color .3s ease}.park-select-input:focus{outline:none;border-color:#667eea}.park-select-input:disabled{background:#f5f5f5;cursor:not-allowed}.park-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:2px solid #667eea;border-radius:8px;margin-top:.25rem;max-height:300px;overflow-y:auto;z-index:1000;box-shadow:0 8px 24px #00000026}.park-option{padding:1rem;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background .2s ease;border-bottom:1px solid #f0f0f0}.park-option:hover{background:#667eea1a}.park-option:last-child{border-bottom:none}.park-option.no-results{color:#999;font-style:italic;cursor:default}.park-option.no-results:hover{background:transparent}.park-name{font-weight:600;color:#333;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.park-state{font-size:.9rem;color:#666;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.selected-park-badge{margin-top:1rem;padding:.75rem 1rem;background:#667eea1a;border-radius:8px;color:#667eea;font-weight:600;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.final-output{margin-top:2rem;padding:2rem;background:linear-gradient(135deg,#fffffffa,#f5f7fafa);border-radius:16px;border:3px solid #667eea;box-shadow:0 12px 40px #667eea33;animation:slideIn .5s ease}.final-output-header{text-align:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid rgba(102,126,234,.2)}.final-output-header h3{font-size:1.8rem;color:#667eea;margin-bottom:1rem;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.final-output-badge{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:1rem}.final-output-badge span{background:#667eea1a;padding:.5rem 1rem;border-radius:20px;font-size:.85rem;color:#667eea;font-weight:600;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.final-output-content{display:flex;flex-direction:column;gap:1.5rem}.weather-summary-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2rem;border-radius:16px;display:flex;align-items:center;gap:2rem;box-shadow:0 8px 24px #667eea4d}.weather-icon{font-size:4rem}.weather-main{flex:1}.weather-temp{font-size:3.5rem;font-weight:700;line-height:1;margin-bottom:.5rem;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.weather-condition{font-size:1.3rem;opacity:.95;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.weather-details{display:flex;gap:2rem;flex-wrap:wrap}.weather-detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.85rem;opacity:.8;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.detail-value{font-size:1.2rem;font-weight:600;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.uv-critical{color:#f44;font-weight:700}.uv-high{color:#f80;font-weight:700}.uv-moderate{color:#fa0;font-weight:600}.uv-low{color:#4f4}.recommendation-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.recommendation-card{background:#fff;padding:1.5rem;border-radius:12px;border:2px solid #e0e0e0;transition:transform .3s ease,box-shadow .3s ease}.recommendation-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}.card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid #f0f0f0}.card-icon{font-size:1.8rem}.card-header h4{font-size:1.3rem;color:#333;margin:0;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.card-content{font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.card-content p{color:#555;line-height:1.7;margin:.75rem 0;font-size:1rem}.rating-badge{display:inline-block;padding:.5rem 1rem;border-radius:20px;font-weight:700;font-size:.85rem;margin-bottom:.75rem;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.rating-excellent{background:#4caf5033;color:#4caf50}.rating-good{background:#2196f333;color:#2196f3}.rating-moderate{background:#ff980033;color:#ff9800}.rating-cold{background:#2196f333;color:#2196f3}.rating-hot{background:#f4433633;color:#f44336}.sunscreen-badge{display:inline-block;padding:.5rem 1rem;border-radius:20px;font-weight:700;font-size:.85rem;margin-bottom:.75rem;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.sunscreen-critical{background:#f4433633;color:#f44336}.sunscreen-high{background:#ff980033;color:#ff9800}.sunscreen-moderate{background:#ffc10733;color:#ffc107}.sunscreen-low{background:#4caf5033;color:#4caf50}.sunscreen-card.sunscreen-critical{border-color:#f44336;background:#f443360d}.sunscreen-card.sunscreen-high{border-color:#ff9800;background:#ff98000d}.sunscreen-card.sunscreen-moderate{border-color:#ffc107;background:#ffc1070d}.sunscreen-card.sunscreen-low{border-color:#4caf50;background:#4caf500d}.sunscreen-details{margin-top:1rem;padding-top:1rem;border-top:1px solid #e0e0e0;font-size:.9rem;color:#666;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}@media (max-width: 768px){.title{font-size:2rem}.subtitle{font-size:1rem}.section{padding:1.5rem}.section h2{font-size:1.5rem}.features-grid,.workflow,.benefits{grid-template-columns:1fr}.execution-step-header{flex-direction:column;gap:1rem}.execution-connector{margin-left:25px;height:20px}.execution-step-number{width:40px;height:40px;font-size:1.1rem}.weather-summary-card{flex-direction:column;text-align:center}.weather-details{justify-content:center}.recommendation-cards{grid-template-columns:1fr}.weather-temp{font-size:2.5rem}.final-output-header h3{font-size:1.4rem}}.impact-section{background:linear-gradient(135deg,#fffffffa,#fafcfffa)}.impact-intro{font-size:1.15rem;line-height:1.8;color:#555;margin-bottom:2.5rem;text-align:center;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.why-matters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:3rem}.matter-card{background:#fff;padding:2rem;border-radius:16px;border:2px solid #e0e0e0;text-align:center;transition:all .3s ease;position:relative;overflow:hidden}.matter-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2);transform:scaleX(0);transition:transform .3s ease}.matter-card:hover{transform:translateY(-8px);box-shadow:0 12px 32px #667eea33;border-color:#667eea}.matter-card:hover:before{transform:scaleX(1)}.matter-icon{font-size:3rem;margin-bottom:1rem;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.matter-card h3{font-size:1.3rem;color:#333;margin-bottom:.75rem;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.matter-card p{color:#666;line-height:1.6;margin-bottom:1rem;font-size:.95rem;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.impact-metric{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.75rem 1.5rem;border-radius:25px;font-weight:700;font-size:.95rem;display:inline-block;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.mvp-section-title{font-size:2rem;color:#333;text-align:center;margin:3rem 0 1rem;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.mvp-intro{text-align:center;color:#666;margin-bottom:2.5rem;font-size:1.05rem;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.mvp-showcase{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin-bottom:3rem}.mvp-card{background:#fff;border-radius:16px;padding:2rem;border:2px solid #e0e0e0;transition:all .4s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden;cursor:pointer}.mvp-card:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#667eea0d,#764ba20d);opacity:0;transition:opacity .3s ease}.mvp-card:hover{transform:translateY(-12px) scale(1.02);box-shadow:0 20px 40px #667eea40;border-color:#667eea}.mvp-card:hover:after{opacity:1}.mvp-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f0f0f0;position:relative;z-index:1}.mvp-category{font-size:1.1rem;font-weight:600;color:#667eea;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.mvp-status{background:#4caf501a;color:#4caf50;padding:.4rem .8rem;border-radius:20px;font-size:.8rem;font-weight:600;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.mvp-card h4{font-size:1.5rem;color:#333;margin-bottom:1rem;position:relative;z-index:1;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.mvp-description{color:#666;line-height:1.7;margin-bottom:1.5rem;position:relative;z-index:1;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.mvp-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem;position:relative;z-index:1}.metric-item{text-align:center;padding:1rem;background:#667eea0d;border-radius:12px;transition:all .3s ease}.mvp-card:hover .metric-item{background:#667eea1a;transform:scale(1.05)}.metric-label{display:block;font-size:.75rem;color:#999;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.metric-value{display:block;font-size:1.3rem;font-weight:700;color:#667eea;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.mvp-tech{display:flex;flex-wrap:wrap;gap:.5rem;position:relative;z-index:1}.tech-tag{background:#667eea1a;color:#667eea;padding:.4rem .8rem;border-radius:20px;font-size:.8rem;font-weight:500;font-family:Helvetica,Helvetica Neue,Arial,sans-serif;transition:all .3s ease}.mvp-card:hover .tech-tag{background:#667eea33;transform:translateY(-2px)}.roi-summary{background:linear-gradient(135deg,#667eea1a,#764ba21a);padding:2.5rem;border-radius:16px;border:2px solid #667eea;margin-top:3rem}.roi-summary h3{font-size:2rem;color:#667eea;text-align:center;margin-bottom:2rem;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.roi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.roi-card{background:#fff;padding:2rem;border-radius:12px;text-align:center;border:2px solid #e0e0e0;transition:all .3s ease}.roi-card:hover{transform:translateY(-5px);box-shadow:0 8px 24px #667eea33;border-color:#667eea}.roi-number{font-size:2.5rem;font-weight:700;color:#667eea;margin-bottom:.5rem;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.roi-label{font-size:.95rem;color:#666;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.roi-conclusion{text-align:center;font-size:1.1rem;line-height:1.8;color:#555;margin-top:2rem;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.architecture-diagram{margin-top:2.5rem;padding:2rem;background:#ffffff80;border-radius:16px;border:2px solid rgba(102,126,234,.2);overflow-x:auto}.mcp-architecture{width:100%;max-width:800px;height:auto;display:block;margin:0 auto}.diagram-node{transition:transform .3s ease;cursor:pointer}.diagram-node:hover{transform:scale(1.05)}.diagram-node rect{transition:all .3s ease}.diagram-node:hover rect{opacity:.2;filter:drop-shadow(0 4px 8px rgba(102,126,234,.3))}.chain-diagram-container{margin-top:2.5rem;padding:2rem;background:#ffffff80;border-radius:16px;border:2px solid rgba(102,126,234,.2);animation:slideIn .5s ease}.chain-diagram-title{font-size:1.5rem;color:#667eea;text-align:center;margin-bottom:1.5rem;font-family:Helvetica,Helvetica Neue,Arial,sans-serif}.chain-diagram{overflow-x:auto;padding:1rem 0}.execution-chain-svg{width:100%;max-width:1000px;height:auto;display:block;margin:0 auto}.chain-node{transition:transform .3s ease;cursor:pointer}.chain-node:hover{transform:scale(1.1)}.chain-node circle{transition:all .3s ease}.chain-node:hover circle{opacity:.3;filter:drop-shadow(0 4px 8px rgba(102,126,234,.4))}.data-flow{animation:fadeIn .8s ease}@media (max-width: 768px){.architecture-diagram,.chain-diagram-container{padding:1rem}.mcp-architecture{transform:scale(.7);transform-origin:top left;width:142.857%}.execution-chain-svg{transform:scale(.6);transform-origin:top left;width:166.667%}.chain-diagram-title{font-size:1.2rem}}@media (max-width: 768px){.why-matters-grid,.mvp-showcase,.mvp-metrics,.roi-grid{grid-template-columns:1fr}.mvp-section-title,.roi-summary h3{font-size:1.5rem}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Helvetica,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;color:#333}code{font-family:Helvetica,Helvetica Neue,Arial,sans-serif}
