:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg:#f7f5f2;--panel-bg:#fff;--border:#ddd8d0;--text:#2a2a2a;--muted:#6b6b6b;--accent:#c0392b;--accent-2:#2c74b3}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif}.app{max-width:1200px;margin:0 auto;padding:1.5rem}.app-header{text-align:center;margin-bottom:1.5rem}.app-header h1{margin-bottom:.25rem}.app-header p{color:var(--muted);margin-top:0}.app-footer{text-align:center;color:var(--muted);margin-top:2rem;font-size:.85rem}.setup-flow{flex-direction:column;gap:1rem;max-width:640px;margin:0 auto;display:flex}.panel{background:var(--panel-bg);border:1px solid var(--border);border-radius:10px;padding:1.25rem}.panel h2{margin-top:0;font-size:1.1rem}.dropzone{border:2px dashed var(--border);text-align:center;cursor:pointer;border-radius:8px;padding:2rem 1rem;transition:border-color .15s,background .15s}.dropzone:hover,.dropzone--active{border-color:var(--accent-2);background:#2c74b30d}.dropzone__hint{color:var(--muted);font-size:.85rem}.error-text{color:var(--accent);font-weight:600}.warning-text{color:#8a5a00;background:#e6a0141f;border:1px solid #e6a01466;border-radius:6px;padding:.5rem .75rem;font-size:.85rem}.hint{color:var(--muted);font-size:.9rem}.checkbox-label{cursor:pointer;align-items:center;flex-direction:row!important;gap:.5rem!important}.primary-btn{background:var(--accent-2);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.6rem 1.2rem;font-size:1rem}.primary-btn:disabled{opacity:.5;cursor:not-allowed}.secondary-btn{background:var(--panel-bg);color:var(--text);border:1px solid var(--border);cursor:pointer;border-radius:8px;padding:.5rem 1rem}.danger-btn{color:var(--accent);border-color:var(--accent)}.editor-layout{grid-template-columns:1fr 300px;align-items:start;gap:1.5rem;display:grid}.editor-canvas-area{min-width:0}.toolbar{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.toolbar button{border:1px solid var(--border);background:var(--panel-bg);color:var(--text);cursor:pointer;border-radius:6px;padding:.45rem .8rem;font-size:.85rem}.toggle-btn--active{border-color:var(--accent-2);background:#2c74b326}.toolbar-spacer{flex:1}.editor-sidebar{flex-direction:column;gap:1rem;display:flex}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=900px){.editor-layout{grid-template-columns:1fr}}.home{max-width:900px}.app-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;display:grid}.app-card{background:var(--panel-bg);border:1px solid var(--border);color:var(--text);border-radius:12px;flex-direction:column;gap:.5rem;padding:1.5rem;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.app-card:hover,.app-card:focus-visible{border-color:var(--accent-2);outline:none;transform:translateY(-2px);box-shadow:0 6px 20px #00000012}.app-card h2{margin:.25rem 0 0;font-size:1.2rem}.app-card p{color:var(--muted);flex:1;margin:0;line-height:1.5}.app-card__badge{border-radius:12px;place-items:center;width:48px;height:48px;display:grid}.app-card__badge svg{width:28px;height:28px}.app-card__badge--perler{background:#c0392b1a}.app-card__badge--perler circle{fill:none;stroke:var(--accent);stroke-width:1.6px}.app-card__badge--tattoo{background:#2c74b31a}.app-card__badge--tattoo path{fill:none;stroke:var(--accent-2);stroke-width:2px;stroke-linecap:round}.app-card__badge--pinplot{background:#0d7a721a}.app-card__badge--pinplot rect{fill:none;stroke:#0d7a72;stroke-width:1.4px}.app-card__badge--pinplot rect.fill{fill:#0d7a72}.app-card__cta{color:var(--accent-2);margin-top:.5rem;font-size:.9rem;font-weight:600}
