.wrapper { display: flex; flex-direction: column; gap: var(--spacing-md); } .topBar { padding-bottom: var(--spacing-sm); border-bottom: 1px solid var(--border-color); } .inputGroup { display: flex; flex-direction: column; gap: 6px; } .label { font-size: 0.875rem; font-weight: 500; color: var(--text-main); } .mainInput { padding: 10px 14px; font-size: 1rem; border-radius: var(--radius-md); border: 1px solid var(--border-color); background-color: var(--bg-main); color: var(--text-main); width: 100%; max-width: 600px; } .mainInput:focus { outline: none; border-color: var(--primary); } .container { display: flex; gap: var(--spacing-lg); height: 600px; } .sidebar { width: 280px; display: flex; flex-direction: column; background-color: var(--bg-surface); border: 1px solid var(--border-color); border-radius: var(--radius-lg); overflow: hidden; } .sidebarContent { padding: var(--spacing-md); overflow-y: auto; display: flex; flex-direction: column; gap: var(--spacing-lg); } .sidebarGroup { display: flex; flex-direction: column; gap: var(--spacing-sm); } .sidebarGroupTitle { font-weight: 600; font-size: 0.75rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.05em; padding-left: 2px; } .templateGrid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; } .templateItem { padding: 8px; background-color: var(--bg-main); border: 1px solid var(--border-color); border-radius: var(--radius-md); cursor: pointer; font-size: 0.8rem; color: var(--text-main); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; text-align: center; transition: all 0.2s; height: 70px; } .templateItem span { word-break: break-word; line-height: 1.2; } .templateItem:hover { background-color: var(--bg-surface-hover); border-color: var(--primary); transform: translateY(-2px); box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05); } .canvas { flex: 1; background-color: var(--bg-main); border: 1px solid var(--border-color); border-radius: var(--radius-lg); padding: var(--spacing-lg); overflow-y: auto; display: flex; flex-direction: column; gap: var(--spacing-md); } .canvasEmpty { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100%; color: var(--text-muted); border: 2px dashed var(--border-color); border-radius: var(--radius-md); } .actions { display: flex; justify-content: flex-end; gap: var(--spacing-md); margin-top: var(--spacing-lg); } .btn { padding: 8px 16px; border-radius: 6px; font-size: 0.875rem; font-weight: 500; cursor: pointer; border: 1px solid transparent; transition: all 0.2s; } .btnSecondary { background-color: var(--bg-surface); border-color: var(--border-color); color: var(--text-main); } .btnSecondary:hover { background-color: var(--bg-surface-hover); } .btnPrimary { background-color: var(--primary); color: white; } .btnPrimary:hover { opacity: 0.9; }