.home-page{background-attachment:fixed;background-image:url(/static/media/background.8ecc8996fafd13704455.jpeg);background-position:50%;background-repeat:no-repeat;background-size:cover;display:flex;flex-direction:column;min-height:100vh;position:relative;width:100%}.nav-link-button{background-color:#06c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;margin:0 8px;padding:8px 16px;transition:background-color .2s ease,transform .15s ease}.nav-link-button:hover{background-color:#005bb5;transform:translateY(-1px)}.nav-link-button:active{background-color:#004c99;transform:translateY(0)}.nav-link-button:focus{box-shadow:0 0 0 3px #06c6;outline:none}.nav-bar{background-color:#fff;box-shadow:0 2px 4px #0000001a;justify-content:space-between;padding:1rem 2rem}.logo-section,.nav-bar{align-items:center;display:flex}.logo{height:50px;margin-right:8px;width:50px}.logo-text{font-size:20px;font-weight:700}.nav-links a{color:#333;font-weight:500;margin:0 10px;text-decoration:none}.user-icons{font-size:20px;margin-left:10px}.welcome-section{flex:1 1;padding:5rem 2rem;text-align:center}.welcome-section h1{color:#fff;font-size:3.5rem;margin-bottom:1rem}.welcome-section p{color:#fff;font-size:1.5rem;margin-bottom:2rem}.get-started-button{background-color:green;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1.5rem;padding:.75rem 2rem}.footer{background-color:#f9f9f9;display:flex;justify-content:center;padding:1rem}.footer a{  color:#333;margin:0 15px;text-decoration:none}.dashboard-container{padding:2rem}.dashboard-title{color:var(--primary-dark);margin-bottom:1.5rem}.tiles-container{display:flex;gap:1rem;margin-bottom:2rem}.tile{background-color:var(--white);border-radius:8px;box-shadow:0 2px 5px #0000001a;flex:1 1;padding:1.5rem;text-align:center}.tile h2{color:var(--primary-green);font-size:2rem;margin:0 0 .5rem}.tile p{color:var(--primary-dark);font-weight:700;margin:0}.activity-feed{background-color:var(--white);border-radius:8px;box-shadow:0 2px 5px #0000001a;margin-bottom:2rem;padding:1.5rem}.activity-feed h3{color:var(--primary-dark);margin-bottom:1rem}.activity-feed ul{list-style:none;padding:0}.activity-feed li{border-bottom:1px solid #eee;color:#555;display:flex;justify-content:space-between;padding:.5rem 0}.quick-actions{background-color:var(--white);border-radius:8px;box-shadow:0 2px 5px #0000001a;padding:1.5rem}.quick-actions h3{color:var(--primary-dark);margin-bottom:1rem}.primary-button{margin-right:1rem;padding:.75rem 1.5rem}.primary-button:hover{background-color:#3b8238}.deputees-container{border:1px solid #ddd;border-radius:12px;box-shadow:0 2px 12px #0000000d;margin:2rem auto;padding:2rem}.deputees-container h1{color:var(--primary-dark);font-size:2rem;margin-bottom:1.5rem}.view-toggle{justify-content:flex-end}.view-action,.view-toggle{align-items:center;display:flex;gap:1rem;margin-bottom:1.5rem}.toggle-icon{background:none;border:none;color:#888;cursor:pointer;font-size:1.5rem;margin-right:.5rem;transition:transform .2s ease}.toggle-icon:hover{color:var(--primary-green);transform:scale(1.15)}.toggle-icon.active{color:var(--primary-dark)}.back-button,.primary-button{background-color:var(--primary-green);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:background-color .2s ease}.back-button:hover,.primary-button:hover{background-color:#367b35}.back-button{background-color:#bbb;margin-bottom:1.5rem}.deputees-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.deputee-card{background:#fff;border-radius:10px;box-shadow:0 4px 12px #00000014;display:flex;flex-direction:column;height:280px;justify-content:space-between;padding:1.25rem;text-align:center;width:250px}.deputee-card:hover{transform:translateY(-5px)}.deputee-avatar{font-size:3rem;margin-bottom:.75rem}.deputee-card h3{color:#333;font-size:1.2rem;margin:.5rem 0 .25rem}.deputee-card p{color:#666;margin:.25rem 0}.deputees-table{background:#fff;border-collapse:collapse;border-radius:8px;box-shadow:0 2px 6px #0000000f;overflow:hidden;width:100%}.deputees-table td,.deputees-table th{border-bottom:1px solid #eee;padding:1rem;text-align:left}.deputees-table th{background-color:#f1f3f5;color:#333;font-weight:600}.deputees-table tbody tr:hover{background-color:#f9f9f9}.deputee-card button,.deputees-table button{background-color:#eee;border:1px solid #ccc;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:700;padding:.4rem .8rem}.deputee-card button:hover,.deputees-table button:hover{background-color:#ddd}.deputee-form{box-shadow:0 4px 16px #00000014;max-width:800px;padding:2rem 2.5rem}.deputee-form h2{color:var(--primary-dark);font-size:1.6rem;text-align:center}.deputee-form .form-group,.deputee-form h2{margin-bottom:1.5rem}.deputee-form label{color:#444;display:block;font-weight:600;margin-bottom:.5rem}.deputee-form input[type=text],.deputee-form select{background:#f9f9f9;border:1px solid #ccc;border-radius:6px;font-size:1rem;padding:.6rem .8rem;transition:border-color .2s ease;width:100%}.deputee-form input:focus,.deputee-form select:focus{border-color:var(--primary-green);outline:none}.deputee-form .form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.section-title{color:var(--primary-dark);display:block;margin-bottom:.5rem;margin-top:1.5rem}.card-actions{display:flex;gap:.5rem;justify-content:center;margin-top:1rem}.card-actions button{background:#f0f0f0;border:none;border-radius:6px;cursor:pointer;font-size:1.1rem;padding:.4rem .6rem;transition:background-color .2s ease}.card-actions button:hover{background-color:#ddd}.table-actions{align-items:center;display:flex;gap:.5rem;justify-content:flex-start}.table-actions button{background:#f1f3f5;border:1px solid #ccc;border-radius:6px;cursor:pointer;font-size:.95rem;min-width:40px;padding:.4rem .6rem;transition:background-color .2s ease}.table-actions button:hover{background-color:#e2e8f0}.deputee-form{animation:fadeSlideIn .4s ease;background:#fff;border-radius:12px;box-shadow:0 6px 18px #00000014;margin:2rem auto;max-width:900px;padding:2rem}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.deputee-form-content{display:flex;flex-wrap:wrap;gap:2rem}.avatar-section{flex:1 1 250px;text-align:center}.avatar-icon{font-size:4rem;margin-bottom:1rem}.avatar-edit{background:#f3f3f3;border-radius:6px;color:#333;cursor:pointer;display:inline-block;font-size:.9rem;margin-top:.5rem;padding:.3rem .6rem}.avatar-edit:hover{background:#e1e1e1}.form-fields{flex:2 1 500px}.form-row label{color:#444;display:block;font-weight:600;margin-bottom:.4rem}.form-actions{gap:1rem;margin-top:2rem}.avatar-image{background:#f0f0f0;border-radius:50%;display:block;height:80px;margin:0 auto 1rem;object-fit:cover;width:80px}.configuration-dashboard-container{display:flex;flex-direction:column;gap:12px;margin:auto;max-width:600px;padding:16px}.config-card{background-color:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;color:#1976d2;cursor:pointer;font-weight:700;padding:10px;text-align:center;transition:transform .3s ease,background-color .2s}.config-card:hover{background-color:#e0e0e0;box-shadow:0 6px 12px #00000026;transform:scale(1.05)}.loading-container{align-items:center;display:flex;flex-direction:column;height:90vh;justify-content:center}.spinner{animation:spin 1s linear infinite;border:5px solid #d3d3d3;border-top-color:#1976d2;height:48px;margin-bottom:10px;width:48px}.loading-container p{color:#1976d2;font-size:16px;font-weight:700}.deputee-dashboard-container{background:linear-gradient(135deg,#f0f4f8,#d9e2ec);border:1.5px solid #cbd5e1;border-radius:16px;box-shadow:0 8px 20px #0d2f531f,inset 0 0 10px #fff9;display:flex;flex-direction:row;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;height:90vh;margin:30px auto;overflow:hidden;transition:box-shadow .3s ease,transform .3s ease}.deputee-dashboard-container:hover{box-shadow:0 14px 30px #0d2f5340,inset 0 0 15px #fffc;transform:translateY(-5px)}.chat-section{background-color:#fff;border-right:1px solid #ddd;display:flex;flex:3 1;flex-direction:column;padding:24px}.chat-section h1{color:#0d2f53;font-size:26px;margin-bottom:16px}.deputee-select{margin-bottom:18px;transition:border .2s}.chat-window{max-height:0;padding:1rem}.chat-message-wrapper{align-items:flex-start;display:flex;margin-bottom:16px;transition:transform .2s ease}.chat-message-wrapper:hover{transform:translateY(-2px)}.chat-message-wrapper.user{flex-direction:row-reverse}.chat-message-wrapper.agent{flex-direction:row}.chat-avatar img{border-radius:50%;box-shadow:0 0 5px #0000001a;height:36px;margin:0 .75rem;object-fit:cover;transition:box-shadow .3s ease;width:36px}.chat-avatar img:hover{box-shadow:0 0 10px #0d2f5366}.chat-message{margin-left:5%;margin-right:5%;max-width:95%}.chat-sender-name{color:#666;font-size:.8rem;font-weight:600;margin-bottom:.25rem}.message-bubble{line-height:1.25;max-width:100%;overflow:auto;resize:both}.chat-message-wrapper.user .message-bubble{background:linear-gradient(145deg,#0055af,#007bff);box-shadow:0 4px 15px #007bff66;color:#fff;padding:14px 22px}.chat-message-wrapper.user .message-bubble:hover{background:linear-gradient(145deg,#007bff,#39f);box-shadow:0 6px 20px #007bff99;cursor:pointer}.chat-message-wrapper.agent .message-bubble:hover{background:linear-gradient(145deg,#dfe3e8,#c4c9d4);box-shadow:0 6px 20px #0000001a;cursor:pointer}.chat-message-wrapper.user .message-bubble:after{border-bottom:12px solid #0000;border-left:12px solid #007bff;border-top:12px solid #0000;content:"";filter:drop-shadow(1px 0 0 rgba(0,0,0,.05));height:0;position:absolute;right:-12px;top:16px;width:0}.chat-message-wrapper.agent .message-bubble{background:linear-gradient(145deg,#f0f2f5,#d6d5d5);box-shadow:0 3px 10px #00000012;color:#333;padding:14px 20px}.chat-message-wrapper.agent .message-bubble:after{border-bottom:12px solid #0000;border-right:12px solid #d9dee6;border-top:12px solid #0000;content:"";filter:drop-shadow(-1px 0 0 rgba(0,0,0,.05));height:0;left:-12px;position:absolute;top:16px;width:0}.chat-input-container input{border:1px solid #c34c4c}.custom-textarea{border:1px solid #ccc;border-radius:6px;font-size:16px;line-height:1.4;padding:10px;resize:vertical;width:100%}.admin-section{background-color:#f4f6fa;flex:1 1;padding:24px}.admin-section h2{color:#0d2f53;margin-bottom:16px;margin-top:0;text-align:center}.chart-container{margin-top:20px}.chart-container h4{color:#333;margin-bottom:10px}@media (max-width:768px){.deputee-dashboard-container{flex-direction:column}.chat-window{max-height:40vh}.chat-message{max-width:100%}.admin-section,.chat-section{padding:16px}}@media (max-width:480px){.chat-input-container{flex-direction:column;gap:8px}.chat-input-container input,.send-button{margin:0;width:100%}}.modal-overlay{background-color:#0006;z-index:999}.modal-content{background-color:#fff;border-radius:10px;box-shadow:0 8px 20px #0003;max-height:fit-content;max-width:80%;padding:24px;width:600px}.modal-content h3{color:#0d2f53;margin-bottom:16px}.modal-content textarea{border:1px solid #ccc;border-radius:6px;box-sizing:border-box;font-size:14px;min-height:300px;padding:12px;resize:vertical;width:100%}.modal-content .primary-button,.modal-content .secondary-button{border:none;border-radius:6px;cursor:pointer;font-size:14px;margin-right:10px;padding:10px 18px}.modal-content .primary-button{background-color:#007bff;color:#fff}.modal-content .secondary-button{background-color:#ddd;color:#333}.roles-container{padding:2rem}.roles-title{color:var(--primary-dark);margin-bottom:1.5rem}.roles-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.roles-filters input[type=text],.roles-filters select{border:1px solid #ccc;border-radius:4px;font-size:1rem;min-width:200px;padding:.5rem}.roles-filters input[type=text],.roles-filters select{background-color:var(--white);color:var(--primary-dark)}.roles-table-container{background-color:var(--white);border-radius:8px;box-shadow:0 2px 5px #0000001a;padding:1rem}.roles-table{border-collapse:collapse;width:100%}.roles-table td,.roles-table th{border-bottom:1px solid #eee;padding:.75rem;text-align:left}.roles-table th{background-color:#f0f0f0;color:var(--primary-dark)}.deputee-selection select{background-color:var(--white);border:1px solid #ccc;border-radius:4px;color:var(--primary-dark);font-size:1rem;margin-bottom:1.5rem;min-width:200px;padding:.5rem}.skills-container{background:#fff;border:1px solid #ddd;border-radius:12px;box-shadow:0 2px 12px #0000000d;margin:2rem auto}.skills-title{color:#333;font-weight:600}.skills-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.skills-filters input,.skills-filters select{border:1px solid #ccc;border-radius:8px;flex:1 1 200px;font-size:1rem;min-width:180px;padding:.6rem 1rem}.action-button,.primary-button,.secondary-button{border:none;border-radius:6px;cursor:pointer;font-size:.95rem;font-weight:500;padding:.5rem 1.25rem}.secondary-button{background-color:#f5f5f5;border:1px solid #ccc;color:#333}.secondary-button:hover{background-color:#e0e0e0}.action-button{background-color:#1976d2;color:#fff}.action-button:hover{background-color:#1565c0}.skills-table-container{overflow-x:auto}.skills-table{background-color:#fff;box-shadow:0 1px 3px #0000000d;font-size:.95rem}.skills-table td,.skills-table th{border-bottom:1px solid #e0e0e0;padding:.75rem 1rem}.skills-table th{background-color:#f0f0f0}.skills-table tbody tr:hover{background-color:#fafafa}.skills-table td button{margin-right:.4rem}.skills-container{background-color:#f8f9fb;font-family:Segoe UI,sans-serif;padding:2rem}.skills-title{color:var(--primary-dark);font-size:2rem;margin-bottom:1.5rem}.skills-view-toggle{align-items:center;display:flex;gap:1rem;justify-content:flex-end;margin-bottom:1.5rem}.skills-button-primary,.skills-button-secondary{border:none;border-radius:6px;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:background-color .2s ease}.skills-button-primary{background-color:var(--primary-green);color:#fff}.skills-button-primary:hover{background-color:#367b35}.skills-button-secondary{background-color:#bbb;color:#fff}.skills-button-secondary:hover{background-color:#999}.skills-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.skill-card{background:#fff;border-radius:10px;box-shadow:0 4px 12px #00000014;padding:1.25rem;text-align:flex-left;transition:transform .2s ease}.skill-card:hover{transform:translateY(-5px)}.skill-avatar{font-size:3rem;margin-bottom:.75rem}.skill-avatar-image{background-color:#f0f0f0;border-radius:50%;display:block;height:60px;margin:.75rem;object-fit:cover;width:60px}.skill-name{color:#333;font-size:1.2rem;margin:.5rem 0 .25rem}.skill-description{color:#666;margin:.25rem 0}.skills-table{background:#fff;border-radius:8px;box-shadow:0 2px 6px #0000000f;overflow:hidden}.skills-table th{background-color:#f1f3f5;color:#333;font-weight:600}.skills-table{border-collapse:collapse;table-layout:fixed;width:100%}.skills-table td,.skills-table th{border-bottom:1px solid #eee;overflow:auto;padding:1rem;resize:horizontal;text-align:left;vertical-align:top}.skills-table td.name-col,.skills-table th.name-col{width:160px}.skills-table td.description-col,.skills-table th.description-col{width:280px}.skills-table td.function-col,.skills-table td.inputs-col,.skills-table td.module-col,.skills-table td.outputs-col,.skills-table th.function-col,.skills-table th.inputs-col,.skills-table th.module-col,.skills-table th.outputs-col{width:180px}.skills-table tbody tr:hover{background-color:#f9f9f9}.skill-json{color:#666;font-size:.75rem;white-space:pre-wrap}.skills-form-container{background:#fff;border:1px solid #ddd;border-radius:12px;box-shadow:0 2px 10px #0000000d;margin:2rem auto;max-width:800px;padding:2rem}.skills-form-container h2{font-size:1.8rem;margin-bottom:1.5rem}.skills-form-container form{display:flex;flex-direction:column;gap:1.25rem}.skills-form-container input,.skills-form-container select,.skills-form-container textarea{border:1px solid #ccc;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:1rem;padding:.75rem 1rem;width:100%}.skills-form-container textarea{min-height:100px;resize:vertical}.skills-form-container label{color:#333;display:block;font-weight:500;margin-bottom:.25rem}.skills-form-container .form-section{display:flex;flex-wrap:wrap;gap:1rem}.skills-form-container .form-section>div{flex:1 1;min-width:300px}.multi-select-box{background-color:#fff;height:auto;min-height:100px}.catalog-select-area{display:flex;flex-direction:column;gap:.5rem}.catalog-list-box{background:#f9f9f9;border:1px solid #ccc;border-radius:8px;max-height:200px;overflow-y:scroll;padding:.5rem}.catalog-list-box div{border-radius:4px;cursor:pointer;padding:.5rem}.catalog-list-box div:hover{background-color:#efefef}.catalog-list-box div.selected{background-color:#4caf50;color:#fff}.form-actions{display:flex;justify-content:flex-end;margin-top:1rem}.primary-button{background-color:#4caf50;border-radius:8px;font-size:1rem;padding:.65rem 1.5rem}.primary-button:hover{background-color:#43a047}.back-button{background:none;border:none;color:#007bff;cursor:pointer;font-size:1rem;margin-bottom:1rem;text-align:left;text-decoration:underline}.form-row{margin-bottom:1.25rem}.form-row input[type=text],.form-row select{background:#f9f9f9;border:1px solid #ccc;border-radius:6px;padding:.6rem;width:100%}.section-title{color:#333;font-size:1rem;font-weight:600;margin-bottom:.6rem;margin-top:1.25rem}.checkbox-group{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.checkbox-item{align-items:center;background:#f4f6f8;border:1px solid #ccc;border-radius:6px;cursor:pointer;display:flex;font-size:.95rem;justify-content:flex-end;padding:.6rem .8rem}.checkbox-item input[type=checkbox]{justify-content:flex-end;margin-right:.5rem;transform:scale(1.2)}.logs-container{padding:2rem}.logs-title{color:var(--primary-dark);margin-bottom:1.5rem}.logs-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.logs-filters input[type=date],.logs-filters input[type=text],.logs-filters select{border:1px solid #ccc;border-radius:4px;min-width:200px;padding:.5rem}.primary-button:hover{background-color:#0d2f53}.logs-table-container{background-color:var(--white);border-radius:8px;box-shadow:0 2px 5px #0000001a;padding:1rem}.logs-table{border-collapse:collapse;width:100%}.logs-table td,.logs-table th{border-bottom:1px solid #eee;padding:.75rem;text-align:left}.logs-table th{background-color:#f0f0f0;color:var(--primary-dark)}.logs-table tr:hover{background-color:#f9f9f9}.connectors-container{padding:2rem}.connectors-title{color:var(--primary-dark);margin-bottom:1.5rem}.connectors-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.connectors-filters input[type=text],.connectors-filters select{border:1px solid #ccc;border-radius:4px;min-width:200px;padding:.5rem}.connectors-table-container{background-color:var(--white);border-radius:8px;box-shadow:0 2px 5px #0000001a;padding:1rem}.connectors-table{border-collapse:collapse;width:100%}.connectors-table td,.connectors-table th{border-bottom:1px solid #eee;padding:.75rem;text-align:left}.connectors-table th{background-color:#f0f0f0;color:var(--primary-dark)}.status-active{color:green;font-weight:700}.status-inactive{color:red;font-weight:700}.modal-overlay{align-items:center;background:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}.modal-content{background:#fff;border-radius:8px;box-shadow:0 0 10px #0000004d;padding:2rem;width:400px}.modal-content h3{margin-top:0}.primary-button{background-color:#007bff;color:#fff;margin-right:10px;padding:10px 16px}.primary-button:hover{background-color:#0056b3}.secondary-button{background-color:#6c757d;color:#fff;padding:10px 16px}.secondary-button:hover{background-color:#5a6268}.modal-field{display:flex;flex-direction:column;margin-bottom:1.5rem}.modal-label{color:#333;font-size:14px;font-weight:600;margin-bottom:.5rem}.modal-input{border:1px solid #ccc;border-radius:4px;font-size:14px;padding:10px 12px}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.spinner-container{align-items:center;display:flex;justify-content:center;margin-top:1rem}.spinner{animation:spin .8s linear infinite;border:3px solid #ccc;border-radius:50%;border-top:3px solid var(--primary-green);height:20px;width:20px}@keyframes spin{to{transform:rotate(1turn)}}.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.6}.users-container{padding:2rem}.users-title{color:var(--primary-dark)}.users-actions,.users-title{margin-bottom:1.5rem}.primary-button{background-color:var(--primary-green);border:none;border-radius:4px;color:var(--white);cursor:pointer;font-weight:700;padding:.5rem 1.5rem}.primary-button:hover{background-color:orange}.secondary-button{background-color:#eee;border:none;border-radius:4px;color:var(--primary-dark);cursor:pointer;font-weight:700;padding:.5rem 1.5rem}.secondary-button:hover{background-color:#ddd}.users-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.users-filters input[type=text],.users-filters select{border:1px solid #ccc;border-radius:4px;min-width:200px;padding:.5rem}.users-table-container{background-color:var(--white);border-radius:8px;box-shadow:0 2px 5px #0000001a;padding:1rem}.users-table{border-collapse:collapse;width:100%}.users-table td,.users-table th{border-bottom:1px solid #eee;padding:.75rem;text-align:left}.users-table th{background-color:#f0f0f0;color:var(--primary-dark)}.action-button{background-color:var(--primary-green);border:none;border-radius:4px;color:var(--white);cursor:pointer;font-weight:700;margin-right:.5rem;padding:.5rem 1rem}.action-button:hover{background-color:orange}.costs-container{padding:2rem}.costs-title{color:var(--primary-dark);margin-bottom:1.5rem}.costs-section{margin-bottom:2rem}.costs-section h2{color:var(--primary-dark);margin-bottom:1rem}.costs-table{border-collapse:collapse;margin-bottom:1rem;width:100%}.costs-table td,.costs-table th{border-bottom:1px solid #eee;padding:.75rem;text-align:left}.costs-table th{background-color:#f0f0f0;color:var(--primary-dark)}.costs-summary{background-color:var(--white);border-radius:8px;box-shadow:0 2px 5px #0000001a;padding:1rem}.costs-summary h2{color:var(--primary-dark)}.costs-summary ul{list-style:none;padding:0}.costs-summary li{font-weight:700;padding:.5rem 0}.charts-section{display:flex;flex-wrap:wrap;gap:2rem;margin-bottom:3rem}.chart-container{background-color:var(--white);border-radius:8px;box-shadow:0 2px 5px #0000001a;flex:1 1 45%;min-width:350px;padding:1rem}.sandbox-container{background:linear-gradient(135deg,#f0f4f8,#d9e2ec);border:1.5px solid #cbd5e1;border-radius:16px;box-shadow:0 8px 20px #0d2f531f,inset 0 0 10px #fff9;display:flex;flex-direction:column;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;height:80vh;margin:0 auto;max-width:1200px;overflow:hidden;transition:box-shadow .3s ease,transform .3s ease}.sandbox-container:hover{box-shadow:0 14px 30px #0d2f5340,inset 0 0 15px #fffc;transform:translateY(-5px)}.sandbox-header{align-items:center;background-color:#0d2f53;color:#fff;display:flex;flex-direction:column;padding:1.5rem}.sandbox-header h1{font-size:28px;font-weight:700;margin:0 0 .75rem}.deputee-select{background-color:#f4f4f4;border:1px solid #ccc;border-radius:6px;font-size:15px;margin-bottom:20px;padding:10px;transition:border .2s ease;width:60%}.deputee-select:focus{border-color:#007bff;box-shadow:0 0 5px #007bff80;outline:none}.chat-window{background-color:#f9f9f9;border:1px solid #ddd;border-radius:10px;max-height:60vh;overflow-y:auto;padding:1.5rem;scroll-behavior:smooth}.chat-message{margin-bottom:16px;transition:transform .2s ease}.chat-message.user{flex-direction:row-reverse}.chat-message.user:hover{transform:translateY(-2px)}.chat-message.assistant{flex-direction:row}.chat-message.assistant:hover{transform:translateY(-2px)}.message-bubble{background:linear-gradient(145deg,#e9f4ff,#cde6ff);border-radius:18px;box-shadow:0 3px 8px #0000000d;color:#333;font-size:15px;line-height:1.6;max-width:80%;padding:14px 20px;position:relative;transition:background-color .3s ease,box-shadow .3s ease;white-space:pre-line;word-break:break-word}.chat-message.user .message-bubble{background:linear-gradient(145deg,#0055af,#007bff);border-bottom-right-radius:0;box-shadow:0 4px 15px #007bff66;color:#fff}.chat-message.user .message-bubble:hover{background:linear-gradient(145deg,#007bff,#39f);box-shadow:0 6px 20px #007bff99;cursor:pointer}.chat-message.user .message-bubble:after{border-bottom:12px solid #0000;border-left:12px solid #007bff;border-top:12px solid #0000;content:"";filter:drop-shadow(1px 0 0 rgba(0,0,0,.05));height:0;position:absolute;right:-12px;top:16px;width:0}.chat-message.assistant .message-bubble{background:linear-gradient(145deg,#f0f2f5,#d6d5d5);border-bottom-left-radius:0;box-shadow:0 3px 10px #00000012;color:#333}.chat-message.assistant .message-bubble:hover{background:linear-gradient(145deg,#dfe3e8,#c4c9d4);box-shadow:0 6px 20px #0000001a;cursor:pointer}.chat-message.assistant .message-bubble:after{border-bottom:12px solid #0000;border-right:12px solid #d9dee6;border-top:12px solid #0000;content:"";filter:drop-shadow(-1px 0 0 rgba(0,0,0,.05));height:0;left:-12px;position:absolute;top:16px;width:0}.chat-message.typing .message-bubble{animation:blink 1.5s infinite;font-style:italic;opacity:.7}.chat-input-container{background-color:#f0f2f5;border-top:1px solid #ddd;display:flex;padding-top:12px}.chat-input-container input{border:1px solid #ccc;border-radius:25px;flex:1 1;font-size:15px;margin-right:10px;outline:none;padding:14px 18px;transition:border-color .3s ease,box-shadow .3s ease}.chat-input-container input:focus{border-color:#0d2f53;box-shadow:0 0 0 3px #0d2f5326}.send-button{background-color:#0d2f53;border-radius:25px;font-weight:700;padding:14px 24px;transition:background-color .3s ease,box-shadow .3s ease}.send-button:hover{background-color:#0056b3;box-shadow:0 0 10px #0056b380}.send-button:focus{outline:2px solid #0d2f53;outline-offset:2px}@keyframes blink{0%,to{opacity:.7}50%{opacity:1}}#root,body,html{height:100%;margin:0;padding:0}.main-layout{display:flex;flex-direction:column;height:100%}.user-chat-container{font-family:Segoe UI,sans-serif;height:100vh;justify-content:center}.chat-window,.user-chat-container{background-color:#f9fafb;display:flex;overflow:hidden}.chat-window{height:100%;max-height:100vh}.chat-messages,.chat-window{flex-direction:column;flex-grow:1}.chat-messages{background-color:#fafafa;display:flex;gap:12px;min-height:0;overflow-y:auto;padding:20px}.chat-image{border-radius:8px;box-shadow:0 0 4px #0000001a;margin-top:10px;max-height:70%;max-width:100%}.input-area{align-items:flex-end;background-color:#fff;border-top:1px solid #e5e7eb;display:flex;flex-shrink:0;gap:8px;margin-bottom:80px;padding:12px 16px}.chat-input{background-color:#f9fafb;border:1px solid #ccc;border-radius:10px;flex-grow:1;font-size:15px;line-height:1.5;max-height:160px;outline:none;overflow-y:auto;padding:10px 12px;resize:none;transition:border .2s}.chat-input:focus{background-color:#fff;border-color:#60a5fa}.send-button{align-items:center;background-color:#3b82f6;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;height:40px;justify-content:center;transition:background-color .2s;width:40px}.send-button:hover{background-color:#2563eb}.attachment-button{background:none;border:none;color:#6b7280;cursor:pointer;font-size:20px;margin-right:2px;padding:5px;transition:color .2s}.attachment-button:hover{color:#111827}.sidebar{background-color:#fff;border-right:1px solid #e0e0e0;box-shadow:2px 0 4px #00000008;display:flex;flex-direction:column;padding:10px;width:350px}.deputee-info{border-bottom:1px solid #e5e7eb;box-sizing:border-box;margin-bottom:1rem;overflow-wrap:break-word;padding:10px 10px 14px;text-align:center;width:100%}.deputee-avatar{border:2px solid #3b82f6;border-radius:50%;height:72px;margin-bottom:10px;object-fit:cover;width:72px}.deputee-name{color:#111827;font-size:16px;font-weight:700;margin-bottom:6px}.deputee-intro{color:#4b5563;font-size:13px;padding:0 5px}.collapsible-section{margin-top:2px}.collapsible-header{align-items:center;background-color:#f3f4f6;border-radius:6px;color:#1f2937;cursor:pointer;display:flex;font-weight:600;gap:6px;margin:4px 0;padding:6px 10px;transition:background .2s}.collapsible-header:hover{background-color:#e5e7eb}.collapsible-list{color:#374151;font-size:14px;list-style:none;margin-bottom:10px;padding-left:16px}.collapsible-list li{overflow:hidden;padding:3px 0;text-overflow:ellipsis;white-space:nowrap}.session-list-header{color:#374151;font-size:14px;font-weight:700;margin:10px 0 4px}.session-item{border-radius:6px;cursor:pointer;padding:8px 12px;transition:background .2s}.session-item:hover{background-color:#f3f4f6}.session-item.active{background-color:#dbeafe;font-weight:500}.message{border-radius:12px;font-size:15px;line-height:1.5;max-width:70%;padding:12px 16px;white-space:pre-wrap}.message.user{align-self:flex-end;background-color:#d1fae5}.message.deputee{align-self:flex-start;background-color:#e5e7eb}.deputee-selector{margin-bottom:12px;margin-top:14px;padding:0 10px;position:relative;z-index:1}.deputee-selector select{background-color:#fff;border:1.5px solid #60a5fa;border-radius:10px;box-shadow:0 1px 3px #00000014;color:#111827;font-size:15px;outline:none;padding:10px 14px;transition:border-color .2s,box-shadow .2s;width:250px}.deputee-selector select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb4d}.workflow-wrapper{background:#fff;border-radius:8px;box-shadow:0 2px 6px #00000014;margin:1rem 0;overflow-x:auto;padding:1rem}.workflow-diagram-container{background:#fdfdfd;border:1px solid #ccc;border-radius:8px;max-height:80vh;max-width:100%;min-height:400px;min-width:500px;overflow:auto;padding:8px;resize:both}.sidebar-actions{display:flex;gap:.4rem;justify-content:flex-start;margin:4px 0 0;padding-left:6px}.sidebar-actions button{background:none;border:none;cursor:pointer;font-size:1.2rem;margin:0;padding:2px}.chat-context-bar{background-color:#eef;border-bottom:1px solid #ccc;font-size:.85rem;padding:4px 10px;text-align:center}.clickable{cursor:pointer;padding:4px;transition:background .2s}.clickable:hover{background:#eef}.project-header{align-items:center;display:flex;font-weight:700;justify-content:space-between;padding:4px 0}.project-thread-tree,.project-thread-tree li,.project-thread-tree ul{list-style-type:none;margin-left:0;padding-left:1rem}.add-thread-btn{background:none;border:none;cursor:pointer;font-size:1rem;padding:2px 6px}.add-thread-btn:hover{color:green}.message-content-wrapper{position:relative}.timestamp{color:#888;font-size:.75rem;margin-top:4px;text-align:right}.chat-message.user .timestamp{color:#fff}.chat-message{align-items:flex-start;display:flex;flex-direction:column;margin:1rem 0;max-width:80%}.chat-message.user{align-self:flex-end;text-align:right}.chat-message.assistant{align-self:flex-start;text-align:left}.message-meta{align-items:center;display:flex;font-size:.85rem;gap:.4rem;margin-bottom:.25rem;opacity:.8}.message-bubble{word-wrap:break-word;white-space:pre-wrap}.attachment-preview{display:flex;flex-direction:column;gap:6px;margin-bottom:.5rem}.attachment-item{align-items:center;background:#eef;border-radius:6px;display:flex;font-size:.85rem;justify-content:space-between;padding:4px 8px}.react-flow{direction:ltr}.react-flow__container{height:100%;left:0;position:absolute;top:0;width:100%}.react-flow__pane{cursor:grab;z-index:1}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:grabbing}.react-flow__viewport{pointer-events:none;transform-origin:0 0;z-index:2}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow .react-flow__edges{overflow:visible;pointer-events:none}.react-flow__connection-path,.react-flow__edge-path{stroke:#b1b1b7;stroke-width:1;fill:none}.react-flow__edge{cursor:pointer;pointer-events:visibleStroke}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{box-sizing:border-box;cursor:grab;pointer-events:all;position:absolute;transform-origin:0 0;-webkit-user-select:none;user-select:none}.react-flow__node.dragging{cursor:grabbing}.react-flow__nodesselection{pointer-events:none;transform-origin:left top;z-index:3}.react-flow__nodesselection-rect{cursor:grab;pointer-events:all;position:absolute}.react-flow__handle{background:#1a192b;border:1px solid #fff;border-radius:100%;height:6px;min-height:5px;min-width:5px;pointer-events:none;position:absolute;width:6px}.react-flow__handle.connectionindicator{cursor:crosshair;pointer-events:all}.react-flow__handle-bottom{bottom:-4px;left:50%;top:auto;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{left:-4px;top:50%;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{margin:15px;position:absolute;z-index:5}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translateX(-50%)}.react-flow__attribution{background:#ffffff80;font-size:10px;margin:0;padding:2px 3px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{height:100%;pointer-events:none;position:absolute;-webkit-user-select:none;user-select:none;width:100%}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-group,.react-flow__node-input,.react-flow__node-output{background-color:#fff;border:1px solid #1a192b;border-radius:3px;color:#222;font-size:12px;padding:10px;text-align:center;width:150px}.react-flow__node-default.selectable:hover,.react-flow__node-group.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible{box-shadow:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted #0059dccc}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{align-items:center;background:#fefefe;border:none;border-bottom:1px solid #eee;box-sizing:initial;cursor:pointer;display:flex;height:16px;justify-content:center;padding:5px;-webkit-user-select:none;user-select:none;width:16px}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{max-height:12px;max-width:12px;width:100%}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.bottom,.react-flow__resize-control.top{cursor:ns-resize}.react-flow__resize-control.bottom.right,.react-flow__resize-control.top.left{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:#3367d9;border:1px solid #fff;border-radius:1px;height:4px;transform:translate(-50%,-50%);width:4px}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.bottom.left,.react-flow__resize-control.handle.top.left{left:0}.react-flow__resize-control.handle.bottom.right,.react-flow__resize-control.handle.top.right{left:100%}.react-flow__resize-control.line{border:0 solid #3367d9}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{height:100%;top:0;transform:translate(-50%);width:1px}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.bottom,.react-flow__resize-control.line.top{height:1px;left:0;transform:translateY(-50%);width:100%}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}:root{--primary-dark:#0d2f53;--primary-green:#4ca047;--primary-gradient:linear-gradient(90deg,#0d2f53,#4ca047);--background-light:#f4f6f8;--text-dark:#333}body{background-color:var(--background-light);color:var(--text-dark);font-family:Arial,sans-serif;margin:0;padding:0}
/*# sourceMappingURL=main.4f2ef736.css.map*/