.app-wrapper{min-height:100vh;display:flex;flex-direction:column;position:relative}.main-nav{position:fixed;top:0;left:0;right:0;z-index:1000;margin:10px 20px;border-radius:20px}.nav-container{max-width:1200px;margin:0 auto;padding:12px 20px;display:flex;justify-content:space-between;align-items:center}.nav-logo{text-decoration:none}.logo-text{font-family:Playfair Display,serif;font-size:1.5rem;font-weight:700}.nav-links{display:flex;align-items:center;gap:12px}.logout-nav-btn{background:#5b37650d;border:1px solid var(--dn-soft-border);color:var(--dn-text-secondary);padding:6px 14px;border-radius:12px;font-size:.85rem;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:6px;transition:var(--transition-smooth)}.logout-nav-btn:hover{background:#fee2e2;color:#ef4444;border-color:#fecaca}.nav-link{text-decoration:none;font-weight:600;color:var(--dn-text-secondary);transition:var(--transition-smooth);padding:8px 16px;border-radius:10px}.nav-link:hover{color:var(--dn-primary);background:#5b37650d}.admin-link{border:1px solid var(--dn-soft-border);background:var(--dn-primary-soft);color:var(--dn-primary)!important}.main-content{flex:1;padding-top:120px;width:100%}.main-footer{text-align:center;padding:40px 20px;color:var(--dn-text-secondary);font-size:.9rem;border-top:1px solid var(--dn-soft-border);margin-top:auto}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:20px}.menu-toggle{display:none;background:none;border:none;color:var(--dn-primary);cursor:pointer;padding:8px;border-radius:50%;transition:var(--transition-smooth)}.menu-toggle:hover{background:#5b37650d}@media(max-width:768px){.logo-text{font-size:1.25rem}.menu-toggle{display:flex;align-items:center;justify-content:center;position:relative;z-index:1100}.nav-links{position:absolute;top:calc(100% + 10px);right:0;left:0;flex-direction:column;background:#fffffff2;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);padding:20px;border-radius:20px;box-shadow:var(--shadow-strong);border:1px solid var(--dn-soft-border);gap:10px;display:none;transform:translateY(-10px);opacity:0;transition:all .3s cubic-bezier(.4,0,.2,1)}.nav-links.show{display:flex;transform:translateY(0);opacity:1}.nav-link{width:100%;text-align:center;padding:12px}.logout-nav-btn{width:100%;justify-content:center;padding:12px}.main-nav{margin:10px}}:root{--dn-primary: #5B3765;--dn-primary-light: #BA88AE;--dn-primary-soft: #F3CCDE;--dn-primary-dark: #3a2341;--dn-accent: #9E6899;--dn-accent-light: #D6A8C4;--dn-bg: #ffffff;--dn-surface: #fdfcff;--dn-dark: #5B3765;--dn-text-secondary: #475569;--dn-soft-border: rgba(91, 55, 101, .12);--dn-shadow-premium: 0 20px 50px rgba(91, 55, 101, .08);--dn-success: #10b981;--dn-warning: #f59e0b;--dn-error: #ef4444;--dn-info: #3b82f6;--transition-smooth: all .3s cubic-bezier(.4, 0, .2, 1);--transition-bounce: all .5s cubic-bezier(.68, -.55, .265, 1.55)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--dn-bg);color:var(--dn-dark);line-height:1.6;overflow-x:hidden;background-image:radial-gradient(at 0% 0%,rgba(91,55,101,.04) 0px,transparent 50%),radial-gradient(at 100% 0%,rgba(186,136,174,.04) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(91,55,101,.04) 0px,transparent 50%),radial-gradient(at 0% 100%,rgba(186,136,174,.04) 0px,transparent 50%)}h1,h2,h3,h4,h5,h6{font-family:Playfair Display,serif;font-weight:700;line-height:1.2;color:var(--dn-dark)}h1{font-size:clamp(2rem,5vw,3rem)}h2{font-size:clamp(1.5rem,4vw,2.2rem)}h3{font-size:clamp(1.2rem,3vw,1.8rem)}.gradient-text{background:linear-gradient(135deg,var(--dn-primary) 0%,var(--dn-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass-card{background:#fffc;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid var(--dn-soft-border);border-radius:24px;box-shadow:var(--dn-shadow-premium);transition:var(--transition-smooth)}.glass-card:hover{transform:translateY(-4px);box-shadow:0 30px 60px #5b37651f}.btn-primary{background:linear-gradient(135deg,var(--dn-primary) 0%,var(--dn-accent) 100%);color:#fff;border:none;padding:14px 32px;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition-smooth);box-shadow:0 8px 20px #5b376533;position:relative;overflow:hidden}.btn-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}.btn-primary:hover:before{left:100%}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 30px #5b37654d}.btn-primary:active{transform:translateY(0)}.btn-primary:disabled{background:#cbd5e1;color:#94a3b8;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn-primary:disabled:before{display:none}.btn-outline{background:transparent;color:var(--dn-primary);border:2px solid var(--dn-primary);padding:12px 30px;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:var(--transition-smooth)}.btn-outline:hover{background:var(--dn-primary);color:#fff;transform:translateY(-2px);box-shadow:0 8px 20px #5b376533}.input-group{margin-bottom:20px}.input-group label{display:block;margin-bottom:8px;font-weight:600;color:var(--dn-dark);font-size:.95rem}.input-group select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ba88ae' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;background-size:18px;background-color:var(--dn-surface);cursor:pointer;color:var(--dn-primary);font-weight:500}.input-group select option{background-color:#fff9ff;color:var(--dn-primary);padding:12px;font-family:Outfit,sans-serif}.input-group input,.input-group select,.input-group textarea{width:100%;padding:16px 20px;border:2px solid var(--dn-soft-border);border-radius:14px;font-size:1rem;font-family:Outfit,sans-serif;transition:var(--transition-smooth);background:linear-gradient(to bottom,#fff,#fdf8ff)}.input-group input:focus,.input-group select:focus,.input-group textarea:focus{outline:none;border-color:var(--dn-primary);box-shadow:0 0 0 4px #5b37651a}.input-group textarea{resize:vertical;min-height:100px}.badge{display:inline-block;padding:6px 14px;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-pending{background:#fbbf2426;color:#d97706}.badge-confirmed{background:#3b82f626;color:#2563eb}.badge-in-progress{background:#a855f726;color:#7c3aed}.badge-completed{background:#10b98126;color:#059669}.badge-cancelled{background:#ef444426;color:#dc2626}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.fade-in{animation:fadeIn .6s ease-out}.slide-in{animation:slideIn .6s ease-out}@keyframes butterfly-float{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(10px,-10px) rotate(5deg)}50%{transform:translate(20px) rotate(0)}75%{transform:translate(10px,10px) rotate(-5deg)}}.butterfly{animation:butterfly-float 4s ease-in-out infinite;opacity:.6}@media(max-width:768px){.glass-card{border-radius:16px;padding:20px}.btn-primary,.btn-outline{width:100%;padding:16px}}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:var(--dn-surface)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--dn-primary) 0%,var(--dn-accent) 100%);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--dn-primary-dark)}.spinner{width:40px;height:40px;border:4px solid var(--dn-soft-border);border-top:4px solid var(--dn-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.container{max-width:1200px;margin:0 auto;padding:20px}@media(max-width:768px){.container{padding:15px}}
