@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=JetBrains+Mono&display=swap";:root{--bg-app: #0d0d0d;--bg-sidebar: #0a0a0a;--bg-canvas: #0f0f0f;--bg-card: #161616;--border-color: #222222;--text-primary: #f0f0f0;--text-secondary: #a0a0a0;--accent: #3b82f6;--accent-soft: rgba(59, 130, 246, .1);--font-sans: "Inter", sans-serif;--font-mono: "JetBrains Mono", monospace;--sidebar-width: 200px;--project-panel-width: 320px}*{box-sizing:border-box}body,html{margin:0;padding:0;height:100%;width:100%;background-color:var(--bg-app);color:var(--text-primary);font-family:var(--font-sans);overflow:hidden;-webkit-user-select:none;user-select:none}#root{height:100%}.sidebar{width:var(--sidebar-width);height:100vh;background:#131418;border-right:none;box-shadow:8px 0 24px #00000080;display:flex;flex-direction:column;z-index:2000;flex-shrink:0;position:relative}.sidebar-top{padding:20px 16px}.logo-container{display:flex;align-items:center;gap:10px}.logo-img{width:36px;height:36px;object-fit:contain;filter:drop-shadow(0 0 6px rgba(59,130,246,.4));transition:filter .3s ease}.logo-container:hover .logo-img{filter:drop-shadow(0 0 10px rgba(59,130,246,.6))}.logo-text{font-weight:700;font-size:1rem;color:#fff;white-space:nowrap;letter-spacing:.02em}.sidebar-nav{flex:1;padding:12px 14px;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.sidebar-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:12px;color:var(--text-secondary);cursor:pointer;transition:all .3s cubic-bezier(.2,.8,.2,1);font-size:.8rem;font-weight:500;white-space:nowrap;background:#ffffff05;border:1px solid rgba(255,255,255,.04);box-shadow:inset 1px 1px 2px #ffffff1a,inset -1px -1px 2px #0006,3px 3px 6px #0006;margin-bottom:6px}.sidebar-item:hover{background:#ffffff0d;color:#fff;box-shadow:inset 1px 1px 2px #ffffff26,inset -1px -1px 2px #00000080,0 0 12px #32c8ff26}.sidebar-item.active{background:radial-gradient(circle at top left,#50a0ff40,#143c7866);color:#fff;border:1px solid rgba(120,200,255,.4);box-shadow:inset 2px 2px 5px #c8f0ff80,inset -2px -2px 6px #000000b3,0 0 16px #3cb4ff66,0 0 4px #c8f0ff4d}.sidebar-footer{margin-top:auto;padding:16px 10px;border-top:1px solid var(--border-color);background:var(--bg-sidebar)}.profile-container{display:flex;align-items:center;gap:8px;padding:8px;border-radius:12px;cursor:pointer;background:#ffffff03;border:1px solid rgba(255,255,255,.03);box-shadow:inset 1px 1px 2px #ffffff0d,inset -1px -1px 2px #0000004d,2px 2px 5px #0000004d;transition:all .2s}.profile-container:hover{background:#ffffff0a;box-shadow:inset 1px 1px 2px #ffffff1a,inset -1px -1px 2px #0006,0 0 8px #ffffff0d}.avatar{width:28px;height:28px;border-radius:50%;overflow:hidden;background:#111;border:1px solid rgba(255,255,255,.1);flex-shrink:0;box-shadow:inset 1px 1px 3px #000c}.avatar img{width:100%;height:100%;object-fit:cover}.profile-info{flex:1;min-width:0}.profile-name{font-size:.7rem;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-email{font-size:.6rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-icon-btn{background:#ffffff05;border:1px solid rgba(255,255,255,.04);color:var(--text-secondary);border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:inset 1px 1px 2px #ffffff0d,inset -1px -1px 2px #0000004d,2px 2px 5px #0000004d;transition:all .2s;flex-shrink:0}.logout-icon-btn:hover{background:#ff44441a;color:#f44;border-color:#f443;box-shadow:inset 1px 1px 2px #ffffff1a,inset -1px -1px 2px #0006,0 0 8px #ff444426}.overlay-header{display:flex;align-items:center;gap:16px}.select-templates-btn{background:#ffffff0d;border:1px solid var(--border-color);color:var(--text-primary);padding:6px 12px;border-radius:6px;font-size:.7rem;font-weight:500;cursor:pointer;transition:all .2s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.select-templates-btn:hover{background:#ffffff1a;border-color:#444}.canvas-viewport{position:absolute;top:0;right:0;bottom:0;left:0;left:var(--sidebar-width);cursor:grab;overflow:hidden;background-color:var(--bg-canvas);background-image:radial-gradient(circle at 1px 1px,var(--border-color) 1px,transparent 0);background-size:40px 40px}.canvas-viewport:active{cursor:grabbing}.canvas-container{position:absolute;top:0;left:0;width:100%;height:100%;transform-origin:0 0;will-change:transform;transition:transform .3s cubic-bezier(.23,1,.32,1)}.connection-svg{z-index:1}.node-card{position:absolute;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 30px #0006;transition:border-color .2s,box-shadow .2s;cursor:default;z-index:10}.node-card.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft),0 20px 50px #0009;z-index:20}.node-card.text-node{background:transparent!important;border:1px solid transparent!important;box-shadow:none!important;transition:all .2s ease;overflow:visible!important}.node-card.text-node.selected{border:1px solid var(--accent-soft)!important;box-shadow:0 0 10px var(--accent-soft)!important}.node-card.text-node .node-footer{background:#141414e6!important;opacity:0;transition:opacity .2s ease;border:1px solid var(--border-color);border-radius:8px;position:absolute;top:-45px;left:50%;transform:translate(-50%);width:max-content;white-space:nowrap;padding:4px 8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.node-card.text-node:hover .node-footer{opacity:1}.node-text-input::-webkit-scrollbar{width:4px}.node-text-input::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.vertical-creation-tools{display:flex;flex-direction:column;background:#0a0a0a99;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-color);padding:4px;border-radius:12px;box-shadow:0 4px 24px #0006;width:fit-content}.creation-tool-wrapper{display:flex;align-items:center;gap:0;cursor:pointer;transition:all .2s ease;overflow:hidden;border-radius:8px}.creation-tool-wrapper:hover{background:#ffffff14;padding-right:12px}.creation-tool-btn{background:transparent;border:none;color:var(--text-secondary);width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;flex-shrink:0}.creation-tool-wrapper:hover .creation-tool-btn{color:var(--accent)}.creation-tool-label{opacity:0;max-width:0;white-space:nowrap;font-size:.75rem;font-weight:500;color:var(--text-primary);transition:all .3s cubic-bezier(.4,0,.2,1);pointer-events:none}.creation-tool-wrapper:hover .creation-tool-label{opacity:1;max-width:150px;margin-left:8px}.icon-action-btn:hover{background:#ffffff1f!important;border-color:var(--accent)!important;color:var(--accent)!important;transform:translateY(-1px)}.node-card.generating{border-color:var(--accent);animation:pulse-border 2s infinite ease-in-out}.node-image-container{position:relative;background:#000;width:100%;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;cursor:pointer}.node-image{width:100%;height:100%;object-fit:cover;display:block}.node-upload-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-secondary);font-size:.75rem;transition:color .2s}.node-image-container:hover .node-upload-placeholder{color:var(--accent)}.spinner{width:24px;height:24px;border:2px solid rgba(255,255,255,.1);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.node-footer{padding:10px 14px;background:var(--bg-card);display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border-color)}.gen-number{font-family:var(--font-mono);font-size:.65rem;color:var(--text-secondary)}.node-actions{display:flex;gap:6px}.action-btn{background:#ffffff08;border:1px solid var(--border-color);color:var(--text-secondary);padding:5px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center}.action-btn:hover:not(:disabled){background:#ffffff14;color:var(--text-primary)}.node-details{padding:8px 12px;background:#0003;border-top:1px solid var(--border-color);font-size:.7rem;max-height:120px;overflow-y:auto;display:flex;flex-direction:column;gap:6px}.node-inputs-summary{display:flex;flex-wrap:wrap;gap:4px 8px}.node-input-item{color:var(--text-secondary)}.node-input-badge{background:#ffffff1a;color:var(--text-primary);padding:2px 8px;border-radius:4px;border:1px solid var(--border-color);font-size:.65rem;font-weight:500}.action-btn.delete:hover{background:#ff444426;color:#f44;border-color:#ff44444d}.node-extra-text{font-style:italic;color:var(--text-secondary);border-left:2px solid var(--accent);padding-left:6px;margin-top:2px;line-height:1.3}.lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:5000;cursor:zoom-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.lightbox-toolbar{position:absolute;top:24px;right:24px;display:flex;gap:12px;background:#141414cc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:8px;border-radius:12px;border:1px solid var(--border-color);z-index:5001;box-shadow:0 4px 20px #00000080}.toolbar-btn{background:transparent;border:none;color:var(--text-secondary);width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:8px;cursor:pointer;transition:all .2s}.toolbar-btn:hover{background:#ffffff0d;color:#fff}.toolbar-btn.active{background:var(--accent-soft);color:var(--accent)}.toolbar-btn.close-btn:hover{background:#ff44441a;color:#f44}.lightbox-content{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;cursor:default;overflow:hidden}.lightbox-image{max-width:90vw;max-height:90vh;border-radius:12px;box-shadow:0 0 80px #000c;-webkit-user-select:none;user-select:none;touch-action:none;will-change:transform}.canvas-controls{position:fixed;bottom:120px;left:calc(24px + var(--sidebar-width));display:flex;flex-direction:column;gap:8px;background:#0a0a0acc;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-color);padding:8px;border-radius:12px;box-shadow:0 8px 32px #00000080;z-index:1000;align-items:center}.canvas-controls button{background:transparent;border:none;color:var(--text-secondary);width:34px;height:34px;border-radius:8px;cursor:pointer}.zoom-indicator{font-family:var(--font-mono);font-size:.6rem;color:var(--text-secondary);margin-top:4px;border-top:1px solid var(--border-color);width:100%;text-align:center;padding-top:8px}.right-controls-panel{position:fixed;bottom:100px;right:calc(var(--project-panel-width) + 20px);width:330px;display:flex;flex-direction:column;gap:12px;z-index:1000;pointer-events:none}.right-controls-panel>*{pointer-events:auto}.controls-header-row{display:flex;gap:8px;justify-content:flex-end}.dropdowns-scroll-container{display:flex;flex-direction:column;gap:8px;max-height:60vh;overflow-y:auto;align-items:stretch}.control-item{width:100%;display:flex;justify-content:flex-end}.control-item select,.control-item input[type=text]{width:100%;background:#141414e6;border:1px solid var(--border-color);color:var(--text-secondary);border-radius:8px;padding:8px 12px;font-size:.8rem;outline:none;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.control-item select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23a0a0a0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 5 3 3 3-3'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px}.control-item select:hover,.control-item input[type=text]:hover{border-color:#444;color:#fff}.control-item input[type=text]::placeholder{color:#555}.slider-control{flex-direction:column;align-items:flex-start;background:#141414e6;padding:10px;border-radius:8px;border:1px solid var(--border-color)}.slider-control label{font-size:.7rem;color:var(--text-secondary);margin-bottom:6px}.slider-control input[type=range]{width:100%;cursor:pointer}.toggle-label{display:flex;align-items:center;gap:10px;font-size:1rem;color:var(--text-secondary);cursor:pointer;background:#141414e6;padding:8px 12px;border-radius:8px;border:1px solid var(--border-color);width:100%}.toggle-label:hover{color:#fff;border-color:#444}.bottom-input-bar{position:fixed;bottom:24px;left:calc(24px + var(--sidebar-width));right:calc(var(--project-panel-width) + 20px);z-index:1000;display:flex;justify-content:space-between;align-items:center;gap:12px}.input-container-full{width:100%;background:#141414f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-color);border-radius:12px;padding:8px;display:flex;align-items:center;gap:12px;box-shadow:0 10px 40px #0009}.main-text-input{flex:1;background:transparent;border:none;outline:none;color:#fff;font-size:.9rem;padding:4px 8px}.main-text-input:disabled{opacity:.5;cursor:not-allowed}.generate-btn{background:#2a2a2a;color:#666;border:1px solid #3a3a3a;border-radius:8px;padding:10px 24px;font-weight:600;font-size:.9rem;cursor:not-allowed;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap;position:relative;z-index:1;overflow:hidden;display:flex;align-items:center;justify-content:center;outline:none;box-shadow:none}.generate-btn.fulfilled{cursor:pointer;background:radial-gradient(circle at top left,#50a0ff40,#143c7866);color:#fff;border:1px solid rgba(120,200,255,.4);box-shadow:inset 2px 2px 5px #c8f0ff80,inset -2px -2px 6px #000000b3,0 0 16px #3cb4ff66,0 0 4px #c8f0ff4d}.generate-btn:after{position:absolute;content:"";width:0;height:100%;top:0;right:0;z-index:-1;background-color:#3b82f6;box-shadow:inset 2px 2px 2px #fff6,7px 7px 20px #0000001a,4px 4px 5px #0000001a;transition:all .4s cubic-bezier(.2,.8,.2,1)}.generate-btn.fulfilled:hover{color:#fff}.generate-btn.fulfilled:hover:after{left:0;width:100%}.generate-btn.fulfilled:active{transform:translateY(1px)}.generate-btn:disabled{opacity:.8;cursor:not-allowed}.ui-overlay{position:absolute;top:24px;left:calc(24px + var(--sidebar-width));z-index:100;display:flex;flex-direction:column;gap:8px;pointer-events:none}.ui-overlay>*{pointer-events:auto}.app-title{font-weight:700;font-size:1.1rem;color:#fff}.controls-hint{font-size:.7rem;color:var(--text-secondary);opacity:.8;display:flex;gap:8px;align-items:center}.badge{background:var(--accent-soft);color:var(--accent);padding:3px 8px;border-radius:6px;font-family:var(--font-mono);font-size:.65rem;font-weight:600}.warning-badge{background:#ff44441a;color:#f44;padding:3px 8px;border-radius:6px;font-family:var(--font-mono);font-size:.65rem;font-weight:600}.error-toast{background:#ff44441a;border:1px solid rgba(255,68,68,.3);color:#f44;padding:10px 14px;border-radius:10px;font-size:.75rem;max-width:320px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.canvas-info-panel{position:absolute;bottom:24px;left:calc(24px + var(--sidebar-width));background:#0a0a0a99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:12px 16px;border-radius:10px;border:1px solid var(--border-color);display:flex;flex-direction:column;gap:12px;z-index:1000;max-width:200px}.info-content h3{font-size:.9rem;margin:0;color:var(--text-primary);font-weight:600}.info-content p{font-size:.7rem;margin:2px 0 0;color:var(--text-secondary)}.logout-btn{display:flex;align-items:center;gap:8px;background:#ffffff0d;border:1px solid var(--border-color);color:var(--text-secondary);padding:6px 10px;border-radius:6px;font-size:.75rem;cursor:pointer;transition:all .2s}.logout-btn:hover{background:#ff44441a;color:#f44;border-color:#ff44444d}.random-btn,.reset-btn{background:#ffffff0d;border:1px solid var(--border-color);color:var(--text-secondary);padding:4px 12px;border-radius:6px;font-size:.7rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:6px;margin-left:8px}.random-btn:hover,.reset-btn:hover{background:#a855f71a;color:#a855f7;border-color:#a855f74d}.reset-btn:hover{background:#ff44441a;color:#f44;border-color:#ff44444d}.ref-image-trigger{width:40px;height:40px;border-radius:8px;background:#ffffff0d;border:1px dashed var(--border-color);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);position:relative;overflow:hidden;flex-shrink:0}.ref-image-trigger:hover{border-color:var(--accent);color:var(--accent);background:#3b82f61a}.ref-preview{width:100%;height:100%;object-fit:cover}.ref-remove{position:absolute;top:0;right:0;width:100%;height:100%;background:#0009;color:#fff;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s;font-size:1.2rem}.ref-image-trigger:hover .ref-remove{opacity:1}@media(max-width:1100px){:root{--sidebar-width: 60px}.logo-text,.sidebar-label,.profile-info{display:none}.canvas-viewport,.ui-overlay,.canvas-info-panel{left:60px}.toolbar-bottom{left:calc(50% + 30px)}.canvas-info-panel{bottom:100px;left:70px}}@media(max-width:768px){.sidebar{display:none}.canvas-viewport,.ui-overlay{left:0}.toolbar-bottom{bottom:20px;left:50%;width:90%;max-width:none}.canvas-info-panel{display:none}}.tooltip-container{position:relative;width:100%}.custom-tooltip{display:none;position:absolute;right:100%;top:50%;transform:translateY(-50%);margin-right:12px;width:200px;background:#0a0a0af2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border-color);padding:10px 12px;border-radius:8px;font-size:.75rem;color:var(--text-primary);z-index:2000;pointer-events:none;box-shadow:0 4px 20px #0006;line-height:1.4;text-align:left}.custom-tooltip:after{content:"";position:absolute;top:50%;right:-5px;transform:translateY(-50%);border-width:5px;border-style:solid;border-color:transparent transparent transparent rgba(10,10,10,.95)}.tooltip-container:hover .custom-tooltip{display:block;animation:tooltipFadeIn .2s cubic-bezier(.16,1,.3,1)}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(-50%) translate(10px)}to{opacity:1;transform:translateY(-50%) translate(0)}}.project-panel{position:fixed;right:0;top:0;height:100vh;background:#131418;border-left:none;z-index:2000;display:flex;flex-direction:column;transition:width .3s cubic-bezier(.2,.8,.2,1);overflow:hidden;box-shadow:-8px 0 24px #00000080}.project-panel.collapsed{width:40px;cursor:pointer;align-items:center;padding-top:20px}.project-panel.collapsed:hover{background:#111}.project-panel.expanded{width:320px}.vertical-text{writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);color:var(--text-secondary);font-size:.85rem;font-weight:600;margin-top:40px;letter-spacing:2px;white-space:nowrap}.expand-btn,.minimize-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:6px;transition:color .2s}.expand-btn:hover,.minimize-btn:hover{color:var(--text-primary);background:#ffffff0d}.panel-header{height:60px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid var(--border-color);flex-shrink:0}.panel-header h3{font-size:1rem;margin:0;font-weight:600}.panel-content{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:16px}.new-project-btn{width:100%;padding:12px;background:#ffffff05;color:var(--text-primary);border:1px solid rgba(255,255,255,.04);border-radius:12px;font-weight:600;font-size:.85rem;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:inset 1px 1px 2px #ffffff14,inset -1px -1px 2px #00000080,4px 4px 10px #0006}.new-project-btn:hover{background:#ffffff0d;color:#fff;border-color:#ffffff1a;box-shadow:inset 1px 1px 3px #ffffff26,inset -1px -1px 3px #0009,0 0 16px #32c8ff33}.project-list{display:flex;flex-direction:column;gap:8px}.project-item{padding:12px 14px;background:#ffffff05;border:1px solid rgba(255,255,255,.03);border-radius:12px;cursor:pointer;transition:all .3s cubic-bezier(.2,.8,.2,1);display:flex;justify-content:space-between;align-items:center;gap:8px;box-shadow:inset 1px 1px 2px #ffffff0d,inset -1px -1px 2px #0006,3px 3px 6px #0000004d}.project-info{flex:1;min-width:0}.delete-project-btn{background:transparent;border:none;color:#555;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px;cursor:pointer;transition:all .2s;flex-shrink:0}.delete-project-btn:hover{background:#ff44441a;color:#f44}.delete-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:6000}.delete-modal{background:#111;border:1px solid #333;padding:24px;border-radius:16px;width:100%;max-width:400px;box-shadow:0 20px 50px #00000080}.delete-modal h3{margin:0 0 12px;color:#f44}.delete-modal p{font-size:.9rem;color:#aaa;line-height:1.5;margin-bottom:20px}.confirm-prompt{background:#ffffff0d;padding:10px;border-radius:8px;border-left:3px solid #ff4444}.delete-confirm-input{width:100%;background:#000;border:1px solid #333;padding:12px;border-radius:8px;color:#fff;font-weight:700;font-size:1rem;letter-spacing:2px;text-align:center;margin-bottom:20px;outline:none}.delete-confirm-input:focus{border-color:#f44}.delete-modal-actions{display:flex;gap:12px}.delete-modal-actions button{flex:1;padding:12px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.cancel-btn{background:#222;border:1px solid #333;color:#fff}.cancel-btn:hover{background:#333}.confirm-delete-btn{background:#f44;border:none;color:#fff}.confirm-delete-btn:hover:not(:disabled){background:#c00}.confirm-delete-btn:disabled{opacity:.3;cursor:not-allowed}.project-item:hover{background:#ffffff0d;box-shadow:inset 1px 1px 2px #ffffff1a,inset -1px -1px 2px #00000080,0 0 10px #32c8ff1a}.project-item.active{background:#28325033;border-color:#3b82f64d;box-shadow:inset 1px 1px 3px #ffffff26,inset -1px -1px 3px #0006,0 0 16px #3b82f640}.project-name{font-size:.9rem;font-weight:600;color:var(--text-primary)}.project-client{font-size:.75rem;color:var(--text-secondary);margin-top:2px}.empty-state{text-align:center;color:var(--text-secondary);font-size:.8rem;padding:20px 0;background:#ffffff05;border-radius:8px;border:1px dashed var(--border-color)}.create-form{display:flex;flex-direction:column;gap:16px}.back-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:.8rem;align-self:flex-start;padding:4px 8px;margin-left:-8px;border-radius:6px;display:flex;align-items:center;gap:4px}.back-btn:hover{color:var(--text-primary);background:#ffffff0d;text-decoration:none}.form-group{display:flex;flex-direction:column;gap:6px}.form-group input[type=text]{background:#0a0a0a99;border:1px solid rgba(255,255,255,.05);padding:12px 14px;border-radius:12px;color:#fff;font-size:.9rem;outline:none;transition:all .3s;box-shadow:inset 2px 2px 5px #000c,inset -1px -1px 3px #ffffff0d}.form-group input[type=text]:focus{border-color:#3b82f666;background:#0a0a0acc;box-shadow:inset 2px 2px 5px #000c,inset -1px -1px 3px #ffffff0d,0 0 10px #3b82f633}.form-group input[type=text]:hover:not(:focus){border-color:#ffffff26}.form-group small{font-size:.7rem;color:#666;margin-bottom:4px}.photo-previews{display:flex;gap:8px;margin-top:8px}.photo-preview-box{width:60px;height:60px;border-radius:6px;background:#ffffff08;border:1px dashed var(--border-color);display:flex;align-items:center;justify-content:center;font-size:.6rem;color:var(--text-secondary);text-align:center}.create-submit-btn{background:#ffffff05;color:#fff;border:1px solid rgba(255,255,255,.04);padding:14px;border-radius:12px;font-weight:600;cursor:pointer;margin-top:8px;transition:all .3s;box-shadow:inset 1px 1px 2px #ffffff14,inset -1px -1px 2px #00000080,4px 4px 10px #0006}.create-submit-btn:hover:not(:disabled){background:#3b82f633;color:#fff;border-color:#3b82f666;box-shadow:inset 1px 1px 3px #ffffff26,inset -1px -1px 3px #0009,0 0 16px #3b82f64d}.create-submit-btn:disabled{opacity:.5;cursor:not-allowed}.current-project-details{border-top:1px solid var(--border-color);padding-top:16px;margin-top:8px}.current-project-details h4{margin:0 0 12px;font-size:.85rem;color:var(--accent)}.detail-row{display:flex;justify-content:space-between;font-size:.8rem;margin-bottom:6px}.detail-row .label{color:var(--text-secondary)}.detail-photos{display:flex;gap:8px;margin-top:12px}.mini-photo{width:50px;height:50px;object-fit:cover;border-radius:6px;border:1px solid var(--border-color)}.file-upload-label{display:flex;align-items:center;gap:8px;background:#ffffff05;border:1px solid rgba(255,255,255,.04);padding:12px;border-radius:12px;cursor:pointer;width:100%;color:var(--text-secondary);font-size:.8rem;transition:all .3s;justify-content:center;box-shadow:inset 1px 1px 2px #ffffff14,inset -1px -1px 2px #00000080,3px 3px 8px #0000004d}.file-upload-label:hover{background:#ffffff0d;color:var(--text-primary);border-color:#ffffff1a;box-shadow:inset 1px 1px 3px #ffffff26,inset -1px -1px 3px #0009,0 0 12px #ffffff0d}.neumorphic-btn{background:#ffffff05;border:1px solid rgba(255,255,255,.04);border-radius:12px;color:var(--text-secondary);cursor:pointer;transition:all .3s cubic-bezier(.2,.8,.2,1);box-shadow:inset 1px 1px 2px #ffffff1a,inset -1px -1px 2px #0006,3px 3px 6px #0006}.neumorphic-btn:hover{background:#ffffff0d;color:#fff;box-shadow:inset 1px 1px 2px #ffffff26,inset -1px -1px 2px #00000080,0 0 12px #32c8ff26}.neumorphic-input{background:#0a0a0a99;border:1px solid rgba(255,255,255,.05);border-radius:12px;color:#fff;transition:all .3s;box-shadow:inset 2px 2px 5px #000c,inset -1px -1px 3px #ffffff0d}.neumorphic-input:focus{border-color:#3b82f666;background:#0a0a0acc;box-shadow:inset 2px 2px 5px #000c,inset -1px -1px 3px #ffffff0d,0 0 10px #3b82f633}.neumorphic-input:hover:not(:focus){border-color:#ffffff26}.neumorphic-active{background:radial-gradient(circle at top left,#50a0ff40,#143c7866)!important;color:#fff!important;border:1px solid rgba(120,200,255,.4)!important;box-shadow:inset 2px 2px 5px #c8f0ff80,inset -2px -2px 6px #000000b3,0 0 16px #3cb4ff66,0 0 4px #c8f0ff4d!important}.app-container{display:flex!important;width:100vw!important;height:100vh!important;overflow:hidden!important;background-color:var(--bg-app)!important}.main-content{flex:1!important;height:100vh!important;overflow-y:auto!important;position:relative!important}.profile-page{padding:24px 40px;background:var(--bg-app);display:flex;flex-direction:column;gap:20px;height:100vh;box-sizing:border-box;overflow:hidden}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.profile-header h1{font-size:1.8rem!important;font-weight:700;margin:0;color:#fff}.profile-header .subtitle{color:var(--text-secondary);margin-top:4px;font-size:.9rem}.profile-layout{display:grid;grid-template-columns:360px 1fr;grid-template-rows:auto 1fr;grid-template-areas:"usage details" "note media";gap:24px 32px;flex:1;min-height:0;overflow-y:auto;padding-bottom:24px}.grid-usage{grid-area:usage;align-self:start}.grid-details{grid-area:details;align-self:start}.grid-note{grid-area:note;align-self:start}.grid-media{grid-area:media;align-self:start;max-width:950px}.usage-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;padding:20px}.usage-card .section-header{display:flex!important;justify-content:space-between!important;align-items:center!important;margin-bottom:20px}.plan-badge-modern{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;padding:4px 12px;border-radius:8px;font-size:.65rem;font-weight:800;letter-spacing:.5px;box-shadow:0 4px 12px #2563eb4d}.usage-stats{display:flex;flex-direction:column;gap:16px}.stat-item{display:flex;flex-direction:column;gap:8px}.stat-label{display:flex;justify-content:space-between;font-size:.8rem;color:var(--text-secondary)}.progress-bar{height:6px;background:#ffffff0d;border-radius:3px;overflow:hidden;box-shadow:inset 1px 1px 3px #00000080}.progress-fill{height:100%;background:var(--accent);border-radius:3px}.sidebar-themed-btn{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;padding:8px 16px!important;border-radius:10px!important;color:var(--text-secondary)!important;cursor:pointer!important;transition:all .25s ease!important;font-size:.85rem!important;font-weight:500!important;white-space:nowrap!important;background:#ffffff05!important;border:1px solid rgba(255,255,255,.04)!important;box-shadow:inset 1px 1px 2px #ffffff1a,inset -1px -1px 2px #0006,3px 3px 6px #0006!important}.sidebar-themed-btn:hover{background:#ffffff0d!important;color:#fff!important;box-shadow:inset 1px 1px 2px #ffffff26,inset -1px -1px 2px #00000080,0 0 12px #32c8ff26!important}.sidebar-themed-btn.saved{background:radial-gradient(circle at top left,#50a0ff40,#143c7866)!important;color:#fff!important;border:1px solid rgba(120,200,255,.4)!important;box-shadow:inset 2px 2px 5px #c8f0ff80,inset -2px -2px 6px #000000b3,0 0 16px #3cb4ff66,0 0 4px #c8f0ff4d!important}.manage-btn{width:100%;margin-top:16px}.premium-note{background:#3b82f608;border:1px solid rgba(59,130,246,.15);padding:20px;border-radius:16px;display:flex;gap:12px;width:100%}.justified-text{text-align:justify;line-height:1.4;font-size:.8rem;color:#93c5fd;margin:0}.note-icon{font-size:1rem;flex-shrink:0}.profile-form{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:20px;max-width:950px}.form-section{display:flex;flex-direction:column;gap:14px}.form-section h3{font-size:1.15rem!important;font-weight:700;margin:0}.custom-select-wrapper{position:relative;width:100%}.custom-select{width:100%;padding:8px 32px 8px 12px!important;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#141414cc!important;cursor:pointer;outline:none;font-size:.85rem!important}.select-arrow{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none;color:#888}.form-row{display:flex;gap:12px}.form-group{display:flex;flex-direction:column;gap:4px}.flex-1{flex:1}.flex-2{flex:2}.full-width{width:100%}.form-group label{font-size:.75rem;color:var(--text-secondary);font-weight:500}.form-group input,.form-group textarea{font-size:.85rem!important;padding:8px 12px!important}.media-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.media-upload-box{height:165px;background:#0003;border:1px dashed var(--border-color);border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;transition:all .3s;box-shadow:inset 2px 2px 8px #0006}.media-upload-box:hover{border-color:var(--accent);background:#3b82f60d}.plus-icon{font-size:1.2rem;color:var(--text-secondary)}.upload-label{font-size:.6rem;color:var(--text-secondary);padding:0 8px;line-height:1.2;text-align:center}.preview-container{width:100%;height:100%}.preview-container img{width:100%;height:100%;object-fit:cover}.edit-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0009;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.7rem;opacity:0;transition:opacity .3s}.media-upload-box:hover .edit-overlay{opacity:1}.form-actions{display:flex;justify-content:flex-end;margin-top:4px}.canvas-blur{filter:blur(8px)!important;pointer-events:none!important;transition:filter .3s ease}.restricted-interaction{opacity:.5!important;pointer-events:none!important;cursor:not-allowed!important}.project-selection-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:1500;pointer-events:none}.project-selection-popup{background:#3b82f633;border:1px solid rgba(59,130,246,.4);color:#fff;padding:32px 48px;border-radius:20px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;flex-direction:column;align-items:center;gap:16px;pointer-events:auto;box-shadow:0 10px 40px #0006;animation:popup-fade-in .4s cubic-bezier(.16,1,.3,1);text-align:center}@keyframes popup-fade-in{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.project-selection-popup h2{margin:0;font-size:1.4rem;font-weight:600}.project-selection-popup p{margin:0;font-size:.95rem;opacity:.8}.project-hint-arrow{position:absolute;right:-60px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:10px;color:var(--accent);animation:arrow-bounce 1s infinite alternate}@keyframes arrow-bounce{0%{transform:translateY(-50%) translate(0)}to{transform:translateY(-50%) translate(10px)}}
