:root{--bg: #0a0a0a;--surface: #1c1c1e;--surface2: #2c2c2e;--surface3: #3a3a3c;--text: #f5f5f7;--text2: #cccccc;--label: #86868b;--accent: #8B5CF6;--accent2: #00b8cc;--accent-text: #ffffff;--ok: #34c759;--warn: #ff9f0a;--err: #ff3b30;--line: rgba(255,255,255,.1);--radius: 16px;--radius-sm: 12px;--radius-xs: 8px;--radius-pill: 22px;--radius-full: 50%;--font-xs: 11px;--font-sm: 13px;--font-md: 15px;--font-lg: 17px;--font-xl: 22px;--gap-xs: 4px;--gap-sm: 8px;--gap-md: 12px;--gap-lg: 16px;--gap-xl: 20px;--ava-xs: 50px;--ava-sm: 50px;--ava-md: 50px;--ava-lg: 50px;--ava-radius: 12px;--bbl-font: 16px;--bbl-padding: 10px 14px;--bbl-radius: 18px;--bbl-radius-tail: 4px;--bbl-ai-bg: var(--surface2);--bbl-ai-color: var(--text);--bbl-user-bg: var(--accent);--bbl-user-color: var(--accent-text);--bbl-time-font: 11px;--bbl-time-color: rgba(255,255,255,.85);--bbl-max-width: var(--bbl-max-width, 72%);--shadow: 0 2px 16px rgba(0,0,0,.4);--shadow-sm: 0 1px 6px rgba(0,0,0,.25);--muted: #888888;--panel: #1e1e1e;--primary: #00e5ff}:root[data-theme=light]{--bg: #f2f2f7;--surface: #ffffff;--surface2: #e8e8ed;--surface3: #d1d1d6;--text: #1c1c1e;--text2: #333333;--label: #8e8e93;--bbl-time-color: #666;--accent: #7C3AED;--accent2: #0055cc;--accent-text: #ffffff;--ok: #28a745;--warn: #f59e0b;--err: #dc2626;--line: rgba(0,0,0,.1);--shadow: 0 2px 16px rgba(0,0,0,.1);--shadow-sm: 0 1px 6px rgba(0,0,0,.08);--muted: #6b7280;--panel: #ffffff;--primary: #007aff}*,*:before,*:after{box-sizing:border-box}html{height:100%;overscroll-behavior-y:none;-webkit-text-size-adjust:100%}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;background:var(--bg);color:var(--text);font-size:16px;line-height:1.55;overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent;animation:pageFade .2s ease-out}@keyframes pageFade{0%{opacity:0}to{opacity:1}}p,td,li{font-size:16px;line-height:1.6}small,.time,.msg-time{font-size:13px!important;color:var(--label)}.card-val,.stat-val{font-size:32px!important;font-weight:800!important}button,.btn,input,select,textarea{font-size:16px}.card{background:var(--surface)!important;border:1px solid var(--line)!important;border-radius:var(--radius)!important;box-shadow:var(--shadow-sm)!important}.toast{position:fixed;bottom:max(28px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%) translateY(20px);background:#000000d9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:#fff;padding:11px 22px;border-radius:14px;font-size:15px;font-weight:500;white-space:nowrap;opacity:0;transition:opacity .25s ease,transform .25s ease;z-index:9999;pointer-events:none;box-shadow:0 4px 24px #0000002e}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.toast.success{color:var(--ok)}.toast.error{color:var(--err)}:root[data-theme=light] .toast{background:#1e1e1eeb}button,.btn{position:relative;overflow:hidden;transition:opacity .2s,transform .12s,background .2s,box-shadow .2s;-webkit-tap-highlight-color:transparent;cursor:pointer;font-family:inherit;font-size:16px;border-radius:var(--radius-sm)}button:active,.btn:active{transform:scale(.96);opacity:.88}button:disabled,.btn:disabled{opacity:.35;cursor:not-allowed;transform:none}.btn.loading{position:relative;color:transparent!important;pointer-events:none}.btn.loading:after{content:"";position:absolute;inset:0;margin:auto;width:16px;height:16px;border:2px solid rgba(128,128,128,.3);border-top-color:var(--accent);border-radius:50%;animation:spin .5s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}input,select,textarea{font-size:16px;font-family:inherit;background:var(--surface2);color:var(--text);border:1px solid var(--line);border-radius:var(--radius-sm);outline:none;line-height:1.5;transition:border-color .25s,box-shadow .25s,background .25s}input::placeholder,textarea::placeholder{color:var(--label)}input:focus,select:focus,textarea:focus{border-color:var(--accent)!important;box-shadow:0 0 0 3px #00e5ff2e,0 2px 12px #00e5ff14!important;background:var(--surface)!important}:root[data-theme=light] input:focus,:root[data-theme=light] select:focus,:root[data-theme=light] textarea:focus{box-shadow:0 0 0 3px #007aff2e,0 2px 12px #007aff14!important}select option{background:var(--surface);color:var(--text)}.field-wrap{position:relative}.field-wrap input:focus+label,.field-wrap input:not(:placeholder-shown)+label{transform:translateY(-22px) scale(.85);color:var(--accent)}.field-wrap label{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--label);font-size:15px;pointer-events:none;transition:transform .2s,color .2s,font-size .2s;transform-origin:left center}.skeleton{background:linear-gradient(90deg,var(--surface2) 25%,var(--surface3) 50%,var(--surface2) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:8px;pointer-events:none}.skeleton-text{height:14px;margin-bottom:8px;border-radius:6px}.skeleton-title{height:20px;width:60%;margin-bottom:12px;border-radius:6px}.skeleton-avatar{width:var(--ava-sm);height:var(--ava-sm);border-radius:var(--ava-radius);flex-shrink:0}.skeleton-card{height:80px;border-radius:var(--radius);margin-bottom:12px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.state-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;color:var(--label);gap:12px}.state-loading-spinner{width:32px;height:32px;border:3px solid var(--surface2);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}.state-loading-text{font-size:14px}.state-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;color:var(--label)}.state-empty-icon{font-size:44px;margin-bottom:12px;line-height:1;opacity:.7}.state-empty-title{font-size:16px;font-weight:600;color:var(--text2);margin-bottom:6px}.state-empty-sub{font-size:14px;color:var(--label);line-height:1.5;max-width:260px}.state-empty-action{margin-top:16px;padding:10px 24px;border-radius:99px;border:none;cursor:pointer;background:linear-gradient(135deg,var(--accent),var(--accent2));color:var(--accent-text);font-size:14px;font-weight:700}.state-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.state-error-icon{font-size:40px;margin-bottom:12px}.state-error-title{font-size:16px;font-weight:600;color:var(--err);margin-bottom:6px}.state-error-sub{font-size:14px;color:var(--label);line-height:1.5;margin-bottom:16px}.state-error-retry{padding:10px 24px;border-radius:99px;border:1px solid var(--err);background:transparent;color:var(--err);font-size:14px;font-weight:600;cursor:pointer}.state-error-retry:active{background:#ff3b3014}.error-banner{background:#ff3b301a;border:1px solid rgba(255,59,48,.25);border-radius:var(--radius-sm);padding:12px 16px;color:var(--err);font-size:14px;line-height:1.5;display:none;margin-bottom:12px}.error-banner.show{display:block}.success-banner{background:#34c7591a;border:1px solid rgba(52,199,89,.25);border-radius:var(--radius-sm);padding:12px 16px;color:var(--ok);font-size:14px;line-height:1.5;display:none;margin-bottom:12px}.success-banner.show{display:block}.page-exit{animation:pageExit .15s ease-in forwards}@keyframes pageExit{to{opacity:0;transform:translateY(4px)}}.card-hover{transition:transform .2s ease,box-shadow .2s ease;cursor:pointer}.card-hover:active{transform:scale(.98);box-shadow:0 1px 6px #0000004d!important}.bubble-in{animation:bubbleIn .22s cubic-bezier(.34,1.56,.64,1) both}@keyframes bubbleIn{0%{opacity:0;transform:scale(.88) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:20px;font-size:12px;font-weight:600}.badge-ok{background:#34c75926;color:var(--ok)}.badge-warn{background:#ff9f0a26;color:var(--warn)}.badge-err{background:#ff3b3026;color:var(--err)}.badge-info{background:#00e5ff1f;color:var(--accent)}:root[data-theme=light] .badge-ok{background:#28a7451f}:root[data-theme=light] .badge-warn{background:#f59e0b1f}:root[data-theme=light] .badge-err{background:#dc26261a}:root[data-theme=light] .badge-info{background:#007aff1a}.offline-banner{position:fixed;top:0;left:0;right:0;background:var(--err);color:#fff;font-size:14px;font-weight:600;text-align:center;padding:8px;z-index:8888;transform:translateY(-100%);transition:transform .3s ease}.offline-banner.show{transform:translateY(0)}.hidden{display:none!important}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.text-muted{color:var(--label)}.text-accent{color:var(--accent)}.text-ok{color:var(--ok)}.text-err{color:var(--err)}.text-warn{color:var(--warn)}.fw-bold{font-weight:700}.fw-black{font-weight:900}@media(max-width:390px){body{font-size:15px}.card{border-radius:12px!important}h1{font-size:clamp(22px,6vw,32px)!important}}@media(max-width:500px){.stats-bar{flex-wrap:wrap;height:auto!important;padding:8px 16px;gap:10px 20px}.grid{grid-template-columns:1fr!important}table{font-size:14px}th,td{padding:10px 8px}.wrap{padding:0 12px}.hide-mobile{display:none!important}}@media(min-width:768px){.show-mobile{display:none!important}.wrap,.main{max-width:680px;margin-left:auto;margin-right:auto}}@media(min-width:1024px){.wrap,.main{max-width:900px}}.safe-top{padding-top:env(safe-area-inset-top,0px)}.safe-bottom{padding-bottom:env(safe-area-inset-bottom,0px)}.nav{position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:10px;padding:max(12px,env(safe-area-inset-top)) 16px 12px;background:var(--surface);border-bottom:1px solid var(--line)}.nav-back{width:36px;height:36px;border-radius:12px;background:var(--surface2);border:none;color:var(--text);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;-webkit-tap-highlight-color:transparent}.nav-back:active{transform:scale(.9)}.nav-title{flex:1;font-size:17px;font-weight:700}#_ctxOverlay{position:fixed;inset:0;z-index:9998;display:none}#_ctxBg{position:fixed;inset:0;z-index:9990;background:#0000;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px);display:none;transition:background .2s,backdrop-filter .2s,-webkit-backdrop-filter .2s}#_ctxBg.on{background:#0000008c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}#_emojiBar{display:flex;align-items:center;background:#1e1e20f7;border-radius:50px;padding:6px 10px;gap:2px;pointer-events:all;box-shadow:0 4px 24px #0006;animation:_ctxIn .18s cubic-bezier(.34,1.56,.64,1)}._emoji-btn{width:var(--ava-sm);height:var(--ava-sm);border-radius:var(--ava-radius);display:flex;align-items:center;justify-content:center;font-size:22px;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .12s,background .12s}._emoji-btn:active{transform:scale(1.3);background:#ffffff1a}._emoji-more{width:34px;height:34px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#ffffff1f;color:#aaa;font-size:18px;cursor:pointer;-webkit-tap-highlight-color:transparent}#_ctxMenu{position:fixed;z-index:9999;background:#1e1e20f7;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:14px;padding:4px;display:none;flex-direction:column;min-width:180px;box-shadow:0 8px 32px #00000080;border:1px solid rgba(255,255,255,.08);pointer-events:all;animation:_ctxIn .18s cubic-bezier(.34,1.56,.64,1)}@keyframes _ctxIn{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}._ctx-item{display:flex;align-items:center;gap:12px;padding:13px 16px;border-radius:10px;color:#e5e5e5;font-size:15px;cursor:pointer;-webkit-tap-highlight-color:transparent}._ctx-item:active{background:#ffffff1a}._ctx-item.danger{color:#ff453a}._ctx-sep{height:1px;background:#ffffff14;margin:2px 8px}._ctx-own{display:none}.msg,.bbl,#_ctxMenu,#_emojiBar,._ctx-item,._emoji-btn{-webkit-user-select:none!important;user-select:none!important;-webkit-touch-callout:none!important}#_ctxMenu *{-webkit-user-select:none!important;user-select:none!important}.bbl-row{display:flex;align-items:flex-end;gap:8px;margin-bottom:2px}.bbl-row.self{justify-content:flex-end}@keyframes bblIn{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:none}}.bbl-ava{width:var(--ava-sm);height:var(--ava-sm);align-self:flex-end;border-radius:var(--ava-radius);overflow:hidden;flex-shrink:0;background:var(--surface2);display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer}.bbl-ava img{width:100%;height:100%;object-fit:cover;display:block;border-radius:var(--ava-radius)}.bbl-wrap{display:flex;flex-direction:column;max-width:var(--bbl-max-width, 72%);gap:3px}.bbl-row.self .bbl-wrap{align-items:flex-end}.bbl{padding:var(--bbl-padding);border-radius:var(--bbl-radius);font-size:var(--bbl-font);line-height:1.5;word-break:break-word;white-space:pre-wrap;position:relative}.bbl.ai{background:var(--bbl-ai-bg);color:var(--bbl-ai-color);border-bottom-left-radius:var(--bbl-radius-tail)}.bbl.user{background:var(--bbl-user-bg);color:var(--bbl-user-color);border-bottom-right-radius:var(--bbl-radius-tail)}:root[data-theme=light] .bbl.user{background:var(--accent)}.bbl.media{padding:4px;background:transparent!important;position:relative}.bbl.media img{max-width:220px;border-radius:var(--bbl-radius);display:block}.bbl-body{display:block;position:relative;padding-bottom:16px}.bbl-meta{position:absolute;right:0;bottom:-14px;margin:0;display:inline-flex;align-items:center;white-space:nowrap;gap:4px;font-size:var(--bbl-time-font);color:var(--bbl-time-color)}.bbl-status{color:var(--accent);font-size:12px}.bbl-row.system{justify-content:center}.bbl-system{font-size:12px;color:var(--label);background:var(--surface2);padding:4px 12px;border-radius:12px}.bbl-date-sep{text-align:center;font-size:12px;color:var(--label);padding:8px 0;pointer-events:none}.bbl-typing{display:flex;align-items:flex-end;gap:8px;margin-bottom:2px}.bbl-typing-dots{background:var(--surface2);border-radius:18px 18px 18px 4px;padding:10px 16px;display:flex;gap:4px;align-items:center}.bbl-typing-dot{width:7px;height:7px;border-radius:50%;background:var(--label);animation:bblTypeBounce 1.2s infinite}.bbl-typing-dot:nth-child(2){animation-delay:.18s}.bbl-typing-dot:nth-child(3){animation-delay:.36s}@keyframes bblTypeBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-5px)}}.cf-reply-bar{display:none;align-items:center;padding:8px 14px;background:var(--surface2,#2c2c2e);border-left:3px solid var(--accent,#8B5CF6);margin:0 12px;border-radius:0 8px 8px 0;gap:10px}.cf-reply-bar.show{display:flex}.cf-reply-text{flex:1;font-size:13px;color:var(--text,#f5f5f7);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;opacity:.8}.cf-reply-close{width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--label,#86868b);border-radius:50%;background:#ffffff0f}.cf-select-toolbar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:99990;background:var(--surface,#1c1c1e);border-top:1px solid rgba(255,255,255,.1);padding:14px 20px calc(14px + env(safe-area-inset-bottom,0));justify-content:space-around;align-items:center}.cf-select-toolbar.show{display:flex}.cf-sel-btn{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:12px;color:var(--text,#f5f5f7);cursor:pointer;opacity:.7;padding:4px 12px}.cf-sel-btn:active{opacity:1}.cf-sel-btn svg{width:22px;height:22px}.cf-danger{color:#ff3b30}.cf-selectable{cursor:pointer;position:relative}.cf-selectable:before{content:"";display:block;width:22px;height:22px;border-radius:50%;border:2px solid var(--label,#86868b);position:absolute;left:4px;top:50%;transform:translateY(-50%);z-index:2}.cf-selected:before{background:var(--accent,#8B5CF6);border-color:var(--accent,#8B5CF6)}.cf-selected:after{content:"\2713";position:absolute;left:9px;top:50%;transform:translateY(-50%);color:#fff;font-size:12px;font-weight:700;z-index:3}.cf-selectable .bbl-ava,.cf-selectable .ai-head{margin-left:28px}.cf-unread{display:none;position:fixed;bottom:70px;right:16px;z-index:800;background:var(--accent,#8B5CF6);color:#fff;font-size:12px;font-weight:700;padding:6px 12px;border-radius:16px;cursor:pointer;box-shadow:0 2px 10px #0000004d;align-items:center;gap:4px}.cf-unread.show{display:flex}.cf-time-sep{display:flex;align-items:center;justify-content:center;padding:12px 0 8px}.cf-time-sep span{font-size:11px;color:var(--label,#86868b);background:var(--bg,#0a0a0a);padding:2px 12px;border-radius:10px;font-weight:500}.mr.self .bbl{background:var(--accent);color:var(--accent-text);border-bottom-right-radius:4px}.mr:not(.self) .bbl{background:var(--surface2);color:var(--text);border-bottom-left-radius:4px}.mr .ava{border-radius:12px;overflow:hidden}.mr .ava img{border-radius:12px}@media(max-width:768px){:root{--bbl-max-width: 82%}}@media(min-width:769px){:root{--bbl-max-width: 60%}}.tw-cursor{animation:twBlink .8s step-end infinite}@keyframes twBlink{50%{opacity:0}}:root{--sf: var(--surface);--sf2: var(--surface2);--sf3: var(--surface3);--tx2: var(--label);--r: var(--radius);--bbl-r: var(--surface2);--green: #07c160;--on: #30d158;--red: var(--err);--blue: var(--accent)}.mr{display:flex;align-items:flex-end;gap:8px;padding:1px 0;animation:msgIn .18s ease both}.mr.self{flex-direction:row-reverse}.mr:not(.cont){margin-top:8px}.mr.cont{margin-top:1px}.mr.cont .ava{visibility:hidden}@keyframes msgIn{0%{opacity:0;transform:translateY(5px) scale(.98)}to{opacity:1;transform:none}}.ava{width:36px;height:36px;border-radius:50%;background:var(--sf3);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:18px;overflow:hidden;align-self:flex-start}.ava img{width:100%;height:100%;object-fit:cover}.bwrap{display:flex;flex-direction:column;max-width:min(72%,340px)}.mr.self .bwrap{align-items:flex-end}.sndr{font-size:11px;font-weight:600;color:var(--tx2);margin-bottom:3px;padding:0 4px}.bbl{background:var(--bbl-r);color:var(--text);padding:10px 14px;border-radius:var(--r);border-top-left-radius:4px;font-size:15px;line-height:1.48;word-break:break-word;white-space:pre-wrap;box-shadow:0 1px 2px #0000004d}.mr.self .bbl{background:var(--green);color:#fff;border-top-left-radius:var(--r);border-top-right-radius:4px}.mr.cont .bbl{border-top-left-radius:var(--r)}.mr.self.cont .bbl{border-top-right-radius:var(--r)}.bbl-img{max-width:220px;border-radius:14px;overflow:hidden;cursor:pointer}.bbl-img img{width:100%;height:auto;display:block;border-radius:14px}.bmeta{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--tx2);margin-top:3px;padding:0 4px}.mr.self .bmeta{flex-direction:row-reverse}.tick{color:var(--green);font-size:11px;letter-spacing:-1px}.bbl-voice{display:flex;align-items:center;gap:10px;min-width:120px}.bbl-voice-btn{width:34px;height:34px;border-radius:50%;background:#ffffff38;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:transform .12s}.bbl-voice-btn:active{transform:scale(.88)}.mr.self .bbl-voice-btn{background:#ffffff47}.bbl-voice-dur{font-size:14px;font-weight:600;letter-spacing:.5px}.date-div{align-self:center;font-size:11px;color:var(--tx2);background:#ffffff0f;border-radius:10px;padding:3px 12px;margin:10px 0;user-select:none}.typing-row{display:flex;align-items:center;gap:8px;margin-top:8px}.typing-bbl{background:var(--bbl-r);border-radius:var(--r);border-top-left-radius:4px;padding:12px 14px;display:flex;gap:5px}.td{width:7px;height:7px;border-radius:50%;background:var(--tx2);animation:td .9s infinite}.td:nth-child(2){animation-delay:.15s}.td:nth-child(3){animation-delay:.3s}@keyframes td{0%,65%,to{transform:translateY(0);opacity:.35}32%{transform:translateY(-6px);opacity:1}}.ripple-host{position:relative;overflow:hidden}.ripple-wave{position:absolute;border-radius:50%;transform:scale(0);opacity:.28;background:currentColor;pointer-events:none;animation:ripple-grow .55s cubic-bezier(.4,0,.2,1) forwards}@keyframes ripple-grow{to{transform:scale(4);opacity:0}}.press-scale{transition:transform .12s cubic-bezier(.34,1.56,.64,1)!important;-webkit-tap-highlight-color:transparent}.press-scale:active{transform:scale(.92)!important}.input-glow{transition:box-shadow .2s ease,border-color .2s ease!important}.input-glow:focus{box-shadow:0 0 0 3px #00e5ff2e,0 0 12px #00e5ff14!important;outline:none}@keyframes success-pop{0%{transform:scale(.7);opacity:0}60%{transform:scale(1.15);opacity:1}80%{transform:scale(.95)}to{transform:scale(1);opacity:1}}.feedback-success{animation:success-pop .4s cubic-bezier(.34,1.56,.64,1) both}@keyframes error-shake{0%,to{transform:translate(0)}18%{transform:translate(-7px)}36%{transform:translate(6px)}54%{transform:translate(-5px)}72%{transform:translate(4px)}88%{transform:translate(-2px)}}.feedback-error{animation:error-shake .45s ease both}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:page-in .28s cubic-bezier(.4,0,.2,1) both}#ix-toast-wrap{position:fixed;bottom:88px;left:50%;transform:translate(-50%);z-index:9999;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.ix-toast{background:#1e1e2ef2;color:#e0e0f0;font-size:13px;padding:8px 18px;border-radius:20px;white-space:nowrap;backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);animation:toast-in .3s cubic-bezier(.34,1.56,.64,1) both}.ix-toast.out{animation:toast-out .25s ease forwards}@keyframes toast-in{0%{opacity:0;transform:translateY(12px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toast-out{to{opacity:0;transform:translateY(-8px) scale(.9)}}@keyframes send-pulse{0%{box-shadow:0 0 #00e5ff73}70%{box-shadow:0 0 0 10px #00e5ff00}to{box-shadow:0 0 #00e5ff00}}.send-pulse{animation:send-pulse .5s ease}html,body{overscroll-behavior:none!important}body{position:fixed;width:100%;height:100%;overflow:hidden}body:before{content:"";position:fixed;top:-200vh;left:0;right:0;height:200vh;background:var(--bg,#0a0a0a);z-index:-1}*{margin:0;padding:0;box-sizing:border-box}html{touch-action:manipulation;-ms-touch-action:manipulation}body{touch-action:manipulation;-webkit-text-size-adjust:100%}html{height:100%;overflow:hidden;background:#111;overscroll-behavior:none!important}body{height:100%;overflow:hidden;background:var(--bg);overscroll-behavior:none!important}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,sans-serif;display:flex;justify-content:center;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{position:fixed;inset:0;max-width:480px;margin:0 auto;display:flex;flex-direction:column;overflow:hidden}.header{background:var(--surface,#1c1c1e);color:var(--text,#f5f5f7);padding:12px 16px;padding-top:max(12px,env(safe-area-inset-top));display:flex;align-items:center;gap:var(--gap-md);flex-shrink:0;border-bottom:1px solid var(--line)}.header .avatar{width:var(--ava-sm);height:var(--ava-sm);border-radius:var(--ava-radius);background:#00e5ff1a;border:1px solid rgba(0,229,255,.3);display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0}.header .info{display:flex;flex-direction:column;flex:1}.header .info b{font-size:var(--font-lg);font-weight:700;line-height:1.2}.header .info small{font-size:12px;color:var(--accent);font-weight:400}.header-actions{display:flex;gap:var(--gap-lg);position:relative;z-index:10;margin-left:auto;flex-shrink:0}.app-icon{width:var(--ava-sm);height:var(--ava-sm);border-radius:var(--ava-radius);background:var(--surface2);backdrop-filter:none;-webkit-backdrop-filter:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px #00000040;transition:transform .15s cubic-bezier(.34,1.56,.64,1),background .2s;overflow:hidden;padding:0;-webkit-tap-highlight-color:transparent}.app-icon:active{transform:scale(.92)}.app-icon.active{background:#00e5ff33;box-shadow:0 2px 10px #00e5ff40}.icon-cal{width:100%;height:100%;display:flex;flex-direction:column}.icon-cal-top{background:#ff3b30;height:14px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:#fff;letter-spacing:.5px;text-transform:uppercase}.icon-cal-num{flex:1;display:flex;align-items:center;justify-content:center;font-size:var(--bbl-font);font-weight:800;color:var(--text);line-height:1;font-family:-apple-system,sans-serif}.chat-wrap{position:relative;flex:1;overflow:hidden;display:flex;flex-direction:column}.chat{background:var(--bg);overscroll-behavior:none;flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scroll-behavior:smooth;padding:12px 16px;display:flex;flex-direction:column;gap:var(--gap-sm)}:root[data-theme=dark] .theme-avatar-bg{background:var(--surface)!important}:root[data-theme=light] .theme-avatar-bg{background:var(--surface)!important}.theme-avatar-bg{background:#1e1e1e!important}.msg-wrap{display:flex;flex-direction:column;max-width:78%;position:relative}.msg{display:inline-block;padding:var(--bbl-padding);border-radius:var(--bbl-radius);min-width:20px;position:relative;font-size:var(--bbl-font);line-height:1.55;word-wrap:break-word;word-break:break-word;white-space:pre-wrap}.msg.ai{background:var(--bbl-ai-bg);color:var(--bbl-ai-color);border-bottom-left-radius:var(--bbl-radius-tail);border:1px solid var(--line)}.msg.user{background:var(--bbl-user-bg)!important;color:var(--bbl-user-color)!important;border-bottom-right-radius:var(--bbl-radius-tail);font-weight:500}.msg a{color:inherit;text-decoration:underline;word-break:break-all}.msg img{max-width:100%;border-radius:var(--radius-xs);display:block;margin-top:4px}.typing{display:flex;align-items:center;gap:var(--gap-sm);color:var(--label);font-size:var(--font-sm);margin-left:30px}.dots{display:flex;gap:var(--gap-xs);align-items:center}.dots i{width:6px;height:6px;background:var(--label);border-radius:var(--radius-full);display:block;animation:bounce 1s infinite ease-in-out}.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}@keyframes typing-wiggle{0%,to{opacity:1}50%{opacity:.7}}.bbl-ava.typing{animation:typing-wiggle 1.2s ease-in-out infinite}.status{padding:4px 16px;font-size:12px;color:var(--label);background:var(--bg);flex-shrink:0;text-align:center}.status.hidden{display:none}@keyframes reconnPulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}.bar{position:relative;width:100%;max-width:480px;display:flex;align-items:center;padding:8px 10px;padding-bottom:max(10px,env(safe-area-inset-bottom));background:var(--surface);gap:6px;border-top:1px solid var(--line);flex-shrink:0;transition:transform .28s cubic-bezier(.34,1.2,.64,1),opacity .22s ease}.bar.mno-active{transform:translateY(110%);opacity:0;pointer-events:none}.bar-icon{width:var(--ava-sm);height:var(--ava-sm);border-radius:var(--ava-radius);background:none;border:none;font-size:var(--font-xl);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--label);flex-shrink:0;transition:color .2s,background .2s;-webkit-tap-highlight-color:transparent}.bar-icon:active{color:var(--text);background:var(--surface2)}.bar-icon,.bar-toggle,.voice-hold{box-sizing:border-box;touch-action:manipulation}.bar input{box-sizing:border-box}.bar-input-wrap{flex:1;min-width:0;position:relative;overflow:visible}.bar input{box-sizing:border-box;width:100%;padding:10px 14px;border-radius:var(--radius-pill);border:none;font-size:var(--font-md);outline:none;background:var(--surface2);color:var(--text);-webkit-appearance:none;line-height:1.4;-webkit-user-select:text;user-select:text}.bar input::placeholder{color:var(--label)}.bar input:focus{box-shadow:0 0 0 2px #00e5ff4d}.plus-overlay{position:fixed;inset:0;background:#00000080;z-index:959;opacity:0;pointer-events:none;transition:opacity .25s}.plus-overlay.open{opacity:1;pointer-events:auto}.plus-panel{position:fixed;bottom:0;left:0;right:0;background:var(--surface);border-radius:20px 20px 0 0;padding:20px;padding-bottom:max(24px,env(safe-area-inset-bottom));z-index:960;transform:translateY(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);border-top:1px solid var(--line)}.plus-panel.open{transform:translateY(0)}.plus-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gap-md)}.plus-item{display:flex;flex-direction:column;align-items:center;gap:var(--gap-sm);cursor:pointer}.plus-item-icon{width:var(--ava-lg);height:var(--ava-lg);border-radius:var(--ava-radius);background:var(--surface2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-size:28px;transition:background .15s,transform .1s}.plus-item:active .plus-item-icon{background:var(--surface3);transform:scale(.92)}.img-viewer{position:absolute;inset:0;background:#000000e6;z-index:30;display:none;align-items:center;justify-content:center}.img-viewer.open{display:flex}.img-viewer img{max-width:100%;max-height:100%;border-radius:var(--radius-xs);object-fit:contain}.img-viewer-close{position:absolute;top:max(16px,env(safe-area-inset-top));right:16px;background:var(--surface2);border:none;width:36px;height:36px;border-radius:var(--radius-full);font-size:var(--font-lg);color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center}.drawer{position:fixed;top:0;right:0;bottom:0;width:100%;background:var(--surface);z-index:100;transform:translate(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}.drawer.open{transform:translate(0)}.drawer-hd{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;padding-top:max(14px,env(safe-area-inset-top));background:var(--surface);border-bottom:1px solid var(--line)}.drawer-title{font-size:var(--font-lg);font-weight:700}.drawer-close{background:none;border:none;font-size:26px;cursor:pointer;color:var(--label);padding:4px 8px;border-radius:var(--radius-xs);transition:background .15s,color .15s;-webkit-tap-highlight-color:transparent}.drawer-close:hover{background:var(--surface2);color:var(--text)}.drawer-body{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:var(--gap-md)}.prod-card{display:flex;align-items:center;gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:14px;cursor:default;transition:border-color .15s}.prod-card:hover{border-color:#00e5ff40}.prod-emoji{font-size:32px;flex-shrink:0}.prod-info{flex:1;min-width:0}.prod-name{font-size:var(--font-md);font-weight:600;color:var(--text)}.prod-dur{font-size:12px;color:var(--label);margin-top:2px}.prod-right{display:flex;flex-direction:column;align-items:flex-end;gap:var(--gap-sm);flex-shrink:0}.prod-price{font-size:var(--font-md);font-weight:700;color:var(--accent)}.prod-book{background:#00e5ff1f;border:1px solid rgba(0,229,255,.3);color:var(--accent);border-radius:var(--radius-xs);padding:5px 12px;font-size:var(--font-sm);font-weight:600;cursor:pointer;transition:background .15s;white-space:nowrap}.prod-book:hover{background:#00e5ff38}.cal-overlay{position:fixed;inset:0;background:var(--surface);z-index:100;transform:translateY(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column}.cal-overlay.open{transform:translateY(0)}.cal-hd{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;padding-top:max(14px,env(safe-area-inset-top));background:var(--surface);border-bottom:1px solid var(--line)}.cal-hd-title{font-size:var(--font-lg);font-weight:700}.cal-body{flex:1;overflow-y:auto;padding:16px}.cal-service-tag{display:inline-flex;align-items:center;gap:6px;color:var(--accent);font-size:var(--font-sm);font-weight:600;padding:5px 12px;border-radius:999px;margin-bottom:16px}.cal-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.cal-nav-btn{background:var(--surface2);border:1px solid var(--line);color:var(--text);width:32px;height:32px;border-radius:var(--radius-xs);cursor:pointer;font-size:var(--font-md);display:flex;align-items:center;justify-content:center;transition:background .12s}.cal-nav-btn:hover{background:var(--surface3)}.cal-month-lbl{font-size:var(--font-md);font-weight:700}.cal-dow{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--gap-xs);margin-bottom:6px}.cal-dow span{text-align:center;font-size:12px;color:var(--label);padding:4px 0}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--gap-xs)}.cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-xs);font-size:14px;cursor:pointer;color:var(--text);transition:background .12s,color .12s}.cal-day:hover:not(.past):not(.empty){background:var(--surface2)}.cal-day.today{color:var(--accent);font-weight:700}.cal-day.selected{background:var(--accent)!important;color:var(--accent-text)!important;font-weight:700}.cal-day.past{color:var(--surface3);cursor:default}.cal-day.empty{cursor:default}.slots-section{margin-top:20px}.slots-label{font-size:var(--font-sm);color:var(--label);margin-bottom:10px}.slots-grid{display:flex;flex-direction:column;gap:var(--gap-xs);max-height:240px;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-right:4px}.slot{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 14px;display:flex;align-items:center;gap:var(--gap-md);font-size:var(--font-md);cursor:pointer;color:var(--text);transition:all .15s;min-height:44px}.slot-time{font-weight:600;min-width:50px}.slot-note{flex:1;font-size:var(--font-sm);color:var(--label);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slot-dot{width:8px;height:8px;border-radius:var(--radius-full);background:var(--ok);flex-shrink:0}.slot.taken .slot-dot{background:var(--label);opacity:.4}.slot:hover:not(.taken){border-color:#00e5ff66;color:var(--accent)}.slot.selected{background:#00e5ff26;border-color:var(--accent);color:var(--accent);font-weight:600}.slot.taken{color:var(--label);cursor:default;text-decoration:line-through;background:var(--surface)}.cal-confirm{display:none;width:100%;margin-top:20px;padding:14px;border-radius:var(--radius-sm);border:none;background:var(--accent);color:var(--accent-text);font-size:20px;font-weight:700;cursor:pointer;transition:background .15s,transform .1s}.cal-confirm.show{display:block}.cal-confirm:hover{background:var(--accent2)}.cal-confirm:active{transform:scale(.97)}@keyframes bounce{0%,80%,to{transform:scale(.7);opacity:.5}40%{transform:scale(1);opacity:1}}@keyframes fadeIn{to{opacity:1;transform:translateY(0)}}@keyframes wobble{0%,to{transform:rotate(0)}25%{transform:rotate(-9deg)}75%{transform:rotate(9deg)}}.pbg{position:absolute;bottom:0;left:50%;transform:translate(-50%);z-index:0;pointer-events:none;transition:opacity .6s cubic-bezier(.25,.46,.45,.94);will-change:transform,opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden;object-position:bottom center}.pbg.fading{opacity:0!important;transition:opacity .25s ease!important}.pbg.bg-mode-1{width:auto;height:100svh;min-height:600px;max-width:100%;object-fit:contain;object-position:center bottom;opacity:.45;left:50%;bottom:0;top:0;transform:translate(-50%);animation:none}.pbg.bg-mode-2{width:55%;height:auto;max-width:380px;object-fit:contain;opacity:.22;animation:pbr 6s ease-in-out infinite}.pbg.bg-mode-3{width:75%;height:auto;max-width:420px;object-fit:contain;opacity:.35;animation:pbr 6s ease-in-out infinite}@media(min-width:480px){.pbg{max-width:360px;width:65%}}@media(min-width:768px){.pbg{max-width:400px;width:55%}}@media(min-width:1200px){.pbg{max-width:450px;width:50%}}@keyframes pbr{0%,to{transform:translate(-50%) scale(1);transform-origin:bottom center}50%{transform:translate(-50%) scale(1.015);transform-origin:bottom center}}.pbg.pwg{animation:prm .8s ease!important}@keyframes prm{0%,to{transform:translate(-50%) rotate(0)}30%{transform:translate(-50%) rotate(.8deg)}60%{transform:translate(-50%) rotate(-.5deg)}}.chat{position:relative;overflow-y:auto;z-index:2;isolation:isolate}@keyframes ava-wiggle{0%,to{transform:rotate(0)}20%{transform:rotate(-8deg)}40%{transform:rotate(8deg)}60%{transform:rotate(-5deg)}80%{transform:rotate(4deg)}}.bbl-ava.wiggling{animation:ava-wiggle .7s ease-in-out infinite}.ap-sel{position:fixed;inset:0;z-index:200;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;opacity:0;transition:opacity .25s ease;pointer-events:none}.ap-sel.visible{opacity:1;pointer-events:auto}.ap-sel-t{font-size:20px;font-weight:700;color:var(--text)}.ap-opts{position:relative;width:100%;height:420px;perspective:900px;-webkit-perspective:900px}.ap-c{position:absolute;width:60vw;max-width:260px;text-align:center;cursor:pointer;padding:0;border-radius:24px;background:var(--surface2);overflow:hidden;left:50%;top:50%;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;transition:transform .45s cubic-bezier(.34,1.3,.64,1),opacity .35s cubic-bezier(.25,.46,.45,.94),box-shadow .3s ease;box-shadow:0 8px 32px #0000004d;-webkit-tap-highlight-color:transparent}.ap-c:active{transform:translate(-50%,-50%) scale(.94)!important;transition:transform .1s ease!important}.ap-c.c-center{transform:translate(-50%,-50%) scale(1) rotateY(0);z-index:3;opacity:1;box-shadow:0 16px 48px #00000080,0 0 0 1px #ffffff0f}.ap-c.c-left{transform:translate(-118%,-50%) scale(.78) rotateY(32deg);z-index:1;opacity:.55}.ap-c.c-right{transform:translate(18%,-50%) scale(.78) rotateY(-32deg);z-index:1;opacity:.55}.ap-c.c-hidden{transform:translate(-50%,-50%) scale(.55) rotateY(90deg);z-index:0;opacity:0;pointer-events:none;transition:transform .3s ease,opacity .2s ease}.ap-ci{width:100%;height:auto;aspect-ratio:2/3;object-fit:cover;object-position:top center;display:block}.ap-cn{font-size:var(--font-lg);font-weight:700;color:var(--text);padding:12px 8px 2px}.ap-cd{font-size:var(--font-sm);color:var(--label);padding:2px 8px 16px}.ap-opts.selecting .ap-c{opacity:.35;transition:opacity .35s ease,transform .35s ease}.ap-opts.selecting .ap-c.chosen{opacity:1;box-shadow:0 0 0 2px var(--accent),0 8px 24px #00e5ff2e}.ps-sw{position:absolute;top:8px;right:60px;z-index:10;background:var(--surface2);border:1px solid var(--line);border-radius:20px;padding:4px 10px;font-size:var(--font-sm);cursor:pointer;color:var(--text);display:flex;align-items:center;gap:var(--gap-xs)}.ps-sw:active{opacity:.7}.pm{display:none;position:absolute;top:36px;right:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px;z-index:201;box-shadow:0 4px 12px #00000080}.pm.show{display:flex;flex-direction:column;gap:6px}.pm-it{display:flex;align-items:center;gap:var(--gap-sm);padding:8px 12px;border-radius:var(--radius-xs);cursor:pointer;color:var(--text);font-size:var(--font-sm)}.pm-it:hover{background:var(--surface2)}.pm-it.active{background:var(--accent);color:var(--accent-text)}.chat-wrap{background:linear-gradient(180deg,var(--bg) 0%,var(--ambient1) 50%,var(--ambient2) 100%)!important;background-size:100% 200%!important;animation:ambient-shift 20s ease-in-out infinite;transition:--ambient1 1.2s ease,--ambient2 1.2s ease}.bg-mode-1-wrap .chat{background:transparent!important}@keyframes ambient-shift{0%,to{background-position:0% 0%}50%{background-position:0% 100%}}@keyframes glow-pulse{0%,to{opacity:.3}50%{opacity:.8}}@keyframes float-particle{0%,to{transform:translateY(0) translate(0);opacity:.08}25%{transform:translateY(-15px) translate(5px);opacity:.15}50%{transform:translateY(-8px) translate(-8px);opacity:.05}75%{transform:translateY(-20px) translate(3px);opacity:.12}}.h-av{width:36px;height:36px;border-radius:var(--radius-full);object-fit:cover;cursor:pointer;border:2px solid var(--accent);transition:transform .2s;margin-right:8px}.h-av:active{transform:scale(.9)}:root,:root[data-theme=dark]{--bg:#0a0a0a;--surface:#1c1c1e;--surface2:#2c2c2e;--surface3:#3a3a3c;--text:#f5f5f7;--label:#86868b;--line:rgba(255,255,255,.1);--accent:#8B5CF6;--accent-text:#fff;--ok:#30d158;--ambient1:#1a1225;--ambient2:#2a1a2e}:root[data-theme=light]{--bg:#f2f2f7;--surface:#ffffff;--surface2:#e8e8ed;--surface3:#d1d1d6;--text:#1c1c1e;--label:#8e8e93;--line:rgba(0,0,0,.1);--accent:#007aff;--accent-text:#fff;--ok:#34c759;--ambient1:#f5e6f0;--ambient2:#ead4e8}:root[data-theme=light] html,:root[data-theme=light] body{background:var(--bg)}:root[data-theme=light] #app{background:var(--surface)}:root[data-theme=light] .chat{background:transparent!important}:root[data-theme=dark] .chat{background:transparent!important}.bar-toggle{width:36px;height:36px;border-radius:var(--radius-full);background:var(--surface2);border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .2s,transform .1s;-webkit-tap-highlight-color:transparent}.bar-toggle{width:44px;height:44px;flex-shrink:0}.bar-toggle.send-mode{background:var(--accent)!important;border-radius:var(--radius-full)}.bar-toggle .icon-plus,.bar-toggle .icon-send{transition:opacity .15s,transform .15s}.bar-toggle .icon-send,.bar-toggle.send-mode .icon-plus{display:none}.bar-toggle.send-mode .icon-send{display:flex}.bar-toggle:active{transform:scale(.92)}.voice-hold{display:none;width:100%;height:100%;position:absolute;inset:0;background:var(--surface2);border-radius:var(--radius-pill);color:var(--text);font-weight:600;font-size:var(--font-md);align-items:center;justify-content:center;cursor:pointer;user-select:none;-webkit-user-select:none;border:none}@keyframes voicePulse{0%{opacity:1}to{opacity:.4}}.voice-hold:active{background:var(--surface3);transform:scale(.98)}.bar.voice-mode .voice-hold{display:flex}.bar.voice-mode input{opacity:0;pointer-events:none}.unread-badge{display:none;position:fixed;bottom:70px;right:16px;z-index:800;background:var(--accent);color:#000;font-size:12px;font-weight:700;padding:6px 12px;border-radius:16px;cursor:pointer;box-shadow:0 2px 10px #0000004d;animation:fadeIn .2s}.unread-badge.show{display:flex;align-items:center;gap:var(--gap-xs)}.unread-badge svg{width:14px;height:14px}.time-sep{display:flex;align-items:center;justify-content:center;padding:12px 0 8px;opacity:1;animation:none}.time-sep span{font-size:var(--font-xs);color:var(--label);background:var(--bg);padding:2px 12px;border-radius:var(--radius-xs);font-weight:500}.msg .quote-block{background:#00000026;border-left:3px solid rgba(255,255,255,.4);border-radius:0 6px 6px 0;padding:5px 10px;margin-bottom:6px;font-size:var(--font-sm);line-height:1.4;opacity:.85;max-height:60px;overflow:hidden}.msg.ai .quote-block{background:#00000014;border-left-color:var(--accent)}.msg.user .quote-block{background:#00000026;border-left-color:#ffffff80}.reply-bar{display:none;align-items:center;padding:8px 14px;background:var(--surface2);border-left:3px solid var(--accent);margin:0 12px;border-radius:0 8px 8px 0;gap:var(--gap-md)}.reply-bar.show{display:flex}.reply-bar-text{flex:1;font-size:var(--font-sm);color:var(--text);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;opacity:.8}.reply-bar-close{width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--label);flex-shrink:0;border-radius:var(--radius-full);background:#ffffff0f}.reply-bar-close:active{background:#ffffff26}.bbl-row .select-check{display:none;width:24px;height:24px;border-radius:var(--radius-full);border:2px solid var(--label);flex-shrink:0;align-items:center;justify-content:center;margin-right:4px;transition:all .15s}.bbl-row.selectable .select-check{display:flex}.bbl-row.selected .select-check{background:var(--accent);border-color:var(--accent)}.bbl-row.selected .select-check:after{content:"\2713";color:#000;font-size:14px;font-weight:700}.select-toolbar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:99990;background:var(--surface,#1c1c1e);border-top:1px solid var(--line);padding:14px 20px calc(14px + env(safe-area-inset-bottom,0));flex-direction:row;justify-content:space-around;align-items:center}.select-toolbar.show{display:flex}.select-toolbar-btn{display:flex;flex-direction:column;align-items:center;gap:var(--gap-xs);font-size:12px;color:var(--text);cursor:pointer;opacity:.7;padding:4px 12px}.select-toolbar-btn:active{opacity:1}.select-toolbar-btn svg{width:22px;height:22px}.ctx-overlay{position:fixed;inset:0;z-index:9998;background:#0006;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:none;opacity:0;transition:opacity .15s}.ctx-overlay.show{display:block;opacity:1}.ctx-menu{position:fixed;z-index:9999;background:var(--surface,#2c2c2e);border-radius:var(--radius-sm);padding:6px 0;min-width:160px;box-shadow:0 8px 30px #00000080;transform:scale(.9);opacity:0;transition:transform .15s cubic-bezier(.34,1.56,.64,1),opacity .12s;pointer-events:none}.ctx-menu.show{transform:scale(1);opacity:1;pointer-events:auto}.ctx-item{display:flex;align-items:center;gap:var(--gap-md);padding:11px 16px;font-size:var(--font-md);color:var(--text,#f5f5f7);cursor:pointer;transition:background .1s;-webkit-tap-highlight-color:transparent}.ctx-item:active{background:#ffffff14}.ctx-item:not(:last-child){border-bottom:1px solid rgba(255,255,255,.06)}.ctx-item svg{width:18px;height:18px;flex-shrink:0;opacity:.7}.ctx-item.danger{color:#ff3b30}.ctx-item.danger svg{opacity:1}.ctx-highlight{outline:2px solid var(--accent);outline-offset:2px;border-radius:18px;transition:outline .15s}.crop-overlay{position:fixed;inset:0;z-index:99999;background:#000;display:none;flex-direction:column}.crop-overlay.open{display:flex}.crop-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;padding-top:max(16px,env(safe-area-inset-top));z-index:20;position:relative}.crop-btn{background:#ffffff26;border:none;color:#fff;font-size:var(--font-lg);padding:10px 24px;cursor:pointer;border-radius:var(--radius-sm);font-weight:600}.crop-btn.confirm{background:var(--accent);color:#fff}.crop-body{flex:1;position:relative;overflow:hidden;touch-action:none}.crop-img{position:absolute;transform-origin:0 0;will-change:transform}.crop-circle{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:240px;height:240px;border-radius:var(--ava-radius);box-shadow:0 0 0 200vmax #000000bf;border:2px solid rgba(255,255,255,.8);pointer-events:none;z-index:10}:root[data-theme=light] .plus-panel{background:var(--surface)!important;border-top:1px solid var(--surface3)!important}:root[data-theme=light] .plus-item-icon{background:var(--surface)!important;color:var(--text)!important}:root[data-theme=light] .hdr{background:color-mix(in srgb,var(--surface) 85%,transparent)!important;-webkit-backdrop-filter:blur(20px)!important;backdrop-filter:blur(20px)!important}:root[data-theme=light] #bizNameEl{color:var(--text)!important}:root[data-theme=light] #serviceNameEl,:root[data-theme=light] #statusText{color:var(--label)!important}:root[data-theme=light] .msg.user .bubble{background:var(--accent)!important;color:var(--accent-text)!important}:root[data-theme=light] .chat-wrap{background:linear-gradient(180deg,var(--bg) 0%,var(--ambient1) 50%,var(--ambient2) 100%)!important}:root[data-theme=light] .slot{background:var(--surface)!important;border-color:#0000001a!important;color:var(--text)!important}:root[data-theme=light] .cal-confirm{background:var(--accent)!important}.chat-wrap.bg-mode-1-wrap{background:transparent!important;animation:none!important}#inkLayer{position:fixed;inset:0;z-index:9;pointer-events:none;display:none}#inkLayerBg{position:absolute;inset:0}#svgFilters{position:absolute;width:0;height:0;overflow:hidden}.ink-flame{position:fixed;z-index:10;pointer-events:none;border-radius:var(--radius-full);animation:inkFlameRise var(--dur,.9s) ease-out forwards}@keyframes inkFlameRise{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(var(--dx),var(--dy)) scale(0);opacity:0}}.ink-ripple{position:fixed;z-index:10;pointer-events:none;border-radius:var(--radius-sm);border:2px solid rgba(255,255,255,.3);animation:inkRippleOut .65s ease-out forwards}@keyframes inkRippleOut{0%{transform:scale(1);opacity:.8}to{transform:scale(4.5);opacity:0}}.ink-halo{position:fixed;z-index:10;pointer-events:none;border-radius:var(--radius-full);background:radial-gradient(circle,rgba(255,255,255,.6) 0%,transparent 70%);animation:inkHalo .8s ease-out forwards}@keyframes inkHalo{0%{transform:scale(0);opacity:1}to{transform:scale(6);opacity:0}}.palette-msg{align-self:flex-start;background:linear-gradient(135deg,#ffffff17,#ffffff0a);border:1px solid rgba(255,255,255,.14);border-radius:4px 20px 20px;padding:16px 16px 12px;width:min(310px,90vw);animation:bubbleIn .3s cubic-bezier(.34,1.56,.64,1) both;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 32px #00000040,inset 0 1px #ffffff1a}:root[data-theme=light] .palette-msg{background:linear-gradient(135deg,#ffffffe6,#f8f8fcd9);border-color:#00000014;box-shadow:0 8px 32px #0000001f,inset 0 1px #ffffffe6}.palette-label{font-size:var(--font-sm);font-weight:600;color:var(--text2);margin-bottom:14px;display:flex;align-items:center;gap:6px;letter-spacing:.01em}.swatch-scroll{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin-bottom:12px;padding:4px 2px}.swatch-scroll::-webkit-scrollbar{display:none}.swatch-row{display:flex;gap:var(--gap-md);padding-bottom:2px;width:max-content}.ink-swatch{width:38px;height:38px;border-radius:var(--radius-full);cursor:pointer;border:2.5px solid transparent;flex-shrink:0;transition:transform .2s cubic-bezier(.34,1.56,.64,1),border-color .2s,box-shadow .2s;-webkit-tap-highlight-color:transparent;position:relative;box-shadow:0 2px 8px #00000059,inset 0 1px #ffffff59,inset 0 -1px #0003}.ink-swatch:active{transform:scale(.85);box-shadow:0 1px 4px #0006,inset 0 1px #fff3}.ink-swatch.active{transform:scale(1.18);border-color:#ffffffe6;box-shadow:0 0 0 3px #fff3,0 4px 16px #0006,inset 0 1px #ffffff80}:root[data-theme=light] .ink-swatch{box-shadow:0 2px 8px #0000002e,inset 0 1px #fff9,inset 0 -1px #0000001a}:root[data-theme=light] .ink-swatch.active{border-color:#0009;box-shadow:0 0 0 3px #0000001f,0 4px 16px #0000002e,inset 0 1px #ffffffb3}.ink-swatch.active:after{content:"\2713";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;color:#ffffffe6;text-shadow:0 1px 3px rgba(0,0,0,.5)}.ink-custom-btn{width:100%;background:#ffffff0f;border:1px dashed rgba(255,255,255,.25);color:var(--label);border-radius:11px;padding:9px 12px;font-size:var(--font-sm);font-weight:500;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .2s,border-color .2s,color .2s;display:flex;align-items:center;justify-content:center;gap:6px}.ink-custom-btn:active{background:#ffffff24;color:var(--text)}:root[data-theme=light] .ink-custom-btn{background:#0000000a;border-color:#00000026}:root[data-theme=light] .ink-custom-btn:active{background:#0000001a}.bar,.bar input{box-sizing:border-box!important;width:100%!important}.bar-input-wrap{overflow:hidden!important}.menu-bubble{align-self:flex-start;width:min(340px,92vw);background:transparent;padding:0}#menuOverlay{overscroll-behavior:contain;touch-action:pan-y;position:fixed;left:50%;transform:translate(-50%);width:min(480px,100%);bottom:0;top:0;z-index:38;display:flex;flex-direction:column;pointer-events:none;opacity:0;transition:opacity .25s ease,transform .25s cubic-bezier(.34,1.2,.64,1);transform:translate(-50%) translateY(20px);overflow:hidden}#menuOverlay.open{pointer-events:auto;opacity:1;transform:translate(-50%) translateY(0)}.mno-topbar{display:flex;align-items:center;padding:10px 12px;padding-top:max(10px,env(safe-area-inset-top));border-bottom:1px solid var(--line);flex-shrink:0;gap:var(--gap-sm)}.mno-topbar-title{flex:1;font-size:var(--font-md);font-weight:800;text-align:center;color:var(--text)}.mno-btn{width:var(--ava-sm);height:var(--ava-sm);border-radius:var(--radius-sm);border:none;background:var(--surface2);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:var(--font-lg);position:relative;flex-shrink:0;transition:transform .12s,background .15s;-webkit-tap-highlight-color:transparent}.mno-btn:active{transform:scale(.9)}.mno-btn.active{background:#00e5ff2e;color:var(--accent)}.mno-cart-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;border-radius:9px;background:var(--accent);color:#000;font-size:10px;font-weight:900;display:none;align-items:center;justify-content:center;padding:0 4px;animation:badgePop .25s cubic-bezier(.34,1.56,.64,1)}.mno-cart-badge.show{display:flex}@keyframes badgePop{0%{transform:scale(0)}to{transform:scale(1)}}.mno-body{display:flex;flex:1;overflow:hidden}.mno-sidebar{width:80px;overflow-y:auto;overflow-x:hidden;background:var(--surface2);border-right:1px solid var(--line);flex-shrink:0;transition:width .22s cubic-bezier(.34,1.2,.64,1);display:flex;flex-direction:column}.mno-sidebar.closed{width:0;overflow:hidden}.mno-cat-item{padding:14px 8px;font-size:12px;font-weight:700;color:var(--label);cursor:pointer;text-align:center;border-bottom:1px solid var(--line);transition:color .15s,background .15s;line-height:1.3;-webkit-tap-highlight-color:transparent}.mno-cat-item.active{color:var(--accent);background:#00e5ff14}.mno-grid-wrap{flex:1;overflow-y:auto;overflow-x:hidden;padding:0;-webkit-overflow-scrolling:touch}.mno-grid-wrap::-webkit-scrollbar{display:none}.mno-cat-label{font-size:var(--font-sm);font-weight:800;color:var(--text2);padding:12px 14px 6px;background:var(--surface2);position:sticky;top:0;z-index:2;border-bottom:1px solid var(--line)}.mno-list-item{display:flex;align-items:center;gap:var(--gap-md);padding:12px 14px;border-bottom:1px solid var(--line);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .1s}.mno-list-item:active{background:var(--surface2)}.mno-list-img{width:120px;height:80px;border-radius:var(--radius-xs);flex-shrink:0;object-fit:cover;background:var(--surface3);display:flex;align-items:center;justify-content:center;font-size:36px;overflow:hidden}.mno-list-img img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-xs)}.mno-list-info{flex:1;min-width:0}.mno-list-name{font-size:14px;font-weight:700;color:var(--text);margin-bottom:3px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.mno-list-desc{font-size:12px;color:var(--label);margin-bottom:5px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.mno-list-price{font-size:14px;font-weight:800;color:#ff4d4f}.mno-list-action{flex-shrink:0;display:flex;align-items:center;gap:6px}.mno-btn-plus{width:28px;height:28px;border-radius:var(--radius-xs);border:none;background:var(--accent);color:#000;font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .1s;-webkit-tap-highlight-color:transparent;flex-shrink:0}.mno-btn-plus:active{transform:scale(.82)}.mno-btn-minus{width:26px;height:26px;border-radius:var(--radius-xs);border:none;background:var(--surface3);color:var(--text);font-size:var(--font-lg);line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .1s;-webkit-tap-highlight-color:transparent}.mno-btn-minus:active{transform:scale(.82)}.mno-qty-num{font-size:var(--font-sm);font-weight:800;min-width:16px;text-align:center}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.mno-skeleton{border-radius:var(--radius-xs);background:linear-gradient(90deg,var(--surface3) 25%,var(--surface2) 50%,var(--surface3) 75%);background-size:800px 100%;animation:shimmer 1.4s infinite linear}.mno-sk-thumb{width:80px;height:80px;border-radius:var(--radius-xs);flex-shrink:0}.mno-sk-line{height:12px;border-radius:6px;background:var(--surface3);animation:shimmer 1.4s infinite linear;background-size:800px 100%;background-image:linear-gradient(90deg,var(--surface3) 25%,var(--surface2) 50%,var(--surface3) 75%)}.mno-sk-name{width:60%;margin-bottom:6px}.mno-sk-desc{width:80%;margin-bottom:6px}.mno-sk-price{width:30%}#mnoCartBar{flex-shrink:0;background:var(--surface2);border-top:1px solid var(--line);padding:10px 14px;display:none;align-items:center;gap:var(--gap-md)}#mnoCartBar.show{display:flex}.mno-cb-icon{width:var(--ava-sm);height:var(--ava-sm);border-radius:var(--radius-sm);background:var(--accent);display:flex;align-items:center;justify-content:center;font-size:20px;cursor:pointer;position:relative;flex-shrink:0}.mno-cb-badge{position:absolute;top:-4px;right:-4px;background:#ff4d4f;color:#fff;border-radius:var(--radius-xs);font-size:10px;font-weight:900;padding:1px 5px;min-width:16px;text-align:center}.mno-cb-mid{flex:1;min-width:0}.mno-cb-total{font-size:var(--font-md);font-weight:900;color:var(--accent)}.mno-cb-hint{font-size:var(--font-xs);color:var(--label)}.mno-cb-checkout{background:var(--accent);color:#000;border:none;border-radius:var(--radius-pill);padding:10px 18px;font-size:14px;font-weight:800;cursor:pointer;flex-shrink:0;transition:transform .1s,opacity .1s}.mno-cb-checkout:active{transform:scale(.95);opacity:.85}#mnoCartSheet{position:absolute;bottom:0;left:0;right:0;border-radius:20px 20px 0 0;max-height:70vh;transform:translateY(100%);transition:transform .3s cubic-bezier(.2,.8,.3,1);z-index:20;display:flex;flex-direction:column;padding-bottom:max(20px,env(safe-area-inset-bottom,20px))}#mnoCartSheet.open{transform:translateY(0)}.mno-cs-hd{display:flex;align-items:center;padding:16px 16px 10px;border-bottom:1px solid var(--line)}.mno-cs-title{flex:1;font-size:var(--font-md);font-weight:800}.mno-cs-close{width:32px;height:32px;border-radius:var(--radius-full);background:var(--surface2);border:none;color:var(--label);font-size:var(--font-lg);cursor:pointer}.mno-cs-items{overflow-y:auto;flex:1;padding:0 16px}.mno-cs-items::-webkit-scrollbar{display:none}.mno-cs-row{display:flex;align-items:center;gap:var(--gap-sm);padding:10px 0;border-bottom:1px solid var(--line);font-size:var(--font-sm)}.mno-cs-row:last-child{border-bottom:none}.mno-cs-name{flex:1;font-weight:600}.mno-cs-price{color:#ff4d4f;font-weight:800;margin-right:6px;font-size:var(--font-sm)}.mno-cs-footer{padding:12px 16px 0;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:4px}.mno-cs-total{font-size:var(--font-lg);font-weight:900;color:var(--accent)}.mno-cs-order{background:var(--accent);color:#000;border:none;border-radius:var(--radius-sm);padding:10px 22px;font-size:14px;font-weight:900;cursor:pointer}.mno-cs-order:active{opacity:.85}#mnoCartMask{position:absolute;inset:0;z-index:15;background:#00000080;display:none}#mnoCartMask.show{display:block}.mno-cat-tabs,.mno-cat-tab{display:none}.mno-voicebar{flex-shrink:0;display:flex;align-items:center;padding:10px 12px;padding-bottom:max(10px,env(safe-area-inset-bottom));border-top:1px solid var(--line);gap:var(--gap-md)}.mno-voicebar-hold{flex:1;height:44px;border-radius:var(--radius-pill);background:var(--surface2);border:1.5px solid var(--line);display:flex;align-items:center;justify-content:center;gap:var(--gap-sm);font-size:var(--font-sm);font-weight:600;color:var(--label);cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;transition:background .15s,border-color .15s}.mno-voicebar-hold:active{background:#00e5ff26;border-color:var(--accent);color:var(--accent)}.mno-voicebar-send{width:var(--ava-sm);height:var(--ava-sm);border-radius:var(--radius-sm);border:none;background:var(--accent);color:#000;font-size:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:transform .1s;-webkit-tap-highlight-color:transparent}.mno-voicebar-send:active{transform:scale(.9)}.mno-fly-dot{position:fixed;z-index:100;width:28px;height:28px;border-radius:var(--radius-full);background:var(--accent);color:#000;font-size:14px;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:none}@keyframes cartBounce{0%{transform:scale(1)}30%{transform:scale(1.35)}60%{transform:scale(.9)}to{transform:scale(1)}}.menu-cat-bar{display:flex;gap:0;overflow-x:auto;scrollbar-width:none;background:var(--surface);border-radius:var(--radius-sm) 12px 0 0;border-bottom:1px solid var(--line)}.menu-cat-bar::-webkit-scrollbar{display:none}.menu-cat-tab{flex-shrink:0;padding:9px 14px;font-size:var(--font-sm);font-weight:600;color:var(--label);cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;transition:color .2s,border-color .2s}.menu-cat-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.menu-cards-scroll{display:flex;gap:var(--gap-md);overflow-x:auto;scrollbar-width:none;padding:12px;-webkit-overflow-scrolling:touch;background:var(--surface);border-radius:0 0 12px 12px}.menu-cards-scroll::-webkit-scrollbar{display:none}.menu-dish-card{flex-shrink:0;width:130px;background:var(--surface2);border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;transition:transform .15s;border:1.5px solid transparent}.menu-dish-card:active{transform:scale(.96)}.menu-dish-card.in-cart{border-color:var(--accent)}.menu-dish-emoji{height:80px;display:flex;align-items:center;justify-content:center;font-size:42px;background:var(--surface3)}.menu-dish-info{padding:8px 10px 10px}.menu-dish-name{font-size:var(--font-sm);font-weight:700;margin-bottom:3px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.menu-dish-price{font-size:14px;font-weight:800;color:var(--accent)}.menu-qty-row{display:flex;align-items:center;justify-content:space-between;margin-top:7px}.mq-btn{width:26px;height:26px;border-radius:var(--radius-full);border:none;cursor:pointer;font-size:var(--font-md);display:flex;align-items:center;justify-content:center;transition:transform .1s}.mq-btn:active{transform:scale(.85)}.mq-btn.plus{background:var(--accent);color:#000}.mq-btn.minus{background:var(--surface3);color:var(--text)}.mq-num{font-size:14px;font-weight:800;min-width:16px;text-align:center}#_rCartSheet{display:none}._rcs-item{display:flex;align-items:center;gap:var(--gap-md);padding:10px 0;border-bottom:1px solid var(--line)}._rcs-name{flex:1;font-size:14px;font-weight:600}._rcs-price{font-size:14px;color:var(--accent);font-weight:700;margin-right:8px}._rcs-checkout{width:100%;background:var(--accent);color:#000;border:none;border-radius:var(--radius-sm);padding:15px;font-size:var(--font-md);font-weight:800;cursor:pointer;margin-top:12px}._rcs-checkout:active{opacity:.85}.bubble-item{align-self:flex-start;width:min(200px,68vw);background:var(--surface);border:1.5px solid var(--line);border-radius:16px;overflow:hidden;animation:bubbleIn .35s cubic-bezier(.34,1.56,.64,1) both}.bubble-item-emoji{height:100px;display:flex;align-items:center;justify-content:center;font-size:52px;background:var(--surface2)}.bubble-item-body{padding:12px 14px 14px}.bubble-item-name{font-size:var(--font-md);font-weight:800;margin-bottom:4px}.bubble-item-desc{font-size:12px;color:var(--label);margin-bottom:8px;line-height:1.4}.bubble-item-row{display:flex;align-items:center;justify-content:space-between}.bubble-item-price{font-size:var(--font-md);font-weight:900;color:var(--accent)}.bubble-item-add{width:32px;height:32px;border-radius:var(--radius-full);border:none;background:var(--accent);color:#000;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .1s}.bubble-item-add:active{transform:scale(.85)}.bubble-recommend{align-self:flex-start;width:min(360px,95vw);background:transparent;padding:0;animation:bubbleIn .35s cubic-bezier(.34,1.56,.64,1) both}.bubble-recommend-label{font-size:12px;font-weight:700;color:var(--label);padding:0 4px 8px}.bubble-recommend-scroll{display:flex;gap:var(--gap-md);overflow-x:auto;scrollbar-width:none;padding:4px 2px 8px;-webkit-overflow-scrolling:touch}.bubble-recommend-scroll::-webkit-scrollbar{display:none}.bubble-recommend-card{flex-shrink:0;width:120px;background:var(--surface);border:1.5px solid var(--line);border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;transition:transform .15s}.bubble-recommend-card:active{transform:scale(.95)}.bubble-recommend-card.in-cart{border-color:var(--accent)}.bubble-rc-emoji{height:72px;display:flex;align-items:center;justify-content:center;font-size:38px;background:var(--surface2)}.bubble-rc-body{padding:8px 10px 10px}.bubble-rc-name{font-size:12px;font-weight:700;margin-bottom:3px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.bubble-rc-price{font-size:var(--font-sm);font-weight:900;color:var(--accent)}.bubble-rc-row{display:flex;align-items:center;justify-content:space-between;margin-top:6px}.brc-btn{width:24px;height:24px;border-radius:var(--radius-full);border:none;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:transform .1s}.brc-btn:active{transform:scale(.85)}.brc-btn.plus{background:var(--accent);color:#000}.brc-btn.minus{background:var(--surface3);color:var(--text)}.brc-num{font-size:var(--font-sm);font-weight:800;min-width:14px;text-align:center}.bubble-cart{align-self:flex-start;width:min(320px,90vw);background:var(--surface);border:1.5px solid var(--line);border-radius:16px;overflow:hidden;animation:bubbleIn .35s cubic-bezier(.34,1.56,.64,1) both}.bubble-cart-header{padding:12px 14px;border-bottom:1px solid var(--line);font-size:14px;font-weight:800;display:flex;align-items:center;gap:6px}.bubble-cart-items{padding:8px 14px}.bubble-cart-row{display:flex;align-items:center;padding:7px 0;border-bottom:1px solid var(--line);font-size:var(--font-sm)}.bubble-cart-row:last-child{border-bottom:none}.bubble-cart-name{flex:1;font-weight:600}.bubble-cart-price{color:var(--accent);font-weight:800;margin:0 10px}.bubble-cart-total{padding:10px 14px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.bubble-cart-total-label{font-size:var(--font-sm);color:var(--label)}.bubble-cart-total-price{font-size:var(--font-lg);font-weight:900;color:var(--accent)}.bubble-cart-checkout{display:block;width:calc(100% - 28px);margin:0 14px 14px;background:var(--accent);color:#000;border:none;border-radius:var(--radius-sm);padding:12px;font-size:var(--font-md);font-weight:900;cursor:pointer;transition:opacity .15s,transform .1s}.bubble-cart-checkout:active{opacity:.85;transform:scale(.97)}#menuPanel{position:absolute;inset:0;z-index:80;background:var(--bg);display:flex;flex-direction:column;transform:translateY(100%);visibility:hidden;transition:transform .35s cubic-bezier(.25,.46,.45,.94);will-change:transform}#menuPanel.open{transform:translateY(0);visibility:visible}.mn-nav{display:flex;align-items:center;padding:10px 14px;padding-top:max(10px,env(safe-area-inset-top));background:var(--surface);border-bottom:1px solid var(--line);gap:8px;flex-shrink:0}.mn-nav-btn{width:38px;height:38px;border-radius:12px;background:var(--surface2);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--text);transition:background .15s,transform .1s;flex-shrink:0;position:relative}.mn-nav-btn:active{transform:scale(.88)}.mn-nav-title{flex:1;font-size:15px;font-weight:700;text-align:center;color:var(--text2)}.mn-cart-badge{position:absolute;top:-4px;right:-4px;background:var(--err);color:#fff;border-radius:10px;font-size:10px;font-weight:900;padding:1px 5px;min-width:16px;text-align:center;display:none}.mn-cart-badge.show{display:block}#mnCartDrop{background:var(--surface);border-bottom:1px solid var(--line);max-height:0;overflow:hidden;transition:max-height .3s ease;flex-shrink:0}#mnCartDrop.open{max-height:60vh;overflow-y:auto}.mn-cart-item{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line);font-size:13px}.mn-cart-item:last-child{border-bottom:none}.mn-ci-name{flex:1;font-weight:600}.mn-ci-price{color:var(--accent);font-weight:700;margin-right:8px}.mn-cart-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-top:1px solid var(--line)}.mn-cart-total{font-size:18px;font-weight:900;color:var(--accent)}.mn-order-btn{background:var(--accent);color:#000;border:none;border-radius:10px;padding:10px 20px;font-size:14px;font-weight:800;cursor:pointer}.mn-order-btn:active{opacity:.85}.mn-content{flex:1;display:flex;overflow:hidden}.mn-sidebar{width:0;overflow:hidden;background:var(--surface);border-right:1px solid var(--line);flex-shrink:0;transition:width .25s ease;display:flex;flex-direction:column}.mn-sidebar.open{width:80px;overflow-y:auto}.mn-cat-item{padding:12px 8px;text-align:center;cursor:pointer;font-size:12px;font-weight:600;color:var(--label);border-bottom:1px solid var(--line);transition:color .15s,background .15s;word-break:keep-all}.mn-cat-item:active{background:var(--surface2)}.mn-cat-item.active{color:var(--accent);background:#00e5ff0f}.mn-grid-wrap{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:12px}.mn-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.mn-dish-card{background:var(--surface);border-radius:14px;overflow:hidden;border:1.5px solid transparent;transition:border-color .2s,transform .15s;position:relative}.mn-dish-card.in-cart{border-color:var(--accent)}.mn-dish-card:active{transform:scale(.97)}.mn-dish-img{width:100%;aspect-ratio:1;object-fit:cover;background:var(--surface3);display:flex;align-items:center;justify-content:center;font-size:52px}.mn-dish-img img{width:100%;height:100%;object-fit:cover}.mn-dish-body{padding:8px 10px 10px}.mn-dish-name{font-size:13px;font-weight:700;margin-bottom:3px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.mn-dish-foot{display:flex;align-items:center;justify-content:space-between;margin-top:6px}.mn-dish-price{font-size:14px;font-weight:800;color:var(--accent)}.mn-add-btn{width:30px;height:30px;border-radius:10px;background:var(--accent);color:#000;border:none;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .1s,box-shadow .15s;box-shadow:0 2px 8px #00e5ff4d}.mn-add-btn:active{transform:scale(.82)}.mn-qty-row{display:flex;align-items:center;gap:6px;margin-top:6px}.mn-q-btn{width:26px;height:26px;border-radius:10px;border:none;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:transform .1s}.mn-q-btn.plus{background:var(--accent);color:#000}.mn-q-btn.minus{background:var(--surface2);color:var(--text)}.mn-q-btn:active{transform:scale(.82)}.mn-q-num{font-size:13px;font-weight:800;min-width:16px;text-align:center}.mn-cat-header{grid-column:1 / -1;font-size:15px;font-weight:800;color:var(--text2);padding:8px 2px 4px}.mn-cat-header:first-child{padding-top:0}.mn-fly-item{position:fixed;pointer-events:none;z-index:999;font-size:30px;opacity:1;transition:none}.mn-bar{flex-shrink:0;padding:10px 14px max(14px,env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);display:flex;align-items:center;gap:10px}.mn-voice-btn{flex:1;background:var(--surface2);border:none;border-radius:24px;padding:13px 16px;color:var(--label);font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:background .15s;-webkit-tap-highlight-color:transparent}.mn-voice-btn:active{background:var(--surface3)}.mn-voice-btn.recording{background:#ff3b3026;color:var(--err);animation:voicePulse .8s ease-in-out infinite}@keyframes voicePulse{0%,to{box-shadow:0 0 #ff3b304d}50%{box-shadow:0 0 0 8px #ff3b3000}}.mgmt-hd-btn{display:none!important}#meshBtn{color:var(--label)}#meshOverlay{position:fixed;inset:0;z-index:900;display:none;background:transparent}#meshOverlay.open{display:block}#meshClip{position:fixed;left:0;right:0;top:0;z-index:901;height:0;overflow:hidden;pointer-events:none;transition:height .8s cubic-bezier(.25,1,.3,1)}#meshClip.open{pointer-events:auto}#meshCardWrap{position:relative;width:100%;height:100%;overflow:hidden}.mesh-card{position:absolute;inset:0;background:var(--surface,#1c1c1e);border-radius:18px 18px 0 0;border:1px solid rgba(255,255,255,.08);box-shadow:0 -8px 32px #00000080;display:flex;flex-direction:column;overflow:hidden;transition:transform .28s cubic-bezier(.4,0,.2,1);will-change:transform}#meshPersonalCard{z-index:2;transform:translate(0)}#meshGroupCard{z-index:1;transform:translate(calc(100% - 60px))}#meshCardWrap.grp-active #meshGroupCard{transform:translate(0);z-index:3}#meshCardWrap.grp-active #meshPersonalCard{transform:translate(calc(-100% + 60px));z-index:2}.mesh-card-hdr{display:flex;align-items:center;padding:0 16px;min-height:78px;box-sizing:border-box;border-bottom:1px solid rgba(255,255,255,.07);flex-shrink:0;position:relative}.mesh-card-hdr-title{font-size:var(--font-lg);font-weight:700;color:var(--text);position:absolute;left:50%;transform:translate(-50%);white-space:nowrap}.mesh-card-side-btn{font-size:14px;font-weight:600;color:var(--accent);background:none;border:none;padding:4px 6px;cursor:pointer;border-radius:var(--radius-xs);white-space:nowrap;flex-shrink:0}.mesh-card-side-btn:active{opacity:.6}.mesh-card-side-left{margin-right:auto}.mesh-card-side-right{margin-left:auto}.mesh-card-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:none}.mesh-nav{display:flex;align-items:center;gap:var(--gap-sm);padding:12px 16px;border-bottom:1px solid var(--line);background:var(--surface);flex-shrink:0}.mesh-nav-title{flex:1;font-size:var(--font-md);font-weight:800;text-align:center;color:var(--text)}.mesh-nav-btn{width:36px;height:36px;border-radius:var(--radius-full);background:var(--surface3);border:none;color:var(--text);font-size:var(--font-lg);cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1;flex-shrink:0}.mesh-nav-btn:active{transform:scale(.9)}.mesh-section-hdr{font-size:var(--font-xs);font-weight:700;color:var(--label);text-transform:uppercase;letter-spacing:.06em;padding:14px 16px 6px}.mesh-member{display:flex;align-items:center;gap:14px;padding:0 16px;min-height:78px;box-sizing:border-box;cursor:pointer;-webkit-tap-highlight-color:transparent;border-bottom:1px solid rgba(255,255,255,.04)}.mesh-member:active{background:var(--surface2)}.mesh-member:last-child{border-bottom:none}.mesh-ava-wrap{position:relative;flex-shrink:0}.mesh-ava{width:var(--ava-md);height:var(--ava-md);border-radius:var(--ava-radius);display:flex;align-items:center;justify-content:center;font-size:26px;-webkit-user-select:none;user-select:none}.mesh-ava img{width:100%;height:100%;object-fit:cover;border-radius:var(--ava-radius)}.mesh-ava.grp img,.mesh-ava.grp{border-radius:var(--ava-radius)}.mesh-online-dot{position:absolute;bottom:1px;right:1px;width:11px;height:11px;border-radius:var(--radius-full);background:#30d158;border:2px solid var(--bg)}.mesh-badge-dot{position:absolute;top:0;right:0;width:10px;height:10px;border-radius:var(--radius-full);background:#ff3b30;border:2px solid var(--bg)}.mesh-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.mesh-row1{display:flex;align-items:baseline;gap:6px}.mesh-name{font-size:var(--font-md);font-weight:600;color:var(--text);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mesh-time{font-size:12px;color:var(--label);flex-shrink:0;white-space:nowrap}.mesh-sub{font-size:14px;color:var(--label);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.mesh-chevron{color:var(--label);font-size:14px;flex-shrink:0}#meshChat{display:flex;flex-direction:column;overflow:hidden;touch-action:pan-y;transform:translate(-100%);pointer-events:none}#meshChat.mc-from-right{transform:translate(100%)}#meshChat.mc-open{transform:translate(0);pointer-events:auto;transition:transform .8s cubic-bezier(.25,1,.3,1)}#meshChat.mc-close-right{transform:translate(100%);pointer-events:none;transition:transform .8s cubic-bezier(.25,1,.3,1)}#meshChat.mc-close-left{transform:translate(-100%);pointer-events:none;transition:transform .8s cubic-bezier(.25,1,.3,1)}#meshChatMsgs{touch-action:pan-y!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;overflow-y:auto!important}#meshChatFrame{flex:1;border:none;width:100%;background:var(--bg)}#mgmtPanel{position:fixed;inset:0;z-index:900;background:var(--bg);transform:translateY(100%);transition:transform .3s cubic-bezier(.2,.8,.3,1);display:flex;flex-direction:column}#mgmtPanel.open{transform:translateY(0)}.mgmt-nav{display:flex;align-items:center;gap:var(--gap-sm);padding:12px 16px;border-bottom:1px solid var(--line);background:var(--surface2)}.mgmt-nav-title{flex:1;font-size:var(--font-md);font-weight:800;text-align:center;color:var(--text)}.mgmt-nav-btn{width:36px;height:36px;border-radius:var(--radius-full);background:var(--surface3);border:none;color:var(--text);font-size:var(--font-lg);cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.mgmt-nav-btn:active{transform:scale(.9)}.mgmt-nav-add{background:var(--accent);color:#000;font-weight:800;font-size:var(--font-sm);width:auto;padding:0 14px;border-radius:18px;height:34px}.mgmt-tabs{display:flex;padding:0 16px;border-bottom:1px solid var(--line);overflow-x:auto;flex-shrink:0}.mgmt-tabs::-webkit-scrollbar{display:none}.mgmt-tab{padding:10px 14px;font-size:var(--font-sm);font-weight:600;color:var(--label);white-space:nowrap;cursor:pointer;border-bottom:2.5px solid transparent;transition:color .15s,border-color .15s}.mgmt-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.mgmt-body{flex:1;overflow-y:auto;padding:12px 16px}.mgmt-body::-webkit-scrollbar{display:none}.mgmt-item{display:flex;align-items:center;gap:var(--gap-md);padding:12px;background:var(--surface2);border-radius:var(--radius-sm);margin-bottom:8px;border:1px solid var(--line)}.mgmt-item-thumb{width:var(--ava-md);height:var(--ava-md);border-radius:var(--radius-xs);background:var(--surface3);display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0;overflow:hidden}.mgmt-item-thumb img{width:100%;height:100%;object-fit:cover}.mgmt-item-info{flex:1;min-width:0}.mgmt-item-name{font-size:14px;font-weight:700;color:var(--text);margin-bottom:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mgmt-item-meta{font-size:12px;color:var(--label);display:flex;align-items:center;gap:var(--gap-xs)}.mgmt-item-price{font-size:var(--font-sm);font-weight:800;color:var(--accent)}.mgmt-status-dot{width:7px;height:7px;border-radius:var(--radius-full);display:inline-block;flex-shrink:0}.mgmt-status-dot.on{background:#2dd4a0}.mgmt-status-dot.off{background:#ff3b30}.mgmt-item-actions{display:flex;flex-direction:column;gap:5px;flex-shrink:0}.mgmt-sort-wrap{display:flex;flex-direction:column;gap:3px;margin-right:2px}.mgmt-sort-btn{width:26px;height:22px;border-radius:6px;background:var(--surface3);border:none;color:var(--label);font-size:var(--font-xs);cursor:pointer;display:flex;align-items:center;justify-content:center}.mgmt-sort-btn:active{background:var(--accent);color:#000}.mgmt-edit-btn{width:34px;height:34px;border-radius:var(--radius-xs);background:var(--surface3);border:none;color:var(--text);font-size:var(--font-md);cursor:pointer;display:flex;align-items:center;justify-content:center}.mgmt-edit-btn:active{transform:scale(.9)}.mgmt-empty{text-align:center;padding:50px 20px;color:var(--label);font-size:14px;line-height:2}#mgmtFormOverlay{position:fixed;inset:0;z-index:950;background:#0000008c;display:none;align-items:flex-end;backdrop-filter:blur(2px)}#mgmtFormOverlay.open{display:flex}.mgmt-sheet{width:100%;background:var(--bg);border-radius:var(--radius-pill) 22px 0 0;padding:20px 20px 40px;max-height:90vh;overflow-y:auto}.mgmt-sheet::-webkit-scrollbar{display:none}.mgmt-sheet-hd{display:flex;align-items:center;margin-bottom:20px}.mgmt-sheet-title{flex:1;font-size:var(--font-md);font-weight:800}.mgmt-sheet-close{width:32px;height:32px;border-radius:var(--radius-full);background:var(--surface2);border:none;color:var(--label);font-size:var(--font-lg);cursor:pointer;line-height:1}.mgmt-field{margin-bottom:14px}.mgmt-field label{display:block;font-size:var(--font-xs);font-weight:700;color:var(--label);margin-bottom:5px;text-transform:uppercase;letter-spacing:.5px}.mgmt-field input,.mgmt-field select,.mgmt-field textarea{width:100%;padding:11px 14px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--text);font-size:14px;font-family:inherit;outline:none;box-sizing:border-box;-webkit-appearance:none}.mgmt-field textarea{height:72px;resize:none}.mgmt-field input:focus,.mgmt-field select:focus,.mgmt-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px #2dd4a02e}.mgmt-row{display:flex;gap:var(--gap-md)}.mgmt-row .mgmt-field{flex:1}.mgmt-img-box{width:100%;height:104px;border:2px dashed var(--line);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:var(--font-sm);color:var(--label);gap:var(--gap-sm);position:relative;overflow:hidden;background:var(--surface2)}.mgmt-img-box img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.mgmt-img-box:active{border-color:var(--accent)}.mgmt-img-box-hint{display:flex;align-items:center;gap:6px;pointer-events:none}.mgmt-btn-save{width:100%;padding:14px;background:var(--accent);color:#000;font-size:var(--font-md);font-weight:800;border:none;border-radius:var(--radius-sm);cursor:pointer;margin-top:8px}.mgmt-btn-save:active{opacity:.85;transform:scale(.98)}.mgmt-btn-del{width:100%;padding:12px;background:#ff3b301a;color:#ff3b30;font-size:14px;font-weight:700;border:1px solid rgba(255,59,48,.2);border-radius:var(--radius-sm);cursor:pointer;margin-top:8px}.mgmt-btn-del:active{opacity:.8}#meshChat.mc-hero-in{animation:meshHeroIn .45s cubic-bezier(.32,0,.67,0) forwards}#meshChat.mc-hero-out{animation:meshHeroOut .38s cubic-bezier(.33,1,.68,1) forwards;pointer-events:none}@keyframes meshHeroIn{0%{transform:var(--hero-origin-transform,scale(.08));transform-origin:var(--hero-origin,50% 80%);opacity:0;border-radius:var(--radius-full)}60%{border-radius:20px;opacity:1}to{transform:translate(0) scale(1);transform-origin:var(--hero-origin,50% 80%);opacity:1;border-radius:0}}@keyframes meshHeroOut{0%{transform:scale(1);transform-origin:var(--hero-origin,50% 80%);opacity:1;border-radius:0}40%{border-radius:20px;opacity:1}to{transform:var(--hero-origin-transform,scale(.08));transform-origin:var(--hero-origin,50% 80%);opacity:0;border-radius:var(--radius-full)}}.msg[data-voice]{padding:10px 14px!important;min-width:120px;max-width:220px;cursor:pointer;user-select:none;-webkit-user-select:none}.msg[data-voice] .voice-inner{display:flex;align-items:center;gap:10px}.msg[data-voice] audio{display:none}.msg[data-voice] .voice-play-icon{width:24px;height:24px;flex-shrink:0}.msg.user[data-voice] .voice-play-icon{color:#ffffffe6}.msg.ai[data-voice] .voice-play-icon{color:var(--label,#666)}.msg[data-voice] .voice-waves{display:flex;align-items:center;gap:2px;flex:1;height:22px}.msg[data-voice] .voice-waves span{display:block;width:3px;border-radius:3px;transition:height .15s ease}.msg.user[data-voice] .voice-waves span{background:#fff9}.msg.ai[data-voice] .voice-waves span{background:var(--accent);opacity:.6}.msg[data-voice] .voice-dur{font-size:12px;font-weight:600;flex-shrink:0;white-space:nowrap}.msg.user[data-voice] .voice-dur{color:#fffc}.msg.ai[data-voice] .voice-dur{color:var(--sublabel,#999)}@keyframes vw0{0%,to{height:4px}50%{height:16px}}@keyframes vw1{0%,to{height:10px}50%{height:4px}}@keyframes vw2{0%,to{height:14px}50%{height:6px}}@keyframes vw3{0%,to{height:6px}50%{height:18px}}@keyframes vw4{0%,to{height:8px}50%{height:4px}}.msg[data-voice].voice-playing .voice-waves span:nth-child(1){animation:vw0 .6s ease-in-out infinite}.msg[data-voice].voice-playing .voice-waves span:nth-child(2){animation:vw1 .6s .08s ease-in-out infinite}.msg[data-voice].voice-playing .voice-waves span:nth-child(3){animation:vw2 .6s .04s ease-in-out infinite}.msg[data-voice].voice-playing .voice-waves span:nth-child(4){animation:vw3 .6s .12s ease-in-out infinite}.msg[data-voice].voice-playing .voice-waves span:nth-child(5){animation:vw4 .6s .06s ease-in-out infinite}.msg[data-voice].voice-playing .voice-waves span:nth-child(6){animation:vw0 .6s .1s ease-in-out infinite}.msg[data-voice].voice-playing .voice-waves span:nth-child(7){animation:vw1 .6s .14s ease-in-out infinite}.msg[data-voice].voice-playing .voice-waves span:nth-child(8){animation:vw2 .6s .02s ease-in-out infinite}.vp-ic{flex-shrink:0;width:20px;height:20px}.msg.user .vp-ic{color:#ffffffe6}.msg.ai .vp-ic{color:var(--label)}@keyframes vpBar0{0%,to{height:4px}50%{height:14px}}@keyframes vpBar1{0%,to{height:8px}50%{height:4px}}@keyframes vpBar2{0%,to{height:12px}50%{height:6px}}@keyframes vpBar3{0%,to{height:6px}50%{height:16px}}@keyframes vpBar4{0%,to{height:10px}50%{height:4px}}.vp-wave{display:flex;align-items:center;gap:2px;height:18px;flex:1}.vp-wave span{display:block;width:3px;border-radius:3px;height:4px}.msg.user .vp-wave span{background:#ffffffb3}.msg.ai .vp-wave span{background:var(--accent);opacity:.7}.vp-playing .vp-wave span:nth-child(1){animation:vpBar0 .6s ease-in-out infinite}.vp-playing .vp-wave span:nth-child(2){animation:vpBar1 .6s ease-in-out .1s infinite}.vp-playing .vp-wave span:nth-child(3){animation:vpBar2 .6s ease-in-out .05s infinite}.vp-playing .vp-wave span:nth-child(4){animation:vpBar3 .6s ease-in-out .15s infinite}.vp-playing .vp-wave span:nth-child(5){animation:vpBar4 .6s ease-in-out .08s infinite}.vp-dur{font-size:12px;font-weight:600;flex-shrink:0}.msg.user .vp-dur{color:#ffffffd9}.msg.ai .vp-dur{color:var(--label)}#cropImg{position:absolute;cursor:grab;user-select:none;touch-action:none}#cropImg.grabbing{cursor:grabbing}.crop-hint{color:#aaa;font-size:var(--font-sm);margin:16px 0 8px;text-align:center}html,body{overscroll-behavior:none!important;overflow:hidden}.chat,.chat-wrap,.mesh-card-body,#meshGrpBody,#meshDmBody,.chat-inner,#history,.messages,[class*=scroll]{overscroll-behavior:none!important}#meshChat .msg.user{background:var(--bbl-user-bg)!important;color:var(--bbl-user-color)!important}#meshChat .msg.ai{background:#2c2c2e!important;color:#e5e5e5!important;border:none!important}#meshChat .bar-toggle.send-mode{background:#8774e1!important}.bbl-row.no-anim{animation:none!important;opacity:1!important}.ava-plus{position:absolute;bottom:-2px;right:-2px;width:16px;height:16px;border-radius:50%;background:var(--accent);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1;border:2px solid var(--bg)}.bbl-ava{position:relative}.emoji-picker{display:none;position:fixed;bottom:60px;left:0;right:0;max-width:480px;margin:0 auto;background:var(--surface);border-top:1px solid var(--line);padding:8px;max-height:220px;overflow-y:auto;z-index:200;border-radius:16px 16px 0 0;box-shadow:0 -4px 20px #0000004d}.emoji-picker.open{display:block}.emoji-grid{display:flex;flex-wrap:wrap;gap:4px}.emoji-item{font-size:24px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:8px;transition:background .15s}.emoji-item:active{background:var(--surface2)}.scroll-btn{position:absolute;bottom:12px;right:12px;width:36px;height:36px;border-radius:50%;background:var(--surface2);color:var(--text);border:1px solid var(--line);font-size:18px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;box-shadow:var(--shadow);transition:opacity .2s}.scroll-btn:active{background:var(--surface3)}.date-sep{text-align:center;padding:8px 0;font-size:12px;color:var(--label);position:relative}.date-sep span{background:var(--bg);padding:0 12px;position:relative;z-index:1}.date-sep:before{content:"";position:absolute;left:20%;right:20%;top:50%;border-top:1px solid var(--line)}#input{resize:none;overflow-y:hidden;min-height:20px;max-height:100px;line-height:1.4;padding:8px 0;font-family:inherit;font-size:inherit;background:transparent;border:none;color:var(--text);width:100%;outline:none}#input::placeholder{color:var(--label)}#input{resize:none;overflow-y:auto;min-height:36px;max-height:120px;line-height:1.4;padding:8px 12px;font-size:16px;border:1px solid var(--line,rgba(255,255,255,.15));outline:none;background:var(--surface2,rgba(255,255,255,.08));color:var(--text,#fff);width:100%;font-family:inherit;box-sizing:border-box;border-radius:12px}.skeleton-screen{padding:16px 0}.skel-row{display:flex;align-items:flex-end;gap:8px;margin-bottom:12px}.skel-row.self{justify-content:flex-end}.skel-ava{width:40px;height:40px;border-radius:var(--ava-radius);background:var(--surface2);flex-shrink:0;animation:skelPulse 1.5s ease-in-out infinite}.skel-bbl{height:36px;border-radius:18px;background:var(--surface2);animation:skelPulse 1.5s ease-in-out infinite}@keyframes skelPulse{0%,to{opacity:.4}50%{opacity:.8}}.offline-bar{position:fixed;bottom:0;left:0;right:0;background:#ff3b30;color:#fff;text-align:center;padding:6px;font-size:13px;font-weight:600;z-index:9999;display:none}.offline-bar.show{display:block}
