*{box-sizing:border-box;margin:0;padding:0}html,body,#root{overscroll-behavior:none;height:100%}body{color:#e8e8ea;-webkit-user-select:none;user-select:none;background:#111114;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:none;border-radius:8px}.gallery{padding:max(16px, env(safe-area-inset-top)) 16px 16px;max-width:1100px;margin:0 auto}.gallery header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.gallery h1{letter-spacing:-.5px;font-size:28px}.gallery h1 .minus{color:#e5484d}.primary{color:#fff;background:#e5484d;padding:10px 18px;font-weight:600}.hint{color:#7c7c85;text-align:center;padding:40px 0}.banner{color:#ff9a9e;background:#3a1d1f;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:14px}.grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.card{cursor:pointer;background:#fff;border-radius:12px;transition:transform .1s;overflow:hidden}.card:active{transform:scale(.97)}.card svg{aspect-ratio:4/3;background:#fff;width:100%;display:block}.card-meta{background:#1c1c21;justify-content:space-between;align-items:center;padding:8px 12px;font-size:14px;display:flex}.ghost{color:#a0a0ab;padding:6px 10px}.ghost:hover:not(:disabled){color:#fff;background:#26262c}.ghost:disabled{opacity:.3;cursor:default}.editor{flex-direction:column;height:100%;display:flex}.toolbar{padding:max(8px, env(safe-area-inset-top)) 10px 8px;background:#1c1c21;flex-wrap:wrap;align-items:center;gap:6px;display:flex}.name{color:#e8e8ea;width:130px;font:inherit;background:#26262c;border:none;border-radius:8px;outline:none;padding:8px 10px}.swatches,.widths{align-items:center;gap:4px;display:flex}.swatch{border:2px solid #0000;border-radius:50%;width:26px;height:26px}.swatch.active{border-color:#fff}.dot{justify-content:center;align-items:center;width:30px;height:30px;display:flex}.dot span{background:#a0a0ab;border-radius:50%;display:block}.dot.active span{background:#fff}.status{text-align:center;width:20px;margin-left:auto;font-size:14px}.status.saved{color:#30a46c}.status.error{color:#e5484d}.status.dirty,.status.saving{color:#7c7c85}.canvas{touch-action:none;background:#111114;flex:1;width:100%}
