svg.svelte-1y7p450{width:24px;height:24px;fill:#000}.x-logo.svelte-1y7p450{padding:5px 0}.image-upload-container.svelte-1e69usj{border:2px dashed var(--theme-color);border-radius:8px;padding:20px;text-align:center;cursor:pointer;margin:20px auto;max-width:600px;background-color:#f9f9f9;min-height:200px;display:flex;flex-direction:column;justify-content:center;align-items:center}.upload-area.svelte-1e69usj p:where(.svelte-1e69usj){color:#666;margin:5px 0}.image-preview.svelte-1e69usj{max-width:100%;max-height:300px;margin-bottom:15px;border-radius:4px;box-shadow:0 2px 4px #0000001a}.change-image-button.svelte-1e69usj{background-color:var(--theme-color);color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-size:1em;transition:background-color .3s ease}.change-image-button.svelte-1e69usj:hover{background-color:darken(var(--theme-color),10%)}.pattern-grid-container.svelte-tbdd0v{display:flex;justify-content:center;align-items:center;overflow-x:auto;max-width:100%;box-sizing:border-box;padding:20px;background-color:#f0f0f0;border-radius:8px;box-shadow:inset 0 0 5px #0000001a}.pattern-grid.svelte-tbdd0v{display:grid;grid-template-columns:repeat(var(--grid-cols),var(--cell-size));border:1px solid #ccc;box-shadow:0 0 10px #0003;background-color:#fff}.grid-cell.svelte-tbdd0v{width:var(--cell-size);height:var(--cell-size);box-sizing:border-box;border:1px solid #eee}.shopping-list-container.svelte-5940mm{margin-top:30px;padding:20px;border:1px solid #eee;border-radius:8px;background-color:#fff;box-shadow:0 2px 4px #0000000d;text-align:center}.shopping-list-container.svelte-5940mm h3:where(.svelte-5940mm){color:var(--theme-color);margin-bottom:20px}table.svelte-5940mm{width:100%;border-collapse:collapse;margin-top:20px}th.svelte-5940mm,td.svelte-5940mm{border:1px solid #ddd;padding:8px;text-align:left}th.svelte-5940mm{background-color:#f2f2f2;color:#333}.color-swatch.svelte-5940mm{width:25px;height:25px;border:1px solid #ccc;display:inline-block;vertical-align:middle}.homepage-container.svelte-11smpwh{text-align:center;padding:20px}.logo-section.svelte-11smpwh{margin-bottom:40px}.service-logo.svelte-11smpwh{width:512px;height:170px;margin-bottom:10px;background-color:var(--theme-color);-webkit-mask-image:url(../../../logo-512.svg);mask-image:url(../../../logo-512.svg);-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;display:inline-block}.logo-section.svelte-11smpwh p:where(.svelte-11smpwh){font-size:1.2em;color:#666}.upload-section.svelte-11smpwh h3:where(.svelte-11smpwh){font-size:1.8em;color:#333;margin-bottom:20px}.introduction-section.svelte-11smpwh{display:flex;flex-direction:column;align-items:center}.grid-settings.svelte-11smpwh{margin-top:30px;padding:20px;border:1px solid #eee;border-radius:8px;background-color:#fff;box-shadow:0 2px 4px #0000000d}.grid-settings.svelte-11smpwh h3:where(.svelte-11smpwh){color:var(--theme-color);margin-bottom:20px}.input-group.svelte-11smpwh{margin-bottom:15px}.input-group.svelte-11smpwh label:where(.svelte-11smpwh){display:inline-block;width:80px;text-align:right;margin-right:10px;color:#555}.input-group.svelte-11smpwh input[type=number]:where(.svelte-11smpwh),.input-group.svelte-11smpwh select:where(.svelte-11smpwh){padding:8px;border:1px solid #ddd;border-radius:4px;width:100px;text-align:center}.app-button.svelte-11smpwh{background-color:var(--theme-color);color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-size:1em;transition:background-color .3s ease}.app-button.svelte-11smpwh:hover{background-color:darken(var(--theme-color),10%)}.app-button.svelte-11smpwh:disabled{background-color:#ccc;cursor:not-allowed}.action-buttons.svelte-11smpwh{margin-top:20px;display:flex;justify-content:center;gap:10px;width:100%}.always-visible-buttons.svelte-11smpwh{margin-top:20px;margin-bottom:20px}.safety-message.svelte-11smpwh{font-size:.9em;color:#666;margin-top:10px;margin-bottom:20px}@media (max-width: 768px){.service-logo.svelte-11smpwh{width:100%;height:auto;min-height:80px;max-height:120px}.logo-section.svelte-11smpwh p:where(.svelte-11smpwh){font-size:1em}}
