:root{--color-bg:#f5f5f5;--color-surface:#fff;--color-text:#333;--color-text-muted:#666;--color-primary:#06c;--color-primary-hover:#0052a3;--color-secondary:#555;--color-secondary-hover:#444;--color-border:#ddd;--color-focus:#06c;--shadow-sm:0 1px 3px #0000001a;--shadow-md:0 4px 6px #0000001a;--radius-sm:4px;--radius-md:8px;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;color:var(--color-text);background-color:var(--color-bg);font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;font-weight:400;line-height:1.5}*,:before,:after{box-sizing:border-box}html{font-size:16px}body{min-height:100vh;margin:0;padding:0}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.loading{opacity:.6;pointer-events:none}.toast{bottom:var(--spacing-lg);right:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg);background:var(--color-text);color:#fff;border-radius:var(--radius-sm);box-shadow:var(--shadow-md);z-index:1000;animation:.3s slideIn;position:fixed}.toast.success{background:#28a745}.toast.error{background:#dc3545}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.container{max-width:1400px;padding:var(--spacing-md);margin:0 auto}.skip-link{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);z-index:2000;padding:8px 12px;transition:transform .15s;position:absolute;top:8px;left:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.header{text-align:center;margin-bottom:var(--spacing-xl)}.header h1{margin:0 0 var(--spacing-xs);color:var(--color-text);font-size:2rem;font-weight:600}.header .subtitle{color:var(--color-text-muted);margin:0;font-size:1rem}.editor{gap:var(--spacing-xl);grid-template-columns:360px 1fr;align-items:start;display:grid}@media (width<=900px){.editor{grid-template-columns:1fr}}.controls{background:var(--color-surface);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.control-group{margin-bottom:var(--spacing-lg)}.control-group:last-of-type{margin-bottom:var(--spacing-md)}.control-group label{margin-bottom:var(--spacing-xs);color:var(--color-text);font-weight:500;display:block}.helper-text{margin-top:var(--spacing-xs);color:var(--color-text-muted);font-size:.85rem;display:block}input[type=text],select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-size:1rem;transition:border-color .15s,box-shadow .15s}input[type=text]:focus,select:focus{border-color:var(--color-focus);outline:none;box-shadow:0 0 0 3px #06c3}input[type=text]::placeholder{color:var(--color-text-muted)}.logo-selector{margin-top:var(--spacing-sm)}.logo-options{gap:var(--spacing-sm);margin-bottom:var(--spacing-md);flex-wrap:wrap;display:flex}.logo-option{width:48px;height:48px;padding:var(--spacing-xs);border:2px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;transition:border-color .15s,transform .15s}.logo-option:hover{border-color:var(--color-primary);transform:scale(1.05)}.logo-option:focus{border-color:var(--color-focus);outline:none;box-shadow:0 0 0 3px #06c3}.logo-option.selected{border-color:var(--color-primary);background:#0066cc1a}.logo-option img{object-fit:contain;width:100%;height:100%}.selected-logos{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--color-bg);border-radius:var(--radius-sm);min-height:48px;display:flex}.selected-logos .label{color:var(--color-text-muted);font-size:.85rem}.logo-preview-list{gap:var(--spacing-xs);flex-wrap:wrap;display:flex}.logo-preview-list .placeholder{color:var(--color-text-muted);font-size:.85rem;font-style:italic}.logo-preview-item{width:32px;height:32px;box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;padding:4px;position:relative}.logo-preview-item img{object-fit:contain;width:100%;height:100%}.logo-preview-item .remove-btn{color:#fff;cursor:pointer;background:#dc3545;border:none;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;padding:0;font-size:12px;line-height:1;display:flex;position:absolute;top:-6px;right:-6px}.logo-preview-item .remove-btn:hover{background:#c82333}.logo-upload{margin-top:var(--spacing-md)}.upload-row{align-items:center;gap:var(--spacing-sm);display:flex}.upload-label-text{color:var(--color-text-muted);font-size:.9rem}.upload-button{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem;transition:background .15s}.upload-button:hover{background:var(--color-border)}.upload-button:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.btn{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;font-size:1rem;font-weight:500;transition:background-color .15s,transform .1s;display:inline-flex}.btn:focus{outline:none;box-shadow:0 0 0 3px #0066cc4d}.btn:active{transform:scale(.98)}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-hover)}.btn-secondary{background:var(--color-secondary);color:#fff}.btn-secondary:hover{background:var(--color-secondary-hover)}.export-actions{gap:var(--spacing-sm);margin-top:var(--spacing-lg);display:flex}.export-actions .btn{flex:1}.preview-section{top:var(--spacing-md);position:sticky}.preview-container{background:var(--color-surface);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.preview{width:100%;aspect-ratio:var(--preview-aspect,1920 / 1080);border-radius:var(--radius-sm);background:#1a1a2e;justify-content:center;align-items:center;display:flex;overflow:hidden}.preview svg{width:100%;height:100%}.btn-clipboard{align-items:center;gap:var(--spacing-xs);margin:var(--spacing-sm) auto 0;padding:var(--spacing-xs) var(--spacing-md);color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem;transition:color .15s,border-color .15s;display:flex}.btn-clipboard:hover{color:var(--color-text);border-color:var(--color-primary)}.preview-help{margin-top:var(--spacing-md);background:var(--color-surface);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.preview-help-title{margin:0 0 var(--spacing-sm);color:var(--color-text);font-size:1rem;font-weight:600}.preview-help-list{color:var(--color-text-muted);margin:0;padding-left:1.1rem}.preview-help-list li{margin:.25rem 0}.preview-help-links{margin:var(--spacing-md) 0 0}.github-link{color:var(--color-primary);align-items:center;gap:6px;font-weight:500;text-decoration:none;display:inline-flex}.github-link:hover{text-decoration:underline}.github-icon{flex:0 0 16px;width:16px;height:16px}.github-link:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:4px}.footer{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border);text-align:center;color:var(--color-text-muted);font-size:.9rem}.footer a{color:var(--color-primary);text-decoration:none}.footer a:hover{text-decoration:underline}.empty-state{color:#ffffff80;text-align:center;height:100%;padding:var(--spacing-lg);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state svg{width:48px;height:48px;margin-bottom:var(--spacing-md);opacity:.5}
