:root{--color-bg: #f7f8fa;--color-surface: #ffffff;--color-text: #1a2233;--color-muted: #5b6b82;--color-border: #d9dee7;--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-primary-contrast: #ffffff;--color-success: #15803d;--color-success-bg: #dcfce7;--color-error: #b91c1c;--color-error-bg: #fee2e2;--color-warn-bg: #fef3c7;--color-warn-text: #92400e;--radius: 10px;--shadow: 0 1px 3px rgba(16, 24, 40, .08), 0 1px 2px rgba(16, 24, 40, .06);--space: 16px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--color-bg);color:var(--color-text);line-height:1.5}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:12px var(--space)}.app-header a{font-weight:700;font-size:1.1rem;color:var(--color-text);text-decoration:none}.page{width:100%;max-width:640px;margin:0 auto;padding:var(--space);flex:1}h1{font-size:1.5rem;margin:0 0 4px}h2{font-size:1.15rem;margin:24px 0 8px}.muted{color:var(--color-muted)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--space);margin-bottom:var(--space)}label{display:block;font-weight:600;font-size:.9rem;margin:12px 0 4px}input,select,textarea{width:100%;padding:10px 12px;font-size:1rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font-family:inherit}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}textarea{min-height:72px;resize:vertical}.field-error{color:var(--color-error);font-size:.85rem;margin:4px 0 0}button{font-size:1rem;font-family:inherit;font-weight:600;padding:11px 18px;border-radius:var(--radius);border:1px solid transparent;background:var(--color-primary);color:var(--color-primary-contrast);cursor:pointer;min-height:44px}button:hover:not(:disabled){background:var(--color-primary-hover)}button:disabled{opacity:.6;cursor:not-allowed}button.secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border)}button.danger{background:var(--color-surface);color:var(--color-error);border-color:var(--color-border)}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin:8px 0}.slot-button.selected{background:var(--color-primary);color:var(--color-primary-contrast);border-color:var(--color-primary)}.slot-button{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);font-weight:600}.slot-remaining{display:block;font-size:.72rem;font-weight:400;color:var(--color-muted)}.slot-button.selected .slot-remaining{color:var(--color-primary-contrast)}.banner{border-radius:var(--radius);padding:12px 14px;margin-bottom:var(--space);font-size:.95rem}.banner.error{background:var(--color-error-bg);color:var(--color-error)}.banner.success{background:var(--color-success-bg);color:var(--color-success)}.banner.warn{background:var(--color-warn-bg);color:var(--color-warn-text)}.booking-row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--color-border);padding:12px 0}.booking-row:last-child{border-bottom:none}.status-pill{display:inline-block;font-size:.78rem;font-weight:700;padding:2px 8px;border-radius:999px;text-transform:capitalize}.status-requested{background:var(--color-warn-bg);color:var(--color-warn-text)}.status-confirmed{background:var(--color-success-bg);color:var(--color-success)}.status-cancelled{background:var(--color-error-bg);color:var(--color-error)}.row-actions{display:flex;gap:8px}.share-link{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.share-link code{background:var(--color-bg);padding:8px 10px;border-radius:var(--radius);border:1px solid var(--color-border);word-break:break-all;flex:1;min-width:200px}.pet-detail{font-size:.85rem;color:var(--color-muted);margin-top:4px}.center{text-align:center;padding:40px 0}.landing{max-width:760px}.hero{text-align:center;padding:24px 0 8px}.eyebrow{text-transform:uppercase;letter-spacing:.06em;font-size:.78rem;font-weight:700;color:var(--color-primary);margin:0 0 8px}.hero h1{font-size:2rem;line-height:1.2;margin:0 0 12px}.hero-sub{color:var(--color-muted);font-size:1.05rem;max-width:540px;margin:0 auto 20px}.cta-button{display:inline-block;font-weight:700;font-size:1.05rem;padding:13px 24px;min-height:44px;border-radius:var(--radius);background:var(--color-primary);color:var(--color-primary-contrast);text-decoration:none}.cta-button:hover{background:var(--color-primary-hover)}.cta-button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.cta-note{font-size:.85rem;margin:10px 0 0}.pain-list{margin:8px 0 16px;padding-left:20px}.pain-list li{margin-bottom:8px}.feature-grid{display:grid;grid-template-columns:1fr;gap:var(--space)}.feature h3{font-size:1.05rem;margin:0 0 6px}.beta-block{text-align:center}.beta-block p{max-width:560px;margin-left:auto;margin-right:auto}.beta-price{font-size:1.1rem;font-weight:600}.reassurance{font-size:.85rem;margin-top:14px}@media (min-width: 700px){.page{padding:32px var(--space)}.feature-grid{grid-template-columns:repeat(3,1fr)}.hero h1{font-size:2.4rem}}
