:root{--cream:#fff8f3;--pink:#ffb6c1;--blue:#add8e6;--lavender:plum;--text:#4a4a4a;--soft-pink:#ffe4e1;--mint:#b0e0e6;--shadow:0 4px 20px #b496b426;--radius:18px;--card-bg:#fff;--border:#eee0d8;--subtext:#888;--search-bg:#f7f0fa;--home-tile-profile:linear-gradient(135deg,#ffb6c1,#ff8fa3);--home-tile-chat:linear-gradient(135deg,#add8e6,#7ec8e3);--home-tile-groups:linear-gradient(135deg,#b0e0e6,#7dc9c9);--home-tile-photos:linear-gradient(135deg,gold,orange);--home-tile-myspace:linear-gradient(135deg,plum,#c07bc0);--home-tile-privacy:linear-gradient(135deg,#ffe4e1,#ffb6c1);--home-header-gradient:linear-gradient(135deg,#ffb6c1,plum 50%,#add8e6);--keyboard-height:0px;--visual-height:100dvh;--visual-offset-top:0px;--sat:env(safe-area-inset-top,0px);--sar:env(safe-area-inset-right,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px)}*{box-sizing:border-box}html{overflow:hidden;position:fixed}body,html{height:100%;width:100%}body{-webkit-font-smoothing:antialiased;-webkit-overflow-scrolling:touch;background:#fff8f3;background:var(--cream);color:#4a4a4a;color:var(--text);font-family:Quicksand,Nunito,-apple-system,BlinkMacSystemFont,sans-serif;margin:0;overflow-x:hidden;overflow-y:auto;padding:0}#root{height:100%;overflow:hidden;width:100%}a{color:inherit;text-decoration:none}button{background:none;border:none;cursor:pointer}button,input,textarea{color:inherit;font-family:inherit}.page-frame{-webkit-overflow-scrolling:touch;height:100%;min-height:100dvh;overflow-y:auto;padding-bottom:env(safe-area-inset-bottom,0);padding-bottom:var(--sab);position:relative;width:100%}@keyframes page-fade-in{0%{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.page-fade-in{animation:page-fade-in .45s cubic-bezier(.2,.8,.2,1)}@keyframes pop-in{0%{opacity:0;transform:scale(.5)}60%{opacity:1;transform:scale(1.08)}to{transform:scale(1)}}.pop-in{animation:pop-in .5s cubic-bezier(.2,.8,.2,1) both}@keyframes sticker-bounce{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-8px) rotate(-4deg)}}.sticker-bounce{animation:sticker-bounce 2.6s ease-in-out infinite}@keyframes sticker-wiggle{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}.sticker-wiggle{animation:sticker-wiggle 3s ease-in-out infinite}@keyframes sparkle{0%,to{opacity:.4;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}.sparkle{animation:sparkle 1.8s ease-in-out infinite}@keyframes status-pulse{0%,to{box-shadow:0 0 0 0 #add8e6b3}70%{box-shadow:0 0 0 10px #add8e600}}.status-pulse{animation:status-pulse 2s ease-out infinite}@keyframes typing-dot{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}.typing-dot{animation:typing-dot 1.4s ease-in-out infinite}@keyframes caret-blink{0%,50%{opacity:1}50.01%,to{opacity:0}}.caret{animation:caret-blink 1s step-end infinite;background:plum;background:var(--lavender);display:inline-block;height:1em;margin-left:2px;vertical-align:text-bottom;width:2px}@keyframes slide-in-right{0%{transform:translateX(100%)}to{transform:translateX(0)}}.slide-in-right{animation:slide-in-right .35s cubic-bezier(.2,.8,.2,1)}@keyframes toast-in{0%{opacity:0;transform:translateX(24px) translateY(-6px)}to{opacity:1;transform:translateX(0)}}.toast-in{animation:toast-in .24s cubic-bezier(.16,1,.3,1)}@keyframes toast-out{to{opacity:0;transform:translateX(16px)}}.toast-out{animation:toast-out .16s ease-in both}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.float{animation:float 3s ease-in-out infinite}@keyframes modalIn{0%{opacity:0;transform:scale(.86) translateY(18px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes modalOut{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.9) translateY(10px)}}@keyframes backdropIn{0%{opacity:0}to{opacity:1}}@keyframes backdropOut{0%{opacity:1}to{opacity:0}}.modal-in{animation:modalIn .32s cubic-bezier(.34,1.52,.64,1) both}.modal-out{animation:modalOut .2s cubic-bezier(.4,0,1,1) both}.backdrop-in{animation:backdropIn .22s ease both}.backdrop-out{animation:backdropOut .2s ease both}@keyframes alarmPop{0%{opacity:0;transform:translateY(-28px) scale(.88)}65%{transform:translateY(5px) scale(1.03)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes bellSwing{0%,to{transform:rotate(0deg)}15%{transform:rotate(-12deg)}35%{transform:rotate(12deg)}55%{transform:rotate(-8deg)}75%{transform:rotate(8deg)}}@keyframes alarmGlow{0%,to{box-shadow:0 0 0 0 #ffb6c180,0 24px 60px #0009}50%{box-shadow:0 0 0 14px #ffb6c100,0 24px 60px #0009}}.alarm-popup{animation:alarmPop .5s cubic-bezier(.34,1.52,.64,1) both}.alarm-bell{animation:bellSwing .7s ease-in-out infinite;display:inline-block}.alarm-glow{animation:alarmGlow 1.4s ease-in-out infinite}@keyframes spotlightPulse{0%,to{box-shadow:0 0 0 9999px #000000bd,0 0 0 3px #ffb6c18c}50%{box-shadow:0 0 0 9999px #000000bd,0 0 0 7px #ffb6c12e}}@keyframes tooltipSlideIn{0%{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.card{background:#fff;border-radius:18px;border-radius:var(--radius);box-shadow:0 4px 20px #b496b426;box-shadow:var(--shadow);padding:20px}.btn{align-items:center;background:#ffb6c1;background:var(--pink);border-radius:999px;color:#fff;display:inline-flex;font-weight:600;gap:8px;justify-content:center;padding:10px 22px;transition:transform .2s,box-shadow .2s}.btn:hover{box-shadow:0 6px 20px #ffb6c180;transform:translateY(-2px)}.btn:active{transform:scale(.97)}.btn.btn-blue{background:#add8e6;background:var(--blue)}.btn.btn-lavender{background:plum;background:var(--lavender)}.btn.btn-ghost{background:#0000;border:2px dashed #ffb6c1;border:2px dashed var(--pink);color:#4a4a4a;color:var(--text)}.btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.input{background:#fff;border:2px solid #ffe4e1;border:2px solid var(--soft-pink);border-radius:999px;font-size:16px;outline:none;padding:12px 18px;transition:border-color .2s,box-shadow .2s;width:100%}.input:focus{border-color:#ffb6c1;border-color:var(--pink);box-shadow:0 0 0 3px #ffb6c140}.badge{align-items:center;background:#ffe4e1;background:var(--soft-pink);border-radius:999px;color:#4a4a4a;color:var(--text);display:inline-flex;font-size:12px;padding:3px 10px}.avatar{background:#fff;border:3px solid #fff;border-radius:50%;box-shadow:0 2px 8px #00000014;height:52px;object-fit:cover;width:52px}.avatar-lg{background:#fff;border:4px solid #fff;border-radius:50%;box-shadow:0 4px 16px #0000001a;height:96px;width:96px}.hamburger{border-radius:10px;cursor:pointer;display:inline-flex;flex-direction:column;height:36px;justify-content:space-between;padding:8px 6px;transition:background .2s;width:36px}.hamburger:hover{background:#ffe4e1;background:var(--soft-pink)}.hamburger span{background:#4a4a4a;background:var(--text);border-radius:3px;display:block;height:3px;width:100%}.container{margin:0 auto;max-width:960px;padding:24px 20px 80px}.center{align-items:flex-start;display:flex;justify-content:center;min-height:100dvh;overflow-y:auto;padding:calc(24px + env(safe-area-inset-top,    0px)) 16px calc(60px + env(safe-area-inset-bottom, 0px));padding:calc(24px + var(--sat)) 16px calc(60px + var(--sab))}@media (min-height:700px){.center{align-items:center}}.hero{padding:30px 0 10px;text-align:center}.hero h1{background:linear-gradient(90deg,#ffb6c1,plum,#add8e6);background:linear-gradient(90deg,var(--pink),var(--lavender),var(--blue));-webkit-background-clip:text;background-clip:text;color:#0000;font-size:44px;margin:0 0 10px}.hero h1 .caret{background:#ffb6c1;background:var(--pink)}.tagline{color:#888;margin:0 0 30px}.home-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));perspective:1200px}.home-desktop-header{align-items:center;background:linear-gradient(135deg,#ffb6c1,plum 50%,#add8e6);background:var(--home-header-gradient);border-radius:18px;box-shadow:0 8px 22px #b496b424;display:flex;justify-content:space-between;margin-bottom:20px;padding:14px 18px}.home-desktop-header p{color:#ffffffe0}.home-desktop-header p:first-child{color:#fff}.home-desktop-header .btn-ghost{background:#ffffff2e;border-color:#ffffff9e;color:#fff}.home-desktop-header .btn-ghost:hover{background:#ffffff4d}.home-tile-entry{height:100%;min-width:0}.home-tile{view-transition-name:none;backface-visibility:hidden;background:linear-gradient(135deg,#ffb6c1,#ff8fa3);background:var(--home-tile-gradient,var(--home-tile-profile));border:3px solid #0000;border-radius:18px;border-radius:var(--radius);box-shadow:0 4px 20px #b496b426;box-shadow:var(--shadow);cursor:pointer;height:100%;padding:28px 22px;text-align:center;transform-origin:center center;transition:transform .24s cubic-bezier(.16,1,.3,1),box-shadow .24s ease,border-color .24s ease}.home-mobile-tile--profile,.home-tile--profile{--home-tile-gradient:var(--home-tile-profile);--home-tile-transition-wash:#ff8fa333}.home-mobile-tile--chat,.home-tile--chat{--home-tile-gradient:var(--home-tile-chat);--home-tile-transition-wash:#7ec8e333}.home-mobile-tile--groups,.home-tile--groups{--home-tile-gradient:var(--home-tile-groups);--home-tile-transition-wash:#7dc9c933}.home-mobile-tile--photos,.home-tile--photos{--home-tile-gradient:var(--home-tile-photos);--home-tile-transition-wash:#ffa50033}.home-mobile-tile--myspace,.home-tile--myspace{--home-tile-gradient:var(--home-tile-myspace);--home-tile-transition-wash:#c07bc033}.home-mobile-tile--privacy,.home-tile--privacy{--home-tile-gradient:var(--home-tile-privacy);--home-tile-transition-wash:#ffb6c133}.home-mobile-tile.is-opening,.home-tile.is-opening{view-transition-name:home-card;animation:none;box-shadow:0 3px 12px #b496b42e;transform:scale(.98)}.home-mobile-tile.is-opening .home-mobile-tile-icon,.home-tile.is-opening .home-tile-icon{view-transition-name:home-card-icon}.home-mobile-tile.is-opening .home-mobile-label,.home-tile.is-opening h3{view-transition-name:home-card-title}.home-mobile-tile:focus-visible,.home-tile:focus-visible{outline:3px solid #8a62a86b;outline-offset:3px}@media (hover:hover) and (pointer:fine){.home-tile:hover{border-color:#ffffffbf;box-shadow:0 14px 34px #b496b447,0 4px 10px #b496b41f;transform:translateY(-6px) scale(1.015) rotateX(1.5deg) rotateY(-1.5deg)}.home-tile.is-opening:hover{box-shadow:0 3px 12px #b496b42e;transform:scale(.98)}}@keyframes home-card-morph-out{0%{border-radius:18px;border-radius:var(--radius);opacity:1;transform:translateY(0) scale(.98)}48%{border-radius:22px;opacity:1;transform:translateY(-4px) scale(1.045)}to{border-radius:30px;opacity:.98;transform:translateY(-8px) scale(1.09)}}@keyframes home-card-icon-morph{0%{opacity:1;transform:scale(1) translateY(0)}62%{opacity:.92;transform:scale(1.1) translateY(-4px)}to{opacity:0;transform:scale(1.14) translateY(-8px)}}@keyframes home-card-title-morph{0%{opacity:1;transform:translateY(0)}48%{opacity:.82;transform:translateY(-2px)}to{opacity:0;transform:translateY(-6px)}}@keyframes home-route-enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes home-route-wash{0%{opacity:0}28%{opacity:.72}to{opacity:0}}@keyframes home-route-exit{0%{opacity:1}to{opacity:.98}}@supports (view-transition-name:none){::view-transition-old(home-card){animation:home-card-morph-out .34s cubic-bezier(.16,1,.3,1) both;box-shadow:0 18px 48px #b496b438;box-shadow:0 18px 48px var(--home-transition-wash,#b496b438);z-index:2}::view-transition-old(home-card-icon){animation:home-card-icon-morph .3s cubic-bezier(.16,1,.3,1) both;z-index:3}::view-transition-old(home-card-title){animation:home-card-title-morph .22s ease-out both;z-index:3}::view-transition-old(root){animation:home-route-exit .16s ease-out both}::view-transition-new(root){animation:home-route-enter .17s cubic-bezier(.16,1,.3,1) .15s both}html.home-view-transition .page-frame.page-fade-in{animation:none}}html.home-card-route-transition:before{animation:home-route-wash .44s ease-out both;background:radial-gradient(circle at 50% 42%,#b496b42e,#0000 68%);background:radial-gradient(circle at 50% 42%,var(--home-transition-wash,#b496b42e),#0000 68%);content:"";inset:0;pointer-events:none;position:fixed;z-index:9999}html.home-card-route-transition #root>.chat-layout,html.home-card-route-transition #root>.container,html.home-card-route-transition #root>.page-frame.page-fade-in{animation:home-route-enter .17s cubic-bezier(.16,1,.3,1) .15s both}@keyframes pastel-chat-route-enter{0%{opacity:.98;transform:translateX(-22px)}to{opacity:1;transform:translateX(0)}}@keyframes pastel-chat-route-back{0%{opacity:.98;transform:translateX(22px)}to{opacity:1;transform:translateX(0)}}html.pastel-chat-route-back,html.pastel-chat-route-enter{overflow-x:hidden}html.pastel-chat-route-enter #root>.chat-page-shell,html.pastel-chat-route-enter #root>.group-chat-page-shell{animation:pastel-chat-route-enter .24s cubic-bezier(.22,1,.36,1) both;will-change:transform,opacity}html.pastel-chat-route-back #root>.page-frame.page-fade-in{animation:pastel-chat-route-back .24s cubic-bezier(.22,1,.36,1) both;will-change:transform,opacity}@media (prefers-reduced-motion:reduce){html.pastel-chat-route-back #root>.page-frame.page-fade-in,html.pastel-chat-route-enter #root>.chat-page-shell,html.pastel-chat-route-enter #root>.group-chat-page-shell{animation:none;will-change:auto}}.home-mobile-tile-icon-wrap,.home-tile-icon-wrap{align-items:center;display:inline-flex;flex:0 0 auto;justify-content:center}.home-tile-icon-wrap{background:linear-gradient(145deg,#fff5fa,#f3edff);border-radius:24px;box-shadow:inset 0 0 0 1px #cb98c138;height:80px;margin:0 auto 10px;padding:12px;width:80px}.home-mobile-tile-icon,.home-tile-icon{animation:home-icon-idle 3.36s ease-in-out infinite;animation-delay:0s;animation-delay:var(--home-icon-delay,0s);display:block;height:100%;object-fit:contain;object-position:center;transform-origin:center;width:100%;will-change:transform}@keyframes home-icon-idle{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-2px) rotate(2deg)}}.home-tile h3{color:#fff;font-size:20px;margin:0 0 8px;text-shadow:0 1px 4px #4628502e}.home-tile p{color:#ffffffe6;font-size:14px;margin:0;text-shadow:0 1px 3px #4628502e}.login-card{background:#fff;border-radius:28px;box-shadow:0 10px 40px #ffb6c14d;max-width:420px;padding:36px 28px;width:100%}.login-tabs{background:#ffe4e1;background:var(--soft-pink);border-radius:999px;display:flex;gap:4px;margin-bottom:22px;padding:4px}.login-tabs button{border-radius:999px;color:#4a4a4a;color:var(--text);flex:1 1;font-weight:600;padding:10px}.login-tabs button.active{background:#fff;box-shadow:0 2px 6px #00000014}.code-input{background:#fff8f3;background:var(--cream);border:2px solid plum;border:2px solid var(--lavender);border-radius:16px;font-size:22px;font-weight:700;letter-spacing:.25em;outline:none;padding:16px;text-align:center;text-transform:uppercase;width:100%}.code-input:focus{border-color:#ffb6c1;border-color:var(--pink);box-shadow:0 0 0 3px #ffb6c140}.google-divider{align-items:center;color:#bbb;display:flex;font-size:12px;font-weight:600;gap:10;letter-spacing:.05em;margin:4px 0;text-transform:uppercase}.google-divider:after,.google-divider:before{background:#e8d5f0;content:"";flex:1 1;height:1px}.google-divider span{padding:0 10px}.google-btn-wrap{display:flex;justify-content:center}.microsoft-btn{align-items:center;background:#fff;border:1px solid #dadce0;border-radius:20px;box-shadow:0 1px 3px #00000014;color:#444;cursor:pointer;display:flex;font-family:inherit;font-size:14px;font-weight:600;gap:10px;padding:8px 18px;transition:background .15s,box-shadow .15s}.microsoft-btn:hover:not(:disabled){background:#f8f8f8;box-shadow:0 2px 6px #0000001f}.microsoft-btn:disabled{cursor:not-allowed}.microsoft-btn--soon{background:#f7f7f7;border-style:dashed;color:#999;font-style:italic;opacity:.55}.google-security-note{color:#aaa;font-size:11px;margin:2px 0 0;text-align:center}.code-display{background:linear-gradient(135deg,#ffe4e1,#b0e0e6);background:linear-gradient(135deg,var(--soft-pink),var(--mint));border-radius:16px;display:inline-block;font-family:Courier New,monospace;font-size:22px;font-weight:700;letter-spacing:.2em;padding:14px 24px}.avatar-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));max-height:360px;overflow-y:auto;padding:6px}.avatar-grid .avatar-option{aspect-ratio:1;background:#fff;border:3px solid #0000;border-radius:50%;cursor:pointer;padding:4px;position:relative;transition:transform .2s,box-shadow .2s}.avatar-grid .avatar-option:hover{transform:scale(1.1) rotate(-5deg)}.avatar-grid .avatar-option.selected{border-color:#ffb6c1;border-color:var(--pink);box-shadow:0 0 0 3px #ffe4e1;box-shadow:0 0 0 3px var(--soft-pink)}.avatar-grid .avatar-option img{border-radius:50%;height:100%;width:100%}.friend-list{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.friend-tile{align-items:center;background:#fff;border-radius:18px;border-radius:var(--radius);box-shadow:0 4px 20px #b496b426;box-shadow:var(--shadow);cursor:pointer;display:flex;gap:12px;padding:16px;transition:transform .2s}.friend-tile:hover{transform:translateY(-3px)}.friend-tile .name{font-weight:700;margin:0}.friend-tile .sub{color:#888;font-size:12px;margin:0}.friend-tile .dot{background:#ccc;border-radius:50%;display:inline-block;height:10px;margin-right:4px;width:10px}.friend-tile .dot.online{background:#7bd389}.chat-wrap{display:flex;flex-direction:column;height:100%;overflow:hidden}.chat-header{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffffeb;border-bottom:1px solid #ffe4e1;border-bottom:1px solid var(--soft-pink);display:flex;flex-shrink:0;justify-content:space-between;padding:calc(12px + env(safe-area-inset-top,    0px)) 18px 12px;padding:calc(12px + var(--sat)) 18px 12px;position:sticky;top:0;z-index:10}.chat-header .peer{align-items:center;display:flex;gap:12px}.chat-header .peer h3{font-size:16px;margin:0}.chat-header .peer .status{color:#888;font-size:12px}.chat-header .peer .status.online{color:#4fa865}.chat-body{-webkit-overflow-scrolling:touch;flex:1 1;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:16px;position:relative}.chat-footer{background:#fff;border-top:1px solid #ffe4e1;border-top:1px solid var(--soft-pink);flex-shrink:0;gap:8px;padding:10px 14px calc(8px + env(safe-area-inset-bottom, 0px));padding:10px 14px calc(8px + var(--sab))}.chat-footer,.msg-row{align-items:flex-end;display:flex}.msg-row{padding:3px 12px}.msg-row.me{justify-content:flex-end}.msg-row.you{justify-content:flex-start}.msg-bubble-v2{word-wrap:break-word;border-radius:20px;font-size:15px;line-height:1.45;max-width:100%;padding:10px 13px 8px;position:relative;word-break:break-word}.msg-bubble-v2.own{background:linear-gradient(135deg,#ffb6c1,#e8a0d0);border-bottom-right-radius:5px;box-shadow:0 2px 12px #ffb6c166;color:#fff}.msg-bubble-v2.theirs{background:#fff;border-bottom-left-radius:5px;box-shadow:0 2px 8px #00000012;color:#4a4a4a;color:var(--text)}.msg-bubble-v2.emoji-only{background:#0000!important;box-shadow:none!important;font-size:42px;line-height:1.2;padding:2px 4px}.msg-bubble-v2.recalled{background:#f5f5f5!important;box-shadow:none!important;color:#aaa!important;font-style:italic;opacity:.55}.bubble-text{white-space:pre-wrap}.bubble-meta{align-items:center;display:flex;font-size:10px;gap:4px;justify-content:flex-end;margin-top:4px;opacity:.65}.message-delivery-status{align-items:center;color:#888;color:var(--subtext);display:inline-flex;font-size:10px;gap:1px;line-height:1;margin-top:1px;min-height:14px}.message-delivery-status--sending{opacity:.72}.message-delivery-status--delivered{color:#9b86b1}.message-delivery-status--read{color:#6e9fc0}.message-delivery-status--failed{color:#c56d7b}.message-delivery-status button{align-items:center;background:#0000;border:0;color:inherit;cursor:pointer;display:inline-flex;font:inherit;gap:3px;padding:0}.network-status-banner{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid #ffffff5c;border-radius:999px;box-shadow:0 6px 18px #4a324a24;color:#55445f;display:inline-flex;font-size:12px;font-weight:600;gap:7px;left:50%;max-width:min(360px,calc(100vw - 24px));padding:8px 12px;pointer-events:none;position:fixed;text-align:center;top:calc(68px + env(safe-area-inset-top));transform:translateX(-50%);z-index:1200}.network-status-banner--offline{background:#ffe0e6f0}.network-status-banner--weak{background:#fff0cdf0}.reply-preview{background:#ffffff40;border-radius:10px;display:flex;gap:8px;margin-bottom:7px;overflow:hidden;padding:6px 8px}.msg-bubble-v2.theirs .reply-preview{background:#ffb6c11f}.reply-preview-bar{background:#ffffffb3;border-radius:2px;flex-shrink:0;width:3px}.msg-bubble-v2.theirs .reply-preview-bar{background:plum;background:var(--lavender)}.reply-preview-name{font-size:11px;font-weight:700;margin-bottom:2px;opacity:.9}.reply-preview-text{font-size:12px;max-width:200px;opacity:.75;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-toolbar{background:#fff;border-radius:12px;box-shadow:0 4px 16px #0000001f;display:flex;flex-shrink:0;gap:3px;padding:4px;z-index:5}.msg-toolbar--vertical{flex-direction:column}.msg-toolbar--horizontal{bottom:calc(100% + 6px);flex-direction:row;left:50%;max-width:calc(100vw - 24px);position:absolute;transform:translateX(-50%);white-space:nowrap;width:max-content}.msg-toolbar button{align-items:center;border-radius:8px;display:flex;font-size:15px;height:30px;justify-content:center;transition:background .15s;width:30px}.msg-toolbar button:hover{background:#ffe4e1;background:var(--soft-pink)}@media (max-width:479px){.msg-toolbar--horizontal{bottom:calc(100% + 4px)}}@media (prefers-reduced-motion:reduce){.msg-toolbar button{transition:none}}.date-pill{align-items:center;display:flex;justify-content:center;padding:20px 0 8px}.date-pill span{background:#c8b4dc26;border-radius:999px;color:#b0a0c0;font-size:11px;font-weight:600;letter-spacing:.03em;padding:4px 14px}.chat-input-area{background:#fff;border-top:1px solid #f0e6f0;box-shadow:0 -8px 20px #b496b414;flex:0 0 auto;flex-shrink:0;height:auto;min-height:0;padding:6px max(12px,env(safe-area-inset-right,0px)) max(6px,calc(env(safe-area-inset-bottom, 0px))) max(12px,env(safe-area-inset-left,0px));padding:6px max(12px,var(--sar)) max(6px,calc(var(--sab) - var(--keyboard-height))) max(12px,var(--sal));position:relative;z-index:4}.input-row{align-items:flex-end;display:flex;gap:8px;min-width:0}.composer-control,.composer-utility{flex:0 0 auto}.composer-utility{transition:width .19s cubic-bezier(.16,1,.3,1),min-width .19s cubic-bezier(.16,1,.3,1),opacity .14s ease,transform .19s cubic-bezier(.16,1,.3,1),padding .19s ease}.input-pill{background:#f7f0fa;border:1.5px solid #0000;border-radius:22px;flex:1 1;min-width:0;overflow:hidden;transition:border-color .2s,box-shadow .2s}.input-pill:focus-within{border-color:plum;box-shadow:0 0 0 3px #dda0dd26}.message-textarea{background:#0000;border:none;color:#4a4a4a;color:var(--text);display:block;font-family:inherit;font-size:15px;line-height:1.5;max-height:120px;min-height:42px;outline:none;padding:10px 16px;resize:none;width:100%}.message-textarea::placeholder{color:#c0b0cc}.icon-btn{align-items:center;background:#f7f0fa;border-radius:50%;display:flex;flex-shrink:0;font-size:20px;height:42px;justify-content:center;transition:background .15s,transform .15s;width:42px}.icon-btn:hover{transform:scale(1.08)}.icon-btn.active,.icon-btn:hover{background:#ffe4e1;background:var(--soft-pink)}.send-btn{align-items:center;background:#e0d0ec;border-radius:50%;color:#fff;display:flex;flex-shrink:0;height:42px;justify-content:center;transition:background .2s,transform .15s,box-shadow .2s;width:42px}.send-btn.active{background:linear-gradient(135deg,#ffb6c1,plum);box-shadow:0 4px 14px #dda0dd80}.send-btn.active:hover{transform:scale(1.08)}.send-btn:disabled{cursor:default;opacity:.6}.reply-bar{align-items:center;background:#dda0dd1a;border-radius:12px;display:flex;gap:10px;margin-bottom:8px;padding:8px 12px}.reply-bar-accent{background:plum;background:var(--lavender);border-radius:2px;flex-shrink:0;min-height:28px;width:3px}.reply-bar-name{color:plum;color:var(--lavender);font-size:11px;font-weight:700}.reply-bar-text{color:#888;font-size:12px;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reply-bar-close{color:#ccc;flex-shrink:0;font-size:15px;margin-left:auto;transition:color .15s}.reply-bar-close:hover{color:#999}.msg-bubble{word-wrap:break-word;background:#fff;border-radius:18px;box-shadow:0 2px 6px #0000000f;max-width:70%;padding:10px 14px;position:relative}.msg-row.me .msg-bubble{background:#ffb6c1;background:var(--pink);border-bottom-right-radius:6px;color:#fff}.msg-row.you .msg-bubble{background:#fff;border-bottom-left-radius:6px}.msg-bubble.emoji-only{background:#0000!important;box-shadow:none!important;color:#4a4a4a!important;color:var(--text)!important;font-size:40px;padding:2px 6px}.msg-bubble.recalled{font-style:italic;opacity:.6}.msg-bubble .reply-ref{background:#ffffff4d;border-left:3px solid plum;border-left:3px solid var(--lavender);border-radius:6px;font-size:12px;margin-bottom:6px;opacity:.85;padding:4px 8px}.msg-row.you .msg-bubble .reply-ref{background:#ffe4e1;background:var(--soft-pink)}.msg-bubble .meta{align-items:center;display:flex;font-size:10px;gap:6px;margin-top:4px;opacity:.7}.msg-bubble .pin{font-size:12px}.msg-actions{display:none}.particles-canvas{inset:0;pointer-events:none;position:absolute;z-index:0}.chat-body>:not(.particles-canvas){position:relative;z-index:1}.drawer-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#4a4a4a33;inset:0;position:fixed;z-index:50}.drawer{background:#fff8f3;background:var(--cream);box-shadow:-8px 0 30px #0000001a;height:100dvh;max-width:90vw;overflow-y:auto;padding:calc(24px + env(safe-area-inset-top,    0px)) 20px calc(24px + env(safe-area-inset-bottom, 0px));padding:calc(24px + var(--sat)) 20px calc(24px + var(--sab));position:fixed;right:0;top:0;width:340px;z-index:51}.drawer h3{color:#888;font-size:14px;letter-spacing:.08em;margin:20px 0 10px;text-transform:uppercase}.drawer .drawer-close{background:#fff;border-radius:50%;box-shadow:0 4px 20px #b496b426;box-shadow:var(--shadow);font-size:18px;height:34px;position:absolute;right:14px;top:14px;width:34px}.toast-stack{display:flex;flex-direction:column;gap:8px;pointer-events:none;position:fixed;right:16px;top:16px;z-index:100}.toast{align-items:center;background:#fff8f3;border:1px solid #9b7ac233;border-radius:16px;box-shadow:0 12px 28px #58375629;display:flex;gap:10px;max-width:min(340px,calc(100vw - 32px));padding:12px 14px;pointer-events:auto}.toast--success{background:#eefaf2;border-color:#4a98603d;color:#245c36}.toast--error{background:#fff0f3;border-color:#c8757547;color:#7d3741}.toast--info{background:#f6f0ff;border-color:#9b7ac240;color:#50366c}.toast--warning{background:#fff8e8;border-color:#c4903840;color:#6b4b11}.toast .toast-title{font-size:14px;font-weight:700;margin:0}.toast .toast-body{color:currentColor;font-size:13px;margin:2px 0 0;opacity:.8}.release-notes-page{max-width:760px}.release-back{margin-bottom:18px}.release-notes-header{align-items:center;display:flex;gap:14px;margin:4px 0 24px}.release-notes-mark{align-items:center;background:#f3e8ff;border-radius:17px;color:#8a62a8;display:inline-flex;flex-shrink:0;height:50px;justify-content:center;width:50px}.release-notes-header h1{color:#4a4a4a;color:var(--text);font-size:clamp(24px,5vw,32px);margin:0}.release-notes-header p{color:#888;color:var(--subtext);font-size:14px;margin:4px 0 0}.release-history{grid-gap:14px;display:grid;gap:14px}.release-card{animation:fadeIn .24s ease both;background:#fff;background:var(--card-bg);border:1px solid #dda0dd3d;border-radius:20px;box-shadow:0 8px 24px #6b4d7a14;padding:22px}.release-card--featured{border-color:#b88ad16b;box-shadow:0 12px 30px #6b4d7a1f}.release-card-heading{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.release-version{color:#8a62a8;font-size:12px;font-weight:700;letter-spacing:.04em;margin:0 0 4px}.release-card h2{color:#4a4a4a;color:var(--text);font-size:21px;margin:0}.release-important{align-items:center;background:#f6f0ff;border-radius:999px;color:#8a62a8;display:inline-flex;font-size:10px;font-weight:700;gap:4px;padding:5px 8px;white-space:nowrap}.release-summary{color:#888;color:var(--subtext);font-size:14px;line-height:1.5;margin:14px 0 0}.release-sections{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-top:20px}.release-section{background:#fffdf9;border-radius:14px;padding:13px}.release-section--features{background:#f5fbf6}.release-section--fixes{background:#fff5f5}.release-section--improvements{background:#f7f2fc}.release-section-heading{align-items:center;color:#6b4e8b;display:flex;gap:7px}.release-section-heading h3{font-size:13px;margin:0}.release-section ul{color:#888;color:var(--subtext);font-size:13px;line-height:1.5;margin:10px 0 0;padding-left:16px}.release-section li+li{margin-top:6px}.release-card-footer{align-items:center;color:#999;display:flex;font-size:12px;gap:10px;justify-content:space-between;margin-top:20px}.release-card-footer .btn{font-size:12px;padding:7px 11px}.release-empty{color:#888;color:var(--subtext);padding:34px 20px;text-align:center}.release-empty--error{color:#a14d5b}@media (max-width:640px){.release-card{padding:18px}.release-card-heading{flex-direction:column}.release-sections{gap:8px;grid-template-columns:1fr}.release-section{padding:12px}.release-card-footer{margin-top:16px}}.feedback-backdrop{align-items:center;animation:backdropIn .2s ease both;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#33264359;display:flex;inset:0;justify-content:center;padding:max(20px,env(safe-area-inset-top)) 20px max(20px,env(safe-area-inset-bottom));position:fixed;z-index:11000}.feedback-backdrop--out{animation:backdropOut .18s ease both}.feedback-modal{animation:modalIn .26s cubic-bezier(.16,1,.3,1) both;background:#fffdf9;border:1px solid #dda0dd52;border-radius:24px;box-shadow:0 22px 54px #40284c40;padding:24px;width:min(400px,100%)}.feedback-modal--out{animation:modalOut .18s ease-in both}.feedback-modal__icon{align-items:center;background:#f4eafe;border-radius:15px;color:#8a62a8;display:inline-flex;height:44px;justify-content:center;margin-bottom:14px;width:44px}.feedback-modal--danger .feedback-modal__icon{background:#fff0f3;color:#b95f6e}.feedback-modal__content h2{color:#4a4a4a;color:var(--text);font-size:19px;line-height:1.25;margin:0}.feedback-modal__content p{color:#888;color:var(--subtext);font-size:14px;line-height:1.5;margin:8px 0 0;overflow-wrap:anywhere}.feedback-modal__actions{display:flex;gap:10px;justify-content:flex-end;margin-top:22px}.feedback-modal__confirm{background:#b88ad1;color:#fff;min-height:42px;padding-inline:16px}.feedback-modal__confirm--danger{background:#d77a88}.feedback-modal__actions .btn:focus-visible,.feedback-modal__confirm:focus-visible{outline:3px solid #8a62a852;outline-offset:2px}@media (max-width:480px){.toast-stack{left:12px;right:12px;top:calc(12px + env(safe-area-inset-top))}.toast{max-width:none}.feedback-modal{border-radius:22px;padding:22px 18px 18px}.feedback-modal__actions{flex-direction:column-reverse}.feedback-modal__actions .btn{min-height:44px;width:100%}}@media (prefers-reduced-motion:reduce){.feedback-backdrop,.feedback-backdrop--out,.feedback-modal,.feedback-modal--out,.toast-in,.toast-out{animation-duration:.01ms!important}}.media-preview-bar{align-items:center;background:#f7f0fa;border-radius:12px;display:flex;gap:10px;margin-bottom:8px;padding:8px 10px}.media-preview-img{border-radius:8px;flex-shrink:0;height:60px;object-fit:cover;width:60px}.media-preview-file{align-items:center;display:flex;flex:1 1;gap:8px;min-width:0}.media-file-icon{font-size:28px}.media-file-info{display:flex;flex-direction:column;min-width:0}.media-file-name{color:#4a4a4a;font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-file-size{color:#aaa;font-size:11px}.media-preview-remove{background:none;border:none;border-radius:50%;color:#b08abd;cursor:pointer;flex-shrink:0;font-size:16px;padding:2px 6px;transition:background .15s}.media-preview-remove:hover{background:#b08abd26}.bubble-media-img{margin-bottom:4px}.bubble-media-file{align-items:center;background:#ffffff59;border-radius:10px;color:inherit;display:flex;gap:10px;margin-bottom:4px;max-width:220px;padding:8px 10px;text-decoration:none;transition:background .15s}.bubble-media-file:hover{background:#ffffff8c}.bubble-file-name{color:inherit;font-size:13px;font-weight:600;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bubble-file-size{font-size:11px;margin-top:1px;opacity:.65}.reaction-picker{background:#fff;border:1px solid #f0e6f0;border-radius:24px;box-shadow:0 4px 16px #00000024;display:flex;gap:4px;padding:5px 8px;position:absolute;top:-48px;white-space:nowrap;z-index:50}.reaction-picker.picker-left{right:0}.reaction-picker.picker-right{left:0}.reaction-option{background:none;border:none;border-radius:50%;cursor:pointer;font-size:20px;line-height:1;padding:2px 3px;transition:transform .15s,background .15s}.reaction-option:hover{background:#fff0f5;transform:scale(1.3)}.reaction-option.reacted{background:#ffb6c140}.reaction-pills{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.reaction-pills.pills-own{justify-content:flex-end;padding-right:8px}.reaction-pills.pills-theirs{justify-content:flex-start;padding-left:40px}.reaction-pill{align-items:center;background:#fff;border:1.5px solid #f0e6f0;border-radius:12px;box-shadow:0 1px 3px #00000012;cursor:pointer;display:inline-flex;font-size:13px;gap:3px;padding:2px 7px;transition:border-color .15s,background .15s,transform .1s}.reaction-pill span{color:#888;font-size:11px;font-weight:600}.reaction-pill:hover{border-color:plum;transform:scale(1.08)}.reaction-pill.mine{background:#ffb6c12e;border-color:#ffb6c1}.reaction-pill.mine span{color:#c06080}.signature{background:linear-gradient(#0000,#fff8f3f7 40%);bottom:0;color:#aaa;font-size:11px;font-style:italic;left:0;padding:8px 12px 10px;pointer-events:none;position:fixed;right:0;text-align:center;z-index:10}.loading-dots{display:inline-flex;gap:4px}.loading-dots .d{animation:typing-dot 1.4s ease-in-out infinite;background:#ffb6c1;background:var(--pink);border-radius:50%;height:8px;width:8px}.loading-dots .d:nth-child(2){animation-delay:.15s;background:#add8e6;background:var(--blue)}.loading-dots .d:nth-child(3){animation-delay:.3s;background:plum;background:var(--lavender)}.v1-loading{align-items:flex-start;display:flex;flex-direction:column;gap:6px}.v1-loading .line{animation:v1-line 1.6s cubic-bezier(.5,0,.5,1) infinite;background:#ffb6c1;background:var(--pink);border-radius:3px;height:6px;transform-origin:left center}.v1-loading .line:first-child{animation-delay:0s;width:80px}.v1-loading .line:nth-child(2){animation-delay:.15s;background:#add8e6;background:var(--blue);width:120px}.v1-loading .line:nth-child(3){animation-delay:.3s;background:plum;background:var(--lavender);width:60px}@keyframes v1-line{0%{opacity:.3;transform:translateX(-30%) rotate(-4deg)}50%{opacity:1;transform:translateX(0) rotate(0deg)}to{opacity:.3;transform:translateX(30%) rotate(4deg)}}.home-mobile-wrap{background:#fff8f3;background:var(--cream);display:flex;flex-direction:column;min-height:100dvh;padding:0 0 calc(80px + env(safe-area-inset-bottom, 0px));padding:0 0 calc(80px + var(--sab))}.home-mobile-header{align-items:center;background:linear-gradient(135deg,#ffb6c1,plum 50%,#add8e6);display:flex;flex-shrink:0;justify-content:space-between;padding:calc(16px + env(safe-area-inset-top,    0px)) 18px 12px;padding:calc(16px + var(--sat)) 18px 12px}.home-mobile-user{align-items:center;display:flex;gap:10px}.home-mobile-avatar{border:2px solid #fff9;border-radius:50%;height:42px;object-fit:cover;width:42px}.home-mobile-name{color:#fff;font-size:15px;font-weight:700;margin:0}.home-mobile-status{align-items:center;color:#ffffffd9;display:flex;font-size:11px;gap:4px;margin:0}.home-mobile-dot{border-radius:50%;display:inline-block;flex-shrink:0;height:7px;width:7px}.home-mobile-logout{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff40;border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:7px 14px;transition:background .2s}.home-mobile-logout:hover{background:#fff6}.home-mobile-greeting{background:linear-gradient(90deg,#ffb6c1,plum,#add8e6);background:linear-gradient(90deg,var(--pink),var(--lavender),var(--blue));-webkit-background-clip:text;background-clip:text;color:#0000;font-size:22px;font-weight:800;min-height:44px;padding:20px 20px 4px}.home-mobile-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr;padding:12px 18px 0}.home-mobile-tile{align-items:center;background:linear-gradient(135deg,#ffb6c1,#ff8fa3);background:var(--home-tile-gradient,var(--home-tile-profile));border:none;border-radius:24px;box-shadow:0 4px 16px #0000001a;cursor:pointer;display:flex;flex-direction:column;gap:8px;justify-content:center;padding:22px 12px 18px;text-align:center;transition:transform .22s,box-shadow .22s}.home-mobile-tile:active{box-shadow:0 2px 8px #00000024;transform:scale(.96)}.home-mobile-tile-icon-wrap{background:#fff3;border-radius:20px;box-shadow:inset 0 0 0 1px #ffffff59;height:64px;padding:10px;width:64px}.pastel-icon{color:currentColor;display:inline-block;flex:0 0 auto;vertical-align:-.14em}.pastel-icon--online{color:#56b882}.pastel-icon--offline{color:#a9a3b2}button .pastel-icon{pointer-events:none}.icon-btn .pastel-icon,.send-btn .pastel-icon{vertical-align:middle}@media (prefers-reduced-motion:reduce){.pastel-icon{transition:none}.home-mobile-tile-icon,.home-tile-icon{animation:none;transform:none}.home-mobile-tile,.home-tile{transition:none}.home-mobile-tile.is-opening,.home-tile.is-opening,.home-tile:hover{transform:none}}.home-mobile-label{color:#fff;font-size:13px;font-weight:700;line-height:1.3;text-shadow:0 1px 4px #0000002e}.home-mobile-code-wrap{background:#fff;background:var(--card-bg);border-radius:18px;box-shadow:0 4px 20px #b496b426;box-shadow:var(--shadow);margin:22px 18px 0;padding:16px;text-align:center}.home-mobile-code-hint{margin:0 0 8px}.home-mobile-code-hint,.home-mobile-time{color:#888;color:var(--subtext);font-size:12px}.home-mobile-time{margin:14px 0 0;text-align:center}body.dark .home-mobile-tile{box-shadow:0 4px 16px #00000059}.mobile-chat-peer{display:none}.app-brand-copy{min-width:0}@media (max-width:700px){html.chat-viewport-lock,html.chat-viewport-lock body,html.chat-viewport-lock body #root{height:100dvh;height:var(--visual-height,100dvh);inset:0;max-height:100dvh;max-height:var(--visual-height,100dvh);overflow:hidden;overscroll-behavior:none;position:fixed}.hero h1{font-size:34px}.home-tile{padding:22px 16px}.home-tile-icon-wrap{height:68px;width:68px}.container{padding:16px 14px 70px}.drawer{max-width:100vw;width:100vw}.msg-bubble{max-width:85%}.avatar-grid{grid-template-columns:repeat(auto-fill,minmax(58px,1fr));max-height:220px}.login-card{padding:28px 20px 24px}.header-datetime{display:none}.chat-shell{top:0!important}.app-header{-webkit-backdrop-filter:blur(12px) saturate(1.08)!important;backdrop-filter:blur(12px) saturate(1.08)!important;background:linear-gradient(135deg,#ffb6c1c7,#dda0ddc7 50%,#add8e6c7)!important;box-shadow:0 1px 5px #4a324a0f!important;height:calc(52px + env(safe-area-inset-top))!important;padding:env(safe-area-inset-top) 8px 0 10px!important;pointer-events:none;z-index:10!important}.app-brand,.app-user-menu{pointer-events:auto}.app-brand{flex:1 1 auto;gap:6px!important;max-width:calc(100% - 158px);min-width:0}.app-brand>img{border-radius:7px!important;height:28px!important;width:28px!important}.app-brand-copy{align-items:flex-start;display:flex;flex-direction:column;gap:1px;justify-content:center;min-width:0}.app-brand-copy>div:first-child{font-size:13px!important}.app-online-status{display:none!important}.mobile-chat-peer{align-items:center;background:#0000;border:0;color:#fff;cursor:pointer;display:flex;gap:6px;margin:0;max-width:100%;min-width:0;padding:0;text-align:left}.mobile-chat-peer img{border:2px solid #ffffffb3;border-radius:50%;flex:0 0 auto;height:28px;object-fit:cover;width:28px}.mobile-chat-peer span{grid-gap:1px;align-content:center;display:grid;gap:1px;max-width:84px;min-width:0}.mobile-chat-peer small,.mobile-chat-peer strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-chat-peer strong{font-size:11px;line-height:1.15}.mobile-chat-peer small{font-size:10px;line-height:1.15}.app-user-menu{display:none}.chat-main{width:100%}.chat-toolbar{background:#0000!important;border-bottom:1px solid #ffffff47!important;gap:0!important;isolation:isolate;min-height:calc(52px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 8px 0 0!important;position:relative;z-index:20}.chat-toolbar>button{display:none}.chat-contact{flex:0 0 auto!important;gap:0!important}.chat-contact>button,.chat-contact>div:not(.chat-actions){display:none!important}.chat-actions{display:flex!important;gap:3px!important;opacity:1!important;pointer-events:auto;position:absolute!important;right:8px;top:calc(env(safe-area-inset-top) + 11px);visibility:visible!important;z-index:22!important}.chat-actions>button{flex:0 0 34px!important;height:34px!important;touch-action:manipulation;width:34px!important}.chat-actions>button .pastel-icon{height:15px!important;width:15px!important}}@media (max-width:420px){.hero h1{font-size:26px}.login-card{border-radius:20px;padding:22px 16px 20px}.avatar-grid{grid-template-columns:repeat(auto-fill,minmax(52px,1fr));max-height:190px}.btn{font-size:14px;padding:10px 16px}.chat-input-area{padding-bottom:max(6px,calc(env(safe-area-inset-bottom, 0px)));padding-bottom:max(6px,calc(var(--sab) - var(--keyboard-height)));padding-left:max(10px,env(safe-area-inset-left,0px));padding-left:max(10px,var(--sal));padding-right:max(10px,env(safe-area-inset-right,0px));padding-right:max(10px,var(--sar));padding-top:6px}.input-row{gap:4px}.icon-btn,.send-btn{height:40px;width:40px}.message-textarea{min-height:40px;padding:9px 12px}.back-label{display:none}}@media (max-width:700px){.chat-input-area{height:auto;min-height:0;padding-bottom:max(6px,calc(env(safe-area-inset-bottom, 0px)));padding-bottom:max(6px,calc(var(--sab) - var(--keyboard-height)));padding-top:6px}.chat-input-area.composer-focused{padding-bottom:6px}.input-row{gap:4px}.composer-control{transition:width .18s cubic-bezier(.16,1,.3,1),transform .18s cubic-bezier(.16,1,.3,1),opacity .18s ease}.input-row.typing-mode{gap:4px}.input-row.typing-mode .composer-utility{min-width:0!important;opacity:0;padding-left:0!important;padding-right:0!important;pointer-events:none;transform:translateX(-6px) scale(.82);width:0!important}.input-row .send-btn{min-width:40px;width:40px}.input-pill{min-width:72px}}@media (max-width:380px){.app-brand{max-width:calc(100% - 150px)}.chat-actions{gap:2px!important}.chat-actions>button{flex-basis:32px!important;height:32px!important;width:32px!important}.chat-actions>button .pastel-icon{height:14px!important;width:14px!important}}@media (prefers-reduced-motion:reduce){.composer-control,.composer-utility{transition:none!important}}@keyframes confetti-fall{0%{opacity:1;transform:translateY(-30px) rotate(0deg) scaleX(1)}50%{opacity:.8;transform:translateY(50vh) rotate(1turn) scaleX(-1)}to{opacity:0;transform:translateY(110vh) rotate(2turn) scaleX(1)}}@media (min-width:701px) and (max-width:1100px){.container{max-width:680px;padding:24px 28px 70px}.home-grid{gap:16px;grid-template-columns:repeat(3,1fr)}.home-tile{padding:24px 18px}.home-tile-icon-wrap{height:68px;width:68px}.home-tile h3{font-size:14px}.home-tile p{font-size:12px}.hero h1{font-size:38px}.chat-layout{height:100dvh}.chat-sidebar{min-width:180px;width:220px}.drawer{width:min(360px,80vw)}.msg-bubble{max-width:72%}.login-card{max-width:500px;padding:40px 36px 36px}.avatar-grid{grid-template-columns:repeat(auto-fill,minmax(62px,1fr));max-height:260px}.header-datetime{display:block}}body.dark{--cream:#1e1a2e;--text:#ede6ff;--soft-pink:#3a2d50;--shadow:0 4px 20px #00000073;--card-bg:#2a2445;--border:#3e2f60;--subtext:#9a8abe;--search-bg:#241e3a}body.dark .card,body.dark .drawer,body.dark .drawer .drawer-close,body.dark .login-card,body.dark .msg-toolbar,body.dark .reaction-picker{background:#2a2445}body.dark .chat-footer,body.dark .chat-header{background:#1a162aeb;border-color:#3e2f60}body.dark .chat-body{background:#1e1a2e}body.dark .msg-bubble-v2.theirs{background:#302850;color:#ede6ff}body.dark .msg-bubble-v2.recalled{background:#2a2445!important;color:#7a6a90!important}body.dark .input{background:#241e3a;border-color:#4a3868;color:#ede6ff}body.dark .input::placeholder{color:#7a6a90}body.dark .input:focus{box-shadow:0 0 0 3px #ffb6c12e}body.dark .btn-ghost,body.dark .input:focus{border-color:#ffb6c1;border-color:var(--pink)}body.dark .btn-ghost{color:#ede6ff}body.dark .code-input{background:#241e3a;border-color:plum;border-color:var(--lavender);color:#ede6ff}body.dark .code-display{background:linear-gradient(135deg,#3a2d50,#2a3850)}body.dark .avatar-grid .avatar-option,body.dark .friend-tile{background:#2a2445}body.dark .tagline{color:#9a8abe}body.dark .toast{background:#2a2445}body.dark .toast .toast-body{color:#9a8abe}body.dark .reaction-pill{background:#2a2445;border-color:#4a3868}body.dark .reaction-pill span{color:#9a8abe}body.dark .reaction-pill.mine{background:#ffb6c11f;border-color:#ffb6c1}body.dark .media-preview-bar{background:#241e3a}body.dark .media-file-name{color:#ede6ff}body.dark .login-tabs{background:#241e3a}body.dark .login-tabs button.active{background:#2a2445}body.dark .signature{background:linear-gradient(#0000,#1e1a2ef7 40%)}body.dark .chat-input-area{background:#2a2445;border-color:#3e2f60}body.dark .input-pill{background:#1e1a2e;border-color:#0000}body.dark .input-pill:focus-within{border-color:plum}body.dark .icon-btn{background:#3a2d50}body.dark .icon-btn.active,body.dark .icon-btn:hover{background:#4a3868}body.dark .reply-bar{background:#dda0dd14}body.dark .reply-bar-text{color:#9a8abe}body.dark .home-tile p{color:#ffffffe6}@media (hover:hover) and (pointer:fine){body.dark .home-tile:hover{border-color:#ffffffc7}}body.dark .reply-preview{background:#ffffff14}body.dark .msg-bubble-v2.theirs .reply-preview{background:#ffb6c114}body.dark .date-pill span{background:#64508c33;color:#9a8abe}.theme-toggle{flex-shrink:0;height:32px;position:relative;width:60px}.theme-toggle input{height:0;opacity:0;position:absolute;width:0}.theme-toggle-track{align-items:center;background:linear-gradient(135deg,#87ceeb,gold);border-radius:999px;cursor:pointer;display:flex;font-size:14px;inset:0;justify-content:space-between;padding:0 6px;position:absolute;transition:background .4s}.theme-toggle input:checked+.theme-toggle-track{background:linear-gradient(135deg,#2a1a5e,#4a3a90)}.theme-toggle-thumb{background:#fff;border-radius:50%;box-shadow:0 2px 6px #0003;height:24px;left:4px;pointer-events:none;position:absolute;top:4px;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s;width:24px}.theme-toggle input:checked~.theme-toggle-thumb{box-shadow:0 2px 8px #0006;transform:translateX(28px)}.lang-btn{align-items:center;background:#ffe4e1;background:var(--soft-pink);border:2px solid #0000;border-radius:999px;color:#4a4a4a;color:var(--text);cursor:pointer;display:inline-flex;font-size:14px;font-weight:700;gap:6px;padding:9px 18px;transition:transform .2s,box-shadow .2s,background .2s}.lang-btn:hover{box-shadow:0 4px 12px #b496b440;transform:translateY(-2px)}.lang-btn.active{background:#ffb6c1;background:var(--pink);border-color:#0000;box-shadow:0 4px 14px #ffb6c173;color:#fff}body.dark .lang-btn{background:#3a2d50;color:#ede6ff}body.dark .lang-btn.active{background:#ffb6c1;background:var(--pink);color:#fff}.gif-icon-btn{align-items:center;background:linear-gradient(135deg,#ffb6c1,plum);border-radius:10px;box-shadow:0 2px 8px #dda0dd66;color:#fff!important;display:flex;font-size:11px!important;font-weight:800;height:36px;justify-content:center;letter-spacing:.5px;min-width:36px;padding:0 6px;transition:transform .15s,box-shadow .15s}.gif-icon-btn:hover{box-shadow:0 4px 12px #dda0dd80;transform:translateY(-1px)}.gif-icon-btn.active{background:linear-gradient(135deg,plum,#b08abd);box-shadow:0 2px 8px #b08abd80}.gif-btn-label{font-size:11px;font-weight:800;letter-spacing:.5px}.gif-picker{animation:gif-picker-in .22s cubic-bezier(.2,.8,.2,1) both;background:#fff;border:1.5px solid #f0e4f8;border-radius:18px;bottom:calc(100% + 10px);box-shadow:0 8px 40px #b496b440,0 2px 12px #00000014;display:flex;flex-direction:column;height:min(380px,calc(100dvh - 116px));left:0;min-height:0;overflow:hidden;position:absolute;right:0;z-index:200}@keyframes gif-picker-in{0%{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}body.dark .gif-picker{background:#2d2042;border-color:#4a3d6a;box-shadow:0 8px 40px #0006}.gif-picker-header{align-items:center;display:flex;flex-shrink:0;gap:8px;padding:10px 12px 0}.gif-tabs{display:flex;flex:1 1;gap:6px}.gif-tab{background:#f7f0fa;border-radius:20px;color:#888;font-size:13px;font-weight:700;padding:5px 14px;transition:background .15s,color .15s,transform .1s}.gif-tab:hover{background:#ede0f5;color:#b08abd}.gif-tab.active{background:linear-gradient(135deg,#ffb6c1,plum);box-shadow:0 2px 8px #dda0dd66;color:#fff}body.dark .gif-tab{background:#3a2d50;color:#bba8dd}body.dark .gif-tab.active{background:linear-gradient(135deg,#ffb6c1,plum);color:#fff}.gif-close{align-items:center;background:#f0e4f8;border-radius:50%;color:#888;display:flex;font-size:13px;height:28px;justify-content:center;transition:background .15s;width:28px}.gif-close:hover{background:#ffb6c1;color:#fff}.gif-search-wrap{align-items:center;background:#f7f0fa;border:1.5px solid #0000;border-radius:12px;display:flex;flex-shrink:0;gap:6px;margin:10px 12px 6px;padding:0 10px;transition:border-color .15s}.gif-search-wrap:focus-within{border-color:plum}.gif-search-icon{flex-shrink:0;font-size:14px}.gif-search-input{background:#0000;border:none;color:#4a4a4a;color:var(--text);flex:1 1;font-size:13px;outline:none;padding:8px 0}.gif-search-clear{align-items:center;border-radius:50%;color:#aaa;display:flex;font-size:12px;height:20px;justify-content:center;transition:background .15s;width:20px}.gif-search-clear:hover{background:#ffb6c1;color:#fff}body.dark .gif-search-wrap{background:#3a2d50}body.dark .gif-search-input{color:#ede6ff}.gif-suggestions{padding:0 12px}.gif-suggestions-label{color:#b08abd;font-size:11px;font-weight:700;letter-spacing:.3px;margin-bottom:6px}.gif-grid-suggest{gap:4px!important;grid-template-columns:repeat(4,1fr)!important;max-height:80px;overflow:hidden}.gif-suggestions-divider{color:#bac;font-size:11px;font-weight:700;letter-spacing:.5px;margin:8px 0 4px;text-transform:uppercase}.gif-scroll{flex:1 1;min-height:0;overflow-y:auto;padding:6px 12px 4px}.gif-scroll::-webkit-scrollbar{width:4px}.gif-scroll::-webkit-scrollbar-thumb{background:plum;border-radius:4px}.gif-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(3,1fr)}.gif-item{aspect-ratio:1;background:#f0e8f8;border:2px solid #0000;border-radius:10px;overflow:hidden;padding:0;transition:border-color .15s,transform .15s,box-shadow .15s}.gif-item:hover{border-color:#ffb6c1;box-shadow:0 4px 12px #ffb6c166;transform:scale(1.04)}.gif-item img{display:block;height:100%;object-fit:cover;width:100%}.gif-loading{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(3,1fr)}.gif-skeleton{animation:gif-shimmer 1.4s ease-in-out infinite;aspect-ratio:1;background:linear-gradient(90deg,#f0e8f8 25%,#ede0f5 50%,#f0e8f8 75%);background-size:200% 100%;border-radius:10px}@keyframes gif-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.gif-empty{color:#bac;font-size:13px;padding:24px;text-align:center}.gif-no-key{align-items:center;display:flex;flex-direction:column;gap:8px;padding:20px 16px;text-align:center}.gif-no-key span{font-size:28px}.gif-no-key p{color:#888;font-size:12px;line-height:1.5;margin:0}.gif-no-key code{background:#f0e8f8;border-radius:4px;font-size:11px;padding:1px 5px}.gif-no-key a{color:plum;font-size:12px;font-weight:700;text-decoration:underline}.gif-footer{border-top:1px solid #f0e4f8;display:flex;flex-shrink:0;justify-content:flex-end;padding:6px 12px 8px}.bubble-gif{display:block;max-width:240px}.bubble-gif-img{border-radius:12px;cursor:pointer;display:block;max-height:200px;max-width:100%;transition:transform .15s}.bubble-gif-img:hover{transform:scale(1.02)}body.dark .gif-item{background:#3a2d50}body.dark .gif-skeleton{background:linear-gradient(90deg,#3a2d50 25%,#4a3d6a 50%,#3a2d50 75%);background-size:200% 100%}body.dark .gif-footer{border-color:#4a3d6a}.sticker-pack-tabs{border-bottom:1px solid #f0e4f8;display:flex;gap:4px;overflow-x:auto;padding:6px 10px 4px;scrollbar-width:none}.sticker-pack-tabs::-webkit-scrollbar{display:none}.sticker-pack-tab{background:none;border:1.5px solid #0000;border-radius:10px;cursor:pointer;flex-shrink:0;font-size:18px;line-height:1;padding:4px 8px;transition:background .15s,border-color .15s}.sticker-pack-tab:hover{background:#f7eff8}.sticker-pack-tab.active{background:#f7eff8;border-color:plum}body.dark .sticker-pack-tab:hover{background:#3a2d50}body.dark .sticker-pack-tab.active{background:#3a2d50;border-color:#c9a6e0}.sticker-emoji-grid{gap:6px!important;grid-template-columns:repeat(5,1fr)!important}.sticker-library-controls{background:inherit;flex:0 0 auto;min-height:0;min-width:0;overflow:visible;position:relative;z-index:2}.sticker-library-scroll{-webkit-overflow-scrolling:touch;flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}.sticker-category-tabs{display:flex;gap:6px;overflow-x:auto;padding:8px 12px 4px;scrollbar-width:none}.sticker-category-tabs::-webkit-scrollbar{display:none}.sticker-category-tab{background:#ffffff9e;border:1px solid #b496be38;border-radius:18px;color:#7e667f;cursor:pointer;flex:0 0 auto;font-size:11px;min-height:36px;padding:0 11px}.sticker-category-tab.active{background:#ead9f0;border-color:#cdaed8;color:#5d4163;font-weight:700}.sticker-suggestions{align-items:center;display:flex;gap:4px;overflow-x:auto;padding:4px 2px 8px}.sticker-suggestion-label{color:#9a7d9f;flex:0 0 auto;font-size:10px;margin-right:2px}.sticker-asset-btn,.sticker-suggestion{min-height:48px;min-width:48px;position:relative}.sticker-asset-btn{min-height:0;min-width:0;overflow:visible;width:100%}.sticker-asset-btn .sticker-display{background:#0000!important;border-radius:10px!important;height:100%!important;width:100%!important}.sticker-asset-btn .sticker-display img{height:100%;object-fit:contain;padding:1px!important;width:100%}.sticker-favorite-btn{background:#fff;border-radius:50%;box-shadow:0 1px 4px #50285a24;color:#b98bc4;font-size:14px;height:20px;line-height:20px;position:absolute;right:-2px;top:-5px;width:20px}.gif-message{background:#f0f0f0;border-radius:8px;margin-top:8px;min-height:96px;overflow:hidden;position:relative;width:min(100%,360px)}.gif-message-preview,.gif-message-primary{height:100%;inset:0;object-fit:cover;position:absolute;transition:opacity .18s ease;width:100%}.gif-message-preview{opacity:.92}.gif-message-error,.gif-message-loading{align-items:center;background:#f0f0f0;color:#8f7a92;display:flex;font-size:12px;gap:8px;inset:0;justify-content:center;position:absolute}.gif-message-error button{background:#ead9f0;border:0;border-radius:12px;color:#65476c;cursor:pointer;padding:5px 9px}.smart-suggestion-bar{align-items:center;background:#ffffffb8;border-top:1px solid #dda0dd2e;display:flex;gap:8px;min-height:56px;overflow:hidden;padding:6px 8px}.smart-suggestion-title{color:#9a7d9f;flex:0 0 auto;font-size:10px;font-weight:700}.smart-suggestion-items{align-items:center;display:flex;gap:6px;min-width:0;overflow-x:auto;scrollbar-width:none}.smart-suggestion-items::-webkit-scrollbar{display:none}.smart-suggestion-sticker{background:#f8f1fa;border:0;border-radius:10px;cursor:pointer;min-height:48px;min-width:48px;padding:0;position:relative}.smart-suggestion-gif:hover,.smart-suggestion-sticker:hover{background:#eee0f3}.smart-suggestion-gif{align-items:center;background:#faf6fc;border:1px solid #ead9f0;border-radius:18px;color:#76557d;cursor:pointer;display:inline-flex;font-size:10px;gap:5px;max-width:150px;min-height:36px;padding:0 9px;white-space:nowrap}.smart-suggestion-gif span:first-child{color:#b08abd;font-weight:800;letter-spacing:.4px}body.dark .smart-suggestion-bar{background:#2d2042d9;border-color:#4a3d6a}body.dark .smart-suggestion-gif,body.dark .smart-suggestion-sticker{background:#3a2d50;border-color:#4a3d6a;color:#d7c4e2}.sticker-emoji-btn{align-items:center;aspect-ratio:1;background:none;border:1.5px solid #0000;border-radius:12px;cursor:pointer;display:flex;font-size:26px;justify-content:center;line-height:1;padding:2px;text-align:center;transition:background .12s,transform .12s,border-color .12s}.sticker-emoji-btn:hover{background:#f7eff8;border-color:plum;transform:scale(1.15)}.sticker-emoji-btn:active{transform:scale(.95)}body.dark .sticker-emoji-btn:hover{background:#3a2d50;border-color:#c9a6e0}.bubble-emoji-sticker{cursor:default;display:inline-block;filter:drop-shadow(0 2px 6px rgba(180,120,200,.25));font-size:48px;line-height:1.1;padding:4px;transition:transform .2s;-webkit-user-select:none;user-select:none}.bubble-emoji-sticker:hover{transform:scale(1.08) rotate(-3deg)}.native-sticker-message{display:flex;justify-content:center;padding:2px 0 0}.native-sticker-message .sticker-display{background:#0000!important;height:clamp(132px,18vw,196px)!important;width:clamp(132px,18vw,196px)!important}.native-sticker-message .sticker-display img{object-fit:contain;padding:0!important}.msg-bubble-v2:has(.native-sticker-message){background:#0000;box-shadow:none;padding:4px 8px 5px}.msg-bubble-v2:has(.native-sticker-message) .bubble-meta{color:#a98caf;padding-inline:3px}@media (max-width:520px){.native-sticker-message .sticker-display{height:clamp(112px,38vw,164px)!important;width:clamp(112px,38vw,164px)!important}}@media (prefers-reduced-motion:reduce){.native-sticker-message .sticker-display{transition:none}}.sticker-store{display:flex;flex-direction:column;height:100%}.sticker-store-header{align-items:center;border-bottom:1px solid #f0e4f8;display:flex;flex-shrink:0;gap:8px;padding:10px 12px 8px}.store-back-btn{background:none;border:none;border-radius:8px;color:plum;cursor:pointer;font-size:18px;line-height:1;padding:2px 6px}.store-back-btn:hover{background:#f7eff8}.store-title{color:#6b4e8b;flex:1 1;font-size:14px;font-weight:700}.store-subtitle{color:#bbb;flex-shrink:0;font-size:11px;padding:4px 14px 6px}.store-pack-list{flex:1 1;overflow-y:auto;padding:6px 10px}.store-pack-row{align-items:center;border-bottom:1px solid #f7f0fa;border-radius:14px;cursor:pointer;display:flex;gap:12px;padding:10px 8px;transition:background .15s}.store-pack-row:hover{background:#fff0f8}.store-pack-cover{background:linear-gradient(135deg,#ffe4f0,#ede7ff);border-radius:12px;flex-shrink:0;font-size:32px;height:44px;width:44px}.store-pack-meta{flex:1 1;min-width:0}.store-pack-name{color:#4a4a4a;font-size:13px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.store-pack-desc{color:#999;font-size:11px;margin-top:2px}.store-pack-count{color:#b08abd;font-size:11px;margin-top:2px}.store-pack-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:3px}.store-tag{background:#f3e8ff;border-radius:8px;color:#b08abd;font-size:10px;padding:1px 6px}.store-add-btn{align-items:center;background:#fff;border:2px solid plum;border-radius:50%;color:plum;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;font-weight:700;height:32px;justify-content:center;line-height:1;transition:all .15s;width:32px}.store-add-btn:hover{background:plum;color:#fff;transform:scale(1.1)}.store-add-btn.added{background:plum;border-color:plum;color:#fff}.store-add-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.store-pack-info{border-bottom:1px solid #f0e4f8;gap:14px;padding:14px}.store-pack-cover-lg,.store-pack-info{align-items:center;display:flex;flex-shrink:0}.store-pack-cover-lg{background:linear-gradient(135deg,#ffe4f0,#ede7ff);border-radius:16px;font-size:48px;height:64px;justify-content:center;width:64px}.store-preview-grid{grid-gap:6px;display:grid;flex:1 1;gap:6px;grid-template-columns:repeat(5,1fr);overflow-y:auto;padding:10px 12px}.store-preview-item{align-items:center;background:#fff8ff;border:1.5px solid #f0e4f8;border-radius:10px;display:flex;font-size:28px;justify-content:center;transition:transform .12s,border-color .12s}.store-preview-item:hover{border-color:plum;transform:scale(1.12)}.store-detail-footer{border-top:1px solid #f0e4f8;flex-shrink:0;padding:10px 12px}.sticker-store-shortcut{border:1.5px dashed plum!important;color:plum;font-size:20px!important;font-weight:700}.sticker-store-shortcut:hover{background:#f7eff8;color:#b080cc}.sticker-library-nav{display:flex;gap:6px;overflow-x:auto;padding:8px 12px 3px;position:relative;scrollbar-width:none;z-index:3}.sticker-library-nav::-webkit-scrollbar{display:none}.sticker-library-nav button{background:#fffafd;border:1px solid #ead9ef;border-radius:999px;color:#806b86;cursor:pointer;flex:0 0 auto;font-size:11px;font-weight:700;min-height:34px;padding:0 12px;touch-action:manipulation}.sticker-library-nav button.active{background:#ead9f0;border-color:#cdaed8;color:#5d4163}.sticker-character-strip{display:flex;gap:8px;overflow-x:auto;padding:7px 0;scrollbar-width:thin}.sticker-character-strip button{align-items:center;background:#0000;border:0;color:#755e7d;cursor:pointer;display:flex;flex-direction:column;font-size:9px;gap:3px;min-width:68px}.sticker-emoji-btn{touch-action:manipulation}.sticker-character-strip button:focus-visible,.sticker-emoji-btn:focus-visible,.sticker-library-nav button:focus-visible,.store-install-btn:focus-visible,.store-pack-open:focus-visible{outline:2px solid #b08abd;outline-offset:2px}.sticker-store{min-height:0}.store-hero{align-items:center;background:linear-gradient(135deg,#fff5f4,#f5effd);border:1px solid #f0dce7;border-radius:18px;color:#614c68;display:flex;gap:12px;justify-content:space-between;margin:8px 12px;padding:16px}.store-eyebrow{color:#b07d9e;font-size:9px;font-weight:800;letter-spacing:1.4px}.store-hero h2{color:#5d4665;font-size:18px;line-height:1.15;margin:5px 0 3px}.store-hero p{color:#856e8b;font-size:11px;margin:0}.store-search{align-items:center;background:#fff;border:1px solid #ead9ef;border-radius:12px;color:#a17ea9;display:flex;gap:8px;margin:0 12px 7px;min-height:38px;padding:0 12px}.store-search input{background:#0000;border:0;color:#57445e;flex:1 1;font:inherit;font-size:12px;min-width:0;outline:0}.store-pack-grid{grid-gap:10px;display:grid;flex:1 1;gap:10px;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:6px 12px 14px}.store-pack-card{background:#fffafd;border:1px solid #eedfeb;border-radius:16px;box-shadow:0 5px 16px #8b659614;min-width:0;overflow:hidden}.store-pack-open{background:#0000;border:0;cursor:pointer;padding:0;text-align:left;width:100%}.store-pack-cover{align-items:center;background:linear-gradient(135deg,#fff5f2,#f1eaff);display:flex;justify-content:center;min-height:108px}.store-pack-sheet{display:block;height:100%;object-fit:contain;object-position:center;width:100%}.store-pack-sheet-card{aspect-ratio:1/.88}.store-pack-sheet-hero{background:#ffffff80;border-radius:14px;flex:0 0 112px;height:112px;object-fit:contain;width:112px}.store-pack-sheet-detail{height:100%;object-fit:contain;width:100%}.store-pack-card-body{padding:9px 10px 5px}.store-card-actions{align-items:center;border-top:1px solid #f3e8f5;color:#ae8ab3;display:flex;font-size:9px;gap:6px;justify-content:space-between;padding:7px 10px 10px}.store-install-btn{background:#fff;border:1px solid #d6b5df;border-radius:999px;color:#926aa0;cursor:pointer;font-size:10px;font-weight:800;min-height:30px;padding:0 9px;touch-action:manipulation}.store-install-btn.installed{background:#eedff1;color:#72547c}.store-pack-cover-lg{background:#0000}.store-pack-grid .store-pack-cover{aspect-ratio:1/1;display:block;height:auto;min-height:0;overflow:hidden;width:100%}.store-pack-grid .store-pack-sheet-card{display:block;height:100%;max-height:none;max-width:none;object-fit:cover;object-position:center;width:100%}.store-pack-cover-lg{height:112px;overflow:hidden;width:112px}.store-preview-grid{align-content:start;gap:8px;grid-template-columns:repeat(auto-fit,minmax(112px,1fr))}.store-preview-item{aspect-ratio:1;min-width:0;overflow:hidden;padding:2px;width:100%}.store-preview-item .sticker-display{background:#0000!important;border-radius:8px!important;height:100%!important;width:100%!important}.store-preview-item .sticker-display img{height:100%;object-fit:contain;padding:1px!important;width:100%}@media (min-width:700px){.gif-picker{height:min(600px,72dvh)}.sticker-emoji-grid{gap:8px!important;grid-template-columns:repeat(7,1fr)!important}.store-pack-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:520px){.gif-picker{border-radius:22px 22px 0 0;bottom:0;height:min(82dvh,620px);left:8px;position:fixed;right:8px;width:auto}.sticker-emoji-grid{gap:7px!important;grid-template-columns:repeat(4,1fr)!important}.store-hero{padding:12px}.store-hero h2{font-size:16px}.store-pack-grid{gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.store-pack-grid .store-pack-cover{min-height:0}}.store-loading{display:flex;flex-direction:column;gap:8px;padding:10px}.store-skeleton{animation:shimmer 1.4s infinite;background:linear-gradient(90deg,#f7f0fa 25%,#ede7ff 50%,#f7f0fa 75%);background-size:200% 100%;border-radius:14px;height:64px}body.dark .store-pack-row:hover{background:#2a1f3d}body.dark .store-pack-cover,body.dark .store-pack-cover-lg{background:linear-gradient(135deg,#3a2d50,#2a1f3d)}body.dark .store-pack-name{color:#e8d5f0}body.dark .store-preview-item{background:#2a1f3d;border-color:#3a2d50}body.dark .store-tag{background:#2a1f3d;color:#c9a6e0}body.dark .store-skeleton{background:linear-gradient(90deg,#2a1f3d 25%,#3a2d50 50%,#2a1f3d 75%);background-size:200% 100%}.avatar-modal-overlay{align-items:center;animation:fadeIn .15s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000073;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1000}.avatar-modal{animation:popIn .2s cubic-bezier(.34,1.56,.64,1);background:#fff;border-radius:20px;box-shadow:0 20px 60px #0003;max-height:90vh;max-width:420px;overflow-y:auto;padding:20px;width:100%}.avatar-modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.avatar-modal-title{color:#4a4a4a;font-size:16px;font-weight:700}.avatar-modal-close{align-items:center;background:#f0e4f8;border:none;border-radius:50%;color:#888;cursor:pointer;display:flex;font-size:13px;height:28px;justify-content:center;transition:background .15s;width:28px}.avatar-modal-close:hover{background:plum;color:#fff}.avatar-section-label{color:#888;font-size:12px;font-weight:600;margin-bottom:7px}.sticker-avatar-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(5,1fr);max-height:280px;overflow-y:auto;padding:2px}.sticker-avatar-item{align-items:center;background:#0000;border:2px solid #0000;border-radius:10px;cursor:pointer;display:flex;flex-direction:column;gap:3px;padding:5px;transition:all .12s}.sticker-avatar-item:hover{background:#fff0f8}.sticker-avatar-item.selected{background:#f7eff8;border-color:plum}.sticker-avatar-item img{border-radius:8px;display:block;height:48px;width:48px}.sticker-avatar-item span{color:#999;font-size:9px;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%}.avatar-type-btn{background:#fff;border:1.5px solid plum;border-radius:20px;color:#6b4e8b;cursor:pointer;font-size:13px;font-weight:600;padding:8px 14px;transition:all .15s;white-space:nowrap}.avatar-type-btn:hover{background:linear-gradient(135deg,#ffb6c1,plum);border-color:#0000;box-shadow:0 4px 12px #dda0dd66;color:#fff;transform:translateY(-1px)}body.dark .avatar-modal{background:#1e1430}body.dark .avatar-modal-title{color:#e8d5f0}body.dark .avatar-section-label{color:#9b7eb8}body.dark .sticker-avatar-item:hover{background:#2a1f3d}body.dark .avatar-type-btn,body.dark .sticker-avatar-item.selected{background:#2a1f3d;border-color:plum}body.dark .avatar-type-btn{color:#e8d5f0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.app-update-notice{align-items:center;animation:appUpdateIn .22s ease-out;background:#fff;background:var(--card-bg,#fff);border:1px solid #dda0dd61;border-radius:16px;bottom:calc(18px + env(safe-area-inset-bottom));box-shadow:0 10px 30px #6446782e;display:flex;gap:12px;padding:12px 14px;position:fixed;right:18px;width:min(440px,calc(100vw - 28px));z-index:1000}.app-update-icon{align-items:center;background:#f5effb;border-radius:12px;color:#9b69b5;display:inline-flex;flex:0 0 36px;height:36px;justify-content:center;position:relative;width:36px}.app-update-dot{animation:appUpdateFloat 1.4s ease-in-out infinite;background:#e49ab0;border-radius:50%;height:4px;position:absolute;width:4px}.app-update-dot--one{right:7px;top:5px}.app-update-dot--two{animation-delay:.12s;background:#9fcac5;right:3px;top:10px}.app-update-dot--three{animation-delay:.22s;background:#acb9dc;right:14px;top:2px}.app-update-copy{grid-gap:2px;display:grid;flex:1 1;gap:2px;min-width:0}.app-update-copy strong{color:#4a4a4a;color:var(--text,#4d3b52);font-size:13px;line-height:1.25}.app-update-copy span{font-size:12px}.app-update-copy span,.app-update-copy ul{color:#888;color:var(--subtext,#777);line-height:1.35}.app-update-copy ul{font-size:11px;margin:4px 0 0;padding-left:14px}.app-update-copy li+li{margin-top:2px}.app-update-details{background:#f4eafe;border:0;border-radius:8px;color:#79548f;cursor:pointer;font-size:11px;font-weight:700;padding:5px 7px;white-space:nowrap}.app-update-button{background:linear-gradient(135deg,#d79bb6,#b79ad8);border:0;border-radius:10px;color:#fff;cursor:pointer;font:inherit;font-size:12px;font-weight:700;min-height:36px;padding:0 12px;white-space:nowrap}.app-update-button:disabled{cursor:wait;opacity:.65}@keyframes appUpdateIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes appUpdateFloat{0%,to{opacity:.55;transform:translateY(1px)}50%{opacity:1;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.app-update-dot,.app-update-notice{animation:none}}@media (max-width:520px){.app-update-notice{bottom:calc(14px + env(safe-area-inset-bottom));gap:9px;padding:11px;right:14px}.app-update-icon{border-radius:10px;flex-basis:32px;height:32px;width:32px}.app-update-copy strong{font-size:12px}.app-update-copy span{font-size:11px}.app-update-button{min-height:34px;padding:0 10px}}.admin-hub{background:linear-gradient(180deg,#fff8f3b8,#fff8f3);background:linear-gradient(180deg,#fff8f3b8,var(--cream))}.admin-hub__container{max-width:1280px}.admin-actions,.admin-hub__header,.admin-pagination,.admin-panel__heading,.admin-ticket__actions,.admin-ticket__title{align-items:center;display:flex;gap:14px;justify-content:space-between}.admin-hub__header{margin-bottom:24px;padding-top:12px}.admin-hub__header h1{color:#ffb6c1;color:var(--pink);font-size:clamp(28px,4vw,40px);margin:5px 0 3px}.admin-hub__header p{color:#888;color:var(--subtext);margin:0}.admin-role-badge{background:#fdf7ffe0;border:1px solid #9a709c38;border-radius:999px;color:#806d7d;font-weight:700;gap:5px;margin-top:10px;padding:6px 10px}.admin-eyebrow,.admin-role-badge{align-items:center;display:inline-flex;font-size:11px}.admin-eyebrow{color:#9a709c;font-weight:800;gap:7px;letter-spacing:.12em;text-transform:uppercase}.admin-metrics{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.admin-metric{grid-column-gap:10px;align-items:center;background:#ffffffc7;border:1px solid #dda0dd40;border-radius:15px;box-shadow:0 8px 22px #b496b414;column-gap:10px;display:grid;grid-template-columns:auto 1fr;min-height:92px;min-width:0;padding:14px}.admin-metric svg{color:#b88db9;grid-row:span 2}.admin-metric span{color:#888;color:var(--subtext);font-size:12px}.admin-metric strong{color:#4a4a4a;color:var(--text);font-size:19px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-panel{background:#ffffffd1;border:1px solid #eee0d8;border:1px solid var(--border);border-radius:20px;box-shadow:0 12px 32px #b496b414;margin-bottom:18px;padding:20px}.admin-panel__heading{margin-bottom:16px}.admin-panel__heading h2{color:#4a4a4a;color:var(--text);font-size:21px;margin:5px 0 0}.admin-panel__heading h2 small{color:#888;color:var(--subtext);font-size:13px;font-weight:600}.admin-health__grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(5,minmax(0,1fr))}.admin-health__item{align-items:flex-start;background:#f8f0f5;border:1px solid #9a709c29;border-radius:13px;color:#4f4359;display:flex;gap:9px;min-width:0;padding:12px}.admin-health__item small,.admin-health__item strong{display:block}.admin-health__item strong{color:#4f4359;font-size:12px}.admin-health__item small{color:#6f5d76;font-size:11px;line-height:1.35;margin-top:4px}.status-dot{background:#c2b4c2;border-radius:50%;flex:0 0 auto;height:9px;margin-top:4px;width:9px}.status-dot--healthy{background:#69b584;box-shadow:0 0 0 4px #69b58421}.status-dot--degraded{background:#e0aa64}.status-dot--unavailable{background:#d97979}.admin-toolbar{grid-gap:9px;display:grid;gap:9px;grid-template-columns:minmax(220px,1fr) repeat(3,minmax(130px,auto));margin-bottom:15px}.admin-search{align-items:center;background:#fff;border:1px solid #eee0d8;border:1px solid var(--border);border-radius:11px;color:#ac8cae;display:flex;gap:8px;min-height:42px;padding:0 12px}.admin-search input{background:#0000;border:0;font-size:14px;outline:0;width:100%}.admin-form-grid input,.admin-form-grid select,.admin-form-grid textarea,.admin-ticket__actions select,.admin-toolbar select{background:#fff;border:1px solid #eee0d8;border:1px solid var(--border);border-radius:10px;font:inherit;font-size:13px;min-height:42px;padding:9px 11px;width:100%}.admin-table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;min-width:760px;text-align:left;width:100%}.admin-table th{border-bottom:2px solid #ffe4e1;border-bottom:2px solid var(--soft-pink);color:#888;color:var(--subtext);font-size:11px;letter-spacing:.04em;padding:10px 8px;text-transform:uppercase}.admin-table td{border-bottom:1px solid #f3e9e5;color:#6d626d;font-size:12px;padding:10px 8px}.admin-user-button{align-items:center;border-radius:10px;display:flex;gap:9px;padding:3px;text-align:left}.admin-user-button:focus-visible,.admin-user-button:hover{background:#fff3f2;outline:2px solid #ffb6c1a6;outline-offset:2px}.admin-user-button img,.admin-user-modal__avatar{background:#ffe4e1;background:var(--soft-pink);border-radius:50%;object-fit:cover}.admin-user-button img{height:34px;width:34px}.admin-user-button small,.admin-user-button strong{display:block}.admin-user-button strong{color:#4a4a4a;color:var(--text);font-size:13px}.admin-user-button small{color:#a08e9c;font-size:10px;margin-top:2px}.presence-pill{align-items:center;color:#776a77;display:inline-flex;font-size:12px;gap:6px}.presence-pill span{background:#bbb;border-radius:50%;height:7px;width:7px}.presence-pill--online span{background:#6db889}.presence-pill--idle span{background:#e0ae68}.presence-pill--offline span{background:#bcb4bc}.tag{background:#f5edf8;border-radius:7px;color:#86658c;display:inline-block;font-size:10px;font-weight:800;padding:4px 7px}.tag--ok{background:#eaf7ed;color:#518d65}.tag--danger{background:#fff0f0;color:#b15b61}.tag--expired{background:#fff6e9;color:#a77337}.tag--revoked{background:#f1eef2;color:#817783}.btn-small{font-size:11px!important;min-height:32px!important;padding:5px 9px!important}.admin-pagination{color:#888;color:var(--subtext);font-size:12px;margin-top:14px}.admin-actions,.admin-pagination div{display:flex;gap:8px}.admin-ticket-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-ticket{background:#fffaf8;border-radius:14px;box-shadow:inset 0 3px 0 var(--ticket-accent);min-height:180px;min-width:0;padding:15px}.admin-ticket__title h3{align-items:center;display:flex;font-size:15px;gap:7px;margin:0}.admin-ticket__title h3 svg{color:var(--ticket-accent)}.admin-ticket__title>span{color:#888;color:var(--subtext);font-size:20px;font-weight:800}.admin-empty{color:#888;color:var(--subtext);font-size:13px}.admin-ticket__items{grid-gap:8px;display:grid;gap:8px}.admin-ticket__item{background:#fff;border-radius:10px;padding:10px}.admin-ticket__item p{color:#4a4a4a;color:var(--text);font-size:13px;line-height:1.4;margin:0}.admin-ticket__item small{color:#a2919f;display:block;font-size:10px;margin-top:5px}.admin-ticket__actions{justify-content:flex-start;margin-top:9px}.admin-ticket__actions select{font-size:11px;min-height:29px;padding:5px;width:auto}.admin-columns{grid-gap:18px;align-items:start;display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-columns .admin-panel{height:100%}.admin-form-grid{grid-gap:11px;display:grid;gap:11px;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-form-grid label{grid-gap:5px;color:#806d7d;display:grid;font-size:12px;font-weight:700;gap:5px}.admin-form-grid__wide{grid-column:1/-1}.admin-form-grid textarea{resize:vertical}.admin-checks{color:#806d7d;display:flex;flex-wrap:wrap;font-size:12px;gap:12px;margin:14px 0}.admin-check{align-items:center;display:flex!important;gap:7px!important;grid-template-columns:auto 1fr!important}.admin-help{color:#888;color:var(--subtext);font-size:11px;line-height:1.4}.admin-preview{background:#fdf7ff;border:1px dashed plum;border:1px dashed var(--lavender);border-radius:12px;margin-top:14px;padding:14px}.admin-preview h3{margin:8px 0 4px}.admin-preview p{color:#888;color:var(--subtext);font-size:13px;margin:0 0 6px}.admin-preview small{color:#9e7ba2}.admin-analytics{grid-gap:12px;align-items:end;border-bottom:1px solid #eee0d8;border-bottom:1px solid var(--border);display:grid;gap:12px;grid-template-columns:repeat(7,minmax(20px,1fr));height:150px;padding:10px 0}.admin-analytics__day{grid-gap:7px;align-items:end;display:grid;gap:7px;height:100%;text-align:center}.admin-analytics__bars{align-items:end;display:flex;gap:3px;height:100%;justify-content:center}.admin-analytics__bars span{background:#ffb6c1;background:var(--pink);border-radius:6px 6px 0 0;min-height:4px;width:7px}.admin-analytics__bars span:nth-child(2){background:plum;background:var(--lavender)}.admin-analytics__bars span:nth-child(3){background:#add8e6;background:var(--blue)}.admin-analytics__day small{color:#888;color:var(--subtext);font-size:10px}.admin-legend{color:#888;color:var(--subtext);display:flex;font-size:11px;gap:14px;margin-top:11px}.admin-legend span{align-items:center;display:flex;gap:5px}.admin-legend i{background:#ffb6c1;background:var(--pink);border-radius:50%;display:inline-block;height:7px;width:7px}.admin-legend span:nth-child(2) i{background:plum;background:var(--lavender)}.admin-legend span:nth-child(3) i{background:#add8e6;background:var(--blue)}.admin-audit-list{grid-gap:7px;display:grid;gap:7px;max-height:280px;overflow:auto}.admin-audit-list>div{grid-gap:9px;align-items:center;border-bottom:1px solid #f3e9e5;display:grid;gap:9px;grid-template-columns:auto 1fr auto;padding:9px 0}.admin-audit-list p{color:#4a4a4a;color:var(--text);font-size:12px;margin:0}.admin-audit-list small{color:#888;color:var(--subtext);font-size:10px}.admin-modal-backdrop{background:#4a4a4a38;display:grid;inset:0;padding:20px;place-items:center;position:fixed;z-index:30}.admin-user-modal{animation:modalIn .2s ease both;background:#fff8f3;background:var(--cream);border:1px solid #ffffffb3;border-radius:22px;box-shadow:0 24px 70px #4a324a38;padding:26px;position:relative;width:min(480px,100%)}.admin-modal-close{border-radius:9px;padding:7px;position:absolute;right:13px;top:13px}.admin-modal-close:focus-visible,.admin-modal-close:hover{background:#ffe4e1;background:var(--soft-pink);outline:2px solid #ffb6c1;outline:2px solid var(--pink)}.admin-user-modal__avatar{display:block;height:72px;margin:0 auto 10px;width:72px}.admin-user-modal h2{margin:0 0 8px;text-align:center}.admin-user-modal>.presence-pill{display:flex;justify-content:center}.admin-user-modal dl{grid-gap:8px 15px;display:grid;font-size:12px;gap:8px 15px;grid-template-columns:1fr 1.3fr;margin:22px 0}.admin-user-modal dt{color:#888;color:var(--subtext)}.admin-user-modal dd{color:#4a4a4a;color:var(--text);font-weight:700;margin:0;overflow-wrap:anywhere}.admin-privacy-note{align-items:flex-start;color:#8c738c;display:flex;font-size:11px;gap:7px;line-height:1.4;margin:0 0 18px}.admin-error{max-width:420px;text-align:center}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.admin-access-codes__create{grid-gap:10px;align-items:end;display:grid;gap:10px;grid-template-columns:minmax(180px,1fr) 150px auto}.admin-access-codes__create label{grid-gap:5px;color:#806d7d;display:grid;font-size:12px;font-weight:700;gap:5px}.admin-access-codes__create input,.admin-access-codes__create select{background:#fff;border:1px solid #eee0d8;border:1px solid var(--border);border-radius:10px;font:inherit;font-size:13px;min-height:42px;padding:9px 11px;width:100%}.admin-access-codes__new{align-items:center;background:#fdf7ff;border:1px dashed plum;border:1px dashed var(--lavender);border-radius:12px;color:#806d7d;display:flex;flex-wrap:wrap;font-size:11px;gap:10px;margin-top:14px;padding:11px 12px}.admin-access-codes__new code{background:#fff;border-radius:7px;color:#4a4a4a;color:var(--text);font-size:14px;font-weight:800;letter-spacing:.06em;padding:5px 8px}.admin-access-codes__list{grid-gap:8px;display:grid;gap:8px;margin-top:14px}.admin-access-code{grid-gap:12px;align-items:center;background:#fffaf8;border-radius:11px;display:grid;gap:12px;grid-template-columns:1fr auto auto;padding:10px 12px}.admin-access-code small,.admin-access-code strong{display:block}.admin-access-code strong{color:#4a4a4a;color:var(--text);font-size:13px;letter-spacing:.04em}.admin-access-code small{color:#888;color:var(--subtext);font-size:10px;margin-top:3px}.admin-readonly-hint{color:#9a709c;font-size:10px;font-weight:700}.admin-hub--demo .admin-columns,.admin-hub--demo .admin-ticket__actions select,.admin-hub--demo .admin-user-modal .admin-actions{display:none}.admin-demo-releases__list{grid-gap:8px;display:grid;gap:8px}.admin-demo-releases__list article{background:#fffaf8;border-radius:11px;padding:11px 12px}.admin-demo-releases__list article>div{align-items:baseline;display:flex;gap:8px}.admin-demo-releases__list strong{color:#8a6d8f;font-size:12px}.admin-demo-releases__list article span{color:#4a4a4a;color:var(--text);font-size:13px;font-weight:700}.admin-demo-releases__list small{color:#888;color:var(--subtext);display:block;font-size:10px;margin-top:3px}.admin-demo-releases__list p{color:#888;color:var(--subtext);font-size:12px;line-height:1.4;margin:7px 0 0}body.dark .admin-hub{--cream:#1e1a2e;--text:#ede6ff;--subtext:#d7c4e2;--border:#4a3868;background:linear-gradient(180deg,#241e3a,#1e1a2e);color:#4a4a4a;color:var(--text)}body.dark .admin-hub .admin-metric,body.dark .admin-hub .admin-panel{background:#2a2445f5;border-color:#4a3868;color:#4a4a4a;color:var(--text)}body.dark .admin-hub .admin-access-code,body.dark .admin-hub .admin-access-codes__create input,body.dark .admin-hub .admin-access-codes__create select,body.dark .admin-hub .admin-demo-releases__list article,body.dark .admin-hub .admin-form-grid input,body.dark .admin-hub .admin-form-grid select,body.dark .admin-hub .admin-form-grid textarea,body.dark .admin-hub .admin-ticket,body.dark .admin-hub .admin-ticket__actions select,body.dark .admin-hub .admin-ticket__item,body.dark .admin-hub .admin-toolbar select{background:#302850;border-color:#594574;color:#ede6ff}body.dark .admin-hub .admin-audit-list p,body.dark .admin-hub .admin-demo-releases__list article span,body.dark .admin-hub .admin-metric strong,body.dark .admin-hub .admin-panel__heading h2,body.dark .admin-hub .admin-ticket__item p,body.dark .admin-hub .admin-user-button strong,body.dark .admin-hub .admin-user-modal dd{color:#ede6ff}body.dark .admin-hub .admin-access-codes__create label,body.dark .admin-hub .admin-audit-list small,body.dark .admin-hub .admin-checks,body.dark .admin-hub .admin-demo-releases__list p,body.dark .admin-hub .admin-demo-releases__list small,body.dark .admin-hub .admin-empty,body.dark .admin-hub .admin-eyebrow,body.dark .admin-hub .admin-form-grid label,body.dark .admin-hub .admin-health__item small,body.dark .admin-hub .admin-help,body.dark .admin-hub .admin-pagination,body.dark .admin-hub .admin-role-badge,body.dark .admin-hub .admin-ticket__title>span,body.dark .admin-hub .admin-user-modal dt{color:#d7c4e2}body.dark .admin-hub .admin-privacy-note,body.dark .admin-hub .admin-table td,body.dark .admin-hub .admin-table th,body.dark .admin-hub .admin-ticket__item small,body.dark .admin-hub .admin-user-button small{border-color:#4a3868;color:#c9b5d6}body.dark .admin-hub .admin-access-codes__new,body.dark .admin-hub .admin-preview,body.dark .admin-hub .admin-user-modal{background:#2a2445;border-color:#594574;color:#ede6ff}body.dark .admin-hub .admin-access-codes__new,body.dark .admin-hub .admin-preview p,body.dark .admin-hub .admin-preview small{color:#d7c4e2}@media (max-width:900px){.admin-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-health__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-columns{grid-template-columns:1fr}}@media (max-width:680px){.admin-hub__header{align-items:flex-start;flex-direction:column}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-toolbar{grid-template-columns:1fr 1fr}.admin-search{grid-column:1/-1}.admin-health__grid,.admin-ticket-grid{grid-template-columns:1fr}.admin-panel{border-radius:16px;padding:15px}.admin-form-grid{grid-template-columns:1fr}.admin-form-grid__wide{grid-column:auto}.admin-actions,.admin-legend{flex-wrap:wrap}.admin-access-codes__create{grid-template-columns:1fr 1fr}.admin-access-codes__create .btn,.admin-access-codes__create label:first-child{grid-column:1/-1}.admin-access-code{grid-template-columns:1fr auto}.admin-access-code .btn{grid-column:1/-1;justify-self:start}}@media (max-width:390px){.admin-metric{padding:10px}.admin-metric strong{font-size:16px}.admin-toolbar{grid-template-columns:1fr}.admin-search{grid-column:auto}.admin-pagination{align-items:flex-start;flex-direction:column}}@media (prefers-reduced-motion:reduce){.admin-user-modal{animation:none}}