diff --git a/public/global.css b/public/global.css
index fd5ace3..6add607 100644
--- a/public/global.css
+++ b/public/global.css
@@ -60,13 +60,70 @@ button:hover {
font-size: 1rem;
}
-.copy-btn {
- background-color: var(--secondary-color);
- margin-right: 0.5rem;
+.copy-btn,
+.copy-group .png-btn {
+ background-color: var(--secondary-color, #2c3e50);
+ color: #fff;
+ font-weight: 500;
+ letter-spacing: 0.02em;
+ min-width: 2.5em;
+ border-radius: 0;
+ margin: 0;
+ padding: 0.4em 1em;
+ font-size: 0.95em;
+ border-right: 1px solid var(--color-border, #ddd);
+ transition: background 0.2s, color 0.2s;
}
-.download-btn {
- background-color: #27ae60;
+.copy-btn:last-child,
+.copy-group .png-btn:last-child {
+ border-right: none;
+}
+
+.copy-btn:focus,
+.copy-btn:hover,
+.copy-group .png-btn:focus,
+.copy-group .png-btn:hover {
+ background: #222;
+ color: #fff;
+ outline: none;
+}
+
+.download-btn,
+.download-group .png-btn {
+ background: #27ae60;
+ color: #fff;
+ font-weight: 500;
+ letter-spacing: 0.02em;
+ min-width: 2.5em;
+ border-radius: 0;
+ margin: 0;
+ padding: 0.4em 1em;
+ font-size: 0.95em;
+ border-right: 1px solid var(--color-border, #ddd);
+ transition: background 0.2s, color 0.2s;
+}
+
+.download-btn:last-child,
+.download-group .png-btn:last-child {
+ border-right: none;
+}
+
+.download-btn:focus,
+.download-btn:hover,
+.download-group .png-btn:focus,
+.download-group .png-btn:hover {
+ background: #219150;
+ color: #fff;
+ outline: none;
+}
+
+.copy-group, .download-group {
+ display: inline-flex;
+ border-radius: 6px;
+ overflow: hidden;
+ box-shadow: 0 1px 2px rgba(0,0,0,0.03);
+ margin-right: 0.5em;
}
/* Direct logo image size constraints that will work with any component structure */
diff --git a/src/App.svelte b/src/App.svelte
index e39dd83..07eeca5 100644
--- a/src/App.svelte
+++ b/src/App.svelte
@@ -52,7 +52,6 @@
});
$: {
- console.log('[theme] reactive theme:', theme);
applyTheme();
}
@@ -108,7 +107,6 @@
effectiveTheme = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';
}
document.documentElement.setAttribute('data-theme', effectiveTheme);
- console.log('[theme] theme:', theme, 'effectiveTheme:', effectiveTheme);
}
function setTheme(newTheme) {
@@ -492,13 +490,6 @@
width: 100%;
}
- .logo-card, .logo-item {
- background: var(--color-card);
- color: var(--color-text);
- border: 1px solid var(--color-border);
- transition: background 0.2s, color 0.2s;
- }
-
:global(.logo-card), :global(.logo-item) {
background: var(--color-card);
color: var(--color-text);
diff --git a/src/components/LogoActions.svelte b/src/components/LogoActions.svelte
new file mode 100644
index 0000000..7ae1824
--- /dev/null
+++ b/src/components/LogoActions.svelte
@@ -0,0 +1,377 @@
+
+
+
+
+ {#if logo.format === 'SVG'}
+
+ {#if showCopyMenu}
+
+ {/if}
+ {/if}
+
+
+
+
+ {#if logo.format === 'SVG'}
+
+ {#if showDownloadMenu}
+
+ {/if}
+ {/if}
+
+
+
diff --git a/src/components/LogoGrid.svelte b/src/components/LogoGrid.svelte
index d66e172..51bf177 100644
--- a/src/components/LogoGrid.svelte
+++ b/src/components/LogoGrid.svelte
@@ -1,5 +1,6 @@
Format: {logo.format}
Format: {logo.format}