:root{font-family:Nunito,Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:500;--color-primary: #38BDF8;--color-primary-light: #7DD3FC;--color-primary-dark: #0EA5E9;--color-secondary: #FF6B9D;--color-secondary-light: #FF8FB4;--color-secondary-dark: #E5567F;--color-accent: #FFD93D;--color-accent-light: #FFE566;--color-accent-dark: #E6C236;--color-success: #6BCB77;--color-warning: #FFB347;--color-danger: #FF6B6B;--color-background: #F8F9FE;--color-surface: #FFFFFF;--color-surface-elevated: #FFFFFF;--color-border: #E2E8F0;--color-border-strong: #D0D0E0;--color-text: #2D3748;--color-text-secondary: #718096;--color-text-muted: #A0AEC0;--color-text-on-primary: #FFFFFF;--color-text-on-dark: #FFFFFF;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--shadow-sm: 0 2px 4px rgba(56, 189, 248, .08);--shadow-md: 0 4px 12px rgba(56, 189, 248, .12);--shadow-lg: 0 8px 24px rgba(56, 189, 248, .16);--shadow-glow: 0 0 20px rgba(56, 189, 248, .25);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s ease;--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: 2rem;--touch-target-min: 44px;--touch-target-comfortable: 48px}*{box-sizing:border-box;margin:0;padding:0}html,body{margin:0;padding:0;width:100%;height:100%;overflow:hidden;background:var(--color-background)}#app{width:100%;height:100%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--color-border);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:var(--color-primary-light);border-radius:var(--radius-full);border:2px solid var(--color-border)}::-webkit-scrollbar-thumb:hover{background:var(--color-primary)}.base-button[data-v-6c886e0d]{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);min-height:var(--touch-target-min);padding:var(--spacing-sm) var(--spacing-md);font-family:inherit;font-size:var(--font-size-base);font-weight:600;line-height:1.2;text-decoration:none;white-space:nowrap;border:2px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast);-webkit-appearance:none;-moz-appearance:none;appearance:none}.base-button--sm[data-v-6c886e0d]{min-height:36px;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);border-radius:var(--radius-sm)}.base-button--md[data-v-6c886e0d]{min-height:var(--touch-target-min);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-base)}.base-button--lg[data-v-6c886e0d]{min-height:52px;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-lg);border-radius:var(--radius-lg)}.base-button--default[data-v-6c886e0d]{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text);box-shadow:var(--shadow-sm)}.base-button--default[data-v-6c886e0d]:hover:not(.base-button--disabled){background:var(--color-background);border-color:var(--color-primary-light);transform:translateY(-1px);box-shadow:var(--shadow-md)}.base-button--default[data-v-6c886e0d]:active:not(.base-button--disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.base-button--primary[data-v-6c886e0d]{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);border-color:var(--color-primary-dark);color:var(--color-text-on-primary);box-shadow:var(--shadow-md)}.base-button--primary[data-v-6c886e0d]:hover:not(.base-button--disabled){background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--color-primary) 100%);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.base-button--primary[data-v-6c886e0d]:active:not(.base-button--disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.base-button--secondary[data-v-6c886e0d]{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-secondary-dark) 100%);border-color:var(--color-secondary-dark);color:var(--color-text-on-primary);box-shadow:var(--shadow-md)}.base-button--secondary[data-v-6c886e0d]:hover:not(.base-button--disabled){background:linear-gradient(135deg,var(--color-secondary-light) 0%,var(--color-secondary) 100%);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.base-button--secondary[data-v-6c886e0d]:active:not(.base-button--disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.base-button--ghost[data-v-6c886e0d]{background:transparent;border-color:transparent;color:var(--color-text-secondary)}.base-button--ghost[data-v-6c886e0d]:hover:not(.base-button--disabled){background:var(--color-background);color:var(--color-text)}.base-button--disabled[data-v-6c886e0d]{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.base-button[data-v-6c886e0d]:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.base-button.active[data-v-6c886e0d]{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%)!important;border-color:var(--color-primary-dark)!important;color:var(--color-text-on-primary)!important;box-shadow:var(--shadow-md),inset 0 2px 4px #0000001a!important;transform:scale(1.02)}.base-button.active[data-v-6c886e0d]:hover{transform:scale(1.02)}.canvas-container[data-v-8541ffeb]{width:100%;height:100%;position:relative;overflow:hidden;border-radius:inherit}.zoom-controls[data-v-8541ffeb]{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);z-index:20;display:flex;align-items:center;gap:2px;background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:4px;border:1px solid var(--color-border)}.zoom-btn[data-v-8541ffeb]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;min-width:36px;min-height:36px;border:none;background:transparent;border-radius:var(--radius-sm);font-size:1.25rem;font-weight:600;color:var(--color-text);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast);touch-action:manipulation}.zoom-btn[data-v-8541ffeb]:hover:not(:disabled){background:var(--color-primary-light);color:var(--color-text-on-primary)}.zoom-btn[data-v-8541ffeb]:active:not(:disabled){background:var(--color-primary);transform:scale(.95)}.zoom-btn[data-v-8541ffeb]:disabled{opacity:.4;cursor:not-allowed}.zoom-indicator[data-v-8541ffeb]{display:flex;align-items:center;justify-content:center;min-width:52px;height:36px;padding:0 var(--spacing-xs);border:none;background:var(--color-background);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast);touch-action:manipulation}.zoom-indicator[data-v-8541ffeb]:hover{background:var(--color-accent-light);color:var(--color-text)}.zoom-indicator[data-v-8541ffeb]:active{background:var(--color-accent);transform:scale(.95)}.canvas-viewport[data-v-8541ffeb]{width:100%;height:100%;overflow:hidden;position:relative}.canvas-viewport.is-panning[data-v-8541ffeb]{cursor:grabbing}.canvas-viewport.is-panning[data-v-8541ffeb] *{cursor:grabbing!important}.canvas-transform-wrapper[data-v-8541ffeb]{will-change:transform;position:relative}.canvas-layer[data-v-8541ffeb]{display:block;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:var(--radius-sm)}.canvas-bg[data-v-8541ffeb]{position:absolute;top:0;left:0;z-index:1;box-shadow:inset 0 0 0 1px var(--color-border)}.canvas-drawing[data-v-8541ffeb]{position:relative;z-index:2;cursor:crosshair}.canvas-drawing.fill-tool[data-v-8541ffeb]{cursor:cell}.canvas-drawing.eraser-tool[data-v-8541ffeb]{cursor:crosshair}.canvas-drawing.eraser-hover[data-v-8541ffeb]{cursor:pointer}.canvas-drawing.stamp-tool[data-v-8541ffeb]{cursor:copy}.canvas-drawing[data-v-8541ffeb]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 60px #00000008}@media (max-width: 640px){.zoom-controls[data-v-8541ffeb]{top:var(--spacing-xs);right:var(--spacing-xs);padding:2px}.zoom-btn[data-v-8541ffeb]{width:32px;height:32px;min-width:32px;min-height:32px;font-size:1.1rem}.zoom-indicator[data-v-8541ffeb]{min-width:44px;height:32px;font-size:var(--font-size-xs)}}@media (pointer: coarse){.zoom-btn[data-v-8541ffeb]{width:44px;height:44px;min-width:44px;min-height:44px}.zoom-indicator[data-v-8541ffeb]{height:44px;min-width:56px}}.color-palette[data-v-e19fd652]{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm);padding:var(--spacing-sm);max-width:200px}.color-palette--vertical[data-v-e19fd652]{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:0;max-width:none}.color-palette--vertical .color-swatch[data-v-e19fd652]{width:52px;height:52px;min-width:52px;min-height:52px;flex-shrink:0}.color-swatch[data-v-e19fd652]{min-width:var(--touch-target-min);min-height:var(--touch-target-min);width:100%;aspect-ratio:1;border:none;padding:0;margin:0;border-radius:var(--radius-md);cursor:pointer;position:relative;transition:transform var(--transition-fast),box-shadow var(--transition-fast);box-shadow:var(--shadow-sm)}.color-swatch--needs-border[data-v-e19fd652]{border:2px solid var(--color-border-strong)}.color-swatch[data-v-e19fd652]:hover{transform:scale(1.08);box-shadow:var(--shadow-md)}.color-swatch[data-v-e19fd652]:focus{outline:none}.color-swatch[data-v-e19fd652]:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.color-swatch--selected[data-v-e19fd652]{transform:scale(1.12);box-shadow:0 0 0 3px var(--color-surface),0 0 0 5px var(--color-primary),var(--shadow-md)}.color-swatch--selected[data-v-e19fd652]:hover{transform:scale(1.12)}.color-swatch__check[data-v-e19fd652]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;color:#fff;text-shadow:0 0 2px rgba(0,0,0,.8),0 1px 2px rgba(0,0,0,.5);pointer-events:none}.color-swatch--needs-border .color-swatch__check[data-v-e19fd652]{color:var(--color-text);text-shadow:none}.color-swatch[data-v-e19fd652]:active{transform:scale(.95)}.color-swatch--selected[data-v-e19fd652]:active{transform:scale(1.05)}.color-swatch--picker[data-v-e19fd652]{background:linear-gradient(135deg,#ff6b6b,#ffa94d 16%,#ffe066,#69db7c 50%,#74c0fc 66%,#b197fc,#f783ac);cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.color-swatch__picker-icon[data-v-e19fd652]{font-size:1.25rem;pointer-events:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.color-swatch__input[data-v-e19fd652]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;border:none;padding:0}.color-swatch--custom[data-v-e19fd652]:after{content:"";position:absolute;bottom:3px;right:3px;width:6px;height:6px;background:var(--color-surface);border-radius:50%;box-shadow:0 0 0 1px #0003}@media (max-width: 320px){.color-palette[data-v-e19fd652]{gap:var(--spacing-xs);padding:var(--spacing-xs)}.color-swatch[data-v-e19fd652]{min-width:40px;min-height:40px}.color-swatch__picker-icon[data-v-e19fd652]{font-size:1rem}}.confirm-overlay[data-v-81a290f1]{position:fixed;top:0;right:0;bottom:0;left:0;background:#2d374899;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg);animation:fadeIn-81a290f1 .2s ease-out}@keyframes fadeIn-81a290f1{0%{opacity:0}to{opacity:1}}@keyframes slideUp-81a290f1{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.confirm-dialog[data-v-81a290f1]{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--spacing-xl);max-width:360px;width:100%;box-shadow:var(--shadow-lg);animation:slideUp-81a290f1 .25s ease-out}.confirm-title[data-v-81a290f1]{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-xl);font-weight:700;color:var(--color-text);text-align:center}.confirm-message[data-v-81a290f1]{margin:0 0 var(--spacing-lg) 0;color:var(--color-text-secondary);font-size:var(--font-size-base);text-align:center;line-height:1.5}.confirm-actions[data-v-81a290f1]{display:flex;gap:var(--spacing-md);justify-content:center}.confirm-btn[data-v-81a290f1]{flex:1;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:600;cursor:pointer;border:2px solid transparent;min-height:var(--touch-target-comfortable);transition:transform var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}.confirm-btn-cancel[data-v-81a290f1]{background:var(--color-background);color:var(--color-text-secondary);border-color:var(--color-border-strong)}.confirm-btn-cancel[data-v-81a290f1]:hover{background:var(--color-border);color:var(--color-text);transform:translateY(-1px)}.confirm-btn-cancel[data-v-81a290f1]:active{transform:translateY(0)}.confirm-btn-confirm[data-v-81a290f1]{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:var(--color-text-on-primary);box-shadow:var(--shadow-sm)}.confirm-btn-confirm[data-v-81a290f1]:hover{background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--color-primary) 100%);transform:translateY(-2px);box-shadow:var(--shadow-md)}.confirm-btn-confirm[data-v-81a290f1]:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.confirm-btn[data-v-81a290f1]:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}@media (max-width: 400px){.confirm-dialog[data-v-81a290f1]{padding:var(--spacing-lg);max-width:calc(100vw - var(--spacing-lg) * 2)}.confirm-actions[data-v-81a290f1]{flex-direction:column}.confirm-btn[data-v-81a290f1]{width:100%}}.template-library-overlay[data-v-d5a61cf9]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md)}.template-library[data-v-d5a61cf9]{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.template-library__header[data-v-d5a61cf9]{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);background:linear-gradient(135deg,#e0e7ff,#c7d2fe)}.template-library__title[data-v-d5a61cf9]{margin:0;font-size:var(--font-size-xl);font-weight:700;color:var(--color-text)}.template-library__close[data-v-d5a61cf9]{width:36px;height:36px;border:none;background:var(--color-surface);border-radius:var(--radius-full);font-size:var(--font-size-lg);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.template-library__close[data-v-d5a61cf9]:hover{background:var(--color-error);color:#fff}.template-library__tabs[data-v-d5a61cf9]{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--color-border);background:var(--color-background)}.tab-btn[data-v-d5a61cf9]{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:2px solid transparent;background:var(--color-surface);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;white-space:nowrap;transition:all var(--transition-fast)}.tab-btn[data-v-d5a61cf9]:hover{border-color:var(--color-primary-light);background:var(--color-primary-light)}.tab-btn.active[data-v-d5a61cf9]{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.tab-icon[data-v-d5a61cf9]{font-size:var(--font-size-base)}.template-library__content[data-v-d5a61cf9]{flex:1;overflow-y:auto;padding:var(--spacing-md)}.template-grid[data-v-d5a61cf9]{display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(2,auto);gap:var(--spacing-md)}@media (max-width: 700px){.template-grid[data-v-d5a61cf9]{grid-template-columns:repeat(3,1fr)}}@media (max-width: 500px){.template-grid[data-v-d5a61cf9]{grid-template-columns:repeat(2,1fr)}}.template-card[data-v-d5a61cf9]{display:flex;flex-direction:column;background:var(--color-surface);border:3px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-sm);cursor:pointer;transition:all var(--transition-fast)}.template-card[data-v-d5a61cf9]:hover{border-color:var(--color-primary-light);transform:translateY(-2px);box-shadow:var(--shadow-md)}.template-card.selected[data-v-d5a61cf9]{border-color:var(--color-primary);background:var(--color-primary-light);box-shadow:0 0 0 3px #6c63ff4d}.template-card__preview[data-v-d5a61cf9]{aspect-ratio:1;background:#fff;border-radius:var(--radius-sm);overflow:hidden;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border)}.template-card__canvas[data-v-d5a61cf9]{width:100%;height:100%;object-fit:contain}.template-card__info[data-v-d5a61cf9]{display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding-top:var(--spacing-sm)}.template-card__icon[data-v-d5a61cf9]{font-size:var(--font-size-lg)}.template-card__name[data-v-d5a61cf9]{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text)}.template-library__footer[data-v-d5a61cf9]{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-border);background:var(--color-background)}.modal-enter-active[data-v-d5a61cf9],.modal-leave-active[data-v-d5a61cf9]{transition:opacity .2s ease}.modal-enter-active .template-library[data-v-d5a61cf9],.modal-leave-active .template-library[data-v-d5a61cf9]{transition:transform .2s ease,opacity .2s ease}.modal-enter-from[data-v-d5a61cf9],.modal-leave-to[data-v-d5a61cf9]{opacity:0}.modal-enter-from .template-library[data-v-d5a61cf9],.modal-leave-to .template-library[data-v-d5a61cf9]{transform:scale(.95);opacity:0}@media (max-width: 640px){.template-library-overlay[data-v-d5a61cf9]{padding:0}.template-library[data-v-d5a61cf9]{max-width:100%;max-height:100%;height:100%;border-radius:0}.template-library__header[data-v-d5a61cf9]{padding:var(--spacing-sm) var(--spacing-md)}.template-library__title[data-v-d5a61cf9]{font-size:var(--font-size-lg)}.template-grid[data-v-d5a61cf9]{grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.tab-label[data-v-d5a61cf9]{display:none}.tab-btn[data-v-d5a61cf9]{padding:var(--spacing-sm)}.tab-icon[data-v-d5a61cf9]{font-size:var(--font-size-lg)}}.stamp-picker[data-v-f5831cbf]{display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-md);background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:var(--radius-md);border:2px solid var(--color-accent-dark);overflow:hidden}.stamp-picker__tabs[data-v-f5831cbf]{display:flex;justify-content:center;gap:var(--spacing-xs);flex-wrap:wrap;padding:2px}.tab-btn[data-v-f5831cbf]{width:32px;height:32px;border:2px solid transparent;background:var(--color-surface);border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.tab-btn[data-v-f5831cbf]:hover{border-color:var(--color-primary-light);background:var(--color-primary-light)}.tab-btn.active[data-v-f5831cbf]{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.stamp-picker__grid[data-v-f5831cbf]{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-xs);padding:4px;background:#ffffff80;border-radius:var(--radius-sm)}.stamp-btn[data-v-f5831cbf]{aspect-ratio:1;width:100%;border:2px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-md);font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.stamp-btn[data-v-f5831cbf]:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.stamp-btn.active[data-v-f5831cbf]{border-color:var(--color-primary);background:var(--color-primary-light);box-shadow:inset 0 0 0 2px #6c63ff4d}.stamp-icon[data-v-f5831cbf]{line-height:1}.stamp-picker__sizes[data-v-f5831cbf]{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.size-label[data-v-f5831cbf]{font-size:var(--font-size-xs);font-weight:600;color:#92400e}.size-btn[data-v-f5831cbf]{width:32px;height:28px;border:2px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:700;cursor:pointer;transition:all var(--transition-fast)}.size-btn[data-v-f5831cbf]:hover{border-color:var(--color-primary-light);background:var(--color-primary-light)}.size-btn.active[data-v-f5831cbf]{border-color:var(--color-primary);background:var(--color-primary);color:#fff}@media (max-width: 640px){.stamp-picker__grid[data-v-f5831cbf]{grid-template-columns:repeat(3,1fr)}.stamp-btn[data-v-f5831cbf]{font-size:1.1rem}.tab-btn[data-v-f5831cbf]{width:28px;height:28px;font-size:var(--font-size-xs)}}.magic-generator[data-v-740c95ae]{display:flex;flex-direction:column;gap:var(--spacing-sm);padding:var(--spacing-sm);background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:var(--radius-md);border:2px solid #f59e0b}.style-row[data-v-740c95ae]{display:flex;gap:var(--spacing-xs)}.style-btn[data-v-740c95ae]{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:6px;border:2px solid #fcd34d;border-radius:var(--radius-md);background:#fff;cursor:pointer;transition:all var(--transition-fast);font-family:inherit;min-width:0}.style-btn[data-v-740c95ae]:hover{border-color:#f59e0b;background:#fffbeb}.style-btn.active[data-v-740c95ae]{border-color:#d97706;background:linear-gradient(135deg,#fef3c7,#fde68a);box-shadow:0 2px 6px #d977064d}.style-icon[data-v-740c95ae]{font-size:.9rem;flex-shrink:0}.style-name[data-v-740c95ae]{font-size:10px;font-weight:600;color:#92400e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.detail-row[data-v-740c95ae]{display:flex;align-items:center;gap:var(--spacing-xs);padding:4px 8px;background:#ffffff80;border-radius:var(--radius-sm)}.detail-label[data-v-740c95ae]{font-size:11px;font-weight:600;color:#92400e;min-width:50px}.detail-slider[data-v-740c95ae]{flex:1;height:6px;border-radius:3px;background:linear-gradient(to right,#86efac,#fde047,#fdba74,#fca5a5);outline:none;-webkit-appearance:none;cursor:pointer}.detail-slider[data-v-740c95ae]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:#fff;border:2px solid #92400e;box-shadow:0 1px 3px #0003;cursor:grab}.detail-slider[data-v-740c95ae]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#fff;border:2px solid #92400e;box-shadow:0 1px 3px #0003;cursor:grab}.shape-count[data-v-740c95ae]{font-size:10px;font-weight:600;color:#b45309;min-width:28px;text-align:right}.generate-row[data-v-740c95ae]{display:flex;gap:var(--spacing-xs)}.generate-btn[data-v-740c95ae]{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:8px 12px;border:none;border-radius:var(--radius-md);background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;font-size:13px;font-weight:700;cursor:pointer;transition:all var(--transition-fast);font-family:inherit;box-shadow:0 2px 8px #d9770666}.generate-btn[data-v-740c95ae]:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #d9770680}.generate-btn[data-v-740c95ae]:disabled{opacity:.7;cursor:not-allowed}.regenerate-btn[data-v-740c95ae]{display:flex;align-items:center;justify-content:center;width:36px;padding:8px;border:2px solid #d97706;border-radius:var(--radius-md);background:#fff;font-size:1rem;cursor:pointer;transition:all var(--transition-fast)}.regenerate-btn[data-v-740c95ae]:hover:not(:disabled){background:#fef3c7;transform:rotate(180deg)}.regenerate-btn[data-v-740c95ae]:disabled{opacity:.5}.btn-icon[data-v-740c95ae]{font-size:1rem}.btn-text[data-v-740c95ae]{text-shadow:0 1px 2px rgba(0,0,0,.1)}.preview-overlay[data-v-a56de3f7]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md)}.preview-modal[data-v-a56de3f7]{background:#fff;border-radius:var(--radius-xl);box-shadow:0 20px 60px #0000004d;max-width:480px;width:100%;overflow:hidden;animation:modalEnter-a56de3f7 .3s ease-out}@keyframes modalEnter-a56de3f7{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.preview-header[data-v-a56de3f7]{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background:linear-gradient(135deg,#fef3c7,#fde68a);border-bottom:2px solid #f59e0b}.preview-title[data-v-a56de3f7]{margin:0;font-size:var(--font-size-lg);font-weight:700;color:#92400e;display:flex;align-items:center;gap:var(--spacing-sm)}.title-icon[data-v-a56de3f7]{font-size:1.5rem}.close-btn[data-v-a56de3f7]{width:32px;height:32px;border:none;border-radius:var(--radius-full);background:#92400e1a;color:#92400e;font-size:var(--font-size-lg);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.close-btn[data-v-a56de3f7]:hover{background:#92400e33}.preview-canvas-container[data-v-a56de3f7]{position:relative;background:#f5f5f5;display:flex;align-items:center;justify-content:center;padding:var(--spacing-md)}.preview-canvas[data-v-a56de3f7]{background:#fff;border-radius:var(--radius-md);box-shadow:0 4px 16px #0000001a;max-width:100%;height:auto}.loading-overlay[data-v-a56de3f7]{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffffe6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm)}.loading-spinner[data-v-a56de3f7]{font-size:2.5rem;animation:spin-a56de3f7 1s ease-in-out infinite}@keyframes spin-a56de3f7{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.1)}to{transform:rotate(360deg) scale(1)}}.loading-text[data-v-a56de3f7]{font-size:var(--font-size-sm);font-weight:600;color:#92400e}.preview-info[data-v-a56de3f7]{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:#f9fafb;border-top:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb}.info-item[data-v-a56de3f7]{display:flex;align-items:center;gap:4px;font-size:var(--font-size-xs);color:#6b7280}.info-icon[data-v-a56de3f7]{font-size:1rem}.preview-actions[data-v-a56de3f7]{display:flex;gap:var(--spacing-sm);padding:var(--spacing-md)}.action-btn[data-v-a56de3f7]{flex:1;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:2px solid;border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:all var(--transition-fast);font-family:inherit}.action-icon[data-v-a56de3f7]{font-size:1.2rem}.try-again-btn[data-v-a56de3f7]{background:#fff;border-color:#d1d5db;color:#374151}.try-again-btn[data-v-a56de3f7]:hover{border-color:#9ca3af;background:#f9fafb}.use-btn[data-v-a56de3f7]{background:linear-gradient(135deg,#10b981,#059669);border-color:#059669;color:#fff;box-shadow:0 4px 12px #0596694d}.use-btn[data-v-a56de3f7]:hover{transform:translateY(-1px);box-shadow:0 6px 16px #05966966}.modal-enter-active[data-v-a56de3f7],.modal-leave-active[data-v-a56de3f7]{transition:opacity .2s ease}.modal-enter-from[data-v-a56de3f7],.modal-leave-to[data-v-a56de3f7]{opacity:0}@media (max-width: 480px){.preview-modal[data-v-a56de3f7]{max-width:100%;margin:var(--spacing-sm)}.preview-canvas-container[data-v-a56de3f7]{padding:var(--spacing-sm)}.preview-info[data-v-a56de3f7]{flex-wrap:wrap;gap:var(--spacing-sm)}}.background-selector[data-v-fc16efd2]{display:flex;flex-direction:column;gap:var(--spacing-sm)}.type-selector[data-v-fc16efd2]{display:flex;flex-wrap:wrap;gap:4px}.type-btn[data-v-fc16efd2]{flex:1;min-width:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 4px;border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;font-family:inherit;transition:all var(--transition-fast)}.type-btn[data-v-fc16efd2]:hover{border-color:var(--color-primary-light);background:var(--color-background)}.type-btn.active[data-v-fc16efd2]{border-color:var(--color-primary);background:linear-gradient(135deg,#e0e7ff,#c7d2fe)}.type-icon[data-v-fc16efd2]{font-size:1rem;line-height:1}.type-label[data-v-fc16efd2]{font-size:9px;font-weight:600;color:var(--color-text-secondary)}.type-btn.active .type-label[data-v-fc16efd2]{color:var(--color-primary)}.preset-grid[data-v-fc16efd2]{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;max-height:200px;overflow-y:auto;padding-right:2px}.preset-btn[data-v-fc16efd2]{position:relative;aspect-ratio:1.5;min-height:40px;border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;overflow:hidden;transition:all var(--transition-fast);display:flex;align-items:flex-end;justify-content:center;padding:4px}.preset-btn[data-v-fc16efd2]:hover{border-color:var(--color-primary-light);transform:scale(1.02);box-shadow:var(--shadow-md)}.preset-btn.active[data-v-fc16efd2]{border-color:var(--color-primary);border-width:3px;box-shadow:0 0 0 2px #6c63ff33}.preset-name[data-v-fc16efd2]{font-size:9px;font-weight:600;color:#333;background:#ffffffd9;padding:2px 6px;border-radius:var(--radius-sm);text-shadow:0 1px 1px rgba(255,255,255,.5);max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.animated-badge[data-v-fc16efd2]{position:absolute;top:2px;right:2px;font-size:10px;background:#ffffffe6;border-radius:50%;width:16px;height:16px;display:flex;align-items:center;justify-content:center}.reset-btn[data-v-fc16efd2]{width:100%;padding:8px;border:1px dashed var(--color-border);border-radius:var(--radius-md);background:transparent;cursor:pointer;font-family:inherit;font-size:var(--font-size-xs);font-weight:500;color:var(--color-text-secondary);transition:all var(--transition-fast)}.reset-btn[data-v-fc16efd2]:hover{border-color:var(--color-accent);color:var(--color-text);background:var(--color-background)}.preset-grid[data-v-fc16efd2]::-webkit-scrollbar{width:4px}.preset-grid[data-v-fc16efd2]::-webkit-scrollbar-track{background:transparent}.preset-grid[data-v-fc16efd2]::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:2px}.preset-grid[data-v-fc16efd2]::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary)}@media (max-width: 640px){.type-selector[data-v-fc16efd2]{gap:2px}.type-btn[data-v-fc16efd2]{min-width:40px;padding:4px 2px}.type-icon[data-v-fc16efd2]{font-size:.9rem}.type-label[data-v-fc16efd2]{font-size:8px}.preset-grid[data-v-fc16efd2]{grid-template-columns:repeat(2,1fr);gap:4px;max-height:150px}.preset-btn[data-v-fc16efd2]{min-height:35px}.preset-name[data-v-fc16efd2]{font-size:8px;padding:1px 4px}}.welcome-overlay[data-v-19b843f8]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.welcome-modal[data-v-19b843f8]{background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-width:540px;width:100%;max-height:90vh;overflow-y:auto;animation:modalSlideIn-19b843f8 .3s ease-out}@keyframes modalSlideIn-19b843f8{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.welcome-header[data-v-19b843f8]{background:linear-gradient(135deg,#38bdf8,#0ea5e9);padding:var(--spacing-lg);text-align:center;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.welcome-icon[data-v-19b843f8]{font-size:3rem;display:block;margin-bottom:var(--spacing-sm);animation:bounce-19b843f8 2s ease-in-out infinite}@keyframes bounce-19b843f8{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.welcome-title[data-v-19b843f8]{margin:0;color:#fff;font-size:var(--font-size-2xl);font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.1)}.welcome-content[data-v-19b843f8]{padding:var(--spacing-lg)}.welcome-intro[data-v-19b843f8]{text-align:center;color:var(--color-text-secondary);margin:0 0 var(--spacing-lg) 0;font-size:var(--font-size-base)}.welcome-steps[data-v-19b843f8]{display:flex;flex-direction:column;gap:var(--spacing-md)}.step[data-v-19b843f8]{display:flex;gap:var(--spacing-md);align-items:flex-start}.step-number[data-v-19b843f8]{flex-shrink:0;width:32px;height:32px;background:linear-gradient(135deg,#38bdf8,#0ea5e9);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--font-size-base)}.step-content[data-v-19b843f8]{flex:1}.step-content h3[data-v-19b843f8]{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-base);color:var(--color-text)}.step-content p[data-v-19b843f8]{margin:0 0 var(--spacing-xs) 0;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.step-content ul[data-v-19b843f8]{margin:0;padding-left:var(--spacing-lg);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.step-content li[data-v-19b843f8]{margin-bottom:4px}.welcome-footer[data-v-19b843f8]{padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.dont-show-again[data-v-19b843f8]{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.dont-show-again input[data-v-19b843f8]{width:18px;height:18px;cursor:pointer}.welcome-actions[data-v-19b843f8]{display:flex;align-items:center;gap:var(--spacing-md)}.github-link[data-v-19b843f8]{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-text-secondary);text-decoration:none;font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);transition:all var(--transition-fast)}.github-link[data-v-19b843f8]:hover{background:var(--color-border);color:var(--color-text)}.start-btn[data-v-19b843f8]{background:linear-gradient(135deg,#38bdf8,#0ea5e9);color:#fff;border:none;padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-full);font-size:var(--font-size-base);font-weight:700;cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-md)}.start-btn[data-v-19b843f8]:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.start-btn[data-v-19b843f8]:active{transform:translateY(0)}@media (max-width: 640px){.welcome-modal[data-v-19b843f8]{max-height:85vh}.welcome-header[data-v-19b843f8]{padding:var(--spacing-md)}.welcome-icon[data-v-19b843f8]{font-size:2.5rem}.welcome-title[data-v-19b843f8]{font-size:var(--font-size-xl)}.welcome-content[data-v-19b843f8]{padding:var(--spacing-md)}.step[data-v-19b843f8]{gap:var(--spacing-sm)}.step-number[data-v-19b843f8]{width:28px;height:28px;font-size:var(--font-size-sm)}.welcome-footer[data-v-19b843f8]{flex-direction:column;gap:var(--spacing-sm)}.welcome-actions[data-v-19b843f8]{width:100%;justify-content:space-between}.start-btn[data-v-19b843f8]{flex:1}}#app{display:flex;flex-direction:column;height:100vh;height:100dvh;margin:0;padding:0;background:var(--color-background);overflow:hidden}.app-header{background:linear-gradient(135deg,var(--color-primary) 0%,#0ea5e9 100%);padding:var(--spacing-sm) var(--spacing-md);flex-shrink:0;box-shadow:var(--shadow-md);position:relative;z-index:10}.app-header__content{display:flex;justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;gap:var(--spacing-md)}.app-header__brand{display:flex;align-items:center;gap:var(--spacing-sm)}.app-header__icon{font-size:var(--font-size-2xl);line-height:1;animation:bounce 2s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.app-header__title{margin:0;font-size:var(--font-size-xl);font-weight:700;color:var(--color-text-on-dark);letter-spacing:-.5px}.mode-toggle-btn{border-radius:var(--radius-full)!important;padding:var(--spacing-sm) var(--spacing-lg)!important;font-weight:700!important;min-width:100px}.coloring-mode .app-header{background:linear-gradient(135deg,var(--color-secondary) 0%,#f472b6 100%)}.app-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.main-area{flex:1;display:flex;overflow:hidden;min-height:0;position:relative}.canvas-wrapper{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;background:var(--color-surface);border-radius:var(--radius-lg);margin:var(--spacing-sm);box-shadow:var(--shadow-lg);width:100%;height:100%}.tools-sidebar{display:flex;flex-direction:column;width:210px;min-width:190px;max-width:250px;background:var(--color-surface);border-left:2px solid var(--color-border);padding:0}.sidebar-scroll{display:flex;flex-direction:column;flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--spacing-xs);gap:var(--spacing-xs)}.overlay-sidebar--right{left:auto;right:0}.collapsible-section{border-radius:var(--radius-md);overflow:hidden}.section-header{display:flex;align-items:center;width:100%;padding:8px 10px;border:none;border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;font-family:inherit;font-size:12px;font-weight:600;color:var(--color-text);transition:all var(--transition-fast);gap:6px}.section-header:hover{background:var(--color-border)}.section-header.active{background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:#4338ca}.section-header--magic.active{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e}.section-header--templates.active{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af}.section-header--background.active{background:linear-gradient(135deg,#e0f2fe,#bae6fd);color:#0369a1}.section-icon{font-size:1rem}.section-header .section-title{flex:1;text-align:left;margin:0;font-size:12px}.section-arrow{font-size:8px;opacity:.6}.section-content{padding:var(--spacing-xs);display:flex;flex-direction:column;gap:var(--spacing-xs)}.sidebar-actions{padding:var(--spacing-xs);border-top:1px solid var(--color-border);margin-top:auto;background:var(--color-surface)}.sidebar-actions .action-row{display:flex;gap:4px;justify-content:center}.sidebar-actions .action-row>*{flex:1;min-width:0;padding:6px 4px!important;font-size:1rem!important}.sidebar-section{display:flex;flex-direction:column;gap:var(--spacing-sm)}.sidebar-section--actions{gap:var(--spacing-sm)}.section-title{margin:0;font-size:var(--font-size-sm);font-weight:700;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.tool-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.tool-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm)!important;min-height:64px!important}.tool-btn--wide{width:100%;flex-direction:row;gap:var(--spacing-sm);min-height:var(--touch-target-comfortable)!important}.tool-icon{font-size:1.5rem;line-height:1}.tool-label{font-size:var(--font-size-xs);font-weight:600;color:inherit}.action-row{display:flex;gap:var(--spacing-sm)}.action-row>*{flex:1}.eraser-btn{background:linear-gradient(135deg,#fee2e2,#fecaca)!important;border:2px solid #f87171!important}.eraser-btn:hover{background:linear-gradient(135deg,#fecaca,#fca5a5)!important}.eraser-btn.active{background:linear-gradient(135deg,#fca5a5,#f87171)!important;border-color:#dc2626!important}.stamp-btn{background:linear-gradient(135deg,#e0f2fe,#bae6fd)!important;border:2px solid #38bdf8!important}.stamp-btn:hover{background:linear-gradient(135deg,#bae6fd,#7dd3fc)!important}.stamp-btn.active{background:linear-gradient(135deg,#7dd3fc,#38bdf8)!important;border-color:#0284c7!important}.template-button{width:100%;font-size:var(--font-size-sm)!important}.magic-controls{display:flex;flex-direction:column;gap:var(--spacing-md)}.slider-container{display:flex;flex-direction:column;gap:var(--spacing-xs)}.slider-header{display:flex;justify-content:space-between;align-items:center}.slider-label{font-weight:600;font-size:var(--font-size-sm);color:#92400e}.shape-count{font-size:var(--font-size-xs);color:#b45309;font-weight:500}.magic-slider{width:100%;height:10px;border-radius:var(--radius-full);background:linear-gradient(to right,#86efac,#fde047,#fdba74,#fca5a5);outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.magic-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;background:var(--color-surface);cursor:grab;border:3px solid #92400e;box-shadow:var(--shadow-md);transition:transform var(--transition-fast)}.magic-slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.magic-slider::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(.95)}.magic-slider::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:var(--color-surface);cursor:grab;border:3px solid #92400e;box-shadow:var(--shadow-md)}.generate-button{width:100%;font-size:var(--font-size-base)!important}.coloring-sidebar{display:flex;flex-direction:column;width:90px;background:linear-gradient(180deg,#fdf2f8,#fce7f3);border-right:2px solid #fbcfe8;padding:var(--spacing-md) var(--spacing-sm);gap:var(--spacing-md);overflow-y:auto;overflow-x:hidden;align-items:center}.overlay-sidebar{position:absolute;top:0;bottom:0;left:0;z-index:10;box-shadow:var(--shadow-lg)}.resize-handle{position:absolute;top:0;bottom:0;width:8px;cursor:ew-resize;background:transparent;transition:background-color var(--transition-fast);z-index:11}.resize-handle:hover,.resize-handle:active{background:#6c63ff33}.resize-handle--right{right:-4px}.resize-handle--left{left:-4px}.coloring-sidebar .save-btn{margin-top:auto;width:100%;font-size:var(--font-size-sm)!important;padding:var(--spacing-sm)!important}@media (max-width: 900px){.tools-sidebar{width:190px;min-width:170px}.tool-btn{min-height:48px!important}.tool-icon{font-size:1.1rem}.section-header{padding:6px 8px;font-size:11px}}@media (max-width: 640px){.app-header{padding:var(--spacing-xs) var(--spacing-sm)}.app-header__title{font-size:var(--font-size-lg)}.app-header__icon{font-size:var(--font-size-xl)}.mode-toggle-btn{padding:var(--spacing-xs) var(--spacing-md)!important;font-size:var(--font-size-sm)!important;min-width:80px}.main-area{flex-direction:column}.canvas-wrapper{flex:1;min-height:40vh;margin:var(--spacing-xs);border-radius:var(--radius-md)}.tools-sidebar.overlay-sidebar{width:180px;min-width:160px;max-width:200px}.sidebar-scroll{padding:4px;gap:4px}.section-header{padding:6px;font-size:10px;gap:4px}.section-icon{font-size:.9rem}.section-content,.sidebar-actions{padding:4px}.sidebar-actions .action-row>*{padding:4px!important;font-size:.9rem!important}.sidebar-section{flex:1;min-width:140px}.sidebar-section--actions{flex-direction:row;flex-wrap:wrap;min-width:100%}.action-row{flex:1;min-width:140px}.tool-grid{grid-template-columns:repeat(3,1fr)}.tool-btn{min-height:var(--touch-target-comfortable)!important;padding:var(--spacing-xs)!important}.tool-icon{font-size:1.25rem}.tool-label{display:none}.coloring-sidebar.overlay-sidebar{width:70px!important;border-right:2px solid #fbcfe8;border-bottom:none}.coloring-sidebar .resize-handle{display:none}.coloring-sidebar .save-btn{padding:var(--spacing-xs) var(--spacing-sm)!important;font-size:var(--font-size-xs)!important}}@media (max-width: 380px){.app-header__brand{gap:var(--spacing-xs)}.app-header__title{font-size:var(--font-size-base)}.tool-grid{grid-template-columns:repeat(2,1fr)}.sidebar-section{min-width:100%}}.info-btn{position:fixed;bottom:var(--spacing-md);right:var(--spacing-md);width:40px;height:40px;border-radius:50%;background:var(--color-surface);border:2px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);transition:all var(--transition-fast);z-index:50}.info-btn:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff;transform:scale(1.1)}.info-btn:active{transform:scale(.95)}@media (max-width: 640px){.info-btn{width:36px;height:36px;bottom:var(--spacing-sm);right:var(--spacing-sm)}}
