:root{--background-color: #1a1a1a;--text-color: #f0f0f0;--card-background: #2a2a2a;--card-border: #444;--card-hover-border: #646cff;--header-text-color: #ffffff;--glow-border: linear-gradient(120deg, #ff00c1, #9600ff, #4900ff, #00b8ff, #00ffc1, #96ff00, #ffc400, #ff0040, #ff00c1)}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#121212;color:var(--text-color)}.App{text-align:center;padding:0 2rem 2rem;background-color:transparent;position:relative;overflow:hidden}.app-header-container{position:sticky;top:0;z-index:1000;width:100%;padding:1rem 0}.interactive-background,.interactive-background2,.interactive-background3{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1}.interactive-background:before,.interactive-background2:before,.interactive-background3:before{content:"";position:absolute;border-radius:50%;transform:translate(-50%,-50%);top:var(--mouse-y, 50%);left:var(--mouse-x, 50%)}.interactive-background:before{width:500px;height:500px;background:radial-gradient(circle,rgba(100,108,255,.25) 0%,rgba(100,108,255,0) 70%);transition:top .1s ease-out,left .1s ease-out}.interactive-background2:before{width:700px;height:700px;background:radial-gradient(circle,rgba(173,216,230,.15) 0%,rgba(173,216,230,0) 70%);transition:top .3s ease-out,left .3s ease-out}.interactive-background3:before{width:900px;height:900px;background:radial-gradient(circle,rgba(255,105,180,.1) 0%,rgba(255,105,180,0) 70%);transition:top .6s ease-out,left .6s ease-out}.App-header{margin-bottom:4rem;padding-top:6rem}.App-header h1{font-size:3.5rem;color:var(--header-text-color);margin-bottom:.5rem}.App-header p{font-size:1.2rem;color:#aaa}.project-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto}.project-card{background-color:#ffffff0d;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:2rem;text-decoration:none;color:var(--text-color);transition:transform .3s ease,border-color .3s ease;text-align:left}.project-card:hover{transform:translateY(-5px);border-color:var(--card-hover-border)}.project-card h2{margin-top:0;font-size:1.5rem;color:var(--header-text-color)}.project-card p{font-size:1rem;color:#ccc}.content{position:relative;z-index:1}.api-config-button{position:fixed;top:1.5rem;right:1.5rem;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;width:50px;height:50px;border-radius:50%;display:flex;justify-content:center;align-items:center;cursor:pointer;z-index:1001;transition:all .3s ease;padding:0}.api-config-button:hover{background:rgba(255,255,255,.2);box-shadow:0 0 15px #646cff80}.api-config-button svg{stroke:#fff;transition:transform .3s ease;width:24px;height:24px}.api-config-button:hover svg{transform:rotate(45deg)}.glass-button{padding:.8rem 1.5rem;font-size:1rem;font-weight:500;color:#eee;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:8px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);cursor:pointer;transition:color .3s ease,background-color .3s ease}.glass-button:hover{background:rgba(255,255,255,.15);color:#fff}.glass-button:disabled{background:rgba(255,255,255,.05);color:#888;cursor:not-allowed}.glass-button-glow{position:relative;padding:.8rem 1.5rem;font-size:1rem;font-weight:500;color:#fff;background:rgba(255,255,255,.1);border-radius:8px;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);cursor:pointer;overflow:hidden}.glass-button-glow span{position:relative;z-index:1}.glass-button-glow:before{content:"";position:absolute;top:-2px;left:-2px;width:calc(100% + 4px);height:calc(100% + 4px);background:linear-gradient(45deg,#00b8ff,#00ffc1);border-radius:8px;z-index:-1;opacity:0;transition:opacity .3s ease-in-out}.glass-button-glow:hover:before{opacity:1}.glass-button-glow:disabled{color:#888;cursor:not-allowed}.glass-button-glow:disabled:before{opacity:0}.structura-container{padding:7rem 2rem 2rem;max-width:1400px;margin:0 auto}.main-content-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start;margin-top:2rem}.form-group-scrollable{overflow-y:auto;flex-grow:1;padding-right:1rem;margin-right:-1rem}textarea.form-control{resize:vertical;min-height:100px}.right-column{display:flex;flex-direction:column;gap:2rem;height:100%}.status-log{background:rgba(255,255,255,.05);padding:1.5rem;border-radius:12px;height:200px;overflow-y:auto;border:1px solid rgba(255,255,255,.2)}.log-entry{margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.results-container{background:rgba(255,255,255,.05);padding:2rem;border-radius:12px;border:1px solid rgba(255,255,255,.2);flex-grow:1}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.results-header h2{margin:0;color:#fff}.results-actions{display:flex;gap:1rem}.json-result{background:rgba(0,0,0,.3);padding:1rem;border-radius:8px;white-space:pre-wrap;word-break:break-all;border:1px solid rgba(255,255,255,.2);text-align:left}.table-result{width:100%;border-collapse:collapse}.table-result th,.table-result td{padding:.8rem;text-align:left;border:1px solid rgba(255,255,255,.2)}.table-result th{background-color:#ffffff1a}.project-header{width:100%;padding:1rem 2rem;background:rgba(255,255,255,.05);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.1);display:flex;justify-content:center;align-items:center;position:relative;top:0;left:0;right:0;z-index:999;height:5rem}.project-header .home-link{position:absolute;top:50%;left:2rem;transform:translateY(-50%);text-decoration:none;color:#eee;font-weight:500;transition:color .2s ease;background:rgba(255,255,255,.1);padding:.5rem 1rem;border-radius:8px;border:1px solid rgba(255,255,255,.2)}.project-header .home-link:hover{background:rgba(255,255,255,.2);color:#fff}.project-title-container{display:flex;flex-direction:column;align-items:center}.project-title{margin:0;font-size:1.8rem;font-weight:600;color:#fff}.project-description{margin:.25rem 0 0;color:#ccc;max-width:600px;font-size:.9rem}.structura-bulk-container{padding:7rem 2rem 2rem;max-width:1600px;margin:0 auto}.main-content-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:2rem;align-items:start;margin-top:2rem}.structura-form{background:rgba(255,255,255,.05);padding:2rem;border-radius:12px;border:1px solid rgba(255,255,255,.2);display:flex;flex-direction:column;height:100%}.form-content-wrapper{overflow-y:auto;flex-grow:1;padding-right:1rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#eee}.form-control{width:100%;padding:.8rem;border-radius:8px;border:1px solid rgba(255,255,255,.2);background-color:#0000004d;color:#fff;font-size:1rem}textarea.form-control{resize:vertical;min-height:80px}.output-field{display:flex;gap:.5rem;margin-bottom:.5rem;align-items:center}.output-field .form-control{flex:1}.output-field .remove-button{background:none;border:none;color:#ff8a80;font-size:1.5rem;cursor:pointer;padding:0 .5rem}.add-field-button{margin-top:.5rem;align-self:flex-start}.submit-button{margin-top:1rem;width:100%}.right-column{display:flex;flex-direction:column;gap:2rem;height:100%;background:rgba(255,255,255,.05);padding:2rem;border-radius:12px;border:1px solid rgba(255,255,255,.2)}.right-column-main-content{flex-grow:1}.template-container .form-group{display:flex;flex-direction:column}.template-container .generate-button{margin-bottom:1rem;align-self:flex-start}.available-columns{font-size:.9rem;color:#aaa;margin-top:.5rem}.available-columns code{background:rgba(0,0,0,.3);padding:2px 5px;border-radius:4px;margin:0 2px}.results-container h2{margin-top:0;margin-bottom:1rem}.csv-preview{max-height:400px;overflow:auto;border:1px solid rgba(255,255,255,.2);border-radius:8px;margin-bottom:1rem}.csv-preview table{width:100%;border-collapse:collapse}.csv-preview th,.csv-preview td{padding:.8rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.2);white-space:nowrap}.csv-preview th{background-color:#ffffff1a;position:sticky;top:0}.status-log{background:rgba(255,255,255,.05);padding:1.5rem;border-radius:12px;height:150px;overflow-y:auto;border:1px solid rgba(255,255,255,.2);flex-shrink:0}.log-entry{margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1);font-size:.9rem}.log-entry:last-child{border-bottom:none}.log-timestamp{color:#aaa;margin-right:1rem}.log-success{color:#81c784}.log-error{color:#ff8a80}.log-info{color:#64b5f6}.api-config-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.7);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;justify-content:center;align-items:center;z-index:1000}.api-config-modal{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);padding:2rem;border-radius:16px;box-shadow:0 4px 30px #0000001a;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;flex-direction:column;gap:1rem;width:450px;color:#fff}.api-config-modal h2{margin-top:0;text-align:center;font-weight:500}.api-config-modal label{display:flex;flex-direction:column;gap:.5rem;font-weight:300}.api-config-modal input,.api-config-modal select{padding:.75rem;border:1px solid rgba(255,255,255,.3);border-radius:8px;background:rgba(255,255,255,.05);color:#fff;font-size:1rem}.api-config-modal input[readOnly]{background:rgba(255,255,255,.1);cursor:not-allowed}.api-config-modal select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22/%3E%3C/svg%3E);background-repeat:no-repeat;background-position:right .7em top 50%,0 0;background-size:.65em auto,100%}.api-config-buttons{display:flex;justify-content:flex-end;gap:1rem;margin-top:1rem}.api-config-buttons button{padding:.75rem 1.5rem;border:none;border-radius:8px;cursor:pointer;font-size:1rem;transition:background-color .3s ease}.api-config-buttons button:first-child{background-color:#007bff;color:#fff}.api-config-buttons button:first-child:hover{background-color:#0056b3}.api-config-buttons button:last-child{background-color:#fff3;color:#fff}.api-config-buttons button:last-child:hover{background-color:#ffffff4d}.storybound-container{display:flex;flex-direction:column;height:100%}.storybound{flex-grow:1;display:flex;flex-direction:column;overflow:hidden;height:100%}.selection-container{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;padding:2rem;gap:2rem;height:100%;overflow-y:auto}.messages{flex-grow:1;overflow-y:auto;padding:1.5rem 1.5rem 6rem;display:flex;flex-direction:column;gap:1rem}.selection-controls{padding:2.5rem;background:rgba(255,255,255,.05);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:12px;border:1px solid rgba(255,255,255,.2);width:100%;max-width:420px;text-align:center}.selection-controls .setting{margin-bottom:1.5rem}.selection-controls .setting:last-child{margin-bottom:0}.selection-controls .setting label{display:block;margin-bottom:.75rem;font-weight:500;color:#eee;text-align:left}.selection-controls .setting select{width:100%;padding:.8rem;border-radius:8px;border:1px solid rgba(255,255,255,.2);background-color:#0000004d;color:#fff;font-size:1rem}.logs-area{background:rgba(0,0,0,.2);padding:1rem;border-bottom:1px solid rgba(255,255,255,.2)}.logs-area h3{margin-top:0;font-size:1.2rem}.log-item{margin-bottom:.5rem;font-size:.9rem}.log-item p{margin:0}.error-message{color:#ff8a80;background-color:#d9302533;padding:1rem;border-radius:8px;width:100%;max-width:420px;text-align:center;border:1px solid rgba(255,138,128,.5)}.chat-area{flex-grow:1;display:flex;flex-direction:column;padding:0;overflow:hidden}.messages{flex-grow:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.message{padding:.8rem 1.2rem;border-radius:18px;max-width:75%;word-wrap:break-word;line-height:1.5;border:1px solid rgba(255,255,255,.2)}.message pre{white-space:pre-wrap;font-family:inherit;margin:0;text-align:left}.message.user{background-color:#007bffb3;color:#fff;align-self:flex-end;margin-left:auto;border-bottom-right-radius:4px;border-color:transparent}.message.assistant{background-color:#ffffff1a;color:#fff;align-self:flex-start;margin-right:auto;border-bottom-left-radius:4px}.message.assistant.loading:after{content:"...";animation:loading-dots 1s infinite}@keyframes loading-dots{0%,20%{color:#fff0;text-shadow:.25em 0 0 rgba(255,255,255,0),.5em 0 0 rgba(255,255,255,0)}40%{color:#fff;text-shadow:.25em 0 0 rgba(255,255,255,0),.5em 0 0 rgba(255,255,255,0)}60%{text-shadow:.25em 0 0 white,.5em 0 0 rgba(255,255,255,0)}80%,to{text-shadow:.25em 0 0 white,.5em 0 0 white}}.input-area{display:flex;gap:1rem;padding:1rem;background-color:#0003;flex-shrink:0;border-top:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:fixed;bottom:0;left:0;right:0;z-index:999}.input-area input{flex-grow:1;padding:.8rem 1.2rem;border-radius:20px;border:1px solid rgba(255,255,255,.2);font-size:1rem;background:rgba(0,0,0,.3);color:#fff}.input-area input:focus{outline:none;border-color:#ffffff80}.glass-button-glow{padding:.8rem 1.5rem;border-radius:20px;border:1px solid rgba(255,255,255,.2);background-color:#ffffff1a;color:#fff;font-size:1rem;cursor:pointer;transition:all .3s ease;box-shadow:0 0 5px #fff3,0 0 10px #ffffff1a}.glass-button-glow:hover{background-color:#fff3;box-shadow:0 0 15px #fff6,0 0 20px #fff3}.glass-button-glow:disabled{cursor:not-allowed;opacity:.6}
