@import"https://fonts.googleapis.com/css2?family=Kalam:wght@400;700&display=swap";:root{--bg-primary-rgb: 18, 18, 18;--bg-secondary-rgb: 30, 30, 30;--bg-tertiary-rgb: 42, 42, 42;--bg-overlay-rgb: 0, 0, 0;--bg-canvas-rgb: 24, 24, 32;--bg-toolbar-rgb: 36, 36, 50;--bg-panel-rgb: 32, 32, 44;--bg-hover-rgb: 50, 50, 70;--bg-active-rgb: 60, 60, 84;--bg-disabled-rgb: 22, 22, 30;--surface-color-rgb: 42, 42, 42;--surface-hover-rgb: 60, 60, 60;--surface-active-rgb: 78, 78, 78;--surface-disabled-rgb: 33, 33, 33;--surface-border-rgb: 60, 60, 80;--surface-separator-rgb: 50, 50, 70;--text-primary: #e0e0e0;--text-secondary: #a0a0e0;--text-tertiary: #7070a0;--text-disabled: #505080;--text-inverse: #121212;--text-primary-rgb: 224, 224, 224;--text-secondary-rgb: 160, 160, 224;--text-tertiary-rgb: 112, 112, 160;--accent-primary-rgb: 155, 89, 182;--accent-secondary-rgb: 142, 68, 173;--accent-tertiary-rgb: 129, 49, 163;--accent-disabled-rgb: 94, 51, 112;--accent-hover-rgb: 175, 109, 202;--danger-color: #e74c3c;--danger-hover: #c0392b;--success-color: #2ecc71;--success-hover: #27ae60;--warning-color: #f39c12;--warning-hover: #e67e22;--info-color: #3498db;--info-hover: #2980b9;--gradient-primary: linear-gradient(135deg, rgba(var(--accent-primary-rgb), .8), rgba(var(--accent-secondary-rgb), .8));--gradient-secondary: linear-gradient(135deg, rgba(var(--bg-secondary-rgb), .9), rgba(var(--bg-tertiary-rgb), .9));--gradient-glass: linear-gradient(135deg, rgba(var(--bg-secondary-rgb), .6), rgba(var(--bg-tertiary-rgb), .4));--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--font-family-heading: "Kalam", cursive;--font-family-mono: "Fira Code", "Consolas", "Monaco", "Andale Mono", "Ubuntu Mono", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-size-6xl: 3.75rem;--line-height-tight: 1.2;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--line-height-dense: 1.1;--font-weight-light: 300;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--letter-spacing-tight: -.02em;--letter-spacing-normal: 0em;--letter-spacing-wide: .02em;--spacing-unit: 8px;--spacing-0: 0;--spacing-1: calc(var(--spacing-unit) * .5);--spacing-2: var(--spacing-unit);--spacing-3: calc(var(--spacing-unit) * 1.5);--spacing-4: calc(var(--spacing-unit) * 2);--spacing-5: calc(var(--spacing-unit) * 2.5);--spacing-6: calc(var(--spacing-unit) * 3);--spacing-8: calc(var(--spacing-unit) * 4);--spacing-10: calc(var(--spacing-unit) * 5);--spacing-12: calc(var(--spacing-unit) * 6);--spacing-16: calc(var(--spacing-unit) * 8);--spacing-20: calc(var(--spacing-unit) * 10);--spacing-24: calc(var(--spacing-unit) * 12);--spacing-32: calc(var(--spacing-unit) * 16);--spacing-40: calc(var(--spacing-unit) * 20);--spacing-48: calc(var(--spacing-unit) * 24);--spacing-56: calc(var(--spacing-unit) * 28);--spacing-64: calc(var(--spacing-unit) * 32);--border-radius: 8px;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 12px;--border-radius-xl: 16px;--border-radius-2xl: 20px;--border-radius-3xl: 24px;--border-radius-full: 9999px;--border-width: 1px;--border-width-2: 2px;--border-width-3: 3px;--border-width-4: 4px;--border-color: var(--glass-border-color);--border-color-hover: var(--glass-border-hover);--border-color-focus: rgba(var(--accent-primary-rgb), .6);--glass-border-color: rgba(255, 255, 255, .1);--glass-border-hover: rgba(255, 255, 255, .2);--glass-blur: 12px;--glass-blur-sm: 8px;--glass-blur-lg: 16px;--glass-blur-xl: 24px;--glass-opacity: .7;--glass-opacity-hover: .8;--glass-opacity-active: .9;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1), 0 1px 3px rgba(0, 0, 0, .08);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1), 0 4px 6px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .1), 0 10px 10px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px rgba(0, 0, 0, .25), 0 15px 15px rgba(0, 0, 0, .1);--shadow-inset: inset 0 2px 4px rgba(0, 0, 0, .06);--shadow-glow: 0 0 15px rgba(var(--accent-primary-rgb), .5);--shadow-glow-sm: 0 0 8px rgba(var(--accent-primary-rgb), .4);--shadow-glow-lg: 0 0 24px rgba(var(--accent-primary-rgb), .6);--shadow-card: 0 4px 12px rgba(0, 0, 0, .15);--shadow-button: 0 2px 8px rgba(0, 0, 0, .2);--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--transition-transform: transform .2s ease;--transition-opacity: opacity .2s ease;--transition-color: color .2s ease, background-color .2s ease, border-color .2s ease;--transition-shadow: box-shadow .2s ease;--transition-all: all .2s ease;--transition-cubic: cubic-bezier(.4, 0, .2, 1);--transition-spring: cubic-bezier(.34, 1.56, .64, 1);--header-height: 64px;--header-height-sm: 56px;--sidebar-width: 400px;--sidebar-min-width: 320px;--sidebar-width-sm: 320px;--footer-height: 64px;--footer-height-sm: 56px;--modal-max-width: 1200px;--modal-max-height: 90vh;--card-min-width: 280px;--card-max-width: 360px;--button-height-sm: 32px;--button-height-md: 40px;--button-height-lg: 48px;--input-height-sm: 32px;--input-height-md: 40px;--input-height-lg: 48px;--icon-size-xs: 16px;--icon-size-sm: 18px;--icon-size-base: 20px;--icon-size-lg: 24px;--icon-size-xl: 32px;--icon-size-2xl: 40px;--icon-size-3xl: 48px;--z-index-dropdown: 1000;--z-index-sticky: 1020;--z-index-fixed: 1030;--z-index-modal-backdrop: 1040;--z-index-modal: 1050;--z-index-popover: 1060;--z-index-tooltip: 1070;--z-index-notification: 1080;--z-index-progress: 2000;--z-index-header: 50;--z-index-sidebar: 40;--z-index-toolbar: 30;--z-index-canvas: 10;--z-index-overlay: 20;--cursor-pointer: pointer;--cursor-grab: grab;--cursor-grabbing: grabbing;--cursor-move: move;--cursor-text: text;--cursor-not-allowed: not-allowed;--cursor-crosshair: crosshair;--cursor-zoom-in: zoom-in;--cursor-zoom-out: zoom-out;--scrollbar-width: 8px;--scrollbar-track-color: transparent;--scrollbar-thumb-color: rgba(var(--surface-hover-rgb), .5);--scrollbar-thumb-hover-color: rgba(var(--surface-hover-rgb), .7);--scrollbar-border-radius: 4px;--animation-duration-fast: .15s;--animation-duration-normal: .25s;--animation-duration-slow: .35s;--animation-timing-function: var(--transition-cubic);--selection-color: rgba(var(--accent-primary-rgb), .3);--selection-border-color: rgba(var(--accent-primary-rgb), .8);--selection-handle-color: rgba(var(--accent-primary-rgb), 1);--selection-handle-size: 10px;--selection-handle-border: 2px solid rgba(var(--bg-primary-rgb), .8);--canvas-grid-color: rgba(var(--text-primary-rgb), .1);--canvas-grid-size: 20px;--canvas-checkerboard-color1: rgba(var(--bg-secondary-rgb), .8);--canvas-checkerboard-color2: rgba(var(--bg-primary-rgb), .8);--canvas-checkerboard-size: 20px;--tool-active-color: rgba(var(--accent-primary-rgb), .8);--tool-hover-color: rgba(var(--accent-primary-rgb), .4);--tool-inactive-color: var(--text-secondary);--tool-border-radius: var(--border-radius-md);--tool-padding: var(--spacing-3);--tool-size: 40px}[data-theme=light]{--bg-primary-rgb: 250, 250, 250;--bg-secondary-rgb: 245, 245, 245;--bg-tertiary-rgb: 240, 240, 240;--bg-overlay-rgb: 255, 255, 255;--bg-canvas-rgb: 252, 252, 254;--bg-toolbar-rgb: 245, 245, 250;--bg-panel-rgb: 248, 248, 252;--bg-hover-rgb: 238, 238, 242;--bg-active-rgb: 230, 230, 236;--bg-disabled-rgb: 245, 245, 245;--surface-color-rgb: 240, 240, 240;--surface-hover-rgb: 230, 230, 230;--surface-active-rgb: 220, 220, 220;--surface-disabled-rgb: 245, 245, 245;--surface-border-rgb: 200, 200, 210;--surface-separator-rgb: 220, 220, 230;--text-primary: #121212;--text-secondary: #636363;--text-tertiary: #8a8a8a;--text-disabled: #b0b0b0;--text-inverse: #ffffff;--text-primary-rgb: 18, 18, 18;--text-secondary-rgb: 99, 99, 99;--text-tertiary-rgb: 138, 138, 138;--accent-primary-rgb: 155, 89, 182;--accent-secondary-rgb: 142, 68, 173;--accent-tertiary-rgb: 129, 49, 163;--accent-disabled-rgb: 180, 140, 200;--accent-hover-rgb: 175, 109, 202;--glass-border-color: rgba(0, 0, 0, .1);--glass-border-hover: rgba(0, 0, 0, .2);--glass-opacity: .9;--glass-opacity-hover: .95;--glass-opacity-active: 1;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 6px rgba(0, 0, 0, .08), 0 1px 3px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1), 0 4px 6px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .1), 0 10px 10px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px rgba(0, 0, 0, .15), 0 15px 15px rgba(0, 0, 0, .08);--shadow-inset: inset 0 2px 4px rgba(0, 0, 0, .04);--shadow-card: 0 4px 12px rgba(0, 0, 0, .08);--shadow-button: 0 2px 8px rgba(0, 0, 0, .12);--canvas-grid-color: rgba(var(--text-primary-rgb), .08);--canvas-checkerboard-color1: rgba(var(--bg-secondary-rgb), .8);--canvas-checkerboard-color2: rgba(var(--bg-primary-rgb), .8);--selection-color: rgba(var(--accent-primary-rgb), .2);--selection-border-color: rgba(var(--accent-primary-rgb), .7);--tool-active-color: rgba(var(--accent-primary-rgb), .8);--tool-hover-color: rgba(var(--accent-primary-rgb), .3);--tool-inactive-color: var(--text-secondary);--border-color-focus: rgba(var(--accent-primary-rgb), .5);--cursor-grab: grab;--cursor-grabbing: grabbing}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100vh;color:var(--text-primary);font-family:var(--font-family);font-size:14px;overflow:hidden}body{display:flex;flex-direction:column;position:relative;background-color:transparent}body:after{content:"";position:fixed;top:0;left:0;right:0;bottom:0;z-index:-3;background:linear-gradient(315deg,#0d0d1a,#1a233b,#0c2a52,#000);background-size:400% 400%;animation:animated-gradient 15s ease infinite}h1,h2,h3,h4{font-weight:600;margin-bottom:calc(var(--spacing-unit) * 2)}h1{font-size:2rem}h2{font-size:1.2rem;color:var(--text-primary);padding-bottom:var(--spacing-unit)}h3{font-size:1rem;color:var(--text-secondary);margin-bottom:var(--spacing-unit)}h4{font-size:.9rem;color:var(--text-secondary);margin-bottom:var(--spacing-unit)}p{line-height:1.6}.helper-text{font-size:.85rem;color:var(--text-secondary);margin-bottom:var(--spacing-unit)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:rgba(var(--surface-hover-rgb),.5);border-radius:4px}::-webkit-scrollbar-thumb:hover{background-color:rgba(var(--surface-hover-rgb),.7)}header,.right-sidebar,#image-gallery-container,#history-section{position:relative;z-index:1}header{display:flex;justify-content:space-between;align-items:center;padding:calc(var(--spacing-unit) * 2) calc(var(--spacing-unit) * 3);background:rgba(var(--bg-secondary-rgb),.5);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));flex-shrink:0;transition:opacity .3s ease-in}.header-actions{display:flex;gap:var(--spacing-unit)}.logout-btn{padding:calc(var(--spacing-unit) * 1.5) calc(var(--spacing-unit) * 2);background:rgba(var(--accent-primary-rgb),.8);color:var(--text-primary);border:1px solid rgba(255,255,255,.1);border-radius:var(--border-radius);font-size:.85rem;cursor:pointer;transition:all .2s ease;backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur))}.logout-btn:hover{background:rgba(var(--accent-primary-rgb),1);transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--accent-primary-rgb),.3)}.logout-btn:active{transform:translateY(0);box-shadow:0 2px 6px rgba(var(--accent-primary-rgb),.2)}.studio-container{display:flex;flex-grow:1;min-height:0;transition:opacity .3s ease-in}.main-content{flex:3;display:flex;flex-direction:column;padding:0;overflow:hidden;min-width:0}.right-sidebar{flex:1;min-width:400px;max-width:450px;background:rgba(var(--bg-secondary-rgb),.4);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));display:flex;flex-direction:column;overflow:hidden}.sidebar-content{flex-grow:1;overflow-y:auto;padding:calc(var(--spacing-unit) * 2)}.sidebar-footer{padding:calc(var(--spacing-unit) * 2);background:transparent;flex-shrink:0}#image-gallery-container,#history-section{background-color:rgba(var(--bg-secondary-rgb),.4);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));padding:0;display:flex;flex-direction:column;overflow:hidden}#image-gallery-container{flex-grow:1;margin-bottom:0;border-radius:var(--border-radius) var(--border-radius) 0 0;position:relative}#history-section{flex-shrink:0;border-radius:0 0 var(--border-radius) var(--border-radius)}.workspace-view{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative}#image-gallery{width:100%;height:100%;position:relative;overflow:hidden;cursor:grab}#image-gallery .placeholder{color:var(--text-secondary);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gallery-image-wrapper{position:absolute;top:0;left:0;width:100%;height:100%;transform-origin:0 0;cursor:inherit;transition:opacity .2s ease-in-out}.gallery-image-wrapper img{position:absolute;top:0;left:0;transform-origin:0 0;cursor:inherit;transition:opacity .2s ease-in-out}#history-section h2{padding:calc(var(--spacing-unit) * 2);padding-bottom:var(--spacing-unit);margin-bottom:0}#history-list{white-space:nowrap;overflow-x:auto;padding:0 calc(var(--spacing-unit) * 2) calc(var(--spacing-unit) * 2);list-style:none}#history-list li{display:inline-block;vertical-align:top;margin-right:var(--spacing-unit)}#history-list .asset-thumbnail{width:80px;height:80px}.sidebar-section{margin-bottom:calc(var(--spacing-unit) * 3)}.sidebar-section-content#project-controls{display:flex;gap:calc(var(--spacing-unit) * 2)}.sidebar-section-content#project-controls .secondary-btn{flex:1}.sidebar-section summary{font-size:1.1rem;font-weight:600;cursor:pointer;padding:var(--spacing-unit);background:rgba(var(--surface-color-rgb),.6);border-radius:var(--border-radius);transition:background-color .2s ease}.sidebar-section summary:hover{background:rgba(var(--surface-hover-rgb),.7)}.sidebar-section-content{padding:var(--spacing-unit) 0}.form-group{margin-bottom:calc(var(--spacing-unit) * 2)}.form-group label{display:block;margin-bottom:var(--spacing-unit);font-weight:500;color:var(--text-secondary)}.label-with-button{display:flex;justify-content:space-between;align-items:center}button,.button{background-color:rgba(var(--accent-primary-rgb),.7);color:#fff;border:none;border-radius:var(--border-radius);padding:12px 24px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s ease,transform .1s ease,box-shadow .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-unit);box-shadow:0 2px 5px #0003,inset 0 1px 1px #ffffff1a}button:hover,.button:hover{background-color:rgba(var(--accent-secondary-rgb),.8);box-shadow:0 4px 8px #0000004d,inset 0 1px 1px #ffffff1a}button:active,.button:active{transform:scale(.98)}button:disabled,.button:disabled{background-color:rgba(var(--accent-disabled-rgb),.5);color:#ffffff80;cursor:not-allowed;box-shadow:none}.generate-btn{width:100%}.secondary-btn{background-color:rgba(var(--surface-color-rgb),.6);color:var(--text-primary)}.secondary-btn:hover{background-color:rgba(var(--surface-hover-rgb),.7)}.tertiary-btn{background:none;border:1px dashed rgba(var(--accent-primary-rgb),.7);color:var(--text-secondary);width:100%;box-shadow:none}.tertiary-btn:hover{background:rgba(var(--accent-primary-rgb),.1);color:var(--text-primary)}.danger{background-color:var(--danger-color);color:#fff}.thumbnail-action-btn{background-color:#1e1e1ecc;border:none;color:#fff;border-radius:50%;width:32px;height:32px;padding:0;font-size:1.2rem;line-height:1;position:relative;z-index:10;box-shadow:0 2px 4px #0006}.icon-btn{background:none;border:none;padding:4px;font-size:1.2rem;cursor:pointer;color:var(--text-secondary);box-shadow:none}.icon-btn:hover{background-color:transparent;color:var(--text-primary)}textarea,input[type=text],input[type=number],input[type=email],input[type=password],select{width:100%;background-color:rgba(var(--bg-primary-rgb),.7);border:none;border-bottom:1px solid var(--glass-border-color);border-radius:var(--border-radius);padding:10px;color:var(--text-primary);font-family:inherit;font-size:.9rem;transition:border-color .2s ease,box-shadow .2s ease}textarea:focus,input:focus,select:focus{outline:none;border-color:rgba(var(--accent-primary-rgb),.8);box-shadow:0 2px rgba(var(--accent-primary-rgb),.3)}.input-with-button{display:flex;gap:calc(var(--spacing-unit) * 2)}.input-with-button input{flex-grow:1;min-width:0}.input-with-button button{flex-shrink:0}.hidden{display:none!important}.generator-tabs{display:flex;flex-wrap:wrap;gap:calc(var(--spacing-unit) * 1.5);margin-bottom:calc(var(--spacing-unit) * 2)}.generator-tab-btn{flex-grow:1;padding:8px 12px;font-size:.85rem;background:rgba(var(--surface-color-rgb),.6);color:var(--text-secondary)}.generator-tab-btn.active{background:rgba(var(--accent-primary-rgb),.7);color:#fff}.generator-pane{padding:var(--spacing-unit);border-radius:var(--border-radius);background-color:rgba(var(--bg-primary-rgb),.3)}.pane-section{margin-bottom:var(--spacing-unit)}.pane-section h3{font-size:1rem;margin-bottom:var(--spacing-unit)}#generated-assets-gallery,#saved-elements-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--spacing-unit);padding:var(--spacing-unit);background:rgba(var(--bg-primary-rgb),.4);border-radius:var(--border-radius);min-height:120px}.placeholder-small{color:var(--text-secondary);font-size:.9rem;text-align:center;width:100%;grid-column:1 / -1;padding:var(--spacing-unit)}.asset-thumbnail{position:relative;width:100%;aspect-ratio:1 / 1;background-color:rgba(var(--bg-primary-rgb),.5);border-radius:var(--border-radius);overflow:hidden;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;border:2px solid transparent}.asset-thumbnail:hover,.asset-thumbnail:focus-within{transform:scale(1.05);box-shadow:0 0 8px rgba(var(--accent-primary-rgb),.7);z-index:10}.asset-thumbnail.selected{border-color:rgba(var(--accent-primary-rgb),.9)}.asset-thumbnail img{width:100%;height:100%;object-fit:contain}.thumbnail-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000b3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-unit);opacity:0;transition:opacity .2s ease;pointer-events:none;padding:4px}.asset-thumbnail:hover .thumbnail-overlay,.asset-thumbnail:focus-within .thumbnail-overlay{opacity:1;pointer-events:auto}.thumbnail-overlay .top-right-actions{position:absolute;top:4px;right:4px}.thumbnail-overlay .bottom-actions{position:absolute;bottom:4px;left:4px;right:4px;display:flex;justify-content:center;gap:4px}.thumbnail-overlay .bottom-actions .thumbnail-action-btn{width:28px;height:28px;font-size:1rem}.thumbnail-overlay .assign-btn{background-color:var(--accent-primary);color:#fff;border:none;border-radius:4px;padding:6px 10px;font-size:.8rem;font-weight:600}.main-image-overlay{flex-direction:column;justify-content:space-between;align-items:flex-end;padding:var(--spacing-unit);background:transparent;pointer-events:none;opacity:1}.main-image-overlay .top-tools{display:flex;gap:var(--spacing-unit)}.main-image-overlay>*{pointer-events:auto}.history-overlay{justify-content:flex-end;align-items:flex-end;padding:4px;background:linear-gradient(to top,#000000b3,#0000 60%)}#history-list .delete-btn,.thumbnail-overlay .delete-btn{width:28px;height:28px;font-size:1rem}#image-compose-container,#accessory-uploads-container{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-unit);margin-bottom:var(--spacing-unit)}#image-compose-container-reference .file-upload{max-width:150px;margin:0 auto}.file-upload{display:flex;flex-direction:column}.file-upload label{font-size:.85rem;font-weight:500;color:var(--text-secondary);margin-bottom:4px;text-align:center}.file-upload input[type=file]{display:none}.image-preview{width:100%;aspect-ratio:3 / 4;border:1px dashed rgba(255,255,255,.2);border-radius:var(--border-radius);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .2s ease,background-color .2s ease;position:relative;overflow:hidden;background-color:rgba(var(--bg-primary-rgb),.5)}.image-preview:hover{border-color:rgba(var(--accent-primary-rgb),.8);background-color:rgba(var(--bg-secondary-rgb),.6)}.image-preview.has-image{border-style:solid;border-color:transparent}.image-preview img{width:100%;height:100%;object-fit:cover}.placeholder-text{color:var(--text-secondary);font-size:.9rem;text-align:center;padding:var(--spacing-unit)}.preview-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000b3;display:none;align-items:center;justify-content:center;color:#fff}.loading .preview-overlay{display:flex}.preview-actions{position:absolute;top:4px;right:4px;display:flex;gap:4px}.preview-actions button{background:#0009;border:none;color:#fff;border-radius:50%;width:24px;height:24px;padding:0;font-size:1rem;line-height:1;cursor:pointer}.image-preview .composer-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0009;opacity:0;transition:opacity .2s ease-in-out;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:var(--spacing-unit);pointer-events:none}.image-preview.has-image:hover .composer-overlay{opacity:1;pointer-events:auto}.composer-actions{display:flex;flex-direction:column;gap:calc(var(--spacing-unit) / 2)}.composer-action-btn{background:var(--surface-hover);color:var(--text-primary);border:none;padding:6px 12px;font-size:.8rem;border-radius:4px;cursor:pointer;width:auto;text-align:left}.composer-action-btn:hover{background-color:var(--accent-primary);color:#fff}.composer-action-btn.remove-btn{position:absolute;top:var(--spacing-unit);right:var(--spacing-unit);background:#0009;border-radius:50%;width:28px;height:28px;padding:0;font-size:1rem;display:flex;align-items:center;justify-content:center}.analyzed-previews{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-unit)}.file-upload.small .image-preview{aspect-ratio:1 / 1}.image-preview.readonly{cursor:default;border-style:solid;border-color:var(--glass-border-color);background-color:rgba(var(--bg-primary-rgb),.5)}.image-preview.readonly:hover{border-color:var(--glass-border-color)}.image-preview.readonly img{background-image:linear-gradient(45deg,rgba(var(--surface-color-rgb),.5) 25%,transparent 25%),linear-gradient(-45deg,rgba(var(--surface-color-rgb),.5) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(var(--surface-color-rgb),.5) 75%),linear-gradient(-45deg,transparent 75%,rgba(var(--surface-color-rgb),.5) 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0px}#upscale-controls{position:absolute;top:20px;left:20px;z-index:50;display:none;align-items:flex-start;gap:10px}#upscale-action-btn{background:rgba(var(--surface-color-rgb),.8);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.2);width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;transition:all .3s ease;box-shadow:0 4px 15px #0000004d;padding:0}#upscale-action-btn:hover{background:rgba(var(--surface-hover-rgb),.9);transform:scale(1.05)}.diamond-icon{font-size:24px;line-height:1;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}#upscale-options{background:rgba(var(--bg-secondary-rgb),.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:12px;border-radius:12px;border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 20px #0006;display:flex;flex-direction:column;gap:6px;min-width:140px;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}#upscale-options label{font-size:.8rem;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.5px}#upscale-scale-select{background:#0000004d;border:1px solid rgba(255,255,255,.1);color:#fff;padding:6px 10px;font-size:.9rem;border-radius:6px;cursor:pointer}#upscale-scale-select:hover{border-color:var(--accent-primary)}.physics-controls-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-unit)}.prompt-options{display:grid;grid-template-columns:1fr;gap:var(--spacing-unit)}.option-group label{font-size:.85rem}.modal{position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal>div[class*=-content]{background-color:rgba(var(--bg-secondary-rgb),.7);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border:1px solid var(--glass-border-color);position:relative}.close-btn{position:absolute;top:16px;right:16px;color:var(--text-secondary);font-size:28px;font-weight:700;cursor:pointer;z-index:10}.close-btn:hover{color:var(--text-primary)}#auth-container{transition:opacity .3s ease-in-out}.auth-content{background-color:rgba(var(--bg-secondary-rgb),.7);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border:1px solid var(--glass-border-color);border-radius:var(--border-radius);width:90vw;height:90vh;max-width:1400px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 10px 30px #0000004d;position:relative;animation:fadeIn .3s ease-out}.auth-carousel-container{flex:0 0 55%;position:relative;overflow:hidden;border-radius:24px 0 0 24px;background-color:transparent}.auth-carousel-track{display:flex;width:100%;height:100%;transition:transform .5s ease-in-out}.auth-carousel-slide{flex:0 0 100%;min-width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:rgba(var(--bg-secondary-rgb),.5)}.auth-carousel-slide img{width:100%;height:100%;object-fit:contain;object-position:center;aspect-ratio:630/1152;border-radius:24px}.auth-form-container{flex:0 0 45%;padding:calc(var(--spacing-unit) * 5);display:flex;flex-direction:column;overflow-y:auto}@media(max-width:768px){.auth-content{flex-direction:column;height:100vh;border-radius:0;width:100vw;max-height:100vh}.auth-carousel-container{flex:0 0 40%;border-radius:0}.auth-carousel-slide img{aspect-ratio:630/1152;border-radius:16px}.auth-form-container{flex:0 0 60%;padding:calc(var(--spacing-unit) * 3)}}@media(max-width:480px){.auth-carousel-container{flex:0 0 30%}.auth-form-container{flex:0 0 70%}.auth-carousel-slide img{border-radius:12px}}.auth-content h2{text-align:center;margin-bottom:var(--spacing-unit)}.auth-content .helper-text{text-align:center;margin-bottom:calc(var(--spacing-unit) * 3)}.auth-switch{text-align:center;margin-top:calc(var(--spacing-unit) * 2);font-size:.9rem}.auth-switch a{color:rgba(var(--accent-primary-rgb),1);text-decoration:none;font-weight:600}.auth-switch a:hover{text-decoration:underline}#send-code-message.success{color:var(--success-color)}#send-code-message.error{color:var(--danger-color)}#progress-bar-overlay{z-index:2000}.progress-bar-container{background-color:rgba(var(--bg-secondary-rgb),.8);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border:1px solid var(--glass-border-color);padding:calc(var(--spacing-unit) * 4);border-radius:var(--border-radius);width:90%;max-width:400px;text-align:center;box-shadow:0 10px 30px #0000004d}#progress-bar-message{margin-bottom:var(--spacing-unit);font-weight:600}.progress-bar{width:100%;height:10px;background-color:rgba(var(--bg-primary-rgb),.5);border-radius:5px;overflow:hidden;margin:var(--spacing-unit) 0}#progress-bar-fill{width:0%;height:100%;background-color:rgba(var(--accent-primary-rgb),1);border-radius:5px;transition:width .1s linear}#progress-bar-percentage{font-family:monospace;font-size:.9rem;color:var(--text-secondary)}.ai-assistant-content{width:50vw;max-width:700px;height:70vh;border-radius:var(--border-radius);padding:calc(var(--spacing-unit) * 3);display:flex;flex-direction:column}#ai-chat-history{flex-grow:1;overflow-y:auto;margin-bottom:calc(var(--spacing-unit) * 2);padding-right:var(--spacing-unit)}.chat-message{margin-bottom:var(--spacing-unit);padding:var(--spacing-unit) calc(var(--spacing-unit) * 2);border-radius:var(--border-radius);max-width:80%}.chat-message.user{background-color:rgba(var(--accent-primary-rgb),.7);color:#fff;margin-left:auto;text-align:right}.chat-message.model{background-color:rgba(var(--surface-color-rgb),.6);color:var(--text-primary);margin-right:auto}#ai-chat-input-container{display:flex;gap:calc(var(--spacing-unit) * 1.5)}#ai-chat-input{flex-grow:1;resize:none}#ai-chat-send-btn{flex-shrink:0}#ai-chat-footer{display:flex;justify-content:flex-end;margin-top:var(--spacing-unit)}#main-canvas-editor-overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:25;background-image:linear-gradient(45deg,rgba(var(--surface-color-rgb),.6) 25%,transparent 25%),linear-gradient(-45deg,rgba(var(--surface-color-rgb),.6) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(var(--surface-color-rgb),.6) 75%),linear-gradient(-45deg,transparent 75%,rgba(var(--surface-color-rgb),.6) 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0px}#main-canvas-editor{position:absolute;top:0;left:0}#main-canvas-controls{position:absolute;bottom:0;left:0;right:0;background:rgba(var(--bg-secondary-rgb),.7);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--glass-border-color);padding:calc(var(--spacing-unit) * 2);display:flex;flex-direction:column;gap:var(--spacing-unit);border-radius:0 0 var(--border-radius) var(--border-radius);z-index:30}.zoomable-image-container{width:100%;height:100%;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center;background:rgba(var(--surface-color-rgb),.8);cursor:grab}.zoomable-image-container:active{cursor:grabbing}.zoomable-image-container img{max-width:100%;max-height:100%;transition:transform .1s ease;transform-origin:center center;object-fit:contain}.canvas-controls-header{display:flex;justify-content:space-between;align-items:center}.canvas-controls-header h3{margin:0}.controls-help{color:var(--text-secondary);font-size:.85rem}.canvas-controls-body{display:flex;gap:calc(var(--spacing-unit) * 2)}.canvas-controls-footer{display:flex;justify-content:flex-end;gap:calc(var(--spacing-unit) * 2)}.spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;gap:var(--spacing-unit);color:var(--text-secondary)}.spinner-small{border:2px solid rgba(var(--surface-color-rgb),.5);border-top:2px solid rgba(var(--accent-primary-rgb),1);border-radius:50%;width:20px;height:20px;animation:spin 1s linear infinite}.btn-spinner{width:16px;height:16px;border-width:2px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.product-workshop-content{width:95vw;height:90vh;max-width:1600px;padding:calc(var(--spacing-unit) * 3);display:flex;flex-direction:column}.product-workshop-content h2{flex-shrink:0}.workshop-main-layout{display:grid;grid-template-columns:1fr 2fr 1.2fr;gap:calc(var(--spacing-unit) * 3);flex-grow:1;min-height:0}.workshop-panel{display:flex;flex-direction:column;background-color:rgba(var(--bg-primary-rgb),.5);border-radius:var(--border-radius);padding:calc(var(--spacing-unit) * 2);overflow-y:auto}.workshop-panel h3{margin-bottom:var(--spacing-unit)}.workshop-panel-center #pw-generated-image-container{flex-grow:1;background-color:rgba(var(--bg-secondary-rgb),.5);border-radius:var(--border-radius);display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:var(--spacing-unit)}.workshop-panel-center #pw-generated-image-container img{max-width:100%;max-height:100%;object-fit:contain}#pw-iteration-controls{display:flex;gap:calc(var(--spacing-unit) * 1.5);margin-bottom:var(--spacing-unit)}.thumbnail-history-bar{display:flex;gap:var(--spacing-unit);padding:var(--spacing-unit);background:rgba(var(--bg-secondary-rgb),.5);border-radius:var(--border-radius);overflow-x:auto;min-height:80px}.thumbnail-history-bar .asset-thumbnail{width:60px;height:60px;flex-shrink:0}.product-search-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--spacing-unit);margin:var(--spacing-unit) 0}.workshop-reference-uploads{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-unit)}.product-result-item{aspect-ratio:1 / 1;border-radius:var(--border-radius);overflow:hidden;position:relative;cursor:pointer;border:2px solid transparent}#smart-extraction-results-modal{max-height:90vh;overflow-y:auto}#smart-extraction-results-modal .modal-content{max-height:85vh;display:flex;flex-direction:column}#smart-extraction-results-gallery{display:flex;flex-wrap:wrap;gap:calc(var(--spacing-unit) * 2);padding:var(--spacing-unit);overflow-y:auto;max-height:60vh}.polaroid-thumb{width:200px;aspect-ratio:1 / 1;border-radius:var(--border-radius);overflow:hidden;background:#fff;padding:calc(var(--spacing-unit) * 1.5);box-shadow:0 4px 6px #0000001a;cursor:pointer;transition:all .2s ease;border:2px solid transparent;flex-shrink:0}.polaroid-thumb.selected{border-color:var(--accent-primary);transform:scale(1.05);box-shadow:0 6px 12px #00000026}.polaroid-thumb img{width:100%;height:calc(100% - 40px);object-fit:contain;background:#0000000d;border-radius:calc(var(--border-radius) * .5);margin-bottom:var(--spacing-unit)}.polaroid-label{text-align:center;font-size:.85rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-result-item{opacity:.6;transition:opacity .2s ease,border-color .2s ease}.product-result-item.selected{border-color:rgba(var(--accent-primary-rgb),.9);opacity:1;box-shadow:0 0 12px rgba(var(--accent-primary-rgb),.5)}.product-result-item:hover{opacity:.8}.product-result-item.selected:hover{opacity:1}.product-result-item img{width:100%;height:100%;object-fit:cover}.product-result-item .product-result-label{position:absolute;bottom:0;left:0;right:0;background:#000000b3;color:#fff;padding:4px;font-size:.8rem;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-type-search{display:flex;flex-direction:column;gap:var(--spacing-unit)}.product-type-search .input-group{display:flex;gap:calc(var(--spacing-unit) * 1.5)}.product-type-search .input-group button{padding:8px 12px;font-size:.9rem;flex-shrink:0}#pw-product-type-confirm-btn{margin-top:calc(var(--spacing-unit) * 1.5)}.view-selection{margin-bottom:calc(var(--spacing-unit) * 2)}.view-selection label{display:block;margin-bottom:var(--spacing-unit);font-weight:600;color:var(--text-secondary)}.view-buttons{display:flex;gap:calc(var(--spacing-unit) * 1);flex-wrap:wrap}.view-btn{padding:8px 16px;font-size:.85rem;background-color:rgba(var(--surface-color-rgb),.6);color:var(--text-secondary);border:1px solid rgba(var(--glass-border-color),.5);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease;flex:1;min-width:80px}.view-btn:hover{background-color:rgba(var(--surface-hover-rgb),.8);color:var(--text-primary);border-color:rgba(var(--accent-primary-rgb),.5)}.view-btn.active{background-color:rgba(var(--accent-primary-rgb),.8);color:#fff;border-color:rgba(var(--accent-primary-rgb),1);box-shadow:0 0 8px rgba(var(--accent-primary-rgb),.5)}#pw-iteration-controls .action-buttons{display:flex;gap:calc(var(--spacing-unit) * 2);margin-top:calc(var(--spacing-unit) * 1)}#pw-iteration-controls .action-buttons button{flex:1}.element-extractor-content{width:85vw;max-width:1400px;height:80vh;padding:calc(var(--spacing-unit) * 3);display:flex;flex-direction:column}.extractor-main{flex-grow:1;display:grid;grid-template-columns:1fr 400px;grid-template-rows:minmax(0,1fr);gap:calc(var(--spacing-unit) * 2);overflow:hidden}.extractor-source,.extractor-results{display:flex;flex-direction:column;gap:var(--spacing-unit);background-color:rgba(var(--bg-primary-rgb),.5);padding:var(--spacing-unit);border-radius:var(--border-radius);overflow-y:auto}.extractor-source .helper-text{text-align:center;margin-bottom:calc(var(--spacing-unit) * 1.5)}.extractor-tool-selection{display:flex;justify-content:center;gap:var(--spacing-unit);margin-bottom:var(--spacing-unit)}.extractor-tool-selection .secondary-btn{padding:8px 12px;font-size:1.2rem;line-height:1;flex-grow:0;min-width:50px}.extractor-tool-selection .secondary-btn:not(.active){background-color:rgba(var(--surface-color-rgb),.4)}.extractor-tool-selection .secondary-btn.active{background-color:rgba(var(--accent-primary-rgb),.7);color:#fff}.extractor-image-container{flex-grow:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:var(--border-radius);background:rgba(var(--bg-secondary-rgb),.5)}#extractor-source-canvas{box-shadow:0 0 10px #00000080}.extractor-actions{display:flex;flex-direction:column;gap:calc(var(--spacing-unit) * 2)}#extracted-elements-gallery{flex-grow:1;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:var(--spacing-unit);align-content:start;min-height:100px;padding-bottom:var(--spacing-unit)}#open-reshape-modal-btn{margin-top:var(--spacing-unit)}.checkerboard-bg{background-image:linear-gradient(45deg,rgba(var(--surface-color-rgb),.6) 25%,transparent 25%),linear-gradient(-45deg,rgba(var(--surface-color-rgb),.6) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(var(--surface-color-rgb),.6) 75%),linear-gradient(-45deg,transparent 75%,rgba(var(--surface-color-rgb),.6) 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0px}.extracted-element.selected{box-shadow:0 0 0 3px rgba(var(--accent-primary-rgb),.8)}.canvas-mode-container{position:absolute;top:20px;right:20px;z-index:50;display:flex;flex-direction:column;gap:var(--spacing-unit)}.canvas-mode-indicator{display:flex;align-items:center;gap:var(--spacing-unit);background:rgba(var(--surface-color-rgb),.8);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.2);border-radius:var(--border-radius-lg);padding:var(--spacing-unit);box-shadow:0 4px 15px #0000004d;transition:all .3s ease}.mode-label{font-size:.85rem;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.mode-switch-btn{background:rgba(var(--accent-primary-rgb),.7);color:#fff;border:none;border-radius:var(--border-radius);padding:8px 16px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .3s ease;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.2);box-shadow:0 2px 8px rgba(var(--accent-primary-rgb),.3)}.mode-switch-btn:hover{background:rgba(var(--accent-primary-rgb),.9);transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--accent-primary-rgb),.4)}.mode-switch-btn:active{transform:translateY(0)}.mode-switch-btn.edit{background:rgba(var(--success-color),.7)}.mode-switch-btn.browse{background:rgba(var(--info-color),.7)}#image-gallery.edit-mode{cursor:default}#image-gallery.browse-mode{cursor:grab}#image-gallery.panning{cursor:grabbing}#image-gallery.mode-switching,.gallery-image-wrapper{transition:all .3s ease}#image-gallery.edit-mode .gallery-image-wrapper{opacity:.8}#image-gallery.edit-mode .gallery-image-wrapper:hover{opacity:1;transform:scale(1.02)}.mode-switching{animation:modeSwitch .3s ease-in-out}@keyframes modeSwitch{0%{opacity:.7;transform:scale(.98)}50%{opacity:.9;transform:scale(1.01)}to{opacity:1;transform:scale(1)}}#reshape-element-modal{z-index:1001}.reshape-element-content{width:70vw;max-width:1200px;height:85vh;padding:calc(var(--spacing-unit) * 3);display:flex;flex-direction:column}.reshape-main-layout{flex-grow:1;display:grid;grid-template-columns:1fr 1fr;gap:calc(var(--spacing-unit) * 2);min-height:0}.reshape-left-panel,.reshape-right-panel{display:flex;flex-direction:column;gap:var(--spacing-unit);background-color:rgba(var(--bg-primary-rgb),.5);padding:calc(var(--spacing-unit) * 2);border-radius:var(--border-radius);overflow-y:auto}.reshape-left-panel #reshape-preview{width:100%;height:auto;aspect-ratio:1 / 1;max-width:400px;margin:auto}.reshape-left-panel #reshape-preview img{width:100%;height:100%;object-fit:contain}#reshaped-elements-gallery{flex-grow:1;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--spacing-unit);align-content:start;min-height:120px}#smart-extraction-results-modal{z-index:1002}.smart-extraction-results-content{width:90vw;max-width:1400px;height:85vh;background-color:rgba(var(--bg-primary-rgb),.9)!important;padding:0;display:flex;flex-direction:column;border-radius:16px;overflow:hidden}.smart-extract-header{padding:calc(var(--spacing-unit) * 2) calc(var(--spacing-unit) * 3);flex-shrink:0}.smart-extract-header h2{margin-bottom:4px}.smart-extract-header .helper-text{margin-bottom:0}.smart-extract-main{flex-grow:1;min-height:0;display:grid;grid-template-columns:350px 1fr;gap:calc(var(--spacing-unit) * 2);padding:0 calc(var(--spacing-unit) * 3)}#smart-extract-source-image-container{display:flex;flex-direction:column;background:rgba(var(--surface-color-rgb),.4);padding:var(--spacing-unit);border-radius:var(--border-radius);height:100%}#smart-extract-source-image-container h3{text-align:center;margin-bottom:var(--spacing-unit)}#smart-extract-source-image-container .image-wrapper{flex-grow:1;min-height:0;display:flex;align-items:center;justify-content:center}#smart-extract-source-image-container img{max-width:100%;max-height:100%;object-fit:contain;border-radius:var(--border-radius)}#smart-extraction-results-gallery{flex-grow:1;overflow-y:auto;overflow-x:hidden;display:flex;flex-wrap:wrap;gap:calc(var(--spacing-unit) * 4);padding:calc(var(--spacing-unit) * 3);background-color:rgba(var(--surface-color-rgb),.6);border-radius:var(--border-radius);align-content:flex-start;justify-content:center;max-height:60vh}.smart-extract-footer{padding:calc(var(--spacing-unit) * 2) calc(var(--spacing-unit) * 3);display:flex;justify-content:flex-end}#smart-extract-reshape-btn{min-width:250px}.polaroid-thumb{background:#fdfdfd;padding:12px 12px 48px;box-shadow:0 4px 10px #0000004d;position:relative;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;border:3px solid transparent}.polaroid-thumb:nth-child(3n){transform:rotate(2deg)}.polaroid-thumb:nth-child(4n){transform:rotate(-3deg)}.polaroid-thumb:nth-child(5n){transform:rotate(1.5deg)}.polaroid-thumb:hover{transform:scale(1.05) rotate(0)!important;box-shadow:0 8px 20px #0006;z-index:10}.polaroid-thumb.selected{border-color:rgba(var(--accent-primary-rgb),.9);box-shadow:0 0 15px rgba(var(--accent-primary-rgb),.8);transform:scale(1.05) rotate(0)!important;z-index:11}.polaroid-thumb:before{content:"";position:absolute;top:-10px;left:50%;transform:translate(-50%);width:20px;height:20px;background:radial-gradient(circle,khaki 30%,gold 80%);border-radius:50%;box-shadow:0 2px 4px #0006,inset 0 1px 1px #ffffff4d;border:1px solid #b8860b}.polaroid-thumb img{display:block;width:150px;height:150px;object-fit:contain}.polaroid-label{position:absolute;bottom:10px;left:12px;right:12px;text-align:center;font-family:Kalam,cursive;font-size:1rem;color:#333}#perspective-shift-controls{position:absolute;bottom:0;left:0;right:0;z-index:20;background:rgba(var(--bg-secondary-rgb),.7);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--glass-border-color);padding:calc(var(--spacing-unit) * 2);display:flex;flex-direction:column;gap:var(--spacing-unit);border-radius:0 0 var(--border-radius) var(--border-radius)}.perspective-shift-header{display:flex;justify-content:space-between;align-items:center}.perspective-shift-header h3{margin:0}.slider-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(var(--spacing-unit) * 2)}.slider-group{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--spacing-unit)}.slider-group label{font-size:.9rem;white-space:nowrap;margin-right:calc(var(--spacing-unit) * 2)}.slider-group input[type=range]{width:100%;margin:0}.slider-value{font-family:monospace;font-size:.9rem;min-width:30px;text-align:right}.perspective-shift-actions{display:flex;justify-content:flex-end;gap:calc(var(--spacing-unit) * 2)}@keyframes animated-gradient{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.dynamic-light{position:fixed;border-radius:50%;z-index:-2;will-change:transform;opacity:.6;top:50%;left:50%;transition:opacity .5s ease-in-out}.light-1{width:33vmax;height:33vmax;background:radial-gradient(circle,#ff8c69,#d664be 80%);filter:blur(120px);animation:chase1 60s cubic-bezier(.45,0,.55,1) infinite}.light-2{width:66vmax;height:66vmax;background:radial-gradient(circle,#69a6ff,#be64d6 80%);filter:blur(200px);animation:chase2 90s cubic-bezier(.45,0,.55,1) infinite}@keyframes chase1{0%{transform:translate(-50vw,-40vh) scale(1)}25%{transform:translate(45vw,-50vh) scale(1.2)}50%{transform:translate(50vw,50vh) scale(.9)}75%{transform:translate(-40vw,45vh) scale(1.1)}to{transform:translate(-50vw,-40vh) scale(1)}}@keyframes chase2{0%{transform:translate(40vw,50vh) scale(1)}25%{transform:translate(-50vw,40vh) scale(.8)}50%{transform:translate(-45vw,-50vh) scale(1.1)}75%{transform:translate(50vw,-45vh) scale(1)}to{transform:translate(40vw,50vh) scale(1)}}#homepage{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;height:100vh;width:100%;padding:calc(var(--spacing-unit) * 4);position:absolute;top:0;left:0;z-index:10;transition:opacity .3s ease-out}.hero-section{margin-top:0;margin-bottom:calc(var(--spacing-unit) * 4)}.hero-title{font-size:3.5rem;font-weight:700;letter-spacing:-1px;margin-bottom:var(--spacing-unit);background:linear-gradient(90deg,#e0e0e0,#a0a0e0);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.hero-subtitle{font-size:1.2rem;color:var(--text-secondary);max-width:600px;margin:0 auto calc(var(--spacing-unit) * 4);line-height:1.7}.hero-cta{padding:16px 32px;font-size:1.2rem;border-radius:999px;box-shadow:0 5px 20px rgba(var(--accent-primary-rgb),.3)}.hero-carousel-container{position:relative;width:100%;max-width:800px;margin:0 auto;overflow:hidden;height:472px;border-radius:40px;background-color:transparent}.hero-video-container{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity .3s ease-in-out;z-index:1;overflow:hidden;display:flex;align-items:center;justify-content:center;background:transparent}.hero-video-container.active{opacity:1;z-index:2}.hero-video{width:100%;height:100%;object-fit:cover;object-position:center;background:transparent;pointer-events:none;border-radius:40px}.video-loading-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(var(--bg-primary-rgb),.8);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:3;opacity:1;transition:opacity .3s ease-in-out}.video-loading-overlay.hidden{opacity:0;pointer-events:none}.spinner{border:4px solid rgba(var(--surface-color-rgb),.5);border-top:4px solid rgba(var(--accent-primary-rgb),1);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}.loading-text{margin-top:12px;color:var(--text-secondary);font-size:.9rem}.carousel-dots{position:absolute;bottom:20px;left:50%;transform:translate(-50%);display:flex;gap:10px;z-index:4;display:none}.carousel-dot{width:12px;height:12px;border-radius:50%;background-color:#fff6;border:none;cursor:default;pointer-events:none;transition:all .3s ease-in-out}.carousel-dot.active{background-color:rgba(var(--accent-primary-rgb),.9);width:30px;border-radius:6px}.carousel-dot:hover{background-color:#fff6}@media(max-width:768px){.hero-carousel-container{max-width:100%;height:auto;aspect-ratio:800/472;min-height:0;border-radius:24px}.hero-video{object-fit:contain;border-radius:24px}.carousel-dots{bottom:15px}.carousel-dot{width:10px;height:10px}.carousel-dot.active{width:25px}}#mobile-controls-container{display:none}#mobile-history-overlay{position:absolute;top:0;right:0;bottom:0;width:120px;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:20;transform:translate(100%);transition:transform .3s ease-in-out;display:flex;align-items:center}#mobile-history-overlay.active{transform:translate(0)}#mobile-history-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-unit);overflow-y:auto;overflow-x:hidden;width:100%;padding:var(--spacing-unit)}#mobile-history-list li{flex-shrink:0}#mobile-history-list .asset-thumbnail{width:100%;height:auto;aspect-ratio:1 / 1}.gallery-image-wrapper.pressed{transform:scale(.95)}body.mobile-dragging .right-sidebar.active{opacity:.3;pointer-events:none;transition:opacity .3s ease}@media(max-width:768px){body{overflow:auto}.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1rem}.hero-section{margin-top:5vh;margin-bottom:calc(var(--spacing-unit) * 4)}.hero-carousel-slide{aspect-ratio:4 / 5}.slide-label h3{font-size:1.5rem}.slide-label p{font-size:.9rem}.carousel-nav-btn{width:36px;height:36px;line-height:36px;font-size:1.2rem}.carousel-nav-btn.prev{left:8px}.carousel-nav-btn.next{right:8px}.studio-container{flex-direction:column}.main-content{flex-grow:1;position:relative;z-index:5}.right-sidebar{position:fixed;bottom:0;left:0;right:0;width:100%;height:65vh;max-width:100%;transform:translateY(100%);transition:transform .3s ease-in-out,opacity .3s ease;z-index:100;border-top-left-radius:16px;border-top-right-radius:16px;border-top:1px solid var(--glass-border-color);box-shadow:0 -10px 30px #0000004d}.sidebar-content{padding-inline:calc(var(--spacing-unit) * 2)}.right-sidebar.active{transform:translateY(0)}header{text-align:center}#history-section{display:none}.right-sidebar .sidebar-footer{background:transparent;border-top:1px solid var(--glass-border-color);display:flex;gap:var(--spacing-unit)}#mobile-controls-container{display:flex;position:fixed;bottom:0;left:0;width:100%;padding:var(--spacing-unit) calc(var(--spacing-unit) * 2) calc(var(--spacing-unit) * 3);z-index:50;background:transparent;justify-content:center;pointer-events:none}#mobile-menu-toggle-btn{padding:14px 28px;font-size:1.1rem;border-radius:999px;width:auto;max-width:300px;box-shadow:0 4px 15px #0006;pointer-events:auto}#modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:99}#image-gallery .placeholder{text-align:center;font-size:1rem;padding:0 calc(var(--spacing-unit) * 2)}.wearing-reference-wrapper{display:flex;gap:var(--spacing-unit);align-items:flex-start}.wearing-reference-image-container{flex:2}.wearing-reference-wrapper #pose-description-container{flex:3;margin-top:0!important}.main-image-overlay .top-tools{flex-direction:column;position:absolute;top:var(--spacing-unit);right:var(--spacing-unit);align-items:flex-end}.main-image-overlay .delete-btn{position:absolute;bottom:var(--spacing-unit);right:var(--spacing-unit)}#mobile-history-overlay{display:flex;align-items:stretch}#mobile-history-list{flex-direction:row;overflow-x:auto;overflow-y:hidden;white-space:nowrap;align-items:center;height:100%;padding-inline:var(--spacing-unit)}#mobile-history-list::-webkit-scrollbar{height:4px}#mobile-history-list .asset-thumbnail{width:100px;height:100px}.mobile-hide{display:none!important}.compose-scene-content{display:flex;flex-direction:column}.compose-scene-content .compose-section-reference{order:1}.compose-scene-content .compose-section-inputs{order:2}.compose-scene-content .compose-section-accessories{order:3}.compose-scene-content .compose-section-prompt{order:4}.compose-scene-content .compose-section-framing{order:5}}.line-reconstruction-content{width:90vw;max-width:1400px;height:85vh;padding:calc(var(--spacing-unit) * 3);display:flex;flex-direction:column;border-radius:16px;overflow:hidden}.line-recon-main{flex-grow:1;display:grid;grid-template-columns:400px 1fr;gap:calc(var(--spacing-unit) * 3);overflow:hidden;margin-bottom:calc(var(--spacing-unit) * 2)}.line-recon-left-panel,.line-recon-right-panel{background-color:rgba(var(--bg-primary-rgb),.5);border-radius:var(--border-radius);padding:calc(var(--spacing-unit) * 2);overflow-y:auto}.line-recon-left-panel h3,.line-recon-right-panel h3{margin-bottom:calc(var(--spacing-unit) * 2);font-size:1.1rem;color:var(--text-primary)}#line-recon-upload-container{margin-bottom:calc(var(--spacing-unit) * 3)}#line-recon-upload-preview{width:100%;aspect-ratio:1 / 1;border:2px dashed rgba(var(--accent-primary-rgb),.5);border-radius:var(--border-radius);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;background-color:rgba(var(--bg-secondary-rgb),.5);overflow:hidden;position:relative;padding:calc(var(--spacing-unit) * 2)}#line-recon-upload-preview:hover{border-color:rgba(var(--accent-primary-rgb),.8);background-color:rgba(var(--bg-secondary-rgb),.7);transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--accent-primary-rgb),.2)}#line-recon-upload-preview.dragover{border-color:rgba(var(--accent-primary-rgb),1);background-color:rgba(var(--bg-secondary-rgb),.8);box-shadow:0 0 20px rgba(var(--accent-primary-rgb),.3);transform:translateY(-4px)}#line-recon-upload-preview img{max-width:100%;max-height:100%;object-fit:contain;border-radius:var(--border-radius)}#line-recon-upload-preview .placeholder-text{color:var(--text-secondary);text-align:center;font-size:.9rem;line-height:1.5}.status-container{margin-bottom:calc(var(--spacing-unit) * 3);background-color:rgba(var(--bg-secondary-rgb),.5);border-radius:var(--border-radius);padding:calc(var(--spacing-unit) * 2)}.status-item{display:flex;justify-content:space-between;margin-bottom:var(--spacing-unit);padding:var(--spacing-unit);background-color:rgba(var(--bg-primary-rgb),.5);border-radius:4px;transition:all .2s ease}.status-item:hover{background-color:rgba(var(--bg-primary-rgb),.7)}.status-label{font-weight:600;color:var(--text-secondary);font-size:.9rem}.status-value{font-weight:600;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.status-value#status-upload{color:var(--success-color)}.status-value#status-multi-angle{color:var(--accent-primary)}.status-value#status-line-recon{color:var(--text-primary)}.progress-container{margin-top:calc(var(--spacing-unit) * 2);padding:var(--spacing-unit);background-color:rgba(var(--bg-primary-rgb),.5);border-radius:4px}#line-recon-progress .progress-bar{width:100%;height:12px;background-color:rgba(var(--bg-secondary-rgb),.5);border-radius:6px;overflow:hidden;margin-bottom:var(--spacing-unit)}#line-recon-progress #progress-bar-fill{height:100%;background:linear-gradient(90deg,rgba(var(--accent-primary-rgb),.8),rgba(var(--accent-secondary-rgb),1));border-radius:6px;transition:width .3s ease;box-shadow:0 0 10px rgba(var(--accent-primary-rgb),.5)}.action-buttons{display:flex;flex-direction:column;gap:calc(var(--spacing-unit) * 2)}.line-recon-footer{display:flex;justify-content:flex-end;gap:calc(var(--spacing-unit) * 2);border-top:1px solid var(--glass-border-color);padding-top:calc(var(--spacing-unit) * 2)}#line-recon-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:calc(var(--spacing-unit) * 3);overflow-y:auto;height:100%}.angle-result-card{background-color:rgba(var(--bg-secondary-rgb),.5);border-radius:var(--border-radius);padding:calc(var(--spacing-unit) * 2);display:flex;flex-direction:column;gap:calc(var(--spacing-unit) * 2);transition:all .3s ease;border:1px solid transparent}.angle-result-card:hover{border-color:rgba(var(--accent-primary-rgb),.3);transform:translateY(-2px);box-shadow:0 4px 12px #0003}.angle-result-card h4{font-size:1.1rem;color:var(--text-primary);margin-bottom:0;text-align:center;text-transform:capitalize;letter-spacing:.5px}.result-images{display:grid;grid-template-columns:1fr 1fr;gap:calc(var(--spacing-unit) * 2);flex-grow:1}.result-image-group{display:flex;flex-direction:column;gap:var(--spacing-unit)}.result-image-group h5{font-size:.9rem;color:var(--text-secondary);margin-bottom:0;text-align:center;text-transform:uppercase;letter-spacing:1px}.result-image{width:100%;aspect-ratio:1 / 1;object-fit:contain;background-color:rgba(var(--bg-primary-rgb),.5);border-radius:var(--border-radius);cursor:pointer;transition:all .3s ease;border:1px solid var(--glass-border-color);padding:calc(var(--spacing-unit) * 2);background-image:linear-gradient(45deg,rgba(var(--surface-color-rgb),.2) 25%,transparent 25%),linear-gradient(-45deg,rgba(var(--surface-color-rgb),.2) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(var(--surface-color-rgb),.2) 75%),linear-gradient(-45deg,transparent 75%,rgba(var(--surface-color-rgb),.2) 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0px}.result-image:hover{transform:scale(1.05);box-shadow:0 4px 12px #0000004d;border-color:rgba(var(--accent-primary-rgb),.5)}.result-actions{display:flex;gap:calc(var(--spacing-unit) * 2);margin-top:var(--spacing-unit)}.result-actions button{flex:1;font-size:.85rem;padding:calc(var(--spacing-unit) * 1.5)}.placeholder-large{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;height:200px;color:var(--text-secondary);font-size:1.1rem;background-color:rgba(var(--bg-secondary-rgb),.3);border-radius:var(--border-radius);border:2px dashed rgba(var(--accent-primary-rgb),.3);text-align:center;padding:calc(var(--spacing-unit) * 2)}#line-recon-progress{margin-top:calc(var(--spacing-unit) * 2)}.status-value{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.preview-overlay{background-color:#000000b3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.preview-status{color:var(--text-primary);font-size:.9rem;margin-top:calc(var(--spacing-unit) * 2)}#start-line-recon-btn{background:linear-gradient(90deg,rgba(var(--accent-primary-rgb),.8),rgba(var(--accent-secondary-rgb),1));border:none;box-shadow:0 4px 12px rgba(var(--accent-primary-rgb),.3);transition:all .3s ease}#start-line-recon-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px rgba(var(--accent-primary-rgb),.4)}#start-line-recon-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px rgba(var(--accent-primary-rgb),.3)}#download-all-results-btn{background-color:rgba(var(--success-color),.7);border:none;transition:all .3s ease}#download-all-results-btn:hover:not(:disabled){background-color:rgba(var(--success-color),.9);transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--success-color),.3)}#cancel-line-recon-btn{background-color:rgba(var(--danger-color),.7);border:none;transition:all .3s ease}#cancel-line-recon-btn:hover:not(:disabled){background-color:rgba(var(--danger-color),.9);transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--danger-color),.3)}#open-enhanced-canvas-btn{position:relative;transition:all .3s ease}#open-enhanced-canvas-btn.browse-mode-active{background-color:rgba(var(--surface-color-rgb),.8);border:1px solid rgba(var(--surface-border-rgb),.5);box-shadow:none}#open-enhanced-canvas-btn.edit-mode-active{background-color:rgba(var(--accent-primary-rgb),.9);border:1px solid rgba(var(--accent-hover-rgb),.8);box-shadow:0 0 10px rgba(var(--accent-primary-rgb),.6),0 0 20px rgba(var(--accent-primary-rgb),.3);animation:pulse 2s infinite}@keyframes pulse{0%{box-shadow:0 0 10px rgba(var(--accent-primary-rgb),.6),0 0 20px rgba(var(--accent-primary-rgb),.3)}50%{box-shadow:0 0 15px rgba(var(--accent-primary-rgb),.8),0 0 30px rgba(var(--accent-primary-rgb),.5)}to{box-shadow:0 0 10px rgba(var(--accent-primary-rgb),.6),0 0 20px rgba(var(--accent-primary-rgb),.3)}}.main-canvas-editor{width:100%;height:100vh;display:flex;flex-direction:column;background-color:#f5f5f5;overflow:hidden}.canvas-editor-workspace{display:flex;height:100%;width:100%}.canvas-editor-sidebar{width:200px;background-color:#fff;border-right:1px solid #e0e0e0;overflow-y:auto;display:flex;flex-direction:column;flex-shrink:0}.canvas-editor-main{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative}.canvas-editor-right-panel{width:300px;background-color:#fff;border-left:1px solid #e0e0e0;overflow-y:auto;display:flex;flex-direction:column;flex-shrink:0}#canvas-toolbar{display:flex;flex-wrap:wrap;padding:8px;background-color:#f0f0f0;border-bottom:1px solid #ddd;overflow-x:auto;gap:4px}.canvas-tool-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;width:50px;height:50px;border:1px solid #ddd;background-color:#fff;cursor:pointer;border-radius:4px;transition:all .2s;padding:4px;font-size:12px;text-align:center}.canvas-tool-btn:hover{background-color:#e9e9e9;border-color:#999}.canvas-tool-btn.active{background-color:#007bff;color:#fff;border-color:#0056b3}.toolbar-divider{width:1px;background-color:#ddd;margin:0 4px}.tool-icon{font-size:18px;margin-bottom:2px}.tool-name{font-size:10px}.tool-options-panel{display:flex;padding:8px;background-color:#f9f9f9;border-bottom:1px solid #ddd;flex-wrap:wrap;gap:10px}.tool-option{display:flex;align-items:center;gap:5px}.tool-option label{font-size:12px;white-space:nowrap}.tool-option input[type=range]{width:100px}.tool-option input[type=color]{width:30px;height:24px;border:none;cursor:pointer}.alignment-tools{display:flex;padding:8px;background-color:#f9f9f9;border-bottom:1px solid #ddd;gap:4px}.alignment-button{width:36px;height:36px;border:1px solid #ddd;background-color:#fff;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:14px}.alignment-button:hover{background-color:#f0f0f0}.snapping-settings{display:flex;padding:8px;background-color:#f9f9f9;border-bottom:1px solid #ddd;gap:15px;flex-wrap:wrap}.snapping-settings label{display:flex;align-items:center;gap:5px;font-size:12px;cursor:pointer}.page-management{display:flex;padding:8px;background-color:#f9f9f9;border-bottom:1px solid #ddd;gap:10px;align-items:center}.page-controls{display:flex;gap:5px}.page-controls button{padding:4px 8px;font-size:12px}.page-list{display:flex;gap:5px;flex-wrap:wrap;flex:1}.page-tab{padding:4px 12px;border:1px solid #ddd;background-color:#fff;cursor:pointer;border-radius:12px;font-size:12px}.page-tab.active{background-color:#007bff;color:#fff}.zoom-controls{display:flex;align-items:center;padding:8px;background-color:#f9f9f9;border-bottom:1px solid #ddd;gap:8px}.zoom-controls button{width:30px;height:30px;border:1px solid #ddd;background-color:#fff;cursor:pointer;border-radius:4px}.zoom-controls span{min-width:40px;text-align:center;font-size:12px}.canvas-editor-main-area{flex:1;display:flex;overflow:hidden;position:relative;background-color:#e5e5e5}.canvas-editor-container{flex:1;overflow:hidden;position:relative}#main-canvas-editor{position:absolute;top:0;left:0;width:100%;height:100%;display:block;pointer-events:auto;z-index:1;background-color:transparent}#main-canvas-controls{position:absolute;bottom:20px;right:20px;width:300px;background:#fff;border:1px solid #ddd;border-radius:8px;padding:12px;box-shadow:0 4px 12px #00000026;z-index:10}.canvas-controls-header{margin-bottom:12px}.canvas-controls-header h3{margin:0 0 4px;font-size:16px;font-weight:600}.canvas-controls-header .controls-help{font-size:12px;color:#666;margin:0}#main-canvas-prompt{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;resize:vertical;min-height:60px;font-size:14px;margin-bottom:8px}.canvas-controls-footer{display:flex;gap:8px;margin-top:8px}.canvas-controls-footer button,#main-canvas-generate-btn{flex:1;padding:8px 12px;border-radius:4px;border:none;cursor:pointer;font-size:14px}#main-canvas-generate-btn{background-color:#4caf50;color:#fff}#main-canvas-save-btn{background-color:#2196f3;color:#fff}#main-canvas-export-btn{background-color:#ff9800;color:#fff}.secondary-btn{background-color:#f5f5f5;color:#333;border:1px solid #ddd}@media(max-width:768px){.canvas-editor-workspace{flex-direction:column}.canvas-editor-sidebar{width:100%;height:120px}.canvas-editor-right-panel,#main-canvas-controls{width:100%;height:200px}}.layers-panel{background-color:var(--glass-background-color);border:1px solid var(--glass-border-color);border-radius:8px;display:flex;flex-direction:column;height:100%}.layers-header{padding:12px 16px;border-bottom:1px solid var(--glass-border-color);display:flex;justify-content:space-between;align-items:center}.layers-header h3{margin:0;font-size:14px;font-weight:600;color:var(--text-color)}.layers-header-actions{display:flex;align-items:center;gap:8px}.layers-count{font-size:12px;color:var(--secondary-text-color)}.layer-name-text{cursor:text;padding:2px 4px;border-radius:2px;transition:all .2s ease}.layer-name-text:hover{background-color:var(--button-secondary-background)}.layer-rename-input-container{flex:1;display:flex;align-items:center}.layer-rename-input{width:100%;padding:4px 6px;border:1px solid var(--primary-color);border-radius:4px;font-size:13px;outline:none;background-color:var(--input-background-color);color:var(--text-color);box-shadow:0 0 0 2px var(--primary-color-light);transition:all .2s ease}.layer-rename-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-light)}.layers-body{flex:1;overflow-y:auto;padding:8px}.layers-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 16px;text-align:center;color:var(--secondary-text-color)}.layers-empty p{margin:4px 0;font-size:12px}.layers-list{list-style:none;margin:0;padding:0}.layer-item{margin-bottom:4px;background-color:var(--input-background-color);border:1px solid var(--glass-border-color);border-radius:6px;cursor:pointer;transition:all .2s ease;overflow:hidden}.layer-item:hover{background-color:var(--button-secondary-background);border-color:var(--primary-color)}.layer-item.selected{background-color:var(--primary-color-light);border-color:var(--primary-color)}.layer-item.locked{opacity:.7}.layer-item-content{display:flex;align-items:center;padding:8px 12px;gap:8px}.layer-visibility-btn,.layer-lock-btn{background:none;border:none;cursor:pointer;font-size:14px;padding:4px;border-radius:4px;color:var(--text-color);transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:24px;height:24px}.layer-visibility-btn:hover,.layer-lock-btn:hover{background-color:var(--button-secondary-background)}.layer-name{flex:1;font-size:13px;color:var(--text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.layer-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s ease}.layer-item:hover .layer-actions{opacity:1}.layer-action-btn{background:none;border:none;cursor:pointer;font-size:12px;padding:4px;border-radius:4px;color:var(--text-color);transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:24px;height:24px}.layer-action-btn:hover{background-color:var(--button-secondary-background)}.layer-action-btn.delete:hover{background-color:var(--danger-color-light);color:var(--danger-color)}@media(max-width:768px){.layers-panel{position:relative;width:100%;height:auto;max-height:300px}.layer-actions{opacity:1}}.background-fill-panel{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:16px;margin-bottom:16px;box-shadow:0 2px 4px #0000001a}.background-fill-header{margin-bottom:16px}.background-fill-header h3{margin:0;font-size:14px;font-weight:600;color:#333}.background-fill-body{display:flex;flex-direction:column;gap:16px}.fill-type-selector{display:flex;gap:8px;margin-bottom:8px}.fill-type-btn{flex:1;padding:8px 12px;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s ease}.fill-type-btn:hover{background:#e0e0e0}.fill-type-btn.active{background:#1890ff;color:#fff;border-color:#1890ff}.fill-settings{display:flex;flex-direction:column;gap:12px}.color-input-group{display:flex;flex-direction:column;gap:4px}.color-input-group label{font-size:12px;color:#666}.color-input-wrapper{display:flex;gap:8px;align-items:center}.color-input-wrapper input[type=color]{width:40px;height:32px;padding:0;border:1px solid #e0e0e0;border-radius:4px;cursor:pointer}.color-input-wrapper input[type=text]{flex:1;padding:6px 8px;border:1px solid #e0e0e0;border-radius:4px;font-size:12px}.gradient-type-selector{display:flex;gap:8px;margin-bottom:8px}.gradient-type-btn{flex:1;padding:6px 12px;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s ease}.gradient-type-btn:hover{background:#e0e0e0}.gradient-type-btn.active{background:#1890ff;color:#fff;border-color:#1890ff}.gradient-angle-group{display:flex;flex-direction:column;gap:4px}.gradient-angle-group label{font-size:12px;color:#666}.gradient-angle-group input[type=range]{width:100%;cursor:pointer}.image-upload-group{display:flex;flex-direction:column;gap:8px}.image-upload-group label{font-size:12px;color:#666}.file-upload{position:relative}.file-upload input[type=file]{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer}.file-upload-label{display:block;padding:8px 16px;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:4px;font-size:12px;text-align:center;cursor:pointer;transition:all .2s ease}.file-upload-label:hover{background:#e0e0e0}.image-preview{margin-top:8px;border:1px solid #e0e0e0;border-radius:4px;overflow:hidden;max-height:150px;display:flex;align-items:center;justify-content:center}.image-preview img{max-width:100%;max-height:100%;object-fit:contain}.apply-btn{padding:8px 16px;background:#1890ff;color:#fff;border:none;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s ease}.apply-btn:hover{background:#40a9ff}.apply-btn:disabled{background:#d9d9d9;cursor:not-allowed}.clear-btn{padding:8px 16px;background:#fff;color:#ff4d4f;border:1px solid #ff4d4f;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s ease}.clear-btn:hover{background:#fff1f0}
