:root{--brand:#c2410c;--brand-hover:#9a3412;--brand-bright:#ea580c;--brand-amber:#f59e0b;--brand-soft:#fef3c773;--brand-soft-border:#fdba7466;--bg:#f8f6f2;--surface:#fff;--surface-2:#fcfbfa;--border:#eae5de;--border-strong:#dbd4c9;--ink:#1c1915;--ink-soft:#575249;--ink-faint:#9c9489;--ok:#15803d;--warn:#b45309;--danger:#b91c1c;--status-success:#52c41a;--status-success-bg:#f6ffed;--status-success-border:#b7eb8f;--status-error:#ff4d4f;--status-error-bg:#fff2f0;--status-error-border:#ffccc7;--status-warning:#fa8c16;--status-warning-bg:#fff7e6;--status-warning-border:#ffd591;--status-pending:#d9d9d9;--status-pending-bg:#fafafa;--status-pending-border:#f0f0f0;--status-waiting:#faad14;--status-expired:#ffa940;--role-host:#6366f1;--role-deputy:#fa8c16;--online:#0284c7;--online-bg:#e0f2fe;--online-border:#bae6fd;--surface-raised:#fafafa;--surface-muted:#f5f5f5;--ink-strong:#262626;--shadow-sm:0 1px 2px #442a0c08;--shadow-md:0 8px 30px -6px #442a0c14;--shadow-lg:0 20px 48px -12px #442a0c29;--radius-outer:24px;--radius-inner:16px;--gradient-orb-1:#f9731614;--gradient-orb-2:#f59e0b0d}[data-theme=dark]{--brand:#f97316;--brand-hover:#fb923c;--brand-bright:#fdba74;--brand-amber:#fbbf24;--brand-soft:#7c2d1233;--brand-soft-border:#f9731640;--bg:#141211;--surface:#1e1b19;--surface-2:#272320;--border:#2e2824;--border-strong:#3d352e;--ink:#f7f5f2;--ink-soft:#c9c3ba;--ink-faint:#8e8579;--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 30px -6px #0009;--shadow-lg:0 20px 48px -12px #000000b3;--gradient-orb-1:#f973160f;--gradient-orb-2:#f59e0b0a;--status-success:#73d13d;--status-success-bg:#52c41a1a;--status-success-border:#52c41a4d;--status-error:#ff7875;--status-error-bg:#ff4d4f1a;--status-error-border:#ff4d4f4d;--status-warning:#ffa940;--status-warning-bg:#fa8c161a;--status-warning-border:#fa8c164d;--status-pending:#595959;--status-pending-bg:#ffffff0a;--status-pending-border:#ffffff14;--status-waiting:#ffc53d;--status-expired:#ffc069;--role-host:#818cf8;--role-deputy:#ffa940;--online:#38bdf8;--online-bg:#38bdf81a;--online-border:#38bdf84d;--surface-raised:#272320;--surface-muted:#2e2824;--ink-strong:#f7f5f2}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scrollbar-gutter:stable;overflow-x:hidden}body{color:var(--ink);background-color:var(--bg);background-image:radial-gradient(1000px 500px at 15% -5%, var(--gradient-orb-1), transparent 65%), radial-gradient(800px 400px at 90% 10%, var(--gradient-orb-2), transparent 60%);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-attachment:fixed;margin:0;font-family:Be Vietnam Pro,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.font-display{letter-spacing:-.025em;font-family:Sora,Be Vietnam Pro,sans-serif}.db-outer{border-radius:var(--radius-outer);-webkit-backdrop-filter:blur(8px);box-shadow:var(--shadow-lg);background:#ffffff0f;border:1px solid #ffffff1f;padding:6px;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s cubic-bezier(.16,1,.3,1)}[data-theme=dark] .db-outer{background:#0003;border-color:#ffffff0d}.db-inner{background:var(--surface);border:1px solid var(--border);border-radius:calc(var(--radius-outer) - 6px);padding:30px 24px;box-shadow:inset 0 1px 1px #ffffff26}[data-theme=dark] .db-inner{box-shadow:inset 0 1px #ffffff0d}.party-card{background:var(--surface);border:1px solid var(--border);cursor:pointer;color:inherit;border-radius:20px;padding:20px 22px;text-decoration:none;transition:transform .28s cubic-bezier(.32,.72,0,1),box-shadow .28s cubic-bezier(.32,.72,0,1),border-color .28s}.party-card--nav{position:relative}.party-card-hitarea{z-index:1;border-radius:inherit;position:absolute;inset:0}.party-card-body{z-index:0;position:relative}.party-card-interactive{z-index:2;position:relative}.ant-btn:not(:disabled):not(.ant-btn-loading):hover{transform:scale(1.04)!important}.ant-btn:not(:disabled):not(.ant-btn-loading):active{transform:scale(.98)!important}button:not(:disabled){transition:transform .2s cubic-bezier(.32,.72,0,1)}button:not(:disabled):hover{transform:scale(1.04)}button:not(:disabled):active{transform:scale(.98)}.clickable-zoom{cursor:pointer;transition:transform .2s cubic-bezier(.32,.72,0,1);display:inline-block}.clickable-zoom:hover{transform:scale(1.04)}.clickable-zoom:active{transform:scale(.98)}.hover-text{cursor:pointer;transition:opacity .2s,transform .2s cubic-bezier(.32,.72,0,1),filter .2s}.hover-text:hover{filter:brightness(1.12);transform:scale(1.04)}.hover-text:active{filter:brightness();transform:scale(1)}.hover-text-row{cursor:pointer;transition:opacity .18s,background .18s,border-color .18s,transform .2s cubic-bezier(.32,.72,0,1)}.hover-text-row:hover{opacity:.92;transform:scale(1.04)}.hover-text-row:hover .ant-typography,.hover-text-row:hover strong{color:var(--brand);transition:color .18s}.hover-text-row--panel:hover{opacity:1;transform:scale(1.04);background:var(--brand-soft)!important;border-color:var(--brand-soft-border)!important}.party-card:hover{box-shadow:var(--shadow-lg);border-color:var(--brand-soft-border);transform:translateY(-6px)scale(1.01)}.party-card:active{transform:translateY(-1px)scale(.99)}.custom-input{border-color:var(--border)!important;background:var(--surface-2)!important;border-radius:12px!important;padding:8px 12px!important;transition:all .2s cubic-bezier(.16,1,.3,1)!important}.custom-input:focus,.custom-input-focused{border-color:var(--brand)!important;background:var(--surface)!important;box-shadow:0 0 0 3px var(--brand-soft-border)!important}.btn-google-custom{color:#3c4043!important;background:#fff!important;border:1px solid #d9d9d9!important;border-radius:24px!important;justify-content:center!important;align-items:center!important;gap:12px!important;height:48px!important;font-weight:500!important;transition:all .25s cubic-bezier(.16,1,.3,1)!important;display:flex!important;box-shadow:0 1px 2px #3c40434d,0 1px 3px 1px #3c404326!important}.btn-google-custom:hover{background:#f7f9fa!important;border-color:#c2c3c5!important;box-shadow:0 1px 3px #3c40434d,0 4px 8px 3px #3c404326!important}.btn-google-custom:active{background:#f1f3f4!important;transform:scale(.985)!important}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.meal-settle-chip{box-sizing:border-box;letter-spacing:.01em;cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;width:118px;min-width:118px;height:28px;padding:0 8px;font-size:12px;font-weight:700;line-height:1;transition:background .2s,border-color .2s,color .2s,box-shadow .2s;display:inline-flex}.meal-settle-chip.is-pending{border:1px solid color-mix(in srgb, var(--brand-bright,var(--brand)) 40%, transparent);background:color-mix(in srgb, var(--brand) 10%, transparent);color:var(--brand-bright,var(--brand))}.meal-settle-chip.is-settled{border:1.5px solid var(--status-success);background:var(--status-success-bg,#f6ffed);color:var(--status-success);box-shadow:0 1px 0 color-mix(in srgb, var(--status-success) 25%, transparent)}.meal-settle-chip__label{white-space:nowrap}.meal-settle-chip__icon{font-size:13px;display:inline-flex}@keyframes meal-settle-stamp{0%{opacity:.55;filter:blur(.4px);transform:scale(1.55)rotate(-22deg)}55%{opacity:1;filter:blur();transform:scale(.9)rotate(-4deg)}78%{transform:scale(1.06)rotate(-1deg)}to{transform:scale(1)rotate(-2deg)}}.meal-settle-chip.stamp-anim{animation:.45s cubic-bezier(.22,1.4,.36,1) meal-settle-stamp}@media (prefers-reduced-motion:reduce){.meal-settle-chip.stamp-anim{animation:none}.meal-settle-chip.is-settled{transform:none}}@keyframes card-enter{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes content-fade-in{0%{opacity:0}to{opacity:1}}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(6px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes floatSoft{0%,to{transform:translateY(-50%)}50%{transform:translateY(calc(-50% - 14px))}}@keyframes floatY{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes orb-drift{0%,to{background-position:0 0,100% 100%}50%{background-position:8% 6%,92% 94%}}@keyframes ambient-float-1{0%,to{transform:translate(0)scale(1)}33%{transform:translate(30px,-20px)scale(1.05)}66%{transform:translate(-15px,15px)scale(.97)}}@keyframes ambient-float-2{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-25px,20px)scale(1.08)}}@keyframes ambient-float-3{0%,to{transform:translate(0)scale(1)}40%{transform:translate(20px,25px)scale(1.04)}80%{transform:translate(-20px,-10px)scale(.96)}}@keyframes welcome-shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes welcome-glow{0%,to{opacity:.45;transform:scale(1)}50%{opacity:.75;transform:scale(1.02)}}@keyframes gradient-shift{0%,to{background-position:0%}50%{background-position:100%}}@keyframes fire-flicker{0%{transform:scale(1)rotate(-4deg)}20%{transform:scale(1.12)rotate(3deg)}40%{transform:scale(.94)rotate(-2deg)}60%{transform:scale(1.08)rotate(5deg)}80%{transform:scale(.98)rotate(-3deg)}to{transform:scale(1.05)rotate(2deg)}}@keyframes fire-glow-pulse{0%,to{opacity:.55;transform:translate(-50%)scale(1)}50%{opacity:.9;transform:translate(-50%,-4px)scale(1.15)}}@keyframes fire-spark-rise{0%{opacity:0;transform:translateY(0)scale(.6)}20%{opacity:.9}to{opacity:0;transform:translateY(-22px)scale(.2)}}@keyframes upcoming-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--brand) 0%, transparent)}50%{box-shadow:0 0 0 4px color-mix(in srgb, var(--brand) 18%, transparent)}}@keyframes btn-pulse-glow{0%,to{box-shadow:0 4px 18px color-mix(in srgb, var(--brand) 40%, transparent);transform:scale(1)}50%{box-shadow:0 8px 28px color-mix(in srgb, var(--brand) 60%, transparent);transform:scale(1.03)}}@keyframes vote-join-nudge{0%,to{background:#ffffff14;border-color:#ffffff40;box-shadow:0 0 #52c41a73}50%{background:#52c41a33;border-color:#52c41ae6;box-shadow:0 0 0 7px #52c41a00,0 4px 20px #52c41a73}}@keyframes logo-sparkle{0%,to{opacity:1}50%{opacity:.55}}@keyframes empty-bounce{0%,to{transform:translateY(0)rotate(0)}25%{transform:translateY(-6px)rotate(-4deg)}75%{transform:translateY(-3px)rotate(4deg)}}@keyframes wave-hand{0%,to{display:inline-block;transform:rotate(0)}15%{transform:rotate(14deg)}30%{transform:rotate(-8deg)}45%{transform:rotate(10deg)}60%{transform:rotate(0)}}@keyframes map-point-finger{0%,to{transform:translate(0)}50%{transform:translate(-4px)}}.map-link-finger{flex-shrink:0;font-size:1.05em;line-height:1;animation:1.1s ease-in-out infinite map-point-finger;display:inline-block}.map-link-finger--pulse{filter:drop-shadow(0 0 4px #ffc800e6);font-size:1.2em;animation:1.1s ease-in-out infinite map-point-finger,1.1s ease-in-out infinite icon-pop}.map-location-link{background:#ffc8002e;border:1px solid #ffc8008c;border-radius:999px;max-width:100%;padding:3px 10px;animation:1.6s ease-in-out infinite map-link-glow}.map-link-text{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}@keyframes map-link-glow{0%,to{box-shadow:0 0 #ffc80080}50%{box-shadow:0 0 0 5px #ffc80000}}.participant-row{flex-wrap:wrap;align-items:flex-start;gap:8px 12px;display:flex}.participant-row-user{flex:190px;min-width:0}.participant-row-order{flex:2 190px;min-width:0}.participant-row-status{flex-shrink:0;margin-left:auto}@media (width<=480px){.participant-row-user{flex-basis:100%}.participant-row-order{flex-basis:100%;order:3}.participant-row-status{order:2;margin-left:0}}.map-link-guide{color:#b8860b;background:#fff;border-radius:999px;flex-shrink:0;padding:1px 8px;font-size:11px;font-weight:700;line-height:1.4;animation:1.6s ease-in-out infinite map-link-guide-bounce;display:inline-block;box-shadow:0 2px 6px #00000040}@keyframes map-link-guide-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes icon-pop{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}body:not([data-seasonal-theme]){background-size:200% 200%;animation:18s ease-in-out infinite orb-drift}.ambient-orbs{pointer-events:none;z-index:0;contain:strict;position:fixed;inset:0;overflow:hidden}.ambient-orb{filter:blur(40px);border-radius:50%;position:absolute;transform:translateZ(0)}.ambient-orb-1{background:color-mix(in srgb, var(--brand) 42%, transparent);opacity:.55;width:min(70vw,520px);height:min(70vw,520px);animation:18s ease-in-out infinite ambient-float-1;top:-10%;left:-12%}.ambient-orb-2{background:color-mix(in srgb, var(--brand-amber) 38%, transparent);opacity:.5;width:min(60vw,440px);height:min(60vw,440px);animation:22s ease-in-out infinite ambient-float-2;top:12%;right:-10%}.ambient-orb-3{background:color-mix(in srgb, var(--brand-bright) 35%, transparent);opacity:.45;width:min(50vw,380px);height:min(50vw,380px);animation:16s ease-in-out infinite ambient-float-3;bottom:-12%;left:30%}[data-theme=dark] .ambient-orb{opacity:.4;filter:blur(55px)}.emoji-fire{line-height:1;display:inline-block;position:relative}.emoji-fire__icon{z-index:2;filter:drop-shadow(0 0 6px #ff9500)drop-shadow(0 0 14px #f50)drop-shadow(0 0 22px #ff50008c);animation:.55s ease-in-out infinite fire-flicker;display:inline-block;position:relative}.emoji-fire__glow{z-index:0;pointer-events:none;background:radial-gradient(at bottom,#ffdc50bf 0%,#ff78008c 35%,#ff3c0040 60%,#0000 75%);border-radius:50% 50% 45% 45%;width:140%;height:90%;animation:.7s ease-in-out infinite fire-glow-pulse;position:absolute;bottom:8%;left:50%;transform:translate(-50%)}.emoji-fire__spark{z-index:1;pointer-events:none;background:radial-gradient(circle,#ffe566 0%,#ff7800 70%,#0000 100%);border-radius:50%;width:5px;height:5px;animation:1.1s ease-out infinite fire-spark-rise;position:absolute}.emoji-fire__spark--1{animation-delay:0s;bottom:45%;left:25%}.emoji-fire__spark--2{width:4px;height:4px;animation-delay:.35s;bottom:50%;left:55%}.emoji-fire__spark--3{width:3px;height:3px;animation-delay:.7s;bottom:40%;left:40%}.emoji-fire--inline{vertical-align:middle;margin-right:1px}.emoji-fire--inline .emoji-fire__glow{width:120%;height:70%;bottom:5%}.emoji-fire--inline .emoji-fire__spark{width:3px;height:3px}.emoji-fire--inline .emoji-fire__spark--2,.emoji-fire--inline .emoji-fire__spark--3{width:2px;height:2px}.emoji-fire--inline .emoji-fire__icon{filter:drop-shadow(0 0 4px #ff9500)drop-shadow(0 0 8px #f50)}.home-welcome{isolation:isolate;background:linear-gradient(135deg, var(--surface) 0%, color-mix(in srgb, var(--brand) 14%, var(--surface)) 40%, color-mix(in srgb, var(--brand-amber) 10%, var(--surface)) 70%, var(--surface) 100%)!important;background-size:300% 300%!important;animation:14s infinite gradient-shift!important}.home-welcome:before{content:"";border-radius:inherit;background:linear-gradient(90deg, var(--brand), var(--brand-amber), var(--brand-bright), var(--brand));-webkit-mask-composite:xor;pointer-events:none;z-index:0;opacity:.85;background-size:300% 100%;padding:2px;animation:8s linear infinite welcome-shimmer;position:absolute;inset:-2px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.home-welcome:after{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--brand) 35%, transparent), transparent 65%);pointer-events:none;z-index:0;border-radius:50%;width:240px;height:240px;animation:4s ease-in-out infinite welcome-glow;position:absolute;top:-60px;right:-60px}.party-card--upcoming{border-color:var(--brand-soft-border)}.party-card--upcoming:hover{box-shadow:0 0 0 3px color-mix(in srgb, var(--brand) 15%, transparent), var(--shadow-lg)}.home-welcome .wave-emoji{transform-origin:70% 70%;animation:2.5s ease-in-out infinite wave-hand;display:inline-block}.stat-tile{transition:transform .25s cubic-bezier(.32,.72,0,1),box-shadow .25s,border-color .25s}.stat-tile:hover{box-shadow:var(--shadow-sm);transform:translateY(-3px);border-color:var(--brand-soft-border)!important}.stat-tile .stat-icon{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.stat-tile:hover .stat-icon{animation:.45s icon-pop}.btn-glow{transition:transform .2s cubic-bezier(.32,.72,0,1)!important;animation:2s ease-in-out infinite btn-pulse-glow!important}.btn-glow:hover{transform:scale(1.04)!important}.btn-glow:active{transform:scale(.98)!important}.vote-join-nudge{transition:transform .2s cubic-bezier(.32,.72,0,1);animation:1.6s ease-in-out infinite vote-join-nudge}.vote-join-nudge:hover{animation:none;transform:scale(1.04);background:#52c41a38!important;border-color:#52c41ae6!important;box-shadow:0 4px 20px #52c41a66!important}.logo-float{animation:4s ease-in-out infinite floatY}.logo-sparkle path{animation:2s ease-in-out infinite logo-sparkle}.logo-sparkle path:nth-child(odd){animation-delay:.3s}.empty-state-emoji{animation:2.4s ease-in-out infinite empty-bounce;display:inline-block}.app-main{z-index:1;position:relative}.route-fade{animation:.22s ease-out content-fade-in}.page-flow .page-flow,.page-flow>.page-section{animation:none}.party-nav-skeleton{background:linear-gradient(90deg, var(--surface-2) 0%, var(--surface-muted) 45%, var(--surface-2) 90%);background-size:200% 100%;border-radius:12px;height:40px;margin-bottom:8px;animation:1.3s ease-in-out infinite skeleton-shimmer}.party-banner-skeleton{border:1px solid var(--border);background:linear-gradient(90deg, var(--surface-2) 0%, var(--surface-muted) 45%, var(--surface-2) 90%);background-size:200% 100%;border-radius:24px;height:168px;animation:1.3s ease-in-out infinite skeleton-shimmer}.party-section-skeleton{border:1px solid var(--border);background:linear-gradient(90deg, var(--surface-2) 0%, var(--surface-muted) 45%, var(--surface-2) 90%);background-size:200% 100%;border-radius:12px;height:76px;animation:1.3s ease-in-out infinite skeleton-shimmer}.party-detail-flow,.party-detail-side{flex-direction:column;gap:5px;display:flex}.card-stagger>*,.stat-stagger>*{animation:none}.expand-collapse{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .22s ease-out,opacity .16s ease-out;display:grid}.expand-collapse--open{opacity:1;grid-template-rows:1fr}.expand-collapse__inner{min-height:0;overflow:hidden}.collapse-caret{transform-origin:50%;flex-shrink:0;transition:transform .28s cubic-bezier(.32,.72,0,1)}.collapse-caret--open{transform:rotate(90deg)}@keyframes poll-card-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.poll-card-enter{animation:.22s ease-out both poll-card-in}.poll-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;margin-bottom:8px;padding:12px 14px 10px;transition:box-shadow .15s}.poll-card:last-child{margin-bottom:0}.poll-option{border:1.5px solid var(--border);background:var(--surface-2);border-radius:10px;padding:7px 10px 5px;transition:border-color .15s,background .15s;overflow:hidden}.poll-option--clickable{cursor:pointer}.poll-option--clickable:hover,.poll-option--voted{border-color:var(--brand);background:var(--brand-soft)}.poll-check{border:1.5px solid var(--border-strong);color:#0000;background:var(--surface);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;transition:border-color .15s,background .15s,color .15s;display:flex}.poll-check--voted{border-color:var(--brand);background:var(--brand);color:#fff}.poll-bar-track{background:var(--border);border-radius:99px;height:3px;margin-top:5px;overflow:hidden}.poll-bar-fill{background:var(--border-strong);border-radius:99px;height:100%;transition:width .4s}.poll-bar-fill--voted{background:var(--brand)}.expand-panel-body{border:1px solid var(--border);border-top:none;border-radius:0 0 8px 8px;padding:10px 12px}.expand-panel-header--open{background:var(--surface-raised)!important;border-radius:8px 8px 0 0!important}.party-card-skeleton{border:1px solid var(--border);background:linear-gradient(90deg, var(--surface-2) 0%, var(--surface-muted) 45%, var(--surface-2) 90%);background-size:200% 100%;border-radius:20px;height:92px;animation:1.3s ease-in-out infinite skeleton-shimmer}.party-list-header{animation:none}.party-card .card-arrow{transition:transform .25s cubic-bezier(.32,.72,0,1),color .2s}.party-card:hover .card-arrow{transform:translate(4px);color:var(--brand)!important}.header-user-chip{transition:border-color .2s,background .2s}.header-user-chip:hover{border-color:var(--brand-soft-border)!important;background:var(--brand-soft)!important}.animate-in,.stagger>*{animation:none}@media (width<=767px){.ambient-orb{filter:blur(28px);opacity:.38!important}.ambient-orb-3{display:none}.home-welcome:before{opacity:.5;animation:none}}@keyframes ptr-spin{to{transform:rotate(360deg)}}@keyframes text-reveal-blink{0%,to{opacity:1}50%{opacity:0}}.text-reveal-cursor{margin-left:1px;font-weight:300;animation:.75s step-end infinite text-reveal-blink;display:inline-block}@keyframes text-reveal-blur-in{0%{opacity:0;filter:blur(6px)}to{opacity:1;filter:blur()}}.text-reveal-blur{opacity:0;animation:.5s ease-out forwards text-reveal-blur-in;display:inline-block}@keyframes text-reveal-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.text-reveal-word{opacity:0;animation:.4s ease-out forwards text-reveal-in;display:inline-block}@media (prefers-reduced-motion:reduce){.animate-in,.route-fade,.stagger>*,.card-stagger>*,.stat-stagger>*,.page-flow>.page-section,.page-flow,.party-list-header,.party-card-skeleton,.party-banner-skeleton,.party-section-skeleton,.party-nav-skeleton,.ambient-orb,.emoji-fire__icon,.emoji-fire__glow,.emoji-fire__spark,.home-welcome,.party-card--upcoming,.btn-glow,.vote-join-nudge,.hover-text,.hover-text-row,.nav-outline-btn,.clickable-zoom,.ant-btn,button,.logo-float,.empty-state-emoji,.wave-emoji,.map-link-finger,.map-location-link,.map-link-guide,.expand-collapse,.collapse-caret,.chat-msg-drop,body:not([data-seasonal-theme]){animation:none!important}.chat-msg-drop{opacity:1!important;transform:none!important}*{scroll-behavior:auto!important}}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);background-clip:content-box;border:2px solid #0000;border-radius:99px;transition:background .2s}::-webkit-scrollbar-thumb:hover{background:var(--ink-faint);background-clip:content-box}.party-detail-nav{z-index:99;position:sticky;overflow:hidden}.party-detail-nav .ant-btn:not(:disabled):not(.ant-btn-loading):hover,.party-detail-nav .ant-btn:not(:disabled):not(.ant-btn-loading):active,.party-detail-nav .btn-glow:hover,.party-detail-nav .btn-glow:active{transform:none!important}@media (width<=767px){.nav-label{display:none}.page-topnav{flex-wrap:wrap;gap:8px}.party-header h2.ant-typography{font-size:22px!important}.party-banner-desc{display:none!important}.ant-modal{max-width:calc(100vw - 24px)!important;margin:12px auto!important}.app-header-brand{letter-spacing:-.01em;white-space:nowrap;color:var(--ink);flex-shrink:0;font-family:Be Vietnam Pro,sans-serif;font-size:17px;font-weight:800;line-height:1.2;display:none}.party-banner-meta{flex-direction:column!important;gap:10px!important}.party-banner-meta-info{flex:auto;min-width:0}.party-banner-vote-row{flex-wrap:wrap}.app-main{padding-top:10px!important}.app-header-inner{height:38px!important}.app-header-inner .ant-avatar{width:22px!important;height:22px!important;font-size:11px!important;line-height:22px!important}.app-header-inner .ant-btn{width:28px!important;height:28px!important;font-size:13px!important}.party-detail-nav{gap:8px!important;padding:8px 10px!important}.party-detail-nav .ant-space{gap:6px!important}.party-detail-nav .ant-btn{height:32px!important;padding:0 10px!important;font-size:12px!important}}.app-header-brand{letter-spacing:-.025em;white-space:nowrap;color:var(--ink);flex-shrink:0;font-size:18.5px;font-weight:800;line-height:1.2}.party-banner-meta{width:100%}.party-banner-meta-info{flex:1;min-width:0}.party-banner-vote-row{border-top:1px solid #ffffff24;width:100%;padding-top:14px}.party-vote-btn:not(:disabled):hover{background:#ffffff29!important}.banner-action-btn{transition:all .2s!important}.banner-action-btn:hover{box-shadow:0 2px 8px #0003;background:#ffffff40!important;border-color:#ffffff80!important}.banner-action-btn:active{background:#ffffff4d!important}.nav-outline-btn{transition:transform .2s cubic-bezier(.32,.72,0,1),background .2s,border-color .2s,box-shadow .2s!important}.nav-outline-btn:hover{box-shadow:0 3px 10px #00000014}.nav-outline-btn:active{box-shadow:none}.nav-outline-btn--brand:hover{background:var(--brand-soft)!important;border-color:var(--brand)!important;color:var(--brand)!important}.nav-outline-btn--purple:hover{color:#7c3aed!important;background:#7c3aed1a!important;border-color:#7c3aed!important}.nav-outline-btn--amber:hover{color:#d97706!important;background:#d977061a!important;border-color:#d97706!important}@keyframes emoji-picker-pop{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.emoji-popover-overlay .ant-popover-inner{animation:.2s cubic-bezier(.34,1.56,.64,1) both emoji-picker-pop;background:var(--surface)!important;box-shadow:var(--shadow-lg)!important;border-radius:14px!important;padding:0!important;overflow:hidden!important}.emoji-popover-overlay .ant-popover-content{border-radius:14px!important;overflow:hidden!important}.emoji-popover-overlay .ant-popover-arrow{display:none!important}.EmojiPickerReact{border:none!important;border-radius:14px!important;font-family:inherit!important}.EmojiPickerReact .epr-header{display:contents}.EmojiPickerReact .epr-search-container{order:0}.EmojiPickerReact .epr-body{scrollbar-width:thin;order:1}.EmojiPickerReact .epr-category-nav{border-top:1px solid var(--border);flex-shrink:0;order:2;padding:8px 10px 10px}.EmojiPickerReact .epr-category-nav button{opacity:.6;transition:opacity .15s}.EmojiPickerReact .epr-category-nav button:hover,.EmojiPickerReact .epr-category-nav button.epr-active{opacity:1}.EmojiPickerReact .epr-emoji-list button.epr-emoji:hover{border-radius:9px!important;transition:transform .1s!important;transform:scale(1.18)!important}.EmojiPickerReact .epr-body::-webkit-scrollbar{width:4px}.EmojiPickerReact .epr-body::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:99px}.EmojiPickerReact .epr-body+div{display:none!important}@keyframes reaction-bar-pop{0%{opacity:0;transform:translateY(4px)scale(.88)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes chat-msg-drop{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-msg-drop{opacity:0;animation:.4s cubic-bezier(.22,1,.36,1) both chat-msg-drop}.chat-reaction-bar{z-index:1;flex-wrap:nowrap;align-items:center;gap:5px;width:max-content;max-width:none;display:flex;position:absolute;bottom:0;transform:translateY(50%)}.chat-reaction-bar--mine{justify-content:flex-end;right:8px}.chat-reaction-bar--other{justify-content:flex-start;left:8px}.chat-reaction-bar--has-chip{gap:6px}.chat-reaction-bar-actions{white-space:nowrap;flex-shrink:0;align-items:center;gap:5px;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.chat-reaction-bar--mine .chat-reaction-bar-actions{margin-right:6px;right:100%}.chat-reaction-bar--other .chat-reaction-bar-actions{margin-left:6px;left:100%}.chat-reaction-action-wrap{flex-shrink:0;position:relative}.chat-reaction-chip{background:var(--surface);border:1.5px solid var(--border);box-shadow:var(--shadow-md);cursor:default;-webkit-backdrop-filter:blur(10px);border-radius:14px;flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:3px;width:max-content;padding:2px 7px 2px 6px;font-size:12px;line-height:1;display:inline-flex}.chat-reaction-chip-emoji{flex-shrink:0;font-size:13px;line-height:1;display:inline-block}.chat-reaction-picker-anchor{z-index:60;position:absolute;bottom:calc(100% + 4px);right:0}.chat-reaction-picker-anchor--other{left:0;right:auto}.chat-reaction-picker-stack{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.chat-reaction-picker-stack--other{align-items:flex-start}.chat-reaction-full-picker{box-shadow:var(--shadow-lg);border-radius:14px;overflow:hidden}.chat-reaction-chip-count{color:var(--ink-soft);flex-shrink:0;min-width:6px;font-size:11px;font-weight:600}.chat-reaction-like-btn{border:1.5px solid var(--border);background:var(--surface);width:22px;height:22px;color:var(--ink-soft);cursor:pointer;box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(10px);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:0;transition:background .15s,transform .15s,color .15s;display:flex}.chat-reaction-like-btn:hover{background:var(--surface-muted);color:var(--ink);transform:scale(1.06)}.chat-reaction-like-btn.has-reaction{color:var(--brand)}.chat-reaction-picker{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);z-index:60;white-space:nowrap;border-radius:20px;align-items:center;gap:2px;padding:5px 7px;animation:.18s cubic-bezier(.34,1.56,.64,1) both reaction-bar-pop;display:flex;position:relative;bottom:auto;left:auto;right:auto}.chat-reaction-picker-btn{cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;padding:0;font-size:18px;line-height:1;transition:transform .12s,background .1s;display:flex}.chat-reaction-picker-btn.is-active{background:var(--brand-soft)}.chat-reaction-picker-btn:hover{background:var(--surface-muted);transform:scale(1.15)}.chat-reaction-picker-plus{background:var(--surface-muted);width:30px;height:30px;color:var(--ink-soft);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .12s,transform .12s;display:flex}.chat-reaction-picker-plus:hover{background:var(--border-strong);color:var(--ink);transform:scale(1.08)}.chat-card.chat-fullscreen{z-index:1000!important;border:none!important;border-radius:0!important;height:100dvh!important;max-height:100dvh!important;margin:0!important;position:fixed!important;inset:0!important}@media (width<=767px){.chat-col{display:block}body{overflow-x:hidden}}.mobile-page{background:var(--bg);z-index:1;flex-direction:column;display:flex;position:fixed;inset:38px 0 0}.mobile-page-body{flex:1;position:relative;overflow:hidden}.mobile-tab-panel{height:100%;display:none}.mobile-tab-panel.active{flex-direction:column;display:flex}.mobile-tab-panel:first-child.active{-webkit-overflow-scrolling:touch;flex-direction:column;gap:16px;padding:16px 14px 20px;display:flex;overflow-y:auto}body:has(.ant-modal-wrap) .mobile-tab-panel.active{overflow:hidden!important}body:has(.ant-modal-wrap) .party-info-col{overflow:hidden!important}body:has(.ant-modal-wrap) .chat-messages{overflow:hidden!important}.mobile-page-tabbar{background:var(--surface);border-top:1px solid var(--border);padding:6px 10px calc(6px + env(safe-area-inset-bottom,0px));flex-shrink:0;gap:8px;display:flex;box-shadow:0 -2px 10px #0000000a}.mobile-tab-btn{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:12px;flex-direction:row;flex:1;justify-content:center;align-items:center;gap:6px;padding:9px 8px;font-size:13.5px;font-weight:600;transition:color .15s,background .15s,transform .1s;display:flex}.mobile-tab-btn .anticon{font-size:16px}.mobile-tab-btn.active{color:var(--brand);background:var(--brand-soft);font-weight:700}.mobile-tab-btn:active{transform:scale(.96)}.chat-card{flex-direction:column;display:flex}.chat-card .ant-card-body{flex-direction:column!important;flex:1!important;padding:0!important;display:flex!important;overflow:hidden!important}.chat-card .ant-card-head{border-bottom:1px solid var(--border)!important;min-height:36px!important;padding:0 16px!important}.chat-messages{overflow-anchor:none;-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding:14px 14px 8px;overflow:hidden auto}.chat-col{flex-direction:column;display:flex}.chat-messages>:first-child{margin-top:auto!important}.party-desktop-wrapper{flex-direction:column;max-width:1280px;height:calc(100dvh - 56px);margin:0 auto;padding:6px 16px 0;display:flex;overflow:hidden}.party-desktop-wrapper>.ant-row{flex:1;min-height:0;overflow:hidden}.party-desktop-wrapper>.ant-row>.ant-col{height:100%}.party-info-col{flex-direction:column;gap:5px;height:100%;padding-bottom:16px;padding-right:2px;display:flex;overflow-y:auto}.party-desktop-wrapper .chat-col{height:100%}[data-seasonal-theme=spring]{--brand:#059669;--brand-hover:#047857;--brand-bright:#10b981;--brand-soft:#d1fae573;--brand-soft-border:#a7f3d066;--gradient-orb-1:#10b98114;--gradient-orb-2:#fbbf240d}[data-theme=dark][data-seasonal-theme=spring]{--brand:#34d399;--brand-hover:#6ee7b7;--brand-bright:#a7f3d0;--brand-soft:#064e3b33;--brand-soft-border:#34d39940;--gradient-orb-1:#34d3990f;--gradient-orb-2:#fbbf240a}[data-seasonal-theme=tet]{--brand:#dc2626;--brand-hover:#b91c1c;--brand-bright:#ef4444;--brand-soft:#fee2e273;--brand-soft-border:#fecaca66;--gradient-orb-1:#ef444414;--gradient-orb-2:#f59e0b0f}[data-theme=dark][data-seasonal-theme=tet]{--brand:#ef4444;--brand-hover:#f87171;--brand-bright:#fca5a5;--brand-soft:#991b1b33;--brand-soft-border:#ef444440;--gradient-orb-1:#ef44440f;--gradient-orb-2:#f59e0b0a}[data-seasonal-theme=reunification]{--brand:#be123c;--brand-hover:#9f1239;--brand-bright:#e11d48;--brand-soft:#ffe4e673;--brand-soft-border:#fecdd366;--gradient-orb-1:#e11d4814;--gradient-orb-2:#eab3080f}[data-theme=dark][data-seasonal-theme=reunification]{--brand:#f43f5e;--brand-hover:#fb7185;--brand-bright:#fda4af;--brand-soft:#88133733;--brand-soft-border:#f43f5e40;--gradient-orb-1:#f43f5e0f;--gradient-orb-2:#eab3080a}[data-seasonal-theme=summer]{--brand:#0284c7;--brand-hover:#0369a1;--brand-bright:#0ea5e9;--brand-soft:#e0f2fe73;--brand-soft-border:#bae6fd66;--gradient-orb-1:#0ea5e917;--gradient-orb-2:#f59e0b0d}[data-theme=dark][data-seasonal-theme=summer]{--brand:#38bdf8;--brand-hover:#7dd3fc;--brand-bright:#bae6fd;--brand-soft:#0c4a6e33;--brand-soft-border:#38bdf840;--gradient-orb-1:#38bdf80f;--gradient-orb-2:#f59e0b0a}[data-seasonal-theme=autumn]{--brand:#b45309;--brand-hover:#92400e;--brand-bright:#d97706;--brand-soft:#fef3c773;--brand-soft-border:#fde68a66;--gradient-orb-1:#d9770614;--gradient-orb-2:#7835040a}[data-theme=dark][data-seasonal-theme=autumn]{--brand:#fbbf24;--brand-hover:#fcd34d;--brand-bright:#fde68a;--brand-soft:#78350433;--brand-soft-border:#fbbf2440;--gradient-orb-1:#fbbf240f;--gradient-orb-2:#7835040a}[data-seasonal-theme=mid_autumn]{--brand:#7c3aed;--brand-hover:#6d28d9;--brand-bright:#8b5cf6;--brand-soft:#ede9fe73;--brand-soft-border:#ddd6fe66;--gradient-orb-1:#8b5cf614;--gradient-orb-2:#fbbf240f}[data-theme=dark][data-seasonal-theme=mid_autumn]{--brand:#a78bfa;--brand-hover:#c4b5fd;--brand-bright:#ddd6fe;--brand-soft:#5b21b633;--brand-soft-border:#a78bfa40;--gradient-orb-1:#a78bfa0f;--gradient-orb-2:#fbbf240a}[data-seasonal-theme=winter]{--brand:#475569;--brand-hover:#334155;--brand-bright:#64748b;--brand-soft:#f1f5f973;--brand-soft-border:#e2e8f066;--gradient-orb-1:#64748b14;--gradient-orb-2:#38bdf80a}[data-theme=dark][data-seasonal-theme=winter]{--brand:#94a3b8;--brand-hover:#cbd5e1;--brand-bright:#e2e8f0;--brand-soft:#1e293b33;--brand-soft-border:#94a3b840;--gradient-orb-1:#94a3b80f;--gradient-orb-2:#38bdf80a}[data-seasonal-theme=halloween]{--brand:#ea580c;--brand-hover:#c2410c;--brand-bright:#f97316;--brand-soft:#ffedd573;--brand-soft-border:#fed7aa66;--gradient-orb-1:#f9731614;--gradient-orb-2:#7c3aed0f}[data-theme=dark][data-seasonal-theme=halloween]{--brand:#f97316;--brand-hover:#fb923c;--brand-bright:#fdba74;--brand-soft:#7c2d1233;--brand-soft-border:#f9731640;--gradient-orb-1:#f973160f;--gradient-orb-2:#a78bfa0a}[data-seasonal-theme=christmas]{--brand:#b91c1c;--brand-hover:#991b1b;--brand-bright:#ef4444;--brand-soft:#fee2e273;--brand-soft-border:#fecaca66;--gradient-orb-1:#ef444414;--gradient-orb-2:#1665340f;--banner-glow:#ef44443d;--banner-glow-2:#1665342e}[data-theme=dark][data-seasonal-theme=christmas]{--brand:#ef4444;--brand-hover:#f87171;--brand-bright:#fca5a5;--brand-soft:#991b1b33;--brand-soft-border:#ef444440;--gradient-orb-1:#ef44440f;--gradient-orb-2:#22c55e0a}:root{--bg-primary:var(--bg);--bg-secondary:var(--surface);--text-primary:var(--ink);--text-secondary:var(--ink-soft);--accent-color:var(--brand);--border-color:var(--border);--shadow-style:var(--shadow-md)}.ant-typography.ant-typography-secondary,.ant-typography-secondary{color:var(--ink-soft)!important}.ant-card,.ant-card-bordered{background-color:var(--surface)!important;border-color:var(--border)!important;color:var(--ink)!important}.ant-card .ant-card-head{background-color:var(--surface)!important;border-bottom-color:var(--border)!important;color:var(--ink)!important}.ant-card .ant-card-body{color:var(--ink)!important}.ant-input,.ant-input-affix-wrapper,.ant-input-textarea textarea,.ant-input-outlined{background-color:var(--surface-2)!important;color:var(--ink)!important;border-color:var(--border)!important}.ant-input-affix-wrapper .ant-input{background-color:#0000!important}.ant-input::placeholder,.ant-input-affix-wrapper input::placeholder,.ant-input-textarea textarea::placeholder{opacity:1;color:var(--ink-faint)!important}.ant-input:focus,.ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-focused{border-color:var(--brand)!important;box-shadow:0 0 0 2px var(--brand-soft-border)!important}.ant-select .ant-select-selector{background-color:var(--surface-2)!important;border-color:var(--border)!important;color:var(--ink)!important}.ant-select-selection-placeholder{color:var(--ink-faint)!important}.ant-picker{background-color:var(--surface-2)!important;border-color:var(--border)!important;color:var(--ink)!important}.ant-picker input::placeholder{opacity:1;color:var(--ink-faint)!important}.ant-picker input{color:var(--ink)!important}.ant-picker .ant-picker-suffix{color:var(--ink-faint)!important}.ant-modal-root .ant-modal-wrap{justify-content:center;align-items:flex-start;height:100vh;padding:24px 0;display:flex;position:fixed;inset:0;overflow:hidden auto}.ant-modal-root .ant-modal{max-height:calc(100vh - 48px);margin:auto 0;padding-bottom:0;top:0}.ant-modal-container{flex-direction:column;max-height:calc(100vh - 48px);display:flex;background-color:var(--surface)!important;color:var(--ink)!important}.ant-modal-body{flex:auto;min-height:0;overflow:hidden auto}.ant-modal-header,.ant-modal-footer{background:0 0!important}.ant-modal-title{color:var(--ink)!important}.ant-modal .ant-modal-close{color:var(--ink-soft)!important}.ant-modal-confirm .ant-modal-header{display:none}.ant-modal-confirm .ant-modal-body{flex:none;overflow:visible}.create-party-form.ant-form-vertical .ant-form-item{margin-bottom:10px}.create-party-form .ant-form-item-label{padding-bottom:2px!important}.create-party-form .ant-form-item-label>label{font-size:13px}.create-party-form .ant-upload-drag{padding:10px 0!important}.ant-dropdown .ant-dropdown-menu,.ant-dropdown-menu{background-color:var(--surface)!important;border:1px solid var(--border)!important}.ant-dropdown-menu-item{color:var(--ink)!important}.ant-dropdown-menu-item:hover{background-color:var(--brand-soft)!important}.ant-tooltip .ant-tooltip-inner{background-color:var(--surface-2)!important;color:var(--ink)!important;border:1px solid var(--border)!important}.ant-form-item-label>label{color:var(--ink)!important}.ant-tag{border-color:var(--border)!important}body{transition:background-color .35s cubic-bezier(.32,.72,0,1),color .2s}.db-outer,.db-inner,.party-card{transition:background-color .35s cubic-bezier(.32,.72,0,1),border-color .35s,box-shadow .35s,transform .28s cubic-bezier(.32,.72,0,1)}:root{--banner-glow:#f9731629;--banner-glow-2:#f59e0b1a;--banner-divider:#ffffff1a}[data-seasonal-theme=spring]{--bg:#fff8f8;--surface:#fff;--surface-2:#fff2f2;--border:#fde0e0;--border-strong:#fbbfbf;--ink:#2d1a1a;--ink-soft:#7a4a4a;--ink-faint:#c49090;--brand:#e05a78;--brand-hover:#c04060;--brand-bright:#f07090;--brand-soft:#ffb7b240;--brand-soft-border:#e05a784d;--gradient-orb-1:#ffb7b22e;--gradient-orb-2:#e2f0cb24;--shadow-style:0 8px 30px -6px #e05a781f;--banner-glow:#ffb7b238;--banner-glow-2:#e2f0cb24}[data-theme=dark][data-seasonal-theme=spring]{--bg:#1a0f10;--surface:#241518;--surface-2:#2e1c20;--border:#3d2028;--border-strong:#4d2830;--ink:#fce8ea;--ink-soft:#d4949a;--ink-faint:#8a5055;--brand:#f0899a;--brand-hover:#f5aab8;--brand-bright:#ffccd5;--brand-soft:#f0899a26;--brand-soft-border:#f0899a40;--gradient-orb-1:#f0899a1a;--gradient-orb-2:#a7f3d00f;--shadow-style:0 8px 30px -6px #000000b3}[data-seasonal-theme=tet]{--bg:#fff9f0;--surface:#fff;--surface-2:#fff5e6;--border:#fde8c8;--border-strong:#fbd090;--ink:#2d1a00;--ink-soft:#7a4a00;--ink-faint:#c49030;--brand:#d32f2f;--brand-hover:#b71c1c;--brand-bright:#ef4444;--brand-soft:#d32f2f1a;--brand-soft-border:#d32f2f40;--gradient-orb-1:#d32f2f1f;--gradient-orb-2:#ffd7001a;--shadow-style:0 8px 30px -6px #d32f2f24;--banner-glow:#d32f2f38;--banner-glow-2:#ffd70029}[data-theme=dark][data-seasonal-theme=tet]{--bg:#180a00;--surface:#241000;--surface-2:#2e1600;--border:#4d2200;--border-strong:#6b3000;--ink:#fceedd;--ink-soft:#d4a060;--ink-faint:#8a6030;--brand:#ef4444;--brand-hover:#f87171;--brand-bright:#fca5a5;--brand-soft:#ef444426;--brand-soft-border:#ef444447;--gradient-orb-1:#ef44441a;--gradient-orb-2:#ffd70014;--shadow-style:0 8px 30px -6px #000c}[data-seasonal-theme=reunification]{--bg:#fff8f5;--surface:#fff;--surface-2:#fff0ec;--border:#fdd8d0;--border-strong:#faafa0;--ink:#2d0e00;--ink-soft:#7a3a20;--ink-faint:#c47858;--brand:#c11;--brand-hover:#aa0e0e;--brand-bright:#e02020;--brand-soft:#cc11111a;--brand-soft-border:#cc111140;--gradient-orb-1:#cc11111f;--gradient-orb-2:#ffde001a;--shadow-style:0 8px 30px -6px #cc111124;--banner-glow:#cc11113d;--banner-glow-2:#ffde0029}[data-theme=dark][data-seasonal-theme=reunification]{--bg:#140500;--surface:#200a00;--surface-2:#2a1000;--border:#451800;--border-strong:#5a2200;--ink:#fce8e0;--ink-soft:#d4907a;--ink-faint:#8a5040;--brand:#e02020;--brand-hover:#f05050;--brand-bright:#f87070;--brand-soft:#e0202026;--brand-soft-border:#e0202047;--gradient-orb-1:#e020201a;--gradient-orb-2:#ffde0014;--shadow-style:0 8px 30px -6px #000c}[data-seasonal-theme=summer]{--bg:#f5fbff;--surface:#fff;--surface-2:#edf8ff;--border:#c8e8f8;--border-strong:#94d0f0;--ink:#001a2d;--ink-soft:#2a5a7a;--ink-faint:#6a9ab8;--brand:#0284c7;--brand-hover:#0369a1;--brand-bright:#0ea5e9;--brand-soft:#0284c71a;--brand-soft-border:#0284c740;--gradient-orb-1:#0ea5e924;--gradient-orb-2:#ffd54f1a;--shadow-style:0 8px 30px -6px #0284c724;--banner-glow:#0ea5e938;--banner-glow-2:#ffd54f24}[data-theme=dark][data-seasonal-theme=summer]{--bg:#001828;--surface:#002038;--surface-2:#002848;--border:#003d60;--border-strong:#005080;--ink:#e0f4ff;--ink-soft:#80c4e8;--ink-faint:#3a7898;--brand:#38bdf8;--brand-hover:#7dd3fc;--brand-bright:#bae6fd;--brand-soft:#38bdf81f;--brand-soft-border:#38bdf840;--gradient-orb-1:#38bdf81a;--gradient-orb-2:#ffd54f0f;--shadow-style:0 8px 30px -6px #000000bf}[data-seasonal-theme=autumn]{--bg:#fdf8f0;--surface:#fff;--surface-2:#faf0e4;--border:#f0d8b8;--border-strong:#e0b880;--ink:#1a0e00;--ink-soft:#6a3a10;--ink-faint:#b07840;--brand:#b45309;--brand-hover:#92400e;--brand-bright:#d97706;--brand-soft:#b453091a;--brand-soft-border:#b4530940;--gradient-orb-1:#d9770624;--gradient-orb-2:#8d6e6314;--shadow-style:0 8px 30px -6px #b4530924;--banner-glow:#d9770638;--banner-glow-2:#8d6e6329}[data-theme=dark][data-seasonal-theme=autumn]{--bg:#130a00;--surface:#1e1000;--surface-2:#281800;--border:#402a00;--border-strong:#563800;--ink:#fceedd;--ink-soft:#d4a060;--ink-faint:#8a6030;--brand:#fbbf24;--brand-hover:#fcd34d;--brand-bright:#fde68a;--brand-soft:#fbbf241f;--brand-soft-border:#fbbf2440;--gradient-orb-1:#fbbf2414;--gradient-orb-2:#7835040f;--shadow-style:0 8px 30px -6px #000c}[data-seasonal-theme=mid_autumn]{--bg:#0d1433;--surface:#141e4a;--surface-2:#1a2555;--border:#252f6a;--border-strong:#303d80;--ink:#f5f0e8;--ink-soft:#c4b090;--ink-faint:#806a50;--brand:#c8a820;--brand-hover:#a88a10;--brand-bright:#f5d060;--brand-soft:#fff59d1f;--brand-soft-border:#f8d0604d;--gradient-orb-1:#fff59d1f;--gradient-orb-2:#da251d14;--shadow-style:0 8px 30px -6px #000000b3;--shadow-md:0 8px 30px -6px #000000b3;--shadow-lg:0 20px 48px -12px #000000d9;--banner-glow:#fff59d33;--banner-glow-2:#da251d24}[data-theme=dark][data-seasonal-theme=mid_autumn]{--bg:#05091f;--surface:#0c1030;--surface-2:#10163c;--border:#181e50;--border-strong:#202860;--ink:#f8f4ec;--ink-soft:#c8b898;--ink-faint:#887058;--brand:#ffd54f;--brand-hover:#ffe082;--brand-bright:#fff59d;--brand-soft:#ffd54f1a;--brand-soft-border:#ffd54f38;--gradient-orb-1:#fff59d1a;--gradient-orb-2:#da251d12;--shadow-style:0 8px 30px -6px #000000e6;--shadow-md:0 8px 30px -6px #000000e6;--shadow-lg:0 20px 48px -12px #000000f2}[data-seasonal-theme=winter]{--bg:#f2f8fc;--surface:#fff;--surface-2:#eaf4fa;--border:#cce0ee;--border-strong:#a8c8e0;--ink:#0a1828;--ink-soft:#3a6080;--ink-faint:#789ab8;--brand:#4a7fa0;--brand-hover:#336070;--brand-bright:#60a0c0;--brand-soft:#4a7fa01a;--brand-soft-border:#4a7fa040;--gradient-orb-1:#64748b1f;--gradient-orb-2:#38bdf814;--shadow-style:0 8px 30px -6px #4a7fa024;--banner-glow:#38bdf838;--banner-glow-2:#e0f7fa24;--radius-outer:28px;--radius-inner:20px}[data-theme=dark][data-seasonal-theme=winter]{--bg:#08121c;--surface:#101c28;--surface-2:#182430;--border:#20303e;--border-strong:#284050;--ink:#e4f0f8;--ink-soft:#90b4cc;--ink-faint:#4878a0;--brand:#80c0e0;--brand-hover:#a0d0f0;--brand-bright:#c0e4f8;--brand-soft:#80c0e01a;--brand-soft-border:#80c0e038;--gradient-orb-1:#94a3b814;--gradient-orb-2:#38bdf80f;--shadow-style:0 8px 30px -6px #000000bf;--radius-outer:28px;--radius-inner:20px}[data-seasonal-theme=halloween]{--bg:#150805;--surface:#211008;--surface-2:#2c1810;--border:#402018;--border-strong:#562a20;--ink:#f5e4d4;--ink-soft:#c09070;--ink-faint:#806050;--brand:#ff6d00;--brand-hover:#e65100;--brand-bright:#ff8c00;--brand-soft:#ff6d0026;--brand-soft-border:#ff6d004d;--gradient-orb-1:#ff6d0024;--gradient-orb-2:#aa00ff1a;--shadow-style:0 8px 30px -6px #000000d9;--shadow-md:0 8px 30px -6px #000000d9;--shadow-lg:0 20px 48px -12px #000000eb;--banner-glow:#ff6d0042;--banner-glow-2:#aa00ff24}[data-theme=dark][data-seasonal-theme=halloween]{--bg:#080402;--surface:#120806;--surface-2:#1c100a;--border:#301808;--border-strong:#402010;--ink:#f8eedd;--ink-soft:#c8986a;--ink-faint:#887040;--brand:#ff7a20;--brand-hover:#ff9040;--brand-bright:#ffaa60;--brand-soft:#ff7a2024;--brand-soft-border:#ff7a2047;--gradient-orb-1:#ff6d001f;--gradient-orb-2:#aa00ff17;--shadow-style:0 8px 30px -6px #000000f2;--shadow-md:0 8px 30px -6px #000000f2;--shadow-lg:0 20px 48px -12px #000000fa}@keyframes winter-shimmer{0%{background-position:0 0,100% 100%}50%{background-position:10% 5%,90% 95%}to{background-position:0 0,100% 100%}}[data-seasonal-theme=winter] body{background-image:radial-gradient(1200px 600px at 15% -5%,#64748b1f,#0000 65%),radial-gradient(900px 450px at 90% 10%,#38bdf814,#0000 60%),radial-gradient(600px 300px at 50% 80%,#e0f7fa14,#0000 70%);background-size:200% 200%;animation:12s ease-in-out infinite winter-shimmer}@keyframes spring-bloom{0%{background-position:0 0,100% 100%,50%}33%{background-position:10% 8%,88% 92%,55% 45%}66%{background-position:5% 12%,94% 88%,48% 52%}to{background-position:0 0,100% 100%,50%}}[data-seasonal-theme=spring] body{background-image:radial-gradient(900px 500px at 15% -5%,#ffb7b22e,#0000 65%),radial-gradient(700px 400px at 90% 10%,#e2f0cb24,#0000 60%),radial-gradient(500px 300px at 60% 90%,#ffc8d21a,#0000 70%);background-size:200% 200%;animation:15s ease-in-out infinite spring-bloom}@keyframes moon-glow-pulse{0%,to{filter:brightness();background-position:80% 15%,20% 85%}50%{filter:brightness(1.05);background-position:82% 13%,18% 87%}}[data-seasonal-theme=mid_autumn] body{background-image:radial-gradient(400px 400px at 82% 12%,#fff59d29,#0000 70%),radial-gradient(300px 300px at 18% 88%,#da251d1a,#0000 70%),radial-gradient(1200px 800px at 50% 0,#1a237e99,#0000 100%);background-attachment:fixed;animation:6s ease-in-out infinite moon-glow-pulse}@keyframes halloween-fog{0%{background-position:0 0,100% 100%}50%{background-position:8% 4%,92% 96%}to{background-position:0 0,100% 100%}}[data-seasonal-theme=halloween] body{background-image:radial-gradient(1000px 600px at 15% -5%,#ff6d0024,#0000 65%),radial-gradient(800px 500px at 90% 10%,#aa00ff1a,#0000 60%);background-size:200% 200%;animation:10s ease-in-out infinite halloween-fog}[data-seasonal-theme=winter] .db-outer{-webkit-backdrop-filter:blur(18px);background:#e0f7fa40;border-color:#fff6;box-shadow:0 20px 48px -12px #4a7fa02e,inset 0 1px #ffffff80}[data-theme=dark][data-seasonal-theme=winter] .db-outer{-webkit-backdrop-filter:blur(18px);background:#101c2873;border-color:#ffffff14;box-shadow:0 20px 48px -12px #00000080,inset 0 1px #ffffff0f}[data-seasonal-theme=mid_autumn] .party-card{border-color:#fff59d33;box-shadow:0 4px 20px -4px #c8a82026}[data-seasonal-theme=mid_autumn] .party-card:hover{border-color:#fff59d66;box-shadow:0 8px 30px -6px #c8a82040}[data-seasonal-theme=halloween] .party-card{border-color:#ff6d0033;box-shadow:0 4px 20px -4px #0009}[data-seasonal-theme=halloween] .party-card:hover{border-color:#ff6d0066;box-shadow:0 8px 30px -6px #ff6d0033}[data-seasonal-theme=mid_autumn] header{background:#0d1433d1!important;border-bottom-color:#fff59d26!important}[data-seasonal-theme=halloween] header{background:#150805e0!important;border-bottom-color:#ff6d0033!important}.island-msg-row{cursor:pointer;border-radius:12px;padding:8px;transition:background .15s}.island-msg-row:hover{background:var(--surface-muted,var(--brand-soft))}.chat-dock{z-index:999;pointer-events:none;align-items:flex-end;gap:10px;display:flex;position:fixed;bottom:0;right:16px}.chat-dock-panel{pointer-events:auto;background:var(--surface);border:1px solid var(--border);border-bottom:none;border-radius:14px 14px 0 0;flex-direction:column;width:360px;height:480px;display:flex;overflow:hidden;box-shadow:0 10px 34px -8px #00000047}.chat-dock-panel__header{border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0;justify-content:space-between;align-items:center;gap:6px;padding:8px 6px 8px 10px;display:flex}.chat-dock-panel__body{flex-direction:column;flex:1;min-height:0;display:flex}.chat-dock-bubbles{pointer-events:auto;flex-direction:column-reverse;align-items:center;gap:8px;padding-bottom:16px;display:flex}.chat-dock-bubble{cursor:pointer;border:2px solid var(--surface);border-radius:50%;flex-shrink:0;width:52px;height:52px;transition:transform .15s;position:relative;box-shadow:0 4px 16px -2px #0000004d}.chat-dock-bubble:hover{transform:scale(1.06)}@media (width<=720px){.chat-dock{gap:8px;right:8px}.chat-dock-panel{width:min(320px,100vw - 16px);height:min(440px,70vh)}}.hacked-page{z-index:9999;background:#050805;justify-content:center;align-items:center;font-family:Courier New,monospace;display:flex;position:fixed;inset:0;overflow:hidden}.hacked-particle{color:#22c55e;opacity:.35;pointer-events:none;animation-name:hacked-fall;animation-timing-function:linear;animation-iteration-count:infinite;position:absolute;top:-10%}@keyframes hacked-fall{0%{transform:translateY(-10vh)rotate(0)}to{transform:translateY(110vh)rotate(360deg)}}.hacked-content{z-index:1;text-align:center;max-width:560px;padding:32px 20px;position:relative}.hacked-skull{filter:drop-shadow(0 0 18px #22c55e)drop-shadow(0 0 36px #16a34a);font-size:88px;animation:2.4s ease-in-out infinite hacked-pulse}@keyframes hacked-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.hacked-title{letter-spacing:6px;color:#22c55e;text-shadow:0 0 8px #22c55e,0 0 24px #16a34a;margin:12px 0 4px;font-size:48px;font-weight:800;animation:3.2s infinite hacked-flicker}@keyframes hacked-flicker{0%,92%,to{opacity:1}93%{opacity:.4}94%{opacity:1}96%{opacity:.6}97%{opacity:1}}.hacked-subtitle{letter-spacing:4px;color:#4ade80;margin:0 0 24px;font-size:18px}.hacked-line{color:#86efac;margin:6px 0;font-size:15px}.hacked-line--dim{color:#4d7c5f}
