body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#201446;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}*{box-sizing:border-box}.main-wrapper{display:flex;flex-direction:column;height:100vh}.main-wrapper>*{width:100%}.main-wrapper main{background:#201446;padding:0}.main-wrapper .main-content{display:flex;flex:1 1}.main-wrapper .main-content #main-img-area{padding:0}.main-wrapper .main-content #main-img-area img{max-height:90vh;max-width:100%;width:auto}.main-wrapper .main-content #main-info-area{color:#fff;display:flex;flex-direction:column;max-width:350px;padding:16px}.main-wrapper .main-content #main-info-area p{font-size:14px}h1{font-size:24px}a{color:#00cde1;text-decoration:none}a:hover{text-decoration:underline}.flex-row{display:flex;flex-direction:row}.flex-column{display:flex;flex-direction:column}header{padding:0}.logo img{height:auto;padding:16px;width:240px}.button,button{align-items:center;border-radius:8px;cursor:pointer;display:inline-flex;font-family:Noto Sans,sans-serif;font-weight:500;justify-content:center;line-height:normal;transition:all .2s ease-in-out}.button:disabled,button:disabled{cursor:not-allowed;opacity:.7}.button-full-width{width:100%}.button-36px{font-size:14px;min-height:36px;padding:8px 16px}.button-44px{font-size:16px;min-height:44px;padding:10px 20px}.button-52px{font-size:16px;min-height:52px;padding:12px 24px}.button-60px,.button-main{font-size:18px;min-height:60px;padding:14px 28px}.button-icon-36px{font-size:14px;height:36px;padding:8px;width:36px}.button-icon-44px{font-size:16px;height:44px;padding:10px;width:44px}.button-icon-52px{font-size:16px;height:52px;padding:12px;width:52px}.button-icon-60px{font-size:18px;height:60px;padding:14px;width:60px}.button-icon-primary,.button-main,.button-primary{background-color:#7360fc;border:none;color:#f8fafc}.button-icon-primary:hover:not(:disabled),.button-main:hover:not(:disabled),.button-primary:hover:not(:disabled){background-color:#4a3aa1;box-shadow:0 2px 4px #0a0a0b33}.button-icon-primary:focus:not(:disabled),.button-main:focus:not(:disabled),.button-primary:focus:not(:disabled){background-color:#4a3aa1;box-shadow:0 0 0 3px #7360fc33;outline:none}.button-icon-primary:disabled,.button-main:disabled,.button-primary:disabled{background-color:#b9affd;color:#f8fafc}.button-icon-secondary,.button-secondary{background-color:#2c2c2e;border:1px solid #fff3;color:#f8fafc}.button-icon-secondary:hover:not(:disabled),.button-secondary:hover:not(:disabled){background-color:#464649;border-color:#fff3}.button-icon-secondary:focus:not(:disabled),.button-secondary:focus:not(:disabled){background-color:#5f5f63;box-shadow:0 0 0 3px #77767b4d;outline:none}.button-icon-secondary:disabled,.button-secondary:disabled{background-color:#acacaf;border-color:#f8fafc1a;color:#f8fafc80}.button-icon-secondary-neutral,.button-secondary-neutral{background-color:#0000;border:1px solid #fff3;color:#f8fafc}.button-icon-secondary-neutral:hover:not(:disabled),.button-secondary-neutral:hover:not(:disabled){background-color:#fff3;border-color:#f8fafc66}.button-icon-secondary-neutral:focus:not(:disabled),.button-secondary-neutral:focus:not(:disabled){background-color:#f8fafc26;box-shadow:0 0 0 3px #f8fafc26;outline:none}.button-icon-secondary-neutral:disabled,.button-secondary-neutral:disabled{border-color:#f8fafc26;color:#f8fafc4d}.button-secondary-neutral.selected,.selected.button-icon-secondary-neutral{background-color:#fff3;border-color:#f8fafc80}.button-icon-tertiary,.button-tertiary{background-color:#0000;border:none;color:#f8fafc}.button-icon-tertiary:hover:not(:disabled),.button-tertiary:hover:not(:disabled){background-color:#fff3}.button-icon-tertiary:focus:not(:disabled),.button-tertiary:focus:not(:disabled){background-color:#f8fafc26;box-shadow:0 0 0 3px #f8fafc1a;outline:none}.button-icon-tertiary:disabled,.button-tertiary:disabled{color:#f8fafc4d}.button-option-selector{background-color:#464649;border:none;border-radius:8px;color:#f8fafc}.button-option-selector:hover{background-color:#5f5f63;border:1px solid #5f5f63}.button-option-selector:focus{border-color:#5f5f63;outline:none}.button-option-selector.active{background-color:#7360fc33;border:1px solid #7360fc;color:#f8fafc}.button-option-selector:disabled{background-color:#2c2c2e;border-color:#464649;color:#77767b;opacity:.7}.segmented-control{border:1px solid #acacaf;border-radius:8px;display:inline-flex;overflow:hidden}.segmented-control .segment{background-color:#0000;border:none;border-right:1px solid #acacaf;color:#464649;cursor:pointer;font-family:Noto Sans,sans-serif;font-size:16px;font-weight:400;padding:8px 16px;transition:all .2s ease-in-out}.segmented-control .segment:last-child{border-right:none}.segmented-control .segment:hover{background-color:#ededee}.segmented-control .segment.active{background-color:#7360fc;color:#f8fafc}.segmented-control .segment:disabled{cursor:not-allowed;opacity:.5}.button-icon-primary{align-items:center;border-radius:8px;display:inline-flex;justify-content:center}.button-icon-primary svg{height:18px;width:18px}.button-icon-secondary{align-items:center;border-radius:8px;display:inline-flex;justify-content:center}.button-icon-secondary svg{height:18px;width:18px}.button-icon-secondary-neutral{align-items:center;border-radius:8px;display:inline-flex;justify-content:center}.button-icon-secondary-neutral svg{height:18px;width:18px}.button-icon-tertiary{align-items:center;border-radius:8px;display:inline-flex;justify-content:center}.button-icon-tertiary svg{height:18px;width:18px}.button-main{border-radius:32px}.button-main.submit{background:#00cde1;color:#f8fafc;margin-top:16px}.button-main.submit:hover:not(:disabled){background-color:#009fae}.toggle-switch{display:inline-block;height:16px;margin:0;padding:0;position:relative;vertical-align:middle;width:32px}.toggle-switch input{height:0;opacity:0;position:absolute;width:0}.toggle-switch label{background-color:#464649;border-radius:12px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:background-color .2s ease-in-out}.toggle-switch label:before{background-color:#f8fafc;border-radius:50%;bottom:2px;content:"";height:12px;left:2px;position:absolute;transition:transform .2s ease-in-out;width:12px}.toggle-switch input:checked+label{background-color:#7360fc}.toggle-switch input:checked+label:before{transform:translateX(16px)}.hidden-area{display:none}.llm-loader,.visible-area{display:flex}.llm-loader{align-items:center;flex-direction:column;height:200px;justify-content:center;padding:2rem}.llm-loader .loader-spinner{animation:spin 1s linear infinite;border:3px solid #5f5f63;border-radius:50%;border-top-color:#8f80fd;height:40px;margin-bottom:1rem;width:40px}.llm-loader p{color:#f8fafc;font-size:.9rem;margin:0;opacity:.8}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.llm-error{align-items:center;display:flex;flex-direction:column;height:200px;justify-content:center;padding:2rem;text-align:center}.llm-error .error-icon{font-size:2rem;margin-bottom:1rem}.llm-error p{color:#f8fafc;font-size:.9rem;line-height:1.4;margin:0;max-width:300px;opacity:.9}.app-container{background-color:#2c2c2e;color:#f8fafc;display:flex;flex-direction:column;height:100vh;width:100%}.app-header{background-color:#0a0a0b;border-bottom:1px solid #2c2c2e;width:100%;z-index:10}.app-header .logo,.app-header header{height:56px}.app-header .logo img{height:100%;padding:4px 0 0}.app-main{display:flex;flex:1 1;height:calc(100vh - 56px);overflow:hidden}.vertical-sidebar{align-items:center;background-color:#0a0a0b;border-right:1px solid #2c2c2e;display:flex;flex-direction:column;height:100%;padding-top:20px;width:72px}.vertical-sidebar .sidebar-icon{align-items:center;border-radius:8px;cursor:pointer;display:flex;height:40px;justify-content:center;margin-bottom:16px;transition:background-color .2s ease;width:40px}.vertical-sidebar .sidebar-icon:hover{background-color:#7360fc33}.vertical-sidebar .sidebar-icon.active{background-color:#7360fc}.vertical-sidebar .sidebar-icon svg{height:24px;width:24px}.vertical-sidebar .sidebar-icon svg path{stroke:#f8fafc}.app-sidebar{background-color:#0a0a0b;border-right:1px solid #2c2c2e;overflow-y:auto;padding:16px 24px 36px;width:304px}.app-sidebar .design-brief-section h2{color:#f8fafc;font-family:Noto Sans,sans-serif;font-size:20px;font-weight:600;margin-bottom:24px;margin-top:8px}.app-content{display:flex;flex:1 1;flex-direction:column;overflow:hidden}#image-editor-llm-container{display:flex;flex-direction:row;height:75%;overflow:hidden}.canvas-container{flex:1 1}#main-img-area,.canvas-container{background-color:#2c2c2e;background-image:linear-gradient(45deg,#464649 25%,#0000 0),linear-gradient(-45deg,#464649 25%,#0000 0),linear-gradient(45deg,#0000 75%,#464649 0),linear-gradient(-45deg,#0000 75%,#464649 0);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px;overflow:hidden;position:relative}#main-img-area{transition:width .3s ease;width:66%}#main-img-area.full-width{width:100%}#llm-info-area{overflow:hidden;position:relative;width:32%}.drawing-tools{border-radius:8px;flex-direction:column;padding:10px;position:absolute;right:10px;top:10px;z-index:5}.assistant-chat,.drawing-tools{background-color:#0a0a0b;display:flex}.assistant-chat{align-items:center;border-top:1px solid #2c2c2e;gap:12px;height:25%;padding:10px 20px}.assistant-chat .assistant-avatar{align-items:center;background-color:#7360fc;border-radius:50%;display:flex;height:32px;justify-content:center;width:32px}.assistant-chat .chat-message{color:#f8fafc;flex:1 1;font-family:Noto Sans,sans-serif;font-size:14px}.assistant-chat .chat-input{flex:1 1}.assistant-chat .chat-input input{background-color:#2c2c2e;border:1px solid #464649;border-radius:20px;color:#f8fafc;font-family:Noto Sans,sans-serif;padding:10px 16px;width:100%}.assistant-chat .chat-input input:focus{border-color:#7360fc;outline:none}.assistant-chat .chat-input input::placeholder{color:#77767b}#image-editor-container,#result-area{height:100%;width:100%}#result-area{display:flex;flex-direction:column}#result-area h2{color:#f8fafc;font-size:20px;font-weight:600;margin:16px 24px}#result-area .edit-button{background-color:#7360fc;border:none;border-radius:8px;color:#f8fafc;cursor:pointer;font-size:14px;font-weight:500;left:180px;padding:8px 24px;position:absolute;top:16px}#result-area .edit-button:hover{background-color:#4a3aa1}header{align-items:center;background-color:#201446;color:#fff;display:flex;justify-content:space-between;padding:0 16px}.logo img{height:56;padding:8px;width:auto}.logout-button{margin-left:16px}.message-container{align-items:center;animation:fadeIn .3s ease-in-out;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:16px;padding:12px 16px;width:100%}.message-container.success{background-color:#059f431a;border:1px solid #059f43;color:#059f43}.message-container.error{background-color:#ee00041a;border:1px solid #ee0004;color:#ee0004}.message-container.info{background-color:#00cde11a;border:1px solid #00cde1;color:#00cde1}.message-container .message-content{align-items:center;display:flex;gap:12px}.message-container .message-icon{align-items:center;display:flex;justify-content:center}.message-container .message-text{font-family:Noto Sans,sans-serif;font-size:14px;font-weight:500}.message-container .dismiss-button{align-items:center;background:none;border:none;color:inherit;cursor:pointer;display:flex;justify-content:center;opacity:.7;padding:4px;transition:opacity .2s}.message-container .dismiss-button:hover{opacity:1}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.stl-viewer-container{background:#f5f5f5;border-radius:8px;box-shadow:0 4px 6px #0000001a;display:inline-block;overflow:hidden;position:relative}.stl-viewer-canvas{cursor:grab;display:block;outline:none}.stl-viewer-canvas:active{cursor:grabbing}.stl-viewer-controls-container{left:10px;position:absolute;top:10px;z-index:10}.controls-toggle-btn{align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000000b3;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:12px;font-weight:500;gap:4px;padding:8px 12px;transition:all .2s ease}.controls-toggle-btn:hover{background:#000c;transform:translateY(-1px)}.stl-viewer-controls-dropdown{animation:dropdownSlide .2s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;flex-direction:column;gap:8px;left:0;margin-top:5px;min-width:180px;padding:12px;position:absolute;top:100%}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.control-row{align-items:center;display:flex;gap:8px}.control-label{color:#333;flex-shrink:0;font-size:12px;font-weight:500;min-width:60px}.control-btn{border:none;border-radius:4px;cursor:pointer;flex:1 1;font-size:11px;font-weight:500;padding:6px 10px;transition:all .2s ease}.load-btn{background:#007bff;color:#fff}.export-btn{background:#28a745;color:#fff}.load-btn:hover{background:#0056b3;transform:translateY(-1px)}.export-btn:hover{background:#1e7e34;transform:translateY(-1px)}.load-btn:disabled{background:#6c757d;cursor:not-allowed;transform:none}.control-select{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;flex:1 1;font-size:11px;padding:4px 8px;transition:border-color .2s ease}.control-select:focus{border-color:#007bff;box-shadow:0 0 0 1px #007bff40;outline:none}@media (max-width:768px){.stl-viewer-controls-container{margin-top:10px;position:static}.stl-viewer-controls-dropdown{background:#fff;box-shadow:0 2px 8px #0000001a;margin-top:5px;position:static}.controls-toggle-btn{justify-content:center;width:100%}}.prompt-form{align-items:center;display:flex;flex-direction:column;justify-content:center}.prompt-form .inference-type{display:flex;flex-direction:column;width:100%}.prompt-form .inference-type h2{margin-bottom:4px!important}.prompt-form h2,.prompt-form h3,.prompt-form p{color:#f8fafc;font-family:Noto Sans,sans-serif;text-align:left}.prompt-form .form-fields-example{background-color:#2c2c2e4d;border-radius:12px;display:flex;flex-direction:column;margin:16px 0;padding:16px;width:100%}.prompt-form .form-fields-example h3{font-size:24px;font-weight:600;margin-bottom:16px}.prompt-form .form-fields-example .field-container{margin-bottom:16px;max-width:400px;width:100%}.prompt-form .form-fields-example .field-description{color:#acacaf;font-size:14px;margin-top:4px}.prompt-form .prompt-section{display:flex;flex-direction:column;gap:8px;width:100%}.prompt-form .prompt-section .section-header{align-items:left;display:flex;flex-direction:column;justify-content:space-between;margin-bottom:8px}.prompt-form .toggle-container{align-items:center;display:flex;gap:8px;justify-content:space-between;margin:8px 0}.prompt-form .toggle-container .option-label{color:#f8fafc;font-size:14px;margin:0}.section-header .prompt-form .toggle-container{justify-content:flex-start;margin:0}.prompt-form .render-section{margin:16px 0}.prompt-form .render-section .render-options{align-items:center;display:flex;flex-direction:column;gap:4px;justify-content:center;margin-top:8px}.prompt-form .render-section .render-options label{text-align:center}.prompt-form .render-section .render-options .or-divider{color:#77767b;font-size:14px}.prompt-form .option-section{margin:16px 0}.prompt-form .option-section .number-options,.prompt-form .option-section .size-options{display:flex;gap:0;margin-top:8px}.prompt-form .option-section .size-options .button{flex:1 1;text-align:center}.prompt-form .generate-button{align-items:center;background-color:#7360fc;border:none;border-radius:8px;color:#f8fafc;cursor:pointer;display:flex;font-size:18px;font-weight:500;gap:8px;justify-content:center;margin-top:16px;padding:16px;transition:background-color .2s;width:100%}.prompt-form .generate-button:hover{background-color:#5d47fc}.prompt-form .generate-button svg{height:16px;width:16px}.prompt-form .prompt-textarea{background:#404043;border:1.5px solid #5f5f63;border-radius:8px;color:#fff;font-family:Noto Sans,sans-serif;font-size:14px;line-height:1.4;min-height:32px;padding:8px 16px;resize:vertical;transition:border-color .15s,box-shadow .15s,background .2s;width:100%}.prompt-form .prompt-textarea::placeholder{color:#77767b}.prompt-form .prompt-textarea:focus{background:#4a4a4d;border-color:#7360fc;box-shadow:0 0 0 1px #7360fc;outline:none}.prompt-form .prompt-textarea.error{border-color:#ee0004;box-shadow:0 0 0 1px #ee0004}.prompt-form .prompt-textarea.success{border-color:#059f43;box-shadow:0 0 0 1px #059f43}.prompt-form .accordion-panel,.prompt-form .accordion-panel p{color:#fff}.prompt-form .prompt-textarea[style]{overflow:hidden!important}.prompt-form .uploaded-image-preview{border-radius:8px;margin:16px 0;overflow:hidden;position:relative;width:100%}.prompt-form .uploaded-image-preview img{border-radius:8px;display:block;height:auto;width:100%}.prompt-form .uploaded-image-preview .remove-image-button{align-items:center;background-color:#0a0a0bb3;border:none;border-radius:50%;cursor:pointer;display:flex;height:32px;justify-content:center;position:absolute;right:4px;top:4px;transition:background-color .2s;width:32px}.prompt-form .uploaded-image-preview .remove-image-button:hover{background-color:#0a0a0be6}.prompt-form .uploaded-image-preview .remove-image-button svg{height:16px;width:16px}.prompt-form div.loras,.prompt-form div.prompt{color:#f8fafc;font-family:Noto Sans,sans-serif;margin-bottom:8px;width:100%}.prompt-form div.loras form div,.prompt-form div.prompt form div{margin-bottom:8px}.prompt-form div.loras textarea.prompt,.prompt-form div.prompt textarea.prompt{width:90%}.prompt-form div.loras input[type=file].hide-input-file,.prompt-form div.prompt input[type=file].hide-input-file{opacity:0;position:absolute;z-index:-1}.prompt-form div.loras .input-text,.prompt-form div.prompt .input-text{align-self:stretch;background:#2c2c2e;border:1.5px solid #5f5f63;border-radius:8px;color:#f8fafc;font-family:Noto Sans,sans-serif;padding:8px;width:100%}.prompt-form div.loras .input-text::placeholder,.prompt-form div.prompt .input-text::placeholder{color:#77767b}.prompt-form div.loras .input-text:focus,.prompt-form div.prompt .input-text:focus{border:1.5px solid #7360fc;box-shadow:0 0 0 1px #7360fc;outline:none}.prompt-form div.loras .input-text.error,.prompt-form div.prompt .input-text.error{border:1.5px solid #ee0004;box-shadow:0 0 0 1px #ee0004}.prompt-form div.loras .input-text.success,.prompt-form div.prompt .input-text.success{border:1.5px solid #059f43;box-shadow:0 0 0 1px #059f43}.prompt-form div.loras .input-select,.prompt-form div.prompt .input-select{align-self:stretch;background:#2c2c2e;border:1.5px solid #5f5f63;border-radius:8px;color:#f8fafc;font-family:Noto Sans,sans-serif;padding:8px;width:100%}.prompt-form div.loras .input-select:focus,.prompt-form div.prompt .input-select:focus{border:1.5px solid #7360fc;box-shadow:0 0 0 1px #7360fc;outline:none}.prompt-form div.loras .input-select.error,.prompt-form div.prompt .input-select.error{border:1.5px solid #ee0004;box-shadow:0 0 0 1px #ee0004}.prompt-form div.loras .input-select.success,.prompt-form div.prompt .input-select.success{border:1.5px solid #059f43;box-shadow:0 0 0 1px #059f43}.prompt-form div.loras .images-preview,.prompt-form div.prompt .images-preview{display:flex;gap:8px;margin-top:8px}.prompt-form div.loras .images-preview img,.prompt-form div.prompt .images-preview img{border-radius:8px;height:auto;width:32px}.prompt-form div.loras .uploaded-lora-images,.prompt-form div.prompt .uploaded-lora-images{display:flex;flex-wrap:wrap;gap:8px}.prompt-form div.loras .uploaded-lora-images img,.prompt-form div.prompt .uploaded-lora-images img{border-radius:8px;height:auto;width:32px}.prompt-form div.result{margin-bottom:8px;width:60%}.prompt-form .field-container{margin-bottom:16px;position:relative;width:100%}.prompt-form .field-label{color:#f8fafc;display:block;font-family:Noto Sans,sans-serif;font-weight:500;margin-bottom:4px}.prompt-form .field-input{background-color:#2c2c2e;border:1.5px solid #5f5f63;border-radius:8px;color:#f8fafc;font-family:Noto Sans,sans-serif;padding:8px;width:100%}.prompt-form .field-input:focus{border-color:#7360fc;outline:none}.prompt-form .field-input.error{border-color:#ee0004}.prompt-form .field-input.success{border-color:#059f43}.prompt-form .field-message{align-items:center;display:flex;font-size:14px;margin-top:4px}.prompt-form .field-message.error{color:#ee0004}.prompt-form .field-message.success{color:#059f43}.prompt-form .field-message .icon{margin-right:4px}.form-fields-showcase{font-family:Noto Sans,sans-serif}.form-fields-showcase section{margin-bottom:30px}.form-fields-showcase h2{color:#f8fafc;font-size:28px;margin-bottom:20px}.form-fields-showcase h3{color:#f8fafc;font-size:24px;margin-bottom:15px}.form-fields-showcase h4{color:#acacaf;font-size:16px;margin:15px 0 10px}.field-container{margin-bottom:20px;max-width:400px;position:relative;width:100%}.field-label{display:block;font-weight:500;margin-bottom:5px}.field-input,.field-label{color:#f8fafc;font-family:Noto Sans,sans-serif}.field-input{background-color:#2c2c2e;border:1.5px solid #5f5f63;border-radius:8px;font-size:16px;padding:10px 12px;transition:all .2s ease;width:100%}.field-input::placeholder{color:#77767b}.field-input.focus-example,.field-input:focus{border-color:#7360fc;box-shadow:0 0 0 1px #7360fc;outline:none}.field-input.error{border-color:#ee0004;box-shadow:0 0 0 1px #ee0004}.field-input.success{border-color:#059f43;box-shadow:0 0 0 1px #059f43}input[type=file].hide-input-file{height:.1px;opacity:0;position:absolute;width:.1px;z-index:-1}label.button-primary{align-items:center;cursor:pointer;display:inline-flex;justify-content:center;margin-bottom:10px}.field-description{color:#acacaf;font-size:14px;margin-top:4px}.field-message{align-items:center;display:flex;font-size:14px;margin-top:4px}.field-message.error{color:#ee0004}.field-message.error:before{content:"⚠️";font-size:10px;margin-right:5px}.field-message.success{color:#059f43}.field-message.success:before{content:"✓";font-size:10px;margin-right:5px}select.field-input{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ACACAF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:30px}textarea.field-input{min-height:80px;resize:vertical}.analysis-dashboard{background:#1a1a1a;color:#fff;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;height:100%;overflow-y:auto;padding:20px}.analysis-dashboard .dashboard-header{align-items:center;border-bottom:1px solid #333;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.analysis-dashboard .dashboard-header h2{color:#fff;font-size:24px;font-weight:600;margin:0}.analysis-dashboard .dashboard-header .metric-selector .metric-dropdown{background:#2a2a2a;border:1px solid #444;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;outline:none;padding:8px 12px}.analysis-dashboard .dashboard-header .metric-selector .metric-dropdown:hover{border-color:#666}.analysis-dashboard .dashboard-header .metric-selector .metric-dropdown option{background:#2a2a2a;color:#fff}.analysis-dashboard .tab-navigation{background:#2a2a2a;border-radius:8px;display:flex;gap:2px;margin-bottom:20px;padding:4px}.analysis-dashboard .tab-navigation .tab-button{background:#0000;border:none;border-radius:6px;color:#ccc;cursor:pointer;flex:1 1;font-size:13px;font-weight:500;padding:10px 16px;transition:all .2s ease}.analysis-dashboard .tab-navigation .tab-button:hover{background:#3a3a3a;color:#fff}.analysis-dashboard .tab-navigation .tab-button.active{background:#4a9eff;color:#fff;font-weight:600}.analysis-dashboard .analysis-content .metrics-section .status-indicators{display:flex;font-size:12px;gap:20px;margin-bottom:20px}.analysis-dashboard .analysis-content .metrics-section .status-indicators .indicator{align-items:center;display:flex;gap:6px}.analysis-dashboard .analysis-content .metrics-section .status-indicators .indicator.material-data{color:#4a9eff}.analysis-dashboard .analysis-content .metrics-section .status-indicators .indicator.calculated-total{color:#ff6b6b}.analysis-dashboard .analysis-content .metrics-section .status-indicators .indicator.vehicle-spec{color:#4ecdc4}.analysis-dashboard .analysis-content .metrics-section .status-indicators .indicator.material-cost{color:#45b7d1}.analysis-dashboard .analysis-content .metrics-section .status-indicators .indicator.energy-investment{color:#6c5ce7}.analysis-dashboard .analysis-content .metrics-section .status-indicators .indicator.estimated{color:#00b894}.analysis-dashboard .analysis-content .metrics-section .status-indicators .indicator.processing-time{color:#fdcb6e}.analysis-dashboard .analysis-content .metrics-section .metrics-list{display:flex;flex-direction:column;gap:16px}.analysis-dashboard .analysis-content .metrics-section .metrics-list .metric-item{align-items:center;background:#ffffff0d;border-left:4px solid #0000;border-radius:8px;display:flex;justify-content:space-between;padding:16px}.analysis-dashboard .analysis-content .metrics-section .metrics-list .metric-item .metric-info{display:flex;flex-direction:column;gap:8px;min-width:120px}.analysis-dashboard .analysis-content .metrics-section .metrics-list .metric-item .metric-info .metric-name{color:#fff;font-size:14px;font-weight:600}.analysis-dashboard .analysis-content .metrics-section .metrics-list .metric-item .metric-info .usage-tags{display:flex;flex-wrap:wrap;gap:4px}.analysis-dashboard .analysis-content .metrics-section .metrics-list .metric-item .metric-info .usage-tags .usage-tag{background:#ffffff1a;border-radius:4px;color:#ccc;font-size:10px;padding:2px 6px;text-transform:capitalize}.analysis-dashboard .analysis-content .metrics-section .metrics-list .metric-item .metrics-grid{grid-gap:16px;display:grid;flex:1 1;gap:16px;grid-template-columns:repeat(4,1fr);margin:0 16px}.analysis-dashboard .analysis-content .metrics-section .metrics-list .metric-item .metrics-grid .metric-cell{display:flex;flex-direction:column;gap:4px}.analysis-dashboard .analysis-content .metrics-section .metrics-list .metric-item .metrics-grid .metric-cell.single{align-items:center;grid-column:1/-1}.analysis-dashboard .analysis-content .metrics-section .metrics-list .metric-item .metrics-grid .metric-cell .metric-label{color:#888;font-size:10px;font-weight:500;text-transform:uppercase}.analysis-dashboard .analysis-content .metrics-section .metrics-list .metric-item .metrics-grid .metric-cell .metric-value{color:#fff;font-size:12px;font-weight:600}.analysis-dashboard .analysis-content .metrics-section .metrics-list .metric-item .metrics-grid .metric-cell .progress-bar{background:#ffffff1a;border-radius:3px;height:6px;overflow:hidden;width:100%}.analysis-dashboard .analysis-content .metrics-section .metrics-list .metric-item .metrics-grid .metric-cell .progress-bar .progress-fill{border-radius:3px;height:100%;transition:width .3s ease}.analysis-dashboard .analysis-content .metrics-section .metrics-list .metric-item .metrics-grid .metric-cell .percentage{color:#ccc;font-size:10px;text-align:center}.analysis-dashboard .analysis-content .metrics-section .metrics-list .metric-item .status{color:#888;font-size:10px;min-width:100px;text-align:right;text-transform:uppercase}.analysis-dashboard .analysis-content .materials-section{margin-top:30px}.analysis-dashboard .analysis-content .materials-section h3{border-bottom:1px solid #333;color:#fff;font-size:18px;font-weight:600;margin-bottom:20px;padding-bottom:10px}.analysis-dashboard .analysis-content .materials-section .material-item{background:#2a2a2a;border:1px solid #333;border-radius:8px;margin-bottom:12px;padding:16px}.analysis-dashboard .analysis-content .materials-section .material-item .material-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.analysis-dashboard .analysis-content .materials-section .material-item .material-header .material-name{color:#fff;font-size:16px;font-weight:600}.analysis-dashboard .analysis-content .materials-section .material-item .material-header .material-weight{color:#4a9eff;font-size:14px;font-weight:500}.analysis-dashboard .analysis-content .materials-section .material-item .material-details{display:flex;flex-direction:column;gap:8px;margin-top:8px}.analysis-dashboard .analysis-content .materials-section .material-item .material-details .detail-item{display:flex;flex-direction:column;gap:4px}.analysis-dashboard .analysis-content .materials-section .material-item .material-details .detail-item .detail-info{align-items:center;display:flex;justify-content:space-between}.analysis-dashboard .analysis-content .materials-section .material-item .material-details .detail-item .detail-info .detail-label{color:#999;font-size:12px;font-weight:500}.analysis-dashboard .analysis-content .materials-section .material-item .material-details .detail-item .detail-info .detail-value{color:#fff;font-size:13px;font-weight:600}.analysis-dashboard .analysis-content .materials-section .material-item .material-details .detail-item .detail-progress{background:#333;border-radius:3px;height:6px;overflow:hidden}.analysis-dashboard .analysis-content .materials-section .material-item .material-details .detail-item .detail-progress .progress-fill{background:#4a9eff;border-radius:3px;height:100%;transition:width .3s ease}.analysis-dashboard .analysis-content .materials-section .material-item .material-details .usage-tags{display:flex;flex-wrap:wrap;gap:6px}.analysis-dashboard .analysis-content .materials-section .material-item .material-details .usage-tags .usage-tag{background:#3a3a3a;border:1px solid #444;border-radius:12px;color:#ccc;font-size:11px;padding:4px 8px}.analysis-dashboard .analysis-content .global-info-section{margin-top:30px}.analysis-dashboard .analysis-content .global-info-section h3{border-bottom:1px solid #333;color:#fff;font-size:18px;font-weight:600;margin-bottom:20px;padding-bottom:10px}.analysis-dashboard .analysis-content .global-info-section .spec-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.analysis-dashboard .analysis-content .global-info-section .spec-grid .spec-item{background:#2a2a2a;border:1px solid #333;border-radius:8px;padding:16px;text-align:center}.analysis-dashboard .analysis-content .global-info-section .spec-grid .spec-item .spec-label{color:#999;display:block;font-size:12px;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.analysis-dashboard .analysis-content .global-info-section .spec-grid .spec-item .spec-value{color:#4a9eff;display:block;font-size:18px;font-weight:600}.analysis-dashboard .analysis-content .analysis-summary{background:#2a2a2a;border:1px solid #333;border-radius:8px;margin-top:30px;padding:20px}.analysis-dashboard .analysis-content .analysis-summary h3{color:#fff;font-size:16px;font-weight:600;margin-bottom:12px}.analysis-dashboard .analysis-content .analysis-summary p{color:#ccc;font-size:14px;line-height:1.5;margin:0}.analysis-dashboard .analysis-footer{border-top:1px solid #333;margin-top:30px;padding-top:20px}.analysis-dashboard .analysis-footer .status-bar{align-items:center;display:flex;justify-content:center}.analysis-dashboard .analysis-footer .status-bar .status-text{align-items:center;color:#4a9eff;display:flex;font-size:12px;gap:8px}.analysis-dashboard .analysis-footer .status-bar .status-text:before{animation:pulse 2s infinite;background:#4a9eff;border-radius:50%;content:"";height:8px;width:8px}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@media(max-width:768px){.analysis-dashboard{padding:15px}.analysis-dashboard .dashboard-header{align-items:flex-start;flex-direction:column;gap:15px}.analysis-dashboard .tab-navigation{flex-wrap:wrap}.analysis-dashboard .tab-navigation .tab-button{min-width:80px}.analysis-dashboard .analysis-content .metrics-section .metrics-list .metric-item{align-items:flex-start;flex-direction:column;gap:16px}.analysis-dashboard .analysis-content .metrics-section .metrics-list .metric-item .metric-info{margin-bottom:16px}.analysis-dashboard .analysis-content .metrics-section .metrics-list .metric-item .metrics-grid{grid-template-columns:repeat(2,1fr)}.analysis-dashboard .analysis-content .global-info-section .spec-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}}.tool-bar{background:#464649;display:flex;flex-direction:column;gap:16px;padding:16px;width:100%}.tool-bar .layer-controls{display:flex;flex-direction:row;gap:8px}.tool-bar .layer-controls button{min-width:0;width:120px}.tool-bar .layer-controls button.active{background-color:#007bff;color:#fff}.tool-bar .layer-controls label{align-items:center;display:flex;gap:8px}.tool-bar .color-picker{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.tool-bar .color-picker .color-pick{display:flex;flex-wrap:wrap;gap:8px;height:20px;width:20px}.tool-bar .common-actions,.tool-bar .drawing-tools{display:flex;flex-direction:row;gap:10px}.tool-bar .aux-tools{background-color:#2d2d2d;border:1px solid #3d3d3d;border-radius:4px;box-shadow:0 2px 10px #0000001a;display:flex;flex-direction:row;left:0;margin-top:8px;padding:16px;position:absolute;top:40px;z-index:1000}.tool-bar .aux-tools .shapes-tools{display:flex;flex-direction:row;gap:8px;margin-bottom:16px}.tool-bar .aux-tools .shapes-tools .tool-button{align-items:center;background:none;border:1px solid #3d3d3d;border-radius:4px;color:#fff;cursor:pointer;display:flex;gap:8px;padding:8px 12px;transition:background-color .2s}.tool-bar .aux-tools .shapes-tools .tool-button:hover{background-color:#3d3d3d}.tool-bar .aux-tools .shapes-tools .tool-button .tool-icon{height:16px;width:16px}.menu-button{background-color:#e71d7c;border-color:#e71d7c;border-style:solid;height:20px;min-width:0;padding:.2rem;width:20px}.popover{left:-180px;top:100%;z-index:100}.bottom-bar{background:#87888a;bottom:-130px;display:flex;flex-direction:row;justify-content:space-between;min-height:50px;padding:8px;position:absolute;z-index:200}.bottom-bar .color-picker-labels{display:flex;flex-wrap:wrap;gap:4px;padding:4px}.bottom-bar .color-picker-labels p{margin:0;width:100%}.bottom-bar .color-picker-labels .label-color-pick{border-radius:4px;display:flex;flex-wrap:wrap;font-size:14px;gap:2px;padding:2px 4px}.shapes-dropdown{display:inline-block;position:relative}.shapes-dropdown .dropdown-button{align-items:center;background-color:#2d2d2d;border:1px solid #3d3d3d;border-radius:4px;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 12px;transition:background-color .2s}.shapes-dropdown .dropdown-button:hover{background-color:#3d3d3d}.shapes-dropdown .dropdown-button .chevron-icon{transition:transform .2s}.shapes-dropdown .dropdown-button .chevron-icon.open{transform:rotate(180deg)}.shapes-dropdown .dropdown-menu{background-color:#2d2d2d;border:1px solid #3d3d3d;border-radius:4px;box-shadow:0 2px 10px #0000001a;left:0;margin-top:4px;min-width:150px;position:absolute;top:100%;z-index:1000}.shapes-dropdown .dropdown-menu .tool-button{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 12px;text-align:left;transition:background-color .2s;width:100%}.shapes-dropdown .dropdown-menu .tool-button:hover{background-color:#3d3d3d}.shapes-dropdown .dropdown-menu .tool-button:not(:last-child){border-bottom:1px solid #3d3d3d}.shapes-dropdown .dropdown-menu .tool-button .tool-icon{height:16px;width:16px}.canvas-wrapper{background:#f1efff;display:flex;flex-direction:row;height:100%;position:relative;width:100%}.canvas-wrapper #canvas-outer-container{height:100%;min-height:600px;min-width:800px;position:relative;width:80%}.canvas-wrapper #canvas-outer-container .canvas-wrapper-layer{height:100%;left:0;position:absolute;top:0;width:100%}.canvas-wrapper #canvas-outer-container .canvas-wrapper-layer .canvas-container{height:100%!important;left:0!important;position:absolute!important;top:0!important;width:100%!important}.layerContainer{margin-top:1rem}.header,.layerContainer{align-items:center;gap:1rem;justify-content:center}.header{font-weight:700;margin-top:.5rem}.layersDiv{border:.1rem solid gray;border-radius:2px;cursor:pointer;width:40px}.activeLayer{background:linear-gradient(180deg,#93d7af,#8bc3a4)}.layersParent{align-items:center;gap:.3rem;justify-content:center;margin-top:1rem}.layerRow{display:flex;flex-wrap:nowrap;gap:.2rem;width:300px}.mainRow{margin-bottom:1rem}.layerRow2{font-size:.8rem}button{background-color:#5d615d;border:none;color:#fff;cursor:pointer;display:inline-block;font-size:16px;margin:4px 2px;padding:6px 12px;text-align:center;text-decoration:none}.image-editor-container{display:flex;flex-direction:column;height:100%;position:relative;width:100%}.image-editor-container .main-content{display:flex;flex:1 1;flex-direction:column;position:relative}.layer-controls .layer-switcher{display:flex;gap:8px;margin-bottom:8px}.layer-controls .layer-switcher button{background-color:#2c2c2e;border:1px solid #5f5f63;border-radius:8px;color:#f8fafc;cursor:pointer;font-size:12px;padding:4px 8px;transition:all .2s ease}.layer-controls .layer-switcher button:hover{background-color:#464649;border-color:#8f80fd}.layer-controls .layer-switcher button.active{background-color:#7360fc;border-color:#7360fc;color:#f8fafc}#canvas{bottom:0;left:0;position:absolute;right:0;top:0}.btn{background-color:#f5f5f5;cursor:pointer;padding:5px 15px}#addLine:hover{background-color:orange;color:#000}#disableLine:hover{background-color:tomato;color:#000}.thumbnails-area{align-items:center;bottom:16px;display:flex;flex-direction:row;gap:4px;margin-top:auto;order:3;padding-bottom:8px;position:absolute;width:100%;z-index:9999999}.thumbnails-area.hidden .thumbnails{display:none}.thumbnails-area .thumbnails{background-color:#0000;border-radius:8px;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:90%;padding:8px;width:100%}.thumbnails-area .thumbnails img{background-color:#464649;border:2px solid #0000;border-radius:8px;cursor:pointer;height:60px;object-fit:cover;transition:transform .2s ease,border-color .2s ease;width:60px}.thumbnails-area .thumbnails img:hover{border-color:#8f80fd;transform:scale(1.05)}.thumbnails-area .thumbnails img.selected{border-color:#7360fc;transform:scale(1.05)}.thumbnails-area .thumbnail-toggle-button{align-items:center;background-color:#2c2c2ecc;border:1px solid #5f5f63;border-radius:16px;color:#f8fafc;cursor:pointer;display:inline-flex;justify-content:center;padding:4px 8px;transition:background-color .2s ease}.thumbnails-area .thumbnail-toggle-button:hover{background-color:#464649e6}.thumbnails-area .thumbnail-toggle-button svg{display:block}#login{background-color:#4a3aa1;color:#fff;font-family:Noto Sans,sans-serif;margin-top:50px;text-align:center}#login form .input-text{align-self:stretch;background:#f1efff;background:var(--Tones-Opaque-Accent-Light-Purple,#f1efff);border:1.5px solid #ee0004;border:1.5px solid var(--System-Opaque-Error,#ee0004);border-radius:12px;padding:8px}div.result{margin-bottom:10px;width:60%}.auth-page{align-items:center;background-color:#201446;display:flex;justify-content:center;min-height:100vh}.auth-page .auth-container{background-color:#4a3aa1;border-radius:8px;box-shadow:0 4px 12px #0000001a;max-width:450px;padding:2rem;width:100%}.auth-page .auth-container .auth-logo{align-items:center;display:flex;flex-direction:column;margin-bottom:2rem}.auth-page .auth-container .auth-logo img{height:auto;margin-bottom:1rem;width:200px}.auth-page .auth-container .auth-logo h1{color:#333;font-size:1.5rem;margin:0}.error-message{color:#e53935;font-size:.9rem;margin-top:1rem}.form-group{margin-bottom:1rem}.login-link,.register-link{font-size:.9rem;margin-top:1.5rem;text-align:center}.login-link a,.register-link a{color:#2196f3;font-weight:500;text-decoration:none}.login-link a:hover,.register-link a:hover{text-decoration:underline}.loading{align-items:center;color:#666;display:flex;font-size:1.2rem;height:100vh;justify-content:center}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:100;src:url(/static/media/IBMPlexMono-Thin.86f7b7453e653fa3eb10.ttf) format("truetype")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:200;src:url(/static/media/IBMPlexMono-ExtraLight.0064945a20eef9328573.ttf) format("truetype")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:300;src:url(/static/media/IBMPlexMono-Light.a21361968db7f557724b.ttf) format("truetype")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;src:url(/static/media/IBMPlexMono-Regular.1509e8d24f8562f776e4.ttf) format("truetype")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;src:url(/static/media/IBMPlexMono-Medium.e44b6da17070f5fecd5b.ttf) format("truetype")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;src:url(/static/media/IBMPlexMono-SemiBold.5f82c3b8863d23615092.ttf) format("truetype")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:700;src:url(/static/media/IBMPlexMono-Bold.270fc7685a99d1197e53.ttf) format("truetype")}.style-guide-container{background-color:#0a0a0b;color:#f8fafc;font-family:Noto Sans,sans-serif;min-height:100vh;padding:30px}.style-guide-container h1{color:#f8fafc;font-size:32px;font-weight:700;margin-bottom:30px}.style-guide-tabs{border-bottom:1px solid #2c2c2e;display:flex;gap:10px;margin-bottom:30px;padding-bottom:10px}.style-guide-tabs .tab-button{background:none;border:none;border-radius:4px;color:#acacaf;cursor:pointer;font-size:16px;font-weight:500;padding:8px 16px;transition:all .2s ease}.style-guide-tabs .tab-button:hover{background-color:#2c2c2e80;color:#f8fafc}.style-guide-tabs .tab-button.active{background-color:#2c2c2e;border-bottom:2px solid #7360fc;color:#f8fafc}.style-guide-content{background-color:#0a0a0b;border-radius:8px;overflow:hidden}
/*# sourceMappingURL=main.a0331124.css.map*/