body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}:focus,a:focus,button:focus{outline:2px solid #667eea;outline-offset:2px}.App{background:linear-gradient(135deg,#667eea,#764ba2);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh}*{box-sizing:border-box;margin:0;padding:0}body{color:#333;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6}.btn{border:none;border-radius:5px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover{box-shadow:0 5px 15px #0003;transform:translateY(-2px)}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#5a6268;transform:translateY(-2px)}.card{background:#fff;border-radius:10px;box-shadow:0 4px 6px #0000001a;margin-bottom:20px;padding:20px}.form-group{margin-bottom:15px}.form-group label{margin-bottom:5px}.form-group input,.form-group select,.form-group textarea{border:1px solid #ddd;border-radius:5px;font-size:14px;padding:10px;transition:border-color .3s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea33;outline:none}.loading-spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;display:inline-block;height:20px;width:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.App{padding:10px}.card{padding:15px}.btn{font-size:13px;padding:8px 16px}}.navbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;box-shadow:0 2px 10px #0000001a;padding:1rem 2rem;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.navbar-brand{align-items:center;display:flex}.navbar-logo{color:#667eea;font-size:1.5rem;font-weight:700;text-decoration:none;transition:color .3s ease}.navbar-logo:hover{color:#764ba2}.navbar-menu{align-items:center;display:flex;gap:2rem}.navbar-item{border-radius:5px;color:#555;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:color .3s ease}.navbar-item:hover{background:#667eea1a;color:#667eea}.navbar-item.active{background:#667eea26;border:2px solid #667eea;color:#667eea;font-weight:600}.navbar-item.active:hover{background:#667eea33}.navbar-user{align-items:center;display:flex;gap:1rem;margin-left:auto}.username{color:#555;font-weight:500}.logout-btn{background:#dc3545;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;padding:.5rem 1rem;transition:background-color .3s ease}.logout-btn:hover{background:#c82333}@media (max-width:768px){.navbar{padding:1rem}.navbar-menu{gap:1rem;margin-top:1rem}.navbar-menu,.navbar-user{flex-direction:column;margin-left:0}.navbar-user{gap:.5rem}}.home-container{margin:0 auto;max-width:1200px;padding:2rem}.hero-section{color:#fff;margin-bottom:4rem;text-align:center}.hero-section h1{font-size:3.5rem;margin-bottom:1rem;text-shadow:2px 2px 4px #0000004d}.subtitle{font-size:1.5rem;font-weight:300;margin-bottom:1rem}.description{font-size:1.2rem;margin-bottom:1rem;opacity:.9}.info{font-size:1rem;margin:0 auto;max-width:800px;opacity:.8}.features-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:4rem}.feature-card{background:#fff;border-radius:15px;box-shadow:0 8px 25px #0000001a;padding:2rem;transition:transform .3s ease,box-shadow .3s ease}.feature-card:hover{box-shadow:0 15px 35px #00000026;transform:translateY(-5px)}.feature-card h3{color:#667eea;font-size:1.5rem;margin-bottom:1rem}.feature-card p{color:#555;line-height:1.6}.cta-section{color:#fff;margin-top:3rem;text-align:center}.cta-section h2{font-size:2.5rem;margin-bottom:1rem;text-shadow:2px 2px 4px #0000004d}.cta-section p{font-size:1.2rem;margin-bottom:2rem;opacity:.9}.cta-buttons{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.cta-btn{border:2px solid #0000;border-radius:10px;display:inline-block;font-size:1.1rem;font-weight:600;padding:15px 30px;text-decoration:none;transition:all .3s ease}.cta-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.cta-btn.primary:hover{box-shadow:0 10px 25px #667eea66;transform:translateY(-3px)}.cta-btn.secondary{background:#0000;border-color:#fff;color:#fff}.cta-btn.secondary:hover{background:#fff;color:#667eea;transform:translateY(-3px)}@media (max-width:768px){.home-container{padding:1rem}.hero-section h1{font-size:2.5rem}.subtitle{font-size:1.2rem}.features-grid{gap:1.5rem;grid-template-columns:1fr}.feature-card{padding:1.5rem}.cta-buttons{align-items:center;flex-direction:column}.cta-btn{max-width:300px;text-align:center;width:100%}}.login-container{align-items:center;display:flex;justify-content:center;min-height:calc(100vh - 80px);padding:2rem}.login-card{background:#fff;border-radius:15px;box-shadow:0 10px 30px #0003;max-width:400px;padding:2.5rem;text-align:center;width:100%}.login-card h2{color:#333;font-size:1.8rem;margin-bottom:1rem}.login-subtitle{color:#666;font-size:.9rem;margin-bottom:2rem}.login-form{text-align:left}.form-group{margin-bottom:1.5rem}.form-group label{color:#555;display:block;font-weight:500;margin-bottom:.5rem}.form-group input{border:2px solid #e1e5e9;border-radius:8px;font-size:16px;padding:12px;transition:all .3s ease;width:100%}.form-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.login-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-top:1rem;padding:12px;transition:all .3s ease;width:100%}.login-btn:hover:not(:disabled){box-shadow:0 5px 15px #667eea66;transform:translateY(-2px)}.login-btn:disabled{cursor:not-allowed;opacity:.6}.error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#721c24;font-size:14px;margin-bottom:1.5rem;padding:12px}@media (max-width:768px){.login-container{padding:1rem}.login-card{padding:2rem}}.chatbot-container{background:#fff;border-radius:15px;box-shadow:0 8px 25px #0000001a;display:flex;height:calc(100vh - 80px);margin:0 auto;max-width:1400px;overflow:hidden}.chatbot-sidebar{background:#f8f9fa;border-right:1px solid #e9ecef;overflow-y:auto;padding:1.5rem;width:300px}.sidebar-section{margin-bottom:2rem}.saved-chats-list{max-height:300px;overflow-y:auto}.saved-chat-item{align-items:center;display:flex;gap:.5rem;margin-bottom:.5rem}.load-chat-btn{background:#fff;border:1px solid #ddd;border-radius:6px;color:#333;cursor:pointer;flex:1 1;font-size:13px;padding:8px 12px;text-align:left;transition:all .3s ease}.load-chat-btn:hover{background:#f8f9fa;border-color:#667eea}.delete-chat-btn{background:#dc3545;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:6px 8px;transition:background-color .3s ease}.delete-chat-btn:hover{background:#c82333}.auth-error{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin-bottom:1rem;padding:1rem;text-align:center}.auth-error p{color:#856404;font-size:14px;margin:.5rem 0}.auth-error .sidebar-btn{background:#dc3545;margin-top:.5rem}.auth-error .sidebar-btn:hover{background:#c82333}.chatbot-main{display:flex;flex:1 1;flex-direction:column}.save-chat-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:15px;max-width:400px;padding:2rem;width:90%}.modal-content h3{color:#333;margin-bottom:1.5rem}.chat-title-input{border:2px solid #e1e5e9;border-radius:8px;font-size:16px;margin-bottom:1.5rem;padding:12px;width:100%}.chat-title-input:focus{border-color:#667eea;outline:none}.modal-buttons{display:flex;gap:1rem;justify-content:flex-end}.save-btn{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px}.save-btn:hover{background:#218838}.cancel-btn{background:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px}.cancel-btn:hover{background:#5a6268}@media (max-width:768px){.chatbot-container{flex-direction:column;height:auto;margin:1rem}.chatbot-sidebar{border-bottom:1px solid #e9ecef;border-right:none;width:100%}.message-content{max-width:85%}.chat-input{align-items:stretch;flex-direction:column}.send-btn{align-self:flex-end}}.chatgis-map-container{border:1px solid #ddd;border-radius:4px;flex-shrink:0;margin-bottom:20px;overflow:hidden;position:relative}#chatgisMapView,.chatgis-map-container{height:500px;transition:height .3s ease}#chatgisMapView{border-radius:10px;width:100%}.chatgis-map-toggle-btn{background:#1f77b4;border:none;border-radius:5px;bottom:10px;box-shadow:0 2px 8px #0003;color:#fff;cursor:pointer;font-size:16px;padding:8px 12px;position:absolute;right:10px;transition:background-color .3s ease;z-index:1000}.chatgis-map-toggle-btn:hover{background:#0d5aa7}.chatgis-map-toggle-btn:active{transform:scale(.95)}.chatgis-map-container.chatgis-minimized{flex-shrink:0;height:60px!important;overflow:hidden}.chatgis-map-container.chatgis-minimized #chatgisMapView{height:60px!important}.chatgis-map-container.chatgis-intermediate{flex-shrink:0;height:280px!important;overflow:hidden}.chatgis-map-container.chatgis-intermediate #chatgisMapView{height:280px!important}.chatgis-map-container.chatgis-maximized{flex-shrink:0;height:500px!important;overflow:hidden}.chatgis-map-container.chatgis-maximized #chatgisMapView{height:500px!important}.chatgis-minimize-icon,.chatgis-restore-icon{transition:opacity .3s ease}.chatbot-main.map-expanded .chat-messages{max-height:calc(100vh - 700px)}.chatbot-main.map-minimized .chat-messages{max-height:calc(100vh - 260px)}.chatbot-main.map-intermediate .chat-messages{max-height:calc(100vh - 480px)}.video-container{padding-bottom:56.25%}.message-internal{background-color:#e3f2fd!important;border-left:4px solid #2196f3;border-radius:4px;font-style:italic;margin:8px 0;opacity:.8;padding:8px 12px}.tool-calls{background-color:#f5f5f5;border-radius:4px;font-size:.9em;margin-top:8px;padding:8px}.tool-call{background-color:#fff;border:1px solid #ddd;border-radius:2px;margin:4px 0;padding:4px 8px}.mcp-tools-indicator{background-color:#4caf50;border-radius:4px;color:#fff;font-size:.8em;padding:4px 8px;position:fixed;right:10px;top:10px;z-index:1000}.mcp-tools-error{background-color:#f44336}.mcp-tools-loading{background-color:#ff9800}.debug-mode-indicator{background:#ff9800;border-radius:15px;color:#fff;font-size:.8em;padding:5px 10px;position:fixed;right:10px;top:10px;z-index:1000}.rag-chatbot-container{background:#fff;border-radius:15px;box-shadow:0 8px 25px #0000001a;display:flex;height:calc(100vh - 80px);margin:0 auto;max-width:1400px;overflow:hidden}.rag-chatbot-sidebar{background:#f8f9fa;border-right:1px solid #e9ecef;overflow-y:auto;padding:1.5rem;width:300px}.sidebar-section{margin-bottom:1.25rem}.sidebar-section h3{border-bottom:2px solid #667eea;color:#333;font-size:1.1rem;margin-bottom:1rem;padding-bottom:.5rem}.control-group{margin-bottom:1.5rem}.control-group label{align-items:center;color:#333;cursor:pointer;display:flex;font-weight:500;gap:.5rem;margin-bottom:.5rem}.control-group input[type=checkbox]{margin:0;width:auto}.control-group small{color:#666;display:block;font-size:12px;line-height:1.4;margin-top:.25rem}.session-id{background:#e3f2fd;border-radius:4px;color:#1976d2!important;display:inline-block;font-family:monospace;font-weight:500;margin-top:.25rem;padding:2px 6px}.sidebar-btn{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;margin-bottom:.5rem;padding:10px;transition:background-color .3s ease;width:100%}.sidebar-btn:hover{background:#5a6fd8}.rag-chatbot-main{display:flex;flex:1 1;flex-direction:column;height:100%;min-height:0}.chat-messages{background:#f8f9fa;flex:1 1;min-height:0;overflow-y:auto;padding:1.5rem}.rag-chatbot-main.map-expanded .chat-messages{max-height:calc(100vh - 700px)}.rag-chatbot-main.map-minimized .chat-messages{max-height:calc(100vh - 260px)}.rag-chatbot-main.map-intermediate .chat-messages{max-height:calc(100vh - 480px)}.welcome-message{background:#fff;border-radius:15px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem;padding:2rem;text-align:center}.welcome-message h3{color:#667eea;font-size:1.5rem;margin-bottom:1rem}.welcome-message p{color:#555;line-height:1.6;margin-bottom:1rem}.welcome-message p:last-child{margin-bottom:0}.message{display:flex;gap:1rem;margin-bottom:1.5rem}.message.user{flex-direction:row-reverse}.message-avatar{flex-shrink:0;font-size:2rem}.message-content{flex:1 1;max-width:70%}.message.user .message-content{text-align:right}.message-text{word-wrap:break-word;background:#fff;border-radius:15px;box-shadow:0 2px 8px #0000001a;font-family:inherit;line-height:1.6;padding:1rem;white-space:pre-wrap}.message.assistant .message-text{text-align:left;white-space:pre-wrap}.message-text p{margin:0 0 1rem}.message-text p:last-child{margin-bottom:0}.message-text ol,.message-text ul{margin:0 0 1rem;padding-left:1.5rem}.message-text li{margin-bottom:.5rem}.message-text li:last-child{margin-bottom:0}.message-text code{background:#f8f9fa;border-radius:4px;font-family:Courier New,monospace;font-size:.9em;padding:.2rem .4rem}.message-text pre{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:1rem 0;overflow-x:auto;padding:1rem}.message-text pre code{background:none;border-radius:0;padding:0}.message.user .message-text{background:#667eea;color:#fff}.loading-indicator{color:#666;font-style:italic}.chat-input{align-items:flex-end;background:#fff;border-top:1px solid #e9ecef;display:flex;flex-shrink:0;gap:1rem;margin-bottom:1rem;padding:1rem 1.5rem 1.5rem}.chat-input textarea{border:2px solid #e1e5e9;border-radius:8px;flex:1 1;font-family:inherit;font-size:14px;height:40px;line-height:1.4;padding:12px;resize:none}.chat-input textarea:focus{border-color:#667eea;outline:none}.send-btn{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease}.send-btn:hover:not(:disabled){background:#5a6fd8;transform:translateY(-1px)}.send-btn:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.rag-chatbot-container{flex-direction:column;height:auto;margin:1rem}.rag-chatbot-sidebar{border-bottom:1px solid #e9ecef;border-right:none;width:100%}.message-content{max-width:85%}.chat-input{align-items:stretch;flex-direction:column}.send-btn{align-self:flex-end}}.auth-required-message{align-items:center;display:flex;flex-direction:column;height:100vh;justify-content:center;padding:2rem}.auth-required-message h3{color:#667eea;font-size:1.5rem;margin-bottom:1rem}.auth-required-message p{color:#666;font-size:1.1rem}.georag-map-container{border:1px solid #ddd;border-radius:4px;flex-shrink:0;margin-bottom:20px;overflow:hidden;position:relative}#georagMapView,.georag-map-container{height:500px;transition:height .3s ease}#georagMapView{border-radius:10px;width:100%}.georag-map-toggle-btn{background:#1f77b4;border:none;border-radius:5px;bottom:10px;box-shadow:0 2px 8px #0003;color:#fff;cursor:pointer;font-size:16px;padding:8px 12px;position:absolute;right:10px;transition:background-color .3s ease;z-index:1000}.georag-map-toggle-btn:hover{background:#0d5aa7}.georag-map-toggle-btn:active{transform:scale(.95)}.georag-map-container.georag-minimized{flex-shrink:0;height:60px!important;overflow:hidden}.georag-map-container.georag-minimized #georagMapView{height:60px!important}.georag-map-container.georag-intermediate{flex-shrink:0;height:280px!important;overflow:hidden}.georag-map-container.georag-intermediate #georagMapView{height:280px!important}.georag-minimize-icon,.georag-restore-icon{transition:opacity .3s ease}.geo-link{color:#1f77b4;cursor:pointer;font-weight:500;text-decoration:underline;transition:color .3s ease}.geo-link:hover{color:#0d5aa7;text-decoration:none}.message.user .geo-link{color:#b3d9ff;font-weight:600;text-decoration:underline}.message.user .geo-link:hover{color:#fff;text-decoration:none}.video-container{border-radius:8px;box-shadow:0 2px 8px #0000001a;height:0;margin-top:1rem;overflow:hidden;padding-bottom:50.625%;position:relative;width:100%}.video-thumbnail{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;cursor:pointer;display:flex;flex-direction:column;height:100%;justify-content:center;left:0;padding:1rem;position:absolute;text-align:center;top:0;transition:all .3s ease;width:100%}.video-thumbnail:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-2px)}.video-title{font-size:1rem;font-weight:600;margin-bottom:.5rem;text-shadow:0 1px 2px #0000004d}.play-icon{font-size:2rem;opacity:.9;transition:opacity .3s ease}.video-thumbnail:hover .play-icon{opacity:1}.responsive-video{border-radius:8px;height:100%;left:0;position:absolute;top:0;width:100%}@media (max-width:768px){.video-container{margin-top:.75rem;padding-bottom:56.25%}}.collapsible-header{align-items:center;border-radius:4px;cursor:pointer;display:flex;justify-content:space-between;padding:.25rem;transition:background-color .2s ease;-webkit-user-select:none;user-select:none}.collapsible-header:hover{background-color:#667eea1a}.collapsible-header h3{margin:0;pointer-events:none}.collapse-icon{color:#667eea;font-size:.8rem;font-weight:700;transition:transform .3s ease}.collapse-icon.expanded{transform:rotate(0deg)}.collapse-icon.collapsed{transform:rotate(-90deg)}.collapsible-content{overflow:hidden;transition:max-height .3s ease,opacity .3s ease}.collapsible-content.expanded{max-height:500px;opacity:1}.collapsible-content.collapsed{max-height:0;opacity:0}.about-container{margin:0 auto;max-width:800px;padding:2rem}.about-content{background:#fff;border-radius:15px;box-shadow:0 8px 25px #0000001a;padding:2.5rem}.about-content h2{color:#667eea;font-size:2.5rem;margin-bottom:2rem;text-align:center}.about-section{border-bottom:1px solid #eee;margin-bottom:2rem;padding-bottom:1.5rem}.about-section:last-child{border-bottom:none;margin-bottom:0}.about-section h3{color:#333;font-size:1.3rem;margin-bottom:1rem}.about-section p{color:#555;line-height:1.7;margin-bottom:1rem}.about-section p:last-child{margin-bottom:0}@media (max-width:768px){.about-container{padding:1rem}.about-content{padding:1.5rem}.about-content h2{font-size:2rem}}.settings-container{font-family:Arial,sans-serif;margin:0 auto;max-width:880px;padding:20px}.settings-container h2{border-bottom:2px solid #007bff;color:#333;margin-bottom:30px;padding-bottom:10px}.settings-section{background:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;margin-bottom:30px;padding:20px}.settings-section h3{border-bottom:1px solid #dee2e6;color:#495057;margin-bottom:20px;margin-top:0;padding-bottom:10px}.setting-item{margin-bottom:20px}.setting-label{color:#495057;display:block;font-weight:700;margin-bottom:10px}.model-select{background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;padding:8px 12px;width:100%}.model-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.salutation-select{background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;max-width:200px;padding:8px 12px;width:100%}.salutation-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.radio-group{display:flex;flex-direction:column;gap:10px}.radio-option{align-items:center;border-radius:4px;cursor:pointer;display:flex;padding:8px;transition:background-color .2s}.radio-option:hover{background-color:#e9ecef}.radio-option input[type=radio]{margin-right:10px;transform:scale(1.2)}.radio-option span{color:#495057}.checkbox-option{align-items:center;border-radius:4px;cursor:pointer;display:flex;padding:8px;transition:background-color .2s}.checkbox-option:hover{background-color:#e9ecef}.checkbox-option input[type=checkbox]{margin-right:10px;transform:scale(1.2)}.checkbox-option span{color:#495057}.checkbox-option span.disabled{color:#6c757d;cursor:not-allowed;opacity:.5}.checkbox-option input[type=checkbox]:disabled{cursor:not-allowed;filter:grayscale(100%);opacity:.4}.debug-section{background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;margin-top:20px;padding:15px}.debug-section summary{color:#6c757d;cursor:pointer;font-weight:700;margin-bottom:10px}.debug-section pre{background:#fff;border:1px solid #dee2e6;border-radius:4px;color:#495057;font-size:12px;overflow-x:auto;padding:15px}.auth-required-message{color:#6c757d;padding:40px;text-align:center}.auth-required-message h3{color:#495057;margin-bottom:15px}.areas-section{background-color:#f9f9f9;border:1px solid #ddd;border-radius:8px;margin:20px 0;padding:15px}.areas-section label{align-items:center;cursor:pointer;display:flex;font-weight:700;gap:8px;margin-bottom:15px}.areas-section input[type=checkbox]{cursor:pointer;height:18px;transition:all .2s ease;width:18px}.areas-section input[type=checkbox]:checked{transform:scale(1.1)}#areas-container,#chatgis-areas-container{margin-top:15px}.areas-header{align-items:center;display:flex;font-weight:700;gap:10px;margin-bottom:15px}#areas-inputs,#chatgis-areas-inputs{display:flex;flex-direction:row;gap:15px;justify-content:space-between}.area-input{background-color:#fff;border:1px solid #e0e0e0;border-radius:6px;flex:1 1;max-width:300px;min-width:200px;padding:15px}.area-input h4{align-items:center;color:#333;display:flex;font-size:16px;gap:8px;justify-content:center;margin:0 0 15px;text-align:center}.area-input h4 input[type=checkbox]{cursor:pointer;height:16px;margin:0;width:16px}.area-input h4 input[type=checkbox]:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.5}.area-preset-selector{margin-bottom:15px;text-align:center}.area-preset-selector label{color:#555;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.preset-select{background-color:#fff;border:1px solid #ccc;border-radius:4px;box-sizing:border-box;cursor:pointer;font-size:14px;max-width:200px;padding:8px 12px;width:100%}.preset-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.coordinate-inputs{gap:10px}.coord-group,.coordinate-inputs{display:flex;flex-direction:column}.coord-group{gap:5px}.coord-group label{color:#555;font-size:12px;font-weight:500;margin:0}.coord-group input{border:1px solid #ccc;border-radius:4px;box-sizing:border-box;font-family:monospace;font-size:12px;min-width:120px;padding:6px 8px;width:100%}.coord-group input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.coord-group input::placeholder{color:#999;font-size:11px}.coord-group input:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.5}@media (max-width:768px){.settings-container{padding:15px}#areas-inputs,#chatgis-areas-inputs{flex-direction:column;gap:15px}.areas-header{align-items:flex-start;flex-direction:column;gap:8px}.area-input{max-width:none;min-width:auto;padding:12px}.coord-group input{font-size:14px;padding:8px 10px}}@media (max-width:1200px){#areas-inputs,#chatgis-areas-inputs{flex-direction:column;gap:15px}.area-input{max-width:none;min-width:auto}}.button-group{align-items:center;display:flex;flex-wrap:wrap;gap:15px}.save-button{background-color:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;min-width:120px;padding:12px 24px;transition:all .2s ease}.save-button:hover:not(:disabled){background-color:#0056b3;box-shadow:0 4px 8px #007bff4d;transform:translateY(-1px)}.save-button:active:not(:disabled){box-shadow:0 2px 4px #007bff4d;transform:translateY(0)}.save-button:disabled{background-color:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}.save-message{border-radius:6px;font-weight:500;margin-top:10px;padding:10px 15px;text-align:center}.save-message.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.save-message.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.refresh-button{background-color:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;min-width:120px;padding:12px 24px;transition:all .2s ease}.refresh-button:hover{background-color:#5a6268;box-shadow:0 4px 8px #6c757d4d;transform:translateY(-1px)}.refresh-button:active{box-shadow:0 2px 4px #6c757d4d;transform:translateY(0)}.hydrology-container{margin:0 auto;max-width:1200px;min-height:calc(100vh - 80px);padding:2rem}.hydrology-header{border-bottom:2px solid #e0e0e0;margin-bottom:3rem;padding-bottom:2rem;text-align:center}.hydrology-header h1{color:#2c3e50;font-size:2.5rem;margin-bottom:.5rem}.hydrology-header .subtitle{color:#fff;font-size:1.2rem;font-weight:300}.hydrology-content{display:flex;flex-direction:column;gap:2rem}.development-notice{background:linear-gradient(135deg,#fff3cd,#ffeaa7);border:1px solid #fdcb6e;border-radius:8px;padding:1.5rem;text-align:center}.development-notice h2{color:#d63031;font-size:1.5rem;margin-bottom:1rem}.development-notice p{color:#2d3436;line-height:1.6;margin:0}.ai-description{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:2rem}.ai-description h2{color:#2c3e50;font-size:1.8rem;margin-bottom:1rem}.ai-description p{color:#34495e;line-height:1.6;margin-bottom:1rem}.ai-description p:last-child{margin-bottom:0}.collaboration-section{background:linear-gradient(135deg,#74b9ff,#0984e3);border-radius:8px;color:#fff;padding:2rem;text-align:center}.collaboration-section h2{font-size:1.8rem;margin-bottom:1rem}.collaboration-section p{line-height:1.6;margin-bottom:1.5rem}.contact-info{background:#ffffff1a;border-radius:6px;margin-top:1rem;padding:1.5rem}.contact-info p{font-weight:500;margin:0}.future-plans{background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:2rem}.future-plans h2{color:#2c3e50;font-size:1.8rem;margin-bottom:1rem}.future-plans p{color:#34495e;line-height:1.6;margin:0}@media (max-width:768px){.hydrology-container{padding:1rem}.hydrology-header h1{font-size:2rem}.hydrology-header .subtitle{font-size:1rem}.ai-description,.collaboration-section,.development-notice,.future-plans{padding:1.5rem}}
/*# sourceMappingURL=main.5407b0d7.css.map*/