@import"https://fonts.googleapis.com/css2?family=Nunito:wght@400;500;600;700;800;900&family=DM+Sans:wght@300;400;500;600&display=swap";.toast-container{position:fixed;bottom:1.5rem;right:1.5rem;z-index:99999;display:flex;flex-direction:column;gap:.5rem;pointer-events:none}.toast{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.125rem;border-radius:12px;background:#1f2937;color:#fff;box-shadow:0 8px 32px #0003;min-width:260px;max-width:400px;font-size:.875rem;pointer-events:all;border-left:4px solid rgba(255,255,255,.2)}.toast-success{background:#065f46;border-left-color:#34d399}.toast-error{background:#7f1d1d;border-left-color:#f87171}.toast-warning{background:#78350f;border-left-color:#fbbf24}.toast-icon{font-size:1rem;flex-shrink:0}.toast-msg{flex:1;line-height:1.4}.toast-close{background:none;border:none;color:#fff9;cursor:pointer;font-size:.8rem;padding:.1rem .3rem;border-radius:4px;transition:all .15s;flex-shrink:0}.toast-close:hover{background:#ffffff26;color:#fff}.toast-anim-enter-active{transition:all .3s cubic-bezier(.16,1,.3,1)}.toast-anim-leave-active{transition:all .2s ease}.toast-anim-enter-from{opacity:0;transform:translate(100%) scale(.95)}.toast-anim-leave-to{opacity:0;transform:translate(20px)}.toast-anim-move{transition:transform .3s ease}:root{--brand-900: #1a0a2e;--brand-800: #2d1554;--brand-700: #3d1f6e;--brand-600: #5b2d8e;--brand-500: #7c3aed;--brand-400: #a855f7;--brand-300: #c084fc;--brand-200: #e9d5ff;--brand-100: #f5f3ff;--petslot-orange: #f5820d;--petslot-blue: #3b9fe8;--accent: #f59e0b;--accent-light: #fef3c7;--success: #10b981;--warning: #f59e0b;--danger: #ef4444;--info: #3b82f6;--font-display: "Nunito", sans-serif;--font-body: "DM Sans", -apple-system, sans-serif;--radius-sm: 8px;--radius: 12px;--radius-lg: 18px;--radius-xl: 26px;--bg-base: #f9fafb;--bg-surface: #ffffff;--bg-elevated: #ffffff;--bg-subtle: #f3f4f6;--border-color: #e5e7eb;--border-light: #f3f4f6;--text-primary: #111827;--text-secondary: #4b5563;--text-muted: #9ca3af;--text-inverse: #ffffff;--shadow-sm: 0 1px 3px rgba(0,0,0,.06);--shadow: 0 4px 16px rgba(0,0,0,.09);--shadow-lg: 0 12px 40px rgba(0,0,0,.13);--shadow-brand: 0 8px 32px rgba(124,58,237,.22);--gray-900: #111827;--gray-800: #1f2937;--gray-700: #374151;--gray-600: #4b5563;--gray-500: #6b7280;--gray-400: #9ca3af;--gray-300: #d1d5db;--gray-200: #e5e7eb;--gray-100: #f3f4f6;--gray-50: #f9fafb;--white: #ffffff}[data-theme=dark]{--bg-base: #0f0f13;--bg-surface: #1a1a24;--bg-elevated: #22222f;--bg-subtle: #2a2a38;--border-color: #2e2e3e;--border-light: #242434;--text-primary: #f1f1f7;--text-secondary: #a0a0b8;--text-muted: #5a5a72;--text-inverse: #111827;--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow: 0 4px 16px rgba(0,0,0,.4);--shadow-lg: 0 12px 40px rgba(0,0,0,.5);--gray-900: #f1f1f7;--gray-800: #d0d0e0;--gray-700: #a0a0b8;--gray-600: #6a6a82;--gray-500: #4a4a5e;--gray-400: #2e2e3e;--gray-200: #2a2a38;--gray-100: #22222f;--gray-50: #1a1a24;--white: #1a1a24;--brand-100: #1e0f3a;--brand-200: #2d1a55;--accent-light: #2a1f00;color-scheme:dark}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased}body{font-family:var(--font-body);color:var(--text-primary);background:var(--bg-base);min-height:100vh;transition:background .25s,color .25s}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-subtle)}::-webkit-scrollbar-thumb{background:var(--brand-300);border-radius:3px}.text-display{font-family:var(--font-display)}.text-brand{color:var(--brand-500)}.text-muted{color:var(--text-muted)}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:var(--radius);font-family:var(--font-body);font-size:.9rem;font-weight:500;cursor:pointer;border:none;transition:all .2s ease;text-decoration:none;white-space:nowrap}.btn-primary{background:var(--brand-500);color:#fff;box-shadow:var(--shadow-brand)}.btn-primary:hover{background:var(--brand-600);transform:translateY(-1px)}.btn-secondary{background:var(--bg-surface);color:var(--brand-600);border:2px solid var(--brand-200)}.btn-secondary:hover{border-color:var(--brand-400);background:var(--brand-100)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#dc2626}.btn-success{background:var(--success);color:#fff}.btn-ghost{background:transparent;color:var(--text-secondary);padding:.5rem .75rem}.btn-ghost:hover{background:var(--bg-subtle)}.btn-sm{padding:.45rem .9rem;font-size:.8rem}.btn-lg{padding:1rem 2rem;font-size:1rem}.btn-full{width:100%;justify-content:center}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.card{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:1.5rem;border:1px solid var(--border-color)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--border-light)}.form-group{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1rem}.form-label{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.form-input,.form-select,.form-textarea{width:100%;padding:.75rem 1rem;border:1.5px solid var(--border-color);border-radius:var(--radius);font-family:var(--font-body);font-size:.9rem;color:var(--text-primary);background:var(--bg-surface);transition:border-color .2s;outline:none}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--brand-400);box-shadow:0 0 0 3px #7c3aed1a}.form-textarea{resize:vertical;min-height:80px}.form-error{font-size:.8rem;color:var(--danger)}.badge{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .75rem;border-radius:100px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge-pending{background:#fef3c7;color:#92400e}.badge-confirmed{background:#dbeafe;color:#1e40af}.badge-in_progress{background:#ede9fe;color:#6d28d9}.badge-completed{background:#d1fae5;color:#065f46}.badge-cancelled{background:#fee2e2;color:#991b1b}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-fade{animation:fadeIn .35s ease}.animate-slide{animation:slideIn .3s ease}.toast-container{position:fixed;bottom:1.5rem;right:1.5rem;z-index:9999;display:flex;flex-direction:column;gap:.5rem}.toast{padding:.875rem 1.25rem;border-radius:var(--radius);background:var(--gray-900);color:#fff;box-shadow:var(--shadow-lg);min-width:250px;max-width:380px;animation:fadeIn .3s ease;display:flex;align-items:center;gap:.75rem;font-size:.875rem}.toast-success{background:var(--success)}.toast-error{background:var(--danger)}.toast-warning{background:var(--warning);color:var(--gray-900)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem;animation:fadeIn .2s ease}.modal{background:var(--bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:520px;max-height:90vh;overflow-y:auto;animation:fadeIn .25s ease;border:1px solid var(--border-color)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--border-light)}.modal-body{padding:1.5rem}.modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-light);display:flex;gap:.75rem;justify-content:flex-end}.table-wrap{overflow-x:auto;border-radius:var(--radius);border:1px solid var(--border-color)}table{width:100%;border-collapse:collapse;font-size:.875rem}th{background:var(--bg-subtle);padding:.875rem 1rem;text-align:left;font-weight:600;color:var(--text-secondary);font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color)}td{padding:.875rem 1rem;border-bottom:1px solid var(--border-light);color:var(--text-secondary)}tr:last-child td{border-bottom:none}tr:hover td{background:var(--bg-subtle)}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--brand-500);border-radius:50%;animation:spin .7s linear infinite}@media (max-width: 768px){.btn{padding:.875rem 1.25rem;font-size:.95rem;min-height:44px}.btn-sm{padding:.625rem .875rem;font-size:.875rem;min-height:38px}.card{padding:1rem;border-radius:var(--radius)}.form-input,.form-select,.form-textarea{font-size:16px;min-height:44px;padding:.75rem}.modal{max-width:100%!important;margin:0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:95vh}.modal-overlay{align-items:flex-end;padding:0}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}table{min-width:600px}.toast-container{bottom:1rem;right:.75rem;left:.75rem}.toast{min-width:unset}}@media (max-width: 480px){.card{padding:.875rem}.grid-2,.two-col{grid-template-columns:1fr!important}.badge{font-size:.7rem;padding:.2rem .5rem}.step-actions{flex-direction:column}.step-actions .btn{width:100%;justify-content:center}}button,a,[role=button]{min-height:44px;min-width:44px}.badge,.text-xs{min-height:unset;min-width:unset}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}button,a{-webkit-tap-highlight-color:transparent}@supports (padding: env(safe-area-inset-bottom)){.client-layout,.admin-layout{padding-bottom:env(safe-area-inset-bottom)}}
