@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Great+Vibes&display=swap";
:root{--bg-primary:#fff;--bg-secondary:#f2f2f7;--bg-elevated:#fff;--bg-card:#fff;--bg-glass:#ffffffb8;--bg-glass-hover:#f5f5f5;--bg-input:#7676801f;--accent-blue:#0d9488;--accent-blue-hover:#0f766e;--accent-blue-dim:#0d94881a;--accent-blue-glow:#0d948833;--accent-teal:#0d9488;--accent-teal-hover:#0f766e;--accent-teal-dim:#0d94881a;--accent-teal-glow:#0d948826;--accent-cyan:#32ade6;--accent-green:#34c759;--accent-red:#ff3b30;--accent-orange:#ff9500;--accent-amber:#ff9500;--accent-amber-dim:#ff95001a;--accent-purple:#af52de;--accent-purple-dim:#af52de1a;--accent-pink:#ff2d55;--accent-pink-dim:#ff2d551a;--text-primary:#000;--text-secondary:#3c3c4399;--text-tertiary:#3c3c434d;--text-inverse:#fff;--border-subtle:#f2f2f7;--border-glass:#3c3c431f;--border-active:#0d948866;--shadow-sm:0 1px 3px #0000000a, 0 1px 2px #0000000a;--shadow-md:0 4px 16px #0000000f;--shadow-lg:0 8px 30px #00000014;--shadow-glow:0 0 0 3px #0d948826;--gradient-accent:linear-gradient(135deg, #0d9488, #0055c8);--gradient-warm:linear-gradient(135deg, #ff9500, #ff6b00);--gradient-cool:linear-gradient(135deg, #af52de, #0d9488);--gradient-card:none;--gradient-radial-bg:none;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:9999px;--sidebar-width:260px;--header-height:72px;--content-max-width:1200px;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1);--transition-spring:.5s cubic-bezier(.34, 1.56, .64, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;font-size:16px}body{background:var(--bg-secondary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;backface-visibility:hidden;perspective:1000px;min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;line-height:1.5;overflow-x:hidden}body:before{display:none}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-family:Inter,sans-serif;font-weight:700;line-height:1.2}.signature-title{color:#0d9488;margin-bottom:4px;font-family:Great Vibes,cursive!important;font-size:3.5rem!important;font-weight:400!important;line-height:1!important}a{color:var(--accent-teal);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--accent-teal-hover)}img{max-width:100%;display:block}button{cursor:pointer;border:none;outline:none;font-family:inherit}input,select,textarea{font-family:inherit;font-size:.95rem}.glass-card{background:var(--bg-card);border:1px solid var(--border-glass);border-radius:var(--radius-lg);transition:all var(--transition-base);box-shadow:var(--shadow-sm);padding:20px}.glass-card:hover{border-color:var(--border-active);box-shadow:var(--shadow-md);transform:translateY(-1px)}.glass-card--static{composes:glass-card}.glass-card--static:hover{box-shadow:var(--shadow-sm);transform:none}.btn{border-radius:var(--radius-md);transition:all var(--transition-base);cursor:pointer;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-size:.9rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--accent-teal);color:var(--text-inverse);box-shadow:0 2px 8px #0d948833}.btn-primary:hover{background:var(--accent-teal-hover);transform:translateY(-1px);box-shadow:0 4px 14px #0d948840}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-glass)}.btn-secondary:hover{background:var(--bg-elevated);border-color:var(--text-tertiary)}.btn-ghost{color:var(--text-secondary);background:0 0;padding:8px 16px}.btn-ghost:hover{background:var(--bg-elevated);color:var(--text-primary)}.btn-danger{color:var(--accent-red);background:#dc26260f;border:1px solid #dc262626}.btn-danger:hover{background:#dc26261f}.btn-sm{padding:8px 14px;font-size:.82rem}.btn-lg{padding:16px 32px;font-size:1rem}.btn-icon{border-radius:var(--radius-md);width:40px;height:40px;padding:8px}.input-group{flex-direction:column;gap:6px;display:flex}.input-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.82rem;font-weight:500}.input-field{background:var(--bg-input);border:1px solid var(--border-glass);border-radius:var(--radius-md);color:var(--text-primary);transition:all var(--transition-fast);outline:none;padding:12px 16px;font-size:.95rem}.input-field:focus{border-color:var(--accent-teal);box-shadow:0 0 0 3px var(--accent-teal-dim)}.input-field::placeholder{color:var(--text-tertiary)}.badge{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-teal{background:var(--accent-teal-dim);color:var(--accent-teal)}.badge-amber{background:var(--accent-amber-dim);color:var(--accent-amber)}.badge-orange{color:#ea580c;background:#ea580c14}.badge-indigo{color:#4f46e5;background:#4f46e514}.badge-purple{background:var(--accent-purple-dim);color:var(--accent-purple)}.badge-blue{background:var(--accent-blue-dim);color:var(--accent-blue)}.badge-red{color:var(--accent-red);background:#dc26260f}.badge-green{color:var(--accent-green);background:#16a34a0f}.cat-pool{--cat-color:var(--accent-blue);--cat-bg:var(--accent-blue-dim)}.cat-court{--cat-color:var(--accent-teal);--cat-bg:var(--accent-teal-dim)}.cat-basketball_court{--cat-color:#ea580c;--cat-bg:#ea580c14}.cat-volleyball_court{--cat-color:#4f46e5;--cat-bg:#4f46e514}.cat-clubhouse{--cat-color:var(--accent-amber);--cat-bg:var(--accent-amber-dim)}.cat-gym{--cat-color:var(--accent-purple);--cat-bg:var(--accent-purple-dim)}.cat-park{--cat-color:var(--accent-green);--cat-bg:#34d3991f}.cat-other{--cat-color:var(--accent-pink);--cat-bg:var(--accent-pink-dim)}.section-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.section-title{font-size:1.5rem;font-weight:700}.section-subtitle{color:var(--text-secondary);margin-top:4px;font-size:.9rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translate(0,0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0,0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse-glow{0%,to{box-shadow:0 0 10px var(--accent-teal-glow)}50%{box-shadow:0 0 25px var(--accent-teal-glow)}}@keyframes float{0%,to{transform:translate(0,0)}50%{transform:translateY(-6px)}}@keyframes spin{to{transform:rotate(360deg)}}.animate-fadeIn{animation:.5s ease-out forwards fadeIn}.animate-slideInRight{animation:.4s ease-out forwards slideInRight}.animate-scaleIn{animation:.3s ease-out forwards scaleIn}.stagger-children>*{opacity:0;animation:.5s ease-out forwards fadeIn}.stagger-children>:first-child{animation-delay:50ms}.stagger-children>:nth-child(2){animation-delay:.1s}.stagger-children>:nth-child(3){animation-delay:.15s}.stagger-children>:nth-child(4){animation-delay:.2s}.stagger-children>:nth-child(5){animation-delay:.25s}.stagger-children>:nth-child(6){animation-delay:.3s}.stagger-children>:nth-child(7){animation-delay:.35s}.stagger-children>:nth-child(8){animation-delay:.4s}.skeleton{border-radius:var(--radius-md);background:linear-gradient(90deg,#f1f3f5 25%,#e5e7eb 50%,#f1f3f5 75%) 0 0/400% 100%;animation:1.5s ease-in-out infinite shimmer}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#9ca3af}.app-layout{width:100%;min-height:100vh;display:flex}.app-main{margin-left:var(--sidebar-width);z-index:1;flex:1;min-width:0;max-width:100%;padding:32px;position:relative;overflow-x:hidden}.app-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:32px;display:flex}.app-header-left h1{word-break:break-word;font-size:1.8rem;font-weight:800}.app-header-left p{color:var(--text-secondary);margin-top:4px;font-size:.9rem}.app-header-actions{flex-shrink:0;align-items:center;gap:12px;display:flex}.container{width:100%;max-width:var(--content-max-width);margin:0 auto;padding:0 24px}.admin-settings-layout{grid-template-columns:300px 1fr;align-items:start;gap:20px;display:grid}.grid-2{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}@media (max-width:1024px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}.admin-settings-layout{grid-template-columns:250px 1fr}}@media (max-width:768px){.grid-4,.grid-3,.grid-2,.admin-settings-layout{grid-template-columns:1fr}}.status-confirmed{color:var(--accent-green)}.status-pending{color:var(--accent-amber)}.status-cancelled{color:var(--accent-red)}.status-completed{color:var(--accent-blue)}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:60px 24px;display:flex}.empty-state-icon{opacity:.6;margin-bottom:16px;font-size:3rem}.empty-state-title{margin-bottom:8px;font-size:1.2rem;font-weight:600}.empty-state-desc{color:var(--text-secondary);max-width:400px;font-size:.9rem}@media (max-width:768px){.app-main{margin-left:0;padding:64px 16px 20px}.app-header{margin-bottom:20px}.app-header-left h1{font-size:1.4rem}.app-header-left p{font-size:.82rem}}@media (min-width:769px) and (max-width:1024px){.app-main{padding:24px}}
