:root{--primary: #b87130;--primary-hover: #f1af63;--accent: #c084fc;--bg-main: #b6a185;--bg-sidebar: #0f172a;--text-main: #f8fafc;--text-muted: #94a3b8;--border: rgba(255, 255, 255, .1);--glass: rgba(255, 255, 255, .03);--glass-border: rgba(255, 255, 255, .08);--radius: 16px;--radius-sm: 8px;--transition: all .2s cubic-bezier(.4, 0, .2, 1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05)}*{margin:0;padding:0;box-sizing:border-box;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}body{background-color:var(--bg-main);color:var(--text-main);height:100vh;overflow:hidden}#root{display:flex;height:100vh}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.sidebar{width:340px;background-color:var(--bg-sidebar);border-right:1px solid var(--border);padding:24px;display:flex;flex-direction:column;gap:24px;overflow-y:auto;z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all .5s cubic-bezier(.4,0,.2,1)}.sidebar.disabled{opacity:0;pointer-events:none;transform:translate(-20px)}.sidebar h1{font-size:1.75rem;font-weight:800;background:linear-gradient(135deg,#bca989,#bd9662);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:4px;letter-spacing:-.025em}.control-group{display:flex;flex-direction:column;gap:8px;accent-color:var(--primary)}.control-group label{font-size:.875rem;font-weight:500;color:var(--text-muted)}.control-group input[type=number],.control-group select{background:var(--bg-main);border:1px solid var(--border);color:var(--text-main);padding:8px 12px;border-radius:var(--radius);outline:none}.control-group input[type=range]{width:100%;accent-color:var(--primary)}.button{background:var(--primary);color:#fff;border:none;padding:10px 16px;border-radius:var(--radius-sm);font-weight:600;font-size:.875rem;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 1px 2px #0000000d}.button:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.button:active:not(:disabled){transform:translateY(0)}.button:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(1)}.button.secondary{background:var(--glass);border:1px solid var(--glass-border)}.button.secondary:hover{background:#ffffff1a}.image-list{display:flex;flex-direction:column;gap:12px;margin-top:12px}.image-item{display:flex;align-items:center;gap:12px;padding:8px;background:var(--glass);border:1px solid var(--glass-border);border-radius:var(--radius-sm);transition:var(--transition);cursor:pointer}.image-item:hover{background:#ffffff14;border-color:#ffffff26}.image-item.selected{border-color:var(--primary);background:#818cf81a}.image-item img{width:48px;height:48px;border-radius:4px;object-fit:cover}.image-item-info{flex:1;min-width:0}.image-item-name{font-size:.75rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.image-item-actions{display:flex;gap:4px}.icon-button{background:transparent;border:none;color:var(--text-muted);padding:4px;border-radius:4px;cursor:pointer;transition:var(--transition)}.icon-button:hover{background:#ffffff1a;color:var(--text-main)}.icon-button.delete:hover{background:#ef444433;color:#f87171}.dropzone{border:2px dashed var(--border);border-radius:var(--radius);padding:12px;text-align:center;transition:var(--transition);cursor:pointer;background:var(--glass);display:flex;flex-direction:column;align-items:center}.dropzone:hover,.dropzone.dragging{border-color:var(--primary);background:#818cf80d}.main-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;background-image:url(/assets/graph-paper-1-nGKlXqA7.png);background-repeat:repeat;overflow:auto}.preview-container{background:#fff;box-shadow:0 50px 100px -20px #00000080;position:relative;transform-origin:center;transition:transform .3s ease}.grid-preview{display:grid;width:100%;height:100%}.grid-item{width:100%;height:100%;overflow:hidden;position:relative;transition:var(--transition)}.grid-item:hover{filter:brightness(.95)}.grid-item.selected{z-index:5}.grid-item img{width:100%;height:100%;object-fit:cover}.editor-modal-overlay{position:fixed;inset:0;background:#000000e6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:2000;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.editor-modal{width:95vw;height:90vh;background:#0a0a0a;border:1px solid rgba(255,255,255,.1);border-radius:24px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 50px 100px -20px #000;position:relative}.editor-topbar{height:64px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.05);background:#ffffff05}.editor-layout{flex:1;display:flex;height:calc(100% - 64px)}.editor-sidebar{width:80px;border-right:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;align-items:center;padding:24px 0;gap:16px;background:#0006}.editor-tool-button{width:56px;height:56px;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#94a3b8;cursor:pointer;transition:all .2s ease;background:transparent;border:none}.editor-tool-button:hover{background:#818cf81a;color:#fff}.editor-tool-button.active{background:var(--primary);color:#fff}.editor-tool-button span{font-size:.65rem;font-weight:500}.editor-topbar-left,.editor-topbar-right{display:flex;align-items:center;gap:12px}.editor-divider{width:1px;height:24px;background:#ffffff1a;margin:0 8px}.editor-floating-controls{position:absolute;top:24px;left:50%;transform:translate(-50%);display:flex;gap:12px;z-index:100}.floating-tool-button{display:flex;align-items:center;gap:8px;background:#0f172acc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);padding:8px 16px;border-radius:12px;color:#fff;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease}.floating-tool-button:hover{background:#0f172a;border-color:var(--primary);transform:translateY(-2px)}.editor-content{flex:1;position:relative;background:#000;display:flex;align-items:center;justify-content:center;overflow:hidden}.cropper-container{width:100%;height:100%;position:relative}.editor-controls-pane{width:320px;border-left:1px solid rgba(255,255,255,.05);padding:24px;overflow-y:auto;background:#0003}.bottom-tabs{display:flex;gap:16px;margin-bottom:12px}.bottom-tab-button{background:transparent;border:none;color:var(--text-muted);font-size:.75rem;font-weight:500;cursor:pointer;padding:4px 8px;border-radius:6px;transition:all .2s ease}.bottom-tab-button:hover{color:#fff;background:#ffffff0d}.bottom-tab-button.active{color:var(--primary);background:#818cf81a}.editor-controls-pane .control-group{background:#ffffff08;padding:16px;border-radius:12px;border:1px solid rgba(255,255,255,.05)}.editor-controls-pane h3{color:#fff;margin-top:0;display:flex;align-items:center;gap:8px}.editor-bottom-bar{position:absolute;bottom:0;left:0;right:0;height:100px;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:10}.editor-bottom-bar>*{pointer-events:auto}.bottom-slider-container{width:300px;background:#0f172acc;padding:12px 24px;border-radius:20px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;align-items:center;gap:8px}.editor-range{width:100%;height:4px;accent-color:var(--primary);border-radius:2px;outline:none}.editor-range::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:#6366f1;cursor:pointer;border:3px solid #000;box-shadow:0 0 15px #6366f166}.filter-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.filter-item{aspect-ratio:1;border-radius:12px;border:4px solid transparent;cursor:pointer;overflow:hidden;position:relative;transition:all .2s ease;background:#111}.filter-item:hover{border-color:#6366f180;transform:translateY(-2px)}.filter-item.active{border-color:var(--primary)}.filter-item img{width:100%;height:100%;object-fit:cover}.filter-item span{position:absolute;bottom:0;left:0;right:0;background:#000000b3;color:#fff;font-size:.65rem;padding:6px;text-align:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@keyframes fadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}
