:root{--primary-bg: #212222;--bg-color: #0f2027;--secondary-bg: #192f38;--border-color: #2c5364;--text-color: #e0f2f1;--highlight-color: #427cb0;--component-bg: #203a43;--canvas-bg: #1e1e1e;--dialog-bg: #2a2b2b;--input-bg: #d1f2eb;--mint: #d1f2eb;--emerald: #50c878;--forest: #0b6e4f;--dark: #013220}*{margin:0;padding:0;box-sizing:border-box}.ai-semantic-headings{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body{font-family:Minecraftia,sans-serif;background-color:var(--bg-color);color:var(--text-color);height:100vh;overflow:hidden}html,body{position:relative;overflow-x:hidden;overscroll-behavior:none}body.keyboard-active{height:100%;overflow:hidden}body.keyboard-active .ai-chat-container.open{bottom:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#app{display:flex;flex-direction:column;height:100vh}.toolbar{display:flex;background-color:var(--primary-bg);padding:8px 16px;border-bottom:1px solid var(--border-color);align-items:center}.logo{font-family:Minecraftia,sans-serif;font-optical-sizing:auto;font-weight:500;font-style:normal;font-size:4rem;color:var(--text-color);margin-right:30px}.docName{background-color:var(--bg-color);color:var(--text-color);font-family:Minecraftia,sans-serif;font-optical-sizing:auto;font-weight:700;font-size:2rem;font-style:normal;border:var(--text-color) 2px solid;border-radius:px;cursor:text;width:20%}.docName::placeholder{color:var(--text-color)}.screenshot{display:flex;align-items:center;justify-content:center;border-radius:5px}.screenshot:hover{background-color:#ffffff1a}.Theme,.tools,.file{color:var(--text-color);font-family:Minecraftia,sans-serif;font-optical-sizing:auto;font-weight:700;font-size:2rem;font-style:normal;border-bottom:1px solid var(--border-color);cursor:default}.main-container{display:flex;flex:1;overflow:hidden;-webkit-user-select:none;user-select:none;min-height:0}.sidebar{width:250px;background-color:var(--secondary-bg);border-right:1px solid var(--border-color);overflow-y:scroll;overflow-x:hidden}.sidebar.close{width:0;overflow:hidden;transition:width .5s ease-in-out}.sidebar.open{width:250px;overflow-y:auto;transition:width .5s ease-in-out}.sidebar-header{display:flex;align-items:center;font-size:30px}.sidebar-header div{background-color:var(--bg-color);color:var(--text-color);font-family:Minecraftia,sans-serif;font-optical-sizing:auto;font-weight:900;font-size:larger;font-style:normal;transition:.5s;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:10px}.closeSide.open{transform:rotate(180deg)}.closeSide.close{transform:rotate(0)}.side{overflow-y:auto;overflow-x:hidden;display:flex}.sidebar-header div.open:hover{background-color:var(--text-color);color:var(--component-bg);transform:scale(1.1) rotate(180deg)}.sidebar-header div.close:hover{background-color:var(--text-color);color:var(--component-bg);transform:scale(1.1)}::-webkit-scrollbar{width:15px;height:10px}::-webkit-scrollbar-thumb{background:var(--component-bg);border-radius:10px;border:var(--text-color) 2px solid}::-webkit-scrollbar-track{background:var(--text-color);border-radius:10px;border:#000000 2px solid}::-webkit-scrollbar-thumb:hover{background:#555}.component-group{margin-bottom:15px}.component-group-title{padding:8px 12px;background-color:var(--bg-color);font-size:x-large;font-weight:700;border-bottom:1px solid var(--border-color);border-top:1px solid var(--border-color);user-select:none;-webkit-user-select:none!important}.component-list{display:flex;flex-wrap:wrap;padding:10px;gap:10px}.component{display:flex;flex-direction:column;align-items:center;width:100px;padding:10px;background-color:var(--component-bg);border-radius:4px;cursor:pointer;transition-duration:.5s;border:#000000 1px solid;box-shadow:2px 2px 4px #000}.component:hover{background-color:var(--text-color);color:var(--bg-color);transform:scale(1.05)}.component-shadow{cursor:grabbing;color:var(--text-color);border-radius:8px;padding:8px}.component-icon{width:60px;height:60px;background-size:contain;background-repeat:no-repeat;background-position:center;margin-bottom:5px}.docNameContainer{padding-left:2%;padding-right:2%;width:100%;display:flex;justify-content:space-between;align-items:center;text-align:center;height:8%;background-color:var(--bg-color);border:#0b0b0b 2px solid;box-shadow:inset 0 0 3px #000;user-select:none;-webkit-user-select:none!important}.component-label{font-family:Minecraftia,sans-serif;font-optical-sizing:auto;font-weight:700;font-style:normal;font-size:1.4rem;text-align:center;user-select:none;-webkit-user-select:none!important}.canvas-container{flex:1;background-color:var(--canvas-bg);overflow:hidden;position:relative;display:flex;height:auto;min-height:0}#circuit-canvas{width:100%;height:100%;cursor:crosshair}.rightContainer{display:flex;justify-content:space-between;align-items:center;width:50%}.buttonGroup{display:flex;justify-content:space-evenly;align-items:center;width:80%}.gate-properties-container{padding:15px;background-color:#f5f5f5;border-left:1px solid #ddd;height:100%}.property-group{margin-bottom:15px}.property-group label{display:block;margin-bottom:5px;font-weight:700;color:#555}.property-value{font-family:monospace;padding:5px;background:#eee;border-radius:3px}.property-control{display:flex;align-items:center}.control-btn{width:30px;height:30px;font-size:16px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #ccc;border-radius:3px;cursor:pointer}.control-btn:hover:not([disabled]){background:#e0e0e0}.control-btn:disabled{opacity:.5;cursor:not-allowed}.editor-container{display:flex;width:100%;height:100%}.canvas-container{flex-grow:1;position:relative}.properties-panel{width:250px;height:100%;overflow-y:auto;transition:width .3s ease;background-color:#f5f5f5;border-left:1px solid #ddd}#bit-width-value,#input-count-value{padding:0 10px;min-width:30px;text-align:center}.storage{color:var(--text-color);font-family:Minecraftia,sans-serif;font-optical-sizing:auto;font-weight:700;font-size:2rem;font-style:normal;border-bottom:1px solid var(--border-color);cursor:pointer;transition:.3s}.storage:hover{transform:scale(1.1) translateY(-2px)}.ai-chat-container{position:fixed;bottom:20px;right:20px;width:30%;height:90%;background-color:var(--secondary-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 5px 15px #0000004d;display:flex;flex-direction:column;overflow:hidden;z-index:1000;transform:translate(110%);transition:transform .5s ease-in-out}.ai-chat-container.open{transform:translate(0)}.ai-chat-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background-color:var(--bg-color);color:var(--text-color);font-family:Minecraftia,sans-serif;font-size:1.5rem;border-bottom:1px solid var(--border-color)}.close-chat-button{background:transparent;border:none;color:var(--text-color);font-size:24px;cursor:pointer;line-height:1}.ai-chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:16px}.ai-message,.user-message{display:flex;gap:8px;max-width:80%;font-family:Minecraftia,sans-serif}.ai-message{align-self:flex-start}.user-message{align-self:flex-end;flex-direction:row-reverse}.ai-avatar,.user-avatar{width:32px;height:32px;border-radius:50%;display:flex;justify-content:center;align-items:center;font-weight:700;flex-shrink:0}.ai-avatar{color:var(--text-color)}.user-avatar{background-color:var(--mint);color:var(--forest)}.message-content{background-color:var(--component-bg);padding:10px 14px;border-radius:8px;font-size:1rem;line-height:1.4;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;max-width:100%}.steps-container{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.step-item{display:flex;align-items:center;gap:6px;font-size:.75em;padding:3px 8px;border-radius:4px;background:#ffffff08;transition:all .2s ease}.step-icon{font-size:.9em;font-weight:700}.step-name{opacity:.9}.step-pending .step-icon,.step-running .step-icon{color:#888}.step-running{background:#ffffff0d}.step-success .step-icon{color:#4ade80}.step-failure .step-icon{color:#f87171}.circuit-actions{position:absolute;top:5px;right:5px;display:flex;gap:5px;opacity:0;transition:opacity .3s ease}.circuit-thumbnail{position:relative}.circuit-card:hover .circuit-actions{opacity:1}.verilog-editor-container{position:fixed;top:0;left:0;width:100%;height:100%;display:none;z-index:1000;background-color:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);justify-content:center;align-items:center}.verilog-editor-panel{background:linear-gradient(145deg,#1a1a2e,#16213e,#0f0f23);border-radius:12px;box-shadow:0 25px 80px #0009,0 0 1px #ffffff1a inset,0 0 40px #667eea1a;width:85%;max-width:1400px;height:85%;display:flex;flex-direction:column;animation:fadeIn .3s ease-in-out;border:1px solid rgba(255,255,255,.08)}.verilog-editor-header{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background:#0000004d;border-bottom:1px solid rgba(255,255,255,.1);border-radius:12px 12px 0 0}.verilog-editor-header h3{margin:0;color:#e0e0e0;font-family:Segoe UI,sans-serif;font-size:16px;font-weight:600;display:flex;align-items:center;gap:10px}.verilog-editor-header h3 svg{color:#667eea}.close-verilog-button{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#999;font-size:20px;cursor:pointer;width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.close-verilog-button:hover{background:#ef444433;border-color:#ef44444d;color:#ef4444}.ide-toolbar{padding:10px 16px;background:#0003;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.08)}.ide-toolbar-group{display:flex;gap:8px}.ide-btn{display:flex;align-items:center;gap:6px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#ccc;border-radius:6px;padding:8px 14px;cursor:pointer;font-size:13px;font-family:Segoe UI,sans-serif;transition:all .2s ease}.ide-btn:hover{background:#ffffff1a;border-color:#fff3;color:#fff;transform:translateY(-1px)}.ide-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border-color:transparent;color:#fff;font-weight:500}.ide-btn-primary:hover{background:linear-gradient(135deg,#7c8fec,#8a5db8);box-shadow:0 4px 15px #667eea66}.verilog-editor-content{flex:1;display:flex;overflow:hidden;background:#1e1e2e;position:relative}.line-numbers{width:55px;min-width:55px;background:#0000004d;border-right:1px solid rgba(255,255,255,.08);padding:12px 0;overflow:hidden;-webkit-user-select:none;user-select:none;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:16px;line-height:1.6}.line-number{text-align:right;padding-right:12px;color:#4a4a6a;height:25.6px}.code-editor-wrapper{flex:1;position:relative;overflow:hidden}.highlight-overlay{position:absolute;top:0;left:0;right:0;bottom:0;margin:0;padding:12px 16px;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:16px;line-height:1.6;color:#f8f8f2;background:transparent;white-space:pre-wrap;word-wrap:break-word;overflow:auto;pointer-events:none}.code-editor-textarea{position:absolute;top:0;left:0;width:100%;height:100%;margin:0;padding:12px 16px;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:16px;line-height:1.6;color:transparent;caret-color:#f8f8f2;background:transparent;border:none;outline:none;resize:none;white-space:pre-wrap;word-wrap:break-word;overflow:auto}.code-editor-textarea::selection{background:#667eea4d}.verilog-keyword{color:#ff79c6;font-weight:500}.verilog-comment{color:#6272a4;font-style:italic}.verilog-string{color:#f1fa8c}.verilog-number{color:#bd93f9}.verilog-preprocessor{color:#50fa7b}.verilog-operator{color:#ff79c6}.ide-statusbar{display:flex;justify-content:space-between;padding:6px 16px;background:#0006;border-top:1px solid rgba(255,255,255,.08);border-radius:0 0 12px 12px;font-size:12px;color:#888;font-family:Segoe UI,sans-serif}.statusbar-item{display:flex;align-items:center;gap:8px}.share-modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.share-modal-content{background-color:var(--component-bg);border-radius:8px;width:400px;max-width:90%;box-shadow:0 4px 8px #0003}.share-modal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-color);padding:15px 20px}.visibility-button{padding:10px 16px;border:1px solid var(--border-color);border-radius:4px;cursor:pointer;font-family:Minecraftia,sans-serif;font-weight:500;transition:all .2s}.visibility-button.public{background-color:#4caf50;color:#fff}.visibility-button.private{background-color:var(--component-bg);color:var(--text-color)}.visibility-button:hover{transform:translateY(-2px);box-shadow:0 2px 5px #0003}.search-container{position:relative;display:flex;padding:16px 24px;border-bottom:1px solid var(--border-color);background-color:var(--secondary-bg)}.search-container input{flex:1;padding:10px 40px 10px 16px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;background-color:var(--component-bg);color:var(--text-color);transition:border-color .2s}.search-results-info{padding:8px 24px;background-color:var(--secondary-bg);color:var(--text-color);font-size:14px;border-bottom:1px solid var(--border-color)}.circuit-card.public:after{content:"🌎";position:absolute;top:10px;right:10px;background-color:#4caf50;color:#fff;padding:2px 6px;border-radius:4px;font-size:12px}.close-share-modal{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-color)}.share-modal-body{padding:20px}.share-input{width:100%;padding:10px;margin:10px 0;border:1px solid var(--border-color);border-radius:4px;background-color:var(--bg-color);color:var(--text-color)}.share-button{background-color:#0d6efd;color:#fff;border:none;border-radius:4px;padding:10px 15px;cursor:pointer;margin-top:10px}.share-button:hover{background-color:#0b5ed7}.circuit-card.shared{border-left:3px solid #0d6efd}.circuit-card.shared:before{content:"Shared";position:absolute;top:5px;right:5px;background-color:#0d6efd;color:#fff;padding:2px 6px;border-radius:4px;font-size:12px}.verilog-button{display:flex;align-items:center;justify-content:center;background-color:var(--bg-color);color:var(--text-color);border-bottom:1px solid var(--border-color);cursor:pointer;font-family:Minecraftia,sans-serif;font-size:2rem;font-weight:700;transition:background-color .2s}.verilog-button svg{margin-right:8px}.verilog-button:hover{background-color:#1f1f1f}.tooltip{position:relative;display:inline-block}.tooltip .tooltiptext{visibility:hidden;width:auto;min-width:120px;background-color:#000c;color:#fff;text-align:center;border-radius:6px;padding:5px 8px;position:absolute;z-index:1000;bottom:125%;left:50%;transform:translate(-50%);opacity:0;transition:opacity .3s;font-size:14px;pointer-events:none;white-space:nowrap}.tooltip .tooltiptext:after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:rgba(0,0,0,.8) transparent transparent transparent}.tooltip:hover .tooltiptext{visibility:visible;opacity:1}.tooltip-top .tooltiptext{bottom:125%}.tooltip-bottom .tooltiptext{top:125%;bottom:auto}.tooltip-bottom .tooltiptext:after{bottom:100%;top:auto;border-color:transparent transparent rgba(0,0,0,.8) transparent}.tooltip-left .tooltiptext{top:50%;right:125%;bottom:auto;left:auto;transform:translateY(-50%)}.tooltip-left .tooltiptext:after{top:50%;left:100%;margin-top:-5px;margin-left:0;border-color:transparent transparent transparent rgba(0,0,0,.8)}.tooltip-right .tooltiptext{top:50%;left:125%;bottom:auto;transform:translateY(-50%)}.tooltip-right .tooltiptext:after{top:50%;right:100%;left:auto;margin-top:-5px;border-color:transparent rgba(0,0,0,.8) transparent transparent}.circuit-actions button{background-color:#0009;color:#fff;border:none;border-radius:4px;padding:5px 8px;cursor:pointer;font-size:14px;transition:background-color .2s ease}.circuit-actions button:hover{background-color:#000c}.delete-circuit:hover{background-color:#dc3545cc!important}.view-circuit:hover{background-color:#0d6efdcc!important}.ai-message .message-content{border-top-left-radius:0}.user-message .message-content{border-top-right-radius:0;background-color:var(--border-color);word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;max-width:100%}#ai-chat-input{flex:1;border:none;outline:none;background-color:transparent;font-size:14px;padding:8px 12px;resize:none;overflow-y:auto;min-height:24px;max-height:120px;line-height:1.5;font-family:inherit;color:inherit}.ai-chat-input-area{display:flex;align-items:center;padding:5px 10px;background-color:#333;border-top:1px solid #444;position:relative}.file-upload-label{cursor:pointer;display:flex;align-items:center;padding:8px;border-radius:50%;transition:background-color .2s}.file-upload-label:hover{background-color:var(--component-bg)}#ai-chat-input:focus{outline:none;border-color:var(--emerald)}.aiLogo{cursor:pointer;font-size:2rem;font-family:Minecraftia,sans-serif;color:var(--text-color);transition:.3s;font-optical-sizing:auto;font-weight:700;border-bottom:1px solid var(--border-color)}.aiLogo:hover{transform:scale(1.1) translateY(-2px)}.auth-modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:none;justify-content:center;align-items:center;z-index:2000}.auth-modal.active{display:flex;animation:fadeIn .3s ease-in-out}.auth-panel{width:400px;background-color:var(--bg-color);border-radius:8px;box-shadow:0 5px 20px #00000080;overflow:hidden}.auth-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid var(--border-color)}.auth-header h3{margin:0;font-size:2rem;font-weight:700;color:var(--text-color);font-family:Minecraftia,sans-serif}.close-auth-button{background:none;border:none;color:var(--text-color);font-size:24px;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px}.auth-content{padding:20px}.auth-form{display:none}.auth-form.active{display:block}.input-group{margin-bottom:16px}.input-group label{display:block;margin-bottom:6px;font-size:14px;color:var(--text-color);font-family:Minecraftia,sans-serif}.input-group input{width:100%;padding:10px;border:1px solid var(--border-color);border-radius:4px;background-color:var(--component-bg);color:var(--text-color);font-size:14px;transition:border-color .3s}.input-group input::placeholder{color:var(--text-color);opacity:.8}.input-group input:focus{outline:none;border-color:var(--emerald)}.forgot-password{text-align:right;margin-bottom:16px}.forgot-password a{color:var(--text-color);font-size:13px;text-decoration:none}.forgot-password a:hover{color:var(--emerald)}.auth-button{width:100%;padding:12px;background-color:var(--emerald);color:var(--dark);border:none;border-radius:4px;font-size:2rem;font-weight:700;cursor:pointer;transition:background-color .3s;margin-bottom:16px;font-family:Minecraftia,sans-serif}.auth-button:hover{background-color:var(--forest);color:var(--mint)}.auth-switch{text-align:center;display:flex;align-items:center;justify-content:center;gap:1rem;font-size:.8rem;color:var(--text-color)}.auth-switch a{color:var(--emerald);text-decoration:none;font-weight:700;font-size:1.2rem}.auth-switch a:hover{text-decoration:underline}#send-message{background-color:var(--emerald);color:var(--dark);border:none;width:36px;height:36px;border-radius:50%;display:flex;justify-content:center;align-items:center;cursor:pointer;transition:background-color .2s}#send-message:hover{background-color:var(--forest);color:var(--mint)}.image-preview{max-width:100%;margin:8px 0;border-radius:8px}.image-preview img{max-width:100%;border-radius:8px}.theme-container,.fileContainer{position:relative;display:inline-block}.Theme{cursor:pointer}.theme-dropdown{display:none;position:absolute;top:100%;right:-50%;background-color:var(--secondary-bg);min-width:150px;box-shadow:0 4px 8px #0003;border-radius:4px;z-index:1000;border:1px solid var(--border-color);overflow:hidden}.toolsContainer{position:relative;display:inline-block}.tools-dropdown{display:none;position:absolute;top:100%;right:-100%;background-color:var(--secondary-bg);min-width:120px;box-shadow:0 4px 8px #0003;border-radius:4px;z-index:1000;border:1px solid var(--border-color);overflow:hidden}.theme-dropdown.show{display:block;animation:fadeIn .5s ease-in-out}.tools-option{padding:10px 15px;cursor:pointer;transition:background-color .2s;color:var(--text-color);font-family:Minecraftia,sans-serif;font-size:14px;transition:.5s}.tools-dropdown.show,.theme-dropdown.show{display:block;animation:fadeIn .5s ease-in-out}.file-dropdown{display:none;position:absolute;top:100%;right:-100%;background-color:var(--secondary-bg);min-width:100px;box-shadow:0 4px 8px #0003;border-radius:4px;z-index:1000;border:1px solid var(--border-color);overflow:hidden}.file-dropdown.show{display:block;animation:fadeIn .5s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.theme-option{padding:10px 15px;cursor:pointer;transition:background-color .2s;color:var(--text-color);font-family:Minecraftia,sans-serif;font-size:14px;transition:.5s}.fileOption{padding:10px 15px;cursor:pointer;transition:background-color .2s;font-family:Minecraftia,sans-serif;color:var(--text-color);font-size:18px;transition:.5s}.theme-option:hover,.fileOption:hover,.tools-option:hover{background-color:var(--text-color);color:var(--component-bg);transform:scale(1.15)}.theme-option.active{font-weight:700;text-decoration:underline;font-size:16px}.minimap{position:absolute;bottom:10px;right:10px;width:200px;height:200px;border:1px solid var(--border-color);background-color:var(--component-bg);overflow:hidden}.minimap canvas{position:relative;left:1%;top:1%;width:98%;height:98%}.settings-icon{display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:5px;transition:background-color .2s}.settings-icon:hover{background-color:#ffffff1a}.settings-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:400px;background-color:var(--bg-color);border-radius:8px;box-shadow:0 5px 20px #00000080;z-index:1000;display:none;color:#cdcfd0;font-family:Minecraftia,sans-serif;transition:1s}.settings-panel.active{display:block;animation:fadeIn .5s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.settings-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid #333}.circuit-suggestion{position:absolute;z-index:1000;background-color:var(--component-bg);border:1px solid var(--border-color);border-radius:4px;box-shadow:0 4px 12px #00000026;padding:8px 12px;max-width:280px;font-size:14px;animation:fadein .3s}.suggestion-title{font-weight:700;margin-bottom:4px}.tutorial-navigation{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding:0 10px}#prev-step,#next-step{padding:8px 16px;border-radius:20px;border:none;font-weight:500;cursor:pointer;transition:all .2s ease;background-color:var(--component-bg);color:var(--text-color);border:1px solid var(--border-color)}#next-step{background-color:#0b6e4f;color:#fff}#prev-step:hover,#next-step:hover{transform:translateY(-2px);box-shadow:0 3px 8px #0003}#prev-step:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.modal-footer label{display:flex;align-items:center;gap:8px;cursor:pointer}#dont-show-again{width:16px;height:16px;cursor:pointer}#tutorial-close{padding:8px 16px;border-radius:4px;border:none;background-color:#0b6e4f;color:#fff;cursor:pointer;transition:all .2s ease}#tutorial-close:hover{background-color:#0d8c64}.suggestion-description{color:var(--text-color);margin-bottom:6px}.modal{display:none;position:fixed;z-index:1000;left:0;width:100%;height:100%;top:0;background-color:#000c;padding-top:100px;overflow:auto}.modal-content{background-color:var(--component-bg);color:var(--text-color);margin:auto;padding:0;border:1px solid var(--border-color);border-radius:8px;width:80%;max-width:800px;box-shadow:0 4px 20px #0000004d;animation:modalFadeIn .3s}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid var(--border-color)}.modal-header h2{margin:0;font-size:22px}.close-tutorial{font-size:28px;font-weight:700;cursor:pointer}.modal-body{padding:20px}.modal-footer{padding:15px 20px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border-color)}.tutorial-navigation{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}#step-indicators{display:flex;gap:8px}.step-dot{width:10px;height:10px;border-radius:50%;background-color:var(--border-color);cursor:pointer}.step-dot.active{background-color:#0b6e4f;transform:scale(1.2)}.tutorial-step{display:none}.tutorial-step.active{display:block;animation:stepFadeIn .5s}@keyframes stepFadeIn{0%{opacity:0}to{opacity:1}}.tutorial-video{width:100%;max-width:100%;height:auto;border-radius:8px;margin:15px 0;box-shadow:0 4px 12px #0003;background-color:#000}.tutorial-content img{max-width:100%;border-radius:4px;margin:10px 0;border:1px solid var(--border-color)}.help-button{position:fixed;bottom:220px;right:10px;width:30px;height:30px;border-radius:50%;background-color:#2c5364;color:#fff;display:flex;justify-content:center;align-items:center;font-size:24px;box-shadow:0 3px 10px #0003;cursor:pointer;border:none;z-index:100;transition:all .3s}.help-button:hover{transform:scale(1.1);background-color:#2c5364}.github-button{position:fixed;bottom:220px;right:80px;width:120px;height:30px;border-radius:10px;background-color:#2a414b;font-family:Minecraftia,sans-serif;color:#fff;display:flex;justify-content:center;align-items:center;gap:8px;font-size:20px;box-shadow:0 3px 10px #0003;cursor:pointer;border:none;z-index:100;transition:all .3s;background-image:s;text-decoration:none}.github-button:hover{transform:scale(1.1);background-color:#2c5364}#detection-modal.active{display:block}.detectButton{cursor:pointer;font-size:2rem;font-family:Minecraftia,sans-serif;color:var(--text-color);transition:.3s;font-optical-sizing:auto;font-weight:700;border-bottom:1px solid var(--border-color)}.detectButton:hover{transform:scale(1.1) translateY(-2px)}#detection-modal .modal-content{max-width:500px}.close-detection{font-size:28px;font-weight:700;cursor:pointer}#image-drop-zone{border:2px dashed var(--border-color);border-radius:8px;padding:40px;text-align:center;cursor:pointer;transition:background-color .2s,border-color .2s;position:relative;overflow:hidden}#image-drop-zone.dragover{border-color:var(--highlight-color);background-color:#427cb01a}.drop-zone-prompt{display:flex;flex-direction:column;align-items:center;gap:15px}.drop-zone-prompt i{font-size:48px;color:var(--highlight-color)}.drop-zone-prompt p{margin:0;font-size:16px;color:var(--text-color)}#image-preview-container{position:relative;width:100%;height:100%;display:flex;justify-content:center;align-items:center}#image-preview{max-width:100%;max-height:250px;object-fit:contain;border-radius:4px}#remove-image-button{position:absolute;top:10px;right:10px;background-color:#000000b3;color:#fff;border:none;border-radius:50%;width:28px;height:28px;font-size:18px;line-height:28px;cursor:pointer;transition:background-color .2s}#remove-image-button:hover{background-color:#f00c}#analyze-image-button{padding:10px 20px;background-color:var(--emerald);color:var(--dark);border:none;border-radius:4px;font-size:16px;font-weight:500;cursor:pointer;transition:background-color .3s;font-family:Minecraftia,sans-serif}#analyze-image-button:disabled{background-color:var(--border-color);cursor:not-allowed}.loading-indicator-detection{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;padding:20px}.loading-indicator-detection .spinner{border:4px solid rgba(255,255,255,.3);border-radius:50%;border-top:4px solid var(--highlight-color);width:40px;height:40px;animation:spin 1s linear infinite}.loading-indicator-detection p{color:var(--text-color);font-size:16px}.suggestion-hint{font-size:12px;color:var(--text-color);opacity:.8;padding-top:4px;border-top:1px solid var(--border-color)}@keyframes fadein{0%{opacity:0;transform:translateY(-10px) translate(-50%)}to{opacity:1;transform:translateY(0) translate(-50%)}}.settings-header h3{margin:0;font-size:1.5em;font-weight:500;color:var(--text-color)}.close-settings-button{background:none;border:none;color:#cdcfd0;font-size:24px;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px}.settings-content{padding:20px;height:auto;overflow-y:hidden;color:var(--text-color)}.settings-section{margin-bottom:25px;height:60%}.settings-section h4{margin-top:0;margin-bottom:15px;font-size:18px;font-family:Minecraftia,sans-serif;font-weight:500;color:var(--text-color)}.setting-item label{font-size:14px}.toggle-switch{position:relative;display:inline-block;width:40px;height:20px}.toggle-switch input{opacity:1;width:10px;height:10px}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#333;border-radius:20px;transition:.4s}.toggle-slider:before{position:absolute;content:"";height:16px;width:16px;left:2px;bottom:2px;background-color:var(--mint);border-radius:50%;transition:.4s}input:checked+.toggle-slider{background-color:#275b38}input:checked+.toggle-slider:before{transform:translate(20px)}select{background-color:var(--component-bg);color:var(--text-color);border:none;padding:5px 10px;border-radius:4px;font-size:14px;font-family:Minecraftia,sans-serif}.shortcut-category{font-size:.8em;color:#0b6e4f;margin-top:12px;margin-bottom:6px;font-weight:700;border-bottom:1px solid rgba(11,110,79,.3);padding-bottom:4px}.shortcut-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;padding:4px 0}.shortcut-key{background:#0b6e4f33;padding:2px 8px;border-radius:4px;font-family:monospace;font-size:.8em}.settings-section{margin-bottom:20px;max-height:400px;overflow-y:auto;padding-right:10px}.setting-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.setting-item span{font-size:14px;color:var(--text-color);cursor:default}.toggle-switch{position:relative;display:inline-block;width:40px;height:20px;cursor:pointer}.toggle-slider{cursor:pointer}.toggle-switch input{opacity:0;width:100%;height:100%;position:absolute;z-index:1;cursor:pointer;margin:0}.mobile-header{display:none;justify-content:space-between;align-items:center;width:100%;padding:8px 10px;background-color:var(--secondary-bg-color);border-bottom:1px solid var(--border-color)}.hamburger-button{background:transparent;border:none;color:var(--text-color);cursor:pointer;padding:5px;display:flex;align-items:center;justify-content:center}.hamburger-button:hover{background-color:#ffffff1a;border-radius:4px}.mobile-title{flex:1;text-align:center;font-weight:700;color:var(--text-color)}.mobile-title .docName{width:80%;text-align:center}.mobile-menu{position:fixed;top:0;left:-300px;width:280px;height:100vh;background-color:#000;box-shadow:2px 0 5px #0003;z-index:1000;transition:left .3s ease;overflow-y:auto}.mobile-menu.open{left:0}.mobile-menu-header{display:flex;justify-content:space-between;align-items:center;padding:15px;border-bottom:1px solid var(--border-color)}.mobile-menu-header h3{margin:0;color:var(--text-color)}.close-mobile-menu{background:transparent;border:none;color:var(--text-color);font-size:24px;cursor:pointer}.mobile-menu-content{padding:10px 0}.mobile-menu-item{padding:12px 15px;display:flex;justify-content:space-between;align-items:center;color:var(--text-color);cursor:pointer;border-bottom:1px solid rgba(255,255,255,.05)}.mobile-menu-item:hover{background-color:#ffffff0d}.mobile-menu-item.has-submenu{position:relative}.chevron-icon{transition:transform .3s ease}.mobile-menu-item.expanded .chevron-icon{transform:rotate(90deg)}.mobile-submenu{display:none;padding-left:15px;background-color:#0003}.mobile-menu-item.expanded .mobile-submenu{display:block}.mobile-submenu-item{padding:10px 15px;color:var(--text-color);cursor:pointer}.mobile-submenu-item:hover{background-color:#ffffff0d}@media (max-width: 760px){.ai-chat-container{width:90%;height:60%;bottom:70px;right:5%}.minimap{display:none}.sidebar,.sidebar.open{width:100px}.logo{font-size:large;font-weight:700;margin-right:0}.docNameContainer,.rightContainer{display:none}.mobile-header{display:flex}body.menu-open{overflow:hidden}.main-container{padding:0}.help-button{position:fixed;bottom:10px;right:10px}.github-button{position:fixed;bottom:10px;right:60px}.component{width:70px}.component-label{font-size:10px;width:60px;text-align:center}.component-group-title{font-size:small}.ai-chat-container{position:fixed;width:100%;height:60%;bottom:0;right:0;left:0;display:flex;flex-direction:column;transform:translateY(100%);transition:transform .3s ease-in-out;z-index:1001}.ai-chat-container.open{transform:translateY(0)}.ai-chat-header{flex-shrink:0;padding:8px 12px;z-index:1002;box-shadow:0 2px 5px #0003}.ai-chat-messages{flex-grow:1;overflow-y:auto;padding:10px}.ai-chat-input-area{flex-shrink:0;padding:8px;background-color:var(--component-bg);border-top:1px solid var(--border-color);z-index:1002;position:relative}.keyboard-active .ai-chat-container.open{height:100%;bottom:0}.keyboard-active .ai-chat-input-area{position:fixed;bottom:0;left:0;right:0;background-color:var(--component-bg);padding:8px;z-index:1010}.keyboard-active .ai-chat-messages{padding-bottom:60px}#ai-chat-input{min-height:40px;max-height:80px;font-size:16px}#send-message,.file-upload-label{width:40px;height:40px;min-width:40px;display:flex;align-items:center;justify-content:center}body{position:fixed;width:100%;height:100%;overflow:hidden;overscroll-behavior:none;-webkit-overflow-scrolling:touch}.main-container{overflow-y:auto;height:calc(100% - 60px);-webkit-overflow-scrolling:touch}.keyboard-active .main-container{height:50vh}.message-content{font-size:16px;padding:12px 16px;line-height:1.5}.ai-message,.user-message{max-width:90%}}
