*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Inter,sans-serif;background:#f8f8f7;color:#1a1a1a;min-height:100vh}.entry.svelte-1uha8ag{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1.2rem;padding:2rem}h1.svelte-1uha8ag{font-size:2rem;font-weight:700;letter-spacing:-.03em}.subtitle.svelte-1uha8ag{color:#666;font-size:1rem}form.svelte-1uha8ag{display:flex;flex-direction:column;gap:.6rem;width:100%;max-width:380px}input[type=text].svelte-1uha8ag,input[type=password].svelte-1uha8ag{width:100%;padding:.65rem 1rem;border:1.5px solid #e0e0e0;border-radius:8px;font-size:1rem;background:#fff;outline:none;transition:border-color .15s}input[type=text].svelte-1uha8ag:focus,input[type=password].svelte-1uha8ag:focus{border-color:#1a1a1a}.login-error.svelte-1uha8ag{color:#e53e3e;font-size:.85rem}button[type=submit].svelte-1uha8ag{padding:.65rem 1.2rem;background:#1a1a1a;color:#fff;border:none;border-radius:8px;font-size:.95rem;cursor:pointer;white-space:nowrap;transition:opacity .15s}button[type=submit].svelte-1uha8ag:disabled{opacity:.35;cursor:default}.app.svelte-1uha8ag{max-width:960px;margin:0 auto;padding:2rem 1.5rem 4rem}header.svelte-1uha8ag{margin-bottom:1.5rem}.greeting.svelte-1uha8ag{font-size:1rem;color:#555}.greeting.svelte-1uha8ag strong:where(.svelte-1uha8ag){color:#1a1a1a}.logout-btn.svelte-1uha8ag{padding:.45rem 1.2rem;background:transparent;border:1.5px solid #e8a0a0;border-radius:8px;font-size:.85rem;color:#c0392b;cursor:pointer}.logout-btn.svelte-1uha8ag:hover{background:#fff5f5}.bottom-logout.svelte-1uha8ag{display:flex;justify-content:center;margin-top:3rem;padding-bottom:2rem}.header-top.svelte-1uha8ag{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.header-actions.svelte-1uha8ag{display:flex;align-items:center;gap:.75rem;font-size:.82rem}.tools.svelte-1uha8ag{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.instructions.svelte-1uha8ag{font-size:.85rem;color:#666;margin-bottom:.9rem;line-height:1.5}.instructions.svelte-1uha8ag strong:where(.svelte-1uha8ag){color:#333;font-weight:600}.tools-label.svelte-1uha8ag{font-size:.82rem;color:#666;font-weight:500;white-space:nowrap}.brushes.svelte-1uha8ag{display:flex;gap:.4rem}.brush.svelte-1uha8ag{display:flex;align-items:center;gap:6px;padding:.35rem .85rem;border-radius:20px;border:1.5px solid transparent;background:transparent;font-size:.82rem;cursor:pointer;color:#888;font-weight:500;transition:all .15s}.brush.active.svelte-1uha8ag{background:#fff;border-color:#e0e0e0;color:#1a1a1a;box-shadow:0 1px 4px #00000012}.swatch.svelte-1uha8ag{width:10px;height:10px;border-radius:50%;flex-shrink:0}.swatch-available.svelte-1uha8ag{background:#c8e6c9;border:1.5px solid #81c784}.swatch-maybe.svelte-1uha8ag{background:#fef3c7;border:1.5px solid #c9a84c}.prob-row.svelte-1uha8ag{display:flex;align-items:center;gap:.5rem;font-size:.78rem;color:#999}.prob-lbl.svelte-1uha8ag{white-space:nowrap}.prob-row.svelte-1uha8ag input[type=range]:where(.svelte-1uha8ag){width:90px;accent-color:#c9a84c;cursor:pointer}.prob-val.svelte-1uha8ag{font-weight:600;color:#7c5010;min-width:30px}.status.saved.svelte-1uha8ag{color:#22a06b}.status.error.svelte-1uha8ag{color:#e53e3e}.send-btn.svelte-1uha8ag{padding:.45rem 1.2rem;background:#1a1a1a;color:#fff;border:none;border-radius:8px;font-size:.88rem;font-weight:500;cursor:pointer;transition:opacity .15s}.send-btn.svelte-1uha8ag:disabled{opacity:.3;cursor:default}.banner.svelte-1uha8ag{padding:.6rem 1rem;border-radius:8px;font-size:.85rem;margin-bottom:1.5rem}.warn-banner.svelte-1uha8ag{background:#fff8f0;border:1.5px solid #f5c08a;color:#92400e}.calendars.svelte-1uha8ag{display:flex;flex-wrap:wrap;gap:2.5rem;-webkit-user-select:none;user-select:none;touch-action:none;margin-top:1rem}.month.svelte-1uha8ag{min-width:260px}.month-name.svelte-1uha8ag{font-size:.95rem;font-weight:600;margin-bottom:.75rem;letter-spacing:-.01em}.day-headers.svelte-1uha8ag{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:.3rem}.day-label.svelte-1uha8ag{font-size:.7rem;color:#bbb;text-align:center;font-weight:500;text-transform:uppercase;letter-spacing:.04em}.grid.svelte-1uha8ag{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.day.svelte-1uha8ag{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:.8rem;border-radius:6px;cursor:default;-webkit-user-select:none;user-select:none;transition:filter .08s;font-weight:450}.day.empty.svelte-1uha8ag{background:transparent}.day.out-of-range.svelte-1uha8ag{color:#ddd}.day.excluded.svelte-1uha8ag{color:#ccc;background:repeating-linear-gradient(45deg,transparent,transparent 3px,#f0f0f0 3px,#f0f0f0 5px);cursor:not-allowed}.day.unavailable.svelte-1uha8ag{background:#fde8e8;color:#c0392b;border:1.5px solid #f5b7b1;cursor:pointer}.day.unavailable.svelte-1uha8ag:hover{filter:brightness(.96)}.day.available.svelte-1uha8ag{background:#d4edda;color:#1a7a3f;border:1.5px solid #a8d5b5;cursor:pointer;font-weight:600}.day.available.svelte-1uha8ag:hover{filter:brightness(.96)}.day.maybe.svelte-1uha8ag{border:1.5px solid #c9a84c;color:#7c5010;cursor:pointer;font-weight:600}.day.maybe.svelte-1uha8ag:hover{filter:brightness(.96)}.legend.svelte-1uha8ag{display:flex;gap:1.5rem;margin-top:2.5rem;flex-wrap:wrap}.legend-item.svelte-1uha8ag{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:#444}.dot.svelte-1uha8ag{width:10px;height:10px;border-radius:3px;display:inline-block;flex-shrink:0}.dot.green.svelte-1uha8ag{background:#d4edda;border:1px solid #a8d5b5}.dot.yellow.svelte-1uha8ag{background:#fef3c7;border:1px solid #c9a84c}.dot.red.svelte-1uha8ag{background:#fde8e8;border:1px solid #f5b7b1}.dot.stripe.svelte-1uha8ag{background:repeating-linear-gradient(45deg,transparent,transparent 2px,#f0f0f0 2px,#f0f0f0 4px);border:1px solid #ddd}@media(max-width:600px){.app.svelte-1uha8ag{padding:1.25rem 1rem 3rem}.calendars.svelte-1uha8ag{flex-direction:column;gap:2rem}.month.svelte-1uha8ag{min-width:unset;width:100%}.day.svelte-1uha8ag{font-size:.75rem;border-radius:5px}.tools.svelte-1uha8ag{gap:.5rem}.tools-label.svelte-1uha8ag{display:none}.prob-row.svelte-1uha8ag input[type=range]:where(.svelte-1uha8ag){width:70px}.legend.svelte-1uha8ag{gap:1rem}}
