.preset-list{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.preset-btn{border:1px solid var(--border);background:var(--panel-bg);color:var(--text);cursor:pointer;border-radius:6px;padding:.4rem .7rem;font-size:.85rem}.preset-btn--active{border-color:var(--accent-2);background:#2c74b31a;font-weight:600}.field-row{flex-wrap:wrap;gap:1rem;margin-bottom:1rem;display:flex}.field-row label{color:var(--muted);flex-direction:column;gap:.25rem;font-size:.85rem;display:flex}.field-row input,.field-row select{border:1px solid var(--border);background:var(--panel-bg);width:9rem;color:var(--text);border-radius:6px;padding:.4rem;font-size:.95rem}.title-input-row{color:var(--muted);align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.85rem;display:flex}.title-input-row input{border:1px solid var(--border);background:var(--panel-bg);min-width:220px;color:var(--text);border-radius:6px;padding:.4rem .6rem;font-size:.95rem}.zoom-controls{align-items:center;gap:.25rem;display:flex}.zoom-controls button{text-align:center;width:2rem}.zoom-level{min-width:3.5rem}.canvas-scroll{border:1px solid var(--border);background:var(--panel-bg);border-radius:10px;max-height:75vh;padding:.5rem;overflow:auto}.pegboard-canvas{cursor:crosshair;image-rendering:pixelated;display:block}.swatch-grid{grid-template-columns:repeat(auto-fill,minmax(28px,1fr));gap:.35rem;display:grid}.swatch{cursor:pointer;border:2px solid #0000;border-radius:6px;width:28px;height:28px;padding:0}.swatch--selected{border-color:var(--text);box-shadow:0 0 0 2px var(--panel-bg), 0 0 0 4px var(--accent-2)}.swatch--eraser{background-color:#fff;background-image:linear-gradient(45deg,#ccc 25%,#0000 25%),linear-gradient(-45deg,#ccc 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#ccc 75%),linear-gradient(-45deg,#0000 75%,#ccc 75%);background-position:0 0,0 5px,5px -5px,-5px 0;background-size:10px 10px}.shopping-list{flex-direction:column;gap:.35rem;max-height:300px;margin-bottom:.75rem;display:flex;overflow-y:auto}.shopping-row{align-items:center;gap:.5rem;font-size:.85rem;display:flex}.shopping-swatch{border:1px solid #00000026;border-radius:3px;flex-shrink:0;width:16px;height:16px}.shopping-name{flex:1}.shopping-count{color:var(--muted);font-weight:600}@media print{.app-header,.app-footer,.toolbar,.editor-sidebar{display:none!important}.canvas-scroll{border:none;max-height:none;overflow:visible}}.eraser-btn{border:2px solid var(--border);background:var(--panel-bg);width:100%;color:var(--text);cursor:pointer;border-radius:8px;align-items:center;gap:.6rem;margin-bottom:.75rem;padding:.45rem .6rem;font-size:.9rem;display:flex}.eraser-btn--selected{border-color:var(--accent-2);background:#2c74b31a;font-weight:600}.eraser-btn .swatch{border-radius:4px;flex-shrink:0;width:22px;height:22px}.shopping-remove{width:1.5rem;height:1.5rem;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;padding:0;font-size:.75rem}.shopping-remove:hover{border-color:var(--accent);color:var(--accent)}.hint.small{margin-top:-.25rem;font-size:.8rem}.subheading{margin:1.25rem 0 .5rem;font-size:.95rem}.grid-fit{margin-bottom:.5rem}.grid-fit__stage{background:repeating-conic-gradient(#eee 0 25%, #fafafa 0 50%) 0 0 / 16px 16px;border:1px solid var(--border);border-radius:8px;justify-content:center;padding:.5rem;display:flex}.grid-fit__canvas{cursor:grab;touch-action:none;display:block;box-shadow:0 0 0 1px #00000059}.grid-fit__canvas:active{cursor:grabbing}.grid-fit__controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;margin-top:.75rem;display:flex}.grid-fit__zoom{color:var(--muted);flex:1;align-items:center;gap:.5rem;min-width:220px;font-size:.85rem;display:flex}.grid-fit__zoom input{accent-color:var(--accent-2);flex:1}.grid-fit__zoom output{text-align:right;min-width:3.2rem;color:var(--text);font-variant-numeric:tabular-nums}.grid-fit__buttons{flex-wrap:wrap;gap:.4rem;display:flex}.grid-fit__buttons .secondary-btn{padding:.35rem .7rem;font-size:.85rem}.field-row input[type=checkbox]{width:auto}.field-row select.wide{width:auto;min-width:16rem}.settings-panel>summary{cursor:pointer;justify-content:space-between;align-items:center;list-style:none;display:flex}.settings-panel>summary::-webkit-details-marker{display:none}.settings-panel>summary:after{content:"▾";color:var(--muted);transition:transform .15s}.settings-panel:not([open])>summary:after{transform:rotate(-90deg)}.settings-panel>summary h2{margin:0}.settings-panel[open]>summary{margin-bottom:.5rem}.settings-panel .field-row{gap:.6rem}.settings-panel .field-row input,.settings-panel .field-row select{width:7.5rem}.settings-panel .field-row select{width:10rem}.settings-panel .field-row input[type=checkbox]{width:auto}.settings-panel .field-row select.wide{width:100%;min-width:0}.settings-panel .field-row label:has(select.wide){flex:1}.field-row--stack{flex-direction:column;gap:.4rem!important}.settings-panel .preset-btn{padding:.35rem .55rem;font-size:.8rem}.button-row{flex-wrap:wrap;gap:.5rem;margin-bottom:.25rem;display:flex}.settings-panel .subheading:first-of-type{margin-top:.75rem}.app .editor-layout{grid-template-columns:1fr 360px}@media (width<=900px){.app .editor-layout{grid-template-columns:1fr}}
