.theme-rainbow{--color-bg: #fef9f0;--color-surface: #ffffff;--color-primary: #ff6b6b;--color-secondary: #4ecdc4;--color-accent: #ffe66d;--color-text: #2d3436;--color-text-muted: #636e72;--color-text-light: #b2bec3;--color-border: #f0e6d3;--color-success: #00b894;--color-warning: #fdcb6e;--color-danger: #e17055;--gradient-header: linear-gradient(135deg, #ff6b6b, #feca57, #48dbfb, #ff9ff3);--gradient-button: linear-gradient(135deg, #ff6b6b, #ee5a6f);--gradient-chat: linear-gradient(135deg, #a29bfe, #6c5ce7);--border-radius: 16px;--border-radius-sm: 10px;--border-radius-lg: 24px;--shadow-card: 0 4px 15px rgba(0, 0, 0, .08);--shadow-hover: 0 8px 25px rgba(0, 0, 0, .12);--shadow-button: 0 4px 12px rgba(255, 107, 107, .3)}.theme-ocean{--color-bg: #e8f4f8;--color-surface: #ffffff;--color-primary: #0984e3;--color-secondary: #00cec9;--color-accent: #55efc4;--color-text: #2d3436;--color-text-muted: #636e72;--color-text-light: #b2bec3;--color-border: #dfe6e9;--color-success: #00b894;--color-warning: #ffeaa7;--color-danger: #d63031;--gradient-header: linear-gradient(135deg, #0984e3, #00cec9, #55efc4);--gradient-button: linear-gradient(135deg, #0984e3, #74b9ff);--gradient-chat: linear-gradient(135deg, #00cec9, #0984e3);--border-radius: 16px;--border-radius-sm: 10px;--border-radius-lg: 24px;--shadow-card: 0 4px 15px rgba(9, 132, 227, .1);--shadow-hover: 0 8px 25px rgba(9, 132, 227, .15);--shadow-button: 0 4px 12px rgba(9, 132, 227, .3)}.theme-space{--color-bg: #0f0e17;--color-surface: #1a1940;--color-primary: #7f5af0;--color-secondary: #2cb67d;--color-accent: #ff8906;--color-text: #fffffe;--color-text-muted: #94a1b2;--color-text-light: #72757e;--color-border: #2a2950;--color-success: #2cb67d;--color-warning: #ff8906;--color-danger: #e53170;--gradient-header: linear-gradient(135deg, #7f5af0, #2cb67d);--gradient-button: linear-gradient(135deg, #7f5af0, #a78bfa);--gradient-chat: linear-gradient(135deg, #e53170, #7f5af0);--border-radius: 16px;--border-radius-sm: 10px;--border-radius-lg: 24px;--shadow-card: 0 4px 15px rgba(127, 90, 240, .15);--shadow-hover: 0 8px 25px rgba(127, 90, 240, .25);--shadow-button: 0 4px 12px rgba(127, 90, 240, .4)}.theme-forest{--color-bg: #f0f7f0;--color-surface: #ffffff;--color-primary: #27ae60;--color-secondary: #2ecc71;--color-accent: #f39c12;--color-text: #2d3436;--color-text-muted: #636e72;--color-text-light: #b2bec3;--color-border: #d5e8d5;--color-success: #27ae60;--color-warning: #f39c12;--color-danger: #e74c3c;--gradient-header: linear-gradient(135deg, #27ae60, #2ecc71, #f39c12);--gradient-button: linear-gradient(135deg, #27ae60, #2ecc71);--gradient-chat: linear-gradient(135deg, #f39c12, #27ae60);--border-radius: 16px;--border-radius-sm: 10px;--border-radius-lg: 24px;--shadow-card: 0 4px 15px rgba(39, 174, 96, .1);--shadow-hover: 0 8px 25px rgba(39, 174, 96, .15);--shadow-button: 0 4px 12px rgba(39, 174, 96, .3)}.theme-princess{--color-bg: #fdf2f8;--color-surface: #ffffff;--color-primary: #ec4899;--color-secondary: #a855f7;--color-accent: #fbbf24;--color-text: #4a1942;--color-text-muted: #9b6b9e;--color-text-light: #c9a2cb;--color-border: #f5d0e6;--color-success: #10b981;--color-warning: #fbbf24;--color-danger: #ef4444;--gradient-header: linear-gradient(135deg, #ec4899, #a855f7, #fbbf24);--gradient-button: linear-gradient(135deg, #ec4899, #d946ef);--gradient-chat: linear-gradient(135deg, #a855f7, #ec4899);--border-radius: 20px;--border-radius-sm: 12px;--border-radius-lg: 28px;--shadow-card: 0 4px 15px rgba(236, 72, 153, .12);--shadow-hover: 0 8px 25px rgba(236, 72, 153, .2);--shadow-button: 0 4px 12px rgba(236, 72, 153, .35)}.theme-fairy{--color-bg: #f0fdf4;--color-surface: #ffffff;--color-primary: #a78bfa;--color-secondary: #34d399;--color-accent: #f9a8d4;--color-text: #3b2e58;--color-text-muted: #7c6f94;--color-text-light: #b8afc8;--color-border: #e0d4f5;--color-success: #34d399;--color-warning: #fbbf24;--color-danger: #f87171;--gradient-header: linear-gradient(135deg, #a78bfa, #34d399, #f9a8d4);--gradient-button: linear-gradient(135deg, #a78bfa, #c4b5fd);--gradient-chat: linear-gradient(135deg, #34d399, #a78bfa);--border-radius: 20px;--border-radius-sm: 12px;--border-radius-lg: 28px;--shadow-card: 0 4px 15px rgba(167, 139, 250, .12);--shadow-hover: 0 8px 25px rgba(167, 139, 250, .2);--shadow-button: 0 4px 12px rgba(167, 139, 250, .35)}.theme-candy{--color-bg: #fff5f7;--color-surface: #ffffff;--color-primary: #f472b6;--color-secondary: #38bdf8;--color-accent: #a3e635;--color-text: #5b2147;--color-text-muted: #a3708f;--color-text-light: #cba6bb;--color-border: #fce7f3;--color-success: #4ade80;--color-warning: #facc15;--color-danger: #fb7185;--gradient-header: linear-gradient(135deg, #f472b6, #38bdf8, #a3e635, #facc15);--gradient-button: linear-gradient(135deg, #f472b6, #fb923c);--gradient-chat: linear-gradient(135deg, #38bdf8, #f472b6);--border-radius: 22px;--border-radius-sm: 14px;--border-radius-lg: 30px;--shadow-card: 0 4px 15px rgba(244, 114, 182, .12);--shadow-hover: 0 8px 25px rgba(244, 114, 182, .2);--shadow-button: 0 4px 12px rgba(244, 114, 182, .35)}.theme-superhero{--color-bg: #0f172a;--color-surface: #1e293b;--color-primary: #ef4444;--color-secondary: #3b82f6;--color-accent: #facc15;--color-text: #f1f5f9;--color-text-muted: #94a3b8;--color-text-light: #64748b;--color-border: #334155;--color-success: #22c55e;--color-warning: #facc15;--color-danger: #ef4444;--gradient-header: linear-gradient(135deg, #ef4444, #3b82f6, #facc15);--gradient-button: linear-gradient(135deg, #ef4444, #dc2626);--gradient-chat: linear-gradient(135deg, #3b82f6, #ef4444);--border-radius: 14px;--border-radius-sm: 8px;--border-radius-lg: 20px;--shadow-card: 0 4px 15px rgba(239, 68, 68, .15);--shadow-hover: 0 8px 25px rgba(239, 68, 68, .25);--shadow-button: 0 4px 12px rgba(239, 68, 68, .4)}.theme-dinosaur{--color-bg: #f0fdf0;--color-surface: #ffffff;--color-primary: #16a34a;--color-secondary: #ca8a04;--color-accent: #ea580c;--color-text: #1a3a1a;--color-text-muted: #5a7a5a;--color-text-light: #94b894;--color-border: #d1e7d1;--color-success: #16a34a;--color-warning: #ca8a04;--color-danger: #dc2626;--gradient-header: linear-gradient(135deg, #16a34a, #ca8a04, #ea580c);--gradient-button: linear-gradient(135deg, #16a34a, #22c55e);--gradient-chat: linear-gradient(135deg, #ca8a04, #16a34a);--border-radius: 14px;--border-radius-sm: 8px;--border-radius-lg: 20px;--shadow-card: 0 4px 15px rgba(22, 163, 74, .12);--shadow-hover: 0 8px 25px rgba(22, 163, 74, .18);--shadow-button: 0 4px 12px rgba(22, 163, 74, .3)}.theme-pirate{--color-bg: #1c1917;--color-surface: #292524;--color-primary: #d97706;--color-secondary: #dc2626;--color-accent: #fbbf24;--color-text: #fef3c7;--color-text-muted: #a8a29e;--color-text-light: #78716c;--color-border: #44403c;--color-success: #16a34a;--color-warning: #d97706;--color-danger: #dc2626;--gradient-header: linear-gradient(135deg, #1c1917, #d97706, #fbbf24);--gradient-button: linear-gradient(135deg, #d97706, #b45309);--gradient-chat: linear-gradient(135deg, #dc2626, #d97706);--border-radius: 12px;--border-radius-sm: 6px;--border-radius-lg: 18px;--shadow-card: 0 4px 15px rgba(217, 119, 6, .15);--shadow-hover: 0 8px 25px rgba(217, 119, 6, .25);--shadow-button: 0 4px 12px rgba(217, 119, 6, .4)}.theme-midnight{--color-bg: #0f172a;--color-surface: #1e293b;--color-primary: #6366f1;--color-secondary: #8b5cf6;--color-accent: #06b6d4;--color-text: #e2e8f0;--color-text-muted: #94a3b8;--color-text-light: #64748b;--color-border: #334155;--color-success: #10b981;--color-warning: #f59e0b;--color-danger: #ef4444;--gradient-header: linear-gradient(135deg, #6366f1, #8b5cf6, #06b6d4);--gradient-button: linear-gradient(135deg, #6366f1, #818cf8);--gradient-chat: linear-gradient(135deg, #8b5cf6, #6366f1);--border-radius: 12px;--border-radius-sm: 8px;--border-radius-lg: 20px;--shadow-card: 0 4px 15px rgba(99, 102, 241, .12);--shadow-hover: 0 8px 25px rgba(99, 102, 241, .2);--shadow-button: 0 4px 12px rgba(99, 102, 241, .35)}.theme-slate{--color-bg: #f8fafc;--color-surface: #ffffff;--color-primary: #475569;--color-secondary: #64748b;--color-accent: #0ea5e9;--color-text: #1e293b;--color-text-muted: #64748b;--color-text-light: #94a3b8;--color-border: #e2e8f0;--color-success: #059669;--color-warning: #d97706;--color-danger: #dc2626;--gradient-header: linear-gradient(135deg, #475569, #64748b, #0ea5e9);--gradient-button: linear-gradient(135deg, #475569, #64748b);--gradient-chat: linear-gradient(135deg, #0ea5e9, #475569);--border-radius: 10px;--border-radius-sm: 6px;--border-radius-lg: 16px;--shadow-card: 0 2px 8px rgba(0, 0, 0, .06);--shadow-hover: 0 4px 16px rgba(0, 0, 0, .1);--shadow-button: 0 2px 8px rgba(71, 85, 105, .25)}.theme-rose-gold{--color-bg: #fdf2f2;--color-surface: #ffffff;--color-primary: #be185d;--color-secondary: #b45309;--color-accent: #d4a574;--color-text: #3b1c32;--color-text-muted: #8b6b7e;--color-text-light: #bfa0b0;--color-border: #f3d5d5;--color-success: #059669;--color-warning: #d97706;--color-danger: #dc2626;--gradient-header: linear-gradient(135deg, #be185d, #d4a574, #b45309);--gradient-button: linear-gradient(135deg, #be185d, #e11d75);--gradient-chat: linear-gradient(135deg, #d4a574, #be185d);--border-radius: 14px;--border-radius-sm: 8px;--border-radius-lg: 22px;--shadow-card: 0 4px 15px rgba(190, 24, 93, .08);--shadow-hover: 0 8px 25px rgba(190, 24, 93, .14);--shadow-button: 0 4px 12px rgba(190, 24, 93, .3)}.theme-monochrome{--color-bg: #ffffff;--color-surface: #fafafa;--color-primary: #171717;--color-secondary: #404040;--color-accent: #737373;--color-text: #171717;--color-text-muted: #525252;--color-text-light: #a3a3a3;--color-border: #e5e5e5;--color-success: #16a34a;--color-warning: #ca8a04;--color-danger: #dc2626;--gradient-header: linear-gradient(135deg, #171717, #404040, #737373);--gradient-button: linear-gradient(135deg, #171717, #404040);--gradient-chat: linear-gradient(135deg, #404040, #171717);--border-radius: 8px;--border-radius-sm: 4px;--border-radius-lg: 14px;--shadow-card: 0 1px 4px rgba(0, 0, 0, .06);--shadow-hover: 0 4px 12px rgba(0, 0, 0, .1);--shadow-button: 0 2px 6px rgba(0, 0, 0, .15)}@keyframes bounce-in{0%{transform:scale(.3);opacity:0}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1);opacity:1}}@keyframes wobble{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}@keyframes slide-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes pulse-badge{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pop{0%{transform:scale(1)}50%{transform:scale(1.4)}to{transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rainbow-bg{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes toast-in{0%{transform:translate(120%);opacity:0}70%{transform:translate(-5%)}to{transform:translate(0);opacity:1}}@keyframes toast-out{0%{transform:translate(0);opacity:1}to{transform:translate(120%);opacity:0}}.bounce-in{animation:bounce-in .5s ease-out}.wobble{animation:wobble .5s ease-in-out}.wobble-hover:hover{animation:wobble .3s ease-in-out infinite}.slide-in-right{animation:slide-in-right .3s ease-out}.slide-up{animation:slide-up .3s ease-out}.pulse{animation:pulse-badge 2s ease-in-out infinite}.float{animation:float 3s ease-in-out infinite}.daisy-glow{font-size:1.3rem;margin-left:-4px;margin-top:10px;animation:daisy-glow 2s ease-in-out infinite;filter:drop-shadow(0 0 4px #ffe066)}@keyframes daisy-glow{0%,to{filter:drop-shadow(0 0 4px #ffe066) drop-shadow(0 0 8px #ffd60a);transform:scale(1)}50%{filter:drop-shadow(0 0 10px #ffe066) drop-shadow(0 0 20px #ffd60a) drop-shadow(0 0 30px #fff3bf);transform:scale(1.1)}}.pop{animation:pop .3s ease-out}.fade-in{animation:fade-in .3s ease-out}.spin{animation:spin 1s linear infinite}.toast-in{animation:toast-in .5s ease-out forwards}.toast-out{animation:toast-out .3s ease-in forwards}:root{font-family:Nunito,Comic Sans MS,sans-serif}h1,h2,h3,h4{font-family:Fredoka One,Comic Sans MS,cursive;font-weight:400}.app-shell{min-height:100vh;background:var(--color-bg);color:var(--color-text);display:flex;flex-direction:row;transition:background .3s ease,color .3s ease}.sidebar{width:230px;min-width:230px;height:100vh;position:sticky;top:0;display:flex;flex-direction:column;background:var(--color-surface);border-right:2px solid var(--color-border);z-index:110;overflow-y:auto;box-shadow:2px 0 8px #0000000d}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:20px 20px 16px}.sidebar-brand-text{font-family:Fredoka One,Comic Sans MS,cursive;font-size:1.4rem;background:linear-gradient(135deg,#ff6b6b,#feca57,#48dbfb);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:2px;padding:8px 12px}.sidebar-nav-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border:none;background:transparent;border-radius:12px;cursor:pointer;transition:all .15s;color:var(--color-text-muted);font-size:.9rem;font-weight:600;font-family:Nunito,sans-serif;width:100%;text-align:left}.sidebar-nav-item:hover{background:var(--color-border);color:var(--color-text)}.sidebar-nav-item.active{background:linear-gradient(135deg,#667eea1a,#764ba21a);color:var(--color-primary);font-weight:700}.sidebar-nav-emoji{font-size:1.25rem;width:28px;text-align:center;line-height:1}.sidebar-nav-label{white-space:nowrap}.sidebar-bottom{padding:8px 12px 12px;border-top:1px solid var(--color-border)}.sidebar-user{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;background:var(--color-bg);margin-top:6px}.sidebar-user-info{flex:1;display:flex;flex-direction:column;min-width:0}.sidebar-user-name{font-weight:700;font-size:.85rem;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user-role{font-size:.7rem;color:var(--color-text-muted);text-transform:capitalize}.sidebar-logout-btn{background:none;border:none;cursor:pointer;font-size:1.1rem;padding:4px;border-radius:8px;transition:all .15s}.sidebar-logout-btn:hover{background:var(--color-border)}.app-body{flex:1;display:flex;flex-direction:column;min-width:0;min-height:100vh}.desktop-topbar{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:12px 24px;border-bottom:1px solid var(--color-border);background:var(--color-surface);position:sticky;top:0;z-index:100}.mobile-header{display:none;background:var(--gradient-header);background-size:300% 300%;animation:rainbow-bg 8s ease infinite;padding:12px 20px;align-items:center;justify-content:space-between;box-shadow:0 4px 20px #0000001a;position:sticky;top:0;z-index:100}.header{background:var(--gradient-header);background-size:300% 300%;animation:rainbow-bg 8s ease infinite;padding:12px 20px;display:none;align-items:center;justify-content:space-between;box-shadow:0 4px 20px #0000001a;position:sticky;top:0;z-index:100}.header-title{color:#fff;font-size:1.5rem;text-shadow:2px 2px 4px rgba(0,0,0,.2);display:flex;align-items:center;gap:8px}.header-right{display:flex;align-items:center;gap:12px}.app-main{flex:1;padding:24px;max-width:680px;margin:0 auto;width:100%}.members-page{width:100%}.members-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px;flex-wrap:wrap}.members-title{margin:0;font-size:1.3rem;display:flex;align-items:center;gap:8px}.members-count{background:#667eea;color:#fff;font-size:.75rem;padding:2px 10px;border-radius:20px;font-weight:700;font-family:Nunito,sans-serif}.members-search{padding:8px 16px;border-radius:24px;border:1.5px solid #e0e0e0;font-size:.85rem;outline:none;width:200px;transition:all .2s;font-family:Nunito,sans-serif}.members-search:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.members-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.member-card{display:flex;align-items:center;gap:14px;padding:16px;background:#fff;border-radius:16px;border:1px solid #eef0f2;transition:all .15s}.member-card:hover{border-color:#dde;box-shadow:0 4px 16px #0000000f;transform:translateY(-1px)}.member-card-avatar{position:relative;flex-shrink:0}.member-status-dot{position:absolute;bottom:0;right:0;width:12px;height:12px;border-radius:50%;border:2px solid #fff}.member-card-info{flex:1;display:flex;flex-direction:column;min-width:0}.member-card-name{font-weight:700;font-size:.95rem;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-card-role{font-size:.75rem;font-weight:700;text-transform:capitalize}.member-card-meta{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.member-card-seen{font-size:.72rem;color:#999}.member-card-joined{font-size:.68rem;color:#bbb}.members-empty{grid-column:1 / -1;text-align:center;padding:40px 20px;color:#bbb;font-size:.95rem}@media (max-width: 768px){.app-shell{flex-direction:column}.sidebar,.desktop-topbar{display:none}.mobile-header{display:flex}.app-main{padding:16px 16px 80px;max-width:600px}.members-header{flex-direction:column;align-items:stretch}.members-search{width:100%}.members-grid{grid-template-columns:1fr}}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:var(--color-surface);display:none;justify-content:space-around;padding:8px 0 12px;box-shadow:0 -4px 20px #00000014;z-index:100;border-top:2px solid var(--color-border)}@media (max-width: 768px){.bottom-nav{display:flex}}.nav-item{display:flex;flex-direction:column;align-items:center;gap:2px;background:none;border:none;cursor:pointer;padding:4px 16px;border-radius:var(--border-radius-sm);transition:all .2s ease;color:var(--color-text-muted);font-family:Nunito,sans-serif;font-size:.7rem;font-weight:700}.nav-item:hover{transform:translateY(-2px)}.nav-item.active{color:var(--color-primary);transform:translateY(-2px)}.nav-item .nav-emoji{font-size:1.5rem;line-height:1}.card{background:var(--color-surface);border-radius:var(--border-radius);padding:16px;margin-bottom:12px;box-shadow:var(--shadow-card);border:2px solid var(--color-border);transition:all .2s ease}.card:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.post-card{animation:fade-in .3s ease-out}.post-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.post-author{font-weight:800;font-size:.95rem}.post-time{color:var(--color-text-muted);font-size:.8rem;margin-left:auto}.post-content{margin-bottom:12px;font-size:1rem;line-height:1.5;word-wrap:break-word;overflow-wrap:break-word}.post-text-body{white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;line-height:1.6}.post-text-body strong{font-weight:700}.post-text-body em{font-style:italic}.post-text-body s{text-decoration:line-through;opacity:.7}.post-text-body .inline-code{font-family:Consolas,Monaco,Courier New,monospace;background:var(--color-bg, #f4f4f4);padding:1px 5px;border-radius:4px;font-size:.88em;border:1px solid var(--color-border, #e0e0e0)}.post-text-body .post-link{color:var(--color-primary, #667eea);text-decoration:underline;word-break:break-all}.post-sticker{font-size:4rem;text-align:center;padding:16px;cursor:default}.post-sticker:hover{animation:wobble .3s ease-in-out}.post-photo-grid{display:grid;gap:3px;border-radius:12px;overflow:hidden}.post-photo-grid.photos-1{grid-template-columns:1fr}.post-photo-grid.photos-1 .post-photo{height:auto;width:100%;max-width:100%;max-height:80vh;object-fit:contain}.post-photo-grid.photos-2{grid-template-columns:1fr 1fr}.post-photo-grid.photos-2 .post-photo{height:240px}.post-photo-grid.photos-3{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.post-photo-grid.photos-3 .post-photo-cell:first-child{grid-row:1 / 3}.post-photo-grid.photos-3 .post-photo{height:100%;min-height:150px}.post-photo-grid.photos-4{grid-template-columns:1fr 1fr}.post-photo-grid.photos-4 .post-photo{height:180px}.post-photo-grid.photos-5{grid-template-columns:1fr 1fr 1fr;grid-template-rows:1fr 1fr}.post-photo-grid.photos-5 .post-photo-cell:nth-child(1),.post-photo-grid.photos-5 .post-photo-cell:nth-child(2){grid-column:span 1}.post-photo-grid.photos-5 .post-photo-cell:nth-child(1){grid-column:1 / 2;grid-row:1}.post-photo-grid.photos-5 .post-photo-cell:nth-child(2){grid-column:2 / 4;grid-row:1}.post-photo-grid.photos-5 .post-photo-cell:nth-child(n+3){grid-row:2}.post-photo-grid.photos-5 .post-photo{height:160px}.post-photo-cell{position:relative;overflow:hidden;cursor:pointer}.post-photo-cell.has-overlay .post-photo{filter:brightness(.5)}.photo-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:800;color:#fff;pointer-events:none;text-shadow:0 2px 8px rgba(0,0,0,.5)}.post-photo{width:100%;height:200px;object-fit:cover;cursor:pointer;transition:opacity .15s,transform .15s;display:block}.post-photo-cell:hover .post-photo{opacity:.92}.photo-lightbox{position:fixed;inset:0;background:#000000eb;z-index:10000;display:flex;align-items:center;justify-content:center;animation:fadeIn .15s ease}.lightbox-content{position:relative;max-width:90vw;max-height:90vh}.lightbox-content img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:8px}.lightbox-counter{text-align:center;color:#ffffffb3;font-size:.85rem;margin-top:8px}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff26;color:#fff;border:none;border-radius:50%;width:44px;height:44px;font-size:1.8rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.lightbox-nav:hover{background:#ffffff4d}.lightbox-prev{left:-56px}.lightbox-next{right:-56px}.lightbox-close{position:absolute;top:-40px;right:0;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:4px 8px}@media (max-width: 600px){.lightbox-prev{left:4px}.lightbox-next{right:4px}.lightbox-close{top:4px;right:4px}}.post-attachments{display:flex;flex-direction:column;gap:6px;padding:8px 0}.post-attachment-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--color-bg-secondary, #f5f5f5);border-radius:8px;text-decoration:none;color:inherit;font-size:.85rem;transition:background .15s}.post-attachment-item:hover{background:var(--color-border, #e0e0e0)}.post-attachment-icon{font-weight:700;font-size:.7rem;background:var(--color-primary, #ff6b6b);color:#fff;padding:2px 6px;border-radius:4px;flex-shrink:0}.post-attachment-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.post-attachment-size{color:var(--color-text-muted);font-size:.75rem;flex-shrink:0}.sticker-gif-picker{position:absolute;bottom:100%;left:0;right:0;background:var(--color-bg, white);border:1px solid var(--color-border, #e0e0e0);border-radius:12px;box-shadow:0 -4px 20px #0000001f;max-height:320px;display:flex;flex-direction:column;z-index:50;overflow:hidden}.sgp-header{display:flex;align-items:center;padding:8px 12px;border-bottom:1px solid var(--color-border, #e0e0e0)}.sgp-tabs{display:flex;gap:4px;flex:1}.sgp-tab{background:none;border:none;padding:4px 12px;cursor:pointer;font-weight:600;font-size:.85rem;border-radius:6px;color:var(--color-text-muted)}.sgp-tab.active{background:var(--color-primary, #ff6b6b);color:#fff}.sgp-close{background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--color-text-muted);padding:4px}.sgp-stickers{overflow-y:auto;flex:1}.sgp-pack-tabs{display:flex;gap:4px;padding:6px 8px;overflow-x:auto;border-bottom:1px solid var(--color-border, #e0e0e0)}.sgp-pack-tab{background:none;border:none;padding:3px 8px;cursor:pointer;font-size:.75rem;white-space:nowrap;border-radius:4px}.sgp-pack-tab.active{background:var(--color-bg-secondary, #f0f0f0);font-weight:600}.sgp-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:2px;padding:8px}.sgp-sticker{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:6px;border-radius:8px;transition:background .1s}.sgp-sticker:hover{background:var(--color-bg-secondary, #f0f0f0)}.sgp-gifs{display:flex;flex-direction:column;overflow:hidden;flex:1}.sgp-gif-search{display:flex;gap:6px;padding:8px}.sgp-gif-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:0 8px 8px;overflow-y:auto;flex:1}.sgp-gif-item{background:none;border:none;cursor:pointer;padding:0;border-radius:6px;overflow:hidden}.sgp-gif-item img{width:100%;height:80px;object-fit:cover;display:block}.sgp-memes{display:flex;flex-direction:column;overflow:hidden;flex:1}.sgp-meme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:4px 8px 8px;overflow-y:auto;flex:1}.sgp-meme-item{background:none;border:1px solid var(--color-border, #eee);cursor:pointer;padding:4px;border-radius:8px;display:flex;flex-direction:column;align-items:center;gap:4px;transition:all .15s}.sgp-meme-item:hover{background:var(--color-bg-secondary, #f0f4ff);border-color:var(--color-primary, #667eea);transform:scale(1.03)}.sgp-meme-item img{width:100%;height:70px;object-fit:cover;border-radius:6px;display:block}.sgp-meme-name{font-size:.65rem;color:var(--color-text-muted, #999);font-weight:600;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.sgp-meme-editor{display:flex;flex-direction:column;gap:8px;padding:4px 8px 8px;overflow-y:auto;flex:1}.photo-preview-grid{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;padding:4px}.photo-preview-item{position:relative;width:72px;height:72px;border-radius:10px;overflow:hidden;cursor:grab;transition:transform .15s,box-shadow .15s;border:2px solid transparent}.photo-preview-item:active{cursor:grabbing}.photo-preview-item.drag-target{border-color:var(--color-primary, #667eea);transform:scale(1.05);box-shadow:0 2px 8px #667eea4d}.photo-preview-item img{width:100%;height:100%;object-fit:cover;pointer-events:none}.photo-preview-remove{position:absolute;top:2px;right:2px;width:20px;height:20px;border-radius:50%;background:#0009;color:#fff;border:none;cursor:pointer;font-size:11px;display:flex;align-items:center;justify-content:center;line-height:1;z-index:2}.photo-preview-order{position:absolute;bottom:2px;left:2px;background:#0009;color:#fff;border-radius:4px;font-size:9px;padding:1px 4px;font-weight:700}.photo-preview-add{width:72px;height:72px;border-radius:10px;border:2px dashed var(--color-border, #ddd);background:none;cursor:pointer;font-size:1.5rem;color:var(--color-text-muted, #999);display:flex;align-items:center;justify-content:center;transition:border-color .15s,color .15s}.photo-preview-add:hover{border-color:var(--color-primary, #667eea);color:var(--color-primary, #667eea)}.upload-progress-bar{position:relative;height:6px;background:var(--color-bg-secondary, #f0f0f0);border-radius:3px;margin-top:8px;overflow:hidden}.upload-progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:3px;transition:width .2s ease}.upload-progress-text{position:absolute;top:-16px;right:0;font-size:.7rem;color:var(--color-text-muted, #999)}.create-post.drag-over{outline:2px dashed var(--color-primary, #667eea);outline-offset:-2px;background:var(--color-bg-secondary, #f8f9ff)}.drag-drop-overlay{padding:24px;text-align:center;color:var(--color-primary, #667eea);font-size:1rem;font-weight:600}.reaction-bar-wrapper{display:flex;align-items:center;gap:8px;padding-top:8px;border-top:1px solid var(--color-border);flex-wrap:wrap}.reaction-trigger-wrap{position:relative}.reaction-trigger-btn{display:flex;align-items:center;gap:4px;padding:5px 12px;border-radius:20px;border:2px solid var(--color-border);background:var(--color-bg);cursor:pointer;font-size:.82rem;font-family:Nunito,sans-serif;font-weight:700;color:var(--color-text-muted);transition:all .15s ease}.reaction-trigger-btn:hover,.reaction-trigger-btn.reacted{border-color:var(--color-primary);color:var(--color-primary)}.reaction-picker{position:absolute;bottom:calc(100% + 6px);left:0;display:flex;gap:2px;background:var(--color-bg, white);border:1px solid var(--color-border, #e0e0e0);border-radius:24px;padding:6px 8px;box-shadow:0 4px 16px #0000001f;z-index:100;animation:fadeIn .12s ease}.reaction-pick-btn{background:none;border:none;cursor:pointer;font-size:1.4rem;padding:4px 6px;border-radius:50%;transition:transform .15s,background .1s;line-height:1}.reaction-pick-btn:hover{transform:scale(1.35);background:var(--color-bg-secondary, #f0f0f0)}.reaction-pick-btn.active{background:#667eea26}.reaction-pick-btn.pop{animation:popReaction .3s ease}@keyframes popReaction{0%{transform:scale(1)}50%{transform:scale(1.6)}to{transform:scale(1)}}.reaction-counts-row{display:flex;gap:4px;flex-wrap:wrap;align-items:center;position:relative}.reaction-badge{display:flex;align-items:center;gap:3px;padding:3px 8px;border-radius:16px;border:1.5px solid var(--color-border);background:var(--color-bg);cursor:pointer;font-size:.8rem;font-weight:700;color:var(--color-text-muted);transition:all .15s}.reaction-badge:hover{transform:scale(1.08);border-color:var(--color-primary)}.reaction-badge.active{background:#667eea1a;border-color:var(--color-primary);color:var(--color-primary)}.reaction-badge-count{font-size:.75rem}.reaction-total-btn{background:none;border:1px solid var(--color-border, #e0e0e0);border-radius:12px;padding:3px 8px;font-size:.78rem;font-weight:700;cursor:pointer;color:var(--color-text-muted);text-decoration:underline;transition:color .15s}.reaction-total-btn:hover{color:var(--color-primary)}.reaction-popover{position:absolute;bottom:calc(100% + 6px);left:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 8px 24px #00000026;width:220px;z-index:200;overflow:hidden}.reaction-popover-tabs{display:flex;gap:2px;padding:8px 8px 6px;flex-wrap:wrap;border-bottom:1px solid var(--color-border)}.reaction-popover-tab{background:none;border:1px solid var(--color-border);border-radius:20px;padding:2px 8px;font-size:.75rem;cursor:pointer;color:var(--color-text)}.reaction-popover-tab.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.reaction-popover-users{max-height:200px;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:6px}.reaction-popover-user{display:flex;align-items:center;gap:8px;font-size:.85rem}.reaction-popover-loading,.reaction-popover-empty{font-size:.82rem;color:var(--color-text-muted);text-align:center;padding:8px 0}.comment-section{margin-top:8px;border-top:1px solid var(--color-border);padding-top:6px}.comment-toggle{background:none;border:none;color:var(--color-text-muted);font-size:.82rem;font-weight:700;cursor:pointer;padding:4px 0;transition:color .15s}.comment-toggle:hover{color:var(--color-primary)}.comment-list{margin-top:8px;display:flex;flex-direction:column;gap:8px;position:relative}.comment-item{display:flex;gap:8px;align-items:flex-start}.comment-replies{margin-left:28px;padding-left:12px;border-left:2px solid var(--color-border, #e0e0e0)}.comment-reply-btn{background:none;border:none;color:var(--color-primary, #ff6b6b);cursor:pointer;font-size:.72rem;font-weight:600;padding:0}.comment-body{flex:1;min-width:0}.comment-meta{display:flex;align-items:center;gap:6px;font-size:.78rem}.comment-author{font-weight:700;color:var(--color-text)}.comment-time{color:var(--color-text-muted)}.comment-delete{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:.75rem;padding:0 4px;border-radius:4px;line-height:1;transition:all .15s}.comment-delete:hover{color:#ff4757;background:#fff0f0}.comment-text{font-size:.85rem;color:var(--color-text);margin-top:2px;word-break:break-word}.comment-input-row{display:flex;gap:6px;margin-top:4px}.comment-input{flex:1;border:1.5px solid var(--color-border);border-radius:20px;padding:6px 14px;font-size:.83rem;background:var(--color-bg);color:var(--color-text);outline:none;transition:border-color .2s}.comment-input:focus{border-color:var(--color-primary)}.comment-send{background:var(--color-primary);color:#fff;border:none;border-radius:20px;padding:6px 14px;font-size:.82rem;font-weight:700;cursor:pointer;transition:opacity .15s}.comment-send:disabled{opacity:.5;cursor:not-allowed}.comment-send:not(:disabled):hover{opacity:.9}.poll-option{display:flex;align-items:center;gap:10px;padding:10px 14px;margin-bottom:6px;border-radius:var(--border-radius-sm);border:2px solid var(--color-border);background:var(--color-bg);cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.poll-option:hover{border-color:var(--color-primary);transform:scale(1.02)}.poll-option.voted{border-color:var(--color-primary);background:var(--color-surface)}.poll-bar{position:absolute;left:0;top:0;bottom:0;background:var(--color-primary);opacity:.15;transition:width .5s ease;border-radius:var(--border-radius-sm)}.poll-text{font-weight:700;position:relative;z-index:1}.poll-count{margin-left:auto;font-weight:800;color:var(--color-primary);position:relative;z-index:1}.avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0;border:3px solid white;box-shadow:0 2px 8px #0000001a}.avatar.tiny{width:20px;height:20px;font-size:.65rem;border-width:1.5px}.avatar.small{width:32px;height:32px;font-size:1rem}.avatar.large{width:56px;height:56px;font-size:1.8rem}.fun-btn{padding:10px 20px;border-radius:var(--border-radius);border:none;background:var(--gradient-button);color:#fff;font-family:Fredoka One,cursive;font-size:1rem;cursor:pointer;box-shadow:var(--shadow-button);transition:all .2s ease;display:inline-flex;align-items:center;gap:6px}.fun-btn:hover{transform:translateY(-2px) scale(1.02);box-shadow:var(--shadow-hover)}.fun-btn:active{transform:translateY(0) scale(.98)}.fun-btn.secondary{background:var(--color-surface);color:var(--color-primary);border:2px solid var(--color-primary);box-shadow:none}.fun-btn.small{padding:6px 14px;font-size:.85rem;border-radius:var(--border-radius-sm)}.fun-input{width:100%;padding:12px 16px;border-radius:var(--border-radius);border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-family:Nunito,sans-serif;font-size:1rem;font-weight:600;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.fun-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #ff6b6b26}.fun-input::placeholder{color:var(--color-text-light)}textarea.fun-input{resize:vertical;min-height:80px}.create-post-composer{border:2px solid var(--color-border, #e0e0e0);border-radius:var(--border-radius, 12px);padding:10px;transition:border-color .2s}.create-post-composer:focus-within{border-color:var(--color-primary, #667eea)}.create-post-composer textarea.create-post-textarea{border:none;padding:0;background:transparent;box-shadow:none;outline:none}.create-post-composer textarea.create-post-textarea:focus{box-shadow:none;border:none}.create-post-textarea-wrap{flex:1;display:flex;flex-direction:column}textarea.create-post-textarea{resize:none;min-height:60px;max-height:300px;overflow-y:auto;overflow-x:hidden;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;line-height:1.5;font-size:.95rem;transition:height .1s ease}.create-post-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:8px;padding-top:8px;border-top:1px solid var(--color-border, #e8e8e8)}.create-post-toolbar .format-toolbar{padding:0;margin-right:4px}.format-toolbar{display:flex;align-items:center;gap:2px;padding:4px 4px 0}.format-btn{background:none;border:1px solid var(--color-border, #e0e0e0);border-radius:6px;padding:2px 8px;cursor:pointer;font-size:.8rem;color:var(--color-text, #333);line-height:1.4;transition:background .15s,border-color .15s}.format-btn:hover{background:var(--color-bg, #f4f4f4);border-color:var(--color-primary, #667eea)}.format-hint{font-size:.68rem;color:var(--color-text-muted, #999);margin-left:auto}.create-post{margin-bottom:16px}.create-post-input-row{display:flex;gap:10px;align-items:flex-start}.create-post-input-row textarea{flex:1}.create-post-actions{display:flex;gap:6px;align-items:center;flex:1}.create-post-type-btn{background:none;border:2px solid var(--color-border);border-radius:var(--border-radius-sm);padding:6px 10px;cursor:pointer;font-size:1.1rem;transition:all .2s ease}.create-post-type-btn:hover{border-color:var(--color-primary);transform:scale(1.1)}.create-post-type-btn.active{border-color:var(--color-primary);background:var(--color-primary)}.action-group{position:relative}.action-dropdown{position:absolute;bottom:calc(100% + 6px);left:0;background:var(--color-bg, white);border:1px solid var(--color-border, #e0e0e0);border-radius:10px;box-shadow:0 4px 16px #0000001f;z-index:100;min-width:170px;padding:4px 0;animation:fadeIn .12s ease}.action-dropdown button{display:flex;align-items:center;gap:8px;width:100%;padding:9px 14px;border:none;background:none;cursor:pointer;font-size:.88rem;color:var(--color-text, #333);text-align:left;white-space:nowrap;transition:background .1s}.action-dropdown button:hover{background:var(--color-bg-secondary, #f5f5f5)}.action-dropdown button:first-child{border-radius:10px 10px 0 0}.action-dropdown button:last-child{border-radius:0 0 10px 10px}.action-dropdown-backdrop{position:fixed;inset:0;z-index:99}.takeover-form{padding:4px 0}.takeover-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-weight:700;font-size:.95rem}.picker-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:12px;background:var(--color-surface);border-radius:var(--border-radius);border:2px solid var(--color-border);box-shadow:var(--shadow-card);margin-top:8px}.picker-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px;border-radius:var(--border-radius-sm);border:none;background:var(--color-bg);cursor:pointer;transition:all .15s ease;font-size:1.8rem}.picker-item:hover{transform:scale(1.15);background:var(--color-accent)}.picker-item-label{font-size:.65rem;font-weight:700;color:var(--color-text-muted)}.event-card{display:flex;gap:14px;align-items:flex-start}.event-icon{font-size:2.5rem;flex-shrink:0}.event-info{flex:1}.event-title{font-weight:800;font-size:1.05rem;margin-bottom:4px}.event-meta{color:var(--color-text-muted);font-size:.85rem;display:flex;flex-direction:column;gap:2px}.event-attendees{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:.85rem;color:var(--color-primary);font-weight:700}.event-templates{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}.event-template-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;border:2px solid var(--color-border);border-radius:12px;background:var(--color-bg);cursor:pointer;transition:all .2s}.event-template-btn:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-hover)}.template-emoji{font-size:1.6rem}.template-label{font-size:.78rem;font-weight:700;color:var(--color-text);text-align:center;line-height:1.2}.event-template-wrapper{position:relative}.template-delete-btn{position:absolute;top:-4px;right:-4px;width:18px;height:18px;border-radius:50%;background:#ff4757;color:#fff;border:none;font-size:.65rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;opacity:0;transition:opacity .15s}.event-template-wrapper:hover .template-delete-btn{opacity:1}.ai-generate-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:14px;padding:4px 12px;font-size:.72rem;font-weight:700;cursor:pointer;transition:all .2s;white-space:nowrap}.ai-generate-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #667eea66}.ai-generate-btn:disabled{opacity:.5;cursor:not-allowed}.save-template-link{background:none;border:none;color:var(--color-text-muted);font-size:.8rem;font-weight:700;cursor:pointer;padding:4px 0;transition:color .15s;text-align:left}.save-template-link:hover:not(:disabled){color:var(--color-primary)}.save-template-link:disabled{opacity:.4;cursor:not-allowed}.save-template-row{display:flex;gap:6px;align-items:center}.address-autocomplete-wrapper{position:relative;width:100%}.address-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--color-surface);border:2px solid var(--color-border);border-radius:12px;box-shadow:0 8px 24px #0000001f;margin-top:4px;z-index:10000;overflow:hidden;animation:slideUp .15s ease}.address-dropdown-item{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;cursor:pointer;transition:background .1s;border-bottom:1px solid var(--color-border)}.address-dropdown-item:last-of-type{border-bottom:none}.address-dropdown-item:hover,.address-dropdown-item.active{background:#54a0ff14}.address-dropdown-icon{font-size:1rem;margin-top:2px;flex-shrink:0}.address-dropdown-text{min-width:0;flex:1}.address-dropdown-label{font-weight:700;font-size:.88rem;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.address-dropdown-secondary{font-size:.78rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}.address-dropdown-footer{padding:4px 14px 6px;font-size:.68rem;color:var(--color-text-muted);text-align:right;opacity:.6;border-top:1px solid var(--color-border)}.event-action-btn{background:none;border:1.5px solid var(--color-border);cursor:pointer;font-size:.75rem;font-weight:700;color:var(--color-text-muted);padding:3px 8px;border-radius:12px;transition:all .15s}.event-action-btn:hover{color:var(--color-primary);border-color:var(--color-primary);background:#54a0ff0f}.event-action-btn.danger:hover{color:#ff4757;border-color:#ff4757;background:#fff0f0}.share-menu-wrapper{position:relative}.share-menu{position:absolute;top:100%;right:0;margin-top:6px;background:var(--color-surface);border:2px solid var(--color-border);border-radius:12px;box-shadow:0 8px 24px #0000001f;min-width:180px;z-index:100;overflow:hidden;animation:slideUp .15s ease}.share-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:none;background:none;cursor:pointer;font-size:.85rem;font-weight:600;color:var(--color-text);font-family:inherit;transition:background .1s;text-align:left}.share-menu-item:hover{background:#54a0ff14}.share-menu-item:not(:last-child){border-bottom:1px solid var(--color-border)}.share-menu-icon{font-size:1.1rem;width:22px;text-align:center;flex-shrink:0}.share-email-form{padding:12px;display:flex;flex-direction:column;gap:8px}.share-email-input{font-size:.85rem!important;padding:8px 10px!important}.share-email-success{text-align:center;color:#27ae60;font-weight:700;padding:12px;font-size:.9rem}.rsvp-buttons{display:flex;gap:6px;margin-top:10px}.rsvp-btn{flex:1;padding:7px 0;border:2px solid var(--color-border);border-radius:20px;background:none;font-size:.8rem;font-weight:700;cursor:pointer;transition:all .2s;color:var(--color-text-muted)}.rsvp-btn:hover{transform:translateY(-1px)}.rsvp-btn.going:hover,.rsvp-btn.going.active{background:#2ed573;border-color:#2ed573;color:#fff}.rsvp-btn.maybe:hover,.rsvp-btn.maybe.active{background:#ffa502;border-color:#ffa502;color:#fff}.rsvp-btn.not-going:hover,.rsvp-btn.not-going.active{background:#ff4757;border-color:#ff4757;color:#fff}.rsvp-details-toggle{background:none;border:none;color:var(--color-text-muted);font-size:.78rem;font-weight:700;cursor:pointer;padding:0;transition:color .15s}.rsvp-details-toggle:hover{color:var(--color-primary)}.rsvp-breakdown{margin-top:8px;padding:8px 10px;background:var(--color-bg);border-radius:10px;border:1px solid var(--color-border);font-size:.82rem}.rsvp-row{display:flex;align-items:center;gap:8px;padding:3px 0}.rsvp-label{font-weight:700;min-width:80px}.rsvp-label.going{color:#2ed573}.rsvp-label.maybe{color:#ffa502}.rsvp-detail{display:flex;gap:10px;color:var(--color-text-muted)}.rsvp-section{margin-bottom:6px}.rsvp-section:last-child{margin-bottom:0}.rsvp-per-invite{margin-top:4px;padding-left:8px;border-left:2px solid var(--color-border)}.rsvp-invite-row{display:flex;justify-content:space-between;align-items:center;padding:2px 0;font-size:.78rem}.rsvp-invite-name{color:var(--color-text);font-weight:600}.rsvp-invite-counts{color:var(--color-text-muted);font-weight:500}.guest-count-picker{margin-top:8px;padding:10px 12px;background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px}.guest-count-title{font-size:.85rem;font-weight:700;margin-bottom:8px}.guest-count-rows{display:flex;flex-direction:column;gap:6px}.guest-count-row{display:flex;align-items:center;justify-content:space-between;font-size:.85rem}.guest-count-controls{display:flex;align-items:center;gap:0}.guest-count-controls button{width:28px;height:28px;border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;font-size:1rem;font-weight:700;display:flex;align-items:center;justify-content:center;transition:background .15s}.guest-count-controls button:first-child{border-radius:6px 0 0 6px}.guest-count-controls button:last-child{border-radius:0 6px 6px 0}.guest-count-controls button:hover{background:var(--color-border)}.guest-count-value{width:32px;text-align:center;font-weight:800;font-size:.9rem;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);height:28px;line-height:28px}.shared-event-page{min-height:100vh;display:flex;justify-content:center;align-items:flex-start;padding:40px 16px;background:linear-gradient(135deg,#667eea,#764ba2);font-family:Nunito,sans-serif}.shared-event-card{width:100%;max-width:480px;background:#fff;border-radius:20px;padding:28px 24px;box-shadow:0 20px 60px #0003;color:#333}.shared-event-details{display:flex;flex-direction:column;gap:6px;padding:12px 16px;background:#f8f9fa;border-radius:12px;margin-bottom:16px}.shared-detail{font-size:.92rem}.shared-event-summary{display:flex;gap:8px;margin-bottom:16px}.summary-stat{flex:1;text-align:center;padding:12px 8px;border-radius:12px;background:#f8f9fa}.summary-stat.going{border:2px solid #2ed573}.summary-stat.maybe{border:2px solid #ffa502}.summary-stat.not-going{border:2px solid #ff4757}.summary-num{font-size:1.5rem;font-weight:800}.summary-stat.going .summary-num{color:#2ed573}.summary-stat.maybe .summary-num{color:#ffa502}.summary-stat.not-going .summary-num{color:#ff4757}.summary-label{font-size:.75rem;font-weight:700;color:#666;text-transform:uppercase}.summary-sub{display:flex;flex-direction:column;gap:2px;font-size:.72rem;color:#888;margin-top:4px}.shared-filter{display:flex;gap:6px;margin-bottom:12px}.filter-pill{padding:5px 14px;border:2px solid #e0e0e0;border-radius:20px;background:none;font-size:.8rem;font-weight:700;cursor:pointer;color:#666;transition:all .15s}.filter-pill.active{background:#667eea;border-color:#667eea;color:#fff}.shared-attendee-group{margin-bottom:12px}.shared-attendee-group h3{font-size:.85rem;margin:0 0 6px;color:#555}.shared-attendee{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;border-radius:8px;font-size:.85rem}.shared-attendee:nth-child(2n){background:#f8f9fa}.age-pill{font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:10px;text-transform:uppercase}.age-pill.adult{background:#e8d5f5;color:#7c3aed}.age-pill.teen{background:#d1ecf1;color:#0c5460}.age-pill.kid{background:#fff3cd;color:#856404}.alert-card{border-left:4px solid var(--color-warning);position:relative;overflow:hidden}.alert-card.alert-active{animation:alert-active-flash 3s ease-in-out infinite}.alert-card.urgent{border-left-color:var(--color-danger);background:linear-gradient(135deg,rgba(231,76,60,.08),rgba(241,196,15,.04),transparent);box-shadow:0 0 12px #e74c3c26;animation:alert-urgent-pulse 2s ease-in-out infinite}.alert-card.important{border-left-color:var(--color-warning);background:linear-gradient(135deg,rgba(241,196,15,.06),transparent);box-shadow:0 0 8px #f1c40f1a;animation:alert-important-pulse 2.5s ease-in-out infinite}.alert-card.normal{background:linear-gradient(135deg,rgba(46,204,113,.04),transparent)}@keyframes alert-active-flash{0%,to{opacity:1}50%{opacity:.85}}@keyframes alert-urgent-pulse{0%,to{box-shadow:0 0 12px #e74c3c26}50%{box-shadow:0 0 24px #e74c3c66,0 0 48px #e74c3c26}}@keyframes alert-important-pulse{0%,to{box-shadow:0 0 8px #f1c40f1a}50%{box-shadow:0 0 16px #f1c40f40}}.alert-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.alert-time-remaining{font-size:.72rem;font-weight:700;color:var(--color-text-muted);background:var(--color-bg);padding:2px 8px;border-radius:10px;white-space:nowrap}.pinned-alerts{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.alert-category{font-size:.75rem;font-weight:800;text-transform:uppercase;color:var(--color-text-muted);padding:2px 8px;background:var(--color-bg);border-radius:6px}.alert-title{font-weight:800;font-size:1rem}.alert-content{color:var(--color-text-muted);font-size:.9rem;line-height:1.4}.challenge-card{border-left:4px solid #48dbfb;background:linear-gradient(135deg,rgba(72,219,251,.04),rgba(254,202,87,.03),transparent);position:relative}.challenge-card-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.challenge-card-emoji{font-size:2rem}.challenge-card-title{font-weight:700;font-size:.95rem}.challenge-card-meta{font-size:.75rem;color:var(--color-text-muted)}.challenge-xp-badge{display:inline-block;background:linear-gradient(90deg,#feca57,#ff6b6b);color:#fff;font-weight:700;font-size:.7rem;padding:1px 6px;border-radius:10px}.challenge-card-participants{text-align:center;font-size:.75rem}.challenge-card-desc{font-size:.8rem;margin:0 0 8px;color:var(--color-text-muted)}.challenge-progress-bar{background:var(--color-bg);border-radius:8px;height:8px;overflow:hidden}.challenge-progress-fill{height:100%;background:linear-gradient(90deg,#48dbfb,#feca57);border-radius:8px;transition:width .3s ease}.challenge-progress-fill.completed{background:#2ecc71}.chat-fab{position:fixed;bottom:80px;right:20px;width:56px;height:56px;border-radius:50%;background:var(--gradient-chat);border:none;cursor:pointer;box-shadow:0 4px 20px #6c5ce766;z-index:90;display:flex;align-items:center;justify-content:center;font-size:1.6rem;transition:all .2s ease}.chat-fab:hover{transform:scale(1.1)}.chat-panel{position:fixed;top:0;right:0;bottom:0;width:360px;max-width:100vw;background:var(--color-surface);z-index:200;display:flex;flex-direction:column;box-shadow:-8px 0 30px #00000026;animation:slide-in-right .3s ease-out}.chat-panel-header{background:var(--gradient-chat);padding:16px;display:flex;align-items:center;gap:10px;color:#fff}.chat-panel-header h3{flex:1;font-size:1.1rem}.chat-close-btn{background:#fff3;border:none;color:#fff;width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:background .2s}.chat-close-btn:hover{background:#ffffff4d}.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}.chat-bubble{max-width:85%;padding:10px 14px;border-radius:var(--border-radius);font-size:.9rem;line-height:1.4;animation:fade-in .2s ease-out;word-wrap:break-word}.chat-bubble.user{align-self:flex-end;background:var(--gradient-button);color:#fff;border-bottom-right-radius:4px}.chat-bubble.assistant{align-self:flex-start;background:var(--color-bg);color:var(--color-text);border-bottom-left-radius:4px;border:2px solid var(--color-border)}.action-card{border-radius:12px;padding:10px 14px;font-size:.85rem;border:2px solid var(--color-border);background:var(--color-bg);max-width:100%}.action-card-success,.action-card-error{display:flex;align-items:center;gap:8px}.action-card-error{border-color:#e74c3c;background:#ffeaea}.action-card-icon{font-size:1.1rem;flex-shrink:0}.action-card-header{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-weight:600}.action-card-label{font-size:.8rem;color:var(--color-text-muted, #666)}.action-card-body{padding-left:4px}.action-card-body strong{display:block;margin-bottom:2px}.action-card-content{margin:0;white-space:pre-wrap;word-break:break-word}.action-card-meta{font-size:.75rem;color:var(--color-text-muted, #999);margin-top:4px;display:block}.action-card-items{display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto}.action-card-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;background:var(--color-bg-hover, #f5f5f5);font-size:.8rem}.action-card-item-unread{background:#e8f4fd;border-left:3px solid #3498db}.action-card-item-text{flex:1;overflow:hidden;text-overflow:ellipsis}.action-card-item-badge{flex-shrink:0;font-size:.7rem;padding:2px 8px;border-radius:10px;background:var(--gradient-button);color:#fff}.action-card-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.8rem;flex-shrink:0}.action-card-confirm{border-color:#f39c12;background:#fef9e7}.action-card-confirm-summary{display:flex;align-items:center;gap:8px;margin-bottom:10px}.action-card-confirm-buttons{display:flex;gap:8px}.confirm-action-btn,.cancel-action-btn{flex:1;padding:8px 12px;border:none;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.confirm-action-btn{background:#27ae60;color:#fff}.confirm-action-btn:hover{background:#219a52}.confirm-action-btn:disabled{opacity:.5;cursor:not-allowed}.cancel-action-btn{background:#e0e0e0;color:#333}.cancel-action-btn:hover{background:#ccc}.cancel-action-btn:disabled{opacity:.5;cursor:not-allowed}.voice-btn{width:36px;height:36px;border-radius:50%;border:none;background:none;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:.6;transition:all .2s ease;padding:0;flex-shrink:0}.voice-btn:hover{opacity:1;transform:scale(1.1)}.voice-btn.listening{opacity:1;color:#e74c3c;animation:voice-pulse 1.2s ease-in-out infinite}@keyframes voice-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.chat-input-container{padding:12px;border-top:2px solid var(--color-border);display:flex;gap:8px}.chat-input-container input{flex:1}.chat-send-btn{width:42px;height:42px;border-radius:50%;background:var(--gradient-button);border:none;color:#fff;font-size:1.2rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.chat-send-btn:hover{transform:scale(1.1)}.chat-send-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.chat-overlay{position:fixed;inset:0;background:#0000004d;z-index:199;animation:fade-in .2s ease-out}.typing-indicator{display:flex;gap:4px;padding:10px 14px;align-self:flex-start}.typing-dot{width:8px;height:8px;background:var(--color-text-muted);border-radius:50%;animation:float 1.4s ease-in-out infinite}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}.notif-bell{position:relative;background:none;border:none;cursor:pointer;font-size:1.5rem;padding:4px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.notif-badge{position:absolute;top:-4px;right:-4px;background:var(--color-danger);color:#fff;font-size:.65rem;font-weight:800;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;animation:pulse-badge 2s ease-in-out infinite;font-family:Nunito,sans-serif}.notif-dropdown{position:absolute;top:100%;right:0;width:320px;max-height:400px;overflow-y:auto;background:var(--color-surface);border-radius:var(--border-radius);box-shadow:0 8px 30px #00000026;border:2px solid var(--color-border);z-index:150;animation:slide-up .2s ease-out}.notif-item{padding:12px 16px;display:flex;gap:10px;align-items:flex-start;border-bottom:1px solid var(--color-border);cursor:pointer;transition:background .15s}.notif-item:hover{background:var(--color-bg)}.notif-item.unread{background:#ff6b6b0d}.notif-emoji{font-size:1.3rem;flex-shrink:0}.notif-content{flex:1}.notif-title{font-weight:700;font-size:.85rem}.notif-message{font-size:.8rem;color:var(--color-text-muted);margin-top:2px}.notif-time{font-size:.7rem;color:var(--color-text-light);margin-top:4px}.notif-empty{padding:24px;text-align:center;color:var(--color-text-muted);font-size:.9rem}.toast-container{position:fixed;top:70px;right:20px;z-index:300;display:flex;flex-direction:column;gap:8px}.toast{background:var(--color-surface);border-radius:var(--border-radius);padding:12px 16px;box-shadow:0 8px 30px #00000026;border:2px solid var(--color-border);display:flex;align-items:center;gap:10px;min-width:280px;max-width:360px;animation:toast-in .5s ease-out}.toast.exiting{animation:toast-out .3s ease-in forwards}.theme-picker{position:relative}.theme-picker-btn{display:flex;align-items:center;justify-content:center;padding:4px}.theme-dot-mini{display:block;width:22px;height:22px;border-radius:50%;border:2px solid rgba(255,255,255,.6)}.theme-dot{display:block;width:20px;height:20px;border-radius:50%;border:2px solid rgba(0,0,0,.1);flex-shrink:0}.theme-dot.rainbow,.theme-dot-mini.rainbow{background:linear-gradient(135deg,#ff6b6b,#feca57,#48dbfb)}.theme-dot.ocean,.theme-dot-mini.ocean{background:linear-gradient(135deg,#0984e3,#00cec9)}.theme-dot.space,.theme-dot-mini.space{background:linear-gradient(135deg,#7f5af0,#2cb67d)}.theme-dot.forest,.theme-dot-mini.forest{background:linear-gradient(135deg,#27ae60,#f39c12)}.theme-dot.princess,.theme-dot-mini.princess{background:linear-gradient(135deg,#ec4899,#a855f7,#fbbf24)}.theme-dot.fairy,.theme-dot-mini.fairy{background:linear-gradient(135deg,#a78bfa,#34d399,#f9a8d4)}.theme-dot.candy,.theme-dot-mini.candy{background:linear-gradient(135deg,#f472b6,#38bdf8,#a3e635)}.theme-dot.superhero,.theme-dot-mini.superhero{background:linear-gradient(135deg,#ef4444,#3b82f6,#facc15)}.theme-dot.dinosaur,.theme-dot-mini.dinosaur{background:linear-gradient(135deg,#16a34a,#ca8a04,#ea580c)}.theme-dot.pirate,.theme-dot-mini.pirate{background:linear-gradient(135deg,#1c1917,#d97706,#fbbf24)}.theme-dot.midnight,.theme-dot-mini.midnight{background:linear-gradient(135deg,#6366f1,#8b5cf6,#06b6d4)}.theme-dot.slate,.theme-dot-mini.slate{background:linear-gradient(135deg,#475569,#64748b,#0ea5e9)}.theme-dot.rose-gold,.theme-dot-mini.rose-gold{background:linear-gradient(135deg,#be185d,#d4a574)}.theme-dot.monochrome,.theme-dot-mini.monochrome{background:linear-gradient(135deg,#171717,#737373)}.theme-picker-menu{position:absolute;top:calc(100% + 6px);right:0;background:var(--color-bg, white);border:1px solid var(--color-border, #e0e0e0);border-radius:12px;box-shadow:0 6px 20px #00000026;padding:6px;z-index:200;min-width:190px;max-height:420px;overflow-y:auto;animation:dropdown-in .15s ease}.theme-picker-category{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.8px;color:var(--color-text-muted, #999);padding:8px 12px 2px;margin-top:4px}.theme-picker-category:first-child{margin-top:0}.theme-picker-option{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border:none;background:none;cursor:pointer;border-radius:8px;font-size:.85rem;font-weight:600;color:var(--color-text, #333);font-family:Nunito,sans-serif;transition:background .12s}.theme-picker-option:hover,.theme-picker-option.active{background:var(--color-bg-secondary, #f0f0f0)}.theme-check{margin-left:auto;color:var(--color-primary, #667eea);font-weight:700}.user-setup{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;background:var(--gradient-header);background-size:300% 300%;animation:rainbow-bg 8s ease infinite}.setup-card{background:#fff;border-radius:var(--border-radius-lg);padding:32px;max-width:440px;width:100%;box-shadow:0 16px 60px #00000026}.setup-title{text-align:center;font-size:2rem;margin-bottom:4px;color:var(--color-primary)}.setup-subtitle{text-align:center;color:#636e72;margin-bottom:24px;font-weight:600}.avatar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}.avatar-option{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px;border-radius:var(--border-radius-sm);border:3px solid var(--color-border);background:var(--color-bg);cursor:pointer;transition:all .2s ease;font-size:1.8rem}.avatar-option:hover{transform:scale(1.08);border-color:var(--color-primary)}.avatar-option.selected{border-color:var(--color-primary);background:#ff6b6b1a;transform:scale(1.05)}.avatar-option-label{font-size:.65rem;font-weight:700;color:var(--color-text-muted)}.color-grid{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0;justify-content:center}.color-option{width:32px;height:32px;border-radius:50%;border:3px solid transparent;cursor:pointer;transition:all .2s ease}.color-option:hover{transform:scale(1.15)}.color-option.selected{border-color:var(--color-text);transform:scale(1.1)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;gap:16px}.loading-dots{display:flex;gap:8px}.loading-dot{width:12px;height:12px;border-radius:50%;background:var(--color-primary);animation:float 1.4s ease-in-out infinite}.loading-dot:nth-child(2){animation-delay:.2s;background:var(--color-secondary)}.loading-dot:nth-child(3){animation-delay:.4s;background:var(--color-accent)}.loading-text{font-weight:700;color:var(--color-text-muted)}.empty-state{text-align:center;padding:40px 20px;color:var(--color-text-muted)}.empty-state-emoji{font-size:3rem;margin-bottom:12px}.empty-state-text{font-weight:700;font-size:1.1rem}.create-form{margin-bottom:16px}.form-group{margin-bottom:12px}.form-label{font-weight:700;font-size:.85rem;margin-bottom:4px;display:block;color:var(--color-text-muted)}.form-row{display:flex;gap:10px}.form-row>*{flex:1}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.section-title{font-size:1.2rem;display:flex;align-items:center;gap:8px}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-text-light);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}.feed-badge{font-size:.7rem;font-weight:800;text-transform:uppercase;padding:2px 8px;border-radius:6px;color:#fff}.feed-badge.event{background:var(--color-secondary)}.feed-badge.alert{background:var(--color-warning);color:var(--color-text)}.auth-error{background:#ffe0e0;color:#d32f2f;padding:10px 14px;border-radius:10px;margin-bottom:12px;font-size:.9rem;text-align:center}.auth-switch{text-align:center;margin-top:16px;font-size:.9rem;color:var(--color-text-muted)}.auth-link{background:none;border:none;color:var(--color-primary);cursor:pointer;font-weight:700;font-size:.9rem;text-decoration:underline}.auth-link:hover{opacity:.8}.admin-overlay{position:fixed;inset:0;background:#000000a6;z-index:200;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:adminFadeIn .2s ease}@keyframes adminFadeIn{0%{opacity:0}to{opacity:1}}@keyframes adminSlideUp{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.admin-panel{background:#fff;border-radius:20px;width:95%;max-width:640px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 24px 48px #00000040,0 0 0 1px #ffffff1a;animation:adminSlideUp .25s ease}.admin-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.admin-header h2{margin:0;font-size:1.3rem;font-weight:800;color:#fff;letter-spacing:-.02em}.admin-close-btn{width:36px;height:36px;border-radius:50%;border:2px solid rgba(255,255,255,.3);background:#ffffff26;color:#fff;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.admin-close-btn:hover{background:#ffffff4d;border-color:#ffffff80;transform:scale(1.05)}.admin-tabs{display:flex;background:#f8f9fa;padding:6px;gap:4px;border-bottom:1px solid #eee}.admin-tab{flex:1;padding:10px 16px;border:none;background:transparent;cursor:pointer;font-size:.9rem;font-weight:700;color:#999;border-radius:10px;transition:all .2s}.admin-tab:hover{color:#666;background:#0000000a}.admin-tab.active{color:#667eea;background:#fff;box-shadow:0 2px 8px #00000014}.admin-content{padding:20px 24px;overflow-y:auto;flex:1}.admin-table{display:flex;flex-direction:column;gap:10px}.admin-row{display:flex;align-items:center;gap:10px;padding:14px 16px;background:#f8f9fa;border-radius:14px;border:1px solid #eef0f2;transition:all .15s}.admin-row:hover{background:#f0f2f5;border-color:#dde0e4}.icon-btn{background:none;border:none;cursor:pointer;padding:4px;border-radius:8px;transition:transform .2s}.icon-btn:hover{transform:scale(1.2)}.group-card{cursor:pointer;transition:all .2s ease}.group-card-header{display:flex;align-items:center;gap:12px}.group-icon{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;color:#fff;box-shadow:0 2px 8px #00000026}.group-name{font-weight:800;font-size:1rem}.group-meta{font-size:.8rem;color:var(--color-text-muted)}.group-desc{margin-top:8px;font-size:.85rem;color:var(--color-text-muted);line-height:1.4}.group-view-header{padding:16px;display:flex;align-items:center;gap:12px;border-radius:var(--border-radius);margin-bottom:0}.group-view-title{display:flex;align-items:center;gap:10px;flex:1}.group-back-btn,.group-leave-btn{background:#fff3;border:none;color:#fff;padding:6px 12px;border-radius:8px;cursor:pointer;font-weight:700;font-size:.85rem;transition:background .2s}.group-back-btn:hover,.group-leave-btn:hover{background:#ffffff4d}.group-leave-btn{background:#ff00004d}.group-leave-btn:hover{background:#ff000080}.group-tabs{display:flex;border-bottom:2px solid var(--color-border);margin-bottom:12px}.group-tab{flex:1;padding:10px;border:none;background:none;cursor:pointer;font-size:.9rem;font-weight:700;color:var(--color-text-muted);transition:all .2s;font-family:Nunito,sans-serif}.group-tab.active{color:var(--color-primary);border-bottom:3px solid var(--color-primary)}.install-banner{position:fixed;bottom:60px;left:12px;right:12px;background:var(--color-surface);border:2px solid var(--color-primary);border-radius:var(--border-radius);padding:12px 16px;display:flex;align-items:center;gap:8px;box-shadow:0 -4px 20px #00000026;z-index:110;font-weight:700;font-size:.85rem;animation:slide-up .3s ease-out}.install-banner.update-banner{border-color:#27ae60;background:linear-gradient(135deg,#d4efdf,var(--color-surface))}.search-bar-wrapper{position:relative;margin-bottom:12px}.search-input{width:100%;padding-right:32px}.search-spinner{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:16px;height:16px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .6s linear infinite}.search-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--color-surface);border:2px solid var(--color-border);border-radius:12px;box-shadow:0 8px 24px #0000001f;z-index:50;max-height:400px;overflow-y:auto;margin-top:4px}.search-empty{text-align:center;padding:20px;color:var(--color-text-muted);font-size:.85rem}.search-section{padding:4px 0}.search-section-title{font-size:.7rem;font-weight:800;text-transform:uppercase;color:var(--color-text-muted);padding:4px 12px;letter-spacing:.5px}.search-result-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border:none;background:none;cursor:pointer;width:100%;text-align:left;transition:background .15s}.search-result-item:hover{background:var(--color-border)}.search-result-type{font-size:1.1rem;flex-shrink:0}.search-result-info{display:flex;flex-direction:column;min-width:0}.search-result-text{font-size:.85rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-meta{font-size:.75rem;color:var(--color-text-muted)}.event-calendar{background:var(--color-surface);border-radius:var(--border-radius);padding:16px;border:2px solid var(--color-border)}.cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.cal-nav-btn{background:none;border:none;font-size:1.2rem;cursor:pointer;padding:4px 10px;border-radius:8px;color:var(--color-text);transition:background .15s}.cal-nav-btn:hover{background:var(--color-border)}.cal-month-label{font-family:Fredoka One,cursive;font-size:1.1rem;background:none;border:none;cursor:pointer;color:var(--color-text)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal-weekday{text-align:center;font-size:.75rem;font-weight:700;color:var(--color-text-muted);padding:4px 0}.cal-cell{min-height:48px;padding:2px;border-radius:6px;display:flex;flex-direction:column;align-items:center}.cal-cell.today{background:#ff6b6b1a;border:1px solid var(--color-primary)}.cal-cell.has-events{cursor:pointer}.cal-day-num{font-size:.8rem;font-weight:700}.cal-events{display:flex;gap:1px;flex-wrap:wrap;justify-content:center}.cal-event-dot{background:none;border:none;cursor:pointer;font-size:.7rem;padding:0;line-height:1}.cal-more{font-size:.6rem;color:var(--color-text-muted)}.cal-upcoming{margin-top:12px;border-top:1px solid var(--color-border);padding-top:8px}.cal-upcoming-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border:none;background:none;cursor:pointer;width:100%;text-align:left;border-radius:8px;transition:background .15s}.cal-upcoming-item:hover{background:var(--color-border)}.cal-upcoming-emoji{font-size:1.3rem}.cal-upcoming-info{display:flex;flex-direction:column}.cal-upcoming-title{font-weight:700;font-size:.85rem}.cal-upcoming-date{font-size:.75rem;color:var(--color-text-muted)}.dm-conversation-list{display:flex;flex-direction:column}.dm-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px}.dm-header h2{margin:0;font-size:1.2rem}.dm-empty{text-align:center;padding:40px 16px;color:var(--color-text-muted)}.dm-convo-item{display:flex;align-items:center;gap:10px;padding:10px 16px;border:none;background:none;cursor:pointer;text-align:left;width:100%;transition:background .15s;border-bottom:1px solid var(--color-border)}.dm-convo-item:hover{background:var(--color-surface)}.dm-convo-info{flex:1;min-width:0}.dm-convo-name{font-weight:700;font-size:.9rem;display:flex;align-items:center;gap:6px}.dm-convo-preview{font-size:.8rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dm-convo-time{font-size:.75rem;color:var(--color-text-muted);flex-shrink:0}.dm-unread-badge{background:var(--color-primary);color:#fff;font-size:.7rem;padding:1px 6px;border-radius:10px;font-weight:800}.dm-chat-window{display:flex;flex-direction:column;height:calc(100vh - 160px);max-height:600px}.dm-chat-header{display:flex;align-items:center;gap:8px;padding:10px 16px;border-bottom:1px solid var(--color-border)}.dm-chat-name{font-weight:700;font-size:1rem}.dm-chat-messages{flex:1;overflow-y:auto;padding:12px 16px;display:flex;flex-direction:column;gap:6px}.dm-message{display:flex;flex-direction:column;max-width:75%}.dm-message.mine{align-self:flex-end;align-items:flex-end}.dm-message.theirs{align-self:flex-start;align-items:flex-start}.dm-message-bubble{padding:8px 12px;border-radius:16px;font-size:.9rem;line-height:1.4;word-wrap:break-word}.dm-message.mine .dm-message-bubble{background:var(--color-primary);color:#fff;border-bottom-right-radius:4px}.dm-message.theirs .dm-message-bubble{background:var(--color-surface);border:1px solid var(--color-border);border-bottom-left-radius:4px}.dm-message-time{font-size:.65rem;color:var(--color-text-muted);margin-top:2px}.avatar-wrapper{position:relative;display:inline-block}.online-dot{position:absolute;bottom:1px;right:1px;width:10px;height:10px;border-radius:50%;border:2px solid var(--color-bg, #fff);z-index:1}.online-dot.online{background:#22c55e}.online-dot.offline{background:#9ca3af}.dm-typing-bubble{background:var(--color-bg-secondary, #e8e8e8);padding:10px 14px;display:flex;gap:4px;min-width:50px}.dm-read-receipt{font-size:.7rem;opacity:.7}.dm-chat-input{display:flex;gap:8px;padding:10px 16px;border-top:1px solid var(--color-border)}.dm-chat-input .fun-input{flex:1}.dm-action-btn{background:none;border:none;font-size:1.1rem;cursor:pointer;padding:4px;opacity:.6;transition:opacity .15s}.dm-action-btn:hover{opacity:1}.dm-action-btn:disabled{opacity:.3;cursor:not-allowed}.dm-media-preview{display:flex;gap:6px;align-items:center;padding:6px 16px;flex-wrap:wrap;border-top:1px solid var(--color-border);background:var(--color-card-bg)}.dm-media-thumb{position:relative;border-radius:6px;overflow:hidden}.dm-media-thumb img{width:48px;height:48px;object-fit:cover;border-radius:6px}.dm-media-label{font-size:.75rem;background:var(--color-border);padding:4px 8px;border-radius:6px;color:var(--color-text-muted)}.dm-media-remove{background:var(--color-danger, #ff4757);color:#fff;border:none;border-radius:50%;width:20px;height:20px;font-size:.7rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.dm-uploading{padding:4px 16px;font-size:.75rem;color:var(--color-text-muted)}.dm-msg-images{display:flex;gap:4px;flex-wrap:wrap;margin-top:4px}.dm-msg-img{max-width:200px;max-height:200px;border-radius:6px;cursor:pointer;object-fit:cover}.dm-msg-video{max-width:260px;border-radius:6px;margin-top:4px}.dm-msg-audio{max-width:240px;margin-top:4px}.dm-msg-files{display:flex;flex-direction:column;gap:2px;margin-top:4px}.dm-msg-file{font-size:.8rem;color:var(--color-primary);text-decoration:underline;word-break:break-all}.group-dropdown-menu{position:absolute;top:100%;right:0;background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 12px #00000026;min-width:160px;z-index:100;overflow:hidden;margin-top:4px}.group-dropdown-item{display:block;width:100%;padding:10px 16px;border:none;background:none;text-align:left;font-size:.85rem;cursor:pointer;color:var(--color-text);transition:background .15s}.group-dropdown-item:hover{background:var(--color-border)}.group-dropdown-item.danger{color:#ff4757}.group-dropdown-item.danger:hover{background:#ff47571a}.group-menu-btn{background:#fff3;border:none;color:#fff;border-radius:6px;padding:6px 10px;cursor:pointer;font-size:1.1rem}.group-menu-btn:hover{background:#ffffff4d}.profile-overlay{position:fixed;inset:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:1200;padding:20px}.profile-modal{max-width:500px;width:100%;max-height:85vh;overflow-y:auto;position:relative;padding:24px}.profile-close{position:absolute;top:12px;right:12px;background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--color-text-muted);padding:4px 8px;border-radius:6px}.profile-close:hover{background:var(--color-border)}div:hover>.avatar-hover-overlay{opacity:1!important}.report-modal{position:fixed;inset:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:1200;padding:20px}.report-form{background:var(--color-surface);border-radius:16px;padding:24px;max-width:400px;width:100%}.report-reasons{display:flex;flex-direction:column;gap:6px;margin:12px 0}.report-reason{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;border:1px solid var(--color-border);cursor:pointer;font-size:.9rem;transition:all .15s}.report-reason:hover{border-color:var(--color-primary)}.report-reason.selected{border-color:var(--color-primary);background:#ff6b6b1a}.landing-page{min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2)}.landing-hero{text-align:center;padding:60px 20px 40px;color:#fff}.landing-title{font-family:Fredoka One,cursive;font-size:3rem;margin:0;text-shadow:2px 4px 8px rgba(0,0,0,.2)}.landing-tagline{font-size:1.2rem;margin:12px 0 32px;opacity:.9}.landing-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.landing-cta .fun-btn{min-width:140px;font-size:1rem;padding:12px 24px}.landing-cta .fun-btn.outline{background:transparent;border:2px solid white;color:#fff}.landing-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;padding:40px 20px;max-width:900px;margin:0 auto}.landing-feature{background:#ffffff26;backdrop-filter:blur(10px);border-radius:16px;padding:24px;text-align:center;color:#fff}.landing-feature-emoji{font-size:2.5rem;margin-bottom:12px}.landing-feature-title{font-family:Fredoka One,cursive;font-size:1.1rem;margin-bottom:8px}.landing-feature-desc{font-size:.85rem;opacity:.8}.landing-footer{text-align:center;padding:20px;color:#fff9;font-size:.8rem}.landing-footer a{color:#fffc;text-decoration:underline}.legal-page{max-width:700px;margin:0 auto;padding:40px 20px}.legal-page h1{font-family:Fredoka One,cursive;font-size:1.8rem;margin-bottom:8px}.legal-page h2{font-size:1.1rem;margin:24px 0 8px}.legal-page p{line-height:1.6;color:var(--color-text-muted);margin:8px 0;font-size:.9rem}.legal-page ul{padding-left:20px;color:var(--color-text-muted);font-size:.9rem;line-height:1.6}.modal-overlay{position:fixed;inset:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:1200;padding:16px}.modal-content{background:var(--color-surface);border-radius:20px;width:100%;box-shadow:0 12px 48px #0003}.profile-header{display:flex;gap:16px;align-items:center;margin-bottom:16px}.profile-info{flex:1}.profile-name{font-family:Fredoka One,cursive;font-size:1.3rem;display:flex;align-items:center;gap:8px}.profile-role-badge{font-family:Nunito,sans-serif;font-size:.7rem;background:linear-gradient(135deg,#ff6b6b,#feca57);color:#fff;padding:2px 8px;border-radius:10px;font-weight:700}.profile-meta{display:flex;gap:12px;font-size:.8rem;color:var(--color-text-muted);margin-top:4px}.profile-bio{font-size:.9rem;line-height:1.5;margin-bottom:12px;white-space:pre-wrap}.profile-details{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.profile-detail-item{font-size:.85rem;color:var(--color-text-muted)}.profile-detail-item a{color:var(--color-primary);text-decoration:none}.profile-detail-item a:hover{text-decoration:underline}.profile-actions{display:flex;gap:8px;margin-bottom:16px}.profile-edit-form{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.profile-posts{border-top:1px solid var(--color-border);padding-top:12px}.profile-section-title{font-weight:700;margin-bottom:8px;font-size:.9rem}.profile-post-item{display:flex;gap:8px;align-items:center;padding:6px 0;font-size:.85rem}.profile-post-content{flex:1;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-post-time{color:var(--color-text-muted);font-size:.75rem;flex-shrink:0}.email-verify-banner{background:linear-gradient(135deg,#feca57,#ff9ff3);color:#2d3436;padding:8px 16px;display:flex;align-items:center;justify-content:center;gap:12px;font-size:.85rem;font-weight:600}.email-verify-banner button{background:#fff;border:none;padding:4px 12px;border-radius:8px;cursor:pointer;font-weight:700;font-size:.8rem}.mention-tag{color:var(--color-primary);font-weight:600;cursor:pointer}.mention-tag:hover{text-decoration:underline}.hashtag-tag{color:#0abde3;font-weight:600;cursor:pointer}.hashtag-tag:hover{text-decoration:underline}.post-card.pinned{border:2px solid #feca57}.pin-badge{font-size:.75rem;font-weight:700;color:#f39c12;margin-bottom:6px}.post-action-btn{background:none;border:none;cursor:pointer;font-size:.85rem;color:var(--color-text-muted);padding:4px 6px;border-radius:6px;transition:all .15s}.post-action-btn:hover{background:var(--color-border)}.post-action-btn.danger:hover{color:#ff4757;background:#fff0f0}.post-report-menu{display:flex;flex-wrap:wrap;gap:6px;padding:8px 0}.post-report-option{background:var(--color-border);border:none;padding:4px 12px;border-radius:8px;cursor:pointer;font-size:.8rem;transition:all .15s}.post-report-option:hover{background:#ff6b6b;color:#fff}.scroll-sentinel{height:1px}.load-more-spinner{text-align:center;padding:16px;color:var(--color-text-muted);font-size:.85rem}.no-more-items{text-align:center;padding:16px;color:var(--color-text-muted);font-size:.85rem;font-style:italic}.fun-btn.danger{background:#ff4757}.fun-btn.danger:hover{background:#ff6b81}.notif-prefs{display:flex;flex-direction:column;gap:10px}.notif-pref-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.notif-pref-label{font-size:.9rem}.toggle-switch{position:relative;width:44px;height:24px;cursor:pointer}.toggle-switch input{display:none}.toggle-slider{position:absolute;inset:0;background:var(--color-border);border-radius:24px;transition:.2s}.toggle-slider:before{content:"";position:absolute;width:18px;height:18px;bottom:3px;left:3px;background:#fff;border-radius:50%;transition:.2s}.toggle-switch input:checked+.toggle-slider{background:#48dbfb}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.profile-badges-section{margin:12px 0;padding:10px;background:var(--color-bg-secondary, #f8f9fa);border-radius:10px}.profile-reputation{font-size:.85rem;color:var(--color-text-muted);margin-bottom:6px}.badge-list{display:flex;flex-wrap:wrap;gap:6px}.badge-item{display:inline-flex;align-items:center;gap:4px;background:linear-gradient(135deg,#feca57,#ff6b6b);color:#fff;padding:3px 10px;border-radius:12px;font-size:.75rem;font-weight:700}@media (max-width: 768px){.admin-panel{width:95%;max-width:95%}.admin-overlay{padding-top:20px}.toast{min-width:240px;max-width:300px}.toast-container{right:10px;top:60px}.picker-grid{grid-template-columns:repeat(5,1fr)}}@media (max-width: 480px){.app-main{padding:10px 10px 80px}.mobile-header,.header{padding:10px 12px}.header-title{font-size:1.1rem;gap:4px}.header-title h1{font-size:1.1rem!important}.header-right{gap:6px}.theme-dot-mini{width:18px;height:18px}.card{padding:12px;margin-bottom:10px}.post-content{font-size:.95rem}.post-sticker{font-size:3rem;padding:10px}.reaction-counts-row{gap:3px}.reaction-badge{padding:2px 6px;font-size:.75rem}.reaction-trigger-btn{padding:4px 10px;font-size:.78rem}.event-card{gap:10px}.event-icon{font-size:2rem}.chat-panel{width:100vw}.chat-fab{bottom:74px;right:14px;width:50px;height:50px;font-size:1.3rem}.notif-dropdown{width:calc(100vw - 24px);right:-60px;max-height:60vh}.notif-bell{font-size:1.3rem}.setup-card{padding:20px;margin:0 10px}.setup-title{font-size:1.5rem}.avatar-grid{grid-template-columns:repeat(3,1fr);gap:8px}.avatar-option{font-size:1.5rem;padding:8px}.fun-btn{padding:8px 16px;font-size:.9rem}.fun-btn.small{padding:5px 10px;font-size:.8rem}.fun-input{padding:10px 12px;font-size:.95rem}.picker-grid{grid-template-columns:repeat(4,1fr);gap:6px}.picker-item{font-size:1.5rem;padding:6px}.bottom-nav{padding:6px 0 10px}.nav-item{padding:4px 12px;font-size:.65rem}.nav-item .nav-emoji{font-size:1.3rem}.admin-overlay{padding-top:10px;align-items:flex-start}.admin-panel{width:100%;max-width:100%;border-radius:0;max-height:100vh;height:100vh}.admin-header,.admin-content{padding:12px 16px}.admin-row{padding:8px 10px;gap:6px;flex-wrap:wrap}.admin-tab{padding:10px 8px;font-size:.85rem}.create-post-input-row{flex-direction:column}.create-post-actions{flex-wrap:wrap}.form-row{flex-direction:column;gap:8px}.toast-container{right:10px;left:10px;top:60px}.toast{min-width:auto;max-width:100%}.section-title{font-size:1rem}}@media (max-width: 360px){.header-title h1{font-size:1rem!important}.header-right{gap:4px}.avatar.small{width:28px;height:28px;font-size:.85rem}.nav-item{padding:4px 8px}.picker-grid{grid-template-columns:repeat(3,1fr)}}@supports (padding-bottom: env(safe-area-inset-bottom)){@media (max-width: 768px){.bottom-nav{padding-bottom:calc(12px + env(safe-area-inset-bottom))}.app-main{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.chat-fab{bottom:calc(80px + env(safe-area-inset-bottom))}}}@media (hover: none) and (pointer: coarse){.nav-item{min-height:44px}.reaction-trigger-btn{min-height:36px}.reaction-pick-btn{min-height:36px;min-width:36px}.icon-btn{min-width:40px;min-height:40px;display:flex;align-items:center;justify-content:center}.fun-btn,.poll-option{min-height:44px}}.tab-badge{position:absolute;top:-4px;right:-6px;background:#ff4757;color:#fff;font-size:.6rem;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 3px;line-height:1;pointer-events:none}.sidebar-nav-emoji .tab-badge{top:-6px;right:-8px}.upgrade-badge{display:inline-flex;align-items:center;gap:3px;background:linear-gradient(135deg,#f7971e,#ffd200);color:#1a1a1a;font-size:.7rem;font-weight:700;padding:2px 7px;border-radius:20px;cursor:pointer;white-space:nowrap}.upgrade-header-btn{display:inline-flex;align-items:center;gap:4px;background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff;font-size:.75rem;font-weight:700;padding:5px 12px;border-radius:20px;border:none;cursor:pointer;white-space:nowrap;font-family:Nunito,sans-serif;animation:upgrade-glow 2s ease-in-out infinite;transition:transform .15s}.upgrade-header-btn:hover{transform:scale(1.05)}@keyframes upgrade-glow{0%,to{box-shadow:0 0 6px #f39c124d}50%{box-shadow:0 0 14px #f39c1280}}.trial-badge{display:inline-flex;align-items:center;gap:4px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:.75rem;font-weight:700;padding:5px 12px;border-radius:20px;white-space:nowrap;font-family:Nunito,sans-serif}.upgrade-prompt{display:flex;align-items:center;gap:10px;background:linear-gradient(135deg,#fff8e7,#fff3cd);border:1.5px solid #ffd200;border-radius:12px;padding:10px 14px;margin:8px 0}.upgrade-prompt-icon{font-size:1.4rem;flex-shrink:0}.upgrade-prompt-text{flex:1;font-size:.85rem}.upgrade-btn{background:linear-gradient(135deg,#f7971e,#ffd200)!important;color:#1a1a1a!important;font-weight:700!important}.event-action-btn.locked{opacity:.7}.billing-section{margin-top:16px;border-top:1px solid var(--color-border);padding-top:14px}.billing-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.billing-title{font-weight:700;font-size:.95rem}.billing-renews{font-size:.78rem;color:var(--color-text-muted)}.upgrade-plans{margin-top:8px}.upgrade-plans-title{font-size:.85rem;font-weight:600;margin-bottom:8px}.upgrade-plan-cards{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:10px}.upgrade-plan-card{flex:1;min-width:130px;border:1.5px solid var(--color-border);border-radius:12px;padding:10px 12px;position:relative}.upgrade-plan-card.featured{border-color:#f7971e;background:#fff8e7}.plan-badge{position:absolute;top:-10px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#f7971e,#ffd200);color:#1a1a1a;font-size:.65rem;font-weight:700;padding:2px 8px;border-radius:20px;white-space:nowrap}.plan-name{font-weight:700;font-size:.9rem;margin-bottom:3px}.plan-desc{font-size:.75rem;color:var(--color-text-muted);margin-bottom:8px}.upgrade-features-list{display:flex;flex-wrap:wrap;gap:4px 12px}.upgrade-feature-item{font-size:.8rem;color:var(--color-text-muted)}.status-badge{display:inline-block;padding:1px 7px;border-radius:12px;font-size:.72rem;font-weight:700}.status-badge.active{background:#e8f5e9;color:#2e7d32}.status-badge.trialing{background:#e3f2fd;color:#1565c0}.status-badge.comped{background:#fff8e1;color:#f57f17}.status-badge.past_due{background:#fff3e0;color:#e65100}.status-badge.canceled{background:#fce4ec;color:#c62828}.admin-settings-section{background:var(--color-bg);border-radius:12px;padding:16px;border:1px solid var(--color-border)}.toggle-label{font-size:.88rem;cursor:pointer;user-select:none}.language-selector{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:8px;padding:4px 8px;font-size:.8rem;cursor:pointer;outline:none}.language-selector:focus{border-color:var(--color-primary)}.webhook-manager{padding:8px 0}.webhook-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.webhook-header h3{margin:0}.webhook-secret-banner{background:#fff3e0;border:1px solid #ffb74d;border-radius:10px;padding:12px 16px;margin-bottom:16px;display:flex;flex-direction:column;gap:8px}.webhook-secret-banner code{background:#fff;padding:6px 10px;border-radius:6px;font-size:.82rem;word-break:break-all;border:1px solid #e0e0e0}.webhook-secret-banner button{align-self:flex-start;background:var(--color-primary);color:#fff;border:none;border-radius:8px;padding:6px 14px;cursor:pointer;font-size:.82rem}.webhook-create-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:16px;margin-bottom:16px;display:flex;flex-direction:column;gap:10px}.webhook-create-form input{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;padding:8px 12px;font-size:.88rem;color:var(--color-text)}.webhook-events-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:6px}.webhook-event-checkbox{display:flex;align-items:center;gap:6px;font-size:.82rem;cursor:pointer}.webhook-empty{color:var(--color-text-secondary);font-size:.88rem;text-align:center;padding:32px 0}.webhook-list{display:flex;flex-direction:column;gap:12px}.webhook-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:14px 16px}.webhook-card.inactive{opacity:.6}.webhook-card-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.webhook-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.webhook-status-dot.active{background:#4caf50}.webhook-status-dot.inactive{background:#bdbdbd}.webhook-failures{color:#e53935;font-size:.75rem;margin-left:auto}.webhook-url{font-size:.82rem;color:var(--color-text-secondary);word-break:break-all;margin-bottom:8px}.webhook-events-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:8px}.webhook-event-tag{background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;padding:2px 8px;font-size:.72rem}.webhook-meta{font-size:.75rem;color:var(--color-text-secondary);margin-bottom:8px}.webhook-actions{display:flex;gap:8px}.webhook-actions button{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;padding:4px 12px;font-size:.78rem;cursor:pointer;color:var(--color-text)}.webhook-actions .btn-danger{color:#e53935;border-color:#e53935}.post-gif{margin-top:8px;border-radius:12px;overflow:hidden}.post-gif img{max-width:100%;max-height:400px;object-fit:contain;display:block;border-radius:12px}.post-meme{margin-top:8px;border-radius:12px;overflow:hidden}.post-meme img{max-width:100%;display:block;border-radius:12px}.meme-generator{margin-top:10px;border:1px solid var(--color-border);border-radius:14px;overflow:hidden;background:var(--color-card)}.meme-generator-header{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--color-border);background:var(--color-bg)}.meme-generator-title{font-weight:700;font-size:.92rem;flex:1}.meme-back-btn{background:none;border:none;cursor:pointer;color:var(--color-primary);font-size:.85rem;padding:2px 6px;border-radius:6px}.meme-back-btn:hover{background:var(--color-bg)}.meme-loading{text-align:center;padding:32px;color:var(--color-text-muted);font-size:.9rem}.meme-template-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px;max-height:340px;overflow-y:auto}.meme-template-item{background:none;border:2px solid transparent;border-radius:10px;cursor:pointer;padding:0;overflow:hidden;display:flex;flex-direction:column;align-items:center;transition:border-color .15s}.meme-template-item:hover{border-color:var(--color-primary)}.meme-template-item img{width:100%;height:80px;object-fit:cover;display:block}.meme-template-name{font-size:.68rem;color:var(--color-text-muted);padding:3px 4px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.meme-editor{display:flex;flex-direction:column;gap:10px;padding:12px}.meme-canvas-wrap{display:flex;justify-content:center;background:#111;border-radius:10px;overflow:hidden;min-height:80px}.meme-canvas{max-width:100%;display:block}.meme-text-inputs{display:flex;flex-direction:column;gap:6px}.meme-actions{display:flex;justify-content:flex-end}.carousel-wrap{position:relative;overflow:hidden;border-radius:14px;margin-top:8px;background:#000;aspect-ratio:16/9}.carousel-track{display:flex;height:100%;transition:transform .35s cubic-bezier(.4,0,.2,1)}.carousel-slide{flex:0 0 100%;height:100%;display:flex;align-items:center;justify-content:center}.carousel-slide img{max-width:100%;max-height:100%;object-fit:contain;display:block}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);background:#00000073;color:#fff;border:none;cursor:pointer;font-size:2rem;width:40px;height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;z-index:2;transition:background .15s;line-height:1}.carousel-btn:hover{background:#000000b3}.carousel-btn-prev{left:8px}.carousel-btn-next{right:8px}.carousel-dots{position:absolute;bottom:10px;left:50%;transform:translate(-50%);display:flex;gap:6px;z-index:2}.carousel-dot{width:8px;height:8px;border-radius:50%;background:#ffffff80;border:none;cursor:pointer;padding:0;transition:background .15s,transform .15s}.carousel-dot.active{background:#fff;transform:scale(1.3)}.carousel-counter{position:absolute;top:10px;right:12px;background:#00000080;color:#fff;font-size:.75rem;padding:2px 8px;border-radius:12px;z-index:2}.carousel-mode-toggle{margin-top:6px;font-size:.82rem;color:var(--color-text-muted);display:flex;align-items:center;gap:6px}.carousel-mode-toggle label{display:flex;align-items:center;gap:4px;cursor:pointer}.survey-builder{margin-top:10px}.survey-builder-question{background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;padding:10px 12px;margin-bottom:8px}.survey-builder-q-header{display:flex;align-items:center;gap:6px;margin-bottom:8px}.survey-builder-q-num{font-weight:700;font-size:.82rem;color:var(--color-primary);white-space:nowrap}.survey-type-select{background:var(--color-card);border:1px solid var(--color-border);border-radius:8px;padding:4px 8px;font-size:.78rem;color:var(--color-text);cursor:pointer}.survey-remove-q{background:none;border:none;cursor:pointer;color:var(--color-text-muted);font-size:.85rem;padding:2px 4px;border-radius:4px}.survey-remove-q:hover{background:var(--color-bg);color:#e53935}.survey-builder-options{padding-left:4px}.poll-advanced{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:10px;padding-top:8px;border-top:1px solid var(--color-border);font-size:.82rem;color:var(--color-text-muted)}.poll-advanced label{display:flex;align-items:center;gap:4px;cursor:pointer}.poll-voters{margin-left:auto;font-size:.72rem;color:var(--color-text-muted);background:var(--color-bg);border-radius:10px;padding:1px 6px}.poll-option.expired{opacity:.75;cursor:default}.survey-form{margin-top:6px}.survey-question{margin-bottom:14px}.survey-q-text{font-size:.9rem;font-weight:600;margin-bottom:8px}.survey-q-num{color:var(--color-primary);margin-right:4px}.survey-q-hint{font-weight:400;color:var(--color-text-muted);font-size:.78rem}.survey-options{display:flex;flex-direction:column;gap:6px}.survey-option{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--color-border);border-radius:8px;cursor:pointer;font-size:.88rem;transition:background .12s,border-color .12s}.survey-option:hover{background:var(--color-bg)}.survey-option.checked{border-color:var(--color-primary);background:rgba(var(--color-primary-rgb, 255,107,107),.08)}.survey-option input{margin:0}.survey-results{margin-top:8px}.survey-results-header{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:.9rem;margin-bottom:12px}.survey-total{font-size:.78rem;color:var(--color-text-muted);font-weight:400}.survey-result-question{margin-bottom:14px}.survey-result-option{display:flex;align-items:center;gap:8px;margin-bottom:6px;position:relative}.survey-result-bar-wrap{width:120px;height:8px;background:var(--color-border);border-radius:4px;overflow:hidden;flex-shrink:0}.survey-result-bar{height:100%;background:var(--color-primary);border-radius:4px;transition:width .4s}.survey-result-label{font-size:.85rem;flex:1}.survey-result-pct{font-size:.75rem;color:var(--color-text-muted);white-space:nowrap}.survey-result-text-answers{display:flex;flex-direction:column;gap:4px}.survey-text-answer{font-size:.83rem;color:var(--color-text-secondary);padding:4px 8px;background:var(--color-bg);border-radius:6px;font-style:italic}.feed-mode-tabs{display:flex;gap:4px;background:var(--color-card);border-radius:12px;padding:4px;margin-bottom:12px;border:1px solid var(--color-border)}.feed-mode-tab{flex:1;background:none;border:none;padding:8px 12px;border-radius:9px;cursor:pointer;font-size:.88rem;font-weight:600;color:var(--color-text-muted);transition:background .15s,color .15s}.feed-mode-tab.active{background:var(--color-primary);color:#fff}.feed-mode-tab:hover:not(.active){background:var(--color-bg);color:var(--color-text)}.feed-item-wrap{position:relative}.post-tags{display:flex;flex-wrap:wrap;gap:4px;padding:0 2px 4px}.post-tag{font-size:.72rem;color:var(--color-primary);background:rgba(var(--color-primary-rgb, 255,107,107),.1);border-radius:6px;padding:1px 7px;font-weight:600}.personalized-empty{text-align:center;padding:40px 24px;background:var(--color-card);border-radius:16px;border:1px solid var(--color-border);margin-bottom:12px}.interest-profile{display:flex;flex-direction:column;gap:20px}.interest-profile-section{background:var(--color-card);border:1px solid var(--color-border);border-radius:14px;padding:16px}.interest-profile-header{display:flex;justify-content:space-between;align-items:baseline;font-weight:700;font-size:.95rem;margin-bottom:14px;flex-wrap:wrap;gap:4px}.interest-profile-hint{font-size:.74rem;font-weight:400;color:var(--color-text-muted)}.interest-empty{font-size:.85rem;color:var(--color-text-muted);margin-bottom:12px;line-height:1.5}.interest-tags{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.interest-tag-item{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:8px;background:var(--color-bg);position:relative;overflow:hidden}.interest-tag-bar{position:absolute;left:0;top:0;bottom:0;background:rgba(var(--color-primary-rgb, 255,107,107),.12);border-radius:8px;transition:width .4s}.interest-tag-label{font-size:.85rem;font-weight:600;color:var(--color-primary);z-index:1;flex:1}.interest-tag-score{font-size:.72rem;color:var(--color-text-muted);z-index:1}.interest-tag-remove{background:none;border:none;cursor:pointer;color:var(--color-text-muted);font-size:1rem;padding:0 2px;line-height:1;z-index:1}.interest-tag-remove:hover{color:#e53935}.interest-add-row{display:flex;gap:8px;align-items:center}.suggested-users{display:flex;flex-direction:column;gap:10px}.suggested-user{display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px;background:var(--color-bg)}.suggested-user-info{flex:1;min-width:0}.suggested-user-name{font-weight:600;font-size:.88rem}.suggested-user-reason{font-size:.75rem;color:var(--color-text-muted)}.post-video{margin-top:8px;border-radius:14px;overflow:hidden;background:#000}.video-player{position:relative;width:100%;background:#000;border-radius:14px;overflow:hidden;cursor:pointer;aspect-ratio:9/16;max-height:480px}.video-player-video{width:100%;height:100%;object-fit:contain;display:block}.video-player-play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:3rem;color:#ffffffd9;text-shadow:0 2px 8px rgba(0,0,0,.5);pointer-events:none}.video-player-controls{position:absolute;bottom:0;left:0;right:0;padding:8px 10px 6px;background:linear-gradient(transparent,#0009);opacity:0;transition:opacity .2s}.video-player-controls.visible{opacity:1}.video-player-progress{height:3px;background:#ffffff4d;border-radius:2px;cursor:pointer;margin-bottom:6px}.video-player-progress-fill{height:100%;background:#fff;border-radius:2px}.video-player-bottom{display:flex;align-items:center;justify-content:space-between}.video-player-time{font-size:.72rem;color:#ffffffd9}.video-player-mute-btn{background:none;border:none;cursor:pointer;font-size:1rem;padding:0}.video-player-mute-pill{position:absolute;top:10px;right:10px;background:#0000008c;color:#fff;border:none;border-radius:20px;padding:4px 10px;font-size:.78rem;cursor:pointer;z-index:5;display:flex;align-items:center;gap:4px;backdrop-filter:blur(4px);transition:background .15s;white-space:nowrap}.video-player-mute-pill:hover{background:#000000bf}.video-preview-wrap{position:relative;margin-top:8px;border-radius:12px;overflow:hidden}.video-preview{width:100%;max-height:280px;display:block;background:#000}.video-preview-remove{position:absolute;top:8px;right:8px;background:#0009;color:#fff;border:none;cursor:pointer;font-size:.8rem;padding:4px 10px;border-radius:8px}.reels-container{height:calc(100vh - 120px);overflow-y:scroll;scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.reels-container::-webkit-scrollbar{display:none}.reel-item-wrapper{height:calc(100vh - 120px);scroll-snap-align:start;scroll-snap-stop:always;position:relative;display:flex;align-items:center;justify-content:center;background:#000}.reel-item{position:relative;width:100%;height:100%;overflow:hidden;cursor:pointer;display:flex;align-items:center;justify-content:center}.reel-video{width:100%;height:100%;object-fit:contain}.reel-play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:4rem;color:#ffffffbf;pointer-events:none;text-shadow:0 2px 12px rgba(0,0,0,.4)}.reel-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#ffffff40}.reel-progress-fill{height:100%;background:#fff;transition:width .1s linear}.reel-actions{position:absolute;right:14px;bottom:100px;display:flex;flex-direction:column;gap:20px;align-items:center}.reel-action-btn{background:#0006;border:none;border-radius:50%;width:48px;height:48px;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:1.4rem;color:#fff;gap:2px;transition:transform .15s}.reel-action-btn:active{transform:scale(.9)}.reel-action-btn.reacted{color:#ff6b6b}.reel-action-count{font-size:.7rem;color:#fff}.reel-info{position:absolute;bottom:24px;left:14px;right:70px;color:#fff}.reel-author{display:flex;align-items:center;gap:8px;margin-bottom:6px}.reel-author-name{font-weight:700;font-size:.95rem;text-shadow:0 1px 4px rgba(0,0,0,.5)}.reel-caption{font-size:.88rem;line-height:1.4;text-shadow:0 1px 3px rgba(0,0,0,.6);margin-bottom:4px}.reel-tags{display:flex;flex-wrap:wrap;gap:4px}.reel-tag{font-size:.78rem;font-weight:600;color:#ffffffe6}.reels-loading,.reels-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;gap:12px;color:var(--color-text-muted)}.reel-loading-more{display:flex;align-items:center;justify-content:center;color:#fff9;background:#111}.comment-composer{display:flex;flex-direction:column;gap:4px;margin-top:6px}.comment-toolbar{display:flex;align-items:center;gap:4px}.comment-tool-btn{background:none;border:1px solid var(--color-border);border-radius:8px;padding:3px 7px;cursor:pointer;font-size:.85rem;color:var(--color-text-muted);transition:background .15s,color .15s;line-height:1.4}.comment-tool-btn:hover,.comment-tool-btn.active{background:var(--color-primary-light, rgba(99,102,241,.12));color:var(--color-primary);border-color:var(--color-primary)}.comment-emoji-picker{display:flex;flex-wrap:wrap;gap:2px;padding:8px;background:var(--color-card);border:1px solid var(--color-border);border-radius:12px;max-width:300px;margin-bottom:4px}.comment-emoji-btn{background:none;border:none;cursor:pointer;font-size:1.2rem;padding:3px;border-radius:6px;line-height:1;transition:background .1s}.comment-emoji-btn:hover{background:var(--color-hover)}.comment-gif-picker{background:var(--color-card);border:1px solid var(--color-border);border-radius:12px;padding:8px;margin-bottom:4px;max-width:320px}.comment-gif-search{display:flex;gap:6px;margin-bottom:6px}.comment-gif-input{flex:1;padding:4px 8px;border:1px solid var(--color-border);border-radius:8px;background:var(--color-bg);color:var(--color-text);font-size:.83rem}.comment-gif-search-btn{padding:4px 10px;border-radius:8px;background:var(--color-primary);color:#fff;border:none;cursor:pointer;font-size:.8rem}.comment-gif-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;max-height:180px;overflow-y:auto}.comment-gif-option{width:100%;aspect-ratio:1;object-fit:cover;border-radius:6px;cursor:pointer;transition:opacity .15s}.comment-gif-option:hover{opacity:.8}.fun-attachment-preview{margin:8px 0;display:flex;gap:8px}.fun-attachment-item{position:relative;display:inline-block}.fun-attachment-item img{max-height:160px;max-width:100%;border-radius:10px;object-fit:contain}.fun-attachment-item .sticker-large{font-size:4rem;display:block;line-height:1}.fun-attachment-remove{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;background:var(--color-danger, #e53e3e);color:#fff;border:2px solid var(--color-bg, #fff);font-size:.75rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.fun-attachment-remove:hover{background:#c53030}.comment-attachment-preview{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:4px}.comment-attachment-gif{position:relative;display:inline-block}.comment-attachment-gif img{max-height:100px;border-radius:8px}.comment-attachment-images{display:flex;flex-wrap:wrap;gap:4px}.comment-attachment-thumb{position:relative;display:inline-block}.comment-attachment-thumb img{width:64px;height:64px;object-fit:cover;border-radius:6px}.comment-attachment-video{position:relative;display:inline-block}.comment-attachment-video video{border-radius:8px}.comment-attachment-remove{position:absolute;top:2px;right:2px;background:#0000008c;color:#fff;border:none;border-radius:50%;width:18px;height:18px;font-size:.7rem;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.comment-media{margin-top:6px;display:flex;flex-direction:column;gap:6px}.comment-gif{max-width:220px;max-height:180px;border-radius:10px;object-fit:cover}.comment-images{display:grid;gap:4px}.comment-images.count-1{grid-template-columns:1fr;max-width:200px}.comment-images.count-2{grid-template-columns:1fr 1fr;max-width:260px}.comment-images.count-3{grid-template-columns:1fr 1fr 1fr;max-width:280px}.comment-images.count-4{grid-template-columns:1fr 1fr;max-width:260px}.comment-image{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;cursor:pointer}.comment-video{max-width:260px;max-height:200px;border-radius:10px}.video-recorder-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1200;padding:16px}.video-recorder-modal{background:var(--color-card);border-radius:20px;width:100%;max-width:480px;overflow:hidden;display:flex;flex-direction:column}.video-recorder-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;font-weight:700;font-size:1rem;border-bottom:1px solid var(--color-border)}.video-recorder-close{background:none;border:none;font-size:1.3rem;cursor:pointer;color:var(--color-text-muted);line-height:1}.video-recorder-preview-wrap{position:relative;background:#000;aspect-ratio:16/9}.video-recorder-preview{width:100%;height:100%;object-fit:cover;display:block}.video-recorder-timer{position:absolute;top:10px;left:10px;background:#0009;color:#fff;padding:4px 10px;border-radius:20px;font-size:.85rem;font-weight:600;display:flex;align-items:center;gap:6px}.video-recorder-rec-dot{width:8px;height:8px;border-radius:50%;background:#f44;animation:blink 1s step-start infinite}@keyframes blink{50%{opacity:0}}.video-recorder-controls{display:flex;gap:10px;padding:14px 18px;justify-content:center}.video-recorder-btn{padding:10px 22px;border-radius:12px;border:none;font-size:.95rem;font-weight:700;cursor:pointer;transition:opacity .15s}.video-recorder-btn:hover{opacity:.85}.video-recorder-btn.record{background:#f44;color:#fff}.video-recorder-btn.stop{background:#333;color:#fff}.video-recorder-btn.retake{background:var(--color-border);color:var(--color-text)}.video-recorder-btn.use{background:var(--color-primary);color:#fff}.video-recorder-error{padding:32px;text-align:center;color:var(--color-text-muted);display:flex;flex-direction:column;align-items:center;gap:12px}.moderation-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;padding:16px;animation:fadeIn .2s ease}.moderation-modal{background:#fff;border-radius:16px;padding:24px;max-width:420px;width:100%;border:3px solid;box-shadow:0 8px 32px #0003;animation:slideUp .3s ease}.moderation-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.moderation-header h3{margin:0;font-size:1.2rem;color:#333}.moderation-explanation{color:#555;font-size:.95rem;margin-bottom:12px;line-height:1.5}.moderation-categories{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.moderation-category-tag{display:inline-flex;align-items:center;gap:4px;background:#0000000f;border-radius:20px;padding:4px 12px;font-size:.82rem;font-weight:500;color:#444}.moderation-warning-box{padding:10px 14px;border-radius:8px;font-size:.88rem;color:#333;line-height:1.5}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.theme-picker-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}@media (min-width: 600px){.theme-picker-grid{grid-template-columns:repeat(4,1fr)}}.theme-swatch{position:relative;border:3px solid transparent;border-radius:14px;padding:18px 8px 12px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;transition:border-color .15s,transform .15s;min-height:80px}.theme-swatch:hover{transform:scale(1.04)}.theme-swatch.selected{border-color:var(--color-primary, #667eea);box-shadow:0 0 0 2px var(--color-primary, #667eea)}.theme-swatch-emoji{font-size:1.6rem}.theme-swatch-label{font-size:.7rem;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,.3);text-align:center}.invite-preview{border-radius:20px;padding:40px 28px;text-align:center;min-height:280px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px #0000002e}.invite-preview-compact{min-height:160px;padding:24px 18px;border-radius:14px}.invite-preview-pattern{position:absolute;inset:0;border-radius:inherit;opacity:.4;pointer-events:none}.invite-preview-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:8px;width:100%}.invite-emoji-icon{font-size:3.5rem}.invite-preview-compact .invite-emoji-icon{font-size:2.2rem}.invite-title{font-size:1.6rem;font-weight:800;line-height:1.2;text-shadow:0 2px 8px rgba(0,0,0,.2)}.invite-preview-compact .invite-title{font-size:1.1rem}.invite-description{font-size:.95rem;opacity:.9;max-width:360px;line-height:1.4}.invite-details{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;padding:10px 16px;border-radius:12px;font-size:.85rem;margin-top:8px;font-weight:600}.invite-preview-compact .invite-details{font-size:.75rem;padding:6px 10px;gap:6px}.invite-emoji-decor{position:absolute;font-size:1.8rem;opacity:.35;pointer-events:none;z-index:0}.invite-preview-compact .invite-emoji-decor{font-size:1.2rem}.invite-deadline{font-size:.78rem;font-weight:700;margin-top:6px;text-transform:uppercase;letter-spacing:.05em}.invite-preview-bg-image{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;border-radius:inherit;z-index:0}.invite-preview-has-bg .invite-preview-content{z-index:2}.invite-preview-has-bg .invite-details{backdrop-filter:blur(4px)}.theme-swatch-image{border:2px solid var(--color-border, #ddd)}.invite-preview-overlay{position:fixed;inset:0;background:#000000a6;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s}.invite-preview-overlay-inner{max-width:440px;width:100%}.guest-rsvp-form{background:var(--color-card, #fff);border-radius:16px;padding:20px;margin-top:16px;box-shadow:0 2px 12px #00000014}.guest-rsvp-form h3{margin:0 0 12px;font-size:1rem}.guest-rsvp-buttons{display:flex;gap:8px;margin-top:12px}.guest-rsvp-buttons button{flex:1;padding:10px 6px;border-radius:12px;border:2px solid transparent;font-size:.85rem;font-weight:700;cursor:pointer;transition:all .15s}.guest-rsvp-btn-going{background:#e8f5e9;color:#2e7d32}.guest-rsvp-btn-going:hover,.guest-rsvp-btn-going.active{background:#2e7d32;color:#fff}.guest-rsvp-btn-maybe{background:#fff3e0;color:#e65100}.guest-rsvp-btn-maybe:hover,.guest-rsvp-btn-maybe.active{background:#e65100;color:#fff}.guest-rsvp-btn-cant{background:#fce4ec;color:#c62828}.guest-rsvp-btn-cant:hover,.guest-rsvp-btn-cant.active{background:#c62828;color:#fff}.guest-rsvp-success{padding:12px;text-align:center;border-radius:12px;background:#e8f5e9;color:#2e7d32;font-weight:700;font-size:.9rem}.shared-event-page.themed{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:24px 16px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.story-mode-toggle{display:flex;gap:8px;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid var(--color-border)}.template-selector{animation:fadeIn .3s ease;display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.template-selector-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:0 16px;flex-shrink:0}.template-selector-header h3{margin:0}.template-scroll{flex:1;overflow-y:auto;padding:0 16px 16px}.template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.template-card-mini{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;border:2px solid var(--color-border);border-radius:12px;background:var(--color-card);cursor:pointer;transition:all .2s;text-align:center;width:100%;position:relative}.template-card-mini:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;background:var(--color-primary-light, rgba(99,102,241,.05))}.template-mini-emoji{font-size:2rem}.template-mini-name{font-weight:700;font-size:.8rem;line-height:1.2}.template-mini-meta{font-size:.65rem;color:var(--color-text-muted)}.template-card-mini.template-scratch{border-style:dashed}.template-card-mini.template-scratch:hover{border-color:var(--color-primary)}.character-creator{background:var(--color-card);border:2px solid var(--color-border);border-radius:16px;padding:16px;animation:fadeIn .3s ease}.character-creator-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.character-creator-header h4{margin:0}.character-creator-body{display:flex;gap:20px;flex-wrap:wrap}.character-creator-preview{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:140px}.character-creator-options{flex:1;min-width:200px}.char-option-group{margin-bottom:12px}.char-option-label{display:block;font-size:.75rem;font-weight:700;color:var(--color-text-muted);margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.char-option-row{display:flex;gap:6px;flex-wrap:wrap}.char-option-btn{width:40px;height:40px;border:2px solid var(--color-border);border-radius:10px;background:var(--color-card);font-size:1.2rem;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center}.char-option-btn:hover{border-color:var(--color-primary);transform:scale(1.1)}.char-option-btn.active{border-color:var(--color-primary);background:var(--color-primary-light, rgba(99,102,241,.1));box-shadow:0 0 0 2px var(--color-primary)}.char-color-row{display:flex;gap:16px;flex-wrap:wrap}.char-color-btn{width:28px;height:28px;border:2px solid transparent;border-radius:50%;cursor:pointer;transition:all .15s}.char-color-btn:hover{transform:scale(1.2)}.char-color-btn.active{border-color:var(--color-text);box-shadow:0 0 0 2px var(--color-primary)}.character-preview{position:relative;display:flex;align-items:center;justify-content:center}.character-face{position:absolute;top:22%;left:50%;transform:translate(-50%);pointer-events:none}.drawing-canvas-container{background:var(--color-card);border:2px solid var(--color-border);border-radius:16px;overflow:hidden;animation:fadeIn .3s ease}.drawing-toolbar{display:flex;flex-wrap:wrap;gap:8px;padding:10px 12px;background:var(--color-bg);border-bottom:2px solid var(--color-border);align-items:center}.drawing-tools-group{display:flex;gap:4px;flex-wrap:wrap}.drawing-divider{width:1px;height:28px;background:var(--color-border);margin:0 4px}.drawing-tool-btn{width:36px;height:36px;border:2px solid var(--color-border);border-radius:8px;background:var(--color-card);font-size:1rem;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center}.drawing-tool-btn:hover{border-color:var(--color-primary)}.drawing-tool-btn.active{border-color:var(--color-primary);background:var(--color-primary-light, rgba(99,102,241,.1));box-shadow:0 0 0 2px var(--color-primary)}.brush-dot{display:block;border-radius:50%;background:var(--color-text)}.drawing-color-palette{display:flex;gap:4px;flex-wrap:wrap}.drawing-color-btn{width:24px;height:24px;border:2px solid transparent;border-radius:50%;cursor:pointer;transition:all .15s}.drawing-color-btn:hover{transform:scale(1.2)}.drawing-color-btn.active{border-color:var(--color-text);box-shadow:0 0 0 2px var(--color-primary)}.drawing-canvas-wrapper{display:flex;justify-content:center;padding:8px;background:#e0e0e0}.drawing-canvas{max-width:100%;height:auto;border-radius:4px;background:#fff;box-shadow:0 2px 8px #00000026}.drawing-bottom-bar{display:flex;justify-content:space-between;padding:10px 12px;border-top:2px solid var(--color-border);background:var(--color-bg);flex-wrap:wrap;gap:8px}.drawing-actions-left,.drawing-actions-right{display:flex;gap:6px}.pe-studio{display:flex;flex:1;min-height:0;animation:fadeIn .3s ease}.pe-sidebar{display:flex;width:280px;flex-shrink:0;background:var(--color-card);border-right:2px solid var(--color-border)}.pe-sidebar-tabs{display:flex;flex-direction:column;width:56px;background:var(--color-bg);border-right:1px solid var(--color-border);padding:4px 0}.pe-sidebar-tab{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px;border:none;background:none;cursor:pointer;transition:all .15s;color:var(--color-text-muted);position:relative}.pe-sidebar-tab:hover{color:var(--color-primary);background:var(--color-primary-light, rgba(99,102,241,.05))}.pe-sidebar-tab.active{color:var(--color-primary);background:var(--color-card)}.pe-sidebar-tab.active:before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;background:var(--color-primary);border-radius:0 3px 3px 0}.pe-tab-icon{font-size:1.2rem}.pe-tab-label{font-size:.55rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.pe-sidebar-panel{flex:1;overflow-y:auto;width:224px}.pe-panel-content{padding:12px}.pe-panel-title{font-weight:800;font-size:.95rem;margin-bottom:12px;color:var(--color-text)}.pe-panel-subtitle{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-muted);margin-bottom:8px}.pe-panel-section{margin-bottom:16px}.pe-panel-hint{font-size:.75rem;color:var(--color-text-muted);margin:0 0 12px}.pe-text-style-btns{display:flex;flex-direction:column;gap:6px}.pe-style-btn{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:1.5px solid var(--color-border);border-radius:8px;background:var(--color-bg);cursor:pointer;font-size:.8rem;font-weight:600;transition:all .15s;text-align:left;color:var(--color-text)}.pe-style-btn:hover{border-color:var(--color-primary);background:var(--color-primary-light, rgba(99,102,241,.05))}.pe-char-list{display:flex;flex-direction:column;gap:4px}.pe-char-pill{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1.5px solid var(--color-border);border-radius:20px;background:var(--color-bg);cursor:pointer;font-size:.8rem;font-weight:600;transition:all .15s;color:var(--color-text)}.pe-char-pill:hover{border-color:var(--color-primary);background:var(--color-primary-light, rgba(99,102,241,.08))}.pe-stats{display:flex;gap:16px}.pe-stat{display:flex;flex-direction:column;align-items:center}.pe-stat-num{font-size:1.2rem;font-weight:800;color:var(--color-primary)}.pe-stat-label{font-size:.65rem;color:var(--color-text-muted)}.pe-action-card{display:flex;align-items:center;gap:12px;width:100%;padding:12px;border:2px solid var(--color-border);border-radius:12px;background:var(--color-bg);cursor:pointer;transition:all .2s;margin-bottom:8px;text-align:left;color:var(--color-text)}.pe-action-card:hover{border-color:var(--color-primary);transform:translateY(-1px);box-shadow:0 2px 8px #00000014}.pe-action-icon{font-size:1.8rem}.pe-action-label{font-weight:700;font-size:.85rem}.pe-action-desc{font-size:.7rem;color:var(--color-text-muted)}.pe-current-illustration{text-align:center}.pe-current-illustration img{max-width:100%;border-radius:8px;margin-bottom:8px;box-shadow:0 2px 6px #0000001a}.pe-remove-btn{padding:4px 12px;border:1px solid #ff6b6b;border-radius:6px;background:#fff5f5;color:#ff6b6b;font-size:.75rem;font-weight:600;cursor:pointer}.pe-remove-btn:hover{background:#ff6b6b;color:#fff}.pe-color-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.pe-color-swatch{width:100%;aspect-ratio:1;border:3px solid transparent;border-radius:10px;cursor:pointer;transition:all .15s;box-shadow:inset 0 0 0 1px #00000014}.pe-color-swatch:hover{transform:scale(1.1)}.pe-color-swatch.active{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary)}.pe-border-list{display:flex;flex-direction:column;gap:6px}.pe-border-option{display:flex;align-items:center;gap:10px;padding:8px 10px;border:2px solid var(--color-border);border-radius:8px;background:var(--color-bg);cursor:pointer;transition:all .15s;font-size:.8rem;font-weight:600;color:var(--color-text)}.pe-border-option:hover{border-color:var(--color-primary)}.pe-border-option.active{border-color:var(--color-primary);background:var(--color-primary-light, rgba(99,102,241,.08))}.pe-sticker-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.pe-sticker-btn{width:100%;aspect-ratio:1;border:2px solid var(--color-border);border-radius:10px;background:var(--color-bg);font-size:1.4rem;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center}.pe-sticker-btn:hover{border-color:var(--color-primary);transform:scale(1.15);background:var(--color-primary-light, rgba(99,102,241,.08))}.pe-prompt-list{display:flex;flex-direction:column;gap:8px}.pe-prompt-card{padding:10px 12px;border:1.5px solid var(--color-border);border-radius:10px;background:var(--color-bg);font-size:.8rem;line-height:1.4;cursor:pointer;transition:all .2s;text-align:left;color:var(--color-text)}.pe-prompt-card:hover{border-color:#feca57;background:#fffdf5;transform:translate(2px)}.pe-canvas-area{flex:1;display:flex;flex-direction:column;min-width:0;background:#e8e8e8}.pe-canvas-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:var(--color-bg);border-bottom:1px solid var(--color-border)}.pe-page-label{font-weight:700;font-size:.85rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px}.pe-saving-indicator{font-size:.75rem;color:var(--color-primary);font-weight:600}.pe-canvas-scroll{flex:1;overflow-y:auto;display:flex;justify-content:center;padding:24px}.pe-canvas{width:100%;max-width:560px;min-height:480px;background:#fff;border-radius:12px;padding:28px;box-shadow:0 4px 24px #0000001f;display:flex;flex-direction:column;gap:16px}.pe-canvas-illustration{text-align:center}.pe-canvas-illustration img{max-width:100%;max-height:220px;border-radius:10px;box-shadow:0 2px 8px #0000001a}.pe-canvas-illust-placeholder{display:flex;flex-direction:column;align-items:center;gap:6px;padding:24px;border:2px dashed var(--color-border);border-radius:12px;color:var(--color-text-muted);cursor:pointer;transition:all .2s;font-size:.85rem}.pe-canvas-illust-placeholder span:first-child{font-size:2rem}.pe-canvas-illust-placeholder:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light, rgba(99,102,241,.04))}.pe-canvas-text{width:100%;flex:1;min-height:200px;border:none;background:transparent;font-family:Comic Neue,Comic Sans MS,cursive;font-size:1.15rem;line-height:2;resize:none;color:var(--color-text);padding:8px 4px}.pe-canvas-text:focus{outline:none;border:none;box-shadow:none}.pe-canvas-text::placeholder{color:#aaa;font-style:italic}.story-page-border-none{border:none}.story-page-border-simple{border:3px solid var(--color-border)}.story-page-border-ornate{border:4px double var(--color-primary);box-shadow:inset 0 0 0 2px var(--color-primary-light, rgba(99,102,241,.15))}.story-page-border-nature{border:3px solid #2ecc71;box-shadow:inset 0 0 0 2px #2ecc7126;background-image:radial-gradient(circle at 5% 95%,rgba(46,204,113,.08) 0%,transparent 50%),radial-gradient(circle at 95% 5%,rgba(46,204,113,.08) 0%,transparent 50%)}.story-page-border-stars{border:3px solid #f1c40f;box-shadow:inset 0 0 0 2px #f1c40f26;background-image:radial-gradient(circle at 10% 10%,rgba(241,196,15,.1) 0%,transparent 30%),radial-gradient(circle at 90% 90%,rgba(241,196,15,.1) 0%,transparent 30%),radial-gradient(circle at 50% 50%,rgba(241,196,15,.05) 0%,transparent 60%)}.sb-editor-root{display:flex;flex-direction:column;height:calc(100vh - 60px);margin:-16px;animation:fadeIn .2s ease}.sb-header-bar{display:flex;align-items:center;justify-content:space-between;padding:0 12px;height:44px;background:#3daee0;color:#fff;flex-shrink:0}.sb-header-title{font-size:1rem;font-weight:700}.sb-header-close{width:32px;height:32px;border:none;border-radius:50%;background:#fff3;color:#fff;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.sb-header-close:hover{background:#fff6}.sb-bottom-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--color-card);border-top:2px solid var(--color-border);flex-shrink:0}.sb-bottom-left,.sb-bottom-right{min-width:120px}.sb-bottom-right{text-align:right}.sb-bottom-center{flex:1;text-align:center}.sb-bottom-btn{padding:10px 22px;border:none;border-radius:10px;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .15s}.sb-bottom-back{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border)}.sb-bottom-back:hover{background:var(--color-border)}.sb-bottom-save{background:#3daee01a;color:#3daee0;border:1px solid #3daee0}.sb-bottom-save:hover{background:#3daee033}.sb-bottom-next{background:#f39c12;color:#fff;font-size:1rem;padding:10px 28px}.sb-bottom-next:hover{background:#e67e22}.sb-bottom-next:disabled{opacity:.5;cursor:default}.sb-bottom-publish{background:#2ecc71;color:#fff;font-size:1rem;padding:10px 28px}.sb-bottom-publish:hover{background:#27ae60}.sb-bottom-publish:disabled{opacity:.5}.sb-progress-bar{display:flex;align-items:center;justify-content:center;gap:24px;padding:10px 20px;background:var(--color-card);border-bottom:1px solid var(--color-border);flex-shrink:0;position:relative}.sb-progress-step{display:flex;align-items:center;gap:6px;cursor:pointer;opacity:.4;transition:all .2s;z-index:1}.sb-progress-step.active{opacity:1}.sb-progress-step.done{opacity:.7}.sb-progress-dot{width:26px;height:26px;border-radius:50%;background:var(--color-border);display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:800;color:#fff;transition:all .2s}.sb-progress-step.active .sb-progress-dot{background:#3daee0}.sb-progress-step.done .sb-progress-dot{background:#2ecc71}.sb-progress-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.3px}.sb-progress-line{position:absolute;left:0;bottom:0;height:3px;background:linear-gradient(90deg,#3daee0,#2ecc71);transition:width .3s ease;border-radius:0 3px 0 0}.sb-editor-content{flex:1;display:flex;flex-direction:column;overflow:hidden}.sb-setup-step{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 20px}.sb-setup-card{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:480px;text-align:center}.sb-setup-icon{font-size:4rem}.sb-setup-heading{margin:0;font-size:1.5rem}.sb-title-input{width:100%;padding:14px 20px;border:3px solid var(--color-border);border-radius:14px;font-size:1.3rem;font-weight:700;text-align:center;background:var(--color-card);color:var(--color-text);transition:border-color .2s}.sb-title-input:focus{outline:none;border-color:#3daee0}.sb-title-input::placeholder{color:var(--color-text-muted);font-weight:400}.sb-template-badge{padding:6px 16px;border-radius:20px;background:#fffdf5;border:1px solid #feca57;font-size:.85rem;color:#6b5900}.sb-setup-hint{color:var(--color-text-muted);font-size:.85rem;margin:0}.sb-characters-step{flex:1;padding:20px;overflow-y:auto}.sb-chars-header{text-align:center;margin-bottom:20px}.sb-chars-header h3{margin:0 0 6px}.sb-chars-hint{color:var(--color-text-muted);font-size:.85rem;margin:0}.sb-write-step{flex:1;display:flex;flex-direction:column;overflow:hidden}.sb-page-tabs{display:flex;align-items:center;gap:4px;padding:6px 12px;background:var(--color-bg);border-bottom:1px solid var(--color-border);overflow-x:auto;flex-shrink:0}.sb-page-tab{display:flex;align-items:center;gap:4px;padding:6px 14px;border:2px solid var(--color-border);border-radius:8px 8px 0 0;background:var(--color-card);cursor:pointer;font-size:.8rem;font-weight:700;transition:all .15s;position:relative;color:var(--color-text-muted);border-bottom:2px solid var(--color-border)}.sb-page-tab.active{border-color:#3daee0;border-bottom-color:var(--color-card);color:#3daee0;background:var(--color-card)}.sb-page-tab:hover:not(.active){border-color:var(--color-text-muted)}.sb-page-tab-close{font-size:.7rem;opacity:.5;cursor:pointer;margin-left:2px}.sb-page-tab-close:hover{opacity:1;color:#ff6b6b}.sb-page-tab-add{border-style:dashed;color:var(--color-text-muted)}.sb-page-tab-add:hover{border-color:#3daee0;color:#3daee0}.sb-preview-step{flex:1;padding:20px;overflow-y:auto}.storybook-char-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin-bottom:16px}.storybook-char-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px;background:var(--color-card);border:2px solid var(--color-border);border-radius:14px;transition:all .2s}.storybook-char-card:hover{border-color:var(--color-primary)}.storybook-char-name{font-weight:700;font-size:.9rem}.storybook-char-actions{display:flex;gap:6px}.storybook-char-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:14px;border:2px dashed var(--color-border);border-radius:14px;background:transparent;cursor:pointer;transition:all .2s;color:var(--color-text-muted);font-weight:600}.storybook-char-add:hover{border-color:var(--color-primary);color:var(--color-primary)}.storybook-viewer{display:flex;flex-direction:column;align-items:center;gap:12px;outline:none}.storybook-viewer-header{display:flex;align-items:center;gap:12px;width:100%;justify-content:space-between}.storybook-viewer-title{font-weight:700;font-size:1.1rem}.storybook-viewer-pagenum{font-size:.8rem;color:var(--color-text-muted)}.storybook-viewer-book{display:flex;align-items:center;gap:12px;width:100%;perspective:1200px}.storybook-nav-arrow{width:44px;height:44px;border:2px solid var(--color-border);border-radius:50%;background:var(--color-card);font-size:1.2rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.storybook-nav-arrow:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary-light, rgba(99,102,241,.1))}.storybook-nav-arrow:disabled{opacity:.3;cursor:default}.storybook-page-container{flex:1;transform-style:preserve-3d;transition:transform .3s ease}.storybook-page-container.flip-right{transform:rotateY(-8deg)}.storybook-page-container.flip-left{transform:rotateY(8deg)}.storybook-page{padding:32px;border-radius:16px;min-height:400px;display:flex;flex-direction:column;gap:16px;box-shadow:0 4px 20px #0000001a;position:relative}.storybook-page-illustration{text-align:center}.storybook-page-illustration img{max-width:100%;max-height:250px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.storybook-page-text{font-family:Comic Neue,Comic Sans MS,cursive;font-size:1.15rem;line-height:1.9;flex:1;white-space:pre-wrap}.storybook-page-number{text-align:center;font-size:.75rem;color:var(--color-text-muted);position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.storybook-viewer-characters{display:flex;gap:12px;padding:8px 12px;background:var(--color-card);border-radius:20px;border:1px solid var(--color-border)}.storybook-viewer-char{display:flex;align-items:center;gap:4px;font-size:.8rem;font-weight:600}.storybook-viewer-dots{display:flex;gap:6px}.storybook-dot{width:10px;height:10px;border-radius:50%;border:2px solid var(--color-border);background:transparent;cursor:pointer;transition:all .2s;padding:0}.storybook-dot.active{background:var(--color-primary);border-color:var(--color-primary)}.storybook-dot:hover{border-color:var(--color-primary)}.story-cover{border-radius:16px;overflow:hidden}.story-cover-large{min-height:400px}.story-cover-small{min-height:180px}.story-cover-inner{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:32px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:inherit;gap:12px;position:relative}.story-cover-decoration{position:absolute;left:0;right:0;height:6px;background:repeating-linear-gradient(90deg,#feca57,#feca57 10px,#ff6b6b 10px 20px,#48dbfb 20px 30px)}.story-cover-decoration-top{top:0}.story-cover-decoration-bottom{bottom:0}.story-cover-emoji{font-size:4rem}.story-cover-small .story-cover-emoji{font-size:2.5rem}.story-cover-image img{max-width:60%;max-height:150px;border-radius:12px;box-shadow:0 4px 12px #0000004d}.story-cover-title{font-size:1.8rem;font-weight:700;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.2)}.story-cover-small .story-cover-title{font-size:1.1rem}.story-cover-author{font-size:.9rem;opacity:.9}.story-cover-small .story-cover-author{font-size:.75rem}.story-cover-meta{font-size:.8rem;opacity:.7}.story-cover-draft-ribbon{position:absolute;top:14px;right:-6px;background:#feca57;color:#6b5900;font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.5px;padding:3px 12px;border-radius:4px 0 0 4px;box-shadow:0 2px 6px #0003;z-index:2}.story-downloader{display:flex;gap:8px;justify-content:center}.storybook-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.storybook-grid-item{display:flex;flex-direction:column;gap:8px;transition:transform .2s}.storybook-grid-item:hover{transform:translateY(-4px)}.storybook-grid-info{text-align:center}.storybook-grid-title{font-weight:700;font-size:.95rem;display:flex;align-items:center;gap:6px;justify-content:center}.storybook-grid-author{font-size:.75rem;color:var(--color-text-muted)}.storybook-grid-actions{display:flex;gap:6px;justify-content:center;flex-wrap:wrap}.storybook-draft-badge{font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.5px;background:#feca57;color:#6b5900;padding:2px 8px;border-radius:10px}.storybook-empty{text-align:center;padding:60px 20px;color:var(--color-text-muted)}.storybook-empty h3{color:var(--color-text)}.storybook-preview-step{display:flex;flex-direction:column;gap:12px}@media (max-width: 768px){.pe-studio{flex-direction:column}.pe-sidebar{width:100%;flex-direction:column;max-height:200px}.pe-sidebar-tabs{flex-direction:row;width:100%;overflow-x:auto;border-right:none;border-bottom:1px solid var(--color-border)}.pe-sidebar-tab{padding:6px 10px}.pe-sidebar-tab.active:before{inset:auto 6px 0;width:auto;height:3px;border-radius:3px 3px 0 0}.pe-sidebar-panel{width:100%;overflow-y:auto;max-height:140px}.pe-canvas{max-width:100%;min-height:360px}.pe-canvas-scroll{padding:12px}.sb-editor-root{margin:-8px;height:calc(100vh - 50px)}.sb-progress-bar{gap:10px;padding:8px 10px}.sb-progress-label{display:none}.sb-header-bar{padding:0 8px}.sb-bottom-bar{padding:8px 10px}.sb-bottom-btn{padding:8px 14px;font-size:.8rem}.sb-bottom-left,.sb-bottom-right{min-width:80px}}@media (max-width: 640px){.drawing-toolbar{overflow-x:auto}.template-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}.storybook-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.storybook-page{padding:16px;min-height:300px}.story-cover-title{font-size:1.3rem}.sb-bottom-btn{padding:8px 12px;font-size:.75rem}.sb-bottom-left,.sb-bottom-right{min-width:60px}}.dream-and-draw{max-width:800px;margin:0 auto}.dd-tabs{display:flex;gap:4px;background:var(--color-bg, #fff);border-radius:var(--border-radius, 12px);padding:4px;margin-bottom:16px;box-shadow:var(--shadow-sm, 0 1px 3px rgba(0,0,0,.08));overflow-x:auto}.dd-tab{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 12px;border:none;background:transparent;border-radius:var(--border-radius-sm, 8px);cursor:pointer;font-size:.85rem;font-weight:600;color:var(--color-text-muted, #888);transition:all .2s;white-space:nowrap}.dd-tab:hover{background:var(--color-bg-hover, #f0f0f0);color:var(--color-text, #333)}.dd-tab.active{background:var(--color-primary, #667eea);color:#fff;box-shadow:0 2px 8px #667eea4d}.dd-tab-emoji{font-size:1.1rem}.dd-content{min-height:300px}.draw-and-craft{padding:8px 0}.dc-start{text-align:center;padding:40px 20px;background:var(--color-bg, #fff);border-radius:var(--border-radius, 12px);box-shadow:var(--shadow-sm)}.dc-start .fun-btn{font-size:1.1rem;padding:12px 32px}.dc-hint{margin-top:10px;color:var(--color-text-muted);font-size:.85rem}.dc-drawing-mode{margin:-8px}.dc-success{background:#d4edda;color:#155724;padding:10px 16px;border-radius:8px;margin-bottom:12px;font-weight:600;font-size:.9rem;display:flex;align-items:center}.dc-loading,.dc-empty{text-align:center;padding:20px;color:var(--color-text-muted);font-size:.85rem}.dc-share-panel{background:var(--color-bg, #fff);border-radius:var(--border-radius, 12px);padding:16px;box-shadow:var(--shadow-sm)}.dc-preview{text-align:center;margin-bottom:12px}.dc-preview img{max-width:100%;max-height:300px;border-radius:10px}.dc-share-buttons{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.dc-dm-picker{display:flex;gap:8px;margin-top:10px;align-items:center}.dc-dm-picker select{flex:1}.dc-gallery-section{margin-top:20px}.dc-gallery-toggle{background:none;border:none;color:var(--color-primary, #667eea);font-weight:700;font-size:.9rem;cursor:pointer;padding:8px 0}.dc-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin-top:10px}.dc-gallery-item{border-radius:10px;overflow:hidden;background:var(--color-bg, #fff);box-shadow:var(--shadow-sm)}.dc-gallery-item img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.dc-gallery-title{display:block;padding:4px 8px;font-size:.75rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.quiz-section{padding:8px 0}.quiz-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.quiz-list{display:flex;flex-direction:column;gap:8px}.quiz-card{background:var(--color-bg, #fff);border-radius:var(--border-radius, 12px);padding:14px 16px;box-shadow:var(--shadow-sm);cursor:pointer;transition:transform .15s,box-shadow .15s}.quiz-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0,0,0,.1))}.quiz-card-title{font-weight:700;font-size:1rem;margin-bottom:4px}.quiz-card-meta{font-size:.78rem;color:var(--color-text-muted)}.quiz-builder-question{background:var(--color-bg, #fff);border:1px solid var(--color-border, #e0e0e0);border-radius:10px;padding:12px;margin-bottom:10px}.quiz-builder-q-header{display:flex;gap:8px;align-items:center;margin-bottom:8px}.quiz-builder-q-num{background:var(--color-primary, #667eea);color:#fff;font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:10px}.quiz-builder-option{display:flex;gap:8px;align-items:center;margin-bottom:4px}.quiz-builder-option input[type=radio]{accent-color:var(--color-primary, #667eea)}.quiz-play{background:var(--color-bg, #fff);border-radius:var(--border-radius, 12px);padding:20px;box-shadow:var(--shadow-sm)}.quiz-play-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.quiz-play-title{font-weight:700;font-size:.9rem}.quiz-play-progress{font-size:.8rem;color:var(--color-text-muted);font-weight:600}.quiz-play-bar{height:6px;background:var(--color-border, #e0e0e0);border-radius:3px;margin-bottom:20px;overflow:hidden}.quiz-play-bar-fill{height:100%;background:var(--color-primary, #667eea);border-radius:3px;transition:width .3s ease}.quiz-play-question{font-size:1.15rem;margin-bottom:16px}.quiz-play-options{display:flex;flex-direction:column;gap:8px}.quiz-play-option{padding:12px 16px;border:2px solid var(--color-border, #e0e0e0);border-radius:10px;background:var(--color-bg, #fff);cursor:pointer;font-size:.95rem;text-align:left;transition:all .2s}.quiz-play-option:hover:not(:disabled){border-color:var(--color-primary, #667eea);background:#f0f3ff}.quiz-play-option.selected{border-color:var(--color-primary, #667eea);background:#e8ecff}.quiz-play-option.correct{border-color:#2ecc71;background:#d4edda}.quiz-play-option.wrong{border-color:#e53e3e;background:#fde8e8}.quiz-result{text-align:center;padding:30px 20px;background:var(--color-bg, #fff);border-radius:var(--border-radius, 12px);box-shadow:var(--shadow-sm)}.quiz-result-emoji{font-size:3rem;margin-bottom:8px}.games-section{padding:8px 0}.games-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.game-card{background:var(--color-bg, #fff);border:2px solid var(--color-border, #e0e0e0);border-radius:var(--border-radius, 12px);padding:20px 16px;text-align:center;cursor:pointer;transition:all .2s}.game-card:hover{border-color:var(--color-primary, #667eea);transform:translateY(-2px);box-shadow:var(--shadow-md)}.game-card.coming-soon{opacity:.5;cursor:default}.game-card.coming-soon:hover{transform:none;border-color:var(--color-border);box-shadow:none}.game-card-emoji{font-size:2.5rem;margin-bottom:8px}.game-card-name{font-weight:700;font-size:.95rem;margin-bottom:4px}.game-card-desc{font-size:.78rem;color:var(--color-text-muted)}.game-card-ages{font-size:.7rem;color:var(--color-primary, #667eea);font-weight:600;margin-top:6px}.memory-game{padding:8px 0}.memory-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-weight:600}.memory-win{color:#2ecc71}.memory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;max-width:400px;margin:0 auto}.memory-card{aspect-ratio:1;font-size:1.8rem;border:2px solid var(--color-border, #e0e0e0);border-radius:10px;background:var(--color-bg, #fff);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.memory-card:hover:not(.flipped):not(.matched){border-color:var(--color-primary)}.memory-card.flipped{border-color:var(--color-primary, #667eea);background:#f0f3ff}.memory-card.matched{border-color:#2ecc71;background:#d4edda;opacity:.7}.memory-grid-easy{grid-template-columns:repeat(3,1fr)}.memory-grid-medium{grid-template-columns:repeat(4,1fr)}.memory-grid-hard{grid-template-columns:repeat(5,1fr)}.word-scramble{background:var(--color-bg, #fff);border-radius:var(--border-radius, 12px);padding:20px;box-shadow:var(--shadow-sm)}.ws-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.ws-score{font-weight:600;color:var(--color-primary);font-size:.85rem}.ws-scrambled{font-size:2rem;font-weight:900;letter-spacing:6px;text-align:center;padding:20px;color:var(--color-primary, #667eea)}.ws-hint{text-align:center;color:var(--color-text-muted);font-size:.85rem;margin-bottom:12px}.ws-input-row{display:flex;gap:8px;align-items:center}.ws-action-row{display:flex;gap:8px;margin-top:8px}.ws-solved{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px;font-weight:600}.game-start{text-align:center;padding:40px 20px;background:var(--color-bg, #fff);border-radius:var(--border-radius, 12px);box-shadow:var(--shadow-sm)}.game-result-box{text-align:center;padding:16px;margin-top:12px;background:#f0fdf4;border-radius:var(--border-radius, 12px);border:2px solid #2ecc71}.game-stars{font-size:1.8rem}.difficulty-btns{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:12px}.math-pop-game{padding:8px 0}.math-pop-header{display:flex;justify-content:space-between;align-items:center;font-weight:600;margin-bottom:8px}.math-streak{color:#e67e22;animation:pulse .5s ease infinite}.math-pop-progress{height:6px;background:var(--color-border, #e0e0e0);border-radius:3px;margin-bottom:20px;overflow:hidden}.math-pop-progress-bar{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:3px;transition:width .3s}.math-pop-question{font-size:2.2rem;font-weight:900;text-align:center;padding:24px;background:var(--color-bg, #fff);border-radius:var(--border-radius, 12px);box-shadow:var(--shadow-sm);margin-bottom:16px;transition:all .3s}.math-pop-question.correct{background:#d4edda;border:2px solid #2ecc71}.math-pop-question.wrong{background:#f8d7da;border:2px solid #e74c3c}.math-pop-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.math-pop-btn{padding:16px;font-size:1.4rem;font-weight:700;border:2px solid var(--color-border, #e0e0e0);border-radius:var(--border-radius, 12px);background:var(--color-bg, #fff);cursor:pointer;transition:all .2s}.math-pop-btn:hover:not(:disabled){border-color:var(--color-primary);transform:scale(1.03)}.math-pop-btn.correct{background:#d4edda;border-color:#2ecc71}.math-pop-btn.wrong{background:#f8d7da;border-color:#e74c3c}.math-pop-feedback{text-align:center;font-weight:700;font-size:1.1rem;padding:8px}.math-pop-feedback.correct{color:#2ecc71}.math-pop-feedback.wrong{color:#e74c3c}.spelling-game{padding:8px 0}.spelling-header{display:flex;justify-content:space-between;align-items:center;font-weight:600;margin-bottom:12px}.spelling-hint{text-align:center;color:var(--color-text-muted);font-size:.9rem;margin-bottom:12px;padding:8px;background:#fffde7;border-radius:8px}.spelling-guess-area{min-height:56px;display:flex;align-items:center;justify-content:center;gap:4px;flex-wrap:wrap;padding:12px;margin-bottom:12px;border:2px dashed var(--color-border, #e0e0e0);border-radius:var(--border-radius, 12px);background:var(--color-bg, #fff);transition:all .3s}.spelling-guess-area.correct{border-color:#2ecc71;background:#d4edda}.spelling-guess-area.wrong{border-color:#e74c3c;background:#f8d7da}.spelling-placeholder{color:var(--color-text-muted);font-size:.85rem}.spelling-available{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin-bottom:12px}.spelling-letter{width:42px;height:42px;font-size:1.1rem;font-weight:700;border:2px solid var(--color-primary, #667eea);border-radius:10px;background:var(--color-bg, #fff);cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center}.spelling-letter:hover{transform:scale(1.1);background:#f0f3ff}.spelling-letter.in-guess{border-color:#2ecc71;background:#e8f8f0}.spelling-feedback{text-align:center;font-weight:700;font-size:1.1rem;padding:8px;margin-bottom:8px}.spelling-feedback.correct{color:#2ecc71}.spelling-feedback.wrong{color:#e74c3c}.spelling-actions{display:flex;gap:8px;justify-content:center}.hangman-game{padding:8px 0}.hangman-categories{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:12px}.hangman-top{display:flex;align-items:center;gap:20px;justify-content:center;margin-bottom:16px}.hangman-svg{width:120px;height:140px}.hangman-info{text-align:left}.hangman-category{font-weight:600;margin-bottom:8px;text-transform:capitalize}.hangman-lives{font-size:1.1rem;letter-spacing:2px}.hangman-word{display:flex;gap:6px;justify-content:center;flex-wrap:wrap;margin-bottom:16px}.hangman-letter-slot{width:36px;height:40px;display:inline-flex;align-items:center;justify-content:center;font-size:1.3rem;font-weight:700;border-bottom:3px solid var(--color-text)}.hangman-letter-slot.revealed{color:#2ecc71}.hangman-letter-slot.missed{color:#e74c3c}.hangman-result{text-align:center;font-weight:700;font-size:1.1rem;padding:10px;margin-bottom:12px;border-radius:8px}.hangman-result.won{background:#d4edda;color:#2ecc71}.hangman-result.lost{background:#f8d7da;color:#e74c3c}.hangman-keyboard{display:flex;flex-wrap:wrap;gap:4px;justify-content:center;margin-bottom:12px}.hangman-key{width:34px;height:36px;font-size:.85rem;font-weight:700;border:2px solid var(--color-border, #e0e0e0);border-radius:6px;background:var(--color-bg, #fff);cursor:pointer;transition:all .15s}.hangman-key:hover:not(:disabled){border-color:var(--color-primary);background:#f0f3ff}.hangman-key.correct{background:#d4edda;border-color:#2ecc71;color:#2ecc71}.hangman-key.wrong{background:#f8d7da;border-color:#e74c3c;color:#e74c3c;opacity:.5}.hangman-key:disabled{cursor:default}.hangman-actions{display:flex;gap:8px;justify-content:center}.ttt-game{padding:8px 0}.ttt-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.ttt-score{font-size:1.2rem;font-weight:700}.ttt-status{font-weight:600;font-size:.9rem;color:var(--color-text-muted)}.ttt-board{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;max-width:280px;margin:0 auto 16px}.ttt-cell{aspect-ratio:1;font-size:2.2rem;border:2px solid var(--color-border, #e0e0e0);border-radius:12px;background:var(--color-bg, #fff);cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center}.ttt-cell:hover:not(:disabled){background:#f0f3ff;border-color:var(--color-primary)}.ttt-cell.winning{background:#d4edda;border-color:#2ecc71;animation:pulse .6s ease infinite}.ttt-actions{display:flex;gap:8px;justify-content:center}@media (max-width: 480px){.dd-tab{padding:8px 6px;font-size:.75rem}.dd-tab-label{display:none}.dd-tab-emoji{font-size:1.3rem}.memory-grid{gap:6px}.memory-grid-easy{grid-template-columns:repeat(3,1fr)}.memory-grid-medium,.memory-grid-hard{grid-template-columns:repeat(4,1fr)}.memory-card{font-size:1.4rem}.games-grid{grid-template-columns:repeat(2,1fr)}.math-pop-question{font-size:1.6rem;padding:16px}.math-pop-btn{font-size:1.1rem;padding:12px}.spelling-letter{width:36px;height:36px;font-size:.95rem}.hangman-key{width:28px;height:30px;font-size:.75rem}.hangman-letter-slot{width:28px;height:34px;font-size:1.1rem}.ttt-cell{font-size:1.6rem}.difficulty-btns{flex-direction:column;align-items:center}}
