.vote-button{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:var(--card);border:1px solid var(--border);border-radius:20px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.vote-button:hover:not(:disabled){background:#7aa2ff1a;border-color:var(--brand);transform:scale(1.05)}.vote-button:disabled{opacity:.5;cursor:not-allowed}.vote-button .vote-icon{font-size:1rem;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.vote-button .vote-count{font-weight:600;color:var(--text);min-width:20px;text-align:center}.vote-button.voted{background:#7aa2ff33;border-color:var(--brand)}.vote-button.voted .vote-count{color:var(--brand)}.vote-button.animating .vote-icon{animation:vote-pop .4s cubic-bezier(.34,1.56,.64,1)}.vote-button.animating .vote-count{animation:count-bounce .4s ease}.vote-button.small{padding:4px 10px;font-size:.8rem}.vote-button.small .vote-icon{font-size:.85rem}.vote-button.large{padding:10px 20px;font-size:1rem;border-radius:25px}.vote-button.large .vote-icon{font-size:1.2rem}.like-button{position:relative;display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:var(--card);border:1px solid var(--border);border-radius:20px;cursor:pointer;font-size:.9rem;transition:all .2s ease;overflow:visible}.like-button:hover:not(:disabled){background:#ff64641a;border-color:#ff6b6b;transform:scale(1.05)}.like-button:disabled{opacity:.5;cursor:not-allowed}.like-button .like-icon{font-size:1rem;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.like-button .like-count{font-weight:600;color:var(--text);min-width:20px;text-align:center}.like-button.liked{background:#ff646426;border-color:#ff6b6b}.like-button.liked .like-count{color:#ff6b6b}.like-button.animating .like-icon{animation:heart-beat .5s cubic-bezier(.34,1.56,.64,1)}.like-button.animating .like-count{animation:count-bounce .4s ease}.like-button .particles{position:absolute;top:50%;left:50%;pointer-events:none}.like-button .particles .particle{position:absolute;font-size:.6rem;animation:particle-fly .6s ease-out forwards;opacity:0}.arrow-vote{display:flex;align-items:center;gap:4px}.arrow-vote.vertical{flex-direction:column}.arrow-vote.horizontal{flex-direction:row}.arrow-vote .arrow-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease}.arrow-vote .arrow-btn .arrow-icon{width:18px;height:18px;fill:var(--muted);transition:all .2s ease}.arrow-vote .arrow-btn:hover:not(:disabled){background:var(--bg-elevated)}.arrow-vote .arrow-btn:hover:not(:disabled) .arrow-icon{fill:var(--text)}.arrow-vote .arrow-btn:disabled{opacity:.4;cursor:not-allowed}.arrow-vote .arrow-btn.up:hover:not(:disabled) .arrow-icon{fill:var(--brand)}.arrow-vote .arrow-btn.up.active .arrow-icon{fill:var(--brand)}.arrow-vote .arrow-btn.up.animating .arrow-icon{animation:arrow-up-bounce .4s ease}.arrow-vote .arrow-btn.down:hover:not(:disabled) .arrow-icon{fill:#ff6b6b}.arrow-vote .arrow-btn.down.active .arrow-icon{fill:#ff6b6b}.arrow-vote .arrow-btn.down.animating .arrow-icon{animation:arrow-down-bounce .4s ease}.arrow-vote .arrow-score{font-weight:700;font-size:1rem;min-width:32px;text-align:center;color:var(--text)}.arrow-vote .arrow-score.positive{color:var(--brand)}.arrow-vote .arrow-score.negative{color:#ff6b6b}@keyframes vote-pop{0%{transform:scale(1)}50%{transform:scale(1.5)}to{transform:scale(1)}}@keyframes count-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes heart-beat{0%{transform:scale(1)}25%{transform:scale(1.4)}50%{transform:scale(.9)}75%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes particle-fly{0%{opacity:1;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(0) scale(1)}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(-30px) scale(.5)}}@keyframes arrow-up-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes arrow-down-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px;text-align:center}.empty-state .empty-icon-container{position:relative;margin-bottom:24px}.empty-state .empty-icon{font-size:4rem;display:block;animation:empty-float 3s ease-in-out infinite;position:relative;z-index:1}.empty-state .empty-glow{position:absolute;top:50%;left:50%;width:100px;height:100px;background:radial-gradient(circle,rgba(122,162,255,.2) 0%,transparent 70%);transform:translate(-50%,-50%);border-radius:50%;animation:glow-pulse 3s ease-in-out infinite;z-index:0}.empty-state .empty-title{font-size:1.4rem;font-weight:700;color:var(--text);margin:0 0 8px}.empty-state .empty-description{font-size:1rem;color:var(--muted);margin:0 0 24px;max-width:400px;line-height:1.5}.empty-state .empty-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.empty-state .empty-actions .btn .btn-icon{margin-right:6px}.empty-state.messages .empty-icon{animation-delay:0s}.empty-state.friends .empty-icon{animation-delay:.5s}.empty-state.forum .empty-icon{animation-delay:1s}.empty-state.notifications .empty-icon{animation:celebration 1s ease-in-out infinite}.empty-state.search .empty-icon{animation:search-shake .5s ease-in-out}.skeleton{background:linear-gradient(90deg,var(--bg) 25%,var(--border) 50%,var(--bg) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:6px}.skeleton-card{padding:20px;background:var(--card);border:1px solid var(--border);border-radius:16px;margin-bottom:12px}.skeleton-card .skeleton-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.skeleton-card .skeleton-avatar{width:40px;height:40px;border-radius:50%;flex-shrink:0}.skeleton-card .skeleton-header-text{flex:1}.skeleton-card .skeleton-header-text .skeleton-name{height:16px;width:120px;margin-bottom:6px}.skeleton-card .skeleton-header-text .skeleton-meta{height:12px;width:80px}.skeleton-card .skeleton-title{height:22px;width:75%;margin-bottom:12px}.skeleton-card .skeleton-text{height:14px;margin-bottom:8px}.skeleton-card .skeleton-text:last-child{margin-bottom:0}.skeleton-list{display:flex;flex-direction:column;gap:12px}.loading-dots{display:inline-flex;align-items:baseline}.loading-dots .dots{display:inline-flex;margin-left:2px}.loading-dots .dots .dot{animation:dot-bounce 1.4s ease-in-out infinite}.loading-dots .dots .dot:nth-child(1){animation-delay:0s}.loading-dots .dots .dot:nth-child(2){animation-delay:.2s}.loading-dots .dots .dot:nth-child(3){animation-delay:.4s}@keyframes empty-float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes glow-pulse{0%,to{opacity:.5;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}}@keyframes celebration{0%,to{transform:rotate(0) scale(1)}25%{transform:rotate(-5deg) scale(1.1)}75%{transform:rotate(5deg) scale(1.1)}}@keyframes search-shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes dot-bounce{0%,80%,to{transform:translateY(0);opacity:.5}40%{transform:translateY(-4px);opacity:1}}@media(max-width:768px){.empty-state{padding:40px 20px}.empty-state .empty-icon{font-size:3rem}.empty-state .empty-title{font-size:1.2rem}.empty-state .empty-description{font-size:.9rem}}.typing-indicator{display:flex;align-items:center;gap:10px;padding:8px 0}.typing-indicator .typing-avatar{width:28px;height:28px;border-radius:50%;-o-object-fit:cover;object-fit:cover}.typing-indicator .typing-bubble{background:var(--bg-elevated);border-radius:18px;padding:12px 16px;display:inline-flex}.typing-indicator .typing-dots{display:flex;gap:4px;align-items:center}.typing-indicator .typing-dot{width:8px;height:8px;background:var(--muted);border-radius:50%;animation:typing-bounce 1.4s ease-in-out infinite}.typing-indicator .typing-dot:nth-child(1){animation-delay:0s}.typing-indicator .typing-dot:nth-child(2){animation-delay:.2s}.typing-indicator .typing-dot:nth-child(3){animation-delay:.4s}.typing-indicator .typing-label{font-size:.85rem;color:var(--muted);font-style:italic}@keyframes typing-bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}.send-button{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;background:var(--brand);color:#fff;border:none;border-radius:24px;cursor:pointer;font-weight:600;font-size:.95rem;transition:all .2s ease;min-width:100px;position:relative;overflow:hidden}.send-button:hover:not(:disabled){background:var(--brand-dark);transform:scale(1.02)}.send-button:active:not(:disabled){transform:scale(.98)}.send-button:disabled{opacity:.6;cursor:not-allowed}.send-button .send-content{display:flex;align-items:center;gap:8px}.send-button .send-icon svg{width:18px;height:18px;transition:transform .3s ease}.send-button:hover:not(:disabled) .send-icon svg{transform:translate(3px)}.send-button .send-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.send-button .send-check{font-size:1.2rem;animation:check-pop .3s ease}.send-button.sending{background:var(--brand);pointer-events:none}.send-button.sent{background:var(--success);animation:sent-pulse .3s ease}@keyframes check-pop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes sent-pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.read-receipt{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;color:var(--muted)}.read-receipt .receipt-icon{letter-spacing:-2px}.read-receipt .receipt-time{opacity:.8}.read-receipt.sending .receipt-icon{animation:pulse 1s ease-in-out infinite}.read-receipt.read,.read-receipt.read .receipt-icon{color:var(--brand)}.message-reactions{display:flex;align-items:center;gap:6px;margin-top:4px}.message-reactions .reactions-list{display:flex;gap:4px}.message-reactions .reaction{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:16px;cursor:pointer;font-size:.85rem;transition:all .2s ease}.message-reactions .reaction:hover{background:var(--bg);transform:scale(1.1)}.message-reactions .reaction.by-me{background:#7aa2ff26;border-color:var(--brand)}.message-reactions .reaction .reaction-emoji{font-size:1rem}.message-reactions .reaction .reaction-count{font-size:.75rem;color:var(--muted);font-weight:600}.message-reactions .add-reaction{position:relative}.message-reactions .add-reaction .add-reaction-btn{width:28px;height:28px;padding:0;background:var(--bg);border:1px dashed var(--border);border-radius:50%;cursor:pointer;font-size:.9rem;opacity:.6;transition:all .2s ease}.message-reactions .add-reaction .add-reaction-btn:hover{opacity:1;background:var(--bg-elevated);transform:scale(1.1)}.message-reactions .add-reaction .reaction-picker{position:absolute;bottom:100%;left:50%;transform:translate(-50%);display:flex;gap:4px;padding:8px;background:var(--card);border:1px solid var(--border);border-radius:20px;box-shadow:0 4px 20px #00000026;margin-bottom:8px;animation:picker-pop .2s ease;z-index:100}.message-reactions .add-reaction .reaction-picker .picker-emoji{width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:8px;cursor:pointer;font-size:1.2rem;transition:all .15s ease}.message-reactions .add-reaction .reaction-picker .picker-emoji:hover{background:var(--bg-elevated);transform:scale(1.2)}@keyframes picker-pop{0%{opacity:0;transform:translate(-50%) translateY(10px) scale(.9)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.online-status{position:relative;display:inline-flex}.online-status .status-dot{display:block;border-radius:50%;background:#888;border:2px solid var(--card)}.online-status.small .status-dot{width:8px;height:8px}.online-status.medium .status-dot{width:10px;height:10px}.online-status.large .status-dot{width:14px;height:14px}.online-status.online .status-dot{background:#22c55e;box-shadow:0 0 8px #22c55e80;animation:online-pulse 2s ease-in-out infinite}.online-status.away .status-dot{background:#f59e0b}.online-status.busy .status-dot{background:#ef4444}.online-status.offline .status-dot{background:#6b7280}@keyframes online-pulse{0%,to{opacity:1;box-shadow:0 0 8px #22c55e80}50%{opacity:.8;box-shadow:0 0 16px #22c55ecc}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.beta-gate-container{min-height:calc(100vh - 200px);display:flex;align-items:center;justify-content:center;padding:24px;background:linear-gradient(180deg,#161618,#0f0f10)}.beta-gate-card{max-width:500px;width:100%;background:linear-gradient(145deg,#19191a,#161618);border:1px solid hsl(240 3.7% 15.9%);border-radius:16px;overflow:hidden}.beta-gate-header{text-align:center;padding:32px 24px 16px;background:linear-gradient(180deg,rgba(139,92,246,.1),transparent)}.beta-gate-icon-wrapper{position:relative;display:inline-flex;margin-bottom:16px}.beta-gate-icon{font-size:64px;filter:drop-shadow(0 4px 12px rgba(139,92,246,.3))}.beta-gate-sparkle{position:absolute;top:-8px;right:-12px;animation:beta-sparkle 2s ease-in-out infinite}@keyframes beta-sparkle{0%,to{transform:scale(1) rotate(0);opacity:1}50%{transform:scale(1.2) rotate(15deg);opacity:.8}}.beta-gate-title{font-size:28px;font-weight:700;color:#fff;margin-bottom:8px}.beta-gate-description{font-size:16px;color:#ffffffb3;max-width:400px;margin:0 auto}.beta-gate-content{padding:24px}.beta-gate-status{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;background:#f59e0b26;border:1px solid rgba(245,158,11,.3);border-radius:10px;color:#fbbf24;font-weight:600;font-size:14px;margin-bottom:24px}.beta-gate-features{background:#ffffff08;border-radius:10px;padding:16px;margin-bottom:24px}.beta-gate-features h4{color:#ffffffe6;font-size:14px;font-weight:600;margin-bottom:12px}.beta-gate-features ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}.beta-gate-features li{color:#ffffffb3;font-size:14px;padding:8px 12px;background:#ffffff08;border-radius:6px;transition:all .2s}.beta-gate-features li:hover{background:#ffffff0f;color:#fff}.beta-gate-cta{text-align:center}.beta-gate-notify-text{color:#fff9;font-size:13px;margin-bottom:16px}.beta-gate-buttons{display:flex;gap:12px;justify-content:center}.beta-gate-primary-btn{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.beta-gate-primary-btn:hover{background:linear-gradient(135deg,#a78bfa,#8b5cf6)}.beta-gate-admin-wrapper{position:relative}.beta-gate-admin-banner{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;background:linear-gradient(90deg,#ef4444,#dc2626);color:#fff;font-size:12px;font-weight:600}@media(max-width:480px){.beta-gate-card{border-radius:12px}.beta-gate-icon{font-size:48px}.beta-gate-title{font-size:22px}.beta-gate-buttons{flex-direction:column}}.app-footer{background:linear-gradient(180deg,var(--bg) 0%,hsl(220,18%,4%) 50%,hsl(220,20%,3%) 100%);border-top:2px solid hsl(var(--primary)/.3);margin-top:80px;margin-bottom:100px;padding:0;position:relative;z-index:1;overflow:hidden}.app-footer .footer-web-pattern{position:absolute;inset:0;opacity:.03;background-image:repeating-linear-gradient(0deg,transparent,transparent 35px,hsl(var(--primary)) 35px,hsl(var(--primary)) 36px),repeating-linear-gradient(90deg,transparent,transparent 35px,hsl(var(--primary)) 35px,hsl(var(--primary)) 36px),repeating-linear-gradient(45deg,transparent,transparent 50px,hsl(var(--primary)) 50px,hsl(var(--primary)) 51px),repeating-linear-gradient(-45deg,transparent,transparent 50px,hsl(var(--primary)) 50px,hsl(var(--primary)) 51px);pointer-events:none}.app-footer:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,hsl(var(--primary)/.6) 20%,hsl(var(--primary)) 50%,hsl(var(--primary)/.6) 80%,transparent 100%);box-shadow:0 0 20px hsl(var(--primary)/.4)}.app-footer .footer-top{max-width:1400px;margin:0 auto;padding:64px 32px 48px;position:relative}.app-footer .footer-brand{margin-bottom:48px}.app-footer .footer-brand .brand-logo{display:flex;align-items:center;gap:16px;margin-bottom:16px}.app-footer .footer-brand .brand-logo .spider-icon-container{position:relative;width:56px;height:56px;display:flex;align-items:center;justify-content:center}.app-footer .footer-brand .brand-logo .spider-icon-container .spider-icon{font-size:2.5em;position:relative;z-index:2;filter:drop-shadow(0 0 12px hsl(var(--primary)/.6));animation:spiderFloat 3s ease-in-out infinite}.app-footer .footer-brand .brand-logo .spider-icon-container .icon-glow{position:absolute;width:100%;height:100%;border-radius:50%;background:radial-gradient(circle,hsl(var(--primary)/.2) 0%,transparent 70%);animation:glowPulse 2s ease-in-out infinite}.app-footer .footer-brand .brand-logo h3{font-size:2.25em;font-weight:900;margin:0;background:linear-gradient(135deg,hsl(var(--primary)),hsl(var(--primary)/.8),hsl(var(--primary)/.6));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em;text-shadow:0 0 40px hsl(var(--primary)/.3)}.app-footer .footer-brand .brand-tagline{font-size:1.2em;font-weight:700;color:hsl(var(--foreground));margin:0 0 12px;line-height:1.4;letter-spacing:-.01em}.app-footer .footer-brand .brand-description{font-size:1em;color:hsl(var(--muted-foreground));margin:0;max-width:650px;line-height:1.7}.app-footer .footer-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:48px}.app-footer .footer-section h4{font-size:.75em;font-weight:800;margin-bottom:20px;color:hsl(var(--primary));text-transform:uppercase;letter-spacing:.15em;display:flex;align-items:center;gap:6px}.app-footer .footer-section ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.app-footer .footer-section ul li{margin:0}.app-footer .footer-section ul button,.app-footer .footer-section ul a{background:none;border:none;padding:6px 0;color:hsl(var(--muted-foreground));font-size:.95em;cursor:pointer;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:left;display:inline-block;position:relative}.app-footer .footer-section ul button:before,.app-footer .footer-section ul a:before{content:"";position:absolute;left:0;bottom:2px;width:0;height:2px;background:hsl(var(--primary));transition:width .3s cubic-bezier(.4,0,.2,1)}.app-footer .footer-section ul button:hover,.app-footer .footer-section ul a:hover{color:hsl(var(--primary));transform:translate(8px)}.app-footer .footer-section ul button:hover:before,.app-footer .footer-section ul a:hover:before{width:100%}.app-footer .footer-bottom{background:linear-gradient(180deg,transparent 0%,hsla(220,20%,2%,.4) 100%);border-top:1px solid hsl(var(--border));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.app-footer .footer-bottom .footer-bottom-content{max-width:1400px;margin:0 auto;padding:28px 32px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.app-footer .footer-bottom .footer-bottom-content .footer-left{display:flex;flex-direction:column;gap:6px}.app-footer .footer-bottom .footer-bottom-content p{color:hsl(var(--muted-foreground));font-size:.9em;margin:0}.app-footer .footer-bottom .footer-bottom-content .copyright{font-weight:600;color:hsl(var(--foreground)/.7)}.app-footer .footer-bottom .footer-bottom-content .location{font-size:.85em;color:hsl(var(--muted-foreground)/.6)}.app-footer .footer-bottom .footer-bottom-content .creators{color:hsl(var(--primary)/.8);font-weight:500}@keyframes spiderFloat{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-6px) rotate(5deg)}}@keyframes glowPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}@media(max-width:1024px){.app-footer .footer-top{padding:56px 24px 40px}.app-footer .footer-brand{margin-bottom:44px}.app-footer .footer-brand .brand-logo .spider-icon-container{width:48px;height:48px}.app-footer .footer-brand .brand-logo .spider-icon-container .spider-icon{font-size:2.2em}.app-footer .footer-brand .brand-logo h3{font-size:2em}.app-footer .footer-grid{grid-template-columns:repeat(3,1fr);gap:40px}.app-footer .footer-bottom-content{padding:24px}}@media(max-width:640px){.app-footer{margin-top:60px}.app-footer .footer-top{padding:48px 20px 36px}.app-footer .footer-brand{margin-bottom:40px}.app-footer .footer-brand .brand-logo{gap:12px}.app-footer .footer-brand .brand-logo .spider-icon-container{width:44px;height:44px}.app-footer .footer-brand .brand-logo .spider-icon-container .spider-icon{font-size:2em}.app-footer .footer-brand .brand-logo h3{font-size:1.75em}.app-footer .footer-brand .brand-tagline{font-size:1.1em}.app-footer .footer-brand .brand-description{font-size:.95em}.app-footer .footer-grid{grid-template-columns:repeat(2,1fr);gap:36px}.app-footer .footer-section h4{font-size:.7em;margin-bottom:16px}.app-footer .footer-section ul{gap:10px}.app-footer .footer-section ul button,.app-footer .footer-section ul a{font-size:.9em;padding:4px 0}.app-footer .footer-bottom-content{padding:24px 20px;flex-direction:column;text-align:center;gap:12px}.app-footer .footer-bottom-content .footer-left{align-items:center}.app-footer .footer-bottom-content p{font-size:.85em}}@media(max-width:768px){[data-radix-dialog-content]{top:5%!important;bottom:130px!important;left:50%!important;transform:translate(-50%) translateY(0)!important;max-height:none!important;height:auto!important;overflow-y:visible!important}}.upgrade-modal-backdrop{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:999999;display:flex;align-items:center;justify-content:center;padding:20px;pointer-events:auto}.upgrade-modal{position:relative;background:#1a1a1f;border:1px solid #2d2d35;border-radius:20px;max-width:480px;width:100%;max-height:calc(100vh - 40px);overflow-y:auto;z-index:1000000;box-shadow:0 25px 80px #0009;pointer-events:auto}.upgrade-modal-close{position:absolute;top:16px;right:16px;background:#2d2d35;border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#888;transition:all .2s ease;z-index:10}.upgrade-modal-close:hover{background:#3d3d45;color:#fff;transform:scale(1.1)}.upgrade-modal-content{padding:2rem}@media(max-width:640px){.upgrade-modal-backdrop{align-items:flex-start;padding:12px}.upgrade-modal{max-width:520px;width:100%;max-height:calc(100vh - 24px)}.upgrade-modal-content{padding:1.25rem}.upgrade-modal-close{top:12px;right:12px}}.upgrade-modal-header{text-align:center;margin-bottom:1.5rem}.upgrade-modal-icon{font-size:56px;line-height:1;margin-bottom:1rem;filter:drop-shadow(0 4px 12px rgba(0,0,0,.2))}.upgrade-modal-title{font-size:1.5rem;font-weight:800;color:#f5f5f5;margin:0 0 .75rem}.upgrade-modal-message{font-size:.95rem;color:#a0a0a8;line-height:1.6;margin:0}.upgrade-modal-limit-badge{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;background:#ef444426;border:1px solid rgba(239,68,68,.4);border-radius:10px;margin-bottom:1.25rem;color:#fca5a5;font-weight:600;font-size:.875rem}.upgrade-modal-limit-badge svg{color:#f87171;flex-shrink:0}.upgrade-modal-benefits{margin-bottom:1.25rem}.upgrade-modal-benefits-title{font-size:.9rem;font-weight:700;color:#f5f5f5;margin:0 0 .75rem}.upgrade-modal-benefits-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.upgrade-modal-benefits-list li{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#222228;border-radius:8px;transition:all .2s ease}.upgrade-modal-benefits-list li:hover{background:#2a2a32}.upgrade-modal-benefits-list li .benefit-icon{flex-shrink:0;color:#8b5cf6}.upgrade-modal-benefits-list li span{flex:1;color:#d0d0d8;font-size:.9rem;line-height:1.4}.upgrade-modal-tiers{display:flex;justify-content:center;margin-bottom:1rem}.tier-option{position:relative;padding:16px 24px;border-radius:14px;border:2px solid rgba(139,92,246,.4);background:linear-gradient(135deg,#8b5cf626,#a855f714);text-align:center;width:100%}.tier-pro .tier-badge{background:linear-gradient(135deg,#8b5cf6,#a855f7)}.tier-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:.65rem;font-weight:700;color:#fff;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.tier-name{font-size:1.1rem;font-weight:700;color:#f5f5f5;margin-bottom:4px}.tier-price{font-size:1.5rem;font-weight:800;color:#f5f5f5;margin-bottom:2px}.tier-price span{font-size:.85rem;font-weight:500;color:#888}.tier-yearly{font-size:.8rem;color:#22c55e;margin-bottom:4px}.tier-highlight{font-size:.8rem;color:#888}.upgrade-modal-trial{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;background:#8b5cf61a;border:1px solid rgba(139,92,246,.2);border-radius:8px;margin-bottom:1.25rem;color:#c0c0c8;font-size:.85rem;font-weight:600}.upgrade-modal-trial svg{color:#a855f7}.upgrade-modal-actions{display:flex;flex-direction:column;gap:10px}.upgrade-modal-button{width:100%;padding:14px 24px;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s ease;border:none}.upgrade-modal-button:active{transform:scale(.98)}.upgrade-modal-button-primary{background:linear-gradient(135deg,#8b5cf6,#a855f7);color:#fff;box-shadow:0 4px 16px #8b5cf659}.upgrade-modal-button-primary:hover{box-shadow:0 6px 24px #8b5cf673;transform:translateY(-2px)}.upgrade-modal-button-secondary{background:#2d2d35;color:#a0a0a8}.upgrade-modal-button-secondary:hover{background:#3d3d45;color:#f5f5f5}@media(max-width:480px){.upgrade-modal-backdrop{padding:0;align-items:flex-end}.upgrade-modal{border-radius:20px 20px 0 0;max-height:85vh;width:100%;max-width:100%}.upgrade-modal-content{padding:1.5rem}.upgrade-modal-icon{font-size:48px}.upgrade-modal-title{font-size:1.25rem}.upgrade-modal-message{font-size:.9rem}.upgrade-modal-limit-badge{padding:12px 16px;font-size:.85rem}.upgrade-modal-benefits-list li{padding:10px}.upgrade-modal-benefits-list li span{font-size:.85rem}.tier-option{padding:14px 20px}.tier-name{font-size:1rem}.tier-price{font-size:1.35rem}.upgrade-modal-button{padding:14px 20px;font-size:.95rem}}.achievement-toast{position:fixed;top:80px;right:20px;z-index:9999;width:400px;max-width:calc(100vw - 40px)}.achievement-toast .confetti-container{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;pointer-events:none;overflow:visible}.achievement-toast .confetti-container .confetti-piece{position:absolute;width:10px;height:10px;border-radius:2px;top:50%;left:50%}.achievement-toast .toast-content{position:relative;display:flex;gap:1rem;padding:1.5rem;background:linear-gradient(135deg,#8b5cf6f2,#3b82f6f2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;border:2px solid rgba(255,215,0,.5);box-shadow:0 12px 40px #8b5cf699,0 0 60px #ffd7004d;overflow:hidden}.achievement-toast .toast-content:before{content:"";position:absolute;inset:0;background:linear-gradient(45deg,transparent,rgba(255,255,255,.1),transparent);animation:shine 2s infinite}.achievement-toast .toast-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:64px;height:64px;background:#ffd70033;border-radius:12px;border:2px solid rgba(255,215,0,.5)}.achievement-toast .toast-icon .badge-emoji{font-size:3rem}.achievement-toast .toast-icon .badge-image{width:48px;height:48px;-o-object-fit:contain;object-fit:contain}.achievement-toast .toast-icon svg{color:gold;filter:drop-shadow(0 0 8px rgba(255,215,0,.8))}.achievement-toast .toast-body{flex:1;display:flex;flex-direction:column;gap:.5rem}.achievement-toast .toast-body .toast-header{display:flex;align-items:center;gap:.5rem}.achievement-toast .toast-body .toast-header .sparkle-icon{color:gold;animation:sparkle 1.5s ease-in-out infinite}.achievement-toast .toast-body .toast-header .toast-title{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#ffffffe6}.achievement-toast .toast-body .achievement-name{font-size:1.25rem;font-weight:800;color:#fff;margin:0;text-shadow:0 2px 8px rgba(0,0,0,.3)}.achievement-toast .toast-body .achievement-description{font-size:.9rem;color:#ffffffd9;line-height:1.4;margin:0}.achievement-toast .toast-body .achievement-tier{display:inline-block;padding:4px 12px;border-radius:6px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.achievement-toast .toast-body .achievement-tier.bronze{background:#cd7f324d;color:#cd7f32;border:1px solid rgba(205,127,50,.5)}.achievement-toast .toast-body .achievement-tier.silver{background:#c0c0c04d;color:silver;border:1px solid rgba(192,192,192,.5)}.achievement-toast .toast-body .achievement-tier.gold{background:#ffd7004d;color:gold;border:1px solid rgba(255,215,0,.5)}.achievement-toast .toast-body .xp-reward{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#22c55e33;border:1px solid rgba(34,197,94,.4);border-radius:8px;width:-moz-fit-content;width:fit-content}.achievement-toast .toast-body .xp-reward svg{color:#22c55e}.achievement-toast .toast-body .xp-reward span{font-size:.9rem;font-weight:700;color:#22c55e}.achievement-toast .close-btn{position:absolute;top:12px;right:12px;background:#ffffff1a;border:none;border-radius:6px;padding:.25rem;cursor:pointer;color:#fff;transition:all .2s;display:flex;align-items:center;justify-content:center}.achievement-toast .close-btn:hover{background:#fff3;transform:scale(1.1)}@keyframes shine{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes sparkle{0%,to{transform:scale(1) rotate(0);opacity:1}25%{transform:scale(1.2) rotate(5deg);opacity:.8}50%{transform:scale(1) rotate(0);opacity:1}75%{transform:scale(1.2) rotate(-5deg);opacity:.8}}@media(max-width:768px){.achievement-toast{top:60px;right:10px;left:10px;width:auto}.achievement-toast .toast-content{padding:1rem;gap:.75rem}.achievement-toast .toast-icon{width:48px;height:48px}.achievement-toast .toast-icon .badge-emoji{font-size:2rem}.achievement-toast .toast-body .achievement-name{font-size:1.1rem}.achievement-toast .toast-body .achievement-description{font-size:.85rem}}.companion-setup-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.companion-setup-modal{background:#1a1a1a;border:1px solid #333;border-radius:16px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease-out;box-shadow:0 8px 32px #0009}.setup-step{padding:32px}.setup-header{text-align:center;margin-bottom:32px}.setup-icon{font-size:64px;margin-bottom:16px}.setup-header h2{font-size:28px;margin:0 0 8px;color:#fff}.setup-header p{font-size:16px;color:#a0a0a0;margin:0}.setup-features{display:flex;flex-direction:column;gap:16px;margin-bottom:32px}.feature{display:flex;align-items:flex-start;gap:16px;padding:16px;background:#242424;border:1px solid #333;border-radius:12px}.feature-icon{font-size:32px;flex-shrink:0}.feature h4{margin:0 0 4px;font-size:16px;color:#fff}.feature p{margin:0;font-size:14px;color:#a0a0a0;line-height:1.5}.personality-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:24px}.personality-card{position:relative;padding:20px;background:#242424;border:2px solid #333;border-radius:12px;text-align:center;cursor:pointer;transition:all .2s}.personality-card:hover{transform:translateY(-4px);box-shadow:0 8px 16px #00000080;background:#2a2a2a}.personality-card.selected{border-width:3px;box-shadow:0 4px 12px #00000080;background:#2a2a2a}.personality-icon{width:64px;height:64px;margin:0 auto 12px;display:flex;align-items:center;justify-content:center}.personality-icon img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 2px 8px rgba(0,0,0,.3))}.personality-card h3{font-size:18px;margin:0 0 4px;color:#fff}.personality-species{font-size:12px;color:#888;margin:0 0 12px;font-style:italic}.personality-description{font-size:13px;color:#b0b0b0;margin:0 0 12px;line-height:1.4}.preview-btn{background:#2a2a2a;border:1px solid #444;padding:6px 12px;border-radius:6px;font-size:12px;cursor:pointer;transition:all .2s;color:#d0d0d0}.preview-btn:hover{background:#333;border-color:#555}.selected-badge{position:absolute;top:8px;right:8px;background:#22c55e;color:#fff;font-size:11px;font-weight:700;padding:4px 8px;border-radius:6px}.preview-modal{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10001}.preview-content{background:#1a1a1a;border:1px solid #333;padding:24px;border-radius:12px;max-width:400px;width:90%}.preview-content h3{margin:0 0 16px;color:#fff;display:flex;align-items:center;gap:12px}.preview-icon{width:32px;height:32px;-o-object-fit:contain;object-fit:contain}.preview-message{background:#242424;padding:16px;border-radius:8px;border-left:4px solid #667eea;margin-bottom:16px;font-size:14px;line-height:1.5;color:#d0d0d0}.preview-content button{width:100%;padding:10px;background:#667eea;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600}.name-input-section{margin-bottom:32px}.name-input-section label{display:block;font-weight:600;color:#fff;margin-bottom:8px;font-size:14px}.name-input{width:100%;padding:12px;border:2px solid #333;background:#242424;color:#fff;border-radius:8px;font-size:16px;outline:none;transition:border .2s}.name-input:focus{border-color:#667eea;background:#2a2a2a}.name-hint{margin-top:8px;font-size:12px;color:#888}.survey-section{display:flex;flex-direction:column;gap:20px;margin-bottom:32px}.survey-question label{display:block;font-weight:600;color:#fff;margin-bottom:8px;font-size:14px}.survey-select{width:100%;padding:12px;border:2px solid #333;background:#242424;color:#fff;border-radius:8px;font-size:14px;outline:none;cursor:pointer;transition:border .2s}.survey-select:focus{border-color:#667eea;background:#2a2a2a}.survey-select option{background:#242424;color:#fff}.setup-summary{background:#242424;border:1px solid #333;padding:20px;border-radius:12px;margin-bottom:24px}.summary-item{padding:12px 0;border-bottom:1px solid #333;font-size:14px;color:#b0b0b0;display:flex;align-items:center;gap:8px}.summary-item:last-child{border-bottom:none}.summary-item strong{color:#fff;margin-right:8px}.summary-icon{width:24px;height:24px;-o-object-fit:contain;object-fit:contain;margin-left:8px}.setup-icon-large{width:80px;height:80px;margin:0 auto 16px}.setup-icon-large img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 4px 12px rgba(0,0,0,.5))}.setup-final-message{text-align:center;margin-bottom:24px}.setup-final-message p{font-size:14px;color:#a0a0a0;line-height:1.6;margin:0}.setup-actions{display:flex;gap:12px;justify-content:center}.btn-primary,.btn-secondary{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-secondary{background:#242424;color:#d0d0d0;border:2px solid #444}.btn-secondary:hover{background:#2a2a2a;border-color:#555}.btn-large{padding:14px 32px;font-size:16px}@media(max-width:768px){.setup-step{padding:24px}.personality-grid{grid-template-columns:1fr}.setup-header h2{font-size:24px}.setup-icon{font-size:48px}}.onboarding-overlay{position:fixed;inset:0;background:#000000f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;overflow-y:auto}.onboarding-container{background:linear-gradient(135deg,#1a1a1a,#2d2d2d);border-radius:24px;border:1px solid #333;max-width:800px;width:100%;padding:40px;box-shadow:0 20px 60px #00000080;position:relative}.onboarding-progress{display:flex;gap:12px;justify-content:center;margin-bottom:40px}.progress-dot{width:12px;height:12px;border-radius:50%;background:#333;transition:all .3s ease}.progress-dot.active{background:linear-gradient(135deg,#3b82f6,#8b5cf6);box-shadow:0 0 20px #3b82f680}.progress-dot.complete{background:#10b981}.onboarding-header{text-align:center;margin-bottom:32px}.onboarding-header h1{font-size:2rem;margin:0 0 12px;background:linear-gradient(135deg,#fff,#aaa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.onboarding-subtitle{color:#888;font-size:1rem;margin:0}.onboarding-body{min-height:400px;display:flex;flex-direction:column;color:#fff}.onboarding-actions{display:flex;gap:16px;justify-content:flex-end;margin-top:32px;padding-top:24px;border-top:1px solid #333}.onboarding-btn-primary,.onboarding-btn-secondary{padding:14px 32px;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px;border:none}.onboarding-btn-primary{background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff}.onboarding-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #3b82f666}.onboarding-btn-primary:disabled{opacity:.5;cursor:not-allowed}.onboarding-btn-secondary{background:transparent;color:#888;border:1px solid #333}.onboarding-btn-secondary:hover{background:#222;color:#fff}.onboarding-welcome{text-align:center}.welcome-icon{font-size:4rem;margin-bottom:24px}.onboarding-welcome h2{font-size:1.8rem;margin:0 0 16px}.onboarding-welcome>p{color:#aaa;font-size:1.1rem;line-height:1.6;margin-bottom:32px;max-width:600px;margin-left:auto;margin-right:auto}.welcome-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:32px}.welcome-feature{background:#222;padding:24px;border-radius:12px;display:flex;flex-direction:column;align-items:center;gap:12px;border:1px solid #333}.welcome-feature svg{color:#3b82f6}.welcome-feature span{color:#ccc;font-size:.95rem}.onboarding-personality{display:flex;flex-direction:column;gap:24px}.personality-intro{text-align:center;color:#aaa;font-size:1.05rem;margin:0}.personality-selection{display:flex;flex-direction:column;gap:16px}.personality-option{background:#222;border:2px solid #333;border-radius:16px;padding:24px;cursor:pointer;transition:all .3s ease;text-align:left}.personality-option:hover{border-color:var(--personality-color);background:#2a2a2a}.personality-option.selected{border-color:var(--personality-color);background:linear-gradient(135deg,var(--personality-color)11,var(--personality-color)22);box-shadow:0 0 30px var(--personality-color) 44}.personality-header{display:flex;align-items:center;gap:16px;margin-bottom:12px}.personality-emoji-large{font-size:3rem}.personality-header h3{margin:0;font-size:1.4rem;color:#fff}.personality-species{color:#888;font-size:.9rem;font-style:italic}.personality-desc{color:#aaa;margin:12px 0;line-height:1.6}.personality-traits-list{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.trait-pill{background:var(--personality-color)33;color:var(--personality-color);padding:6px 14px;border-radius:20px;font-size:.85rem;font-weight:500}.personality-greeting{margin-top:16px;padding:16px;background:#1a1a1a;border-radius:12px;display:flex;gap:12px;align-items:center;border-left:4px solid var(--personality-color);color:#ccc;font-style:italic}.personality-greeting svg{color:var(--personality-color);flex-shrink:0}.onboarding-name{display:flex;flex-direction:column;gap:32px;align-items:center}.name-preview{display:flex;align-items:center;gap:24px;padding:24px;background:#222;border-radius:16px;width:100%;max-width:500px}.companion-avatar{width:100px;height:100px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.name-display h3{margin:0;font-size:1.5rem;color:#fff}.name-display span{color:#888;font-size:.95rem}.name-input-group{width:100%;max-width:500px}.name-input-group label{display:block;margin-bottom:8px;color:#aaa;font-weight:500}.name-input-group input{width:100%;padding:16px;background:#222;border:2px solid #333;border-radius:12px;color:#fff;font-size:1.1rem;transition:all .2s ease}.name-input-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 20px #3b82f633}.input-hint{display:block;margin-top:8px;color:#666;font-size:.9rem}.name-suggestions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.name-suggestions span{color:#888;font-size:.9rem}.name-suggestions button{padding:8px 16px;background:#222;border:1px solid #333;border-radius:8px;color:#aaa;cursor:pointer;transition:all .2s ease}.name-suggestions button:hover{background:#2a2a2a;border-color:#3b82f6;color:#3b82f6}.onboarding-navigation{display:flex;flex-direction:column;gap:24px}.nav-intro{text-align:center;color:#aaa;font-size:1.05rem;margin:0}.nav-features{display:flex;flex-direction:column;gap:16px}.nav-feature{display:flex;gap:16px;padding:20px;background:#222;border-radius:12px;border:1px solid #333;transition:all .2s ease}.nav-feature:hover{background:#2a2a2a;border-color:#444}.nav-icon{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff}.nav-feature h4{margin:0 0 8px;color:#fff;font-size:1.1rem}.nav-feature p{margin:0;color:#aaa;font-size:.95rem;line-height:1.5}.nav-tip{display:flex;gap:12px;padding:20px;background:linear-gradient(135deg,#3b82f622,#8b5cf622);border:1px solid #3b82f644;border-radius:12px;align-items:center;color:#ccc}.nav-tip svg{color:#3b82f6;flex-shrink:0}.nav-tip strong{color:#3b82f6}.onboarding-complete{text-align:center;display:flex;flex-direction:column;align-items:center;gap:24px}.onboarding-username{display:flex;flex-direction:column;gap:32px}.username-modes{display:grid;grid-template-columns:1fr 1fr;gap:16px}.username-mode{background:#222;border:2px solid #333;border-radius:12px;padding:20px;cursor:pointer;transition:all .2s ease;display:flex;gap:12px;align-items:flex-start;text-align:left}.username-mode:hover{border-color:#3b82f6;background:#252525}.username-mode.selected{border-color:#3b82f6;background:linear-gradient(135deg,#3b82f61a,#8b5cf61a);box-shadow:0 0 20px #3b82f633}.username-mode strong{display:block;color:#fff;margin-bottom:4px;font-size:1.1rem}.username-mode p{color:#888;margin:0;font-size:.9rem}.username-preview{text-align:center;padding:32px;background:#222;border-radius:16px;border:1px solid #333}.username-preview h3{color:#aaa;font-size:1rem;margin:0 0 16px;font-weight:400}.generated-name{font-size:2rem;font-weight:700;background:linear-gradient(135deg,#3b82f6,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:12px}.username-hint{color:#666;font-size:.9rem;margin:12px 0 0}.username-input-group{display:flex;flex-direction:column;gap:12px}.username-input-group label{color:#aaa;font-weight:600}.username-input-group input{background:#222;border:2px solid #333;border-radius:12px;padding:16px;font-size:1.1rem;color:#fff;transition:all .2s ease}.username-input-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 20px #3b82f633}.onboarding-experience{display:flex;flex-direction:column;gap:24px}.experience-intro{text-align:center;color:#aaa;font-size:1.1rem;margin:0 0 16px}.experience-field{display:flex;flex-direction:column;gap:10px}.experience-field label{display:flex;align-items:center;gap:8px;color:#aaa;font-weight:600;font-size:1rem}.experience-field input{background:#222;border:2px solid #333;border-radius:12px;padding:14px 16px;font-size:1rem;color:#fff;transition:all .2s ease}.experience-field input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 20px #3b82f633}.experience-field input::-moz-placeholder{color:#555}.experience-field input::placeholder{color:#555}.complete-icon{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,#10b981,#059669);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 10px 40px #10b98166;animation:scaleIn .5s ease-out}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.onboarding-complete h2{font-size:2rem;margin:0}.onboarding-complete>p{color:#aaa;font-size:1.1rem;max-width:500px}.quick-start{width:100%;max-width:500px;text-align:left;background:#222;padding:24px;border-radius:16px;border:1px solid #333}.quick-start h3{margin:0 0 16px;color:#fff}.quick-start-steps{display:flex;flex-direction:column;gap:12px}.quick-step{display:flex;gap:16px;align-items:center;color:#ccc}.step-number{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#8b5cf6);display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.companion-preview{width:100%;max-width:500px;padding:24px;border-radius:16px;display:flex;gap:16px;align-items:center}.companion-preview>span{font-size:3rem;flex-shrink:0}.companion-preview strong{color:#fff;font-size:1.2rem;display:block;margin-bottom:8px}.companion-preview p{color:#aaa;margin:0;font-style:italic}@media(max-width:768px){.onboarding-container{padding:24px}.onboarding-header h1{font-size:1.5rem}.onboarding-body{min-height:350px}.personality-header{flex-direction:column;text-align:center}.nav-feature{flex-direction:column;align-items:center;text-align:center}}.onboarding-avatar{display:flex;flex-direction:column;align-items:center;gap:24px;padding:20px}.avatar-upload-section{display:flex;flex-direction:column;align-items:center;gap:20px;width:100%;max-width:400px}.avatar-preview-container{width:200px;height:200px;border-radius:50%;overflow:hidden;border:4px solid #3b82f6;box-shadow:0 4px 20px #3b82f64d}.avatar-preview-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.avatar-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#2d2d2d,#1a1a1a);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#666}.avatar-placeholder svg{margin-bottom:12px;color:#444}.avatar-placeholder p{margin:0;font-size:14px}.avatar-upload-controls{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.avatar-upload-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease}.avatar-upload-btn:hover{transform:translateY(-2px);box-shadow:0 4px 20px #3b82f666}.avatar-remove-btn{padding:12px 24px;background:#ef444433;color:#ef4444;border:1px solid #ef4444;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease}.avatar-remove-btn:hover{background:#ef44444d}.avatar-hint{text-align:center;color:#888;font-size:14px;margin:0}.loading-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.log-widget-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.log-widget-modal{background:#161618;border:1px solid hsl(240 3.7% 15.9%);border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000080}.log-widget-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid hsl(240 3.7% 15.9%)}.log-widget-header h3{margin:0;font-size:20px;font-weight:600;color:#f4f4f5}.log-widget-close{background:none;border:none;color:#a1a1aa;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.log-widget-close:hover{background:#27272a;color:#f4f4f5}.log-widget-form{padding:24px}.log-widget-field{margin-bottom:20px}.log-widget-field label{display:block;font-size:14px;font-weight:500;margin-bottom:8px;color:#f4f4f5}.log-widget-field input,.log-widget-field select,.log-widget-field textarea{width:100%;padding:10px 12px;background:#161618;border:1px solid hsl(240 3.7% 15.9%);border-radius:6px;color:#f4f4f5;font-size:14px;font-family:inherit;transition:border-color .2s}.log-widget-field input:focus,.log-widget-field select:focus,.log-widget-field textarea:focus{outline:none;border-color:#5494ed}.log-widget-field textarea{resize:vertical;min-height:60px}.log-widget-pet-info{padding:12px 16px;background:#1d1d20;border:1px solid hsl(240 3.7% 15.9%);border-radius:8px;margin-bottom:20px;color:#d4d4d8;font-size:14px}.log-widget-pet-info strong{color:#5494ed;font-weight:600}.log-widget-type-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.log-widget-type-btn{padding:12px 8px;background:#1d1d20;border:2px solid hsl(240 3.7% 15.9%);border-radius:8px;color:#d4d4d8;font-size:13px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px;transition:all .2s}.log-widget-type-btn:hover{background:#252528;border-color:var(--type-color)}.log-widget-type-btn.active{background:var(--type-color);border-color:var(--type-color);color:#fff;font-weight:600}.log-widget-type-btn svg{stroke-width:2}.log-widget-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.log-widget-type-fields{background:#0f0f10;padding:16px;border-radius:8px;margin-bottom:20px}.log-widget-type-fields .log-widget-field:last-child{margin-bottom:0}.log-widget-checkbox{display:flex;align-items:center}.log-widget-checkbox label{display:flex;align-items:center;gap:8px;cursor:pointer;margin-bottom:0}.log-widget-checkbox input[type=checkbox]{width:auto;margin:0;cursor:pointer}.log-widget-photo-label{display:flex;align-items:center;gap:8px}.log-widget-photo-upload{position:relative}.log-widget-file-input{width:100%;padding:10px;background:#1d1d20;border:2px dashed hsl(240 3.7% 20%);border-radius:8px;cursor:pointer;font-size:13px;transition:all .2s}.log-widget-file-input:hover{border-color:#eb47eb;background:#252528}.log-widget-photo-preview{margin-top:12px;position:relative;border-radius:8px;overflow:hidden;max-width:200px}.log-widget-photo-preview img{width:100%;height:auto;display:block}.log-widget-photo-remove{position:absolute;top:8px;right:8px;background:#000c;border:none;border-radius:4px;color:#fff;padding:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.log-widget-photo-remove:hover{background:#ef4444}.log-widget-actions{display:flex;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid hsl(240 3.7% 15.9%)}.log-widget-btn-primary,.log-widget-btn-secondary{flex:1;padding:12px 24px;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.log-widget-btn-primary{background:#5494ed;color:#fff}.log-widget-btn-primary:hover{background:#2f7de9;transform:translateY(-1px)}.log-widget-btn-secondary{background:#27272a;color:#f4f4f5}.log-widget-btn-secondary:hover{background:#313135}@media(max-width:640px){.log-widget-overlay{padding:0}.log-widget-modal{max-width:100%;max-height:100vh;border-radius:0}.log-widget-type-grid{grid-template-columns:repeat(2,1fr)}.log-widget-row{grid-template-columns:1fr}.log-widget-actions{flex-direction:column-reverse}.log-widget-btn-primary,.log-widget-btn-secondary{width:100%}}.log-widget-modal::-webkit-scrollbar{width:8px}.log-widget-modal::-webkit-scrollbar-track{background:#161618}.log-widget-modal::-webkit-scrollbar-thumb{background:#313135;border-radius:4px}.log-widget-modal::-webkit-scrollbar-thumb:hover{background:#3d3d42}.add-pet-widget-overlay{position:fixed;inset:0;background:#000000d9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.add-pet-widget-modal{background:#18181b;border:1px solid hsl(240,4%,16%);border-radius:16px;width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000080;animation:modalSlideUp .3s ease-out}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.add-pet-wizard-header{padding:16px 24px;display:flex;align-items:center;justify-content:flex-end}.add-pet-widget-header{padding:24px;border-bottom:1px solid hsl(240,4%,16%);display:flex;align-items:center;justify-content:space-between}.add-pet-widget-header h3{margin:0;font-size:20px;font-weight:600;color:#f4f4f5}.add-pet-widget-close{background:transparent;border:none;color:#a1a1aa;cursor:pointer;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s}.add-pet-widget-close:hover{background:#27272a;color:#f4f4f5}.add-pet-steps{display:flex;justify-content:space-between;padding:24px;border-bottom:1px solid hsl(240,4%,16%);gap:12px}.add-pet-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;position:relative}.add-pet-step:after{content:"";position:absolute;top:16px;left:50%;width:100%;height:2px;background:#27272a;z-index:0}.add-pet-step:last-child:after{display:none}.step-number{width:32px;height:32px;border-radius:50%;background:#27272a;color:#a1a1aa;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;position:relative;z-index:1;transition:all .3s}.add-pet-step.active .step-number{background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff}.step-label{font-size:12px;color:#a1a1aa;font-weight:500}.add-pet-step.active .step-label{color:#f4f4f5}.add-pet-wizard-content{flex:1;overflow-y:auto}.add-pet-widget-content{padding:24px;overflow-y:auto;flex:1}.add-pet-form-step{display:flex;flex-direction:column;gap:20px;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.add-pet-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.add-pet-form-group{display:flex;flex-direction:column;gap:8px}.add-pet-form-group label{font-size:14px;font-weight:500;color:#f4f4f5}.label-hint{font-size:12px;font-weight:400;color:#a1a1aa;margin-left:8px}.add-pet-form-group input,.add-pet-form-group select,.add-pet-form-group textarea{background:#27272a;border:1px solid hsl(240,4%,22%);border-radius:8px;padding:10px 12px;color:#f4f4f5;font-size:14px;transition:all .2s}.add-pet-form-group input:focus,.add-pet-form-group select:focus,.add-pet-form-group textarea:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.add-pet-form-group textarea{resize:vertical;font-family:inherit}.species-search-container{position:relative}.species-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#a1a1aa;pointer-events:none}.species-search-container input{padding-left:40px}.species-results{background:#27272a;border:1px solid hsl(240,4%,22%);border-radius:8px;margin-top:8px;max-height:200px;overflow-y:auto}.species-result{padding:12px;cursor:pointer;border-bottom:1px solid hsl(240,4%,22%);transition:background .2s}.species-result:last-child{border-bottom:none}.species-result:hover{background:#313135}.species-result.manual{display:flex;align-items:center;gap:8px;color:#8b5cf6;font-weight:500}.species-name{font-weight:500;color:#f4f4f5;font-style:italic}.species-common{font-size:12px;color:#a1a1aa;margin-top:2px}.species-result-loading{padding:12px;color:#a1a1aa;text-align:center}.add-pet-widget-footer{padding:20px 24px;border-top:1px solid hsl(240,4%,16%);display:flex;gap:12px;justify-content:flex-end}.add-pet-btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none;display:flex;align-items:center;gap:8px}.add-pet-btn-secondary{background:#27272a;color:#f4f4f5}.add-pet-btn-secondary:hover{background:#313135}.add-pet-btn-primary{background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff}.add-pet-btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf666}.add-pet-btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}@media(max-width:640px){.add-pet-widget-modal{max-width:100%;max-height:100vh;border-radius:0}.add-pet-form-row{grid-template-columns:1fr}.add-pet-steps{padding:16px}.step-label{display:none}}.pet-overview-panel{background:transparent;border-radius:0;overflow:visible;margin-bottom:0;border:none;padding:16px 16px 0}.panel-header{padding:0 0 12px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:background .2s;-webkit-user-select:none;-moz-user-select:none;user-select:none;border-bottom:2px solid hsl(240 4% 16%);margin-bottom:16px}.panel-header:hover{background:transparent}.panel-title{display:flex;align-items:center;gap:10px;font-weight:600;color:#f4f4f5;font-size:16px}.alert-badge{background:#ef4444;color:#fff;font-size:11px;font-weight:700;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center}.panel-content{max-height:400px;overflow-y:auto;padding:8px}.panel-content::-webkit-scrollbar{width:6px}.panel-content::-webkit-scrollbar-track{background:#18181b}.panel-content::-webkit-scrollbar-thumb{background:#313135;border-radius:3px}.panel-content::-webkit-scrollbar-thumb:hover{background:#3d3d42}.empty-state{text-align:center;padding:32px 16px;color:#a1a1aa}.empty-state p{margin:0 0 4px;font-size:14px}.empty-state small{font-size:12px;opacity:.8}.pet-card{background:linear-gradient(135deg,#1b1b1d,#161618);border:2px solid hsl(240 4% 18%);border-radius:16px;padding:16px;margin-bottom:12px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.pet-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,transparent 0%,hsl(240 4% 16%) 100%);opacity:0;transition:opacity .3s;pointer-events:none}.pet-card.status-healthy{border-left:3px solid hsl(142 76% 36%)}.pet-card.status-attention{border-left:3px solid hsl(48 96% 53%)}.pet-card.status-urgent{border-left:3px solid hsl(0 84% 60%)}.pet-card:hover{border-color:#5494ed;transform:translateY(-4px);box-shadow:0 8px 24px #0000004d,0 0 0 1px #5494ed33}.pet-card:hover:before{opacity:.3}.pet-card:last-child{margin-bottom:0}.pet-card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px;position:relative;z-index:1}.pet-info{display:flex;gap:12px;flex:1;min-width:0}.pet-avatar{width:56px;height:56px;border-radius:12px;-o-object-fit:cover;object-fit:cover;border:2px solid hsl(240 4% 20%);flex-shrink:0;transition:transform .3s}.pet-card:hover .pet-avatar{transform:scale(1.05);border-color:#5494ed}.pet-avatar-placeholder{width:56px;height:56px;border-radius:12px;background:#27272a;display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0;transition:transform .3s}.pet-card:hover .pet-avatar-placeholder{transform:scale(1.05);border-color:#5494ed}.pet-details{flex:1;min-width:0}.pet-name{font-weight:600;color:#f4f4f5;font-size:15px;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:.01em}.pet-species{font-size:12px;margin-bottom:4px}.species-name{color:#bcbcc2;font-style:italic}.species-unknown{color:#878792}.pet-meta{font-size:11px;color:#a1a1aa}.pet-status{flex-shrink:0}.status-indicator{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;cursor:help;border:2px solid hsl(240 4% 20%)}.pet-status-text{font-size:12px;color:#bcbcc2;margin-bottom:10px;padding-left:2px}.pet-actions{display:flex;gap:6px}.pet-action-btn{flex:1;background:#222225;border:1px solid hsl(240 4% 20%);border-radius:6px;padding:6px 8px;color:#f4f4f5;font-size:12px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;transition:all .2s}.pet-action-btn:hover{background:#2c2c30;border-color:#3d3d42;transform:translateY(-1px)}.pet-action-btn:active{transform:translateY(0)}@media(max-width:380px){.pet-card{padding:10px}.pet-avatar,.pet-avatar-placeholder{width:40px;height:40px}.pet-name{font-size:13px}.pet-action-btn span{display:none}}.notification-badge-btn{position:relative;background:#222225;border:1px solid hsl(240 4% 20%);border-radius:8px;padding:8px 10px;color:#f4f4f5;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s}.notification-badge-btn:hover{background:#2c2c30;border-color:#3d3d42;transform:scale(1.05)}.notification-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;padding:0 4px;border:2px solid hsl(240 4% 12%)}.notification-badge.critical{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;animation:pulse 2s infinite;box-shadow:0 2px 8px #ef444480}.notification-badge.info{background:linear-gradient(135deg,#5494ed,#3d85eb);color:#fff;box-shadow:0 2px 8px #5494ed66}@keyframes pulse{0%,to{opacity:1;transform:scale(1);box-shadow:0 2px 8px #ef444480}50%{opacity:.8;transform:scale(1.1);box-shadow:0 4px 16px #ef4444cc}}.notification-panel{position:fixed;top:auto;right:20px;bottom:100px;width:340px;max-height:450px;background:#1d1d20;border:1px solid hsl(240 4% 20%);border-radius:12px;box-shadow:0 8px 32px #00000080;z-index:10001;overflow:hidden;display:flex;flex-direction:column;animation:slideInNotifications .2s ease-out}@keyframes slideInNotifications{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.notification-panel-header{padding:12px 16px;border-bottom:1px solid hsl(240 4% 16%);display:flex;align-items:center;justify-content:space-between}.notification-panel-header h3{margin:0;font-size:14px;font-weight:600;color:#f4f4f5}.notification-close-btn{background:none;border:none;color:#a1a1aa;cursor:pointer;padding:4px;display:flex;align-items:center;border-radius:4px;transition:all .2s}.notification-close-btn:hover{background:#27272a;color:#f4f4f5}.notification-list{overflow-y:auto;max-height:440px;padding:8px}.notification-list::-webkit-scrollbar{width:6px}.notification-list::-webkit-scrollbar-track{background:#18181b}.notification-list::-webkit-scrollbar-thumb{background:#313135;border-radius:3px}.notification-item{background:#18181b;border-radius:8px;padding:12px;margin-bottom:8px;display:flex;gap:10px;border-left:3px solid transparent;transition:all .2s}.notification-item:hover{background:#1d1d20}.notification-item:last-child{margin-bottom:0}.notification-item.notification-critical{border-left-color:#ef4444}.notification-item.notification-warning{border-left-color:#f97316}.notification-item.notification-info{border-left-color:#5494ed}.notification-icon{flex-shrink:0;width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center}.notification-critical .notification-icon{background:#ef444426;color:#ef4444}.notification-warning .notification-icon{background:#f9731626;color:#f97316}.notification-info .notification-icon{background:#3b82f626;color:#5494ed}.notification-title{font-weight:600;font-size:13px;color:#f4f4f5;margin-bottom:4px}.notification-message{font-size:12px;color:#bcbcc2;line-height:1.4;margin-bottom:8px}.notification-actions{display:flex;gap:6px}.notification-action-btn{background:#27272a;border:1px solid hsl(240 4% 20%);border-radius:4px;padding:4px 10px;font-size:11px;font-weight:500;color:#f4f4f5;cursor:pointer;transition:all .2s}.notification-action-btn:hover{background:#313135;border-color:#3d3d42}.notification-dismiss-btn{background:none;border:none;padding:4px 8px;font-size:11px;color:#a1a1aa;cursor:pointer;border-radius:4px;transition:all .2s}.notification-dismiss-btn:hover{background:#27272a;color:#d7d7db}@media(max-width:500px){.notification-panel{width:calc(100vw - 32px);right:16px;left:16px;bottom:80px;max-height:60vh}}.analytics-dashboard{margin-bottom:12px}.analytics-loading{display:flex;align-items:center;gap:8px;padding:12px 16px;color:#a1a1aa;font-size:13px}.spinning{animation:spin 1s linear infinite}.analytics-toggle{width:100%;background:linear-gradient(135deg,#1d1d20,#18181b);border:2px solid hsl(240 4% 18%);border-radius:12px;padding:14px 18px;color:#f4f4f5;cursor:pointer;display:flex;align-items:center;gap:10px;font-weight:500;font-size:14px;transition:all .3s cubic-bezier(.4,0,.2,1)}.analytics-toggle:hover{background:#1d1d20;border-color:#313135}.analytics-badge{margin-left:auto;background:#5494ed;color:#fff;font-size:11px;font-weight:700;padding:2px 8px;border-radius:10px;min-width:24px;text-align:center}.analytics-content{background:#18181b;border:1px solid hsl(240 4% 16%);border-radius:10px;padding:12px;margin-top:8px}.analytics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:12px}.analytics-stat{background:#1d1d20;border:1px solid hsl(240 4% 16%);border-radius:8px;padding:10px;display:flex;align-items:center;gap:10px}.stat-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-info{flex:1;min-width:0}.stat-value{font-size:18px;font-weight:700;color:#f4f4f5;line-height:1;margin-bottom:4px}.stat-label{font-size:11px;color:#a1a1aa;text-transform:uppercase;letter-spacing:.5px}.analytics-section{background:#1d1d20;border:1px solid hsl(240 4% 16%);border-radius:8px;padding:10px;margin-bottom:8px}.analytics-section:last-child{margin-bottom:0}.analytics-section-title{font-size:12px;font-weight:600;color:#d7d7db;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.breakdown-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.breakdown-item{text-align:center;padding:8px;background:#18181b;border-radius:6px}.breakdown-label{display:block;font-size:11px;color:#a1a1aa;margin-bottom:4px}.breakdown-value{display:block;font-size:16px;font-weight:700;color:#f4f4f5}.species-list{display:flex;flex-direction:column;gap:6px}.species-item{display:flex;justify-content:space-between;align-items:center;padding:6px 8px;background:#18181b;border-radius:6px}.species-name{font-size:12px;color:#d7d7db;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.species-count{font-size:12px;font-weight:600;color:#5494ed;background:#3b82f626;padding:2px 8px;border-radius:10px;flex-shrink:0}.insights-list{display:flex;flex-direction:column;gap:6px}.insight-item{font-size:12px;color:#bcbcc2;padding:6px 8px;background:#18181b;border-radius:6px;line-height:1.4}.insight-item strong{color:#f4f4f5;font-weight:600}@media(max-width:340px){.analytics-grid{grid-template-columns:1fr}}.quick-action-menu{margin-bottom:12px}.quick-action-toggle{width:100%;background:linear-gradient(135deg,#5494ed,#5a7ce2);border:none;border-radius:10px;padding:12px 16px;color:#fff;cursor:pointer;display:flex;align-items:center;gap:8px;font-weight:600;font-size:13px;transition:all .2s;box-shadow:0 2px 8px #3b82f64d}.quick-action-toggle:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.quick-action-toggle:active{transform:translateY(0)}.quick-action-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:8px}.quick-action-item{background:linear-gradient(135deg,#1d1d20,#18181b);border:2px solid hsl(240 4% 18%);border-radius:12px;padding:14px;display:flex;align-items:flex-start;gap:12px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:left;position:relative;overflow:hidden}.quick-action-item:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,hsl(215 81% 63% / .08) 0%,transparent 100%);opacity:0;transition:opacity .3s}.quick-action-item:hover{background:linear-gradient(135deg,#222225,#1d1d20);border-color:#5494ed;transform:translateY(-3px);box-shadow:0 6px 20px #0000004d,0 0 0 1px #5494ed33}.quick-action-item:hover:before{opacity:1}.quick-action-item:active{transform:translateY(0)}.action-icon{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#27272a,#222225);display:flex;align-items:center;justify-content:center;color:var(--action-color);flex-shrink:0;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 6px #0003}.quick-action-item:hover .action-icon{transform:scale(1.1) rotate(5deg);background:linear-gradient(135deg,#2c2c30,#27272a);box-shadow:0 4px 12px #0000004d}.action-content{flex:1;min-width:0}.action-label{font-size:13px;font-weight:600;color:#f4f4f5;margin-bottom:2px}.action-description{font-size:11px;color:#a1a1aa;line-height:1.3}@media(max-width:380px){.quick-action-grid{grid-template-columns:1fr}}.tab-navigation{display:flex;background:#18181b;border-bottom:2px solid hsl(240 4% 16%);padding:0;gap:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:hsl(240 4% 30%) hsl(240 4% 10%)}.tab-navigation::-webkit-scrollbar{height:4px}.tab-navigation::-webkit-scrollbar-track{background:#18181b}.tab-navigation::-webkit-scrollbar-thumb{background:#494950;border-radius:2px}.tab-navigation::-webkit-scrollbar-thumb:hover{background:#62626a}.tab-nav-item{flex:0 0 auto;min-width:80px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:12px;background:transparent;border:none;border-bottom:3px solid transparent;color:#a1a1aa;cursor:pointer;transition:all .2s ease;position:relative;white-space:nowrap}.tab-nav-item:hover{background:#1d1d20;color:#d7d7db}.tab-nav-item.active{background:#222225;color:#5494ed;border-bottom-color:#5494ed}.tab-icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center}.tab-badge{position:absolute;top:-6px;right:-8px;background:linear-gradient(135deg,#5494ed,#3d85eb);color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid hsl(240 4% 10%);box-shadow:0 2px 8px #5494ed66;transition:all .3s}.tab-nav-item.active .tab-badge{background:linear-gradient(135deg,#5494ed,#3d85eb);animation:pulseBadge 2s infinite}@keyframes pulseBadge{0%,to{transform:scale(1);box-shadow:0 2px 8px #5494ed66}50%{transform:scale(1.1);box-shadow:0 4px 12px #5494ed99}}.tab-label{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}@media(max-width:380px){.tab-label{display:none}.tab-nav-item{padding:14px 8px}}.molt-calendar{padding:16px;height:100%;overflow-y:auto}.molt-calendar-header{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid hsl(240 4% 16%)}.molt-calendar-header h2{margin:0;font-size:18px;font-weight:600;color:#f4f4f5}.molt-calendar-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:#a1a1aa}.empty-icon{color:#6d6d78;margin-bottom:16px}.molt-calendar-empty h3{margin:0 0 8px;font-size:18px;color:#d7d7db}.molt-calendar-empty p{margin:0;font-size:14px;max-width:300px}.molt-cards-grid{display:flex;flex-direction:column;gap:12px}.molt-card{background:#18181b;border:2px solid hsl(240 4% 16%);border-radius:12px;padding:16px;cursor:pointer;transition:all .2s ease}.molt-card:hover{background:#1d1d20;border-color:#313135;transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.molt-card.molt-upcoming{border-color:#eb47eb;background:linear-gradient(135deg,#18181b,#eb47eb0d)}.molt-card.molt-card-selected{border-color:#5494ed}.molt-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.molt-pet-info{display:flex;align-items:center;gap:12px}.molt-pet-avatar{width:48px;height:48px;border-radius:10px;-o-object-fit:cover;object-fit:cover;border:2px solid hsl(240 4% 20%)}.molt-pet-avatar-placeholder{width:48px;height:48px;border-radius:10px;background:#222225;display:flex;align-items:center;justify-content:center;font-size:24px;border:2px solid hsl(240 4% 20%)}.molt-pet-name{font-size:15px;font-weight:600;color:#f4f4f5;margin-bottom:2px}.molt-pet-species{font-size:12px;color:#a1a1aa;font-style:italic}.molt-upcoming-badge{display:flex;align-items:center;gap:6px;background:#eb47eb;color:#fff;padding:6px 12px;border-radius:20px;font-size:11px;font-weight:600;animation:pulse 2s infinite}.molt-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:12px}.molt-stat{text-align:center;padding:10px;background:#222225;border-radius:8px}.molt-stat-label{font-size:10px;color:#a1a1aa;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.molt-stat-value{font-size:18px;font-weight:700;color:#f4f4f5}.molt-prediction{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#5494ed26;border:1px solid hsl(215 81% 63% / .3);border-radius:8px;color:#75a8f0;font-size:12px;font-weight:500}.molt-history{margin-top:16px;padding-top:16px;border-top:1px solid hsl(240 4% 20%)}.molt-history-title{font-size:12px;font-weight:600;color:#d7d7db;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.molt-timeline{display:flex;flex-direction:column;gap:12px}.molt-timeline-item{display:flex;gap:12px;position:relative}.molt-timeline-item:not(:last-child):before{content:"";position:absolute;left:5px;top:20px;bottom:-12px;width:2px;background:#313135}.molt-timeline-dot{width:12px;height:12px;border-radius:50%;background:#eb47eb;border:2px solid hsl(240 4% 10%);flex-shrink:0;margin-top:4px}.molt-timeline-content{flex:1}.molt-timeline-date{font-size:13px;font-weight:600;color:#f4f4f5;margin-bottom:4px}.molt-timeline-notes{font-size:12px;color:#bcbcc2;line-height:1.4}.molt-calendar::-webkit-scrollbar{width:6px}.molt-calendar::-webkit-scrollbar-track{background:#18181b}.molt-calendar::-webkit-scrollbar-thumb{background:#313135;border-radius:3px}.molt-calendar::-webkit-scrollbar-thumb:hover{background:#3d3d42}.reminders-panel{display:flex;flex-direction:column;height:100%;padding:1rem;overflow-y:auto}.reminders-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;color:#a1a1aa;gap:1rem}.reminders-loading .spinner{animation:spin 1s linear infinite}.reminders-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid hsl(240 3.7% 15.9%)}.reminders-title{display:flex;align-items:center;gap:.5rem}.reminders-title h3{margin:0;font-size:1.125rem;font-weight:600;color:#f4f4f5}.reminders-filters{display:flex;gap:.5rem}.filter-btn{padding:.375rem .75rem;font-size:.875rem;border:1px solid hsl(240 3.7% 15.9%);background:#0f0f10;color:#a1a1aa;border-radius:.375rem;cursor:pointer;transition:all .2s}.filter-btn:hover{background:#27272a;color:#f4f4f5}.filter-btn.active{background:linear-gradient(135deg,#fac814,#f59f0a);color:#18181b;border-color:transparent;font-weight:600}.reminders-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center;color:#a1a1aa}.reminders-empty svg{color:#3d3d42;margin-bottom:1rem}.reminders-empty h4{margin:0 0 .5rem;font-size:1rem;color:#f4f4f5}.reminders-empty p{margin:0;font-size:.875rem;max-width:300px;line-height:1.5}.reminders-list{display:flex;flex-direction:column;gap:.75rem}.reminder-card{display:flex;gap:.75rem;padding:1rem;background:#0f0f10;border:1px solid hsl(240 3.7% 15.9%);border-radius:.5rem;transition:all .2s}.reminder-card:hover{border-color:#fac8144d}.reminder-card.overdue{border-color:#dc282880;background:#dc28280d}.reminder-card.completed{opacity:.6}.reminder-card.completed .reminder-title-row h4{text-decoration:line-through}.reminder-icon{font-size:1.5rem;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:#27272a;border-radius:.375rem;flex-shrink:0}.reminder-content{flex:1;display:flex;flex-direction:column;gap:.375rem}.reminder-title-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.reminder-title-row h4{margin:0;font-size:.9375rem;font-weight:600;color:#f4f4f5}.overdue-badge{display:flex;align-items:center;gap:.25rem;padding:.125rem .5rem;font-size:.75rem;font-weight:600;color:#dc2828;background:#dc282826;border-radius:.25rem;white-space:nowrap}.reminder-pet{margin:0;font-size:.8125rem;color:#fac814;font-weight:500}.reminder-date{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:#a1a1aa}.reminder-snoozed{font-size:.75rem;color:#f59f0a;padding:.25rem .5rem;background:#fac8141a;border-radius:.25rem;width:-moz-fit-content;width:fit-content}.reminder-actions{display:flex;align-items:center;gap:.5rem}.action-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:1px solid hsl(240 3.7% 15.9%);background:#0f0f10;border-radius:.375rem;cursor:pointer;transition:all .2s;color:#a1a1aa}.action-btn:hover{background:#27272a}.action-btn.complete{color:#16a249}.action-btn.complete:hover{background:#16a24926;border-color:#16a249}.action-btn.delete{color:#dc2828}.action-btn.delete:hover{background:#dc282826;border-color:#dc2828}.snooze-menu{position:relative}.snooze-menu:hover .snooze-dropdown{display:flex}.snooze-dropdown{display:none;position:absolute;bottom:100%;right:0;margin-bottom:.5rem;flex-direction:column;background:#18181b;border:1px solid hsl(240 3.7% 15.9%);border-radius:.375rem;box-shadow:0 4px 12px #0000004d;overflow:hidden;z-index:10}.snooze-dropdown button{padding:.5rem 1rem;font-size:.875rem;color:#f4f4f5;background:transparent;border:none;cursor:pointer;text-align:left;white-space:nowrap;transition:background .2s}.snooze-dropdown button:hover{background:#27272a}.reminders-toolbar{display:flex;gap:.5rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid hsl(240 3.7% 15.9%)}.toolbar-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;font-size:.875rem;font-weight:500;border:1px solid hsl(240 3.7% 15.9%);background:#0f0f10;color:#f4f4f5;border-radius:.375rem;cursor:pointer;transition:all .2s}.toolbar-btn:hover:not(:disabled){background:#27272a;border-color:#fac8144d}.toolbar-btn:disabled{opacity:.5;cursor:not-allowed}.toolbar-btn .spinning{animation:spin 1s linear infinite}.schedules-panel{margin-bottom:1rem;padding:.75rem;background:#0c0c0d;border:1px solid hsl(240 3.7% 15.9%);border-radius:.5rem}.schedules-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid hsl(240 3.7% 15.9%);gap:.25rem}.schedules-header h4{margin:0;font-size:.9375rem;font-weight:600;color:#f4f4f5;flex:1 1 100%}.schedules-subtitle{margin:0;font-size:.75rem;color:#a1a1aa;flex:1 1 auto}.schedules-header .close-btn{flex-shrink:0;align-self:flex-start;margin-top:-.25rem}.schedules-list{display:flex;flex-direction:column;gap:.5rem}.schedules-empty{padding:2rem;text-align:center;color:#a1a1aa;font-size:.875rem}.schedule-card{padding:.625rem;background:#18181b;border:1px solid hsl(240 3.7% 15.9%);border-radius:.375rem}.schedule-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.schedule-header h5{margin:0 0 .125rem;font-size:.875rem;font-weight:600;color:#f4f4f5}.schedule-species{margin:0;font-size:.6875rem;color:#a1a1aa;font-style:italic}.schedule-actions{display:flex;gap:.375rem}.action-btn.save{color:#16a249}.action-btn.save:hover{background:#16a24926;border-color:#16a249}.action-btn.cancel,.action-btn.edit{color:#a1a1aa}.action-btn.cancel:hover,.action-btn.edit:hover{background:#27272a;color:#f4f4f5}.schedule-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.25rem}.schedule-input-group{display:flex;flex-direction:column;gap:.25rem;min-width:0}.schedule-input-group label{display:flex;align-items:center;gap:.1875rem;margin-bottom:.125rem;font-size:.625rem;font-weight:500;color:#a1a1aa;white-space:nowrap}.schedule-input-group input{padding:.25rem .375rem;font-size:.75rem;background:#0f0f10;border:1px solid hsl(240 3.7% 15.9%);border-radius:.25rem;color:#f4f4f5;transition:all .2s;width:100%;min-width:0}.schedule-input-group input:focus{outline:none;border-color:#fac81480}.schedule-input-group input:disabled{opacity:.5;cursor:not-allowed}.schedule-hint{margin:.375rem 0 0;font-size:.625rem;color:#a1a1aa;font-style:italic}.modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;overflow-y:auto}.modal-content{width:100%;max-width:28rem;max-height:calc(100vh - 2rem);background:#161618;border:1px solid hsl(240 3.7% 15.9%);border-radius:.5rem;box-shadow:0 20px 50px #00000080;display:flex;flex-direction:column;margin:auto}.modal-content.modal-small{max-width:24rem}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid hsl(240 3.7% 15.9%);flex-shrink:0}.modal-header h4{margin:0;font-size:1.125rem;font-weight:600;color:#f4f4f5;display:flex;align-items:center;gap:.5rem}.close-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:none;background:transparent;color:#a1a1aa;cursor:pointer;border-radius:.25rem;transition:all .2s}.close-btn:hover{background:#27272a;color:#f4f4f5}.modal-body{padding:1.25rem;display:flex;flex-direction:column;gap:1rem;overflow-y:auto;flex:1}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:500;color:#f4f4f5}.readonly-value{padding:.625rem .75rem;font-size:.875rem;background:#27272a;border:1px solid hsl(240 3.7% 25%);border-radius:.375rem;color:#a1a1aa}.form-group select,.form-group input{padding:.625rem .75rem;font-size:.875rem;background:#0f0f10;border:1px solid hsl(240 3.7% 15.9%);border-radius:.375rem;color:#f4f4f5;transition:all .2s}.form-group select:focus,.form-group input:focus{outline:none;border-color:#fac81480}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.modal-footer{padding:1rem 1.25rem;border-top:1px solid hsl(240 3.7% 15.9%);display:flex;gap:.75rem;flex-shrink:0}.btn-secondary,.btn-primary{flex:1;padding:.625rem 1rem;font-size:.875rem;font-weight:600;border-radius:.375rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem}.btn-secondary{background:transparent;border:1px solid hsl(240 3.7% 15.9%);color:#f4f4f5}.btn-secondary:hover{background:#27272a}.btn-primary{background:linear-gradient(135deg,#fac814,#f59f0a);border:none;color:#18181b}.btn-primary:hover{opacity:.9}.animated-companion{position:fixed;z-index:9999;-webkit-user-select:none;-moz-user-select:none;user-select:none;filter:drop-shadow(0 4px 12px rgba(0,0,0,.15));overflow:visible}@media(max-width:768px){.animated-companion{filter:drop-shadow(0 2px 6px rgba(0,0,0,.2))}.companion-body{transform:scale(1)!important}.companion-controls{top:-30px;right:-5px;opacity:1!important}.companion-control-btn{padding:6px!important;min-width:28px!important;min-height:28px!important}.companion-tooltip{font-size:11px;padding:4px 8px}}.companion-controls{position:absolute;top:-35px;right:0;display:flex;gap:4px;opacity:0;transition:opacity .2s;z-index:10000}.animated-companion:hover .companion-controls{opacity:1}@media(hover:none)and (pointer:coarse){.companion-controls{opacity:1!important}}.companion-drag-handle{cursor:move;padding:4px 8px;background:#000000b3;color:#fff;border-radius:4px;font-size:10px;display:flex;align-items:center;justify-content:center}.companion-control-btn{background:#000000b3;border:none;color:#fff;padding:4px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.companion-control-btn:hover{background:#000000e6}.companion-minimized{position:fixed;z-index:9999}.companion-restore-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;width:48px;height:48px;border-radius:50%;cursor:pointer;font-size:24px;box-shadow:0 4px 12px #0003;transition:transform .2s}.companion-restore-btn:hover{transform:scale(1.1)}.companion-body{position:relative;transition:transform .3s ease;overflow:visible}.companion-body:active{transform:scale(.95)}.spider-container{display:flex;align-items:center;justify-content:center;position:relative}.spider-body-main{display:flex;align-items:center;gap:4px;z-index:2}.spider-cephalothorax{width:32px;height:32px;background:linear-gradient(135deg,#8b4513,#654321);border-radius:50%;position:relative;box-shadow:0 2px 8px #0000004d}.spider-abdomen{width:40px;height:36px;background:linear-gradient(135deg,sienna,#8b4513);border-radius:60% 40% 40% 60%/50%;box-shadow:0 2px 8px #0000004d}.spider-eyes{position:absolute;top:8px;left:50%;transform:translate(-50%);display:flex;gap:6px}.spider-eye{width:6px;height:6px;background:#000;border-radius:50%;position:relative}.spider-eye:after{content:"";position:absolute;width:3px;height:3px;background:#fff;border-radius:50%;top:1px;left:1px}.spider-legs{display:flex;flex-direction:column;gap:2px;position:absolute;z-index:1}.spider-legs-left{left:0;top:50%;transform:translateY(-50%)}.spider-legs-right{right:0;top:50%;transform:translateY(-50%)}.spider-leg{width:35px;height:2px;background:linear-gradient(90deg,#654321,#8b4513);border-radius:2px;transform-origin:right center}.spider-legs-right .spider-leg{transform-origin:left center}.spider-legs-left .spider-leg.leg-1{transform:rotate(-25deg)}.spider-legs-left .spider-leg.leg-2{transform:rotate(-10deg)}.spider-legs-left .spider-leg.leg-3{transform:rotate(10deg)}.spider-legs-left .spider-leg.leg-4,.spider-legs-right .spider-leg.leg-1{transform:rotate(25deg)}.spider-legs-right .spider-leg.leg-2{transform:rotate(10deg)}.spider-legs-right .spider-leg.leg-3{transform:rotate(-10deg)}.spider-legs-right .spider-leg.leg-4{transform:rotate(-25deg)}.companion-mood{position:absolute;bottom:-8px;right:-8px;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;border:2px solid white;box-shadow:0 2px 6px #0003;z-index:3}.companion-tooltip{position:absolute;bottom:-35px;left:50%;transform:translate(-50%);background:#000000e6;color:#fff;padding:6px 12px;border-radius:6px;font-size:12px;white-space:nowrap;display:flex;align-items:center;gap:6px;animation:tooltipFadeIn .2s ease}.companion-tooltip:before{content:"";position:absolute;top:-4px;left:50%;transform:translate(-50%);width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(0,0,0,.9)}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%) translateY(5px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.companion-notification-badge{position:absolute;top:-5px;right:-5px;background:#ef4444;color:#fff;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;border:2px solid white;animation:pulse 2s infinite;z-index:4}.animated-companion.idle .spider-body-main{animation:breathe 3s ease-in-out infinite}.animated-companion.idle .spider-leg{animation:legIdle 4s ease-in-out infinite}.animated-companion.idle .spider-legs-left .spider-leg.leg-1,.animated-companion.idle .spider-legs-right .spider-leg.leg-1{animation-delay:0s}.animated-companion.idle .spider-legs-left .spider-leg.leg-2,.animated-companion.idle .spider-legs-right .spider-leg.leg-2{animation-delay:.1s}.animated-companion.idle .spider-legs-left .spider-leg.leg-3,.animated-companion.idle .spider-legs-right .spider-leg.leg-3{animation-delay:.2s}.animated-companion.idle .spider-legs-left .spider-leg.leg-4,.animated-companion.idle .spider-legs-right .spider-leg.leg-4{animation-delay:.3s}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes legIdle{0%,to{transform:rotate(var(--base-rotation, 0deg))}50%{transform:rotate(calc(var(--base-rotation, 0deg) + 5deg))}}.animated-companion.walking .spider-container{animation:bounce .6s ease-in-out infinite}.animated-companion.walking .spider-leg{animation:legWalk .6s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes legWalk{0%,to{transform:rotate(var(--base-rotation, 0deg))}25%{transform:rotate(calc(var(--base-rotation, 0deg) - 15deg))}75%{transform:rotate(calc(var(--base-rotation, 0deg) + 15deg))}}.animated-companion.excited .spider-container{animation:wiggle .5s ease-in-out}.animated-companion.excited .spider-leg{animation:legExcited .5s ease-in-out}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg) scale(1.05)}75%{transform:rotate(5deg) scale(1.05)}}@keyframes legExcited{0%,to{transform:rotate(var(--base-rotation, 0deg))}50%{transform:rotate(calc(var(--base-rotation, 0deg) + 20deg)) scaleX(1.2)}}.animated-companion.thinking .spider-cephalothorax{animation:tilt 1s ease-in-out infinite}@keyframes tilt{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}.animated-companion.sleeping .spider-container{animation:sleep 3s ease-in-out infinite}.animated-companion.sleeping .spider-leg{animation:legSleep 3s ease-in-out infinite}@keyframes sleep{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(2px) scale(.98)}}@keyframes legSleep{0%,to{opacity:1}50%{opacity:.7}}.animated-companion.alert .spider-container{animation:alert .3s ease-in-out 3}.animated-companion.alert .spider-eye:after{animation:eyeAlert .3s ease-in-out 3}@keyframes alert{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes eyeAlert{0%,to{transform:scale(1)}50%{transform:scale(1.5)}}.animated-companion.celebrating .spider-container{animation:celebrate .6s ease-in-out 3}.animated-companion.celebrating .spider-leg{animation:legCelebrate .6s ease-in-out 3}@keyframes celebrate{0%,to{transform:rotate(0) scale(1)}25%{transform:rotate(-10deg) scale(1.1)}75%{transform:rotate(10deg) scale(1.1)}}@keyframes legCelebrate{0%,to{transform:rotate(var(--base-rotation, 0deg))}50%{transform:rotate(calc(var(--base-rotation, 0deg) + 30deg)) scaleX(1.3)}}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}@media(max-width:768px){.spider-container{width:90px;height:60px}.spider-cephalothorax{width:24px;height:24px}.spider-abdomen{width:30px;height:27px}.spider-leg{width:25px}.companion-mood{width:22px;height:22px;font-size:12px}}.compact-chat-bubble{position:fixed;width:480px;max-width:calc(100vw - 40px);height:720px;max-height:calc(100vh - 80px);background:#1a1a1a;border-radius:16px;box-shadow:0 8px 32px #0006,0 2px 8px #0003;display:flex;flex-direction:column;overflow:hidden;animation:bubbleSlideIn .3s cubic-bezier(.34,1.56,.64,1);z-index:9998;border:1px solid rgba(255,255,255,.1);-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:width .3s ease,height .3s ease,max-width .3s ease}.compact-chat-bubble.expanded{width:85vw;max-width:1400px;height:90vh}.compact-chat-bubble.dragging{box-shadow:0 16px 48px #0009,0 4px 16px #0000004d;transition:none}.compact-chat-bubble.dragging *{pointer-events:none}@keyframes bubbleSlideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:768px){.compact-chat-bubble{inset:0!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;border-radius:0!important;transform:none!important}.compact-chat-bubble{cursor:grab!important}.compact-chat-bubble.dragging{cursor:grabbing!important}.bubble-header{padding:10px 12px!important}.companion-avatar{width:32px!important;height:32px!important;font-size:16px!important}.bubble-header-info h3{font-size:14px!important}.bubble-header-info .status-text{font-size:11px!important}.bubble-icon-btn{width:30px!important;height:30px!important}.bubble-quick-actions{padding:8px 10px!important;gap:6px!important}.bubble-quick-btn{padding:6px 10px!important;font-size:12px!important}}.bubble-header{display:flex;align-items:center;justify-content:space-between;padding:16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}.bubble-header-left{display:flex;align-items:center;gap:12px}.companion-avatar{position:relative;width:40px;height:40px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px}.avatar-pulse{position:absolute;top:-2px;right:-2px;width:12px;height:12px;background:#22c55e;border:2px solid white;border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.7}}.bubble-header-info h3{margin:0;font-size:16px;font-weight:600}.status-text{font-size:12px;opacity:.9}.bubble-header-actions{display:flex;gap:4px}.bubble-icon-btn{width:32px;height:32px;border:none;background:#fff3;color:#fff;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;pointer-events:auto;position:relative;z-index:10}.bubble-icon-btn:hover{background:#ffffff4d}.bubble-quick-actions{display:flex;gap:8px;padding:12px 16px;background:#0a0a0a;border-bottom:1px solid rgba(255,255,255,.1)}.bubble-quick-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.bubble-quick-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.bubble-quick-btn:active{transform:translateY(0)}.bubble-quick-btn.active{background:linear-gradient(135deg,#764ba2,#667eea);box-shadow:0 2px 8px #667eea80}.bubble-tabs{display:flex;background:#252525;border-bottom:1px solid rgba(255,255,255,.1);padding:0 4px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.bubble-tabs::-webkit-scrollbar{display:none}.bubble-tab{flex:0 0 auto;min-width:-moz-fit-content;min-width:fit-content;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 12px;border:none;background:transparent;color:#9ca3af;font-size:12px;font-weight:500;cursor:pointer;position:relative;transition:all .2s;white-space:nowrap}.bubble-tab:hover{color:#d1d5db;background:#ffffff0d}.bubble-tab.active{color:#667eea}.bubble-tab.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:#667eea}.tab-badge{background:#ef4444;color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center}.bubble-content{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#0a0a0a!important;color:#e5e7eb}.chat-tab,.dashboard-tab,.molt-sexing-tab,.calendar-tab,.reminders-tab,.friends-tab,.carehub-tab{background:#0a0a0a!important;color:#e5e7eb;height:100%;overflow:auto}.bubble-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth}.bubble-messages::-webkit-scrollbar{width:6px}.bubble-messages::-webkit-scrollbar-track{background:transparent}.bubble-messages::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.bubble-messages::-webkit-scrollbar-thumb:hover{background:#94a3b8}.message{display:flex;gap:8px;align-items:flex-start;animation:messageSlideIn .2s ease-out}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-avatar{width:28px;height:28px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}.message-content{display:flex;flex-direction:column;gap:4px;max-width:75%}.message-user .message-content{align-items:flex-end}.message-text{padding:10px 14px;border-radius:16px;font-size:14px;line-height:1.5;word-wrap:break-word}.message-assistant .message-text{background:#f1f3f5;color:#212529;border-bottom-left-radius:4px}.message-user .message-text{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-bottom-right-radius:4px}.message-time{font-size:11px;color:#6c757d;padding:0 4px}.typing-indicator{display:flex;gap:4px;padding:10px 14px;background:#f1f3f5;border-radius:16px 16px 16px 4px}.typing-indicator span{width:8px;height:8px;background:#adb5bd;border-radius:50%;animation:typingDot 1.4s infinite}@keyframes typingDot{0%,60%,to{transform:translateY(0);opacity:.7}30%{transform:translateY(-8px);opacity:1}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:#6c757d;height:100%}.empty-icon{color:#adb5bd;margin-bottom:12px}.empty-state p{font-size:15px;font-weight:500;color:#495057;margin:0 0 8px}.empty-state small{font-size:13px;color:#6c757d}.quick-prompts{display:flex;flex-direction:column;gap:8px;margin-top:20px;width:100%}.quick-prompt-btn{padding:10px 16px;background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;font-size:13px;color:#495057;cursor:pointer;transition:all .2s;text-align:left}.quick-prompt-btn:hover{background:#e9ecef;border-color:#667eea;color:#667eea;transform:translateY(-2px)}.bubble-input-form{display:flex;gap:8px;padding:12px 16px;border-top:1px solid rgba(255,255,255,.1);background:#1a1a1a}.bubble-input{flex:1;padding:10px 14px;border:1px solid rgba(255,255,255,.1);border-radius:20px;font-size:14px;outline:none;transition:border-color .2s;background:#252525;color:#e5e7eb}.bubble-input::-moz-placeholder{color:#6b7280}.bubble-input::placeholder{color:#6b7280}.bubble-input:focus{border-color:#667eea}.bubble-input:disabled{background:#1f1f1f;cursor:not-allowed;opacity:.6}.bubble-send-btn{width:40px;height:40px;border:none;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s,box-shadow .2s;flex-shrink:0}.bubble-send-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 12px #667eea66}.bubble-send-btn:disabled{opacity:.5;cursor:not-allowed}.bubble-insights{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.bubble-insights::-webkit-scrollbar{width:6px}.bubble-insights::-webkit-scrollbar-track{background:transparent}.bubble-insights::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.insight-card{padding:14px;border-radius:12px;border:1px solid;background:#fff;animation:messageSlideIn .2s ease-out}.insight-card.insight-warning{border-color:#fbbf24;background:#fffbeb}.insight-card.insight-prediction{border-color:#60a5fa;background:#eff6ff}.insight-card.insight-tip{border-color:#a78bfa;background:#f5f3ff}.insight-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-weight:600;font-size:13px}.insight-card.insight-warning .insight-header{color:#d97706}.insight-card.insight-prediction .insight-header{color:#2563eb}.insight-card.insight-tip .insight-header{color:#7c3aed}.insight-message{font-size:13px;color:#495057;margin:0;line-height:1.5}.insight-action-btn{margin-top:10px;padding:6px 12px;border:none;background:#0000000d;color:#495057;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.insight-action-btn:hover{background:#0000001a;transform:translateY(-1px)}@media(max-width:768px){.compact-chat-bubble{width:calc(100vw - 20px);height:calc(100vh - 100px);bottom:10px;right:10px}}.compact-collection{height:100%;display:flex;flex-direction:column;background:#1a1a1a;color:#e5e7eb;overflow:hidden}.compact-stats{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#252525;border-bottom:1px solid rgba(255,255,255,.1);font-size:13px}.compact-stat{display:flex;align-items:center;gap:6px;color:#10b981}.compact-stat.warning{color:#f59e0b}.compact-stat.info{color:#3b82f6}.compact-stat.muted{color:#9ca3af;margin-left:auto;font-size:12px}.compact-stat-divider{width:1px;height:16px;background:#ffffff1a;margin:0 4px}.compact-controls{display:flex;flex-direction:column;gap:8px;padding:12px 16px;background:#1a1a1a;border-bottom:1px solid rgba(255,255,255,.1)}.compact-search{flex:1;display:flex;align-items:center;gap:8px;background:#252525;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:6px 10px}.compact-search svg{color:#6b7280;flex-shrink:0}.compact-search input{flex:1;background:transparent;border:none;outline:none;color:#e5e7eb;font-size:13px;min-width:0}.compact-search input::-moz-placeholder{color:#6b7280}.compact-search input::placeholder{color:#6b7280}.compact-clear-btn{background:transparent;border:none;padding:2px;cursor:pointer;color:#6b7280;display:flex;align-items:center;justify-content:center;border-radius:3px;transition:all .2s}.compact-clear-btn:hover{background:#ffffff1a;color:#e5e7eb}.compact-mobile-toggle{display:none;padding:8px 12px}.compact-toggle-filters-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s;width:100%;justify-content:center}.compact-toggle-filters-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}@media(max-width:768px){.compact-mobile-toggle{display:block}}.compact-filters-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.compact-add-pet-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;padding:6px 12px;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .2s;white-space:nowrap}.compact-add-pet-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.compact-add-pet-btn:active{transform:translateY(0)}.compact-type-filter{background:#252525;border:1px solid rgba(255,255,255,.1);color:#e5e7eb;padding:6px 10px;border-radius:6px;font-size:11px;font-weight:500;cursor:pointer;outline:none;transition:all .2s}.compact-type-filter:hover{background:#ffffff0d;border-color:#fff3}.compact-type-filter:focus{border-color:#667eea}.compact-add-log-btn{background:#667eea;border:none;color:#fff;padding:6px 12px;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .2s;margin-left:auto}.compact-add-log-btn:hover{background:#5568d3;transform:translateY(-1px)}.compact-settings-btn{background:#252525;border:1px solid rgba(255,255,255,.1);color:#9ca3af;padding:6px 10px;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .2s}.compact-settings-btn:hover{background:#ffffff0d;color:#e5e7eb;border-color:#fff3}.compact-filter-toggle-btn{background:#252525;border:1px solid rgba(255,255,255,.1);color:#9ca3af;padding:6px 10px;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .2s}.compact-filter-toggle-btn:hover{background:#ffffff0d;color:#e5e7eb}.compact-filter-toggle-btn.active{background:#667eea;color:#fff;border-color:#667eea}.compact-advanced-filters{background:#252525;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px;margin-top:8px}.compact-filter-section{margin-bottom:12px}.compact-filter-section:last-of-type{margin-bottom:8px}.compact-filter-section label{display:block;font-size:11px;font-weight:600;color:#9ca3af;margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.compact-sort-controls{display:flex;gap:6px}.compact-sort-select{flex:1;background:#1a1a1a;border:1px solid rgba(255,255,255,.1);color:#e5e7eb;padding:6px 8px;border-radius:4px;font-size:12px;outline:none;cursor:pointer}.compact-sort-select:focus{border-color:#667eea}.compact-sort-order-btn{background:#1a1a1a;border:1px solid rgba(255,255,255,.1);color:#9ca3af;padding:6px 10px;border-radius:4px;font-size:11px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .2s}.compact-sort-order-btn:hover{background:#ffffff0d;color:#e5e7eb}.compact-filter-chips{display:flex;flex-wrap:wrap;gap:6px}.compact-chip{background:#1a1a1a;border:1px solid rgba(255,255,255,.1);color:#9ca3af;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:500;cursor:pointer;transition:all .2s;text-transform:capitalize}.compact-chip:hover{background:#ffffff0d;color:#e5e7eb}.compact-chip.active{background:#667eea;color:#fff;border-color:#667eea}.compact-clear-filters-btn{width:100%;background:transparent;border:1px solid rgba(255,255,255,.1);color:#9ca3af;padding:6px 10px;border-radius:4px;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s;margin-top:4px}.compact-clear-filters-btn:hover{background:#ffffff0d;color:#e5e7eb}.compact-filters{display:flex;gap:4px}.compact-filter-btn{background:#252525;border:1px solid rgba(255,255,255,.1);color:#9ca3af;padding:6px 10px;border-radius:6px;cursor:pointer;font-size:12px;display:flex;align-items:center;gap:4px;transition:all .2s}.compact-filter-btn:hover{background:#2a2a2a;color:#e5e7eb;border-color:#fff3}.compact-filter-btn.active{background:#667eea;color:#fff;border-color:#667eea}.compact-view-toggle{display:flex;gap:4px;border:1px solid rgba(255,255,255,.1);border-radius:6px;background:#252525;padding:2px}.compact-view-toggle button{background:transparent;border:none;padding:6px 8px;cursor:pointer;color:#9ca3af;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s}.compact-view-toggle button:hover{color:#e5e7eb;background:#ffffff0d}.compact-view-toggle button.active{background:#667eea;color:#fff}.compact-pets{flex:1;overflow-y:auto;padding:16px}.compact-pets.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;align-content:start}.compact-pets.list{display:flex;flex-direction:column;gap:8px}.compact-pet-card{background:#252525;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px;transition:all .2s}.compact-pet-card:hover{border-color:#fff3;background:#2a2a2a}.compact-pet-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.compact-pet-title{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.compact-pet-type-icon{font-size:16px;flex-shrink:0;line-height:1}.compact-pet-header h4{font-size:14px;font-weight:600;color:#e5e7eb;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.warning-icon{color:#f59e0b;flex-shrink:0}.compact-pet-species-row{display:flex;align-items:center;gap:6px;margin-bottom:8px;flex-wrap:wrap}.compact-pet-type-badge{font-size:9px;font-weight:700;text-transform:uppercase;padding:2px 6px;border-radius:4px;letter-spacing:.5px;flex-shrink:0}.compact-pet-species{flex:1;min-width:0;font-size:12px;color:#9ca3af;margin:0 0 8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-pet-info{display:flex;align-items:center;gap:12px;margin-bottom:10px}.compact-pet-stat{display:flex;align-items:center;gap:4px;font-size:12px;color:#9ca3af}.compact-pet-stat svg{flex-shrink:0}.compact-pet-stat .needs-care{color:#f59e0b;font-weight:600}.compact-pet-actions{display:flex;gap:6px;margin-top:8px}.compact-action-btn{flex:1;background:#2a2a2a;border:1px solid rgba(255,255,255,.1);color:#e5e7eb;padding:6px 8px;border-radius:4px;font-size:11px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;transition:all .2s;font-weight:500}.compact-action-btn:hover:not(:disabled){background:#333;border-color:#fff3}.compact-action-btn:disabled{opacity:.5;cursor:not-allowed}.compact-action-btn.feed{color:#f59e0b;border-color:#f59e0b33}.compact-action-btn.feed:hover:not(:disabled){background:#f59e0b1a;border-color:#f59e0b4d}.compact-action-btn.water{color:#3b82f6;border-color:#3b82f633}.compact-action-btn.water:hover:not(:disabled){background:#3b82f61a;border-color:#3b82f64d}.compact-action-btn.view{color:#667eea;border-color:#667eea33}.compact-action-btn.view:hover:not(:disabled){background:#667eea1a;border-color:#667eea4d}.compact-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 20px;color:#6b7280;text-align:center}.compact-empty span{font-size:48px;opacity:.5}.compact-empty p{margin:0;font-size:14px}.compact-pets.list .compact-pet-card{display:flex;align-items:center;gap:12px;padding:10px 12px}.compact-pets.list .compact-pet-header{flex:1;margin-bottom:0;min-width:0}.compact-pets.list .compact-pet-species{margin:0}.compact-pets.list .compact-pet-info{margin:0;flex-shrink:0}.compact-pets.list .compact-pet-actions{margin:0;flex-shrink:0;gap:4px}.compact-pets.list .compact-action-btn{min-width:60px}.compact-pets::-webkit-scrollbar{width:6px}.compact-pets::-webkit-scrollbar-track{background:transparent}.compact-pets::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.compact-pets::-webkit-scrollbar-thumb:hover{background:#fff3}.compact-add-log-modal{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.compact-add-log-content{background:#1a1a1a;border:1px solid rgba(255,255,255,.1);border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow:auto;box-shadow:0 20px 25px -5px #0000004d}.compact-add-log-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid rgba(255,255,255,.1)}.compact-add-log-header h3{margin:0;font-size:16px;font-weight:600;color:#e5e7eb}.compact-modal-close{background:transparent;border:none;color:#9ca3af;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.compact-modal-close:hover{background:#ffffff0d;color:#e5e7eb}.compact-add-log-form{padding:20px}.compact-form-row{display:flex;gap:12px;margin-bottom:16px}.compact-form-field{flex:1;display:flex;flex-direction:column;gap:6px}.compact-form-field.small{flex:0 0 100px}.compact-form-field label{font-size:12px;font-weight:500;color:#9ca3af}.compact-form-field input,.compact-form-field select,.compact-form-field textarea{background:#252525;border:1px solid rgba(255,255,255,.1);color:#e5e7eb;padding:8px 10px;border-radius:6px;font-size:13px;outline:none;font-family:inherit;transition:border-color .2s}.compact-form-field input:focus,.compact-form-field select:focus,.compact-form-field textarea:focus{border-color:#667eea}.compact-form-field textarea{resize:vertical}.compact-form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px;padding-top:16px;border-top:1px solid rgba(255,255,255,.1)}.compact-form-btn{padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;border:none;display:flex;align-items:center;gap:6px;transition:all .2s}.compact-form-btn.cancel{background:transparent;border:1px solid rgba(255,255,255,.1);color:#9ca3af}.compact-form-btn.cancel:hover{background:#ffffff0d;color:#e5e7eb}.compact-form-btn.save{background:#667eea;color:#fff}.compact-form-btn.save:hover{background:#5568d3;transform:translateY(-1px)}.compact-pet-details{height:100%;display:flex;flex-direction:column;background:#1a1a1a;color:#e5e7eb;overflow:hidden}.compact-details-header{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#252525;border-bottom:1px solid rgba(255,255,255,.1)}.compact-back-btn{background:transparent;border:1px solid rgba(255,255,255,.1);color:#9ca3af;padding:6px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.compact-back-btn:hover{background:#ffffff0d;color:#e5e7eb;border-color:#fff3}.compact-details-title{flex:1;min-width:0}.compact-details-title h3{font-size:15px;font-weight:600;margin:0;color:#e5e7eb;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-details-title p{font-size:12px;color:#9ca3af;margin:2px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compact-add-btn{background:#667eea;border:none;color:#fff;padding:8px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.compact-add-btn:hover{background:#5568d3}.compact-details-stats{display:flex;align-items:center;gap:16px;padding:12px 16px;background:#1a1a1a;border-bottom:1px solid rgba(255,255,255,.1)}.compact-stat-item{display:flex;align-items:center;gap:6px;font-size:13px;color:#9ca3af}.compact-stat-item svg{flex-shrink:0}.compact-stat-item span{font-weight:600;color:#e5e7eb}.compact-pet-info-card{padding:12px 16px;background:#252525;border-bottom:1px solid rgba(255,255,255,.1)}.compact-pet-photo{width:80px;height:80px;border-radius:8px;overflow:hidden;margin:0 auto 12px;background:#1a1a1a;border:2px solid rgba(255,255,255,.1)}.compact-pet-photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.compact-pet-badges{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-bottom:8px}.compact-badge{display:flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:500;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#9ca3af}.compact-badge.maturity{color:#a855f7;border-color:#a855f733;background:#a855f71a}.compact-badge.sex-female{color:#ec4899;border-color:#ec489933;background:#ec48991a}.compact-badge.sex-male{color:#3b82f6;border-color:#3b82f633;background:#3b82f61a}.compact-badge.age{color:#10b981;border-color:#10b98133;background:#10b9811a}.compact-care-notes{display:flex;align-items:flex-start;gap:6px;padding:8px 10px;background:#667eea1a;border:1px solid rgba(102,126,234,.2);border-radius:6px;font-size:12px;color:#9ca3af;line-height:1.4}.compact-care-notes svg{flex-shrink:0;margin-top:2px;color:#667eea}.compact-care-dashboard{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px 16px;background:#1a1a1a;border-bottom:1px solid rgba(255,255,255,.1)}.compact-care-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 8px;background:#252525;border:1px solid rgba(255,255,255,.1);border-radius:8px;transition:all .2s}.compact-care-card.status-good{border-color:#10b9814d;background:#10b9810d}.compact-care-card.status-warning{border-color:#f59e0b4d;background:#f59e0b0d}.compact-care-card.status-danger{border-color:#ef44444d;background:#ef44440d}.compact-care-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:#ffffff0d}.status-good .compact-care-icon{color:#10b981;background:#10b9811a}.status-warning .compact-care-icon{color:#f59e0b;background:#f59e0b1a}.status-danger .compact-care-icon{color:#ef4444;background:#ef44441a}.compact-care-content{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center}.compact-care-label{font-size:11px;color:#6b7280;font-weight:500}.compact-care-value{font-size:13px;color:#e5e7eb;font-weight:600}.compact-care-warning{font-size:10px;color:#f59e0b;display:flex;align-items:center;gap:3px}.compact-care-info{font-size:10px;color:#6b7280}.compact-log-form{padding:16px;background:#252525;border-bottom:1px solid rgba(255,255,255,.1);overflow:hidden}.compact-form-row{display:flex;gap:8px;margin-bottom:8px}.compact-select,.compact-input{flex:1;background:#1a1a1a;border:1px solid rgba(255,255,255,.1);color:#e5e7eb;padding:8px 10px;border-radius:6px;font-size:13px;outline:none;transition:border-color .2s}.compact-input.small{flex:0 0 70px}.compact-select:focus,.compact-input:focus{border-color:#667eea}.compact-select option{background:#1a1a1a;color:#e5e7eb}.compact-textarea{width:100%;background:#1a1a1a;border:1px solid rgba(255,255,255,.1);color:#e5e7eb;padding:8px 10px;border-radius:6px;font-size:13px;font-family:inherit;outline:none;resize:vertical;transition:border-color .2s;margin-bottom:8px}.compact-textarea:focus{border-color:#667eea}.compact-textarea::-moz-placeholder{color:#6b7280}.compact-textarea::placeholder{color:#6b7280}.compact-form-actions{display:flex;gap:8px;justify-content:flex-end}.compact-cancel-btn,.compact-save-btn{padding:8px 16px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;border:none;display:flex;align-items:center;gap:6px;transition:all .2s}.compact-cancel-btn{background:transparent;border:1px solid rgba(255,255,255,.1);color:#9ca3af}.compact-cancel-btn:hover{background:#ffffff0d;color:#e5e7eb}.compact-save-btn{background:#667eea;color:#fff}.compact-save-btn:hover{background:#5568d3}.compact-events-list{flex:1;overflow-y:auto;padding:12px 16px}.compact-loading{text-align:center;padding:40px 20px;color:#6b7280;font-size:13px}.compact-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 20px;color:#6b7280;text-align:center}.compact-empty-state p{margin:0;font-size:14px}.compact-empty-btn{background:#667eea;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:13px;cursor:pointer;margin-top:8px;transition:background .2s}.compact-empty-btn:hover{background:#5568d3}.compact-event-card{display:flex;align-items:flex-start;gap:12px;padding:12px;background:#252525;border:1px solid rgba(255,255,255,.1);border-radius:8px;margin-bottom:8px;transition:all .2s}.compact-event-card:hover{background:#2a2a2a;border-color:#fff3}.compact-event-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border-radius:6px}.compact-event-content{flex:1;min-width:0}.compact-event-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.compact-event-type{font-size:13px;font-weight:600;color:#e5e7eb}.compact-event-time{font-size:11px;color:#6b7280;white-space:nowrap}.compact-event-detail{font-size:12px;color:#9ca3af;margin:0 0 4px}.compact-event-notes{font-size:12px;color:#9ca3af;margin:4px 0 0;line-height:1.4}.compact-delete-btn{flex-shrink:0;background:transparent;border:1px solid rgba(255,255,255,.1);color:#9ca3af;padding:6px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .2s}.compact-event-card:hover .compact-delete-btn{opacity:1}.compact-delete-btn:hover{background:#ef44441a;border-color:#ef4444;color:#ef4444}.compact-events-list::-webkit-scrollbar{width:6px}.compact-events-list::-webkit-scrollbar-track{background:transparent}.compact-events-list::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.compact-events-list::-webkit-scrollbar-thumb:hover{background:#fff3}.compact-log-manager{height:100%;display:flex;flex-direction:column;background:#1a1a1a;color:#e5e7eb;overflow:hidden}.compact-log-stats{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#252525;border-bottom:1px solid rgba(255,255,255,.1)}.compact-log-stat{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 10px;background:#ffffff08;border-radius:6px;border:1px solid rgba(255,255,255,.05)}.compact-log-stat:first-child{flex:1}.compact-log-stat.feed{color:#f59e0b;border-color:#f59e0b33}.compact-log-stat.water{color:#3b82f6;border-color:#3b82f633}.compact-log-stat.molt{color:#a855f7;border-color:#a855f733}.stat-label{font-size:10px;color:#6b7280;font-weight:500}.stat-value{font-size:16px;font-weight:700;color:#e5e7eb}.compact-log-stat svg{flex-shrink:0}.compact-log-filters{display:flex;gap:8px;padding:12px 16px;background:#1a1a1a;border-bottom:1px solid rgba(255,255,255,.1);flex-wrap:wrap;align-items:center}.compact-log-filters .compact-mobile-toggle{display:none;width:100%}.compact-log-filters .compact-toggle-filters-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;transition:all .2s;width:100%;justify-content:center}.compact-log-filters .compact-toggle-filters-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}@media(max-width:768px){.compact-log-filters .compact-mobile-toggle{display:block}.compact-log-search{flex:1;min-width:150px}}.compact-add-log-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;padding:6px 12px;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:4px;transition:all .2s;white-space:nowrap}.compact-add-log-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.compact-add-log-btn:active{transform:translateY(0)}.compact-log-search{flex:1;display:flex;align-items:center;gap:8px;background:#252525;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:6px 10px}.compact-log-search svg{color:#6b7280;flex-shrink:0}.compact-log-search input{flex:1;background:transparent;border:none;outline:none;color:#e5e7eb;font-size:13px;min-width:0}.compact-log-search input::-moz-placeholder{color:#6b7280}.compact-log-search input::placeholder{color:#6b7280}.clear-search{background:transparent;border:none;padding:2px;cursor:pointer;color:#6b7280;display:flex;align-items:center;justify-content:center;border-radius:3px;transition:all .2s}.clear-search:hover{background:#ffffff1a;color:#e5e7eb}.compact-log-select{background:#252525;border:1px solid rgba(255,255,255,.1);color:#e5e7eb;padding:6px 10px;border-radius:6px;font-size:12px;cursor:pointer;outline:none;transition:border-color .2s}.compact-log-select:focus{border-color:#667eea}.compact-log-select option{background:#1a1a1a;color:#e5e7eb}.compact-logs-list{flex:1;overflow-y:auto;padding:12px 16px}.compact-log-loading,.compact-log-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 20px;color:#6b7280;text-align:center}.compact-log-empty p{margin:0;font-size:14px}.compact-log-item{display:flex;align-items:flex-start;gap:12px;padding:12px;background:#252525;border:1px solid rgba(255,255,255,.1);border-radius:8px;margin-bottom:8px;cursor:pointer;transition:all .2s}.compact-log-item:hover{background:#2a2a2a;border-color:#fff3}.compact-log-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border-radius:6px}.compact-log-content{flex:1;min-width:0}.compact-log-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.compact-log-pet{font-size:13px;font-weight:600;color:#e5e7eb;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:6px}.compact-log-pet-icon{font-size:14px;flex-shrink:0;line-height:1}.compact-log-time{font-size:11px;color:#6b7280;white-space:nowrap;flex-shrink:0}.compact-log-type-row{display:flex;align-items:center;gap:8px}.compact-log-type{font-size:12px;color:#9ca3af;font-weight:500}.compact-log-detail{font-size:11px;color:#6b7280}.compact-log-expanded{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.05);overflow:hidden}.compact-log-meta{display:flex;gap:12px;font-size:11px;color:#6b7280;margin-bottom:6px}.compact-log-meta span{display:flex;align-items:center;gap:4px}.compact-log-notes{font-size:12px;color:#9ca3af;line-height:1.4;margin-top:4px}.compact-log-notes strong{color:#e5e7eb}.compact-log-expand{flex-shrink:0;background:transparent;border:1px solid rgba(255,255,255,.1);color:#9ca3af;padding:6px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.compact-log-expand:hover{background:#ffffff0d;border-color:#fff3;color:#e5e7eb}.compact-logs-list::-webkit-scrollbar{width:6px}.compact-logs-list::-webkit-scrollbar-track{background:transparent}.compact-logs-list::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.compact-logs-list::-webkit-scrollbar-thumb:hover{background:#fff3}.compact-log-edit-form{background:#252525;border:1px solid rgba(102,126,234,.3);border-radius:8px;padding:12px;margin-bottom:8px}.compact-edit-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.1)}.compact-edit-header span{font-size:13px;font-weight:600;color:#667eea}.compact-edit-cancel{background:transparent;border:1px solid rgba(255,255,255,.1);color:#9ca3af;padding:4px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.compact-edit-cancel:hover{background:#ffffff0d;color:#e5e7eb}.compact-edit-row{display:flex;gap:8px;margin-bottom:8px}.compact-edit-field{flex:1;display:flex;flex-direction:column;gap:4px}.compact-edit-field.small{flex:0 0 80px}.compact-edit-field label{font-size:11px;color:#9ca3af;font-weight:500}.compact-edit-input,.compact-edit-textarea{background:#1a1a1a;border:1px solid rgba(255,255,255,.1);color:#e5e7eb;padding:6px 8px;border-radius:4px;font-size:12px;outline:none;transition:border-color .2s}.compact-edit-input:focus,.compact-edit-textarea:focus{border-color:#667eea}.compact-edit-textarea{resize:vertical;font-family:inherit}.compact-edit-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:12px;padding-top:8px;border-top:1px solid rgba(255,255,255,.1)}.compact-edit-btn{padding:6px 12px;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;border:none;display:flex;align-items:center;gap:4px;transition:all .2s}.compact-edit-btn.cancel{background:transparent;border:1px solid rgba(255,255,255,.1);color:#9ca3af}.compact-edit-btn.cancel:hover{background:#ffffff0d;color:#e5e7eb}.compact-edit-btn.save{background:#667eea;color:#fff}.compact-edit-btn.save:hover{background:#5568d3}.compact-log-actions{display:flex;gap:6px;margin-top:8px}.compact-log-action-btn{flex:1;padding:6px 10px;border-radius:4px;font-size:11px;font-weight:500;cursor:pointer;border:1px solid rgba(255,255,255,.1);background:#ffffff08;color:#9ca3af;display:flex;align-items:center;justify-content:center;gap:4px;transition:all .2s}.compact-log-action-btn:hover{background:#ffffff14;color:#e5e7eb}.compact-log-action-btn.edit{border-color:#667eea33;color:#667eea}.compact-log-action-btn.edit:hover{background:#667eea1a;border-color:#667eea4d}.compact-log-action-btn.delete{border-color:#ef444433;color:#ef4444}.compact-log-action-btn.delete:hover{background:#ef44441a;border-color:#ef44444d}.molt-sexing-panel{padding:20px;max-width:800px;margin:0 auto;background:var(--bg-primary, #0a0a0a);color:var(--text-primary, #fff)}.molt-sexing-header{margin-bottom:24px;text-align:center}.molt-sexing-header h2{margin:0 0 8px;font-size:24px;font-weight:600;color:#fff}.molt-sexing-header p{margin:0;color:#aaa;font-size:14px}.pet-selector-section{margin-bottom:20px}.pet-selector-section label{display:block;margin-bottom:8px;font-weight:500;color:#fff;font-size:14px}.pet-select{width:100%;padding:10px 14px;background:#1a1a1a;border:1px solid #444;border-radius:8px;color:#fff;font-size:14px;cursor:pointer}.pet-select:focus{outline:none;border-color:#667eea}.pet-select option{background:#1a1a1a;color:#fff}.molt-tips{background:linear-gradient(135deg,#667eea1a,#764ba21a);border:1px solid rgba(102,126,234,.3);border-radius:8px;padding:16px;margin-bottom:20px}.molt-tips strong{display:block;margin-bottom:8px;color:#667eea}.molt-tips ul{margin:0;padding-left:20px;color:var(--text-secondary, #ccc)}.molt-tips li{margin:4px 0;font-size:14px}.image-type-selector{display:flex;gap:12px;margin-bottom:20px}.image-type-selector label{flex:1;display:flex;align-items:center;gap:10px;padding:14px;background:#1a1a1a;border:2px solid #444;border-radius:8px;cursor:pointer;transition:all .2s;color:#fff}.image-type-selector label:hover{border-color:#667eea;background:#667eea1a}.image-type-selector input[type=radio]{cursor:pointer;width:18px;height:18px}.image-type-selector input[type=radio]:checked+.radio-option{color:#667eea;font-weight:600}.radio-option{color:#fff;font-size:14px}.radio-option strong{display:block;margin-bottom:2px}.upload-section{margin-bottom:20px}.upload-dropzone{border:3px dashed #555;border-radius:12px;padding:48px 24px;text-align:center;cursor:pointer;transition:all .3s;background:#1a1a1a}.upload-dropzone:hover{border-color:#667eea;background:#667eea1a}.upload-icon{color:#888;margin-bottom:16px}.upload-dropzone:hover .upload-icon{color:#667eea}.upload-text{font-size:16px;font-weight:500;color:#fff;margin:0 0 4px}.upload-subtext{font-size:14px;color:#aaa;margin:0 0 8px}.upload-limit{font-size:12px;color:#777;margin:0}.image-preview-wrapper{position:relative;border-radius:12px;overflow:hidden;border:2px solid #444;background:#000}.molt-image-preview{width:100%;max-height:400px;-o-object-fit:contain;object-fit:contain;background:#0d0d0d;display:block}.remove-image-btn{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:50%;background:#000c;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.remove-image-btn:hover{background:#f00c;transform:scale(1.1)}.analyze-btn{width:100%;padding:16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;margin-bottom:20px}.analyze-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.analyze-btn:disabled{opacity:.7;cursor:not-allowed}.spinner{animation:spin 1s linear infinite}.analysis-results{animation:fadeIn .4s ease-in}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.results-header h3{margin:0;font-size:20px;color:#fff}.new-analysis-btn{padding:8px 16px;background:#222;border:1px solid #555;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.new-analysis-btn:hover{background:#667eea;border-color:#667eea}.result-card{background:#1a1a1a;border:1px solid #444;border-radius:12px;padding:20px;margin-bottom:16px}.result-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #333}.result-row:last-child{border-bottom:none}.result-label{font-weight:600;color:#aaa}.result-value{font-size:16px;font-weight:600;color:#fff}.result-value-sex{font-size:20px;font-weight:700;color:#fff}.confidence-badge{padding:6px 12px;border-radius:6px;font-size:14px;font-weight:600}.confidence-badge.high{background:#4caf5033;color:#4caf50}.confidence-badge.medium{background:#ff980033;color:#ff9800}.confidence-badge.low{background:#f4433633;color:#f44336}.evidence-section,.notes-section{background:#1a1a1a;border:1px solid #444;border-radius:8px;padding:16px;margin-bottom:16px}.evidence-section h4,.notes-section h4{margin:0 0 12px;color:#667eea;font-size:16px}.evidence-section p,.notes-section p{margin:0;line-height:1.6;color:#ccc;white-space:pre-wrap}.model-info{text-align:center;padding:12px;color:#777;font-size:12px}.low-confidence-warning{background:#ff98001a;border:1px solid rgba(255,152,0,.3);border-radius:8px;padding:16px;color:#ff9800;font-size:14px;line-height:1.6}.low-confidence-warning strong{color:#ff9800}.save-log-btn{width:100%;padding:14px 20px;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:16px;transition:all .2s}.save-log-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #22c55e66}.save-log-btn:disabled{opacity:.6;cursor:not-allowed}.save-log-btn .spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.select-pet-hint{background:#667eea1a;border:1px solid rgba(102,126,234,.3);border-radius:8px;padding:12px 16px;margin-top:16px;color:#a5b4fc;font-size:13px;text-align:center}@media(max-width:768px){.molt-sexing-panel{padding:16px}.image-type-selector{flex-direction:column}.upload-dropzone{padding:32px 16px}}.menu-tab{display:flex;flex-direction:column;height:100%;background:#0a0a0a;color:#fff;overflow:hidden}.menu-header{padding:20px 16px;border-bottom:1px solid #333;background:linear-gradient(135deg,#1a1a1a,#0a0a0a)}.menu-header h2{margin:0 0 4px;font-size:24px;font-weight:600;color:#fff;display:flex;align-items:center;gap:8px}.menu-subtitle{margin:0 0 16px;font-size:13px;color:#999;font-weight:400}.menu-search{display:flex;align-items:center;gap:8px;background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:10px 12px;transition:border-color .2s}.menu-search:focus-within{border-color:#667eea}.menu-search svg{color:#666;flex-shrink:0}.menu-search-input{flex:1;background:none;border:none;color:#fff;font-size:14px;outline:none}.menu-search-input::-moz-placeholder{color:#666}.menu-search-input::placeholder{color:#666}.menu-scroll-container{flex:1;overflow-y:auto;padding:16px}.menu-scroll-container::-webkit-scrollbar{width:8px}.menu-scroll-container::-webkit-scrollbar-track{background:#0a0a0a}.menu-scroll-container::-webkit-scrollbar-thumb{background:#333;border-radius:4px}.menu-scroll-container::-webkit-scrollbar-thumb:hover{background:#444}.menu-category{margin-bottom:28px}.menu-category:last-child{margin-bottom:0}.menu-category-title{margin:0 0 12px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:8px;padding:0 4px}.menu-items-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.menu-card{display:flex;align-items:flex-start;gap:12px;padding:14px;background:#1a1a1a;border:1px solid #2a2a2a;border-radius:10px;cursor:pointer;transition:all .2s;text-align:left;width:100%}.menu-card:hover{background:#222;border-color:#667eea;transform:translateY(-2px)}.menu-card:active{transform:translateY(0)}.menu-card-icon{font-size:28px;line-height:1;flex-shrink:0}.menu-card-content{display:flex;flex-direction:column;gap:4px;min-width:0}.menu-card-label{font-size:14px;font-weight:600;color:#fff;line-height:1.3}.menu-card-description{font-size:12px;color:#888;line-height:1.4}.menu-items{display:flex;flex-direction:column;gap:8px}.menu-item{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:8px;padding:12px;transition:all .2s ease}.menu-item:hover{border-color:#667eea;background:#1f1f1f;transform:translate(2px)}.menu-item-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.menu-item-icon{font-size:18px;line-height:1}.menu-item-label{font-size:14px;font-weight:500;color:#fff;flex:1}.menu-item-note{font-size:11px;color:#4ade80;background:#4ade801a;padding:2px 8px;border-radius:4px;font-weight:500}.menu-item-actions{display:flex;gap:8px;align-items:center}.menu-btn{flex:1;padding:8px 12px;border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.menu-btn-compact{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.menu-btn-compact:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.menu-btn-full{background:#2a2a2a;color:#ccc;border:1px solid #3a3a3a}.menu-btn-full:hover{background:#333;color:#fff;border-color:#4a4a4a;transform:translateY(-2px)}.menu-btn-full-only{flex:1;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none}.menu-btn-full-only:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.menu-footer{padding:12px 16px;border-top:1px solid #333;background:#0f0f0f}.menu-footer-text{margin:0;font-size:12px;color:#777;text-align:center;line-height:1.4}@media(max-width:768px){.menu-header{padding:16px 12px 12px}.menu-header h2{font-size:20px}.menu-scroll-container{padding:12px}.menu-item{padding:10px}.menu-item-actions{flex-direction:column}.menu-btn{width:100%}}.insights-modern-wrapper *{visibility:visible!important;opacity:1!important}.insights-modern-wrapper [class*=card],.insights-modern-wrapper [class*=Card]{background-color:#161618!important;border:1px solid hsl(240 3.7% 15.9%)!important;color:#f4f4f5!important;display:block!important;visibility:visible!important;opacity:1!important;min-height:50px!important}.insights-modern-wrapper h1,.insights-modern-wrapper h2,.insights-modern-wrapper h3,.insights-modern-wrapper h4,.insights-modern-wrapper p,.insights-modern-wrapper span,.insights-modern-wrapper div{color:#f4f4f5!important;visibility:visible!important;opacity:1!important}.insights-modern-wrapper button{visibility:visible!important;opacity:1!important;display:inline-flex!important}.ai-companion-container,.ai-companion-container *:not(.welcome-icon):not(.message-emoji-img):not(.companion-avatar img){background-color:transparent}.ai-companion-container{background:#0a0a0a!important;color:#e5e7eb!important}.floating-companion-btn{position:fixed;bottom:auto;left:auto;width:82px;height:82px;border-radius:50%;background:radial-gradient(circle at 25% 25%,#9fb4ff,#6366f1 58%,#312e81);border:1px solid rgba(255,255,255,.15);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:9999;box-shadow:0 14px 28px #6366f166,0 0 0 12px #6366f11f,0 10px 50px #0000004d;transition:all .28s cubic-bezier(.4,0,.2,1);backface-visibility:hidden;transform:translateZ(0)}.floating-companion-btn:hover{transform:translateY(-4px) scale(1.1);box-shadow:0 8px 30px #667eeab3,0 12px 50px #0006}.floating-companion-btn:active{transform:translateY(-2px) scale(1.05)}.floating-companion-btn svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));animation:sparkle 2s ease-in-out infinite}@keyframes sparkle{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.9}}.floating-companion-btn .unread-badge{position:absolute;top:-4px;right:-4px;background:#ef4444;color:#fff;font-size:12px;font-weight:700;min-width:22px;height:22px;border-radius:11px;display:flex;align-items:center;justify-content:center;padding:0 6px;box-shadow:0 2px 8px #ef444499;border:2px solid #0a0a0a}@media(max-width:768px){.floating-companion-btn{bottom:auto;left:auto;width:92px;height:92px;box-shadow:0 16px 28px #667eea8c,0 0 0 14px #ffffff14}.floating-companion-btn svg{width:28px;height:28px}}.floating-pet-log-btn{position:fixed;bottom:auto;right:auto;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;width:82px;height:82px;background:radial-gradient(circle at 25% 25%,#facc15,#f59e0b 60%,#d97706);border:1px solid rgba(255,255,255,.16);border-radius:50%;color:#1f2937;font-size:16px;font-weight:700;cursor:pointer;z-index:9998;box-shadow:0 14px 28px #facc1559,0 0 0 10px #facc151f,0 10px 40px #00000040;transition:all .28s cubic-bezier(.4,0,.2,1)}.floating-pet-log-btn:hover{transform:translateY(-4px) scale(1.05);box-shadow:0 8px 30px #667eea99}.floating-pet-log-btn:active{transform:translateY(-2px) scale(1.02)}.floating-btn-icon{font-size:24px;line-height:1}.floating-btn-label{font-size:12px;font-weight:700;letter-spacing:.3px;color:#000000b3}@media(max-width:768px){.floating-pet-log-btn{bottom:auto;right:auto;width:90px;height:90px}.floating-btn-label{display:none}.floating-btn-icon{font-size:28px}}.ai-companion-minimized{position:fixed;width:auto;height:auto;background:transparent;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:10001}.ai-companion-minimized:hover{transform:scale(1.1);filter:drop-shadow(0 8px 16px rgba(0,0,0,.6))}.ai-companion-minimized.personality-docile,.ai-companion-minimized.personality-spicy,.ai-companion-minimized.personality-calm{background:transparent}.ai-companion-minimized.personality-docile:hover,.ai-companion-minimized.personality-spicy:hover,.ai-companion-minimized.personality-calm:hover{filter:drop-shadow(0 8px 16px rgba(0,0,0,.6))}.companion-icon{font-size:64px;position:relative;filter:drop-shadow(0 4px 8px rgba(0,0,0,.5))}.companion-icon-img{width:96px;height:96px;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.5))}.unread-badge{position:absolute;top:-10px;right:-10px;background:#ef4444;color:#fff;font-size:12px;font-weight:700;padding:3px 7px;border-radius:12px;min-width:22px;text-align:center;border:2px solid #1a1a1a;box-shadow:0 2px 8px #0006}.ai-companion-collapsed,.ai-companion-expanded{position:fixed;background:#1a1a1a;border:2px solid #2a2a2a;border-radius:16px;box-shadow:0 20px 60px #000c,0 0 0 1px #ffffff0d;z-index:10001;display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.ai-companion-collapsed{width:min(300px,calc(100vw - 40px));cursor:pointer;transition:all .2s ease}.ai-companion-collapsed:hover{border-color:#3a3a3a;box-shadow:0 24px 70px #000000e6,0 0 0 1px #ffffff14}.ai-companion-expanded{width:min(1100px,calc(100vw - 32px));height:min(90vh,calc(100vh - 24px));max-height:none;overflow:hidden}.tab-content{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative}.dashboard-tab,.chat-tab,.insights-tab,.calendar-tab{flex:1;overflow-y:auto;overflow-x:hidden;animation:fadeInTab .3s ease-in-out}.dashboard-tab>div:last-child{padding:0 18px 18px}@keyframes fadeInTab{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.dashboard-tab::-webkit-scrollbar,.chat-tab::-webkit-scrollbar,.insights-tab::-webkit-scrollbar,.calendar-tab::-webkit-scrollbar{width:6px}.dashboard-tab::-webkit-scrollbar-track,.chat-tab::-webkit-scrollbar-track,.insights-tab::-webkit-scrollbar-track,.calendar-tab::-webkit-scrollbar-track{background:#18181b}.dashboard-tab::-webkit-scrollbar-thumb,.chat-tab::-webkit-scrollbar-thumb,.insights-tab::-webkit-scrollbar-thumb,.calendar-tab::-webkit-scrollbar-thumb{background:#313135;border-radius:3px}.dashboard-tab::-webkit-scrollbar-thumb:hover,.chat-tab::-webkit-scrollbar-thumb:hover,.insights-tab::-webkit-scrollbar-thumb:hover,.calendar-tab::-webkit-scrollbar-thumb:hover{background:#3d3d42}@media(max-width:768px){.ai-companion-expanded{width:100vw;height:100vh;inset:0!important;border-radius:0;max-height:100vh}.ai-companion-collapsed{width:calc(100vw - 40px);max-width:300px}}.companion-header{background:linear-gradient(135deg,#2563eb,#1e40af);color:#fff;padding:14px 18px;border-radius:14px 14px 0 0;display:flex;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1);box-shadow:0 2px 8px #0000004d;align-items:center}.companion-title{display:flex;align-items:center;gap:8px;font-weight:600}.companion-emoji{font-size:20px}.companion-emoji-img{width:28px;height:28px;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.companion-name{font-size:16px}.companion-status{font-size:9px;opacity:.8;background:#fff3;padding:2px 6px;border-radius:10px;text-transform:capitalize;white-space:nowrap}.companion-actions{display:flex;gap:8px}.minimize-btn,.close-btn,.settings-btn,.clear-history-btn,.toggle-command-center-btn,.companion-back-btn,.header-action-btn{background:#fff3;border:none;color:#fff;width:28px;height:28px;border-radius:6px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:background .2s}.header-action-btn:disabled{opacity:.5;cursor:not-allowed}.companion-back-btn{margin-right:4px;font-size:20px;font-weight:700}.minimize-btn:hover,.close-btn:hover,.settings-btn:hover,.clear-history-btn:hover,.toggle-command-center-btn:hover,.companion-back-btn:hover,.header-action-btn:hover{background:#ffffff4d}.header-action-btn:hover:disabled{background:#fff3}.clear-history-btn:hover{background:#ef44444d}.toggle-command-center-btn:hover{background:#3b82f64d}.quick-settings-panel{background:#1a1a1a;border-bottom:2px solid #2a2a2a;animation:slideDown .2s ease}@keyframes slideDown{0%{max-height:0;opacity:0}to{max-height:500px;opacity:1}}.quick-settings{padding:20px;display:flex;flex-direction:column;gap:16px}.quick-settings-section{display:flex;flex-direction:column;gap:8px}.quick-settings-label{color:#aaa;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;gap:8px}.quick-settings-input{background:#0f0f0f;border:2px solid #2a2a2a;border-radius:8px;padding:10px 12px;color:#fff;font-size:14px;transition:all .2s}.quick-settings-input:focus{outline:none;border-color:#3b82f6}.quick-personality-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.quick-personality-btn{background:#0f0f0f;border:2px solid #2a2a2a;border-radius:8px;padding:12px 8px;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:6px}.quick-personality-btn:hover{border-color:#3a3a3a;background:#1a1a1a}.quick-personality-btn.active{border-color:#3b82f6;background:#1a1a2a;box-shadow:0 0 0 2px #3b82f633}.quick-personality-icon{width:28px;height:28px;-o-object-fit:contain;object-fit:contain}.quick-personality-name{color:#aaa;font-size:11px;font-weight:600}.quick-personality-btn.active .quick-personality-name{color:#fff}.quick-verbosity-btns{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.quick-verbosity-btn{background:#0f0f0f;border:2px solid #2a2a2a;border-radius:8px;padding:10px;color:#aaa;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;text-transform:capitalize}.quick-verbosity-btn:hover{border-color:#3a3a3a;background:#1a1a1a}.quick-verbosity-btn.active{border-color:#3b82f6;background:#1a1a2a;color:#fff}.quick-settings-checkbox{width:16px;height:16px;cursor:pointer}.quick-settings-actions{display:flex;gap:10px;margin-top:8px;align-items:center;width:100%}.quick-settings-full{padding:12px 16px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:1px solid rgba(255,255,255,.1);background:#2a2a2a;color:#aaa;display:flex;align-items:center;gap:6px;white-space:nowrap}.quick-settings-full:hover{background:#3a3a3a;color:#fff;border-color:#fff3}.quick-settings-cancel,.quick-settings-save{flex:1;padding:12px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.quick-settings-cancel{background:#2a2a2a;color:#aaa}.quick-settings-cancel:hover{background:#3a3a3a;color:#fff}.quick-settings-save{background:linear-gradient(135deg,#10b981,#047857);color:#fff}.quick-settings-save:hover:not(:disabled){transform:scale(1.02)}.quick-settings-save:disabled{opacity:.6;cursor:not-allowed}.companion-preview{padding:16px;color:#64748b;font-size:14px}.companion-preview p{margin:0;line-height:1.5}.companion-panels-wrapper::-webkit-scrollbar{width:6px}.companion-panels-wrapper::-webkit-scrollbar-track{background:#1a1a1a}.companion-panels-wrapper::-webkit-scrollbar-thumb{background:#404040;border-radius:3px}.companion-panels-wrapper::-webkit-scrollbar-thumb:hover{background:#505050}.companion-messages{flex:1;overflow-y:auto;padding:20px;background:#0f0f0f!important;display:flex;flex-direction:column;gap:16px;min-height:0;max-height:100%;scroll-behavior:smooth}.chat-tab,.dashboard-tab,.calendar-tab,.reminders-tab,.friends-tab,.carehub-tab,.molt-sexing-tab{background:#0a0a0a!important}.companion-messages::-webkit-scrollbar{width:8px}.companion-messages::-webkit-scrollbar-track{background:#1a1a1a}.companion-messages::-webkit-scrollbar-thumb{background:#404040;border-radius:4px}.companion-messages::-webkit-scrollbar-thumb:hover{background:#505050}.welcome-message{text-align:center;padding:32px 24px;color:#a0a0a0}.welcome-emoji{font-size:56px;margin-bottom:20px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.5))}.welcome-icon{width:80px;height:80px;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.5))}.welcome-message h3{font-size:20px;margin:0 0 10px;color:#fff;font-weight:700}.welcome-message p{font-size:15px;margin:0 0 28px;line-height:1.6}.quick-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:16px;padding:0 4px}.quick-label{grid-column:1 / -1;font-size:11px;font-weight:700;color:#666;text-align:left;margin:0 0 4px 2px;text-transform:uppercase;letter-spacing:.8px}.quick-action-btn{background:linear-gradient(135deg,#2a2a2a,#252525);border:1px solid #3a3a3a;padding:10px 12px;border-radius:8px;text-align:center;cursor:pointer;font-size:13px;transition:all .2s ease;color:#e0e0e0;font-weight:500;display:flex;align-items:center;justify-content:center;gap:6px;position:relative;overflow:hidden}.quick-action-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s}.quick-action-btn:hover:before{left:100%}.quick-action-btn:hover{background:linear-gradient(135deg,#3a3a3a,#303030);border-color:#4a4a4a;transform:translateY(-2px);box-shadow:0 4px 12px #00000080}.quick-action-btn:active{transform:translateY(0)}.quick-action-btn:nth-child(2){border-left:3px solid #f59e0b}.quick-action-btn:nth-child(3){border-left:3px solid #3b82f6}.quick-action-btn:nth-child(4){border-left:3px solid #10b981}.quick-action-btn:nth-child(5){border-left:3px solid #ef4444}.quick-action-btn:nth-child(6){border-left:3px solid #8b5cf6}.quick-action-btn:nth-child(7){border-left:3px solid #06b6d4}.quick-action-btn:nth-child(8){grid-column:1 / -1;border-left:3px solid #6b7280;font-size:12px;padding:8px}@media(max-width:480px){.quick-actions{grid-template-columns:1fr}.quick-action-btn:nth-child(8){grid-column:1}}.message{display:flex;gap:8px;align-items:flex-start;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-user{flex-direction:row-reverse}.message-emoji{font-size:24px;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4))}.message-emoji-img{width:32px;height:32px;-o-object-fit:contain;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4))}.message-content{max-width:78%;padding:14px 18px;border-radius:16px;font-size:15px;line-height:1.6;font-weight:450;white-space:pre-line}.message-content p{margin:.5em 0;line-height:1.6}.message-content ul{margin:.5em 0;padding-left:1.2em;list-style:none}.message-content li{margin:.3em 0;line-height:1.5}.message-user .message-content{background:linear-gradient(135deg,#5494ed,#3d85eb);color:#fff;border-bottom-right-radius:4px;box-shadow:0 2px 8px #5494ed59;font-weight:500;padding:14px 18px;transition:all .3s}.message-user .message-content:hover{box-shadow:0 4px 12px #5494ed66;transform:translateY(-1px)}.message-assistant .message-content{background:linear-gradient(135deg,#222225,#1d1d20);color:#f0f0f0;border-bottom-left-radius:4px;border:2px solid hsl(240 4% 18%);box-shadow:0 2px 8px #00000040;padding:14px 18px;transition:all .3s}.message-assistant .message-content:hover{border-color:#36363a;box-shadow:0 4px 12px #0000004d;transform:translateY(-1px)}.message-system .message-content{background:#3a2f1f;border:1px solid #6b5a3d;color:#fbbf24;text-align:center;margin:0 auto}.message-error .message-content{background:#3a1f1f;border:1px solid #7a3a3a;color:#fca5a5;font-weight:500}.message-content p{margin:0}.typing-indicator{display:flex;gap:4px;padding:4px 0}.typing-indicator span{width:8px;height:8px;background:#94a3b8;border-radius:50%;animation:typing 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.7}30%{transform:translateY(-10px);opacity:1}}.quick-log-container{padding:14px 16px 0;background:linear-gradient(180deg,#161618,#18181b);display:flex;gap:12px}.quick-add-pet-btn,.quick-log-btn{flex:1;padding:14px;border:2px solid transparent;border-radius:12px;color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:10px;position:relative;overflow:hidden}.quick-add-pet-btn:before,.quick-log-btn:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,transparent 100%);opacity:0;transition:opacity .3s}.quick-add-pet-btn{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 2px 8px #0596694d}.quick-add-pet-btn:hover{background:linear-gradient(135deg,#10b981,#059669);transform:translateY(-3px);box-shadow:0 6px 16px #05966980}.quick-add-pet-btn:hover:before{opacity:1}.quick-log-btn{background:linear-gradient(135deg,#8b5cf6,#7c3aed);box-shadow:0 2px 8px #8b5cf64d}.quick-log-btn:hover{background:linear-gradient(135deg,#a78bfa,#8b5cf6);transform:translateY(-3px);box-shadow:0 6px 16px #8b5cf680}.quick-log-btn:hover:before{opacity:1}.quick-add-pet-btn:active,.quick-log-btn:active{transform:translateY(-1px)}.companion-input-form{padding:16px;background:linear-gradient(180deg,#161618,#18181b);border-top:2px solid hsl(240 4% 16%);display:flex;gap:12px;box-shadow:0 -4px 12px #0000004d}.companion-input{flex:1;padding:14px 18px;border:2px solid hsl(240 4% 18%);border-radius:12px;font-size:15px;outline:none;transition:all .3s ease;background:#1d1d20;color:#fff;font-weight:500}.companion-input::-moz-placeholder{color:#878792}.companion-input::placeholder{color:#878792}.companion-input:focus{border-color:#5494ed;background:#222225;box-shadow:0 0 0 3px #5494ed26,0 2px 8px #0003;transform:translateY(-1px)}.companion-input:disabled{background:#18181b;cursor:not-allowed;opacity:.5}.companion-send-btn{padding:14px 20px;background:linear-gradient(135deg,#5494ed,#3d85eb);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:20px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #5494ed59;min-width:52px;position:relative;overflow:hidden}.companion-send-btn:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(255,255,255,.15) 0%,transparent 100%);opacity:0;transition:opacity .3s}.companion-send-btn:hover:not(:disabled){background:linear-gradient(135deg,#6ba2ef,#5494ed);transform:translateY(-2px) scale(1.02);box-shadow:0 6px 16px #5494ed80}.companion-send-btn:hover:not(:disabled):before{opacity:1}.companion-send-btn:active:not(:disabled){transform:translateY(0) scale(1)}.companion-send-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.companion-footer{padding:10px 16px;background:#0f0f0f;border-top:1px solid #2a2a2a;text-align:center;font-size:12px;color:#888;border-radius:0 0 14px 14px}.usage-bar-container{width:100%;height:4px;background:#1f1f1f;border-radius:2px;overflow:hidden;margin-bottom:8px}.usage-bar-fill{height:100%;background:#f97316;transition:width .3s ease,background-color .3s ease;border-radius:2px}.companion-footer a{color:#3b82f6;text-decoration:none;font-weight:700;transition:color .2s}.companion-footer a:hover{color:#60a5fa;text-decoration:underline}.personality-docile .companion-header,.personality-docile .message-user .message-content,.personality-docile .companion-send-btn{background:linear-gradient(135deg,#4ade80,#22c55e)}.personality-calm .companion-header,.personality-calm .message-user .message-content,.personality-calm .companion-send-btn{background:linear-gradient(135deg,#3b82f6,#2563eb)}.personality-spicy .companion-header,.personality-spicy .message-user .message-content,.personality-spicy .companion-send-btn{background:linear-gradient(135deg,#f97316,#ea580c)}.suggested-action{display:flex;gap:8px;margin:8px 0 8px 36px;padding:10px;background:#2a2a2a;border:1px solid #404040;border-radius:10px}.action-confirm-btn,.action-dismiss-btn{flex:1;padding:10px 14px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.action-confirm-btn{background:linear-gradient(135deg,#10b981,#047857);color:#fff}.action-confirm-btn:hover{transform:scale(1.03);box-shadow:0 4px 12px #10b98166}.action-dismiss-btn{background:#3a3a3a;color:#aaa;border:1px solid #505050}.action-dismiss-btn:hover{background:#444;color:#fff}.action-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.action-modal{background:#1a1a1a;border:2px solid #404040;border-radius:16px;width:90%;max-width:450px;box-shadow:0 20px 60px #000000e6;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.action-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:2px solid #2a2a2a}.action-modal-header h3{margin:0;font-size:20px;color:#fff;font-weight:700}.action-modal-header button{background:#2a2a2a;border:1px solid #404040;color:#aaa;width:32px;height:32px;border-radius:8px;cursor:pointer;font-size:18px;transition:all .2s}.action-modal-header button:hover{background:#3a3a3a;color:#fff}.action-modal-body{padding:24px}.action-modal-label{color:#aaa;font-size:14px;margin:0 0 16px;font-weight:500}.action-details{background:#0f0f0f;border:1px solid #2a2a2a;border-radius:12px;padding:16px;margin-bottom:16px}.action-detail-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #2a2a2a}.action-detail-row:last-child{border-bottom:none}.action-detail-label{color:#888;font-size:14px;font-weight:600}.action-detail-value{color:#fff;font-size:14px;font-weight:500;font-family:Courier New,monospace}.action-modal-warning{background:#3a2f1f;border:1px solid #6b5a3d;color:#fbbf24;padding:12px;border-radius:8px;font-size:13px;text-align:center;font-weight:600}.action-photo-upload{margin:20px 0;padding:16px;background:#0f0f0f;border:2px dashed #3a3a3a;border-radius:12px}.photo-upload-label{color:#aaa;font-size:14px;font-weight:600;margin:0 0 12px}.photo-upload-btn{background:#2a2a2a;border:1px solid #404040;color:#fff;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;width:100%}.photo-upload-btn:hover:not(:disabled){background:#3a3a3a;border-color:#10b981}.photo-upload-btn:disabled{opacity:.5;cursor:not-allowed}.photo-previews{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:10px;margin-top:12px}.photo-preview{position:relative;width:80px;height:80px;border-radius:8px;overflow:hidden;border:2px solid #3a3a3a}.photo-preview img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.photo-remove{position:absolute;top:4px;right:4px;background:#000c;border:none;color:#f44;width:24px;height:24px;border-radius:50%;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.photo-remove:hover:not(:disabled){background:#f44;color:#fff;transform:scale(1.1)}.action-modal-footer{display:flex;gap:12px;padding:20px 24px;border-top:2px solid #2a2a2a}.action-modal-cancel,.action-modal-confirm{flex:1;padding:14px;border-radius:10px;font-size:15px;font-weight:700;cursor:pointer;transition:all .2s ease;border:none}.action-modal-cancel{background:#2a2a2a;color:#aaa;border:1px solid #404040}.action-modal-cancel:hover:not(:disabled){background:#3a3a3a;color:#fff}.action-modal-confirm{background:linear-gradient(135deg,#10b981,#047857);color:#fff;box-shadow:0 4px 12px #10b9814d}.action-modal-confirm:hover:not(:disabled){transform:scale(1.02);box-shadow:0 6px 16px #10b98166}.action-modal-confirm:disabled,.action-modal-cancel:disabled{opacity:.5;cursor:not-allowed}.ai-companion-expanded{background:#0f0f14f2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);box-shadow:0 25px 80px #000000b3,0 0 0 1px #ffffff0d,inset 0 1px #ffffff0d}.companion-header{position:relative;overflow:hidden}.companion-header:before{content:"";position:absolute;inset:0;opacity:.1;background:linear-gradient(135deg,transparent 0%,currentColor 100%);pointer-events:none}.personality-docile .companion-header{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 4px 20px #22c55e4d}.personality-calm .companion-header{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 20px #3b82f64d}.personality-spicy .companion-header{background:linear-gradient(135deg,#f97316,#ea580c);box-shadow:0 4px 20px #f973164d}.companion-name{position:relative;font-weight:700;letter-spacing:.3px}.companion-status{font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;padding:3px 8px;border-radius:6px;background:#ffffff26;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.context-indicator{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#ffffff08;border-bottom:1px solid rgba(255,255,255,.05);font-size:11px;color:#ffffff80}.context-indicator-icon{font-size:14px;opacity:.7}.context-indicator-text{flex:1}.context-indicator-badge{background:#3b82f633;color:#60a5fa;padding:2px 6px;border-radius:4px;font-weight:600;font-size:10px}.relationship-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.relationship-badge.new{background:#9ca3af33;color:#9ca3af}.relationship-badge.familiar{background:#3b82f633;color:#60a5fa}.relationship-badge.established{background:#8b5cf633;color:#a78bfa}.relationship-badge.partner{background:#22c55e33;color:#4ade80}.message{animation:messageSlideIn .3s cubic-bezier(.4,0,.2,1)}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.message-assistant .message-content{background:#1e1e28cc;border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.personality-docile .message-user .message-content{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 4px 15px #22c55e40}.personality-calm .message-user .message-content{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 15px #3b82f640}.personality-spicy .message-user .message-content{background:linear-gradient(135deg,#f97316,#ea580c);box-shadow:0 4px 15px #f9731640}.quick-actions{padding:12px;gap:10px}.quick-action-btn{background:#1e1e2899;border:1px solid rgba(255,255,255,.08);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:12px 14px;border-radius:10px;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1)}.quick-action-btn:hover{background:#282837cc;border-color:#ffffff26;transform:translateY(-3px);box-shadow:0 8px 25px #0006}.quick-action-btn.urgent{border-color:#ef444466;background:#ef44441a}.quick-action-btn.urgent:hover{background:#ef444433;border-color:#ef444499}.smart-alert-banner{display:flex;align-items:center;gap:10px;padding:10px 14px;margin:8px 12px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:10px;color:#fca5a5;font-size:13px;animation:alertPulse 2s infinite}.smart-alert-banner.warning{background:#f59e0b1a;border-color:#f59e0b4d;color:#fcd34d}.smart-alert-banner.success{background:#22c55e1a;border-color:#22c55e4d;color:#86efac}@keyframes alertPulse{0%,to{opacity:1}50%{opacity:.8}}.smart-alert-icon{font-size:16px;flex-shrink:0}.smart-alert-text{flex:1;font-weight:500}.smart-alert-action{background:#ffffff1a;border:none;color:inherit;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.smart-alert-action:hover{background:#fff3}.smart-quick-actions{width:100%;margin-top:12px}.smart-quick-actions .quick-label{text-align:center;margin-bottom:10px;color:#fff9;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.smart-quick-actions .quick-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.smart-quick-actions .quick-action-btn{border-left:3px solid transparent;padding-left:11px}.quick-action-btn.high{border-color:#f59e0b66;background:#f59e0b14}.quick-action-btn.high:hover{background:#f59e0b26;border-color:#f59e0b99}.companion-input-form{background:#0f0f14e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.05);padding:14px 16px}.companion-input{background:#1e1e2899;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:14px;transition:all .25s}.companion-input:focus{background:#232332cc;border-color:var(--personality-color, #3b82f6);box-shadow:0 0 0 3px #3b82f626}.personality-docile .companion-input:focus{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e26}.personality-calm .companion-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.personality-spicy .companion-input:focus{border-color:#f97316;box-shadow:0 0 0 3px #f9731626}.personality-docile .companion-send-btn{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 4px 12px #22c55e4d}.personality-calm .companion-send-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 12px #3b82f64d}.personality-spicy .companion-send-btn{background:linear-gradient(135deg,#f97316,#ea580c);box-shadow:0 4px 12px #f973164d}.typing-indicator{padding:6px 0}.typing-indicator span{width:7px;height:7px;background:#fff9;border-radius:50%;animation:typingBounce 1.2s infinite}@keyframes typingBounce{0%,60%,to{transform:translateY(0);background:#fff6}30%{transform:translateY(-8px);background:#ffffffe6}}.memory-stats{display:flex;gap:12px;padding:8px 16px;background:#ffffff05;border-top:1px solid rgba(255,255,255,.05);font-size:11px;color:#fff6}.memory-stat{display:flex;align-items:center;gap:4px}.memory-stat-icon{font-size:12px;opacity:.7}.memory-stat-value{font-weight:600;color:#fff9}.welcome-message{padding:40px 24px;text-align:center}.welcome-icon{width:100px;height:100px;margin-bottom:20px;animation:welcomeBounce 2s infinite}@keyframes welcomeBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.welcome-message h3{font-size:22px;font-weight:700;margin-bottom:8px;background:linear-gradient(135deg,#fff,#a0a0a0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.welcome-message p{font-size:14px;color:#fff9;line-height:1.6}.companion-messages::-webkit-scrollbar{width:6px}.companion-messages::-webkit-scrollbar-track{background:transparent}.companion-messages::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.companion-messages::-webkit-scrollbar-thumb:hover{background:#fff3}@media(max-width:480px){.ai-companion-expanded{width:100vw;height:100vh;inset:0!important;border-radius:0}.companion-header{padding:12px 14px;border-radius:18px 18px 0 0}.quick-actions{grid-template-columns:1fr;padding:10px;gap:8px}.quick-action-btn{padding:14px}.welcome-icon{width:80px;height:80px}}.memory-panel{padding:16px;height:100%;overflow-y:auto}.memory-header{display:flex;align-items:center;gap:12px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.1)}.memory-header-icon{font-size:32px}.memory-header-text h3{font-size:18px;font-weight:700;margin:0 0 4px;color:#fff}.memory-header-text p{font-size:12px;color:#ffffff80;margin:0}.memory-section{margin-bottom:20px}.memory-section h4{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#ffffff80;margin:0 0 12px}.relationship-card{background:#1e1e2899;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:16px}.relationship-stage-display{display:flex;align-items:center;gap:12px;margin-bottom:12px}.stage-icon{font-size:28px}.stage-info{display:flex;flex-direction:column}.stage-label{font-size:16px;font-weight:600;color:#fff}.stage-time{font-size:12px;color:#ffffff80}.relationship-progress{height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden;margin-bottom:8px}.relationship-progress-fill{height:100%;border-radius:3px;transition:width .5s ease}.stage-next{font-size:11px;color:#fff6;margin:0;text-align:center}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.stat-item{background:#1e1e2880;border:1px solid rgba(255,255,255,.06);border-radius:10px;padding:12px;text-align:center}.stat-value{display:block;font-size:22px;font-weight:700;color:#fff;margin-bottom:4px}.stat-label{font-size:11px;color:#ffffff80;text-transform:uppercase;letter-spacing:.3px}.pet-familiarity-list{display:flex;flex-direction:column;gap:10px}.pet-familiarity-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#1e1e2866;border-radius:8px}.pet-familiarity-item .pet-info{flex:1;min-width:0}.pet-familiarity-item .pet-name{display:block;font-size:13px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pet-familiarity-item .pet-species{display:block;font-size:10px;color:#fff6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.familiarity-bar{width:60px;height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden}.familiarity-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#60a5fa);border-radius:2px}.more-pets{font-size:11px;color:#fff6;text-align:center;margin:8px 0 0}.topics-list{display:flex;flex-wrap:wrap;gap:6px}.topic-chip{padding:4px 10px;background:#3b82f626;border:1px solid rgba(59,130,246,.3);border-radius:12px;font-size:11px;color:#60a5fa}.memory-footer{margin-top:24px;padding-top:16px;border-top:1px solid rgba(255,255,255,.08)}.memory-note{font-size:12px;color:#ffffff80;text-align:center;margin:0;line-height:1.5}.memory-tab{height:100%;overflow-y:auto;background:#0a0a0f4d}.personality-docile .relationship-progress-fill{background:linear-gradient(90deg,#22c55e,#4ade80)!important}.personality-calm .relationship-progress-fill{background:linear-gradient(90deg,#3b82f6,#60a5fa)!important}.personality-spicy .relationship-progress-fill{background:linear-gradient(90deg,#f97316,#fb923c)!important}.personality-docile .topic-chip{background:#22c55e26;border-color:#22c55e4d;color:#4ade80}.personality-spicy .topic-chip{background:#f9731626;border-color:#f973164d;color:#fb923c}.personality-docile .familiarity-fill{background:linear-gradient(90deg,#22c55e,#4ade80)}.personality-spicy .familiarity-fill{background:linear-gradient(90deg,#f97316,#fb923c)}.issues-list{display:flex;flex-direction:column;gap:8px}.issue-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:8px}.issue-icon{font-size:14px}.issue-text{font-size:13px;color:#fca5a5;text-transform:capitalize}.milestones-list{display:flex;flex-direction:column;gap:8px}.milestone-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#22c55e1a;border:1px solid rgba(34,197,94,.2);border-radius:8px}.milestone-icon{font-size:14px}.milestone-text{font-size:13px;color:#86efac}.profile-badges{display:flex;flex-wrap:wrap;gap:8px}.expertise-badge,.style-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:16px;font-size:12px;font-weight:500}.expertise-badge{border:1px solid;color:#fff}.style-badge{background:#ffffff14;border:1px solid rgba(255,255,255,.1);color:#ffffffb3;text-transform:capitalize}.proactive-notifications{display:flex;flex-direction:column;gap:10px;padding:12px}.proactive-notification{display:flex;align-items:flex-start;gap:12px;padding:14px;background:#1e1e28b3;border:1px solid rgba(255,255,255,.1);border-radius:12px;animation:slideInNotification .3s ease-out}@keyframes slideInNotification{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.proactive-notification.priority-urgent{border-color:#ef444480;background:#ef44441a}.proactive-notification.priority-high{border-color:#f59e0b66;background:#f59e0b14}.proactive-notification.priority-low{border-color:#22c55e4d;background:#22c55e0d}.notification-icon{font-size:24px;flex-shrink:0}.notification-title{font-size:14px;font-weight:600;color:#fff;margin-bottom:4px}.notification-message{font-size:13px;color:#ffffffb3;line-height:1.4}.notification-pet{font-size:11px;color:#ffffff80;margin-top:6px}.notification-actions{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.notification-action-btn{padding:6px 12px;background:#3b82f633;border:1px solid rgba(59,130,246,.4);border-radius:6px;color:#60a5fa;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.notification-action-btn:hover{background:#3b82f64d}.notification-dismiss-btn{padding:4px 8px;background:transparent;border:none;color:#fff6;font-size:14px;cursor:pointer;transition:all .2s;align-self:flex-end}.notification-dismiss-btn:hover{color:#fffc}.notifications-more{text-align:center;font-size:12px;color:#ffffff80;padding:8px}.notification-bell{position:relative;background:transparent;border:none;font-size:20px;cursor:pointer;padding:6px;transition:transform .2s}.notification-bell:hover{transform:scale(1.1)}.notification-bell.has-notifications{animation:bellRing .5s ease-in-out}@keyframes bellRing{0%,to{transform:rotate(0)}25%{transform:rotate(10deg)}50%{transform:rotate(-10deg)}75%{transform:rotate(5deg)}}.notification-count{position:absolute;top:0;right:0;min-width:16px;height:16px;background:#ef4444;border-radius:8px;font-size:10px;font-weight:700;color:#fff;display:flex;align-items:center;justify-content:center;padding:0 4px}.settings-modal-overlay{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.settings-modal-content{background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:16px;width:90%;max-width:500px;max-height:80vh;overflow-y:auto;box-shadow:0 20px 60px #00000080;border:1px solid rgba(255,255,255,.1)}.settings-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.1);background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px 16px 0 0}.settings-modal-header h2{margin:0;font-size:20px;font-weight:600;color:#fff}.settings-close-btn{width:32px;height:32px;border:none;background:#fff3;color:#fff;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:24px;line-height:1;transition:background .2s}.settings-close-btn:hover{background:#ffffff4d}.notification-center-backdrop{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:9998}.notification-center-panel{position:fixed;top:0;right:0;bottom:0;width:100%;max-width:420px;background:var(--card);box-shadow:-4px 0 24px #0000004d;z-index:9999;display:flex;flex-direction:column;overflow:hidden}@media(max-width:480px){.notification-center-panel{max-width:100%}}.notification-center-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border);background:var(--surface-2)}.notification-center-title{display:flex;align-items:center;gap:12px}.notification-center-title h2{margin:0;font-size:1.25rem;font-weight:700;color:var(--text)}.notification-center-icon{color:var(--brand)}.notification-center-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--brand);color:#fff;border-radius:10px;font-size:.75rem;font-weight:700}.notification-center-close{background:transparent;border:none;color:var(--muted);cursor:pointer;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.notification-center-close:hover{background:var(--surface-3);color:var(--text)}.notification-center-filters{display:flex;gap:8px;padding:1rem 1.5rem;border-bottom:1px solid var(--border);background:var(--surface-2)}.filter-btn{flex:1;padding:8px 16px;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--text-2);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.filter-btn:hover{background:var(--surface-3);border-color:var(--brand)}.filter-btn.active{background:var(--brand);border-color:var(--brand);color:#fff}.notification-center-actions{display:flex;gap:8px;padding:.75rem 1.5rem;border-bottom:1px solid var(--border);background:var(--surface-2)}.action-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--text-2);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s ease}.action-btn:hover{background:var(--surface-3);border-color:var(--brand);color:var(--text)}.action-btn svg{flex-shrink:0}.notification-center-list{flex:1;overflow-y:auto;padding:.5rem 0}.notification-item{position:relative;display:flex;align-items:flex-start;gap:12px;padding:1rem 1.5rem;border-bottom:1px solid var(--border);cursor:pointer;transition:background .2s ease}.notification-item:hover{background:var(--surface-2)}.notification-item.unread{background:#6366f10d}.notification-item.unread:hover{background:#6366f114}.notification-item.read{opacity:.7}.unread-indicator{position:absolute;left:8px;top:50%;transform:translateY(-50%);width:8px;height:8px;background:var(--brand);border-radius:50%;box-shadow:0 0 0 2px #6366f133}.notification-icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--surface-3)}.notification-icon.achievement{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff}.notification-icon.xp{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.notification-icon.forum{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.notification-icon.social{background:linear-gradient(135deg,#ec4899,#db2777);color:#fff}.notification-icon.reminder{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.notification-icon.system{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.notification-content{flex:1;min-width:0}.notification-title{font-size:.9375rem;font-weight:600;color:var(--text);margin-bottom:4px;line-height:1.4}.notification-message{font-size:.875rem;color:var(--text-2);margin-bottom:6px;line-height:1.5}.notification-subtitle{font-size:.8125rem;color:var(--muted);margin-bottom:6px}.notification-time{font-size:.75rem;color:var(--muted)}.notification-center-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;min-height:400px}.notification-center-empty .empty-icon{color:var(--muted);opacity:.5;margin-bottom:1rem}.notification-center-empty p{font-size:1rem;font-weight:600;color:var(--text-2);margin:0 0 .5rem}.notification-center-empty .empty-subtitle{font-size:.875rem;color:var(--muted);max-width:280px}.notification-center-empty .spinner{width:40px;height:40px;border:3px solid var(--surface-3);border-top-color:var(--brand);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.notification-center-list::-webkit-scrollbar{width:6px}.notification-center-list::-webkit-scrollbar-track{background:transparent}.notification-center-list::-webkit-scrollbar-thumb{background:var(--surface-4);border-radius:3px}.notification-center-list::-webkit-scrollbar-thumb:hover{background:var(--surface-5)}.notification-actions{display:flex;gap:8px;margin-top:10px}.notification-actions .action-btn{display:flex;align-items:center;gap:4px;padding:6px 12px;font-size:.75rem;font-weight:600;border-radius:6px;border:none;cursor:pointer;transition:all .15s ease}.notification-actions .action-btn.accept{background:#21c45d;color:#fff}.notification-actions .action-btn.accept:hover{background:#1ca64f}.notification-actions .action-btn.decline{background:var(--surface-3);color:var(--text-2)}.notification-actions .action-btn.decline:hover{background:#d22d2d;color:#fff}.mobile-menu-backdrop{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:999;-webkit-tap-highlight-color:transparent}.mobile-menu-drawer{position:fixed;top:0;right:0;bottom:0;width:85%;max-width:360px;background:var(--card-bg, #fff);z-index:1000;display:flex;flex-direction:column;box-shadow:-4px 0 24px #00000026}.mobile-menu-drawer .drawer-header{display:flex;align-items:center;justify-content:space-between;padding:24px 20px;border-bottom:1px solid var(--border, #e5e7eb);background:linear-gradient(135deg,var(--primary, #3b82f6) 0%,var(--primary-dark, #2563eb) 100%);color:#fff}.mobile-menu-drawer .drawer-header .user-info{display:flex;align-items:center;gap:12px;flex:1}.mobile-menu-drawer .drawer-header .user-info .avatar{width:48px;height:48px;border-radius:50%;overflow:hidden;background:#fff3;display:flex;align-items:center;justify-content:center}.mobile-menu-drawer .drawer-header .user-info .avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.mobile-menu-drawer .drawer-header .user-info .avatar .avatar-placeholder{font-size:20px;font-weight:700;color:#fff}.mobile-menu-drawer .drawer-header .user-info .user-details{flex:1;min-width:0}.mobile-menu-drawer .drawer-header .user-info .user-details h3{font-size:18px;font-weight:700;margin:0;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-menu-drawer .drawer-header .user-info .user-details .user-rank{font-size:13px;margin:2px 0 0;color:#ffffffe6;font-weight:500}.mobile-menu-drawer .drawer-header .close-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:#ffffff26;color:#fff;border-radius:50%;cursor:pointer;transition:background .2s;-webkit-tap-highlight-color:transparent}.mobile-menu-drawer .drawer-header .close-button:active{background:#ffffff40}.mobile-menu-drawer .drawer-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:12px 0}.mobile-menu-drawer .drawer-content .menu-section{margin-bottom:20px}.mobile-menu-drawer .drawer-content .menu-section .section-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted-foreground, #6b7280);padding:12px 20px 8px;margin:0}.mobile-menu-drawer .drawer-content .menu-section .menu-items{display:flex;flex-direction:column}.mobile-menu-drawer .drawer-content .menu-section .menu-item{position:relative;display:flex;align-items:center;gap:16px;padding:14px 20px;border:none;background:transparent;cursor:pointer;transition:background .2s;-webkit-tap-highlight-color:transparent;width:100%;text-align:left}.mobile-menu-drawer .drawer-content .menu-section .menu-item .item-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--accent, #f3f4f6);color:var(--muted-foreground, #6b7280);transition:all .2s}.mobile-menu-drawer .drawer-content .menu-section .menu-item .item-label{flex:1;font-size:16px;font-weight:500;color:var(--foreground, #111827)}.mobile-menu-drawer .drawer-content .menu-section .menu-item .active-dot{width:6px;height:6px;border-radius:3px;background:var(--primary, #3b82f6)}.mobile-menu-drawer .drawer-content .menu-section .menu-item.active .item-icon{background:var(--primary, #3b82f6);color:#fff}.mobile-menu-drawer .drawer-content .menu-section .menu-item.active .item-label{color:var(--primary, #3b82f6);font-weight:600}.mobile-menu-drawer .drawer-content .menu-section .menu-item:active{background:var(--accent, #f3f4f6)}.mobile-menu-drawer .drawer-footer{padding:16px 20px;padding-bottom:max(16px,env(safe-area-inset-bottom));border-top:1px solid var(--border, #e5e7eb)}.mobile-menu-drawer .drawer-footer .logout-button{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:14px;border:1px solid var(--border, #e5e7eb);background:transparent;color:var(--destructive, #ef4444);font-size:16px;font-weight:600;border-radius:12px;cursor:pointer;transition:all .2s;-webkit-tap-highlight-color:transparent}.mobile-menu-drawer .drawer-footer .logout-button:active{background:var(--accent, #f3f4f6)}@media(prefers-color-scheme:dark){.mobile-menu-drawer{background:var(--card-bg, #1f2937)}.mobile-menu-drawer .drawer-header{border-bottom-color:var(--border, #374151)}.mobile-menu-drawer .drawer-content .menu-item .item-icon{background:var(--accent, #374151)}.mobile-menu-drawer .drawer-content .menu-item .item-label{color:var(--foreground, #f9fafb)}.mobile-menu-drawer .drawer-content .menu-item:active{background:var(--accent, #374151)}.mobile-menu-drawer .drawer-footer{border-top-color:var(--border, #374151)}.mobile-menu-drawer .drawer-footer .logout-button{border-color:var(--border, #374151)}.mobile-menu-drawer .drawer-footer .logout-button:active{background:var(--accent, #374151)}}@media(min-width:769px){.mobile-menu-backdrop,.mobile-menu-drawer{display:none}}.mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:100;display:none;background:var(--card);border-top:1px solid var(--border);padding:8px;padding-bottom:max(8px,env(safe-area-inset-bottom));box-shadow:0 -4px 12px #0000001a;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}@media(max-width:768px){.mobile-bottom-nav{display:flex;justify-content:space-around;align-items:center;gap:4px}}.mobile-bottom-nav .nav-item{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 12px;border:none;background:transparent;color:var(--muted-foreground);font-size:11px;font-weight:500;cursor:pointer;transition:all .2s ease;border-radius:12px;min-width:60px;-webkit-tap-highlight-color:transparent}.mobile-bottom-nav .nav-item:active{background:var(--accent)}.mobile-bottom-nav .nav-item.active{color:var(--primary)}.mobile-bottom-nav .nav-item.active .icon-wrapper svg{color:var(--primary)}.mobile-bottom-nav .nav-item .icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center}.mobile-bottom-nav .nav-item .icon-wrapper .badge{position:absolute;top:-6px;right:-8px;background:var(--destructive);color:#fff;font-size:10px;font-weight:700;padding:2px 5px;border-radius:10px;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0003}.mobile-bottom-nav .nav-item .label{white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mobile-bottom-nav .nav-item .active-indicator{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:4px;height:4px;background:var(--primary);border-radius:2px}.mobile-bottom-nav .nav-item.menu-button .icon-wrapper{background:var(--primary);color:#fff;border-radius:12px;padding:4px}.mobile-bottom-nav .nav-item.menu-button .label{color:var(--primary);font-weight:600}@media(max-width:768px){body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}}.quick-action-fab{display:none}@media(max-width:768px){.quick-action-fab{display:block;position:fixed;bottom:96px;right:16px;z-index:99}}.quick-action-fab .fab-overlay{position:fixed;inset:0;background:#0006;z-index:98;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.quick-action-fab .speed-dial-menu{position:absolute;bottom:72px;right:0;background:var(--card);border-radius:16px;padding:12px;box-shadow:0 8px 24px #0003;min-width:200px;border:1px solid var(--border)}.quick-action-fab .speed-dial-menu .menu-header{padding:8px 12px;font-size:13px;color:var(--muted-foreground);border-bottom:1px solid var(--border);margin-bottom:8px}.quick-action-fab .speed-dial-menu .menu-header strong{color:var(--foreground);font-weight:600}.quick-action-fab .speed-dial-menu .speed-dial-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px;border:none;background:transparent;border-radius:12px;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.quick-action-fab .speed-dial-menu .speed-dial-item:hover{background:var(--accent)}.quick-action-fab .speed-dial-menu .speed-dial-item:active{transform:scale(.98)}.quick-action-fab .speed-dial-menu .speed-dial-item .action-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:var(--action-color);color:#fff;flex-shrink:0}.quick-action-fab .speed-dial-menu .speed-dial-item .action-label{font-size:15px;font-weight:500;color:var(--foreground);text-align:left}.quick-action-fab .fab-main{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:var(--primary);color:#fff;border:none;cursor:pointer;box-shadow:0 4px 12px #0000004d;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.quick-action-fab .fab-main:hover{box-shadow:0 6px 16px #0006}.quick-action-fab .fab-main.open{background:var(--destructive)}:root{--bg:#101012;--card:#16161a;--soft:#0f0f12;--border:#27272a;--text:#f4f4f6;--muted:#a0a0af;--brand:#6366f1;--brand2:#4f46e5;--ok:#22c55e;--warn:#f59e0b;--danger:#ef4444;--info:#3b82f6;--radius: 1rem;--shadow: 0 10px 30px rgba(0,0,0,.25);--shadow-sm: 0 2px 8px rgba(0,0,0,.15);--shadow-md: 0 6px 20px rgba(0,0,0,.25);--shadow-lg: 0 12px 40px rgba(0,0,0,.4);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--transition: all .2s cubic-bezier(.4, 0, .2, 1);--transition-fast: all .15s ease;--transition-slow: all .3s ease}.h1{font-size:30px;font-weight:800;letter-spacing:.5px}.h2{font-size:20px;font-weight:700;letter-spacing:.2px}.small{font-size:12px}.muted{color:var(--muted)}.code{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.h2:after{content:"";display:block;width:80px;height:2px;background:linear-gradient(90deg,var(--brand),transparent);margin-top:6px;border-radius:2px}.prose{font-size:17px;line-height:1.75}.prose p{margin:8px 0}.prose strong{font-weight:700}.prose ul{margin:8px 0 8px 18px}.prose li{margin:4px 0}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;color:var(--text);background:radial-gradient(1200px 1200px at 120% -10%,rgba(76,121,255,.15),transparent 60%),radial-gradient(800px 800px at -20% 120%,rgba(122,162,255,.08),transparent 55%),linear-gradient(180deg,#0a0e14 0% 100%);font-family:Outfit,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;font-size:16.5px;line-height:1.65}:root{--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--touch-bottom: 12px;--bottom-ui-offset: calc(var(--safe-bottom) + var(--touch-bottom))}body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(transparent 95%,#ffffff0d 95%),linear-gradient(90deg,transparent 95%,rgba(255,255,255,.05) 95%);background-size:28px 28px,28px 28px;opacity:.4;-webkit-mask-image:radial-gradient(ellipse at 60% -10%,rgba(0,0,0,.35),rgba(0,0,0,.9));mask-image:radial-gradient(ellipse at 60% -10%,#00000059,#000000e6)}.header{position:sticky;top:0;z-index:10;background:#0f1520d9;-webkit-backdrop-filter:saturate(1.2) blur(8px);backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid var(--border)}.header.minimal .container{padding:calc(12px + var(--safe-top)) 16px 12px 16px}.hide-xs,.hide-sm{display:inline-block}.container{max-width:1200px;margin:0 auto;padding:18px 20px;width:100%;box-sizing:border-box}.grid{display:grid;gap:12px;width:100%;max-width:100%}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;max-width:100%}.row>*{min-width:0}.hide-mobile{display:block}.show-mobile{display:none}.app-shell{display:flex;min-height:100vh}.left-rail{width:220px;flex:0 0 220px;border-right:1px solid rgba(59,130,246,.4);background:linear-gradient(180deg,#090b16e6,#030712f2);position:sticky;top:0;height:100vh}.left-rail-inner{padding:16px;display:flex;flex-direction:column;gap:14px}.left-rail-brand{font-weight:800;letter-spacing:.3px}.left-rail-nav{display:flex;flex-direction:column;gap:6px}.left-rail-btn{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;border:1px solid transparent;background:transparent;color:var(--text);cursor:pointer;text-align:left;transition:background .2s cubic-bezier(.2,.8,.2,1),border-color .2s cubic-bezier(.2,.8,.2,1)}.left-rail-btn:hover{background:#ffffff14;border-color:#6366f166}.left-rail-btn.active{background:#6366f11a;border-color:#6366f180}.left-rail-ico{width:20px;text-align:center;opacity:.9}.left-rail-section{margin-top:auto;border-top:1px solid var(--border);padding-top:12px}.left-rail-title{font-weight:700;color:var(--muted);margin-bottom:6px}.left-rail-legend{display:flex;flex-direction:column;gap:6px;color:var(--muted)}.content-wrap{flex:1 1 auto;min-width:0;padding-bottom:calc(80px + var(--bottom-ui-offset))}.card{background:linear-gradient(180deg,#16161ae6,#101014e6);border:1px solid var(--border);border-radius:18px;padding:16px;box-shadow:0 10px 40px #00000059;width:100%;max-width:100%;box-sizing:border-box}.wiki-hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;align-items:center}.hero-content{display:flex;flex-direction:column;gap:12px}.hero-eyebrow{letter-spacing:2px;font-size:12px;text-transform:uppercase;color:var(--muted)}.hero-title{font-size:34px;font-weight:900;margin:0}.hero-copy{margin:0;color:var(--muted);line-height:1.5;max-width:520px}.hero-stats{display:flex;flex-wrap:wrap;gap:8px}.hero-stat{font-size:12px;font-weight:600;padding:6px 12px;border-radius:999px;background:linear-gradient(180deg,#9aabff2e,#232d4ce6);border:1px solid rgba(154,171,255,.4)}.hero-actions .btn{min-width:140px}.hero-graphic{display:flex;justify-content:center}.hero-graphic__placeholder{width:100%;max-width:230px;aspect-ratio:1/1;border-radius:22px;border:1px dashed var(--border);display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,#ffffff0a,#101828e6);color:var(--muted);gap:6px}.filter-panel{padding:20px}.filter-note{margin-top:6px}.wiki-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.wiki-badge{font-size:11px;text-transform:uppercase;letter-spacing:.25px;padding:4px 10px;border-radius:12px;background:#6366f11f;border:1px solid rgba(99,102,241,.4);color:#aeb5ff}.detail-hero{background:linear-gradient(180deg,#182030cc,#0c1424e6);border:1px solid var(--border);border-radius:20px;padding:22px;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;align-items:center;box-shadow:0 20px 50px #00000073}.detail-hero__content{display:flex;flex-direction:column;gap:14px}.detail-hero__eyebrow{font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}.detail-hero__title{font-size:32px;font-weight:900;margin:0}.detail-hero__summary{margin:0;color:var(--muted);line-height:1.6}.detail-hero__badges{display:flex;flex-wrap:wrap;gap:8px}.detail-hero__badge{padding:6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;font-size:12px}.detail-hero__stats{display:flex;flex-wrap:wrap;gap:12px}.detail-hero__stat{flex:1 0 120px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:10px;text-align:center}.detail-hero__stat-label{font-size:11px;text-transform:uppercase;color:var(--muted)}.detail-hero__stat-value{font-weight:700;margin-top:4px}.detail-hero__actions{margin-top:6px}.detail-hero__image{display:flex;flex-direction:column;gap:8px}.detail-hero__caption{font-size:11px;color:var(--muted)}.detail-section{border-radius:18px}.section-title{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--muted)}.section-title span{position:relative;padding-right:14px}.section-title span:after{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);width:80px;height:2px;background:linear-gradient(90deg,var(--brand),transparent);border-radius:2px}.card.wiki{padding:12px;display:grid;gap:8px}.btn{padding:.6rem .9rem;border-radius:12px;border:1px solid var(--border);background:linear-gradient(180deg,var(--brand),var(--brand2));color:#fff;cursor:pointer;font-weight:700;letter-spacing:.2px;transition:transform .2s cubic-bezier(.2,.8,.2,1),filter .2s cubic-bezier(.2,.8,.2,1)}.btn:hover{filter:brightness(1.05)}.btn:active{transform:translateY(1px)}.btn.out{background:var(--soft);color:var(--text)}.btn.out:hover{background:#ffffff0f}.btn.danger{background:linear-gradient(180deg,#ff6f8b,#ff496e)}.iconbtn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:1px solid var(--border);background:var(--soft);color:var(--text);cursor:pointer;transition:background .2s cubic-bezier(.2,.8,.2,1),transform .2s cubic-bezier(.2,.8,.2,1)}.iconbtn:hover{background:#ffffff0f}.iconbtn:active{transform:translateY(1px)}.input,select,textarea{width:100%;padding:.7rem .9rem;border:1px solid var(--border);border-radius:10px;background:var(--soft);color:var(--text);transition:border-color .2s cubic-bezier(.2,.8,.2,1),box-shadow .2s cubic-bezier(.2,.8,.2,1)}.input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 2px #7d5aff40}.btn:focus-visible,.tab:focus-visible,.chip:focus-visible,.segmented .seg:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.search{max-width:280px}.badge{background:#172236;padding:2px 8px;border-radius:999px;font-size:12px;border:1px solid var(--border)}.badge.due{background:#2a3a19;border-color:#3f5a27}.badge.warn{background:#3a2a19;border-color:#5a3f27}.badge.ok{background:#203825;border-color:#2f5a3b}.badge.info{background:#1b2a44;border-color:#28406a}.chip{background:var(--soft);border:1px solid var(--border);padding:6px 10px;border-radius:999px;transition:background .2s cubic-bezier(.2,.8,.2,1),border-color .2s cubic-bezier(.2,.8,.2,1)}.chip.active{background:#6366f126;border-color:#3f3f46}.chip-btn{background:transparent;border:1px solid var(--border);padding:6px 10px;border-radius:999px;transition:background .2s cubic-bezier(.2,.8,.2,1),border-color .2s cubic-bezier(.2,.8,.2,1)}.chip-btn.active{background:#6366f126;border-color:#3f3f46}.pill{padding:4px 10px;border-radius:999px;border:1px solid var(--border);background:#17171b}.switch-control{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer}.switch-control__label{color:var(--muted)}.switch-control__track{position:relative;width:46px;height:24px;border-radius:999px;background:#ffffff40}.switch-control__track input{position:absolute;width:0;height:0;opacity:0}.switch-control__thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .25s ease,background .25s ease}.switch-control__thumb.is-checked{transform:translate(22px);background:#10b981}.table{width:100%;border-collapse:separate;border-spacing:0 8px}.table tr{background:var(--soft)}.table td{padding:10px 12px;vertical-align:top}img.thumb{border-radius:12px;-o-object-fit:cover;object-fit:cover}.thumb-rect{width:100%;aspect-ratio:16/10;-o-object-fit:cover;object-fit:cover;border-radius:10px;border:1px solid var(--border)}.hero-img{width:100%;max-height:360px;-o-object-fit:cover;object-fit:cover;border-radius:12px;border:1px solid var(--border)}.preview{border:1px dashed var(--border);border-radius:12px;padding:8px;display:flex;gap:8px;align-items:center}.modal{position:fixed;inset:0;background:#000000a6;display:flex;align-items:center;justify-content:center;padding:16px;padding-bottom:calc(96px + var(--bottom-ui-offset));animation:fade .12s ease-out;z-index:1050;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@keyframes fade{0%{opacity:0}to{opacity:1}}.modal-panel{background:var(--bg)!important;border:1px solid var(--border);border-radius:16px;max-width:860px;width:100%;box-shadow:0 20px 60px #0009;max-height:calc(90vh - 96px);display:flex;flex-direction:column}.modal-head{padding:14px 16px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;flex:0 0 auto}.modal-body{padding:16px;overflow:auto;flex:1 1 auto}.modal-foot{padding:12px 16px;border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end;flex:0 0 auto}.toastwrap{position:fixed;right:16px;bottom:16px;display:flex;flex-direction:column;gap:8px;z-index:50}.toast{background:var(--soft);border:1px solid var(--border);border-left:4px solid var(--ok);color:var(--text);padding:10px 12px;border-radius:12px;min-width:240px}.toast.error{border-left-color:var(--danger)}.clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.caption{font-size:12px;color:var(--muted);margin-top:6px}.caption a{text-decoration:underline}.wiki-title{text-align:center;font-size:26px;font-weight:800}.section-title{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:800;justify-content:center}.ico{display:inline-block;width:22px;text-align:center}.info-row{display:flex;align-items:center;gap:8px}.pills{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:6px}.pill{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:linear-gradient(180deg,#ffffff0f,#ffffff05);border:1px solid var(--border)}.pill.risk{border-color:transparent}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.stat-card{background:linear-gradient(180deg,#182030e6,#101622d9);border:1px solid var(--border);border-radius:14px;padding:12px;text-align:center;box-shadow:0 10px 30px #00000059}.stat-title{font-weight:800;text-transform:capitalize;margin-bottom:6px}.stat-line{font-size:14px;color:var(--muted)}.chip{padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--soft);color:var(--text);cursor:pointer}.chip.active{background:linear-gradient(180deg,var(--brand),var(--brand2));color:#fff;border-color:transparent}.chips{display:flex;flex-wrap:wrap;gap:8px}.segmented{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:4px;border-radius:999px;border:1px solid var(--border);background:var(--soft)}.segmented .seg{padding:6px 12px;background:transparent;color:var(--text);border:none;border-radius:999px;cursor:pointer}.segmented .seg.active{background:linear-gradient(180deg,var(--brand),var(--brand2));color:#fff}.card-header{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}.card-header__left{display:flex;align-items:center;gap:8px}.card-header__actions{display:flex;gap:8px}.card-section+.card-section{margin-top:12px}.tabs{position:sticky;top:56px;z-index:9;display:flex;flex-wrap:wrap;gap:8px;padding:8px 12px;background:#0f1520d9;-webkit-backdrop-filter:saturate(1.2) blur(8px);backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid var(--border);transition:transform .18s ease,opacity .18s ease}.tab{padding:8px 12px;border-radius:999px;background:var(--soft);color:var(--text);border:1px solid var(--border);white-space:nowrap}.tab.active{background:linear-gradient(180deg,var(--brand),var(--brand2));color:#fff;border-color:transparent;font-weight:700}.stars{display:inline-flex;gap:2px}.star{cursor:pointer;font-size:16px;color:#888}.star.filled{color:#ffc107}.star.disabled{cursor:default;opacity:.6}.wiki-title{text-align:center}.risk{font-weight:700}.risk.low{color:#27c24c}.risk.moderate,.risk.medium{color:#f0ad4e}.risk.high,.risk.severe{color:#e55353}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}@media(max-width:640px){.container{padding:14px 12px}.row{gap:8px}.search{max-width:100%}.modal{padding:10px}.modal-panel{max-width:100%;width:100%;border-radius:12px}.tabs{gap:6px}.tab{flex:1 1 calc(50% - 6px);text-align:center}.avatar-grid{grid-template-columns:1fr!important}.header .container{padding:12px}.header .h1{font-size:18px;max-width:100%}.header .tagline{display:none}.header .actions{width:100%;justify-content:space-between}.hide-xs,.hide-sm{display:none!important}}.fab{position:fixed;right:18px;bottom:calc(78px + var(--bottom-ui-offset));z-index:40}.fab-main{width:56px;height:56px;border-radius:999px;border:1px solid var(--border);color:#fff;font-size:28px;line-height:0;display:grid;place-items:center;cursor:pointer;box-shadow:0 10px 25px #00000059;background:linear-gradient(135deg,#e11d48,#7c3aed)}.fab-actions{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.fab-action{background:var(--card);color:var(--text);border:1px solid var(--border);border-radius:999px;padding:8px 12px;text-align:left}.tabbar{position:fixed;left:0;right:0;bottom:var(--bottom-ui-offset);display:flex;gap:6px;padding:8px;background:#0f0f12e6;-webkit-backdrop-filter:saturate(1.2) blur(8px);backdrop-filter:saturate(1.2) blur(8px);border-top:1px solid var(--border);z-index:30}.tabbar button{flex:1;min-width:0;padding:10px 12px;border-radius:999px;background:var(--soft);border:1px solid var(--border);color:var(--text);transition:background .2s cubic-bezier(.2,.8,.2,1)}.sheet-mask{position:fixed;inset:0;background:#00000073;display:grid;place-items:end center;z-index:50}.sheet-panel{width:100%;max-height:80vh;background:var(--card);border:1px solid var(--border);border-radius:16px 16px 0 0;box-shadow:0 -10px 30px #00000059;display:flex;flex-direction:column;animation:slideup .18s ease-out;margin-bottom:var(--bottom-ui-offset)}.sheet-panel--lg{max-height:88vh}.sheet-panel--xl{max-height:92vh;border-radius:24px 24px 0 0}@keyframes slideup{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.sheet-head{padding:14px 16px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.sheet-body{padding:16px;overflow:auto;padding-bottom:calc(16px + var(--bottom-ui-offset))}.toastwrap{position:fixed;right:16px;bottom:calc(90px + var(--bottom-ui-offset));display:flex;flex-direction:column;gap:8px;z-index:70}.toast{background:#27272af2;border:1px solid var(--border);color:var(--text);padding:10px 12px;border-radius:10px;box-shadow:0 10px 25px #00000059}.toast.error{background:#7f1d1df2}.nav-mask{position:fixed;inset:0;background:#00000073;display:grid;grid-template-columns:1fr;z-index:60}.nav-panel{width:min(86vw,320px);height:100vh;background:var(--card);border-right:1px solid var(--border);box-shadow:0 10px 30px #00000059;animation:slidein .18s ease-out}@keyframes slidein{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}@media(min-width:901px){.nav-mask{display:none}}.sheet-foot{padding:12px 16px;border-top:1px solid var(--border);display:flex;gap:8px;justify-content:flex-end;padding-bottom:calc(12px + var(--bottom-ui-offset))}body,.container{padding-bottom:0}.two-col{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}.two-col .main{flex:2 1 620px;min-width:280px}.two-col .side{flex:1 1 320px;min-width:280px}@media(max-width:900px){.hide-mobile{display:none!important}.show-mobile{display:block!important}.two-col .main{order:1;width:100%}.two-col .side{order:2;width:100%}.two-col .main,.two-col .side{min-width:0}.two-col.overview-first-side .side{order:1}.two-col.overview-first-side .main{order:2}.tabs.tabs--hidden{transform:translateY(-120%);opacity:0}body,.container{padding-bottom:0}}@media(max-width:420px){html,body,#root{overflow-x:hidden;max-width:100%}.tabbar{gap:6px;padding:8px}.container{overflow-x:hidden}.card,.grid,.two-col{max-width:100%}.tabbar button{padding:8px;font-size:14px}.tabbar{gap:4px;padding:6px}.tabbar button{padding:8px 6px;font-size:14px}}.app-shell--overhauled{min-height:100vh;padding-bottom:calc(96px + var(--bottom-ui-offset))}.app-shell--overhauled main{max-width:1200px;margin:0 auto;padding:24px 16px 16px}.floating-dock{position:fixed!important;bottom:calc(16px + var(--bottom-ui-offset));top:auto!important;right:auto;left:50%;transform:translate(-50%);display:flex;justify-content:center;align-items:center;gap:8px;padding:10px 20px;border-radius:999px;background:#060a14eb;border:1px solid rgba(59,130,246,.35);box-shadow:0 16px 36px #00000080,inset 0 0 0 1px #ffffff0d;z-index:9999;width:auto;max-width:95vw;overflow:visible;padding-bottom:max(10px,env(safe-area-inset-bottom));transition:all .3s ease}.floating-dock__items{display:flex;justify-content:center;align-items:center;gap:12px}.floating-dock__action{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:72px;min-height:52px;padding:8px 12px;border:none;background:transparent;color:#f8fafc;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.4px;cursor:pointer;pointer-events:auto;position:relative;z-index:1;transition:transform .2s ease}.floating-dock__action:active{transform:scale(.95)}.floating-dock__action:focus-visible{outline:2px solid rgba(99,102,241,.8);outline-offset:4px}.floating-dock__icon{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#3b82f659,#0f172ae6);display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px #ffffff0f}.floating-dock__icon img,.floating-dock__icon svg{width:38px;height:38px;-o-object-fit:contain;object-fit:contain;display:block}@media(max-width:768px){.floating-dock{width:auto;padding:6px;gap:4px;bottom:calc(12px + env(safe-area-inset-bottom));transition:all .3s cubic-bezier(.4,0,.2,1)}.floating-dock--collapsed{width:auto;padding:8px 16px;border-radius:999px}.floating-dock--collapsed .floating-dock__toggle{display:flex;flex-direction:row;align-items:center;gap:8px;padding:4px 8px;border:none;background:transparent;color:#f8fafc;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.3px;cursor:pointer}.floating-dock--collapsed .floating-dock__toggle .floating-dock__icon{width:32px;height:32px;background:linear-gradient(135deg,#6366f166,#3b82f666)}.floating-dock--collapsed .floating-dock__toggle .floating-dock__icon svg{width:18px;height:18px}.floating-dock--expanded{width:calc(100vw - 24px);max-width:420px;padding:8px 12px;border-radius:24px;gap:2px}.floating-dock--expanded .floating-dock__items{flex-wrap:wrap;justify-content:center}.floating-dock__toggle{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:56px;min-height:44px;padding:4px;border:none;background:transparent;color:#f8fafc;font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:.3px;cursor:pointer}.floating-dock__toggle .floating-dock__icon{width:44px;height:44px}.floating-dock__collapse{position:absolute;top:4px;right:4px;width:32px;height:32px;border-radius:50%;background:#dc2626cc;color:#fff;border:none;font-size:24px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10}.floating-dock__action{min-width:54px;min-height:44px;padding:4px 6px;gap:2px}.floating-dock__icon{width:44px;height:44px}.floating-dock__icon img,.floating-dock__icon svg{width:28px;height:28px}.floating-dock__label{font-size:9px;letter-spacing:.3px}}@media(max-width:640px){.floating-dock{bottom:calc(8px + env(safe-area-inset-bottom))}}.floating-dock__action--menu .floating-dock__icon{background:#020617e6;border-color:#ffffff26}.floating-dock__label{pointer-events:none}.floating-dock__badge{position:absolute;top:0;right:8px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-size:10px;font-weight:700;padding:2px 6px;border-radius:999px;min-width:18px;text-align:center;box-shadow:0 2px 8px #ef444480;border:1.5px solid rgba(0,0,0,.3);animation:pulse-badge 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse-badge{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.drawer-list{display:flex;flex-direction:column;gap:8px}.drawer-list__header{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--brand);padding:16px 8px 8px;margin-top:8px}.drawer-list__header:first-child{margin-top:0}.drawer-list__divider{height:1px;background:var(--border);margin:8px 0}.drawer-list__item{width:100%;display:flex;align-items:center;gap:12px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,#0f172ae6,#080c18f2);padding:12px 16px;color:#f8fafc;cursor:pointer;text-align:left;transition:all .2s ease}.drawer-list__item:hover{border-color:var(--brand);transform:translateY(-2px);box-shadow:0 4px 12px #7aa2ff33}.drawer-list__item--danger{border-color:#ef444433}.drawer-list__item--danger:hover{border-color:#ef4444;box-shadow:0 4px 12px #ef444433}.drawer-list__item--danger .drawer-list__icon{background:#ef444426;border-color:#ef444433}.drawer-list__item:focus-visible{outline:2px solid rgba(59,130,246,.8);outline-offset:2px}.drawer-list__icon{width:36px;height:36px;border-radius:12px;background:#3b82f626;border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;font-size:18px}.drawer-list__icon img{width:20px;height:20px;-o-object-fit:contain;object-fit:contain}.drawer-list__text{display:flex;flex-direction:column;flex:1;gap:2px}.drawer-list__text small{font-size:12px;color:#cbd5f5bf}.drawer-list__badge{background:#ef4444;color:#0b1221;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:700}.explore-page{padding:32px 20px 80px}.explore-page__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px;flex-wrap:wrap}.explore-page__intro{max-width:520px}body.layout-dense{font-size:15px}body.layout-dense .card{padding:12px}body.theme-high-contrast{--border: rgba(255,255,255,.4);--muted: #f5f5f5}body.theme-high-contrast .app-shell--overhauled{filter:saturate(1.1)}.module-sheet{max-height:62vh;overflow:auto;padding-right:6px}@media(max-width:640px){.module-sheet{max-height:68vh}}.collapsible-section{border:1px solid rgba(99,102,241,.3);border-radius:12px;overflow:hidden;margin-bottom:12px;background:#0c101e99}.collapsible-header{width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:16px 18px;background:#0f172acc;border:none;cursor:pointer;transition:var(--transition);text-align:left}.collapsible-header:hover{background:#6366f126}.collapsible-header.open{background:linear-gradient(180deg,#6366f133,#6366f11f);border-bottom:1px solid rgba(99,102,241,.3)}.collapsible-header__title{display:flex;align-items:center;gap:8px;font-weight:700;font-size:15px;color:#f1f5f9;flex:1;min-width:0}.collapsible-icon{display:inline-flex;align-items:center;font-size:16px;flex-shrink:0}.collapsible-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:#6366f133;border:1px solid rgba(99,102,241,.4);font-size:11px;font-weight:700;margin-left:auto;flex-shrink:0;color:var(--brand)}.collapsible-chevron{display:flex;align-items:center;justify-content:center;width:24px;height:24px;font-size:12px;transition:transform .2s ease;color:var(--muted);flex-shrink:0}.collapsible-header.open .collapsible-chevron{transform:none}.collapsible-content{padding:16px 18px;background:#00000059;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:1000px}}.tab-card{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:14px;overflow:hidden}.tab-card__header{display:flex;gap:2px;padding:4px;background:var(--soft);border-bottom:1px solid var(--border);overflow-x:auto;-webkit-overflow-scrolling:touch}.tab-card__header::-webkit-scrollbar{height:4px}.tab-card__header::-webkit-scrollbar-track{background:transparent}.tab-card__header::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.tab-card__tab{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:10px;border:none;background:transparent;color:var(--muted);font-weight:600;font-size:13px;cursor:pointer;transition:var(--transition);white-space:nowrap;flex-shrink:0}.tab-card__tab:hover{background:#6366f11a;color:var(--text)}.tab-card__tab.active{background:linear-gradient(180deg,var(--brand),var(--brand2));color:#fff}.tab-icon{display:inline-flex;align-items:center;font-size:14px}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 4px;border-radius:999px;background:#fff3;font-size:10px;font-weight:700}.tab-card__body{padding:16px;flex:1;overflow-y:visible;overflow-x:hidden}.compact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.compact-grid__item{display:flex;flex-direction:column;gap:4px}.compact-grid__label{font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);font-weight:600}.compact-grid__value{font-size:14px;font-weight:700;color:var(--text);word-break:break-word}.expandable-list{display:flex;flex-direction:column;gap:8px}.expandable-list__toggle{padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--brand);font-weight:600;font-size:12px;cursor:pointer;transition:var(--transition)}.expandable-list__toggle:hover{background:#6366f11a;border-color:var(--brand)}.module-layout{display:flex;flex-direction:column;gap:20px;height:100%}.module-layout__header{flex-shrink:0}.module-layout__body{display:grid;grid-template-columns:1fr 2fr;gap:20px;flex:1;min-width:0}.module-layout__sidebar{display:flex;flex-direction:column;gap:12px;overflow-y:auto;max-height:70vh}.module-layout__sidebar::-webkit-scrollbar{width:6px}.module-layout__sidebar::-webkit-scrollbar-thumb{background:#6366f14d;border-radius:3px}.module-layout__main{display:flex;flex-direction:column;gap:12px;overflow-y:auto;max-height:70vh}.module-layout__main::-webkit-scrollbar{width:6px}.module-layout__main::-webkit-scrollbar-thumb{background:#6366f14d;border-radius:3px}.module-layout.compact,.module-layout.compact .module-layout__body{gap:12px}.module-layout.compact .module-layout__sidebar,.module-layout.compact .module-layout__main{gap:8px}@media(max-width:900px){.module-layout__body{grid-template-columns:1fr}.tab-card__body{max-height:none;overflow-y:visible}.module-layout__sidebar,.module-layout__main{max-height:none}}@media(max-width:640px){.collapsible-header,.collapsible-content{padding:12px 14px}.tab-card__tab{padding:6px 10px;font-size:12px}.tab-card__body{padding:12px}.compact-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:8px}.compact-grid__label{font-size:10px}.compact-grid__value{font-size:13px}}.analytics-page{padding:24px;max-width:1200px;width:100%;margin:0 auto;min-height:calc(100vh - 120px);overflow-x:hidden}@media(max-width:768px){.analytics-page{padding:16px}}.analytics-page.analytics-page--gated{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0}.analytics-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:32px;flex-wrap:wrap}@media(max-width:768px){.analytics-header{flex-direction:column;align-items:stretch;gap:16px}}.analytics-title{display:flex;align-items:center;gap:12px;color:var(--text-primary)}.analytics-title svg{color:var(--color-primary)}.analytics-title h1{margin:0;font-size:32px;font-weight:700}@media(max-width:768px){.analytics-title h1{font-size:24px}}.analytics-controls{display:flex;gap:12px;flex-wrap:wrap}.analytics-pet-selector-btn{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:12px;border:2px solid var(--border-color);background:var(--surface-elevated);color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:280px}.analytics-pet-selector-btn:hover{border-color:var(--color-primary);background:var(--surface-hover);transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.analytics-pet-selector-btn:active{transform:translateY(0)}.analytics-pet-selector-btn svg{opacity:.6;transition:transform .2s ease}.pet-selector-btn-content{display:flex;align-items:center;gap:12px;flex:1}.pet-selector-icon{font-size:24px;line-height:1}.pet-selector-info{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.pet-selector-name{font-weight:600;font-size:15px;color:var(--text-primary)}.pet-selector-species{font-size:12px;color:var(--text-secondary);opacity:.8}.analytics-pet-select,.analytics-range-select{padding:10px 16px;border-radius:12px;border:2px solid var(--border-color);background:var(--surface-elevated);color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.analytics-pet-select:hover,.analytics-range-select:hover{border-color:var(--color-primary);background:var(--surface-hover)}.analytics-pet-select:focus,.analytics-range-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #8b5cf61a}.analytics-pet-select{min-width:250px}.analytics-range-select{min-width:140px}@media(max-width:768px){.analytics-controls{width:100%}.analytics-controls select{flex:1;min-width:0}.analytics-pet-select,.analytics-range-select{min-width:0}}@media(max-width:640px){.analytics-controls{flex-direction:column;width:100%}.analytics-pet-selector-btn,.analytics-range-select{width:100%;min-width:0}}.analytics-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:32px}@media(max-width:768px){.analytics-overview{grid-template-columns:repeat(2,1fr);gap:12px}}@media(max-width:480px){.analytics-overview{grid-template-columns:1fr}}.stat-card{background:linear-gradient(135deg,var(--surface-elevated) 0%,var(--surface-base) 100%);border-radius:16px;padding:24px;display:flex;align-items:center;gap:16px;border:2px solid var(--border-color);position:relative;overflow:hidden;transition:all .3s ease}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--card-color, var(--color-primary))}.stat-card:hover{transform:translateY(-2px);border-color:var(--card-color, var(--color-primary));box-shadow:0 8px 24px #0000004d}@media(max-width:768px){.stat-card{padding:16px;gap:12px}}.stat-card-icon{width:56px;height:56px;border-radius:12px;background:var(--card-color, var(--color-primary));display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;opacity:.9}.stat-card-icon svg{width:28px;height:28px}@media(max-width:768px){.stat-card-icon{width:48px;height:48px}.stat-card-icon svg{width:24px;height:24px}}.stat-card-content{flex:1;min-width:0}.stat-card-title{font-size:13px;font-weight:600;color:#ffffffb3;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.stat-card-value{font-size:32px;font-weight:700;color:#fff;line-height:1;text-shadow:0 1px 2px rgba(0,0,0,.2)}@media(max-width:768px){.stat-card-value{font-size:24px}}.stat-card-subtitle{font-size:13px;color:#fff9;margin-top:4px}.analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}@media(max-width:768px){.analytics-grid{grid-template-columns:1fr;gap:16px}}.analytics-card{background:var(--surface-elevated);border-radius:16px;padding:24px;border:2px solid var(--border-color);transition:all .3s ease}.analytics-card:hover{border-color:var(--color-primary-dim);box-shadow:0 8px 24px #0003}.analytics-card.analytics-card-wide{grid-column:1/-1}@media(max-width:768px){.analytics-card{padding:16px;border-radius:12px}}.analytics-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:16px;flex-wrap:wrap}.analytics-card-header h3{margin:0;font-size:18px;font-weight:600;color:#fff;display:flex;align-items:center;gap:8px}.analytics-card-header h3 svg{color:var(--color-primary)}@media(max-width:768px){.analytics-card-header{margin-bottom:16px}.analytics-card-header h3{font-size:16px}}.analytics-card-stats{display:flex;gap:8px;flex-wrap:wrap}.stat-badge{padding:6px 12px;border-radius:8px;font-size:12px;font-weight:600;background:#ffffff1a;color:#ffffffe6;border:1px solid rgba(255,255,255,.2)}.stat-badge.success{background:#22c55e26;color:#4ade80;border-color:#22c55e66}.stat-badge.info{background:#3b82f626;color:#60a5fa;border-color:#3b82f666}.stat-badge.warning{background:#f59e0b26;color:#fbbf24;border-color:#f59e0b66}.stat-badge.danger{background:#ef444426;color:#f87171;border-color:#ef444466}.analytics-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:400px;color:var(--text-secondary)}.analytics-loading .spinner{width:48px;height:48px;border:4px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}.analytics-loading p{margin:0;font-size:14px;font-weight:500}.analytics-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:400px;padding:48px;text-align:center;background:var(--surface-elevated);border-radius:16px;border:2px dashed var(--border-color)}.analytics-empty svg{color:var(--text-tertiary);opacity:.5}.analytics-empty h2{margin:0;font-size:24px;font-weight:600;color:var(--text-primary)}.analytics-empty p{margin:0;font-size:14px;color:var(--text-secondary);max-width:400px}.recharts-wrapper .recharts-cartesian-grid-horizontal line,.recharts-wrapper .recharts-cartesian-grid-vertical line{stroke:var(--border-color);opacity:.5}.recharts-wrapper .recharts-text{fill:#fffc;font-size:12px;font-weight:500}.recharts-wrapper .recharts-legend-item-text{color:#ffffffe6!important;font-weight:500}.recharts-wrapper .recharts-tooltip-wrapper{outline:none!important}.recharts-wrapper .recharts-label{fill:#fffc;font-weight:500}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.pet-selector-modal{position:fixed;inset:0;background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:fadeIn .2s ease}.pet-selector-content{background:var(--surface-elevated);border-radius:20px;border:2px solid var(--border-color);max-width:800px;width:100%;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #0006;animation:fadeIn .3s ease}.pet-selector-header{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:2px solid var(--border-color)}.pet-selector-header h2{margin:0;font-size:24px;font-weight:700;color:var(--text-primary)}.pet-selector-close{background:none;border:none;color:var(--text-secondary);font-size:24px;cursor:pointer;padding:4px 12px;border-radius:8px;transition:all .2s ease}.pet-selector-close:hover{background:var(--surface-hover);color:var(--text-primary)}.pet-selector-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;padding:24px;overflow-y:auto;max-height:calc(80vh - 100px)}.pet-selector-card{display:flex;align-items:center;gap:16px;padding:20px;border-radius:16px;border:2px solid var(--border-color);background:var(--surface-base);cursor:pointer;transition:all .2s ease;position:relative;text-align:left}.pet-selector-card:hover{border-color:var(--color-primary);background:var(--surface-hover);transform:translateY(-2px);box-shadow:0 8px 20px #00000026}.pet-selector-card.selected{border-color:var(--color-primary);background:#8b5cf61a;box-shadow:0 0 0 1px var(--color-primary)}.pet-card-icon{font-size:32px;line-height:1;flex-shrink:0}.pet-card-info{flex:1;display:flex;flex-direction:column;gap:4px}.pet-card-name{font-weight:600;font-size:16px;color:var(--text-primary)}.pet-card-species{font-size:13px;color:var(--text-secondary);opacity:.9}.pet-card-meta{font-size:12px;color:var(--text-secondary);opacity:.7;margin-top:2px}.pet-card-check{position:absolute;top:12px;right:12px;width:24px;height:24px;border-radius:50%;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}@media(max-width:768px){.pet-selector-grid{grid-template-columns:1fr;gap:12px}.analytics-pet-selector-btn{min-width:0;width:100%}}.analytics-card,.stat-card{animation:fadeIn .3s ease}.stat-card:nth-child(1){animation-delay:.05s}.stat-card:nth-child(2){animation-delay:.1s}.stat-card:nth-child(3){animation-delay:.15s}.stat-card:nth-child(4){animation-delay:.2s}.pro-gate-overlay{display:flex;align-items:center;justify-content:center;width:100%;min-height:calc(100vh - 200px);padding:40px 24px;box-sizing:border-box}@media(max-width:768px){.pro-gate-overlay{min-height:calc(100vh - 180px);padding:24px 16px}}.pro-gate-content{text-align:center;max-width:480px;width:100%;padding:48px 32px;background:#1a1a1f;border-radius:24px;border:2px solid #2d2d35;box-shadow:0 8px 32px #0006;margin:0 auto}@media(max-width:768px){.pro-gate-content{padding:32px 20px;border-radius:20px}}.pro-gate-content h2{font-size:28px;font-weight:700;margin:16px 0 12px;color:#f5f5f5}@media(max-width:768px){.pro-gate-content h2{font-size:24px}}.pro-gate-content>p{color:#a0a0a8;font-size:16px;line-height:1.6;margin-bottom:24px}@media(max-width:768px){.pro-gate-content>p{font-size:14px;margin-bottom:20px}}.pro-gate-icon{width:80px;height:80px;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#8b5cf633,#8b5cf60d);border-radius:20px}@media(max-width:768px){.pro-gate-icon{width:64px;height:64px;border-radius:16px}.pro-gate-icon svg{width:32px;height:32px}}.pro-gate-icon svg{color:var(--color-primary)}.pro-gate-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:linear-gradient(135deg,#8b5cf6,#a855f7);color:#fff;border-radius:20px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}@media(max-width:768px){.pro-gate-badge{font-size:11px;padding:5px 12px}}.pro-gate-features{list-style:none;padding:0;margin:24px 0;text-align:left}@media(max-width:768px){.pro-gate-features{margin:20px 0}}.pro-gate-features li{padding:10px 0;color:#e5e5e5;font-size:15px;border-bottom:1px solid rgba(255,255,255,.1)}@media(max-width:768px){.pro-gate-features li{font-size:14px;padding:8px 0}}.pro-gate-features li:last-child{border-bottom:none}.pro-gate-upgrade-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:16px 32px;background:linear-gradient(135deg,#8b5cf6,#a855f7);color:#fff;border:none;border-radius:12px;font-size:17px;font-weight:600;cursor:pointer;transition:all .2s ease}@media(max-width:768px){.pro-gate-upgrade-btn{padding:14px 24px;font-size:15px}}.pro-gate-upgrade-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px #8b5cf666}.pro-gate-upgrade-btn:active{transform:translateY(0)}.pro-gate-trial{margin-top:12px;font-size:14px;color:#888}@media(max-width:768px){.pro-gate-trial{font-size:13px}}@media(max-width:768px){.mobile-bottom-nav{display:none!important}.app-shell--overhauled{padding-bottom:80px!important}input,textarea,select{font-size:16px!important;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:8px}button,a,.clickable{min-height:44px;min-width:44px}*{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.fixed,[style*="position: fixed"]{position:sticky}.modal,.dialog{max-height:90vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.card{margin-bottom:12px;border-radius:12px}.grid,.columns{grid-template-columns:1fr!important}table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.desktop-only{display:none!important}.mobile-only{display:block!important}.mobile-tab-content{padding-top:8px}.card+.card{margin-top:12px}.pet-card-grid{grid-template-columns:1fr!important;gap:12px}}@media(min-width:769px)and (max-width:1024px){.mobile-bottom-nav,.quick-action-fab,.mobile-only{display:none!important}}@media(min-width:1025px){.mobile-bottom-nav,.quick-action-fab,.mobile-only{display:none!important}.desktop-only{display:block!important}}@supports (padding: env(safe-area-inset-bottom)){@media(max-width:768px){body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.mobile-bottom-nav{padding-bottom:max(8px,env(safe-area-inset-bottom))}}}@media(max-width:768px){html,body{overflow-x:hidden;max-width:100vw;position:relative}#root{overflow-x:hidden;max-width:100vw}.container,.landing-container,.content-wrap,main{max-width:100vw;overflow-x:hidden;padding-left:12px;padding-right:12px}.card{max-width:100%;width:100%;min-width:0;box-sizing:border-box;margin-left:0;margin-right:0}.grid{grid-template-columns:1fr!important;max-width:100%;overflow-x:hidden}.two-col,.wiki-hero,.detail-hero{grid-template-columns:1fr!important;max-width:100%}.row{flex-wrap:wrap;max-width:100%;overflow-x:hidden}table{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100vw}thead,tbody,tr,td,th{display:block;width:100%}tr{border-bottom:1px solid var(--border);margin-bottom:8px;padding:8px 0}img,video,iframe{max-width:100%;height:auto}pre,code{max-width:100%;overflow-x:auto;word-wrap:break-word;white-space:pre-wrap}.event-card,.pet-card,.log-card{width:100%;max-width:100%;min-width:0;margin:0 0 12px}.stats-grid,.metrics-grid{grid-template-columns:1fr!important;gap:12px}button,.btn,input,select,textarea{max-width:100%;min-width:0;box-sizing:border-box}.modal,.sheet,.dialog{max-width:calc(100vw - 24px);margin:12px}.tabbar{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.desktop-only{display:none!important}.chart-container,.analytics-chart{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.profile-card,.user-card,.keeper-card{max-width:100%;width:100%}.floating-element{position:relative;max-width:100%}.species-card,.wiki-card{width:100%;max-width:100%}.hero,.landing-hero,.detail-hero{max-width:100vw;overflow-x:hidden;padding-left:12px;padding-right:12px}h1,h2,h3,h4,h5,h6{word-wrap:break-word;overflow-wrap:break-word;max-width:100%}p,span,div{word-wrap:break-word;overflow-wrap:break-word}.flex,.flex-row{flex-wrap:wrap;max-width:100%}.pet-page-module,.pet-module{max-width:100%;overflow-x:hidden}.pet-page-header,.pet-header{flex-direction:column;align-items:flex-start;gap:12px}.pet-page-content{max-width:100%;padding:12px}.event-log,.activity-log{max-width:100%;overflow-x:hidden}.event-item,.log-item{flex-direction:column;align-items:flex-start;gap:8px;max-width:100%}.event-metadata,.event-details{width:100%;max-width:100%}.filter-bar,.search-bar{flex-direction:column;gap:8px;width:100%}.filter-bar>*,.search-bar>*{width:100%;max-width:100%}.dashboard-grid{grid-template-columns:1fr!important}.dashboard-card{width:100%;max-width:100%}.actions,.button-group{flex-direction:column;width:100%;gap:8px}.actions>button,.button-group>button{width:100%}.badges,.tags{flex-wrap:wrap;max-width:100%}.calendar,.date-picker{max-width:100%;overflow-x:auto}ul,ol{padding-left:20px;max-width:100%}li{word-wrap:break-word}}@media(max-width:480px){.container,.landing-container,.content-wrap{padding-left:8px;padding-right:8px}.card{padding:12px;border-radius:12px}h1{font-size:28px}h2{font-size:24px}h3{font-size:20px}.grid{gap:8px}.row{gap:6px}}@media(min-width:481px)and (max-width:768px){.grid.tablet-2col{grid-template-columns:repeat(2,1fr)!important}.row.tablet-wrap{flex-wrap:wrap}}.pet-hero{max-width:100%;overflow:hidden;position:relative}@media(max-width:768px){.pet-hero{padding:16px 12px;max-width:100vw;margin:0}.pet-hero-content{display:flex;flex-direction:column;gap:16px;max-width:100%;align-items:flex-start}.pet-hero-photo{width:80px;height:80px;flex-shrink:0}.pet-hero-avatar,.pet-hero-avatar-fallback{width:100%;height:100%;border-radius:50%;-o-object-fit:cover;object-fit:cover}.pet-hero-info{flex:1;min-width:0;max-width:100%}.pet-hero-name{font-size:24px;margin:0 0 4px;word-wrap:break-word}.pet-hero-species{font-size:14px;margin:0 0 8px;color:var(--text-muted)}.pet-hero-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px;max-width:100%}.pet-badge{padding:4px 8px;border-radius:12px;font-size:11px;white-space:nowrap;background:#ffffff1a;border:1px solid rgba(255,255,255,.2)}.pet-hero-actions{display:flex;flex-direction:column;gap:8px;width:100%}.pet-hero-actions button{width:100%;justify-content:center}.pet-hero-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;width:100%;margin-top:12px}.pet-stat-box{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:12px;text-align:center}.pet-stat-value{font-size:24px;font-weight:700;margin-bottom:4px}.pet-stat-label{font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.care-dashboard{max-width:100%;padding:0}.care-cards{display:grid;grid-template-columns:1fr;gap:12px;max-width:100%}.care-card{width:100%;max-width:100%;padding:16px;box-sizing:border-box}.event-log,.timeline-section{max-width:100%;padding:0}.event-item,.timeline-item{display:flex;flex-direction:column;gap:8px;padding:12px;margin-bottom:8px;max-width:100%;border-radius:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.1)}.event-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;width:100%}.event-type{font-weight:600;font-size:14px}.event-date{font-size:12px;color:var(--text-muted)}.event-details{width:100%;max-width:100%;overflow-wrap:break-word}.event-notes{font-size:14px;line-height:1.5;word-wrap:break-word}.event-actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.quick-actions{position:fixed;bottom:calc(80px + env(safe-area-inset-bottom));right:16px;z-index:100}.quick-action-button{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0000004d}.pet-tabs,.tabbar{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none;max-width:100vw;margin:0 -12px;padding:0 12px}.pet-tabs::-webkit-scrollbar,.tabbar::-webkit-scrollbar{display:none}.pet-tabs button,.tabbar button{flex-shrink:0;white-space:nowrap}.module-section{padding:16px 0;max-width:100%}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:8px}.section-title{font-size:18px;font-weight:700;margin:0}.chart-container{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.chart-container>*{min-width:300px}.photo-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;max-width:100%}.photo-item{aspect-ratio:1;border-radius:12px;overflow:hidden}.photo-item img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.insights-grid{display:grid;grid-template-columns:1fr;gap:12px}.insight-card{width:100%;padding:16px;border-radius:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.1)}.stats-overview{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:16px}.stat-card{padding:12px;text-align:center;border-radius:12px;background:#ffffff08}.timeline{position:relative;padding-left:24px;max-width:100%}.timeline:before{content:"";position:absolute;left:8px;top:0;bottom:0;width:2px;background:#ffffff1a}.timeline-item{position:relative;margin-bottom:16px}.timeline-dot{position:absolute;left:-20px;top:8px;width:12px;height:12px;border-radius:50%;background:var(--primary);border:2px solid var(--bg)}}@media(max-width:380px){.pet-hero-stats,.photo-gallery,.stats-overview{grid-template-columns:1fr}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background: 240 10% 3.9%;--foreground: 240 5% 96%;--card: 240 3.7% 8.9%;--card-foreground: 240 5% 96%;--popover: 240 10% 3.9%;--popover-foreground: 240 5% 96%;--primary: 35 85% 58%;--primary-foreground: 0 0% 0%;--secondary: 240 3.7% 15.9%;--secondary-foreground: 240 5% 96%;--muted: 240 3.7% 15.9%;--muted-foreground: 240 5% 64.9%;--accent: 35 85% 58%;--accent-foreground: 0 0% 0%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 0 0% 100%;--border: 240 3.7% 15.9%;--input: 240 3.7% 15.9%;--ring: 35 85% 58%;--radius: 1rem;--success: 142 71% 45%;--warning: 38 92% 50%;--info: 215 81% 63%}[data-accent=purple]{--primary: 270 70% 65%;--primary-foreground: 0 0% 100%;--accent: 270 70% 65%;--accent-foreground: 0 0% 100%;--ring: 270 70% 65%}[data-accent=green]{--primary: 142 71% 45%;--primary-foreground: 0 0% 100%;--accent: 142 71% 45%;--accent-foreground: 0 0% 100%;--ring: 142 71% 45%}body{--tw-bg-opacity: 1;background-color:hsl(240 10% 3.9% / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:hsl(240 5% 96% / var(--tw-text-opacity, 1));font-feature-settings:"rlig" 1,"calt" 1;overflow-x:hidden}html{overflow-x:hidden}#root{max-width:100vw;overflow-x:hidden}*{--tw-border-opacity: 1;border-color:hsl(240 3.7% 15.9% / var(--tw-border-opacity, 1))}body{--tw-bg-opacity: 1;background-color:hsl(240 10% 3.9% / var(--tw-bg-opacity, 1));--tw-text-opacity: 1;color:hsl(240 5% 96% / var(--tw-text-opacity, 1));font-feature-settings:"rlig" 1,"calt" 1}.container{width:100%;margin-right:auto;margin-left:auto;padding-right:2rem;padding-left:2rem}@media(min-width:1400px){.container{max-width:1400px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.-bottom-1{bottom:-.25rem}.-right-1{right:-.25rem}.-right-2{right:-.5rem}.-right-3{right:-.75rem}.-top-1{top:-.25rem}.-top-2{top:-.5rem}.-top-3{top:-.75rem}.bottom-0{bottom:0}.bottom-2{bottom:.5rem}.left-1\/2{left:50%}.left-2\.5{left:.625rem}.left-3{left:.75rem}.left-4{left:1rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.right-8{right:2rem}.top-0{top:0}.top-1{top:.25rem}.top-1\/2{top:50%}.top-2{top:.5rem}.top-24{top:6rem}.top-3{top:.75rem}.top-4{top:1rem}.top-\[50\%\]{top:50%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.col-span-1{grid-column:span 1 / span 1}.-mx-2{margin-left:-.5rem;margin-right:-.5rem}.-mx-4{margin-left:-1rem;margin-right:-1rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-top:1rem;margin-bottom:1rem}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-0\.5{margin-right:.125rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.table-row{display:table-row}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-16{height:4rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-20{height:5rem}.h-24{height:6rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-96{height:24rem}.h-\[90vh\]{height:90vh}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-60{max-height:15rem}.max-h-64{max-height:16rem}.max-h-96{max-height:24rem}.max-h-\[400px\]{max-height:400px}.max-h-\[600px\]{max-height:600px}.max-h-\[60vh\]{max-height:60vh}.max-h-\[70vh\]{max-height:70vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[90vh\]{max-height:90vh}.max-h-\[95vh\]{max-height:95vh}.max-h-\[calc\(100vh-160px\)\]{max-height:calc(100vh - 160px)}.max-h-\[calc\(100vh-200px\)\]{max-height:calc(100vh - 200px)}.max-h-\[calc\(100vh-500px\)\]{max-height:calc(100vh - 500px)}.max-h-\[calc\(100vh-7rem\)\]{max-height:calc(100vh - 7rem)}.min-h-0{min-height:0px}.min-h-\[100px\]{min-height:100px}.min-h-\[50vh\]{min-height:50vh}.min-h-\[80px\]{min-height:80px}.min-h-screen{min-height:100vh}.w-0\.5{width:.125rem}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-32{width:8rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[70\%\]{max-width:70%}.max-w-\[80\%\]{max-width:80%}.max-w-\[95vw\]{max-width:95vw}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-screen-2xl{max-width:1536px}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[-50\%\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-90{--tw-rotate: -90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-\[-90deg\]{--tw-rotate: -90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}.resize-none{resize:none}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.self-start{align-self:flex-start}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:1rem}.rounded-md{border-radius:.75rem}.rounded-sm{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-tl-sm{border-top-left-radius:.5rem}.rounded-tr-sm{border-top-right-radius:.5rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-4{border-width:4px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l-2{border-left-width:2px}.border-l-4{border-left-width:4px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-accent\/30{border-color:#5494ed4d}.border-amber-200{--tw-border-opacity: 1;border-color:rgb(253 230 138 / var(--tw-border-opacity, 1))}.border-amber-500\/20{border-color:#f59e0b33}.border-amber-500\/30{border-color:#f59e0b4d}.border-background{--tw-border-opacity: 1;border-color:hsl(240 10% 3.9% / var(--tw-border-opacity, 1))}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-blue-500\/30{border-color:#3b82f64d}.border-blue-700\/50{border-color:#1d4ed880}.border-border{--tw-border-opacity: 1;border-color:hsl(240 3.7% 15.9% / var(--tw-border-opacity, 1))}.border-border\/50{border-color:#27272a80}.border-current{border-color:currentColor}.border-destructive\/30{border-color:#ef44444d}.border-destructive\/50{border-color:#ef444480}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity, 1))}.border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.border-green-500\/30{border-color:#22c55e4d}.border-info\/40{border-color:#5494ed66}.border-info\/50{border-color:#5494ed80}.border-input{--tw-border-opacity: 1;border-color:hsl(240 3.7% 15.9% / var(--tw-border-opacity, 1))}.border-orange-500{--tw-border-opacity: 1;border-color:rgb(249 115 22 / var(--tw-border-opacity, 1))}.border-orange-600\/50{border-color:#ea580c80}.border-orange-700\/50{border-color:#c2410c80}.border-primary{--tw-border-opacity: 1;border-color:hsl(225 70% 62% / var(--tw-border-opacity, 1))}.border-primary\/20{border-color:#5a7ce233}.border-primary\/30{border-color:#5a7ce24d}.border-purple-200{--tw-border-opacity: 1;border-color:rgb(233 213 255 / var(--tw-border-opacity, 1))}.border-purple-500{--tw-border-opacity: 1;border-color:rgb(168 85 247 / var(--tw-border-opacity, 1))}.border-purple-500\/20{border-color:#a855f733}.border-purple-500\/30{border-color:#a855f74d}.border-red-500\/30{border-color:#ef44444d}.border-red-500\/50{border-color:#ef444480}.border-slate-700{--tw-border-opacity: 1;border-color:rgb(51 65 85 / var(--tw-border-opacity, 1))}.border-success\/30{border-color:#21c45d4d}.border-success\/40{border-color:#21c45d66}.border-transparent{border-color:transparent}.border-warning\/40{border-color:#f59f0a66}.border-warning\/50{border-color:#f59f0a80}.border-white{--tw-border-opacity: 1;border-color:rgb(255 255 255 / var(--tw-border-opacity, 1))}.border-white\/10{border-color:#ffffff1a}.border-white\/20{border-color:#fff3}.border-yellow-600\/50{border-color:#ca8a0480}.border-zinc-500\/20{border-color:#71717a33}.border-zinc-700{--tw-border-opacity: 1;border-color:rgb(63 63 70 / var(--tw-border-opacity, 1))}.border-zinc-700\/50{border-color:#3f3f4680}.border-t-transparent{border-top-color:transparent}.bg-\[\#0f1419\]{--tw-bg-opacity: 1;background-color:rgb(15 20 25 / var(--tw-bg-opacity, 1))}.bg-\[\#1a1f2e\]{--tw-bg-opacity: 1;background-color:rgb(26 31 46 / var(--tw-bg-opacity, 1))}.bg-\[\#2a2f3e\]{--tw-bg-opacity: 1;background-color:rgb(42 47 62 / var(--tw-bg-opacity, 1))}.bg-accent{--tw-bg-opacity: 1;background-color:hsl(215 81% 63% / var(--tw-bg-opacity, 1))}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-amber-500{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-amber-500\/20{background-color:#f59e0b33}.bg-amber-600{--tw-bg-opacity: 1;background-color:rgb(217 119 6 / var(--tw-bg-opacity, 1))}.bg-background{--tw-bg-opacity: 1;background-color:hsl(240 10% 3.9% / var(--tw-bg-opacity, 1))}.bg-background\/80{background-color:#09090bcc}.bg-black\/20{background-color:#0003}.bg-black\/50{background-color:#00000080}.bg-black\/60{background-color:#0009}.bg-black\/70{background-color:#000000b3}.bg-black\/80{background-color:#000c}.bg-black\/90{background-color:#000000e6}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-500\/10{background-color:#3b82f61a}.bg-blue-500\/20{background-color:#3b82f633}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-blue-900\/20{background-color:#1e3a8a33}.bg-border{--tw-bg-opacity: 1;background-color:hsl(240 3.7% 15.9% / var(--tw-bg-opacity, 1))}.bg-card{--tw-bg-opacity: 1;background-color:hsl(240 3.7% 8.9% / var(--tw-bg-opacity, 1))}.bg-card\/30{background-color:#1616184d}.bg-card\/50{background-color:#16161880}.bg-destructive{--tw-bg-opacity: 1;background-color:hsl(0 84.2% 60.2% / var(--tw-bg-opacity, 1))}.bg-destructive\/10{background-color:#ef44441a}.bg-destructive\/20{background-color:#ef444433}.bg-gray-500\/20{background-color:#6b728033}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.bg-gray-800\/50{background-color:#1f293780}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 24 39 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-500\/10{background-color:#22c55e1a}.bg-green-500\/20{background-color:#22c55e33}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-info\/20{background-color:#5494ed33}.bg-info\/5{background-color:#5494ed0d}.bg-muted{--tw-bg-opacity: 1;background-color:hsl(240 3.7% 15.9% / var(--tw-bg-opacity, 1))}.bg-muted\/50{background-color:#27272a80}.bg-orange-500\/10{background-color:#f973161a}.bg-orange-900\/20{background-color:#7c2d1233}.bg-primary{--tw-bg-opacity: 1;background-color:hsl(225 70% 62% / var(--tw-bg-opacity, 1))}.bg-primary\/10{background-color:#5a7ce21a}.bg-primary\/15{background-color:#5a7ce226}.bg-primary\/20{background-color:#5a7ce233}.bg-primary\/5{background-color:#5a7ce20d}.bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.bg-purple-500{--tw-bg-opacity: 1;background-color:rgb(168 85 247 / var(--tw-bg-opacity, 1))}.bg-purple-500\/10{background-color:#a855f71a}.bg-purple-500\/20{background-color:#a855f733}.bg-purple-600{--tw-bg-opacity: 1;background-color:rgb(147 51 234 / var(--tw-bg-opacity, 1))}.bg-red-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-500\/10{background-color:#ef44441a}.bg-red-500\/20{background-color:#ef444433}.bg-secondary{--tw-bg-opacity: 1;background-color:hsl(240 3.7% 15.9% / var(--tw-bg-opacity, 1))}.bg-slate-800\/50{background-color:#1e293b80}.bg-slate-900\/50{background-color:#0f172a80}.bg-success\/10{background-color:#21c45d1a}.bg-success\/20{background-color:#21c45d33}.bg-transparent{background-color:transparent}.bg-warning\/10{background-color:#f59f0a1a}.bg-warning\/20{background-color:#f59f0a33}.bg-warning\/5{background-color:#f59f0a0d}.bg-white\/10{background-color:#ffffff1a}.bg-white\/5{background-color:#ffffff0d}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.bg-yellow-500\/20{background-color:#eab30833}.bg-yellow-900\/30{background-color:#713f124d}.bg-zinc-700{--tw-bg-opacity: 1;background-color:rgb(63 63 70 / var(--tw-bg-opacity, 1))}.bg-zinc-800\/30{background-color:#27272a4d}.bg-zinc-800\/50{background-color:#27272a80}.bg-zinc-900\/50{background-color:#18181b80}.bg-gradient-to-b{background-image:linear-gradient(to bottom,var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-l{background-image:linear-gradient(to left,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-\[hsl\(240\,10\%\,3\.9\%\)\]{--tw-gradient-from: hsl(240,10%,3.9%) var(--tw-gradient-from-position);--tw-gradient-to: hsl(240 10% 3.9% / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-amber-500{--tw-gradient-from: #f59e0b var(--tw-gradient-from-position);--tw-gradient-to: rgb(245 158 11 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-amber-500\/10{--tw-gradient-from: rgb(245 158 11 / .1) var(--tw-gradient-from-position);--tw-gradient-to: rgb(245 158 11 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-blue-500\/10{--tw-gradient-from: rgb(59 130 246 / .1) var(--tw-gradient-from-position);--tw-gradient-to: rgb(59 130 246 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-card{--tw-gradient-from: hsl(240 3.7% 8.9%) var(--tw-gradient-from-position);--tw-gradient-to: hsl(240 3.7% 8.9% / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-card\/95{--tw-gradient-from: hsl(240 3.7% 8.9% / .95) var(--tw-gradient-from-position);--tw-gradient-to: hsl(240 3.7% 8.9% / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-destructive{--tw-gradient-from: hsl(0 84.2% 60.2%) var(--tw-gradient-from-position);--tw-gradient-to: hsl(0 84.2% 60.2% / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-emerald-500{--tw-gradient-from: #10b981 var(--tw-gradient-from-position);--tw-gradient-to: rgb(16 185 129 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-gray-900{--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-600{--tw-gradient-from: #4f46e5 var(--tw-gradient-from-position);--tw-gradient-to: rgb(79 70 229 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-orange-500{--tw-gradient-from: #f97316 var(--tw-gradient-from-position);--tw-gradient-to: rgb(249 115 22 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-orange-900\/30{--tw-gradient-from: rgb(124 45 18 / .3) var(--tw-gradient-from-position);--tw-gradient-to: rgb(124 45 18 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary{--tw-gradient-from: hsl(225 70% 62%) var(--tw-gradient-from-position);--tw-gradient-to: hsl(225 70% 62% / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-primary\/5{--tw-gradient-from: hsl(225 70% 62% / .05) var(--tw-gradient-from-position);--tw-gradient-to: hsl(225 70% 62% / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-500{--tw-gradient-from: #a855f7 var(--tw-gradient-from-position);--tw-gradient-to: rgb(168 85 247 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-slate-800\/80{--tw-gradient-from: rgb(30 41 59 / .8) var(--tw-gradient-from-position);--tw-gradient-to: rgb(30 41 59 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.from-zinc-900{--tw-gradient-from: #18181b var(--tw-gradient-from-position);--tw-gradient-to: rgb(24 24 27 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-accent{--tw-gradient-to: hsl(215 81% 63% / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), hsl(215 81% 63%) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-card{--tw-gradient-to: hsl(240 3.7% 8.9% / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), hsl(240 3.7% 8.9%) var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-900\/20{--tw-gradient-to: rgb(88 28 135 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), rgb(88 28 135 / .2) var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-accent{--tw-gradient-to: hsl(215 81% 63%) var(--tw-gradient-to-position)}.to-accent\/5{--tw-gradient-to: hsl(215 81% 63% / .05) var(--tw-gradient-to-position)}.to-card{--tw-gradient-to: hsl(240 3.7% 8.9%) var(--tw-gradient-to-position)}.to-card\/50{--tw-gradient-to: hsl(240 3.7% 8.9% / .5) var(--tw-gradient-to-position)}.to-destructive\/90{--tw-gradient-to: hsl(0 84.2% 60.2% / .9) var(--tw-gradient-to-position)}.to-gray-900{--tw-gradient-to: #111827 var(--tw-gradient-to-position)}.to-orange-500\/10{--tw-gradient-to: rgb(249 115 22 / .1) var(--tw-gradient-to-position)}.to-orange-600{--tw-gradient-to: #ea580c var(--tw-gradient-to-position)}.to-primary{--tw-gradient-to: hsl(225 70% 62%) var(--tw-gradient-to-position)}.to-primary\/5{--tw-gradient-to: hsl(225 70% 62% / .05) var(--tw-gradient-to-position)}.to-primary\/90{--tw-gradient-to: hsl(225 70% 62% / .9) var(--tw-gradient-to-position)}.to-purple-500\/10{--tw-gradient-to: rgb(168 85 247 / .1) var(--tw-gradient-to-position)}.to-purple-500\/5{--tw-gradient-to: rgb(168 85 247 / .05) var(--tw-gradient-to-position)}.to-purple-600{--tw-gradient-to: #9333ea var(--tw-gradient-to-position)}.to-red-600{--tw-gradient-to: #dc2626 var(--tw-gradient-to-position)}.to-red-900\/30{--tw-gradient-to: rgb(127 29 29 / .3) var(--tw-gradient-to-position)}.to-slate-800\/50{--tw-gradient-to: rgb(30 41 59 / .5) var(--tw-gradient-to-position)}.to-teal-600{--tw-gradient-to: #0d9488 var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.to-violet-600{--tw-gradient-to: #7c3aed var(--tw-gradient-to-position)}.to-zinc-950{--tw-gradient-to: #09090b var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.fill-current{fill:currentColor}.fill-yellow-400{fill:#facc15}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0{padding:0}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-12{padding:3rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-40{padding-bottom:10rem}.pl-1\.5{padding-left:.375rem}.pl-10{padding-left:2.5rem}.pl-12{padding-left:3rem}.pl-3{padding-left:.75rem}.pl-9{padding-left:2.25rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pr-4{padding-right:1rem}.pt-0{padding-top:0}.pt-2{padding-top:.5rem}.pt-2\.5{padding-top:.625rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[13px\]{font-size:13px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.text-accent{--tw-text-opacity: 1;color:hsl(215 81% 63% / var(--tw-text-opacity, 1))}.text-amber-400{--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity, 1))}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-amber-500\/50{color:#f59e0b80}.text-amber-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.text-blue-300{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-destructive{--tw-text-opacity: 1;color:hsl(0 84.2% 60.2% / var(--tw-text-opacity, 1))}.text-destructive-foreground{--tw-text-opacity: 1;color:hsl(0 0% 100% / var(--tw-text-opacity, 1))}.text-emerald-400{--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity, 1))}.text-foreground{--tw-text-opacity: 1;color:hsl(240 5% 96% / var(--tw-text-opacity, 1))}.text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-info{--tw-text-opacity: 1;color:hsl(215 81% 63% / var(--tw-text-opacity, 1))}.text-muted{--tw-text-opacity: 1;color:hsl(240 3.7% 15.9% / var(--tw-text-opacity, 1))}.text-muted-foreground{--tw-text-opacity: 1;color:hsl(240 5% 64.9% / var(--tw-text-opacity, 1))}.text-muted-foreground\/40{color:#a1a1aa66}.text-muted-foreground\/60{color:#a1a1aa99}.text-muted-foreground\/70{color:#a1a1aab3}.text-orange-100{--tw-text-opacity: 1;color:rgb(255 237 213 / var(--tw-text-opacity, 1))}.text-orange-200{--tw-text-opacity: 1;color:rgb(254 215 170 / var(--tw-text-opacity, 1))}.text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.text-orange-500{--tw-text-opacity: 1;color:rgb(249 115 22 / var(--tw-text-opacity, 1))}.text-pink-400{--tw-text-opacity: 1;color:rgb(244 114 182 / var(--tw-text-opacity, 1))}.text-primary{--tw-text-opacity: 1;color:hsl(225 70% 62% / var(--tw-text-opacity, 1))}.text-primary-foreground{--tw-text-opacity: 1;color:hsl(0 0% 100% / var(--tw-text-opacity, 1))}.text-purple-200{--tw-text-opacity: 1;color:rgb(233 213 255 / var(--tw-text-opacity, 1))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-red-200{--tw-text-opacity: 1;color:rgb(254 202 202 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.text-red-600{--tw-text-opacity: 1;color:rgb(220 38 38 / var(--tw-text-opacity, 1))}.text-secondary-foreground{--tw-text-opacity: 1;color:hsl(240 5% 96% / var(--tw-text-opacity, 1))}.text-slate-300{--tw-text-opacity: 1;color:rgb(203 213 225 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-success{--tw-text-opacity: 1;color:hsl(142 71% 45% / var(--tw-text-opacity, 1))}.text-transparent{color:transparent}.text-warning{--tw-text-opacity: 1;color:hsl(38 92% 50% / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-200{--tw-text-opacity: 1;color:rgb(254 240 138 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.text-zinc-300{--tw-text-opacity: 1;color:rgb(212 212 216 / var(--tw-text-opacity, 1))}.text-zinc-400{--tw-text-opacity: 1;color:rgb(161 161 170 / var(--tw-text-opacity, 1))}.text-zinc-500{--tw-text-opacity: 1;color:rgb(113 113 122 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.underline-offset-4{text-underline-offset:4px}.placeholder-gray-500::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-500::placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-primary\/20{--tw-shadow-color: hsl(225 70% 62% / .2);--tw-shadow: var(--tw-shadow-colored)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-blue-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.ring-offset-background{--tw-ring-offset-color: hsl(240 10% 3.9%)}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale: grayscale(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-\[2px\]{--tw-backdrop-blur: blur(2px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur: blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.duration-200{animation-duration:.2s}.duration-500{animation-duration:.5s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.paused{animation-play-state:paused}.file\:mr-4::file-selector-button{margin-right:1rem}.file\:rounded-full::file-selector-button{border-radius:9999px}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-primary::file-selector-button{--tw-bg-opacity: 1;background-color:hsl(225 70% 62% / var(--tw-bg-opacity, 1))}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:px-4::file-selector-button{padding-left:1rem;padding-right:1rem}.file\:py-2::file-selector-button{padding-top:.5rem;padding-bottom:.5rem}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:font-semibold::file-selector-button{font-weight:600}.file\:text-foreground::file-selector-button{--tw-text-opacity: 1;color:hsl(240 5% 96% / var(--tw-text-opacity, 1))}.file\:text-primary-foreground::file-selector-button{--tw-text-opacity: 1;color:hsl(0 0% 100% / var(--tw-text-opacity, 1))}.placeholder\:text-gray-500::-moz-placeholder{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.placeholder\:text-gray-500::placeholder{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.placeholder\:text-muted-foreground::-moz-placeholder{--tw-text-opacity: 1;color:hsl(240 5% 64.9% / var(--tw-text-opacity, 1))}.placeholder\:text-muted-foreground::placeholder{--tw-text-opacity: 1;color:hsl(240 5% 64.9% / var(--tw-text-opacity, 1))}.last\:border-0:last-child{border-width:0px}.hover\:scale-105:hover{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-accent:hover{--tw-border-opacity: 1;border-color:hsl(215 81% 63% / var(--tw-border-opacity, 1))}.hover\:border-accent\/50:hover{border-color:#5494ed80}.hover\:border-gray-600:hover{--tw-border-opacity: 1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1))}.hover\:border-muted-foreground\/50:hover{border-color:#a1a1aa80}.hover\:border-orange-500\/50:hover{border-color:#f9731680}.hover\:border-primary:hover{--tw-border-opacity: 1;border-color:hsl(225 70% 62% / var(--tw-border-opacity, 1))}.hover\:border-primary\/50:hover{border-color:#5a7ce280}.hover\:bg-\[\#3a3f4e\]:hover{--tw-bg-opacity: 1;background-color:rgb(58 63 78 / var(--tw-bg-opacity, 1))}.hover\:bg-accent:hover{--tw-bg-opacity: 1;background-color:hsl(215 81% 63% / var(--tw-bg-opacity, 1))}.hover\:bg-accent\/30:hover{background-color:#5494ed4d}.hover\:bg-accent\/50:hover{background-color:#5494ed80}.hover\:bg-accent\/80:hover{background-color:#5494edcc}.hover\:bg-amber-100:hover{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.hover\:bg-amber-700:hover{--tw-bg-opacity: 1;background-color:rgb(180 83 9 / var(--tw-bg-opacity, 1))}.hover\:bg-black\/70:hover{background-color:#000000b3}.hover\:bg-blue-100:hover{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-500\/10:hover{background-color:#3b82f61a}.hover\:bg-blue-500\/20:hover{background-color:#3b82f633}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-destructive\/10:hover{background-color:#ef44441a}.hover\:bg-destructive\/80:hover{background-color:#ef4444cc}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-800:hover{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity, 1))}.hover\:bg-green-100:hover{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.hover\:bg-green-600:hover{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.hover\:bg-muted:hover{--tw-bg-opacity: 1;background-color:hsl(240 3.7% 15.9% / var(--tw-bg-opacity, 1))}.hover\:bg-primary:hover{--tw-bg-opacity: 1;background-color:hsl(225 70% 62% / var(--tw-bg-opacity, 1))}.hover\:bg-primary\/10:hover{background-color:#5a7ce21a}.hover\:bg-primary\/80:hover{background-color:#5a7ce2cc}.hover\:bg-primary\/90:hover{background-color:#5a7ce2e6}.hover\:bg-purple-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 232 255 / var(--tw-bg-opacity, 1))}.hover\:bg-purple-500\/10:hover{background-color:#a855f71a}.hover\:bg-purple-600:hover{--tw-bg-opacity: 1;background-color:rgb(147 51 234 / var(--tw-bg-opacity, 1))}.hover\:bg-purple-700:hover{--tw-bg-opacity: 1;background-color:rgb(126 34 206 / var(--tw-bg-opacity, 1))}.hover\:bg-red-500\/20:hover{background-color:#ef444433}.hover\:bg-red-500\/30:hover{background-color:#ef44444d}.hover\:bg-red-600:hover{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.hover\:bg-secondary\/80:hover{background-color:#27272acc}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.hover\:bg-white\/5:hover{background-color:#ffffff0d}.hover\:bg-zinc-800\/70:hover{background-color:#27272ab3}.hover\:from-destructive\/95:hover{--tw-gradient-from: hsl(0 84.2% 60.2% / .95) var(--tw-gradient-from-position);--tw-gradient-to: hsl(0 84.2% 60.2% / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-orange-600:hover{--tw-gradient-from: #ea580c var(--tw-gradient-from-position);--tw-gradient-to: rgb(234 88 12 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:from-primary\/95:hover{--tw-gradient-from: hsl(225 70% 62% / .95) var(--tw-gradient-from-position);--tw-gradient-to: hsl(225 70% 62% / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.hover\:to-destructive\/85:hover{--tw-gradient-to: hsl(0 84.2% 60.2% / .85) var(--tw-gradient-to-position)}.hover\:to-primary\/85:hover{--tw-gradient-to: hsl(225 70% 62% / .85) var(--tw-gradient-to-position)}.hover\:to-red-700:hover{--tw-gradient-to: #b91c1c var(--tw-gradient-to-position)}.hover\:text-accent-foreground:hover{--tw-text-opacity: 1;color:hsl(240 5% 96% / var(--tw-text-opacity, 1))}.hover\:text-amber-400:hover{--tw-text-opacity: 1;color:rgb(251 191 36 / var(--tw-text-opacity, 1))}.hover\:text-blue-400:hover{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.hover\:text-destructive:hover{--tw-text-opacity: 1;color:hsl(0 84.2% 60.2% / var(--tw-text-opacity, 1))}.hover\:text-foreground:hover{--tw-text-opacity: 1;color:hsl(240 5% 96% / var(--tw-text-opacity, 1))}.hover\:text-primary:hover{--tw-text-opacity: 1;color:hsl(225 70% 62% / var(--tw-text-opacity, 1))}.hover\:text-purple-400:hover{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.hover\:text-red-700:hover{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-lg:hover{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:file\:bg-primary\/90::file-selector-button:hover{background-color:#5a7ce2e6}.focus\:border-purple-500:focus{--tw-border-opacity: 1;border-color:rgb(168 85 247 / var(--tw-border-opacity, 1))}.focus\:border-transparent:focus{border-color:transparent}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus\:ring-primary:focus{--tw-ring-opacity: 1;--tw-ring-color: hsl(225 70% 62% / var(--tw-ring-opacity, 1))}.focus\:ring-ring:focus{--tw-ring-opacity: 1;--tw-ring-color: hsl(225 70% 62% / var(--tw-ring-opacity, 1))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: hsl(225 70% 62% / var(--tw-ring-opacity, 1))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color: hsl(240 10% 3.9%)}.active\:scale-\[0\.98\]:active{--tw-scale-x: .98;--tw-scale-y: .98;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-gray-700:disabled{--tw-bg-opacity: 1;background-color:rgb(55 65 81 / var(--tw-bg-opacity, 1))}.disabled\:text-gray-500:disabled{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:border-primary\/50{border-color:#5a7ce280}.group:hover .group-hover\:opacity-100{opacity:1}.group.toaster .group-\[\.toaster\]\:border-border{--tw-border-opacity: 1;border-color:hsl(240 3.7% 15.9% / var(--tw-border-opacity, 1))}.group.toast .group-\[\.toast\]\:bg-muted{--tw-bg-opacity: 1;background-color:hsl(240 3.7% 15.9% / var(--tw-bg-opacity, 1))}.group.toast .group-\[\.toast\]\:bg-primary{--tw-bg-opacity: 1;background-color:hsl(225 70% 62% / var(--tw-bg-opacity, 1))}.group.toaster .group-\[\.toaster\]\:bg-card{--tw-bg-opacity: 1;background-color:hsl(240 3.7% 8.9% / var(--tw-bg-opacity, 1))}.group.toast .group-\[\.toast\]\:text-muted-foreground{--tw-text-opacity: 1;color:hsl(240 5% 64.9% / var(--tw-text-opacity, 1))}.group.toast .group-\[\.toast\]\:text-primary-foreground{--tw-text-opacity: 1;color:hsl(0 0% 100% / var(--tw-text-opacity, 1))}.group.toaster .group-\[\.toaster\]\:text-foreground{--tw-text-opacity: 1;color:hsl(240 5% 96% / var(--tw-text-opacity, 1))}.group.toaster .group-\[\.toaster\]\:shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group.toaster .group-\[\.toaster\]\:backdrop-blur-xl{--tw-backdrop-blur: blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.data-\[state\=checked\]\:translate-x-5[data-state=checked]{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up .2s ease-out}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down .2s ease-out}.data-\[state\=active\]\:bg-background[data-state=active]{--tw-bg-opacity: 1;background-color:hsl(240 10% 3.9% / var(--tw-bg-opacity, 1))}.data-\[state\=checked\]\:bg-primary[data-state=checked]{--tw-bg-opacity: 1;background-color:hsl(225 70% 62% / var(--tw-bg-opacity, 1))}.data-\[state\=open\]\:bg-accent[data-state=open]{--tw-bg-opacity: 1;background-color:hsl(215 81% 63% / var(--tw-bg-opacity, 1))}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{--tw-bg-opacity: 1;background-color:hsl(240 3.7% 15.9% / var(--tw-bg-opacity, 1))}.data-\[state\=active\]\:text-foreground[data-state=active]{--tw-text-opacity: 1;color:hsl(240 5% 96% / var(--tw-text-opacity, 1))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{--tw-text-opacity: 1;color:hsl(240 5% 64.9% / var(--tw-text-opacity, 1))}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity: 0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x: -50%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x: -50%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y: -48%}@media(min-width:640px){.sm\:mb-4{margin-bottom:1rem}.sm\:block{display:block}.sm\:inline{display:inline}.sm\:flex{display:flex}.sm\:hidden{display:none}.sm\:h-12{height:3rem}.sm\:h-16{height:4rem}.sm\:h-32{height:8rem}.sm\:h-5{height:1.25rem}.sm\:h-8{height:2rem}.sm\:w-12{width:3rem}.sm\:w-16{width:4rem}.sm\:w-32{width:8rem}.sm\:w-5{width:1.25rem}.sm\:w-8{width:2rem}.sm\:w-auto{width:auto}.sm\:min-w-\[180px\]{min-width:180px}.sm\:min-w-\[200px\]{min-width:200px}.sm\:flex-none{flex:none}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-start{align-items:flex-start}.sm\:items-center{align-items:center}.sm\:justify-start{justify-content:flex-start}.sm\:justify-end{justify-content:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:gap-3{gap:.75rem}.sm\:gap-4{gap:1rem}.sm\:gap-6{gap:1.5rem}.sm\:gap-8{gap:2rem}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.sm\:space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.sm\:self-auto{align-self:auto}.sm\:rounded-2xl{border-radius:1rem}.sm\:p-3{padding:.75rem}.sm\:p-4{padding:1rem}.sm\:p-6{padding:1.5rem}.sm\:p-8{padding:2rem}.sm\:py-12{padding-top:3rem;padding-bottom:3rem}.sm\:pt-0{padding-top:0}.sm\:text-left{text-align:left}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}.sm\:text-sm{font-size:.875rem;line-height:1.25rem}.sm\:text-xl{font-size:1.25rem;line-height:1.75rem}.sm\:opacity-0{opacity:0}.sm\:transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.group:hover .sm\:group-hover\:opacity-100{opacity:1}}@media(min-width:768px){.md\:col-span-2{grid-column:span 2 / span 2}.md\:mb-2{margin-bottom:.5rem}.md\:mb-4{margin-bottom:1rem}.md\:mb-6{margin-bottom:1.5rem}.md\:mb-8{margin-bottom:2rem}.md\:ml-2{margin-left:.5rem}.md\:mr-2{margin-right:.5rem}.md\:mt-4{margin-top:1rem}.md\:block{display:block}.md\:h-10{height:2.5rem}.md\:h-20{height:5rem}.md\:h-28{height:7rem}.md\:h-7{height:1.75rem}.md\:h-8{height:2rem}.md\:w-1\/3{width:33.333333%}.md\:w-10{width:2.5rem}.md\:w-20{width:5rem}.md\:w-28{width:7rem}.md\:w-7{width:1.75rem}.md\:w-8{width:2rem}.md\:w-auto{width:auto}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:justify-between{justify-content:space-between}.md\:gap-1\.5{gap:.375rem}.md\:gap-2{gap:.5rem}.md\:gap-3{gap:.75rem}.md\:gap-6{gap:1.5rem}.md\:gap-8{gap:2rem}.md\:p-12{padding:3rem}.md\:p-2{padding:.5rem}.md\:p-2\.5{padding:.625rem}.md\:p-4{padding:1rem}.md\:p-5{padding:1.25rem}.md\:p-6{padding:1.5rem}.md\:p-8{padding:2rem}.md\:px-4{padding-left:1rem;padding-right:1rem}.md\:py-12{padding-top:3rem;padding-bottom:3rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-6xl{font-size:3.75rem;line-height:1}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}}@media(min-width:1024px){.lg\:col-span-1{grid-column:span 1 / span 1}.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:col-span-3{grid-column:span 3 / span 3}.lg\:col-span-9{grid-column:span 9 / span 9}.lg\:mb-4{margin-bottom:1rem}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:w-1\/4{width:25%}.lg\:flex-none{flex:none}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:flex-col{flex-direction:column}.lg\:gap-6{gap:1.5rem}.lg\:space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.lg\:p-6{padding:1.5rem}.lg\:text-left{text-align:left}.lg\:text-2xl{font-size:1.5rem;line-height:2rem}.lg\:text-4xl{font-size:2.25rem;line-height:2.5rem}.lg\:text-base{font-size:1rem;line-height:1.5rem}.lg\:text-lg{font-size:1.125rem;line-height:1.75rem}}@media(min-width:1280px){.xl\:block{display:block}.xl\:hidden{display:none}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&_blockquote\]\:my-4 blockquote{margin-top:1rem;margin-bottom:1rem}.\[\&_blockquote\]\:border-l-4 blockquote{border-left-width:4px}.\[\&_blockquote\]\:border-primary blockquote{--tw-border-opacity: 1;border-color:hsl(225 70% 62% / var(--tw-border-opacity, 1))}.\[\&_blockquote\]\:bg-primary\/5 blockquote{background-color:#5a7ce20d}.\[\&_blockquote\]\:py-2 blockquote{padding-top:.5rem;padding-bottom:.5rem}.\[\&_blockquote\]\:pl-4 blockquote{padding-left:1rem}.\[\&_blockquote\]\:italic blockquote{font-style:italic}.\[\&_code\]\:rounded code{border-radius:.25rem}.\[\&_code\]\:bg-primary\/10 code{background-color:#5a7ce21a}.\[\&_code\]\:px-1\.5 code{padding-left:.375rem;padding-right:.375rem}.\[\&_code\]\:py-0\.5 code{padding-top:.125rem;padding-bottom:.125rem}.\[\&_code\]\:text-sm code{font-size:.875rem;line-height:1.25rem}.\[\&_code\]\:text-primary code{--tw-text-opacity: 1;color:hsl(225 70% 62% / var(--tw-text-opacity, 1))}.\[\&_em\]\:italic em{font-style:italic}.\[\&_em\]\:text-yellow-500\/90 em{color:#eab308e6}.\[\&_h1\]\:mb-4 h1{margin-bottom:1rem}.\[\&_h1\]\:mt-6 h1{margin-top:1.5rem}.\[\&_h1\]\:mt-8 h1{margin-top:2rem}.\[\&_h1\]\:border-b h1{border-bottom-width:1px}.\[\&_h1\]\:border-border h1{--tw-border-opacity: 1;border-color:hsl(240 3.7% 15.9% / var(--tw-border-opacity, 1))}.\[\&_h1\]\:pb-2 h1{padding-bottom:.5rem}.\[\&_h1\]\:text-2xl h1{font-size:1.5rem;line-height:2rem}.\[\&_h1\]\:font-bold h1{font-weight:700}.\[\&_h2\]\:mb-3 h2{margin-bottom:.75rem}.\[\&_h2\]\:mt-5 h2{margin-top:1.25rem}.\[\&_h2\]\:mt-6 h2{margin-top:1.5rem}.\[\&_h2\]\:text-xl h2{font-size:1.25rem;line-height:1.75rem}.\[\&_h2\]\:font-bold h2{font-weight:700}.\[\&_h3\]\:mb-2 h3{margin-bottom:.5rem}.\[\&_h3\]\:mt-4 h3{margin-top:1rem}.\[\&_h3\]\:text-lg h3{font-size:1.125rem;line-height:1.75rem}.\[\&_h3\]\:font-semibold h3{font-weight:600}.\[\&_h3\]\:text-primary h3{--tw-text-opacity: 1;color:hsl(225 70% 62% / var(--tw-text-opacity, 1))}.\[\&_li\]\:mb-2 li{margin-bottom:.5rem}.\[\&_li\]\:leading-relaxed li{line-height:1.625}.\[\&_p\]\:mb-4 p{margin-bottom:1rem}.\[\&_p\]\:leading-relaxed p{line-height:1.625}.\[\&_strong\]\:font-semibold strong{font-weight:600}.\[\&_strong\]\:text-primary strong{--tw-text-opacity: 1;color:hsl(225 70% 62% / var(--tw-text-opacity, 1))}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_ul\]\:mb-4 ul{margin-bottom:1rem}.\[\&_ul\]\:ml-6 ul{margin-left:1.5rem}.\[\&_ul\]\:space-y-2 ul>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.min-h-screen{background:hsl(var(--background))!important}button[class*=inline-flex],button[class*=rounded-lg],.inline-flex{all:unset;box-sizing:border-box;display:inline-flex!important}[class*=rounded-xl][class*=border]{background:linear-gradient(180deg,hsla(var(--card) / .9),hsla(var(--card) / .9))!important;border:1px solid hsl(var(--border))!important;box-shadow:0 10px 40px #00000059!important}[class*=grid][class*=gap-]{display:grid!important}[class*=text-muted-foreground]{color:hsl(var(--muted-foreground))!important}[class*=text-foreground]{color:hsl(var(--foreground))!important}[class*=text-primary]{color:hsl(var(--primary))!important}[class*=bg-gradient-to-r][class*=bg-clip-text]{background-clip:text!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;background-image:linear-gradient(to right,hsl(var(--primary)),hsl(var(--accent)),hsl(var(--primary)))!important}[class*=rounded-full] img{border-radius:9999px!important}[class*=bg-success]{background-color:hsla(var(--success) / .2)!important;color:hsl(var(--success))!important;border-color:hsla(var(--success) / .4)!important}[class*=bg-warning]{background-color:hsla(var(--warning) / .2)!important;color:hsl(var(--warning))!important;border-color:hsla(var(--warning) / .4)!important}[class*=bg-destructive]{background-color:hsla(var(--destructive) / .2)!important;color:hsl(var(--destructive))!important;border-color:hsla(var(--destructive) / .4)!important}button[class*=bg-gradient-to-b]{background-image:linear-gradient(to bottom,hsl(var(--primary)),hsla(var(--primary) / .9))!important;color:hsl(var(--primary-foreground))!important;box-shadow:0 10px 25px #00000059!important;transition:all .2s ease!important}button[class*=bg-gradient-to-b]:hover{box-shadow:0 10px 30px #6366f166!important;transform:translateY(-1px)!important}button[class*=bg-gradient-to-b]:active{transform:scale(.98)!important}input[class*=rounded-lg],textarea[class*=rounded-lg]{background:hsla(var(--card) / .5)!important;-webkit-backdrop-filter:blur(10px)!important;backdrop-filter:blur(10px)!important;border:1px solid hsl(var(--border))!important;color:hsl(var(--foreground))!important}input[class*=rounded-lg]:focus,textarea[class*=rounded-lg]:focus{outline:none!important;border-color:hsl(var(--ring))!important;box-shadow:0 0 0 2px hsla(var(--ring) / .2)!important}
