.sticker-editor{display:flex;flex-direction:column;gap:12px}.editor-empty{display:grid;place-items:center;padding:2.5rem 1rem;border:2px dashed var(--border);border-radius:var(--radius)}.editor-steps{display:flex;gap:8px;font-size:.85rem;color:var(--muted)}.editor-steps span{padding:4px 10px;border-radius:999px;border:1px solid var(--border)}.editor-steps span.on{color:var(--accent-text);background:var(--accent);border-color:var(--accent);font-weight:600}.editor-stage-wrap{display:grid;place-items:center;padding:10px;border-radius:var(--radius);background-color:#cfd4da;background-image:linear-gradient(45deg,#e9ecef 25%,transparent 25%,transparent 75%,#e9ecef 75%),linear-gradient(45deg,#e9ecef 25%,transparent 25%,transparent 75%,#e9ecef 75%);background-size:20px 20px;background-position:0 0,10px 10px}.editor-stage{width:min(100%,340px);height:auto;max-height:340px;touch-action:none;cursor:grab;border-radius:4px;outline:1px dashed rgba(0,0,0,.25)}.editor-stage.tool-background,.editor-stage.tool-brush,.editor-stage.tool-eraser{cursor:crosshair}.editor-stage.tool-text{cursor:move}.editor-controls{display:flex;flex-direction:column;gap:10px}.editor-tools{display:flex;flex-wrap:wrap;gap:6px}.editor-tools button{min-height:40px;padding:0 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;cursor:pointer}.editor-tools button.on{background:var(--accent);border-color:var(--accent);color:var(--accent-text);font-weight:600}.editor-tools button:disabled{opacity:.5;cursor:default}.editor-sep{width:100%;border:0;border-top:1px solid var(--border);margin:4px 0}.text-layer-form{display:flex;flex-direction:column;gap:8px}.text-layer-form>input{min-height:44px;padding:0 .8rem;border:1px solid var(--border);border-radius:12px;background:var(--bg);color:var(--text);font:inherit}.field.inline{flex-direction:row;align-items:center;gap:8px;margin:0}.field.inline input[type=color]{min-height:40px;width:52px;padding:2px}.emoji-chip{min-width:40px;min-height:40px;border-radius:10px;border:1px solid var(--border);background:var(--surface);font-size:1.25rem;cursor:pointer}.btn.secondary.on{border-color:var(--accent);color:var(--accent)}.small-text{font-size:.82rem}.app-shell{display:grid;grid-template-columns:92px minmax(0,1fr);height:100dvh;overflow:hidden}.app-content{min-width:0;min-height:0;height:100%;overflow:hidden;display:flex;flex-direction:column}.app-content>.banner,.app-content>.collapse{flex:none}.app-content>:not(.banner):not(.collapse){flex:1 1 0;min-height:0}.app-content .chats-layout{height:100%}.app-nav{display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:14px 8px;background:var(--surface);border-right:1px solid var(--border);overflow-y:auto}.nav-logo{align-self:center;width:40px;height:40px;margin:2px 0 14px;border-radius:12px;box-shadow:0 8px 20px -6px color-mix(in srgb,var(--accent) 60%,transparent)}.nav-item{position:relative;display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 2px 8px;border-radius:var(--r-3);color:var(--muted);text-decoration:none;font-size:.72rem;font-weight:550;line-height:1.15;text-align:center;transition:color var(--t-base) var(--ease)}.nav-item:hover{color:var(--text)}.nav-item.active{color:var(--accent);font-weight:650}.nav-icon{position:relative;display:grid;place-items:center;width:58px;height:34px}.nav-icon:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:17px;background:var(--accent-soft);opacity:0;transform:scale(.45,.7);transition:opacity var(--t-base) var(--ease),transform var(--t-slow) var(--spring)}.nav-item:hover .nav-icon:before{opacity:1;transform:none;background:var(--surface-2)}.nav-item.active .nav-icon:before{opacity:1;transform:none;background:var(--accent-soft)}.nav-icon>svg{position:relative;width:24px;height:24px;transition:transform var(--t-slow) var(--spring)}.nav-item.active .nav-icon>svg{transform:scale(1.1)}.nav-item:active .nav-icon>svg{transform:scale(.86)}.nav-icon .avatar{position:relative;transition:box-shadow var(--t-base) var(--ease)}.nav-item.active.nav-profile .avatar{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--accent)}.nav-badge{position:absolute;top:-3px;right:2px;z-index:1;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--danger);color:#fff;font-size:.68rem;font-weight:700;line-height:18px;box-shadow:0 0 0 2px var(--surface)}.nav-profile{margin-top:auto}@media(max-width:800px){.app-shell{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto}.app-content{grid-row:1}.app-nav{grid-row:2;flex-direction:row;align-items:center;justify-content:space-around;gap:0;margin:0 10px max(10px,env(safe-area-inset-bottom));padding:5px 4px;border:1px solid var(--glass-line);border-radius:26px;background:var(--glass);backdrop-filter:blur(22px) saturate(1.7);-webkit-backdrop-filter:blur(22px) saturate(1.7);box-shadow:var(--shadow-3);overflow:visible}.nav-logo{display:none}.nav-item{flex:1;min-width:0;padding:4px 0 5px}.nav-icon{width:54px;height:30px}.nav-profile{margin-top:0}.nav-badge{box-shadow:0 0 0 2px color-mix(in srgb,var(--surface) 80%,transparent)}.app-shell.nav-hidden-mobile{grid-template-rows:minmax(0,1fr)}.app-shell.nav-hidden-mobile .app-nav{display:none}}.tool-layout{display:grid;grid-template-columns:minmax(300px,390px) minmax(0,1fr);height:100%;min-height:0}.tool-list-pane{display:flex;flex-direction:column;min-height:0;background:var(--surface);border-right:1px solid var(--border)}.tool-list-scroll{flex:1;min-height:0;overflow-y:auto;padding:4px 8px 12px}.tool-detail-pane{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg)}.tool-detail-pane>.empty{margin:auto}@media(max-width:800px){.tool-layout{grid-template-columns:minmax(0,1fr)}.tool-layout.has-detail .tool-list-pane,.tool-layout:not(.has-detail) .tool-detail-pane{display:none}.tool-layout.has-detail .tool-detail-pane{animation:fc-slide .34s var(--ease) backwards}}.tool-item{position:relative;display:flex;align-items:center;gap:12px;min-height:68px;padding:10px 12px;margin:2px 0;border-radius:var(--r-3);color:inherit;text-decoration:none;transition:background-color var(--t-fast) var(--ease),transform var(--t-base) var(--ease),box-shadow var(--t-base) var(--ease)}.tool-item:hover{background:var(--surface-2)}.tool-item:active{transform:scale(.985)}.tool-item.active{background:var(--accent-grad);color:var(--accent-text);box-shadow:0 10px 22px -10px color-mix(in srgb,var(--accent) 70%,transparent)}.tool-item.active .tool-item-sub,.tool-item.active .tool-item-time{color:inherit;opacity:.86}.tool-item-icon{flex:none;width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:var(--accent-soft);color:var(--accent);font-size:1.2rem}.tool-item-icon svg{width:22px;height:22px}.tool-item.active .tool-item-icon{background:#ffffff38;color:inherit}.tool-item-body{flex:1;min-width:0;display:flex;flex-direction:column}.tool-item-title{font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-item-sub{color:var(--muted);font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tool-item-time{flex:none;color:var(--muted);font-size:.8rem}.progress{position:absolute;left:66px;right:14px;bottom:6px;height:4px;border-radius:2px;background:var(--border);overflow:hidden}.progress span{display:block;height:100%;background:var(--ok);transition:width var(--t-slow) var(--ease)}.editor{display:flex;flex-direction:column;height:100%;min-height:0;position:relative}.editor-bar{gap:8px}.editor-bar .back{display:none}@media(max-width:800px){.editor-bar .back{display:grid}}.editor-scroll{flex:1;min-height:0;overflow-y:auto;padding:14px 16px 20px;display:flex;flex-direction:column;gap:8px}.editor-meta{margin:0;font-size:.85rem}.editor-title{width:100%;padding:6px 0;border:0;background:transparent;color:var(--text);font:inherit;font-size:1.35rem;font-weight:700;outline:none}.editor-body{flex:1;width:100%;min-height:55vh;padding:0;border:0;background:transparent;color:var(--text);font:inherit;line-height:1.55;resize:none;outline:none}.save-status{flex:1;min-width:0;color:var(--muted);font-size:.85rem}.save-status.offline{color:var(--danger)}.share-toggle{white-space:nowrap}.share-toggle.on{color:var(--accent);border-color:var(--accent)}.conflict{margin:10px 14px 0;padding:12px 14px;border:1px solid var(--danger);border-radius:12px;background:#d1344b14}.conflict p{margin:6px 0 10px}.list-title-input{flex:1;min-width:0;min-height:44px;padding:0 4px;border:0;border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:1.15rem;font-weight:700}.list-title-input:focus{background:var(--bg)}.list-rows{list-style:none;margin:0;padding:0}.list-section{margin:18px 0 4px;color:var(--muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.03em}.list-row{display:flex;align-items:center;gap:12px;min-height:56px;padding:4px 0;border-bottom:1px solid var(--border)}.check.big{width:38px;height:38px;padding:0;background:none;font-size:1.2rem;cursor:pointer}.check.big.on{background:var(--ok);border-color:var(--ok)}.list-row-body{flex:1;min-width:0;display:flex;flex-direction:column}.list-row-text{min-height:44px;padding:8px 0;border:0;background:none;color:inherit;font:inherit;text-align:left;overflow-wrap:anywhere;cursor:text}.list-row.done .list-row-text{color:var(--muted);text-decoration:line-through}.list-row-edit{min-height:44px;padding:0 10px;border:1px solid var(--accent);border-radius:10px;background:var(--surface);color:var(--text);font:inherit}.icon-btn.subtle{color:var(--muted)}.list-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.list-add{display:flex;gap:8px;padding:8px 12px max(8px,env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--surface)}.list-add input{flex:1;min-width:0;min-height:46px;padding:0 14px;border:1px solid var(--border);border-radius:23px;background:var(--bg);color:var(--text);font:inherit}.event-form .field-row{display:flex;gap:12px}.event-form .field-row .field{flex:1;min-width:0}.field textarea,.field select{padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--bg);color:var(--text);font:inherit}.field-set{margin:10px 0;padding:6px 12px 12px;border:1px solid var(--border);border-radius:12px}.field-set legend{padding:0 6px;color:var(--muted);font-size:.9rem}.chip{display:inline-flex;align-items:center;gap:6px;min-height:42px;padding:0 14px 0 8px;border:1px solid var(--border);border-radius:21px;background:var(--bg);color:inherit;font:inherit;cursor:pointer}.chip.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 15%,transparent)}.cal{display:flex;flex-direction:column;height:100%;min-height:0;background:var(--bg)}.cal-bar h1{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:520px){.cal-bar h1{display:block;font-size:1.25rem}}.cal-today{flex:none}.cal-toolbar{padding:2px 12px 0}.cal-seg{width:100%}.cal-seg button{flex:1;padding:0 6px}.cal-nav{display:flex;align-items:center;gap:8px;padding:10px 12px 4px}.cal-nav .btn{flex:none;width:40px;height:40px;min-height:40px;padding:0;border-radius:50%;display:grid;place-items:center}.cal-month-title{flex:1;min-width:0;margin:0;font-size:1.2rem;font-weight:700;text-align:center;letter-spacing:-.01em}.cal-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 360px;overflow:hidden}.cal-body.single{display:flex;flex-direction:column;overflow-y:auto}.cal-month{min-height:0;overflow-y:auto;padding:6px 12px 16px}.cal-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding:6px 0;color:var(--muted);font-size:.78rem;font-weight:600;text-align:center}.cal-weekdays span:nth-child(n+6){color:color-mix(in srgb,var(--danger) 70%,var(--muted))}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;border-radius:18px;background:var(--border);overflow:hidden;box-shadow:var(--shadow-1)}.cal-cell{min-height:92px;padding:5px;display:flex;flex-direction:column;gap:3px;border:0;background:var(--surface);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background var(--t-fast) var(--ease)}@media(hover:hover){.cal-cell:hover{background:var(--surface-2)}}.cal-cell.outside{opacity:.45}.cal-cell.selected{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}.cal-day{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;font-size:.9rem;font-weight:550}.cal-cell.weekend .cal-day{color:color-mix(in srgb,var(--danger) 75%,var(--text))}.cal-cell.today .cal-day{background:var(--accent-grad);color:var(--accent-text);font-weight:700;box-shadow:0 2px 8px var(--accent-line)}.cal-pills{display:flex;flex-direction:column;gap:2px;min-width:0}.cal-pill{display:block;padding:1px 6px;border-radius:6px;border-left:3px solid var(--ev, var(--accent));background:color-mix(in srgb,var(--ev, var(--accent)) 20%,var(--surface));font-size:.73rem;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-pill.allday{border-left-color:transparent;background:var(--ev, var(--accent));color:#fff}.cal-more{color:var(--muted);font-size:.72rem;padding-left:4px}.cal-weekno{margin:8px 4px 0;font-size:.8rem;text-align:center}.cal-day-panel{min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding:16px;border-left:1px solid var(--border);background:var(--surface)}.cal-day-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.cal-day-panel h2{margin:0;font-size:1.08rem}.cal-count{min-width:26px;height:26px;padding:0 8px;display:grid;place-items:center;border-radius:13px;background:var(--accent-soft);color:var(--accent);font-size:.85rem;font-weight:700}.cal-empty-day{display:flex;align-items:center;gap:8px;margin:0}.cal-empty-day svg{width:20px;height:20px;flex:none}.event-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.event-row{position:relative;display:flex;align-items:center;gap:12px;width:100%;min-height:58px;padding:10px 12px 10px 14px;border:0;border-left:4px solid var(--ev, var(--accent));border-radius:14px;background:color-mix(in srgb,var(--ev, var(--accent)) 8%,var(--surface));box-shadow:var(--shadow-1);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:transform var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.event-row:active{transform:scale(.99)}@media(hover:hover){.event-row:hover{box-shadow:var(--shadow-2)}}.event-row.over{opacity:.62}.event-time{flex:none;min-width:74px;color:var(--ev, var(--accent));font-weight:650;font-size:.92rem}.event-main{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.event-main strong{overflow-wrap:anywhere}.event-place,.event-meta{display:flex;align-items:center;gap:4px;font-size:.82rem}.event-place{color:var(--text-2)}.event-place svg,.event-meta svg{width:13px;height:13px;flex:none}.event-going{flex:none;padding:2px 9px;border-radius:999px;background:var(--ev, var(--accent));color:#fff;font-size:.72rem;font-weight:700}.event-people{flex:none;display:flex}.event-people .avatar{margin-left:-7px;box-shadow:0 0 0 2px var(--surface)}.event-people .avatar:first-child{margin-left:0}.cal-upcoming{flex:1;min-height:0;overflow-y:auto;padding:6px 16px 24px}.day-title{margin:18px 0 8px;font-size:1rem}.day-title small{font-weight:500}.cal-weekview{display:flex;flex-direction:column;gap:8px;padding:6px 12px 20px}.cal-wday{display:grid;grid-template-columns:58px minmax(0,1fr);gap:10px;padding:8px;border-radius:18px;background:var(--surface);box-shadow:var(--shadow-1)}.cal-wday.is-empty{background:color-mix(in srgb,var(--surface) 60%,transparent);box-shadow:none;border:1px dashed var(--border)}.cal-wday.selected:not(.today){box-shadow:inset 0 0 0 2px var(--accent-line),var(--shadow-1)}.cal-wday-head{display:flex;flex-direction:column;align-items:center;gap:2px;align-self:start;padding:6px 0;border:0;border-radius:14px;background:var(--surface-2);color:inherit;font:inherit;cursor:pointer}.cal-wday-head .wd{color:var(--muted);font-size:.74rem;font-weight:600;text-transform:uppercase}.cal-wday-head .num{font-size:1.25rem;font-weight:700;line-height:1.15}.cal-wday.today .cal-wday-head{background:var(--accent-grad);color:var(--accent-text)}.cal-wday.today .cal-wday-head .wd{color:inherit;opacity:.85}.dots{display:flex;gap:3px;min-height:6px}.dots i{width:6px;height:6px;border-radius:50%}.cal-wday-body{position:relative;display:flex;flex-direction:column;gap:8px;min-width:0;padding-right:36px;justify-content:center}.cal-wday-none{font-size:.88rem}.cal-wday-add{position:absolute;top:0;right:0;width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--surface-2);color:var(--accent);cursor:pointer}.cal-wday-add svg{width:18px;height:18px}@media(min-width:1000px){.cal-weekview{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:start;padding:8px 16px 20px}.cal-wday{grid-template-columns:minmax(0,1fr);gap:8px}.cal-wday-head{flex-direction:row;justify-content:center;gap:8px;padding:8px}.cal-wday-body{padding-right:0;padding-bottom:38px}.cal-wday-add{top:auto;bottom:0;right:50%;margin-right:-16px}.cal-wday .event-row{flex-wrap:wrap;gap:2px 8px}.cal-wday .event-time{min-width:0}.cal-wday .event-people{display:none}}.cal-dayview{display:flex;flex-direction:column;flex:1;min-height:0;padding:4px 12px 12px;gap:8px}.cal-weekstrip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.cal-strip-day{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 0 4px;border:0;border-radius:14px;background:var(--surface);color:inherit;font:inherit;cursor:pointer;box-shadow:var(--shadow-1);transition:background var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.cal-strip-day .wd{color:var(--muted);font-size:.72rem;font-weight:600;text-transform:uppercase}.cal-strip-day .num{font-size:1.05rem;font-weight:700}.cal-strip-day.today .num{color:var(--accent)}.cal-strip-day.on{background:var(--accent-grad);color:var(--accent-text)}.cal-strip-day.on .wd,.cal-strip-day.on .num{color:inherit}.cal-strip-day.on .dots i{box-shadow:0 0 0 1.5px #ffffffd9}.cal-allday{display:flex;flex-wrap:wrap;gap:6px}.cal-allday-chip{padding:5px 12px;border:0;border-radius:999px;background:var(--ev, var(--accent));color:#fff;font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}.cal-scroll{flex:1;min-height:260px;overflow-y:auto;border-radius:18px;background:var(--surface);box-shadow:var(--shadow-1);overscroll-behavior:contain}.cal-timeline{position:relative;margin-top:10px}.cal-hour{position:absolute;left:0;right:0;height:0;border-top:1px solid var(--border);pointer-events:none}.cal-hour span{position:absolute;top:-8px;left:8px;width:42px;color:var(--muted);font-size:.7rem;font-variant-numeric:tabular-nums}.cal-slots{position:absolute;top:0;right:8px;bottom:0;left:56px;cursor:cell}.cal-block{position:absolute;display:flex;flex-direction:column;gap:0;padding:4px 8px;border:0;border-left:4px solid var(--ev, var(--accent));border-radius:10px;background:color-mix(in srgb,var(--ev, var(--accent)) 20%,var(--surface));color:inherit;font:inherit;text-align:left;overflow:hidden;cursor:pointer;box-shadow:0 1px 3px #141c321f}.cal-block strong{font-size:.86rem;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-block small{color:var(--text-2);font-size:.74rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-block.over{opacity:.6}.cal-block.going{box-shadow:0 0 0 2px var(--ev, var(--accent)),0 4px 12px #141c3233}.cal-nowline{position:absolute;left:-52px;right:-8px;height:0;border-top:2px solid var(--danger);pointer-events:none;z-index:2}.cal-nowline span{position:absolute;top:-10px;left:4px;padding:1px 5px;border-radius:6px;background:var(--danger);color:#fff;font-size:.68rem;font-weight:700;font-variant-numeric:tabular-nums}.cal-day-hint{margin:0;text-align:center;font-size:.85rem}@media(max-width:800px){.cal-body{display:block;overflow-y:auto}.cal-body.single{display:flex}.cal-month{overflow:visible;padding:4px 10px}.cal-cell{min-height:56px;align-items:center;padding:4px 2px}.cal-pills{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:3px}.cal-pill{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:var(--ev, var(--accent))}.cal-pill.allday{border-radius:3px}.cal-pill-text,.cal-more{display:none}.cal-day-panel{border-left:0;border-top:0;margin:12px 10px 20px;border-radius:20px;box-shadow:var(--shadow-1)}.cal-dayview{padding-bottom:20px}.cal-scroll{min-height:0;flex:none;height:56dvh}}.color-dots{display:flex;flex-wrap:wrap;gap:10px;padding:4px 0 2px}.color-dot{width:34px;height:34px;padding:0;border:2px solid transparent;border-radius:50%;cursor:pointer;display:grid;place-items:center}.color-dot.on{border-color:var(--text);box-shadow:0 0 0 3px var(--surface),0 0 0 5px var(--accent)}.color-dot.auto{background:var(--surface-2);border:2px dashed var(--border-strong)}.color-dot.auto.on{border:2px solid var(--text)}.color-dot.auto i{width:16px;height:16px;border-radius:50%}@font-face{font-family:Golos Text Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/golos-text-cyrillic-ext-wght-normal-hICkpzq7.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Golos Text Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/golos-text-cyrillic-wght-normal-mKek_fSS.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Golos Text Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/golos-text-latin-ext-wght-normal-B-I5lbAQ.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Golos Text Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(/assets/golos-text-latin-wght-normal-BS5oQT7X.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-sans: "Golos Text Variable", "Golos Text", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, "Cascadia Code", Consolas, Menlo, monospace;--font-scale: 1;--bg: #f3f5fa;--surface: #ffffff;--surface-2: #edf0f7;--surface-3: #e2e7f0;--text: #151922;--text-2: #3a4252;--muted: #667085;--border: #e2e6ee;--border-strong: #cfd5e1;--accent: #2f81f7;--accent-text: #ffffff;--danger: #d93a50;--ok: #1fa35b;--warn: #c7820f;--overlay: rgba(14, 18, 28, .5);--glass: rgba(255, 255, 255, .78);--glass-line: rgba(255, 255, 255, .65);--bubble-in: #ffffff;--bubble-in-text: var(--text);--chat-bg: radial-gradient(900px 520px at 85% -8%, color-mix(in srgb, var(--accent) 11%, transparent), transparent 62%), radial-gradient(760px 480px at -8% 108%, color-mix(in srgb, #ff8fc7 11%, transparent), transparent 58%), linear-gradient(180deg, #eef2fa, #e8edf6);color-scheme:light;--accent-soft: color-mix(in srgb, var(--accent) 12%, transparent);--accent-softer: color-mix(in srgb, var(--accent) 7%, transparent);--accent-line: color-mix(in srgb, var(--accent) 38%, transparent);--accent-grad: linear-gradient(135deg, color-mix(in srgb, var(--accent) 80%, #fff), var(--accent) 60%, color-mix(in srgb, var(--accent) 90%, #000));--bubble-out: color-mix(in srgb, var(--accent) 94%, #000);--bubble-out-text: #ffffff;--bubble-out-bg: linear-gradient(165deg, color-mix(in srgb, var(--bubble-out) 86%, #fff), var(--bubble-out));--r-1: 8px;--r-2: 12px;--r-3: 16px;--r-4: 22px;--r-5: 30px;--r-pill: 999px;--radius: 16px;--shadow-1: 0 1px 2px rgba(20, 28, 50, .06), 0 1px 3px rgba(20, 28, 50, .07);--shadow-2: 0 4px 14px rgba(20, 28, 50, .09), 0 1px 3px rgba(20, 28, 50, .06);--shadow-3: 0 14px 36px rgba(20, 28, 50, .16), 0 3px 8px rgba(20, 28, 50, .07);--shadow-pop: 0 24px 64px rgba(14, 18, 36, .3), 0 4px 14px rgba(14, 18, 36, .12);--ring: 0 0 0 3px color-mix(in srgb, var(--accent) 34%, transparent);--ease: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--spring: cubic-bezier(.34, 1.56, .64, 1);--t-fast: .14s;--t-base: .24s;--t-slow: .42s}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #0c0f15;--surface: #141922;--surface-2: #1b212d;--surface-3: #252d3b;--text: #eef1f7;--text-2: #c5cddb;--muted: #94a0b4;--border: #252c39;--border-strong: #343d4e;--accent: #4c9bff;--danger: #ff6b81;--ok: #4fd37f;--warn: #f0b445;--overlay: rgba(2, 4, 10, .62);--glass: rgba(20, 25, 34, .74);--glass-line: rgba(255, 255, 255, .07);--bubble-in: #1e2531;--chat-bg: radial-gradient(900px 520px at 85% -8%, color-mix(in srgb, var(--accent) 14%, transparent), transparent 62%), radial-gradient(760px 480px at -8% 108%, color-mix(in srgb, #ff8fc7 8%, transparent), transparent 58%), linear-gradient(180deg, #0b0e14, #0d1119);--bubble-out: color-mix(in srgb, var(--accent) 66%, #0a1020);--shadow-1: 0 1px 2px rgba(0, 0, 0, .4), 0 1px 3px rgba(0, 0, 0, .3);--shadow-2: 0 6px 18px rgba(0, 0, 0, .42), 0 1px 3px rgba(0, 0, 0, .3);--shadow-3: 0 16px 40px rgba(0, 0, 0, .55), 0 3px 8px rgba(0, 0, 0, .35);--shadow-pop: 0 28px 70px rgba(0, 0, 0, .7), 0 4px 14px rgba(0, 0, 0, .4);color-scheme:dark}}:root[data-theme=dark]{--bg: #0c0f15;--surface: #141922;--surface-2: #1b212d;--surface-3: #252d3b;--text: #eef1f7;--text-2: #c5cddb;--muted: #94a0b4;--border: #252c39;--border-strong: #343d4e;--accent: #4c9bff;--danger: #ff6b81;--ok: #4fd37f;--warn: #f0b445;--overlay: rgba(2, 4, 10, .62);--glass: rgba(20, 25, 34, .74);--glass-line: rgba(255, 255, 255, .07);--bubble-in: #1e2531;--chat-bg: radial-gradient(900px 520px at 85% -8%, color-mix(in srgb, var(--accent) 14%, transparent), transparent 62%), radial-gradient(760px 480px at -8% 108%, color-mix(in srgb, #ff8fc7 8%, transparent), transparent 58%), linear-gradient(180deg, #0b0e14, #0d1119);--bubble-out: color-mix(in srgb, var(--accent) 66%, #0a1020);--shadow-1: 0 1px 2px rgba(0, 0, 0, .4), 0 1px 3px rgba(0, 0, 0, .3);--shadow-2: 0 6px 18px rgba(0, 0, 0, .42), 0 1px 3px rgba(0, 0, 0, .3);--shadow-3: 0 16px 40px rgba(0, 0, 0, .55), 0 3px 8px rgba(0, 0, 0, .35);--shadow-pop: 0 28px 70px rgba(0, 0, 0, .7), 0 4px 14px rgba(0, 0, 0, .4);color-scheme:dark}@keyframes fc-fade{0%{opacity:0}to{opacity:1}}@keyframes fc-rise{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}@keyframes fc-slide{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:none}}@keyframes fc-sheet{0%{opacity:.2;transform:translateY(40px)}to{opacity:1;transform:none}}@keyframes fc-sheet-out{to{opacity:0;transform:translateY(calc(var(--drag, 0px) + 36px))}}@keyframes fc-dialog{0%{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}@keyframes fc-dialog-out{to{opacity:0;transform:translateY(8px) scale(.97)}}@keyframes fc-fade-out{to{opacity:0}}@keyframes fc-pop{0%{transform:scale(.55);opacity:0}65%{transform:scale(1.12);opacity:1}to{transform:scale(1)}}@keyframes fc-bubble-in{0%{opacity:0;transform:translateY(14px) scale(.92)}to{opacity:1;transform:none}}@keyframes fc-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes fc-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes fc-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.06);opacity:.85}}@keyframes fc-ring{0%{box-shadow:0 0 color-mix(in srgb,var(--accent) 45%,transparent)}to{box-shadow:0 0 0 8px transparent}}@keyframes fc-flash{0%{background-color:color-mix(in srgb,#ffc933 55%,transparent)}to{background-color:transparent}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes blink{50%{opacity:.25}}html.theme-anim,html.theme-anim *,html.theme-anim *:before,html.theme-anim *:after{transition:background-color .38s ease,color .38s ease,border-color .38s ease,fill .38s ease,stroke .38s ease,box-shadow .38s ease!important}*{box-sizing:border-box}html{font-size:calc(16px * var(--font-scale));-webkit-tap-highlight-color:transparent}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-optical-sizing:auto;line-height:1.45;letter-spacing:-.003em;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:color-mix(in srgb,var(--accent) 30%,transparent)}*{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--text) 24%,transparent) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:8px;background:color-mix(in srgb,var(--text) 24%,transparent);background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--text) 38%,transparent);background-clip:padding-box}::-webkit-scrollbar-track{background:transparent}h1,h2,h3{margin:0;letter-spacing:-.012em}h1{font-size:1.3rem;font-weight:650}h2{font-size:1.1rem;font-weight:650}svg.lucide{flex:none;stroke-width:1.85}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.splash{min-height:100dvh;display:grid;place-content:center;justify-items:center;gap:16px;color:var(--muted)}.splash-logo{width:72px;height:72px;border-radius:22px;box-shadow:0 12px 34px color-mix(in srgb,var(--accent) 38%,transparent);animation:fc-pulse 1.8s var(--ease-in-out) infinite}.splash-dots{display:flex;gap:6px}.splash-dots i{width:7px;height:7px;border-radius:50%;background:var(--accent);opacity:.35;animation:fc-pulse 1.1s var(--ease-in-out) infinite}.splash-dots i:nth-child(2){animation-delay:.15s}.splash-dots i:nth-child(3){animation-delay:.3s}.skeleton{border-radius:var(--r-2);background:linear-gradient(90deg,var(--surface-2) 30%,var(--surface-3) 50%,var(--surface-2) 70%);background-size:300% 100%;animation:fc-shimmer 1.5s linear infinite}.btn,.icon-btn,input,select,textarea{font:inherit}.btn{position:relative;min-height:46px;padding:0 1.3rem;border:0;border-radius:var(--r-3);background:var(--accent-grad);color:var(--accent-text);font-weight:600;letter-spacing:-.005em;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;box-shadow:0 1px #ffffff47 inset,0 8px 18px -6px color-mix(in srgb,var(--accent) 60%,transparent);transition:transform var(--t-fast) var(--ease),box-shadow var(--t-base) var(--ease),filter var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease)}.btn:hover:not(:disabled){filter:brightness(1.06) saturate(1.05);transform:translateY(-1px)}.btn:active:not(:disabled){transform:scale(.97);filter:brightness(.96)}.btn:disabled{opacity:.5;cursor:default;box-shadow:none}.btn.secondary{background:var(--accent-soft);color:var(--accent);box-shadow:none}.btn.secondary:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 19%,transparent);filter:none}.btn.danger{background:var(--danger);color:#fff;box-shadow:0 8px 18px -8px color-mix(in srgb,var(--danger) 70%,transparent)}.btn.danger.secondary,.btn.secondary.danger{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger);box-shadow:none}.btn.small{min-height:38px;padding:0 .95rem;font-size:.9rem;border-radius:var(--r-2)}.btn svg{width:1.2em;height:1.2em}.link{min-height:44px;background:none;border:0;color:var(--accent);font:inherit;font-weight:500;cursor:pointer;border-radius:var(--r-2);padding:0 6px;transition:background-color var(--t-fast) var(--ease)}.link:hover{background:var(--accent-softer)}.icon-btn{text-decoration:none;color:inherit;min-width:44px;min-height:44px;display:grid;place-items:center;border:0;border-radius:50%;background:none;padding:0;cursor:pointer;transition:background-color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.icon-btn:hover:not(:disabled){background:var(--surface-2)}.icon-btn:active:not(:disabled){transform:scale(.9)}.icon-btn:disabled{opacity:.4;cursor:default}.icon-btn svg{width:22px;height:22px}.field{display:flex;flex-direction:column;gap:.35rem;margin:.9rem 0}.field>span{font-size:.875rem;font-weight:500;color:var(--text-2)}.field input,.field select{min-height:48px;padding:0 .95rem;border:1.5px solid transparent;border-radius:var(--r-3);background:var(--surface-2);color:var(--text);transition:border-color var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease),box-shadow var(--t-base) var(--ease)}.field input::placeholder{color:color-mix(in srgb,var(--muted) 80%,transparent)}.field input:hover,.field select:hover{border-color:var(--border-strong)}.field input[type=range]{padding:0;border:0;background:none;accent-color:var(--accent)}.field small{color:var(--muted)}.select{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:100%;min-height:46px;padding:0 2.4rem 0 .95rem;border:1.5px solid transparent;border-radius:var(--r-3);background:var(--surface-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%238a94a6' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right .85rem center / 14px;color:var(--text);text-overflow:ellipsis;cursor:pointer;transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-base) var(--ease)}.select:hover:not(:disabled){border-color:var(--border-strong)}.select:disabled{opacity:.55;cursor:default}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:0;border-color:var(--accent)!important;box-shadow:var(--ring)}.btn:focus-visible,.link:focus-visible,.icon-btn:focus-visible,a:focus-visible,button:focus-visible{outline:0;box-shadow:var(--ring)}.error{color:var(--danger);margin:.5rem 0;font-size:.92rem}.check-row{display:flex;align-items:center;gap:12px;min-height:44px;cursor:pointer}.check-row input[type=checkbox],.switch{-moz-appearance:none;appearance:none;-webkit-appearance:none;position:relative;flex:none;width:46px;height:28px;margin:0;border-radius:14px;background:var(--surface-3);cursor:pointer;transition:background-color var(--t-base) var(--ease)}.check-row input[type=checkbox]:after,.switch:after{content:"";position:absolute;left:3px;top:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0000004d;transition:transform var(--t-base) var(--spring)}.check-row input[type=checkbox]:checked,.switch:checked{background:var(--accent)}.check-row input[type=checkbox]:checked:after,.switch:checked:after{transform:translate(18px)}.check-row input[type=checkbox]:active:after,.switch:active:after{width:26px}.check-row input[type=checkbox]:checked:active:after,.switch:checked:active:after{transform:translate(14px)}.auth{position:relative;min-height:100dvh;display:grid;place-items:center;padding:20px;overflow:hidden;background:radial-gradient(900px 600px at 15% 0%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 60%),radial-gradient(800px 560px at 100% 100%,color-mix(in srgb,#ff8fc7 20%,transparent),transparent 58%),radial-gradient(600px 460px at 90% 10%,color-mix(in srgb,#ffc933 16%,transparent),transparent 60%),var(--bg)}.auth:before,.auth:after{content:"";position:absolute;width:380px;height:380px;border-radius:50%;filter:blur(70px);opacity:.38;pointer-events:none;animation:fc-float 9s var(--ease-in-out) infinite}.auth:before{left:-120px;top:12%;background:var(--accent)}.auth:after{right:-140px;bottom:6%;background:#ff8fc7;animation-delay:-4s}.auth .card{position:relative;z-index:1;width:100%;max-width:410px;display:flex;flex-direction:column;padding:28px 24px 24px;border-radius:30px;background:var(--glass);border-color:var(--glass-line);backdrop-filter:blur(26px) saturate(1.6);-webkit-backdrop-filter:blur(26px) saturate(1.6);box-shadow:var(--shadow-3);animation:fc-rise .55s var(--ease) backwards}.auth h1{text-align:center;font-size:1.6rem;font-weight:700;letter-spacing:-.02em}.auth-logo{align-self:center;width:78px;height:78px;margin-bottom:8px;border-radius:24px;box-shadow:0 14px 34px color-mix(in srgb,var(--accent) 42%,transparent);animation:fc-float 5.5s var(--ease-in-out) infinite}.auth .field{margin:.45rem 0}.auth .seg{margin-top:16px}.auth .seg button{min-height:46px;font-weight:600}.auth-lead{margin:12px 0 0;text-align:center;color:var(--muted)}.auth .btn{margin-top:6px;min-height:50px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-4);padding:1.15rem;box-shadow:var(--shadow-1)}.page{min-height:100dvh;max-width:720px;margin:0 auto}.topbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:10px;padding:10px 14px;padding-top:max(10px,env(safe-area-inset-top));background:var(--glass);backdrop-filter:blur(18px) saturate(1.7);-webkit-backdrop-filter:blur(18px) saturate(1.7);border-bottom:1px solid var(--border)}.topbar h1{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content{display:flex;flex-direction:column;gap:14px;padding:16px;padding-bottom:max(24px,env(safe-area-inset-bottom))}.empty{text-align:center;padding:4rem 1.5rem;color:var(--muted)}.empty h2{color:var(--text);margin-bottom:.5rem}.empty-icon{display:grid;place-items:center;width:84px;height:84px;margin:0 auto 18px;border-radius:28px;background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-line);animation:fc-float 6s var(--ease-in-out) infinite}.empty-icon svg{width:40px;height:40px}.empty-art{display:block;width:168px;max-width:60%;height:auto;margin:0 auto 18px;color:var(--accent);animation:fc-float 6s var(--ease-in-out) infinite}.avatar{display:inline-grid;place-items:center;border-radius:50%;object-fit:cover;color:#fff;font-weight:650;flex:none;box-shadow:inset 0 0 0 1px #ffffff29}.profile-head{display:flex;align-items:center;gap:16px}.stack{display:flex;flex-direction:column;align-items:flex-start}.row{display:flex;gap:8px;flex-wrap:wrap}.list{list-style:none;margin:.5rem 0 0;padding:0}.list li{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:.75rem 0;border-top:1px solid var(--border)}.list li:first-child{border-top:0}.person{display:flex;align-items:center;gap:12px}.muted{color:var(--muted);font-size:.9rem}.badge{margin-left:8px;padding:2px 9px;border-radius:var(--r-pill);background:var(--surface-2);color:var(--muted);font-size:.75rem;font-weight:500}.toast{position:sticky;top:70px;z-index:6;margin:0;padding:.75rem 1rem;border-radius:var(--r-3);background:var(--text);color:var(--bg);box-shadow:var(--shadow-3);animation:fc-rise .3s var(--ease) backwards}.toast.error{background:var(--danger);color:#fff}.seg{--n: 2;--i: 0;position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:4px;border-radius:var(--r-3);background:var(--surface-2)}.seg:has(>:nth-child(3):last-child){--n: 3}.seg:has(>:nth-child(4):last-child){--n: 4}.seg:has(>:nth-child(2).on){--i: 1}.seg:has(>:nth-child(3).on){--i: 2}.seg:has(>:nth-child(4).on){--i: 3}.seg:before{content:"";position:absolute;top:4px;bottom:4px;left:4px;width:calc((100% - 8px) / var(--n));border-radius:calc(var(--r-3) - 3px);background:var(--surface);box-shadow:var(--shadow-1);transform:translate(calc(var(--i) * 100%));transition:transform var(--t-slow) var(--ease)}.seg button{position:relative;z-index:1;min-height:40px;padding:0 8px;border:0;border-radius:calc(var(--r-3) - 3px);background:none;color:var(--muted);font:inherit;font-weight:500;cursor:pointer;transition:color var(--t-base) var(--ease)}.seg button.on{color:var(--text);font-weight:650}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;background:var(--overlay);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);padding:16px;animation:fc-fade .2s ease-out both}.modal-backdrop.closing{animation:fc-fade-out .18s ease-in both}.modal{position:relative;background:var(--surface);color:var(--text);border-radius:var(--r-5);padding:1.3rem;display:flex;flex-direction:column;align-items:stretch;gap:14px;width:min(480px,100%);max-height:90dvh;overflow-y:auto;box-shadow:var(--shadow-pop);animation:fc-dialog .34s var(--ease) backwards}.modal.closing{animation:fc-dialog-out .18s ease-in both}.modal .cropper{margin:0 auto}.cropper{position:relative;overflow:hidden;border-radius:50%;background:#000;touch-action:none;cursor:grab}.cropper img{position:absolute;max-width:none;-webkit-user-select:none;user-select:none}:root[data-motion=reduced]{--glass: color-mix(in srgb, var(--surface) 95%, transparent)}:root[data-motion=reduced] *{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}:root[data-motion=reduced] *,:root[data-motion=reduced] *:before,:root[data-motion=reduced] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}html,body,#root{height:100%}.chats-layout{display:grid;grid-template-columns:minmax(320px,400px) minmax(0,1fr);height:100dvh;overflow:hidden}@media(pointer:coarse){html,body{overscroll-behavior:none;overflow-x:hidden;max-width:100%}html{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}*{touch-action:pan-x pan-y}input,textarea,[contenteditable=true],.selectable{-webkit-user-select:text;user-select:text}.chat-header,.chat-list .topbar{position:relative;z-index:6;transform:var(--vv-shift, none)}}.chat-list-pane{min-width:0;border-right:1px solid var(--border);background:var(--surface);min-height:0;display:flex;flex-direction:column}.chat-pane{position:relative;min-width:0;min-height:0;background:var(--chat-bg);display:flex;flex-direction:column}.chat-pane[data-chatbg=default]:before,.chat-pane[data-chatbg=pattern]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.075;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160' fill='none' stroke='%237d8aa8' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M28 36c-6-8-18-2-14 8 3 7 14 14 14 14s11-7 14-14c4-10-8-16-14-8z'/%3E%3Cpath d='M112 22l4 9 10 1-7 7 2 10-9-5-9 5 2-10-7-7 10-1z'/%3E%3Ccircle cx='86' cy='94' r='7'/%3E%3Cpath d='M30 106v14M23 113h14M144 76v14M137 83h14'/%3E%3Cpath d='M108 138c0-9 14-9 14 0s-14 14-14 14-14-5-14-14 14-9 14 0z' transform='translate(-8 -6) scale(.9)'/%3E%3C/svg%3E");background-size:160px 160px}.chat-pane>.empty{position:relative;margin:auto}@media(max-width:800px){.chats-layout{grid-template-columns:minmax(0,1fr)}.chats-layout.has-chat .chat-list-pane,.chats-layout:not(.has-chat) .chat-pane{display:none}.chats-layout.has-chat .chat-pane{animation:fc-slide .34s var(--ease) backwards}}@media(min-width:801px){.chat-header .back{display:none}}.chat-list{display:flex;flex-direction:column;min-height:0;height:100%}.chat-list .topbar{border-bottom-color:transparent}.chat-list .topbar h1{font-size:1.55rem;font-weight:750;letter-spacing:-.025em}.chat-list-scroll{flex:1;overflow-y:auto;min-height:0;padding:2px 8px 12px}.icon-btn.round{background:var(--accent-grad);color:var(--accent-text);border-radius:50%;width:44px;height:44px;box-shadow:0 8px 18px -6px color-mix(in srgb,var(--accent) 65%,transparent)}.icon-btn.round:hover:not(:disabled){background:var(--accent-grad);filter:brightness(1.08);transform:scale(1.06) rotate(90deg)}.icon-btn.round:active:not(:disabled){transform:scale(.92)}.search-box{position:relative;padding:4px 14px 10px}.search-box .search-ico{position:absolute;left:28px;top:50%;margin-top:-7px;width:20px;height:20px;color:var(--muted);pointer-events:none}.search-box input,.chat-search input{width:100%;min-height:46px;padding:0 16px 0 44px;border:1.5px solid transparent;border-radius:var(--r-pill);background:var(--surface-2);color:var(--text);font:inherit;transition:border-color var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease),box-shadow var(--t-base) var(--ease)}.search-box input::placeholder,.chat-search input::placeholder{color:var(--muted)}.search-box input:focus,.chat-search input:focus{background:var(--surface);border-color:var(--accent)}.banner{display:flex;align-items:center;justify-content:center;gap:8px;margin:0;padding:7px 12px;background:color-mix(in srgb,var(--warn) 18%,var(--surface));color:color-mix(in srgb,var(--warn) 88%,var(--text));text-align:center;font-size:.875rem;font-weight:550;animation:fc-fade .3s ease-out both}.list-section{margin:0;padding:12px 16px 6px;font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-weight:650}.pad{padding:12px 16px}.chat-item{position:relative;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:12px;padding:9px 12px;min-height:72px;margin:2px 0;border-radius:var(--r-3);color:inherit;text-decoration:none;border:0;background:none;width:100%;text-align:left;font:inherit;cursor:pointer;transition:background-color var(--t-fast) var(--ease),transform var(--t-base) var(--ease),box-shadow var(--t-base) var(--ease)}@media(hover:hover){.chat-item:hover{background:var(--surface-2)}}.chat-item:active{transform:scale(.985)}.chat-item.active{background:var(--accent-grad);color:var(--accent-text);box-shadow:0 10px 22px -10px color-mix(in srgb,var(--accent) 70%,transparent)}.chat-item.active .chat-item-preview,.chat-item.active .chat-item-time,.chat-item.active .ticks{color:inherit;opacity:.86}.chat-item-body{flex:1;min-width:0}.chat-item-top,.chat-item-bottom{display:flex;align-items:center;gap:8px}.chat-item-bottom{margin-top:2px}.chat-item-title{flex:1;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-item-time{font-size:.78rem;color:var(--muted);flex:none;font-variant-numeric:tabular-nums}.chat-item.has-unread .chat-item-time{color:var(--accent);font-weight:600}.chat-item-preview{flex:1;color:var(--muted);font-size:.92rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-item.has-unread .chat-item-preview{color:var(--text-2)}.chat-item-preview.typing,.chat-header-text small.typing{color:var(--accent);font-weight:550}.chat-item.active .chat-item-preview.typing{color:inherit}.badge-unread{flex:none;min-width:22px;height:22px;padding:0 7px;border-radius:11px;background:var(--accent-grad);color:var(--accent-text);font-size:.75rem;font-weight:700;display:inline-grid;place-items:center;box-shadow:0 4px 10px -3px color-mix(in srgb,var(--accent) 70%,transparent)}.chat-item.active .badge-unread{background:var(--accent-text);color:var(--accent);box-shadow:none}.ticks{flex:none;display:inline-flex;align-items:center;color:var(--muted)}.ticks svg{width:17px;height:17px;stroke-width:2.2}.ticks.read{color:color-mix(in srgb,currentColor 35%,#2fd47e)}.chat-item .ticks.read{color:var(--ok)}.chat-item.active .ticks.read{color:inherit}.chat-skel{display:flex;align-items:center;gap:12px;padding:10px 12px;min-height:72px}.chat-skel .skeleton.round{width:52px;height:52px;border-radius:50%;flex:none}.chat-skel-lines{flex:1;display:flex;flex-direction:column;gap:9px}.chat-skel-lines .skeleton{height:12px}.chat-skel-lines .skeleton:first-child{width:46%;height:14px}.chat-skel-lines .skeleton:last-child{width:78%}.avatar-wrap{position:relative;display:inline-flex;flex:none}.online-dot{position:absolute;right:0;bottom:0;width:14px;height:14px;border-radius:50%;background:var(--ok);border:2.5px solid var(--surface);animation:fc-ring 2.4s ease-out infinite}.chat-item.active .online-dot{border-color:color-mix(in srgb,var(--accent) 90%,#000)}.avatar-saved{display:inline-grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#ffd166,#f59e0b);color:#fff;flex:none;box-shadow:inset 0 0 0 1px #ffffff40}.avatar-saved svg{width:52%;height:52%;fill:currentColor}.chat-view{position:relative;display:flex;flex-direction:column;height:100%;min-height:0}.chat-header{padding-top:max(8px,env(safe-area-inset-top))}.chat-header-main{display:flex;align-items:center;gap:12px;flex:1;min-width:0;min-height:48px;border:0;border-radius:var(--r-3);background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;padding:0 8px 0 0;transition:background-color var(--t-fast) var(--ease)}.chat-header-main:hover{background:var(--surface-2)}.chat-header-text{display:flex;flex-direction:column;min-width:0;line-height:1.25}.chat-header-text strong,.chat-header-text small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-header-text strong{font-size:1.02rem;font-weight:650}.chat-header-text small{color:var(--muted);font-size:.82rem}.chat-header .icon-btn{color:var(--text-2)}@media(max-width:800px){.chat-header{gap:10px;padding:8px 12px 6px;padding-top:max(8px,env(safe-area-inset-top));background:transparent;border-bottom:0;backdrop-filter:none;-webkit-backdrop-filter:none}.chat-header .back{order:0;flex:none;width:46px;height:46px;border-radius:50%;background:var(--glass);border:1px solid var(--glass-line);box-shadow:var(--shadow-1);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.chat-header-main{display:contents}.chat-header-text{order:1;flex:1;min-width:0;align-items:center;text-align:center;padding:5px 18px;border-radius:26px;background:var(--glass);border:1px solid var(--glass-line);box-shadow:var(--shadow-1);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.chat-header-main .avatar-wrap,.chat-header-main .avatar{order:2;flex:none}.chat-header>.icon-btn:not(.back){display:none}}.chat-search{position:relative;z-index:4;background:var(--glass);backdrop-filter:blur(18px) saturate(1.6);-webkit-backdrop-filter:blur(18px) saturate(1.6);border-bottom:1px solid var(--border);padding:8px 12px;animation:fc-rise .28s var(--ease) backwards}.chat-search input{padding-left:16px}.chat-search-row{display:flex;align-items:center;gap:6px}.chat-search-row input{flex:1;min-width:0}.chat-search-results{max-height:40vh;overflow-y:auto;margin-top:8px}.search-hit{display:flex;flex-direction:column;align-items:flex-start;width:100%;min-height:48px;padding:8px 10px;border:0;border-radius:var(--r-2);background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background-color var(--t-fast) var(--ease)}.search-hit:hover{background:var(--surface-2)}.search-hit span{color:var(--muted);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pin-bar{position:relative;z-index:3;display:flex;align-items:center;gap:12px;width:100%;min-height:52px;padding:6px 14px;border:0;border-bottom:1px solid var(--border);background:var(--glass);backdrop-filter:blur(18px) saturate(1.6);-webkit-backdrop-filter:blur(18px) saturate(1.6);color:inherit;font:inherit;text-align:left;cursor:pointer;animation:fc-rise .3s var(--ease) backwards}.pin-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.pin-icon svg{width:18px;height:18px}.pin-text{display:flex;flex-direction:column;min-width:0;line-height:1.3}.pin-text strong{color:var(--accent);font-size:.82rem;font-weight:650}.pin-text span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-2)}.messages{position:relative;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:12px 12px 8px;display:flex;flex-direction:column;gap:2px;overscroll-behavior:contain}.splash.small,.empty.small{min-height:0;padding:1rem;text-align:center;color:var(--muted)}.day-sep,.unread-divider{align-self:center;margin:12px 0 6px;font-size:.78rem;font-weight:600}.day-sep span,.msg-system span{display:inline-block;padding:4px 13px;border-radius:var(--r-pill);background:var(--glass);border:1px solid var(--glass-line);color:var(--text-2);backdrop-filter:blur(10px) saturate(1.5);-webkit-backdrop-filter:blur(10px) saturate(1.5);box-shadow:var(--shadow-1)}.unread-divider{align-self:stretch;display:flex;align-items:center;gap:12px;color:var(--accent);text-align:center}.unread-divider:before,.unread-divider:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--accent-line))}.unread-divider:after{transform:scaleX(-1)}.msg-system{align-self:center;margin:8px 0;font-size:.82rem;text-align:center}.msg-row{position:relative;display:flex;align-items:flex-end;gap:8px;max-width:100%;margin-top:1px;border-radius:var(--r-2);touch-action:pan-y;transition:background-color .35s ease,transform .24s var(--ease)}.msg-row.swiping{transition:background-color .35s ease}.swipe-reply{position:absolute;left:100%;top:50%;margin-left:12px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);pointer-events:none}@media(pointer:coarse){.bubble{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}}.msg-row.first-of-group{margin-top:9px}.msg-row.mine{justify-content:flex-end}.msg-row.selected{background:var(--accent-soft)}.msg-row.highlight{animation:fc-flash 1.8s ease-out both}.msg-avatar{flex:none;width:32px;align-self:flex-end}.msg-avatar .avatar{display:grid}.msg-row.fresh .bubble{transform-origin:0 100%;animation:fc-bubble-in .38s var(--spring) backwards}.msg-row.mine.fresh .bubble{transform-origin:100% 100%}.bubble{--r2: max(4px, calc(var(--bubble-r) * .32));max-width:min(78%,560px);background:var(--bubble-in);color:var(--bubble-in-text);border-radius:var(--bubble-r);padding:7px 12px 5px;cursor:pointer;overflow-wrap:anywhere;box-shadow:var(--shadow-1)}.msg-row:not(.mine) .bubble{border-bottom-left-radius:var(--bubble-tail)}.msg-row:not(.mine):not(.last-of-group) .bubble{border-bottom-left-radius:var(--r2)}.msg-row:not(.mine):not(.first-of-group) .bubble{border-top-left-radius:var(--r2)}:root[data-bubble-out=default] .msg-row.mine .bubble:not(.sticker-only):not(.round-only):not(.visual-only){background:var(--bubble-out-bg);background:linear-gradient(165deg,#ffffff29,#fff0 62%),color-mix(in srgb,var(--bubble-out) calc(100% - var(--t, 0) * 72%),var(--bubble-end, #ff4f93))}.msg-row.mine .bubble{background:var(--bubble-out-bg);color:var(--bubble-out-text);border-bottom-right-radius:var(--bubble-tail);box-shadow:0 6px 16px -8px color-mix(in srgb,var(--bubble-out) 70%,transparent)}.msg-row.mine:not(.last-of-group) .bubble{border-bottom-right-radius:var(--r2)}.msg-row.mine:not(.first-of-group) .bubble{border-top-right-radius:var(--r2)}.bubble.pending{opacity:.78}.bubble.failed{outline:1.5px solid var(--danger)}.bubble-sender{font-weight:650;font-size:.84rem;color:var(--accent);margin-bottom:1px}.bubble-fwd{font-size:.82rem;color:var(--accent)}.msg-row.mine .bubble-sender,.msg-row.mine .bubble-fwd{color:inherit;opacity:.9}.bubble-text{white-space:pre-wrap;line-height:1.38}.bubble-text a{color:var(--accent);text-underline-offset:2px}.msg-row.mine .bubble-text a,.msg-row.mine .mention{color:inherit;text-decoration:underline}.bubble-text code{font-family:var(--font-mono);font-size:.92em;background:color-mix(in srgb,currentColor 14%,transparent);padding:1px 5px;border-radius:6px}.rt-pre{margin:4px 0;padding:10px 12px;border-radius:var(--r-2);background:color-mix(in srgb,currentColor 12%,transparent);font-family:var(--font-mono);font-size:.9em;overflow-x:auto;white-space:pre}.mention{border:0;background:none;color:var(--accent);font:inherit;font-weight:600;padding:0;cursor:pointer}.bubble-meta{display:flex;justify-content:flex-end;align-items:center;gap:5px;font-size:.72rem;opacity:.72;margin-top:1px;font-variant-numeric:tabular-nums}.bubble-meta svg{width:13px;height:13px}.bubble-meta .ticks svg{width:17px;height:17px}.bubble-meta .failed{color:var(--danger);opacity:1}.link.small{min-height:28px;font-size:.78rem}.quote{display:flex;flex-direction:column;align-items:flex-start;width:100%;margin:2px 0 5px;padding:4px 10px;border:0;border-left:3px solid var(--accent);border-radius:4px var(--r-2) var(--r-2) 4px;background:color-mix(in srgb,currentColor 9%,transparent);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background-color var(--t-fast) var(--ease)}.quote:hover{background:color-mix(in srgb,currentColor 15%,transparent)}.msg-row.mine .quote{border-left-color:currentColor}.quote-name{font-weight:650;font-size:.82rem;color:var(--accent)}.msg-row.mine .quote-name{color:inherit}.quote-text{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;opacity:.92}.reactions{display:flex;flex-wrap:wrap;gap:4px;margin:5px 0 2px}.reaction{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:0 9px;border-radius:var(--r-pill);border:1px solid transparent;background:color-mix(in srgb,currentColor 12%,transparent);color:inherit;font:inherit;font-size:.85rem;cursor:pointer;transition:transform var(--t-fast) var(--spring),background-color var(--t-fast) var(--ease)}.reaction-emoji{font-size:1rem;line-height:1}.reaction-people{display:inline-flex}.reaction-people .avatar{margin-left:-5px;border:1.5px solid transparent;box-sizing:content-box}.reaction-people .avatar:first-child{margin-left:0}.reaction-count{font-weight:650}.reaction:hover{transform:scale(1.08)}.reaction:active{transform:scale(.94)}.reaction.mine{border-color:var(--accent);background:var(--accent-soft)}.msg-row.mine .reaction.mine{border-color:currentColor;background:color-mix(in srgb,currentColor 22%,transparent)}.check{flex:none;width:24px;height:24px;margin-bottom:4px;border-radius:50%;border:2px solid var(--border-strong);display:inline-grid;place-items:center;color:transparent;transition:background-color var(--t-fast) var(--ease),transform var(--t-base) var(--spring)}.check svg{width:14px;height:14px;stroke-width:3}.check.on{background:var(--accent);border-color:var(--accent);color:#fff;transform:scale(1.08)}.to-bottom{position:absolute;right:16px;bottom:88px;z-index:6;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:1px solid var(--glass-line);background:var(--glass);backdrop-filter:blur(14px) saturate(1.5);-webkit-backdrop-filter:blur(14px) saturate(1.5);color:var(--text);cursor:pointer;box-shadow:var(--shadow-2);animation:fc-pop .32s var(--spring) backwards;transition:transform var(--t-fast) var(--ease)}.to-bottom:hover{transform:translateY(-2px)}.to-bottom .badge-unread{position:absolute;top:-9px;right:-5px}.toast-float{position:absolute;left:50%;bottom:96px;transform:translate(-50%);z-index:8;max-width:calc(100% - 32px);padding:9px 18px;border-radius:var(--r-pill);background:color-mix(in srgb,var(--text) 92%,transparent);color:var(--bg);font-size:.92rem;font-weight:550;box-shadow:var(--shadow-3);animation:fc-toast .34s var(--ease) backwards}.toast-float.leaving{animation:fc-toast-out .26s ease-in forwards}@keyframes fc-toast-out{to{opacity:0;transform:translate(-50%,10px) scale(.96)}}@keyframes fc-toast{0%{opacity:0;transform:translate(-50%,14px) scale(.95)}to{opacity:1;transform:translate(-50%)}}.composer{position:relative;z-index:5;padding:0 10px calc(8px + env(safe-area-inset-bottom))}.composer-context{display:flex;align-items:center;gap:8px;margin:0 4px 6px;padding:6px 6px 6px 12px;border-left:3px solid var(--accent);border-radius:4px var(--r-3) var(--r-3) 4px;background:var(--glass);backdrop-filter:blur(16px) saturate(1.5);-webkit-backdrop-filter:blur(16px) saturate(1.5);box-shadow:var(--shadow-1);animation:fc-rise .26s var(--ease) backwards}.composer-context-text{flex:1;min-width:0;display:flex;flex-direction:column}.composer-context-text strong{color:var(--accent);font-size:.85rem}.composer-context-text span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-2)}.composer-row{display:flex;align-items:flex-end;gap:8px;padding:0}.composer-row .icon-btn.plain{width:46px;height:46px;border-radius:50%;background:var(--glass);border:1px solid var(--glass-line);color:var(--text-2);box-shadow:var(--shadow-1);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.composer-row .icon-btn.plain:hover:not(:disabled){color:var(--accent)}.composer-field{position:relative;flex:1;min-width:0;display:flex;align-items:flex-end;border-radius:24px;background:var(--surface);border:1.5px solid var(--border);box-shadow:var(--shadow-1);transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-base) var(--ease)}.composer-field:focus-within{border-color:var(--accent);box-shadow:var(--ring)}.composer-field .icon-btn{flex:none;width:44px;height:44px;color:var(--muted)}.composer-field .icon-btn.active,.composer-field .icon-btn:hover:not(:disabled){color:var(--accent);background:transparent}.composer-row textarea{flex:1;min-width:0;min-height:44px;max-height:160px;resize:none;padding:11px 4px 11px 16px;border:0;outline:0;background:transparent;color:var(--text);font:inherit;line-height:1.3}.composer-row textarea::placeholder{color:var(--muted)}.composer-row textarea:focus-visible{box-shadow:none;border:0!important}.btn.send{flex:none;position:relative;width:46px;min-width:46px;height:46px;min-height:46px;padding:0;border-radius:50%;overflow:hidden}.btn.send svg{position:absolute;width:22px;height:22px;transition:transform var(--t-base) var(--spring),opacity var(--t-fast) var(--ease)}.btn.send .ic-send{transform:translate(-2px) scale(1)}.btn.send.is-mic .ic-send{opacity:0;transform:translate(-2px) scale(.4) rotate(-40deg)}.btn.send.is-send .ic-mic{opacity:0;transform:scale(.4) rotate(40deg)}.btn.send.is-send:not(:disabled){animation:fc-pop .3s var(--spring)}.btn.send:disabled{background:var(--surface-3);color:var(--muted)}.emoji-panel{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));max-height:180px;overflow-y:auto;padding:6px}.emoji-panel button{min-height:44px;font-size:1.5rem;background:none;border:0;cursor:pointer}.modal-backdrop:has(.modal-sheet){align-items:end;padding:0}.modal.modal-sheet{width:min(560px,100%);border-bottom-left-radius:0;border-bottom-right-radius:0;padding-top:1.6rem;padding-bottom:max(1.1rem,env(safe-area-inset-bottom));animation:fc-sheet .42s var(--ease) backwards}.modal.modal-sheet.closing{animation:fc-sheet-out .2s ease-in both}.sheet-grab{display:none;position:absolute;top:0;left:0;right:0;height:36px;z-index:1;touch-action:none;cursor:grab}.modal.modal-sheet{transition:transform .26s var(--ease)}@media(max-width:599px){.sheet-grab{display:block}}.modal.modal-sheet:before{content:"";position:absolute;top:8px;left:50%;width:40px;height:4px;margin-left:-20px;border-radius:2px;background:var(--border-strong)}@media(min-width:600px){.modal-backdrop:has(.modal-sheet){align-items:center;padding:16px}.modal.modal-sheet{border-radius:var(--r-5);padding-top:1.3rem;animation:fc-dialog .34s var(--ease) backwards}.modal.modal-sheet.closing{animation:fc-dialog-out .18s ease-in both}.modal.modal-sheet:before{display:none}}.modal-title{margin:0;font-size:1.15rem}html.kb-open .modal-backdrop{inset:var(--vv-off, 0px) 0 auto 0;height:var(--vv-h, 100dvh);padding:8px 12px}html.kb-open .modal-backdrop:has(.modal-sheet){padding:0}html.kb-open .modal{max-height:calc(var(--vv-h, 100dvh) - 16px)}html.kb-open .modal.modal-sheet{padding-bottom:1rem}.reaction-bar{display:flex;justify-content:space-between;gap:4px;padding:4px;border-radius:var(--r-pill);background:var(--surface-2)}.reaction-bar button{flex:1;min-width:44px;min-height:48px;font-size:1.6rem;background:none;border:0;border-radius:var(--r-pill);cursor:pointer;transition:transform var(--t-base) var(--spring),background-color var(--t-fast) var(--ease);animation:fc-pop .4s var(--spring) backwards}.reaction-bar button:nth-child(2){animation-delay:.03s}.reaction-bar button:nth-child(3){animation-delay:.06s}.reaction-bar button:nth-child(4){animation-delay:.09s}.reaction-bar button:nth-child(5){animation-delay:.12s}.reaction-bar button:nth-child(6){animation-delay:.15s}.reaction-bar button:hover{transform:scale(1.22) translateY(-3px);background:var(--surface)}.menu-list{display:flex;flex-direction:column;gap:2px}.menu-list button{display:flex;align-items:center;gap:14px;min-height:52px;text-align:left;padding:0 12px;border:0;border-radius:var(--r-3);background:none;color:var(--text);font:inherit;font-weight:500;cursor:pointer;transition:background-color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.menu-list button svg{width:22px;height:22px;color:var(--muted);transition:color var(--t-fast) var(--ease)}.menu-list button:hover{background:var(--surface-2)}.menu-list button:hover svg{color:var(--accent)}.menu-list button:active{transform:scale(.985)}.menu-list button.danger{color:var(--danger)}.menu-list button.danger svg,.menu-list button.danger:hover svg{color:var(--danger)}.stack-buttons{display:flex;flex-direction:column;gap:8px}.row.end{justify-content:flex-end}.field.grow{flex:1}.field.grow>span{display:none}.pick-list{margin:0}.pick-row{display:flex;align-items:center;gap:12px;width:100%;min-height:56px;padding:0 8px;border:0;border-radius:var(--r-3);background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background-color var(--t-fast) var(--ease)}.pick-row:hover{background:var(--surface-2)}.pick-name{flex:1;min-width:0}.info-head{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.center{text-align:center}.push-banner{display:flex;gap:12px;align-items:flex-start;margin:4px 14px 8px;padding:12px 14px;border-radius:var(--r-4);background:linear-gradient(135deg,var(--accent-soft),color-mix(in srgb,#ff8fc7 11%,transparent));border:1px solid var(--accent-line);animation:fc-rise .4s var(--ease) backwards}.push-banner-icon{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:12px;background:var(--accent);color:var(--accent-text)}.push-banner-icon svg{width:20px;height:20px}.push-banner-body{display:flex;flex-direction:column;gap:8px;min-width:0}.steps{margin:0;padding-left:1.3rem;display:flex;flex-direction:column;gap:10px}.install-row{margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.install-row p{margin:0 0 8px}.person-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap}.person-action{flex:1 1 74px;max-width:120px;display:flex;flex-direction:column;align-items:center;gap:5px;padding:11px 6px 9px;border:0;border-radius:var(--r-3);background:var(--accent-soft);color:var(--accent);font:inherit;font-size:.8rem;font-weight:600;cursor:pointer;transition:transform var(--t-fast) var(--spring)}.person-action:active{transform:scale(.95)}.person-action svg{width:22px;height:22px}.person-head h2{margin:6px 0 0}.person-bio{max-width:34ch;text-align:center}.person .avatar,.person div{cursor:inherit}.person[role=button]{cursor:pointer}.share-preview{display:flex;flex-direction:column;gap:10px}.share-text{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.share-files{display:flex;gap:8px;flex-wrap:wrap}.share-file{width:84px;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:.72rem;color:var(--muted)}.share-file img,.share-file svg{width:84px;height:84px;object-fit:cover;border-radius:var(--r-2);background:var(--surface-2);padding:0}.share-file svg{padding:24px}.share-file span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-chat{width:100%;display:flex;align-items:center;gap:12px;padding:8px 4px;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.spinner{display:inline-block;width:28px;height:28px;border-radius:50%;border:3px solid rgba(255,255,255,.35);border-top-color:#fff;animation:spin .8s linear infinite}.voice-btn .spinner,.lightbox .spinner.big{width:24px;height:24px}.lightbox .spinner.big{width:44px;height:44px;border-width:4px}.spin{animation:spin .9s linear infinite}.small-text{font-size:.85rem}.danger-text{color:var(--danger)}.bubble{position:relative}.attachments{display:flex;flex-direction:column;gap:6px;min-width:0;margin:2px 0 4px}.bubble.has-media{padding-top:5px}.bubble.visual-only{padding:3px}.bubble.visual-only .attachments{margin:0}.bubble.visual-only .quote,.bubble.visual-only .bubble-sender,.bubble.visual-only .bubble-fwd{margin-left:6px;margin-right:6px}.bubble.visual-only:not(.has-reactions) .bubble-meta{position:absolute;right:10px;bottom:9px;margin:0;padding:2px 9px;border-radius:var(--r-pill);background:#080c1685;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;opacity:1}.bubble.visual-only .bubble-meta .ticks{color:#fff}.media-grid{width:min(72vw,340px);max-width:100%;display:flex;flex-direction:column;gap:2px;border-radius:calc(var(--bubble-r) - 3px);overflow:hidden}.media-row{display:flex;gap:2px;width:100%}.media-cell{position:relative;flex:1 1 0;min-width:0;display:block;padding:0;border:0;overflow:hidden;background:color-mix(in srgb,currentColor 12%,transparent);color:#fff;cursor:pointer}.media-cell img,.media-cell video{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease),filter var(--t-base) var(--ease)}.media-cell:hover img{transform:scale(1.035);filter:brightness(1.05)}.media-grid.single{width:min(72vw,340px,calc(440px * var(--ar, 1.333)))}.media-grid.single .media-cell{flex:none;width:100%}.media-cell.video-playing{cursor:default;background:#000}.media-cell.video-playing video{object-fit:contain}.media-placeholder{display:grid;place-items:center;width:100%;height:100%;min-height:96px;color:var(--muted)}.media-placeholder svg{width:34px;height:34px}.media-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;justify-items:center;gap:4px;background:#080c1666;color:#fff;text-align:center}.media-overlay.failed{background:#780e1c9e;padding:8px}.media-overlay.failed svg{width:26px;height:26px}.media-overlay small{font-size:.78rem;line-height:1.2}.media-play,.mp-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#080c1680;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;box-shadow:0 6px 18px #0000004d;transition:transform var(--t-base) var(--spring)}.media-play svg,.mp-play svg{width:24px;height:24px;margin-left:3px}.media-cell:hover .media-play,.mp-cell:hover .mp-play{transform:translate(-50%,-50%) scale(1.1)}.media-badge{position:absolute;left:7px;top:7px;padding:1px 9px;border-radius:var(--r-pill);font-size:.76rem;font-weight:600;background:#080c168c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;font-variant-numeric:tabular-nums}.progress-ring{position:relative;width:44px;height:44px;display:grid;place-items:center}.progress-ring svg{position:absolute;top:0;right:0;bottom:0;left:0}.progress-ring svg[viewBox]{width:44px;height:44px}.ring-bg{fill:#080c1666;stroke:#ffffff4d;stroke-width:3}.ring-fg{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;transition:stroke-dashoffset .25s linear}.ring-cancel,.ring-pct{position:relative;display:grid;place-items:center;background:none;border:0;color:#fff;width:44px;height:44px;cursor:pointer}.ring-cancel svg{position:static;width:18px;height:18px}.ring-pct{font-size:.78rem;cursor:default}.voice{display:flex;align-items:center;gap:10px;width:min(72vw,310px);max-width:100%;padding:2px 0}.voice-btn{flex:none;width:44px;height:44px;border-radius:50%;border:0;display:grid;place-items:center;background:var(--accent-grad);color:var(--accent-text);cursor:pointer;box-shadow:0 6px 14px -6px color-mix(in srgb,var(--accent) 70%,transparent);transition:transform var(--t-fast) var(--spring)}.voice-btn svg{width:20px;height:20px}.voice-btn:hover:not(:disabled){transform:scale(1.07)}.voice-btn:active:not(:disabled){transform:scale(.92)}.voice-btn:disabled{opacity:.6;cursor:default}.msg-row.mine .voice-btn{background:var(--bubble-out-text);color:var(--bubble-out);box-shadow:none}.voice-body{flex:1;min-width:0}.voice-wave{display:flex;align-items:center;gap:2px;height:34px;cursor:pointer}.voice-bar{flex:1 1 0;min-width:2px;border-radius:2px;background:currentColor;opacity:.3;transition:opacity .2s ease,background-color .2s ease}.voice-bar.on{background:var(--accent);opacity:1}.msg-row.mine .voice-bar.on{background:currentColor}.voice-meta{display:flex;justify-content:space-between;align-items:center;font-size:.78rem;opacity:.85;font-variant-numeric:tabular-nums}.voice-upload{display:inline-flex;align-items:center;gap:4px}.voice-upload svg{width:14px;height:14px}.voice-rate{flex:none;min-width:46px;min-height:34px;padding:0 8px;border-radius:var(--r-pill);border:0;background:color-mix(in srgb,currentColor 13%,transparent);color:inherit;font:inherit;font-size:.82rem;font-weight:650;cursor:pointer;transition:background-color var(--t-fast) var(--ease)}.voice-rate:hover{background:color-mix(in srgb,currentColor 22%,transparent)}.file-card{display:flex;align-items:center;gap:2px;width:min(72vw,330px);max-width:100%}.file-main{flex:1;min-width:0;min-height:56px;display:flex;align-items:center;gap:12px;padding:2px 0;border:0;background:none;color:inherit;font:inherit;text-align:left;text-decoration:none;cursor:pointer}.file-icon,.mp-ico{flex:none;width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);overflow:hidden}.file-icon svg,.mp-ico svg{width:24px;height:24px}.file-icon.k-pdf,.mp-ico.k-pdf{background:color-mix(in srgb,#e5484d 15%,transparent);color:#e5484d}.file-icon.k-archive,.mp-ico.k-archive{background:color-mix(in srgb,#f08a24 16%,transparent);color:#e0791a}.file-icon.k-doc,.mp-ico.k-doc{background:color-mix(in srgb,#2f81f7 15%,transparent);color:#2f81f7}.file-icon.k-sheet,.mp-ico.k-sheet{background:color-mix(in srgb,#2fa44f 16%,transparent);color:#2a9347}.file-icon.k-slides,.mp-ico.k-slides{background:color-mix(in srgb,#e5489d 15%,transparent);color:#e5489d}.file-icon.k-audio,.mp-ico.k-audio,.mp-ico.k-link{background:color-mix(in srgb,#7c5cff 15%,transparent);color:#7c5cff}.msg-row.mine .file-icon{background:color-mix(in srgb,currentColor 18%,transparent);color:inherit}.file-icon.has-thumb{background:none}.file-icon img{width:100%;height:100%;object-fit:cover}.file-text{min-width:0;display:flex;flex-direction:column}.file-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;overflow-wrap:normal;font-weight:600}.file-text small{opacity:.78}.file-progress{display:block;height:3px;margin-top:4px;border-radius:2px;background:color-mix(in srgb,currentColor 22%,transparent)}.file-progress span{display:block;height:100%;border-radius:2px;background:var(--accent);transition:width .25s linear}.msg-row.mine .file-progress span{background:currentColor}.file-action{flex:none;width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:50%;background:none;color:var(--accent);text-decoration:none;cursor:pointer;transition:background-color var(--t-fast) var(--ease)}.file-action svg{width:22px;height:22px}.file-action:hover{background:var(--accent-soft)}.msg-row.mine .file-action{color:inherit}.msg-row.mine .file-action:hover{background:color-mix(in srgb,currentColor 16%,transparent)}.sticker-img{width:168px;max-width:56vw;min-height:72px}.sticker-img img{display:block;width:100%;height:auto;filter:drop-shadow(0 4px 8px rgba(0,0,0,.12))}.sticker-placeholder{display:grid;place-items:center;width:100%;height:100%;min-height:96px;font-size:3rem}.bubble.sticker-only{background:transparent;box-shadow:none;padding:0}.bubble.sticker-only .bubble-meta{position:absolute;right:4px;bottom:4px;margin:0;padding:1px 9px;border-radius:var(--r-pill);background:#080c1673;color:#fff;opacity:1}.bubble.sticker-only .ticks{color:#fff}.location-card{display:block;width:min(72vw,300px);max-width:100%;color:inherit}.location-map-link{display:block;border-radius:calc(var(--bubble-r) - 4px);overflow:hidden;color:inherit;text-decoration:none}.location-text{display:flex;flex-direction:column;padding:8px 2px 0}.location-text small{opacity:.78}.location-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.location-open{display:inline-flex;align-items:center;gap:5px;min-height:34px;padding:0 12px;border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent);font-size:.86rem;font-weight:600;text-decoration:none;transition:background-color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.location-open:hover{background:color-mix(in srgb,var(--accent) 22%,transparent)}.location-open:active{transform:scale(.95)}.location-open svg{width:16px;height:16px}.msg-row.mine .location-open{background:color-mix(in srgb,currentColor 16%,transparent);color:inherit}.osm-map{position:relative;overflow:hidden;background:#d8dee3;border-radius:calc(var(--bubble-r) - 4px);-webkit-user-select:none;user-select:none}.osm-map.interactive{width:100%;height:100%;border-radius:0;touch-action:none;cursor:grab}.osm-tile{position:absolute;width:256px;height:256px;max-width:none;pointer-events:none}.osm-pin{position:absolute;left:50%;top:50%;width:34px;height:44px;margin:-44px 0 0 -17px;pointer-events:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 42'%3E%3Cpath d='M16 1C7.700 1 1 7.600 1 15.800 1 27 16 41 16 41s15-14 15-25.200C31 7.600 24.300 1 16 1z' fill='%23e53935' stroke='%23fff' stroke-width='2'/%3E%3Ccircle cx='16' cy='15.800' r='5.500' fill='%23fff'/%3E%3C/svg%3E") no-repeat center / contain;filter:drop-shadow(0 3px 4px rgba(0,0,0,.4))}.osm-map.interactive .osm-pin{animation:fc-pin .5s var(--spring) backwards}@keyframes fc-pin{0%{transform:translateY(-18px);opacity:0}to{transform:none;opacity:1}}.osm-credit{position:absolute;right:4px;bottom:2px;padding:0 6px;border-radius:6px;font-size:.68rem;background:#ffffffd1;color:#333;pointer-events:none}.osm-zoom{position:absolute;right:12px;top:12px;display:flex;flex-direction:column;gap:8px}.osm-zoom button,.map-locate{display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--glass-line);border-radius:14px;background:var(--glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--text);box-shadow:var(--shadow-2);cursor:pointer;transition:transform var(--t-fast) var(--ease)}.osm-zoom button:active:not(:disabled),.map-locate:active:not(:disabled){transform:scale(.92)}.osm-zoom button svg,.map-locate svg{width:22px;height:22px}.osm-zoom button:disabled{opacity:.45}.map-locate{position:absolute;right:12px;bottom:30px;border-radius:50%;color:var(--accent)}.fullscreen-dialog{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;flex-direction:column;background:var(--bg);color:var(--text);animation:fc-rise .34s var(--ease) backwards}.location-map{position:relative;flex:1;min-height:0}.location-footer{padding:12px 14px calc(14px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--border);box-shadow:0 -10px 30px -18px #141c3259}.location-status{margin:0 0 8px;text-align:center;color:var(--muted);font-size:.88rem;font-variant-numeric:tabular-nums}.location-status.error{color:var(--danger)}.location-title{width:100%;min-height:46px;margin-bottom:10px;padding:0 14px;border:1.5px solid transparent;border-radius:var(--r-3);background:var(--surface-2);color:var(--text);font:inherit}.location-actions{display:flex;flex-wrap:wrap;gap:8px}.location-actions .btn{flex:1 1 180px}.lightbox.closing{animation:fc-fade-out .21s ease-in both;pointer-events:none}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:flex;flex-direction:column;background:#05080ef0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:#fff;animation:fc-fade .25s ease-out both}.lightbox-bar{position:relative;z-index:2;display:flex;align-items:center;gap:10px;padding:max(10px,env(safe-area-inset-top)) 12px 10px;background:linear-gradient(#0000009e,#0000)}.lightbox-title{flex:1;min-width:0;display:flex;flex-direction:column}.lightbox-title strong,.lightbox-title small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lightbox-title small{opacity:.75}.lightbox-btn{flex:none;width:46px;height:46px;display:grid;place-items:center;border:0;border-radius:50%;background:#ffffff21;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;text-decoration:none;cursor:pointer;transition:background-color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.lightbox-btn svg{width:22px;height:22px}.lightbox-btn:hover{background:#ffffff38}.lightbox-btn:active{transform:scale(.9)}.lightbox-stage{position:relative;flex:1;min-height:0;display:grid;place-items:center;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none}.lightbox-stage img,.lightbox-stage video{max-width:100%;max-height:100%;object-fit:contain;transition:transform .15s ease-out;animation:fc-fade .3s ease-out both}.lightbox-stage.zoomed img{cursor:grab;transition:none}.lightbox-nav{position:absolute;top:50%;z-index:2;display:grid;place-items:center;width:46px;height:66px;margin-top:-33px;border:0;border-radius:14px;background:#ffffff21;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;cursor:pointer;transition:background-color var(--t-fast) var(--ease)}.lightbox-nav svg{width:28px;height:28px}.lightbox-nav:hover{background:#ffffff3d}.lightbox-nav.prev{left:10px}.lightbox-nav.next{right:10px}.lightbox-caption{position:relative;z-index:2;max-height:32vh;overflow-y:auto;padding:12px 16px calc(14px + env(safe-area-inset-bottom));background:linear-gradient(#0000,#000000b3)}.lightbox-caption p{margin:0 0 6px;white-space:pre-wrap}.lightbox-caption .link{color:#8ec1ff;min-height:36px;text-decoration:underline}.staged{margin:0 4px 8px;padding:10px 10px 4px;border-radius:var(--r-4);background:var(--glass);border:1px solid var(--glass-line);backdrop-filter:blur(16px) saturate(1.5);-webkit-backdrop-filter:blur(16px) saturate(1.5);box-shadow:var(--shadow-1);animation:fc-rise .3s var(--ease) backwards}.staged-items{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px}.staged-item{position:relative;flex:none;display:flex;align-items:center;gap:8px;height:76px;min-width:76px;max-width:240px;padding-right:10px;border-radius:var(--r-3);background:var(--surface);box-shadow:var(--shadow-1);overflow:hidden;animation:fc-pop .34s var(--spring) backwards}.staged-item img{width:76px;height:76px;margin-right:-10px;object-fit:cover}.staged-item img.editable{cursor:pointer}.staged-item.image:has(img){padding-right:0}.staged-icon{flex:none;width:66px;height:76px;display:grid;place-items:center;color:var(--accent)}.staged-icon svg{width:30px;height:30px}.staged-name{min-width:0;display:flex;flex-direction:column;font-size:.9rem;line-height:1.25;overflow:hidden;text-overflow:ellipsis;padding-right:28px}.staged-name small{color:var(--muted)}.staged-remove{position:absolute;right:4px;top:4px;display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:50%;background:#080c169e;color:#fff;cursor:pointer;transition:transform var(--t-fast) var(--ease)}.staged-remove svg{width:15px;height:15px}.staged-remove:hover{transform:scale(1.12)}.staged-toggle{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;min-height:44px;cursor:pointer}.staged-toggle input{width:22px;height:22px;accent-color:var(--accent)}.staged-toggle small{color:var(--muted)}.recording-row{align-items:center;min-height:60px;padding:7px 8px 7px 6px;border-radius:32px;background:var(--surface);border:1.5px solid var(--border);box-shadow:var(--shadow-2);animation:fc-rise .28s var(--ease) backwards}.rec-dot{flex:none;width:12px;height:12px;border-radius:50%;background:var(--danger);animation:blink 1s infinite;box-shadow:0 0 0 4px color-mix(in srgb,var(--danger) 22%,transparent)}.rec-time{flex:none;min-width:3.3em;font-variant-numeric:tabular-nums;font-weight:650}.rec-wave{flex:1;min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:2px;height:36px;overflow:hidden}.rec-wave span{flex:none;width:3px;border-radius:2px;background:var(--accent)}.icon-btn.active{color:var(--accent)}.panel-wrap{margin:0 4px 8px;border-radius:var(--r-4);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-2);overflow:hidden;animation:fc-sheet .34s var(--ease) backwards}.panel-wrap .emoji-panel{border-bottom:0}.panel-tabs{display:flex;gap:4px;padding:6px 6px 0;border-bottom:1px solid var(--border)}.panel-tabs button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;border:0;border-bottom:3px solid transparent;border-radius:var(--r-2) var(--r-2) 0 0;background:none;color:var(--muted);font:inherit;font-weight:500;cursor:pointer;transition:color var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease),border-color var(--t-base) var(--ease)}.panel-tabs button svg{width:20px;height:20px}.panel-tabs button:hover{background:var(--surface-2)}.panel-tabs button.on{color:var(--accent);border-bottom-color:var(--accent);font-weight:650}.sticker-panel{display:flex;flex-direction:column;height:280px}.sticker-tabs{flex:none;display:flex;gap:4px;padding:4px 8px;overflow-x:auto;border-bottom:1px solid var(--border)}.sticker-tabs button{flex:none;width:46px;height:46px;display:grid;place-items:center;border:0;border-radius:var(--r-2);background:none;color:var(--text);font-size:1.15rem;cursor:pointer;transition:background-color var(--t-fast) var(--ease)}.sticker-tabs button:hover{background:var(--surface-2)}.sticker-tabs button.on{background:var(--accent-soft)}.sticker-tabs .tab-add{color:var(--accent);font-size:1.4rem}.sticker-grid{flex:1;min-height:0;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:4px;align-content:start;padding:8px}.sticker-thumb{display:grid;place-items:center;min-height:78px;padding:3px;border:0;border-radius:var(--r-2);background:none;cursor:pointer;transition:background-color var(--t-fast) var(--ease),transform var(--t-base) var(--spring)}.sticker-thumb:hover{background:var(--surface-2);transform:scale(1.06)}.sticker-thumb.static{min-height:0;padding:0;cursor:default}.sticker-thumb.static:hover{transform:none;background:none}.sticker-thumb img{display:block;width:100%;max-width:72px;height:auto}.sticker-tabs .sticker-thumb img{max-width:30px}.sticker-empty{grid-column:1 / -1;text-align:center;padding:28px 12px}.packs-dialog{display:flex;flex-direction:column;gap:14px;max-height:72dvh;overflow-y:auto}.pack-create input{flex:1;min-width:0;min-height:46px;padding:0 14px;border:1.5px solid transparent;border-radius:var(--r-3);background:var(--surface-2);color:var(--text);font:inherit}.pack-editor{display:flex;flex-direction:column;gap:8px;padding-top:12px;border-top:1px solid var(--border)}.pack-editor header{display:flex;align-items:center;justify-content:space-between;gap:8px}.pack-stickers{display:flex;flex-wrap:wrap;gap:8px}.pack-sticker{position:relative}.sticker-remove{position:absolute;right:-6px;top:-6px;display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:50%;background:var(--danger);color:#fff;cursor:pointer;box-shadow:var(--shadow-1)}.emoji-input{width:64px;min-height:46px;text-align:center;border:1.5px solid transparent;border-radius:var(--r-3);background:var(--surface-2);color:var(--text);font:inherit}.drop-overlay{position:absolute;top:8px;right:8px;bottom:8px;left:8px;z-index:30;display:grid;place-items:center;border:3px dashed var(--accent);border-radius:var(--r-5);background:color-mix(in srgb,var(--accent) 14%,var(--glass));backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:var(--accent);font-size:1.15rem;font-weight:650;text-align:center;padding:16px;pointer-events:none;animation:fc-fade .2s ease-out both}.storage-bar{height:12px;margin:10px 0 12px;border-radius:6px;background:var(--surface-3);overflow:hidden}.storage-bar span{display:block;height:100%;border-radius:6px;background:var(--accent-grad);transition:width var(--t-slow) var(--ease)}.storage-bar.warn span{background:var(--danger)}.storage-stats{margin:0 0 8px;display:grid;gap:6px}.storage-stats div{display:flex;justify-content:space-between;gap:12px}.storage-stats dt{color:var(--muted)}.storage-stats dd{margin:0;font-weight:600;text-align:right}.storage-banner{border-color:color-mix(in srgb,var(--danger) 45%,transparent);background:color-mix(in srgb,var(--danger) 9%,var(--surface))}.bubble.has-poll{min-width:min(76vw,300px)}.msg-row .bubble{--ring-bg: var(--bubble-in)}.msg-row.mine .bubble{--ring-bg: var(--bubble-out)}.poll{width:min(76vw,340px);max-width:100%;padding-top:2px}.poll-kind{display:flex;align-items:center;gap:6px;margin-bottom:4px;font-size:.78rem;font-weight:600;opacity:.75}.poll-kind svg{width:15px;height:15px}.poll-question{margin-bottom:10px;font-size:1.04rem;font-weight:650;line-height:1.3;overflow-wrap:anywhere}.poll-options{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.poll-option{position:relative;display:flex;align-items:center;gap:10px;width:100%;min-height:46px;padding:6px 12px 6px 10px;border:0;border-radius:var(--r-3);background:color-mix(in srgb,currentColor 9%,transparent);color:inherit;font:inherit;text-align:left;overflow:hidden;cursor:pointer;transition:background-color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.poll-option:hover:not(:disabled){background:color-mix(in srgb,currentColor 14%,transparent)}.poll-option:active:not(:disabled){transform:scale(.985)}.poll-option:disabled{cursor:default}.poll-bar{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:color-mix(in srgb,var(--accent) 22%,transparent);transform-origin:left center;transform:scaleX(var(--p, 0));transition:transform .7s var(--ease);pointer-events:none}.msg-row.mine .poll-bar{background:color-mix(in srgb,currentColor 22%,transparent)}.poll-option.on .poll-bar{background:color-mix(in srgb,var(--accent) 34%,transparent)}.msg-row.mine .poll-option.on .poll-bar{background:color-mix(in srgb,currentColor 32%,transparent)}.poll-mark{position:relative;flex:none;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;border:2px solid color-mix(in srgb,currentColor 42%,transparent);transition:background-color var(--t-base) var(--ease),border-color var(--t-base) var(--ease),transform var(--t-base) var(--spring)}.poll-option.multi .poll-mark{border-radius:7px}.poll-mark svg{width:14px;height:14px;stroke-width:3.2;transform:scale(.3);opacity:0;transition:transform var(--t-base) var(--spring),opacity var(--t-fast) var(--ease)}.poll-option.on .poll-mark{background:var(--accent);border-color:var(--accent);color:var(--accent-text);transform:scale(1.06)}.poll-option.on .poll-mark svg{transform:none;opacity:1}.msg-row.mine .poll-option.on .poll-mark{background:var(--bubble-out-text);border-color:var(--bubble-out-text);color:var(--bubble-out)}.poll-text{position:relative;flex:1;min-width:0;line-height:1.3;overflow-wrap:anywhere}.poll-side{position:relative;flex:none;display:flex;align-items:center;gap:8px}.poll-faces{display:inline-flex;padding-left:6px}.poll-faces .avatar{margin-left:-6px;box-shadow:0 0 0 2px var(--ring-bg)}.poll-pct{min-width:2.5em;text-align:right;font-size:.88rem;font-weight:650;font-variant-numeric:tabular-nums}.poll-option.leading .poll-text,.poll-option.leading .poll-pct{font-weight:750}.poll-foot{display:flex;align-items:center;justify-content:space-between;gap:4px 12px;flex-wrap:wrap;margin-top:8px;font-size:.82rem;opacity:.9}.poll-actions{display:flex;gap:14px}.poll-link{min-height:28px;padding:4px 0;border:0;background:none;color:var(--accent);font:inherit;font-weight:600;cursor:pointer}.msg-row.mine .poll-link{color:inherit;text-decoration:underline;text-underline-offset:3px}.poll-error{margin:6px 0 0;color:var(--danger);font-size:.85rem}.msg-row.mine .poll-error{color:inherit;font-weight:650}.poll-who-question{margin:0;font-weight:650}.poll-who{display:flex;flex-direction:column;gap:4px;max-height:52dvh;overflow-y:auto}.poll-who h3{display:flex;justify-content:space-between;gap:12px;margin:12px 0 6px;font-size:1rem}.poll-who h3 small{color:var(--muted);font-size:.9rem;font-weight:600}.poll-who .person{padding:4px 0}.poll-dialog{display:flex;flex-direction:column;gap:10px}.poll-question-field{margin:0}.poll-edit-head{display:flex;justify-content:space-between;align-items:baseline;margin-top:4px;color:var(--text-2);font-size:.875rem;font-weight:500}.poll-edit-head small{color:var(--muted);font-variant-numeric:tabular-nums}.poll-edit-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.poll-edit-list li{display:flex;align-items:center;gap:8px;animation:fc-rise .28s var(--ease) backwards}.poll-edit-mark{display:grid;place-items:center;flex:none;width:24px;color:var(--accent)}.poll-edit-mark svg{width:20px;height:20px}.poll-edit-list input{flex:1;min-width:0;min-height:46px;padding:0 14px;border:1.5px solid transparent;border-radius:var(--r-3);background:var(--surface-2);color:var(--text);font:inherit;transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-base) var(--ease)}.poll-edit-list .icon-btn{color:var(--muted)}.poll-add{align-self:flex-start}.poll-hint{margin:0;font-size:.85rem}.attach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.attach-tile{display:flex;flex-direction:column;align-items:center;gap:9px;padding:14px 6px 12px;border:0;border-radius:var(--r-4);background:var(--surface-2);color:var(--text);font:inherit;font-size:.88rem;font-weight:550;text-align:center;cursor:pointer;animation:fc-pop .42s var(--spring) backwards;transition:transform var(--t-base) var(--spring),background-color var(--t-fast) var(--ease)}.attach-tile:nth-child(2){animation-delay:.04s}.attach-tile:nth-child(3){animation-delay:.08s}.attach-tile:nth-child(4){animation-delay:.12s}.attach-tile:nth-child(5){animation-delay:.16s}.attach-tile:nth-child(6){animation-delay:.2s}.attach-tile:hover{background:var(--surface-3);transform:translateY(-3px)}.attach-tile:active{transform:scale(.95)}.attach-ico{display:grid;place-items:center;width:56px;height:56px;border-radius:19px;color:#fff;box-shadow:0 10px 18px -8px var(--tile, #2f81f7)}.attach-ico svg{width:27px;height:27px}.attach-tile.blue{--tile: #2f6fed}.attach-tile.blue .attach-ico{background:linear-gradient(145deg,#5aa9ff,#2f6fed)}.attach-tile.indigo{--tile: #5b4be0}.attach-tile.indigo .attach-ico{background:linear-gradient(145deg,#8b7bff,#5b4be0)}.attach-tile.green{--tile: #1fa35b}.attach-tile.green .attach-ico{background:linear-gradient(145deg,#4cd08a,#1fa35b)}.attach-tile.orange{--tile: #f0701e}.attach-tile.orange .attach-ico{background:linear-gradient(145deg,#ffb04c,#f0701e)}.attach-tile.pink{--tile: #e5489d}.attach-tile.pink .attach-ico{background:linear-gradient(145deg,#ff7eb6,#e5489d)}.attach-tile.violet{--tile: #7c3aed}.attach-tile.violet .attach-ico{background:linear-gradient(145deg,#b58bff,#7c3aed)}.attach-quick h3{margin:4px 0 8px;color:var(--muted);font-size:.75rem;font-weight:650;letter-spacing:.07em;text-transform:uppercase}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0}.chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px 0 12px;border:1.5px solid transparent;border-radius:var(--r-pill);background:var(--surface-2);color:inherit;font:inherit;font-weight:550;cursor:pointer;transition:background-color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.chip svg{width:18px;height:18px;color:var(--accent)}.chip:hover:not(:disabled){background:var(--accent-soft)}.chip:active:not(:disabled){transform:scale(.95)}.chip:disabled{opacity:.6;cursor:default}.chip.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;justify-content:flex-end;background:var(--overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:fc-fade .22s ease-out both}.drawer{width:min(560px,100%);height:100%;display:flex;flex-direction:column;background:var(--bg);box-shadow:var(--shadow-pop);animation:fc-drawer .44s var(--ease) backwards}.drawer-backdrop.closing{animation:fc-fade-out .22s ease-in both;pointer-events:none}.drawer-backdrop.closing .drawer{animation:fc-drawer-out .22s var(--ease) both}@keyframes fc-drawer-out{to{opacity:0;transform:translate(48px)}}@keyframes fc-drawer{0%{opacity:0;transform:translate(48px)}to{opacity:1;transform:none}}.media-panel .topbar h1{display:flex;flex-direction:column;line-height:1.2;font-size:1.1rem}.media-panel .topbar h1 small{overflow:hidden;text-overflow:ellipsis;color:var(--muted);font-size:.8rem;font-weight:500}.media-tabs{display:flex;flex:none;gap:8px;padding:10px 14px;overflow-x:auto;background:var(--surface);border-bottom:1px solid var(--border)}.media-tab{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:0 14px;border:0;border-radius:var(--r-pill);background:var(--surface-2);color:var(--text-2);font:inherit;font-weight:550;cursor:pointer;transition:background-color var(--t-base) var(--ease),color var(--t-base) var(--ease),transform var(--t-fast) var(--ease),box-shadow var(--t-base) var(--ease)}.media-tab:hover:not(.on){background:var(--surface-3)}.media-tab:active{transform:scale(.95)}.media-tab.on{background:var(--accent-grad);color:var(--accent-text);box-shadow:0 8px 16px -8px color-mix(in srgb,var(--accent) 70%,transparent)}.media-tab-count{font-size:.78rem;opacity:.8;font-variant-numeric:tabular-nums}.media-body{flex:1;min-height:0;overflow-y:auto;padding:6px 14px 28px;animation:fc-fade .28s ease-out both}.mp-month{margin:16px 2px 8px;color:var(--muted);font-size:.78rem;font-weight:650;letter-spacing:.07em;text-transform:uppercase}.mp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:4px}.mp-cell{position:relative;aspect-ratio:1;padding:0;border:0;border-radius:var(--r-2);background:var(--surface-2);color:#fff;overflow:hidden;cursor:pointer;animation:fc-pop .4s var(--ease) backwards}.mp-cell img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}.mp-cell:hover img{transform:scale(1.07)}.mp-cell-ph{display:grid;place-items:center;width:100%;height:100%;color:var(--muted)}.mp-play{width:40px;height:40px}.mp-play svg{width:18px;height:18px;margin-left:2px}.mp-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.mp-row{display:flex;align-items:center;gap:4px;padding:6px 4px 6px 10px;border:1px solid var(--border);border-radius:var(--r-3);background:var(--surface);box-shadow:var(--shadow-1);animation:fc-rise .34s var(--ease) backwards}.mp-main{flex:1;min-width:0;display:flex;align-items:center;gap:12px;min-height:58px;color:inherit;text-decoration:none}.mp-text{min-width:0;display:flex;flex-direction:column}.mp-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.mp-text small{color:var(--muted)}.mp-url{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--accent);font-size:.9rem}.mp-caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-2);font-size:.88rem}.mp-state{display:grid;justify-items:center;gap:12px;padding:44px 16px;color:var(--muted);text-align:center}.mp-state>svg:not(.empty-art){width:32px;height:32px}.mp-state p{margin:0}.mp-more{display:grid;place-items:center;min-height:52px}.mp-skel-cell{aspect-ratio:1;border-radius:var(--r-2)}.mp-skel-row{height:72px;border-radius:var(--r-3)}.mp-voice{flex:1;min-width:0;display:flex;flex-direction:column}.mp-voice small{color:var(--muted)}.voice-row{padding-right:4px}.voice-row .voice{width:100%}.msg-skeletons{display:flex;flex-direction:column;gap:8px;padding:6px 0}.msg-skeletons .skeleton{align-self:flex-start;border-radius:18px;background:linear-gradient(90deg,var(--glass) 30%,color-mix(in srgb,var(--surface) 90%,transparent) 50%,var(--glass) 70%);background-size:300% 100%}.msg-skeletons .skeleton.mine{align-self:flex-end}.chat-empty{margin:auto 0;padding:24px 16px}.chat-empty p{display:inline-block;margin:0;padding:6px 16px;border-radius:var(--r-pill);background:var(--glass);color:var(--text-2);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.modal:focus{outline:0}.search-box.flat .search-ico{left:16px}.card h2{margin-bottom:.6rem}.info-media{width:100%;justify-content:flex-start;padding-left:18px}.save-status{display:inline-flex;align-items:center;gap:5px}.save-status svg{width:15px;height:15px;color:var(--ok)}.status-on{display:flex;align-items:center;gap:8px;margin:0 0 10px;color:var(--ok);font-weight:600}.status-on svg,.ops-level svg,.ops-checks svg{width:18px;height:18px;flex:none}.ops-level{display:inline-flex;align-items:center;gap:6px}.ops-checks li svg{margin-top:2px}.ops-level.ok svg,.ops-checks .ok svg{color:var(--ok)}.device-icon svg{width:26px;height:26px;color:var(--accent)}.device-push{display:flex;align-items:center;gap:8px}.device-push svg{width:17px;height:17px}.btn svg+*,.btn>svg{flex:none}.contact-edit svg,.btn.small svg{width:17px;height:17px}.gif-remove svg,.sticker-remove svg{width:14px;height:14px}.sticker-tabs button svg{width:22px;height:22px}.sticker-tabs .tab-add svg{width:24px;height:24px}.emoji-groups button svg{width:21px;height:21px;color:var(--muted)}.emoji-groups button.on svg{color:var(--accent)}.editor-tools button svg{width:18px;height:18px}.check.big svg{width:20px;height:20px;stroke-width:3}.check.big{color:var(--border-strong)}.check.big.on{color:#fff}.cal-empty-day{display:flex;align-items:center;gap:8px}.cal-empty-day svg{width:18px;height:18px}.push-banner .btn{white-space:nowrap}.topbar>.btn.secondary.small{padding-left:8px}.attach-tile:nth-child(7){animation-delay:.24s}.attach-tile:nth-child(8){animation-delay:.28s}.attach-tile.red{--tile: #e5484d}.attach-tile.red .attach-ico{background:linear-gradient(145deg,#ff8a8f,#e5484d)}.attach-tile.teal{--tile: #0e9f8e}.attach-tile.teal .attach-ico{background:linear-gradient(145deg,#3fd6c3,#0e9f8e)}@media(min-width:560px){.attach-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:559px){.attach-grid{grid-template-columns:repeat(6,1fr)}.attach-tile{grid-column:span 2}.attach-tile:nth-child(7):nth-last-child(2){grid-column:2 / span 2}.attach-tile:nth-child(8):last-child{grid-column:4 / span 2}}.quick-bar{display:flex;align-items:flex-start;gap:8px;margin:0 -10px 8px;animation:fc-rise .26s var(--ease) backwards}.quick-bar>.quick-chip.edit{margin:2px 12px 0 0}.quick-scroll{flex:1 1 auto;min-width:0;display:flex;gap:8px;padding:2px 12px 4px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 12px,#000 calc(100% - 22px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 12px,#000 calc(100% - 22px),transparent 100%)}.quick-scroll::-webkit-scrollbar{display:none}.quick-chip{flex:none;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border:1px solid var(--glass-line);border-radius:var(--r-pill);background:var(--glass);backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);box-shadow:var(--shadow-1);color:var(--text);font:inherit;font-size:.93rem;font-weight:550;white-space:nowrap;cursor:pointer;transition:transform var(--t-fast) var(--spring),background-color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.quick-chip:hover{border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:var(--accent-soft);color:var(--accent)}.quick-chip:active{transform:scale(.94)}.quick-chip.edit{width:42px;padding:0;color:var(--muted)}.quick-chip.edit svg{width:17px;height:17px}.quick-preview{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 12px}.quick-preview .quick-chip{min-height:36px;padding:0 13px;font-size:.88rem;cursor:default;pointer-events:none}.quick-dialog{display:flex;flex-direction:column;gap:10px}.quick-lead{margin:0;font-size:.9rem}.quick-edit-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;max-height:42dvh;overflow-y:auto}.quick-edit-list li{display:flex;align-items:center;gap:8px;animation:fc-rise .28s var(--ease) backwards}.quick-edit-list input{flex:1;min-width:0;min-height:46px;padding:0 14px;border:1.5px solid transparent;border-radius:var(--r-3);background:var(--surface-2);color:var(--text);font:inherit;transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-base) var(--ease)}.quick-edit-list .icon-btn{color:var(--muted)}.quick-tools{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px}.quick-tools .link{margin-left:auto}.msg-row .bubble.sticker-only{background:transparent;box-shadow:none}.msg-leaving{overflow:hidden;pointer-events:none}.composer-row .cam-btn{animation:fc-pop .34s var(--spring) backwards}.round-video{position:relative;flex:none;width:min(62vw,240px);max-width:100%;aspect-ratio:1}.round-ring-bar{fill:none;stroke:var(--accent);stroke-width:2.6;stroke-linecap:round;opacity:0;transition:stroke-dashoffset .25s linear,opacity var(--t-base) var(--ease)}.round-video.playing .round-ring-bar{opacity:1}.msg-row.mine .bubble:not(.round-only) .round-ring-bar{stroke:var(--bubble-out-text)}.round-hit{position:absolute;top:4%;right:4%;bottom:4%;left:4%;padding:0;border:0;border-radius:50%;overflow:hidden;background:color-mix(in srgb,currentColor 14%,transparent);color:#fff;box-shadow:0 10px 26px -12px #0000008c;cursor:pointer;transition:transform var(--t-base) var(--spring)}.round-hit:active:not(:disabled){transform:scale(.97)}.round-hit:disabled{cursor:default}.round-hit video,.round-hit img{display:block;width:100%;height:100%;object-fit:cover}.round-hit .media-placeholder{min-height:0}.round-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#080c1680;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 6px 18px #0000004d;transition:transform var(--t-base) var(--spring)}.round-play svg{width:26px;height:26px;margin-left:3px}.round-hit:hover:not(:disabled) .round-play{transform:translate(-50%,-50%) scale(1.1)}.round-time-badge{position:absolute;left:50%;bottom:9%;transform:translate(-50%);padding:1px 10px;border-radius:var(--r-pill);background:#080c168c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;font-size:.78rem;font-weight:600;font-variant-numeric:tabular-nums}.msg-row .bubble.round-only{background:transparent;box-shadow:none;padding:0;color:var(--text)}.bubble.round-only .reactions{margin:6px 0 0}.bubble.round-only .attachments{margin:0}.bubble.round-only .bubble-meta{position:absolute;right:6px;bottom:6px;margin:0;padding:1px 9px;border-radius:var(--r-pill);background:#080c1680;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;opacity:1}.bubble.round-only .ticks{color:#fff}.bubble.has-round:not(.round-only){padding:6px 8px 5px}.round-capture{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:calc(16px + env(safe-area-inset-top)) 16px calc(16px + env(safe-area-inset-bottom));overscroll-behavior:contain;touch-action:none;background:#060910e0;backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);color:#fff;outline:0;animation:fc-fade .24s ease-out backwards}.round-capture-body{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:420px}.round-stage{position:relative;width:min(82vw,380px,48dvh);aspect-ratio:1;animation:fc-pop .46s var(--spring) backwards}.round-ring{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;width:100%;height:100%;pointer-events:none}.round-ring-track{fill:none;stroke:#ffffff38;stroke-width:2.4}.round-capture .round-ring-bar{opacity:1;stroke:var(--danger);stroke-width:2.8;transition:stroke-dashoffset .12s linear}.round-stage.review .round-ring-bar{stroke:#4cd08a}.round-view{position:absolute;top:3%;right:3%;bottom:3%;left:3%;display:block;width:94%;height:94%;border-radius:50%;object-fit:cover;background:#000;box-shadow:0 24px 60px -24px #000000bf}.round-view[hidden]{display:none}.round-view.mirror{transform:scaleX(-1)}.round-wait{position:absolute;top:3%;right:3%;bottom:3%;left:3%;z-index:1;display:grid;place-content:center;justify-items:center;gap:8px;border-radius:50%;background:#080c1699}.round-time{display:flex;align-items:center;gap:8px;font-size:1.15rem;font-variant-numeric:tabular-nums}.round-time small{opacity:.65;font-size:.9rem}.round-hint{margin:0;font-size:.88rem;text-align:center;opacity:.75}.round-actions{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:4px}.round-btn{display:grid;place-items:center;width:54px;height:54px;padding:0;border:0;border-radius:50%;background:#ffffff24;color:#fff;cursor:pointer;transition:transform var(--t-fast) var(--spring),background-color var(--t-fast) var(--ease),opacity var(--t-fast) var(--ease)}.round-btn svg{width:24px;height:24px}.round-btn:hover:not(:disabled){background:#ffffff3d}.round-btn:active:not(:disabled){transform:scale(.92)}.round-btn:disabled{opacity:.4;cursor:default}.round-btn.send{width:68px;height:68px;background:var(--accent-grad);color:var(--accent-text);box-shadow:0 12px 26px -10px var(--accent)}.round-btn.send svg{width:28px;height:28px;margin-left:-2px}@media(max-height:560px){.round-stage{width:min(82vw,380px,42dvh)}.round-hint{display:none}}.task{width:min(76vw,320px);max-width:100%;padding-top:2px}.task-kind{display:flex;align-items:center;gap:6px;margin-bottom:4px;font-size:.78rem;font-weight:600;opacity:.85}.task-kind svg{width:15px;height:15px}.task-state{margin-left:auto;padding:1px 9px;border-radius:var(--r-pill);background:color-mix(in srgb,currentColor 14%,transparent);font-size:.72rem;font-weight:650;transition:background-color var(--t-base) var(--ease)}.task-state.taken{background:color-mix(in srgb,#f0a020 34%,transparent)}.task-state.done{background:color-mix(in srgb,#1fa35b 38%,transparent)}.task-title{margin-bottom:4px;font-size:1.04rem;font-weight:650;line-height:1.3;overflow-wrap:anywhere}.task.done .task-title{opacity:.85;text-decoration:line-through;text-decoration-color:color-mix(in srgb,currentColor 45%,transparent)}.task-note{margin-bottom:4px;font-size:.92rem;line-height:1.35;white-space:pre-wrap;overflow-wrap:anywhere;opacity:.85}.task-main{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:46px;margin-top:8px;padding:0 16px;border:0;border-radius:var(--r-3);background:var(--accent);color:var(--accent-text);font:inherit;font-weight:650;cursor:pointer;transition:transform var(--t-fast) var(--spring),filter var(--t-fast) var(--ease),opacity var(--t-fast) var(--ease)}.task-main svg{width:19px;height:19px}.msg-row.mine .task-main{background:var(--bubble-out-text);color:var(--bubble-out)}.task-main:hover:not(:disabled){filter:brightness(1.07)}.task-main:active:not(:disabled){transform:scale(.98)}.task-main:disabled{opacity:.6;cursor:default}.task-owner{display:flex;align-items:center;gap:10px;margin-top:8px;padding:8px 10px;border-radius:var(--r-3);background:color-mix(in srgb,currentColor 9%,transparent);animation:fc-pop .4s var(--spring) backwards}.task-owner-text{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.25}.task-owner-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-owner-text small{opacity:.8}.task-check{flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#1fa35b;color:#fff;animation:fc-pop .5s var(--spring) backwards}.task-check svg{width:16px;height:16px;stroke-width:3.2}.task-actions{display:flex;align-items:center;flex-wrap:wrap;gap:4px 14px}.task-actions .task-main{flex:1;width:auto;min-width:120px}.task-link{min-height:32px;margin-top:6px;padding:4px 0;border:0;background:none;color:var(--accent);font:inherit;font-weight:600;cursor:pointer}.task-link:disabled{opacity:.6;cursor:default}.msg-row.mine .task-link{color:inherit;text-decoration:underline;text-underline-offset:3px}.task-error{margin:6px 0 0;color:var(--danger);font-size:.85rem}.msg-row.mine .task-error{color:inherit;font-weight:650}.task-dialog{display:flex;flex-direction:column;gap:4px}.task-examples{margin:0 0 4px}.field textarea{min-height:84px;padding:11px .95rem;border:1.5px solid transparent;border-radius:var(--r-3);background:var(--surface-2);color:var(--text);font:inherit;line-height:1.35;resize:vertical;transition:border-color var(--t-fast) var(--ease),box-shadow var(--t-base) var(--ease)}.field textarea:hover{border-color:var(--border-strong)}.assign-lead{margin:0 0 2px;font-size:.9rem}.assign-items,.assign-people{max-height:24dvh;overflow-y:auto}.assign-items .pick-row .check{margin-bottom:0}.archive-card{margin:6px 12px 8px;padding:10px 10px 10px 14px;border:1px solid var(--glass-line);border-radius:var(--r-4);background:var(--glass);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);box-shadow:var(--shadow-1);animation:fc-rise .3s var(--ease) backwards}.archive-card header{display:flex;align-items:center;justify-content:space-between;gap:8px}.archive-card header strong{display:inline-flex;align-items:center;gap:7px;font-size:.95rem}.archive-card header strong svg{width:17px;height:17px;color:var(--accent)}.archive-strip{display:flex;gap:8px;margin:8px 4px 2px 0;padding-bottom:2px;overflow-x:auto;scrollbar-width:none}.archive-strip::-webkit-scrollbar{display:none}.archive-thumb{position:relative;flex:none;width:84px;height:84px;padding:0;border:0;border-radius:var(--r-3);overflow:hidden;background:var(--surface-3);cursor:pointer;transition:transform var(--t-base) var(--spring)}.archive-thumb:hover{transform:scale(1.04)}.archive-thumb:active{transform:scale(.96)}.archive-thumb img{display:block;width:100%;height:100%;object-fit:cover}.archive-badge{position:absolute;left:5px;bottom:5px;padding:1px 7px;border-radius:var(--r-pill);background:#080c1694;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;font-size:.72rem;font-weight:650}.archive-event{display:flex;align-items:center;gap:7px;margin:8px 4px 0 0;font-size:.88rem;color:var(--text-2)}.archive-event svg{flex:none;width:16px;height:16px;color:var(--accent)}.archive-share{position:absolute;left:0;right:0;bottom:0;z-index:5;max-height:62%;display:flex;flex-direction:column;padding:10px 12px calc(12px + env(safe-area-inset-bottom));border-radius:var(--r-5, 22px) var(--r-5, 22px) 0 0;background:var(--surface);color:var(--text);box-shadow:var(--shadow-pop);animation:fc-sheet .34s var(--ease) backwards}.archive-share-head{display:flex;align-items:center;justify-content:space-between;padding:0 4px 6px}.archive-share-head .lightbox-btn{background:var(--surface-2);color:var(--text)}.archive-share-list{list-style:none;margin:0;padding:0;overflow-y:auto}.conn-badge{position:fixed;z-index:40;top:calc(env(safe-area-inset-top,0px) + 6px);right:8px;display:inline-flex;align-items:center;gap:4px;height:26px;min-width:26px;padding:0 7px;border:0;border-radius:999px;font:inherit;font-size:12px;font-weight:600;color:#fff;background:color-mix(in srgb,var(--warn) 90%,#000);box-shadow:var(--shadow-1);cursor:pointer;animation:fc-fade .2s ease-out both}.conn-badge[data-state=connecting]{background:color-mix(in srgb,var(--accent) 88%,#000)}.conn-badge svg{width:15px;height:15px}.conn-badge .spin{animation:spin .9s linear infinite}.conn-badge b{font-size:11px}.conn-badge-text{white-space:nowrap}.banner.notice{justify-content:space-between;text-align:left;background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--text)}.banner.notice .icon-btn{flex:none;width:28px;height:28px}@media(hover:hover)and (pointer:fine){.quick-scroll{scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--muted) 50%,transparent) transparent;padding-bottom:8px;-webkit-mask-image:none;mask-image:none}.quick-scroll::-webkit-scrollbar{display:block;height:6px}.quick-scroll::-webkit-scrollbar-thumb{border-radius:3px;background:color-mix(in srgb,var(--muted) 50%,transparent)}}.chat-pin{flex:none;width:14px;height:14px;margin-left:6px;color:var(--muted)}.chat-item-top .chat-more{display:none;flex:none;align-items:center;justify-content:center;width:26px;height:26px;margin-left:4px;border-radius:50%;color:var(--muted);cursor:pointer}.chat-item-top .chat-more svg{width:16px;height:16px}@media(hover:hover)and (pointer:fine){.chat-item:hover .chat-more,.chat-item:focus-within .chat-more{display:inline-flex}.chat-item-top .chat-more:hover{background:var(--accent-soft);color:var(--accent)}}.chat-actions{display:flex;flex-direction:column;gap:10px}.chat-actions .btn{display:inline-flex;align-items:center;justify-content:flex-start;gap:10px}.chat-actions .btn.secondary.danger{color:var(--danger)}.chat-item{min-height:80px;gap:14px;margin:0;border-radius:0}@media(max-width:800px){.chat-item{padding-left:14px;padding-right:14px}}.chat-item:after{content:"";position:absolute;left:86px;right:0;bottom:0;height:1px;background:var(--border)}.chat-item.active:after,.chat-item:last-of-type:after{display:none}.chat-item-title{font-size:1.04rem;font-weight:700}.chat-item-top .ticks{margin-right:-2px}.chat-item-top .ticks svg{width:17px;height:17px}.chat-item-who{margin-top:1px;font-size:.93rem;font-weight:550;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-item.active .chat-item-who{color:inherit}.chat-item-bottom .chat-pin{flex:none;width:17px;height:17px;margin:0;color:var(--muted);transform:rotate(45deg)}.chat-item.active .chat-item-bottom .chat-pin{color:inherit}.chat-item-preview{min-width:0}:root{--bubble-r: 18px;--bubble-tail: 6px}:root[data-radius=square]{--bubble-r: 6px;--bubble-tail: 2px}:root[data-radius=round]{--bubble-r: 24px;--bubble-tail: 8px}.app-content>.page,.app-content>.scroll-page,.app-content>.tool-layout{animation:fc-fade .28s ease-out both}.app-content>.scroll-page>.page{animation:fc-rise .4s var(--ease) backwards}.reaction,.badge-unread,.nav-badge{animation:fc-pop .34s var(--spring) backwards}.scroll-page{height:100%;overflow-y:auto}.scroll-page>.page{min-height:100%}.link-card{display:flex;align-items:center;justify-content:space-between;gap:12px}.link-card .btn{flex:none}.badge.accent{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.accounts-list li{flex-wrap:nowrap;padding-block:.4rem}.account-main{flex:1 1 auto;min-width:0;padding:6px 8px;margin-inline:-8px;border:0;border-radius:var(--r-md, 12px);background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background .18s var(--ease, ease)}.account-main:not(:disabled):hover{background:var(--surface-2)}.account-main:disabled{cursor:default}.account-main .account-text{display:flex;flex-direction:column;min-width:0;flex:1 1 auto}.account-main .account-text strong,.account-main .account-text .muted{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-open{flex:none;color:var(--accent);font-size:.85rem;font-weight:600}.account-main .badge,.account-out{flex:none}.accounts-card .btn svg{width:1.1em;height:1.1em;vertical-align:-.2em}.card h3.sub{margin:1rem 0 .5rem;font-size:.92rem;color:var(--muted);font-weight:600}.gap-top{margin-top:1rem}.search-box.flat{padding:0}.search-box.flat input{width:100%}.contacts-page .contact-list li{gap:10px}.contact-text{min-width:0}.contact-text strong{overflow-wrap:anywhere}.nickname-field{margin-top:4px}.device-card{display:flex;flex-direction:column;gap:10px}.device-card.current{border-color:var(--accent)}.device-head{display:flex;align-items:center;gap:12px}.device-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--bg);font-size:1.5rem}.device-title{flex:1;min-width:0}.device-title strong{overflow-wrap:anywhere}.device-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px 16px;margin:0}.device-facts dt{color:var(--muted);font-size:.8rem}.device-facts dd{margin:0;font-size:.95rem}.device-push{margin:0;color:var(--muted);font-size:.9rem}.device-push.on{color:var(--ok)}.appearance-preview{background:var(--chat-bg);border-radius:var(--radius);padding:16px;display:flex;flex-direction:column;gap:8px;min-height:150px;margin-top:10px;border:1px solid var(--border)}.pv-row{display:flex}.pv-row.mine{justify-content:flex-end}.pv-bubble{max-width:80%;padding:6px 10px;box-shadow:0 1px 1px #00000014}.pv-bubble.in{background:var(--bubble-in);color:var(--bubble-in-text);border-radius:var(--bubble-r) var(--bubble-r) var(--bubble-r) var(--bubble-tail)}.pv-bubble.out{background:var(--bubble-out-bg);color:var(--bubble-out-text);border-radius:var(--bubble-r) var(--bubble-r) var(--bubble-tail) var(--bubble-r)}.pv-meta{font-size:.72rem;opacity:.7;margin-left:6px}.swatches{display:flex;flex-wrap:wrap;gap:10px}.swatch{position:relative;width:44px;height:44px;border-radius:50%;border:2px solid var(--border);padding:0;cursor:pointer;display:grid;place-items:center;color:var(--text);font:inherit;font-size:1.1rem;overflow:hidden}.swatch.on{border-color:var(--text);box-shadow:0 0 0 3px var(--accent)}.swatch.auto{width:auto;min-width:44px;padding:0 14px;border-radius:22px;background:var(--bg);font-size:.88rem}.swatch.custom{background:conic-gradient(#e5484d,#f08a24,#f5d90a,#2fa44f,#12a594,#2f81f7,#7c5cff,#e5489d,#e5484d);color:#fff;text-shadow:0 0 3px rgba(0,0,0,.6)}.swatch.custom input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;height:100%;cursor:pointer}.ops-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.ops-level{padding:4px 12px;border-radius:999px;font-size:.85rem;font-weight:600;background:var(--bg);border:1px solid var(--border)}.ops-level.ok{color:var(--ok)}.ops-level.warn{color:#b7791f}.ops-level.fail{color:var(--danger)}.ops-checks{list-style:none;margin:.6rem 0;padding:0;display:flex;flex-direction:column;gap:8px}.ops-checks li{display:flex;gap:10px;align-items:flex-start}.ops-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px 16px;margin:.6rem 0}.ops-facts dt{color:var(--muted);font-size:.8rem}.ops-facts dd{margin:0;font-weight:600}.ops-errors{list-style:none;margin:0 0 8px;padding:0}.ops-errors .link{text-align:left;min-height:36px;overflow-wrap:anywhere}.ops-detail{margin:0 0 8px;padding:8px;background:var(--bg);border-radius:8px;font-size:.75rem;white-space:pre-wrap;overflow-wrap:anywhere;max-height:160px;overflow:auto}.emoji-picker{display:flex;flex-direction:column;height:300px}.emoji-top{flex:none;display:flex;align-items:center;gap:8px;padding:8px 10px 4px}.emoji-top input{flex:1;min-height:40px;padding:0 .8rem;border:1px solid var(--border);border-radius:20px;background:var(--bg);color:var(--text);font:inherit}.skin-wrap{position:relative}.skin-btn{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--border);border-radius:50%;background:var(--bg);cursor:pointer;padding:0}.skin-btn span{width:22px;height:22px;border-radius:50%;border:1px solid rgba(0,0,0,.2)}.skin-pop{position:absolute;right:0;bottom:46px;z-index:3;display:flex;gap:6px;padding:8px;border-radius:14px;background:var(--surface);border:1px solid var(--border);box-shadow:0 6px 18px #0000002e}.skin-pop button{width:32px;height:32px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0}.skin-pop button.on{border-color:var(--text)}.emoji-groups{flex:none;display:flex;gap:2px;padding:2px 8px;overflow-x:auto;border-bottom:1px solid var(--border)}.emoji-groups button{flex:none;width:42px;height:40px;border:0;border-bottom:3px solid transparent;background:none;font-size:1.2rem;cursor:pointer}.emoji-groups button.on{border-bottom-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.emoji-grid{flex:1;min-height:0;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(42px,1fr));align-content:start;gap:2px;padding:6px 8px}.emoji-grid button{min-height:42px;border:0;border-radius:10px;background:none;font-size:1.5rem;line-height:1;cursor:pointer}.emoji-grid button:hover,.emoji-grid button:focus-visible{background:color-mix(in srgb,var(--text) 10%,transparent)}.emoji-empty{grid-column:1 / -1;text-align:center;padding:28px 12px}.gif-panel{display:flex;flex-direction:column;height:300px}.gif-toolbar{flex:none;display:flex;align-items:center;gap:10px;padding:8px 10px;flex-wrap:wrap}.gif-grid{flex:1;min-height:0;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:6px;align-content:start;padding:6px 10px 10px}.gif-empty{grid-column:1 / -1;text-align:center;padding:24px 12px}.gif-tile{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--bg)}.gif-pick{width:100%;height:100%;padding:0;border:0;background:none;cursor:pointer;display:block}.gif-pick img{width:100%;height:100%;object-fit:cover;display:block}.gif-placeholder{color:var(--muted);font-weight:700}.gif-remove{position:absolute;top:4px;right:4px;width:26px;height:26px;border:0;border-radius:50%;background:#0000008c;color:#fff;font-size:.75rem;cursor:pointer;opacity:0;transition:opacity .15s ease}.gif-tile:hover .gif-remove,.gif-remove:focus-visible{opacity:1}@media(pointer:coarse){.gif-remove{opacity:.85}}html[data-hide~=avatars] .msg-avatar,html[data-hide~=names] .bubble-sender{display:none}html[data-hide~=time] .bubble-meta time,html[data-hide~=time] .pv-time{display:none}html[data-hide~=ticks] .bubble-meta .ticks,html[data-hide~=ticks] .pv-ticks,html[data-hide~=preview] .chat-item-preview,html[data-hide~=archive] .archive-card,html[data-hide~=round] [data-act=round]{display:none}html[data-hide~=pattern] .chat-pane:before{display:none}html[data-hide~=nav-contacts] .nav-item[data-nav=contacts],html[data-hide~=nav-notes] .nav-item[data-nav=notes],html[data-hide~=nav-lists] .nav-item[data-nav=lists],html[data-hide~=nav-calendar] .nav-item[data-nav=calendar],html[data-hide~=nav-labels] .nav-item .nav-label{display:none}html[data-hide~=nav-labels] .nav-item{padding-block:8px}html[data-density=compact] .msg-row.first-of-group{margin-top:5px}html[data-density=compact] .msg-row{margin-top:0}html[data-density=compact] .bubble{padding:4px 10px 3px}html[data-density=compact] .bubble-text{line-height:1.3}html[data-density=compact] .bubble-sender{margin-bottom:1px}html[data-density=compact] .chat-item{min-height:60px;padding-block:6px;margin:0}html[data-density=compact] .list-row{padding-block:4px}.wp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:10px}.wp-tile{position:relative;aspect-ratio:3 / 4;border-radius:16px;border:2px solid var(--border);padding:0;overflow:hidden;cursor:pointer;font:inherit;transition:transform var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.wp-tile:active{transform:scale(.97)}.wp-tile.on{border-color:var(--text);box-shadow:0 0 0 3px var(--accent)}.wp-bubble{position:absolute;height:13px;border-radius:8px;box-shadow:0 1px 2px #0000001f}.wp-bubble.in{left:8px;top:14px;width:52%;background:var(--bubble-in)}.wp-bubble.out{right:8px;top:34px;width:44%;background:var(--bubble-out)}.wp-name{position:absolute;left:0;right:0;bottom:0;padding:4px 4px 5px;font-size:.68rem;font-weight:600;line-height:1.15;text-align:center;color:var(--text);background:color-mix(in srgb,var(--surface) 82%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.theme-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:12px}.theme-card{position:relative;height:156px;border-radius:20px;border:2px solid transparent;padding:0;overflow:hidden;cursor:pointer;font:inherit;box-shadow:var(--shadow-1);transition:transform var(--t-base) var(--ease),box-shadow var(--t-base) var(--ease)}.theme-card:active{transform:scale(.97)}@media(hover:hover){.theme-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}}.theme-card.on{border-color:var(--text);box-shadow:0 0 0 3px var(--accent),var(--shadow-2)}.tc-bar{position:absolute;inset:0 0 auto 0;height:28px;display:flex;align-items:center;gap:7px;padding:0 10px}.tc-bar i{width:12px;height:12px;border-radius:50%}.tc-bar b{width:38%;height:6px;border-radius:4px;opacity:.55}.tc-bubble{position:absolute;height:20px;border-radius:12px;box-shadow:0 1px 3px #00000024}.tc-bubble.in{left:10px;top:42px;width:58%}.tc-bubble.out{right:10px;top:70px;width:50%}.tc-name{position:absolute;left:8px;right:8px;bottom:8px;padding:5px 8px;border-radius:11px;font-size:.78rem;font-weight:650;text-align:center;box-shadow:var(--shadow-1)}.palette-chips{display:flex;flex-wrap:wrap;gap:12px 10px}.palette-chip{display:flex;flex-direction:column;align-items:center;gap:6px;width:72px;padding:0;background:none;border:none;color:var(--text-2);font:inherit;font-size:.76rem;cursor:pointer}.pc-dot{width:46px;height:46px;border-radius:50%;border:2px solid var(--border-strong);transition:transform var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.palette-chip:active .pc-dot{transform:scale(.94)}.palette-chip.on .pc-dot{box-shadow:0 0 0 3px var(--accent);border-color:var(--text)}.palette-chip.on .pc-name{color:var(--text);font-weight:650}.pc-hint{width:100%;margin:2px 0 0;font-size:.85rem}.info-bg-row{display:flex;align-items:center;gap:10px;width:100%;margin-top:10px;padding:12px 14px;border-radius:var(--r-3);border:1px solid var(--border);background:var(--surface-2);color:var(--text);font:inherit;text-align:left;cursor:pointer}.info-bg-row svg{width:20px;height:20px;color:var(--accent);flex:none}.info-bg-row span{flex:1}.ticks-btn{display:inline-flex;align-items:center;padding:0;margin:0;background:none;border:none;color:inherit;font:inherit;cursor:pointer;border-radius:6px}.ticks-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.readers-summary{margin:0 0 4px}.readers-list .person{display:flex;align-items:center;gap:12px}.reader-mark{display:inline-flex;color:var(--muted)}.reader-mark svg{width:20px;height:20px}.reader-mark.read{color:var(--accent)}.app-icons{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:12px}.app-icon-tile{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px 8px;border:2px solid transparent;border-radius:18px;background:var(--surface-2);color:var(--text-2);font:inherit;font-size:.78rem;cursor:pointer;transition:transform var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}.app-icon-tile img{width:60px;height:60px;border-radius:16px;box-shadow:var(--shadow-1)}.app-icon-tile:active{transform:scale(.96)}.app-icon-tile.on{border-color:var(--accent);color:var(--text);font-weight:650;box-shadow:0 0 0 3px var(--accent-soft)}:root{--ease-ios: cubic-bezier(.32, .72, 0, 1);--route-ms: .32s}.route-stack,.route-layer{height:100%;min-height:0}.route-stack.overlay:not(.animating),.route-stack.overlay:not(.animating)>.route-layer{display:contents}.app-content>.route-stack{flex:1 1 0;min-height:0}.route-stack.animating{position:relative;overflow:hidden;isolation:isolate}.route-stack.overlay.animating{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;height:auto;background:var(--bg)}.route-stack.animating>.route-layer{position:absolute;top:0;right:0;bottom:0;left:0;height:auto;overflow-x:hidden;background:var(--bg);will-change:transform,opacity}.route-stack.overlay.animating>.route-layer.current{overflow-y:auto}.route-stack.animating>.route-layer.leaving{overflow:hidden;pointer-events:none}.route-stack.animating>.route-layer .route-shift{min-height:100%}.route-stack[data-dir=forward]>.route-layer.current{z-index:2;animation:rs-in-right var(--route-ms) var(--ease-ios) both;box-shadow:-12px 0 32px #080c1838}.route-stack[data-dir=forward]>.route-layer.leaving{z-index:1;animation:rs-out-left var(--route-ms) var(--ease-ios) both}.route-stack[data-dir=back]>.route-layer.leaving{z-index:2;animation:rs-out-right var(--route-ms) var(--ease-ios) both;box-shadow:-12px 0 32px #080c1838}.route-stack[data-dir=back]>.route-layer.current{z-index:1;animation:rs-in-left var(--route-ms) var(--ease-ios) both}.route-stack[data-dir=swap]>.route-layer.current{z-index:2;animation:rs-fade-in .26s var(--ease) both}.route-stack[data-dir=swap]>.route-layer.leaving{z-index:1;animation:rs-fade-out .2s ease-out both}@keyframes rs-in-right{0%{transform:translate3d(100%,0,0)}}@keyframes rs-out-left{to{transform:translate3d(-26%,0,0);filter:brightness(.8)}}@keyframes rs-out-right{to{transform:translate3d(100%,0,0)}}@keyframes rs-in-left{0%{transform:translate3d(-26%,0,0);filter:brightness(.8)}}@keyframes rs-fade-in{0%{opacity:0;transform:translate3d(0,10px,0) scale(.995)}}@keyframes rs-fade-out{to{opacity:0}}@media(min-width:801px){.route-stack[data-dir=forward]>.route-layer.current,.route-stack[data-dir=back]>.route-layer.current{animation:rs-fade-in .28s var(--ease) both;box-shadow:none}.route-stack[data-dir=forward]>.route-layer.leaving,.route-stack[data-dir=back]>.route-layer.leaving{animation:rs-fade-out .2s ease-out both;box-shadow:none}}.chats-layout{position:relative}@media(max-width:800px){.chats-layout.closing-chat .chat-pane{display:flex;position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;background:var(--bg);box-shadow:-12px 0 32px #080c1838;pointer-events:none;animation:rs-out-right var(--route-ms) var(--ease-ios) both}.chats-layout.closing-chat .chat-list-pane,.tool-layout.closing-detail .tool-list-pane{animation:rs-in-left var(--route-ms) var(--ease-ios) both}.tool-layout{position:relative}.tool-layout.closing-detail .tool-detail-pane{display:flex;position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;background:var(--bg);box-shadow:-12px 0 32px #080c1838;pointer-events:none;animation:rs-out-right var(--route-ms) var(--ease-ios) both}.chats-layout.has-chat .chat-pane,.tool-layout.has-detail .tool-detail-pane{animation:rs-in-right var(--route-ms) var(--ease-ios) backwards}}@media(min-width:801px){.chat-pane>.chat-view,.chat-pane>.empty,.tool-detail-pane>*{animation:rs-fade-in .24s var(--ease) backwards}}.collapse{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .26s var(--ease),opacity .2s ease}.collapse.open{grid-template-rows:1fr;opacity:1}.collapse>.collapse-inner{min-height:0;overflow:hidden}:root[data-motion=reduced] .route-stack,:root[data-motion=reduced] .route-layer,:root[data-motion=reduced] .collapse{animation:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){.route-stack,.route-layer,.collapse{animation:none!important;transition:none!important}}.call-audio-box{position:fixed;width:0;height:0;overflow:hidden;pointer-events:none}.call-incoming{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:grid;place-items:center;color:#fff;background:#0b0f17;animation:call-fade var(--t-base) var(--ease) backwards}.call-incoming-bg{position:absolute;top:-30px;right:-30px;bottom:-30px;left:-30px;background:radial-gradient(900px 600px at 50% 18%,color-mix(in srgb,var(--accent) 38%,#0b0f17),#0b0f17 70%) center / cover;filter:blur(34px) saturate(1.2);opacity:.9}.call-incoming-body{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;padding:24px 20px calc(24px + env(safe-area-inset-bottom));text-align:center;max-width:420px}.call-incoming h2{margin:18px 0 0;font-size:1.7rem;font-weight:700;overflow-wrap:anywhere}.call-incoming p{margin:0;opacity:.78;font-size:1.02rem}.call-pulse{position:relative;border-radius:50%}.call-pulse:before,.call-pulse:after{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:50%;border:2px solid rgba(255,255,255,.45);animation:call-pulse 2.2s ease-out infinite}.call-pulse:after{animation-delay:1.1s}.call-incoming-actions{display:flex;gap:22px;margin-top:44px;align-items:flex-start;justify-content:center;flex-wrap:wrap}.call-round{display:flex;flex-direction:column;align-items:center;gap:8px;border:0;background:none;color:#fff;font:inherit;font-size:.85rem;cursor:pointer;max-width:110px}.call-round svg{box-sizing:content-box;width:28px;height:28px;padding:18px;border-radius:50%;transition:transform var(--t-fast) var(--ease),filter var(--t-fast)}.call-round:hover svg{filter:brightness(1.1);transform:scale(1.05)}.call-round:active svg{transform:scale(.95)}.call-round.accept svg{background:#20b25d}.call-round.decline svg{background:#e5484d}.call-round.neutral svg{background:#fff3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.call-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1990;display:flex;flex-direction:column;color:#fff;background:radial-gradient(1000px 640px at 70% -10%,color-mix(in srgb,var(--accent) 22%,#0b0f17),#0b0f17 62%);animation:call-fade var(--t-base) var(--ease) backwards;padding-top:env(safe-area-inset-top)}.call-top{display:flex;align-items:center;gap:10px;padding:10px 12px}.call-title{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;line-height:1.25}.call-title strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem}.call-title small{opacity:.75;font-variant-numeric:tabular-nums}.call-icon{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:#ffffff1f;color:#fff;cursor:pointer}.call-icon:hover{background:#fff3}.call-quality{width:40px;height:40px;display:grid;place-items:center}.call-quality:before{content:"";width:12px;height:12px;border-radius:50%;background:#8b93a3}.call-quality.q-excellent:before,.call-quality.q-good:before{background:#3ecf7b;box-shadow:0 0 10px #3ecf7b88}.call-quality.q-poor:before{background:#f0b33c}.call-quality.q-lost:before{background:#e5484d}.call-stage{position:relative;flex:1;min-height:0;display:grid;gap:8px;padding:0 8px 8px}.call-stage.duo{grid-template:1fr / 1fr}.call-stage.grid.g3,.call-stage.grid.g4{grid-template:1fr 1fr / 1fr 1fr}.call-stage.grid.g5{grid-template:1fr 1fr 1fr / 1fr 1fr}.call-stage.with-share{grid-template:1fr auto / 1fr}.call-strip{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.call-strip .call-tile.pip{position:relative;inset:auto;width:132px;height:92px;flex:none}.call-waiting{display:grid}.call-tile{position:relative;overflow:hidden;border-radius:var(--r-4);background:#161b26;display:grid;place-items:center;min-height:0;border:2px solid transparent;transition:border-color var(--t-base)}.call-tile.speaking{border-color:color-mix(in srgb,var(--accent) 80%,#fff)}.call-tile video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;background:#000}.call-tile.screen video{object-fit:contain}.call-tile video.mirror{transform:scaleX(-1)}.call-tile.pip{position:absolute;right:14px;bottom:14px;width:112px;height:152px;border-radius:var(--r-3);box-shadow:var(--shadow-3);z-index:2}.call-tile-avatar{display:grid;place-items:center}.call-tile-label{position:absolute;left:8px;bottom:8px;display:flex;align-items:center;gap:5px;max-width:calc(100% - 16px);padding:3px 9px;border-radius:var(--r-pill);background:#080b129e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:.8rem}.call-tile-label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.call-tile.pip .call-tile-label{font-size:.7rem;padding:1px 7px}.call-sound{align-self:center;display:flex;align-items:center;gap:8px;margin:0 0 10px;padding:10px 18px;border:0;border-radius:var(--r-pill);background:var(--accent);color:var(--accent-text);font:inherit;cursor:pointer}.call-controls{display:flex;justify-content:center;gap:14px;padding:12px 12px calc(16px + env(safe-area-inset-bottom));flex-wrap:wrap}.call-ctl{display:grid;place-items:center;width:56px;height:56px;border:0;border-radius:50%;background:#ffffff29;color:#fff;cursor:pointer;transition:transform var(--t-fast) var(--ease),background var(--t-fast)}.call-ctl:hover{background:#ffffff42}.call-ctl:active{transform:scale(.94)}.call-ctl.off{background:#fff;color:#151922}.call-ctl.on{background:var(--accent)}.call-ctl.hangup{background:#e5484d}.call-ctl.hangup:hover{background:#f0575c}.call-devices{position:absolute;left:50%;bottom:calc(96px + env(safe-area-inset-bottom));transform:translate(-50%);width:min(360px,calc(100% - 24px));max-height:60%;overflow:auto;padding:12px;border-radius:var(--r-4);background:#181d28f5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--shadow-pop);z-index:5}.call-devices-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.call-devices-group{display:flex;flex-direction:column;gap:2px;margin-top:8px}.call-devices-group small{opacity:.6;margin-bottom:2px}.call-devices-group button{text-align:left;border:0;border-radius:var(--r-2);padding:8px 10px;background:transparent;color:#fff;font:inherit;cursor:pointer}.call-devices-group button:hover{background:#ffffff1a}.call-devices-group button.active{background:color-mix(in srgb,var(--accent) 55%,transparent)}.call-mini{position:fixed;top:calc(8px + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:1980;display:flex;align-items:stretch;border-radius:var(--r-pill);background:#20b25d;color:#fff;box-shadow:var(--shadow-3);overflow:hidden;max-width:calc(100% - 20px)}.call-mini button{border:0;background:none;color:inherit;font:inherit;cursor:pointer}.call-mini-main{display:flex;align-items:center;gap:8px;padding:8px 12px 8px 14px;min-width:0}.call-mini-main span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.call-mini-main b{font-variant-numeric:tabular-nums}.call-mini-end{display:grid;place-items:center;padding:0 12px;background:#e5484d!important}.call-toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translate(-50%);z-index:2100;max-width:min(420px,calc(100% - 24px));padding:10px 16px;border-radius:var(--r-3);background:#151922f0;color:#fff;box-shadow:var(--shadow-3);text-align:center;animation:call-fade var(--t-base) var(--ease) backwards}.call-toast.warn{background:color-mix(in srgb,var(--danger) 82%,#1a0d10)}.call-banner{display:flex;align-items:center;gap:10px;padding:8px 14px;background:color-mix(in srgb,var(--ok) 16%,var(--surface));border-bottom:1px solid color-mix(in srgb,var(--ok) 35%,transparent);color:var(--text)}.call-banner svg{color:var(--ok);flex:none}.call-banner-text{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.25}.call-banner-text small{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.msg-call{align-self:center;display:flex;align-items:center;gap:10px;margin:8px auto;padding:8px 12px 8px 10px;max-width:min(420px,92%);border-radius:var(--r-4);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-1)}.msg-call-icon{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:50%;background:var(--accent-soft);color:var(--accent)}.msg-call-icon svg{width:18px;height:18px}.msg-call.missed .msg-call-icon{background:color-mix(in srgb,var(--danger) 14%,transparent);color:var(--danger)}.msg-call.missed strong{color:var(--danger)}.msg-call-text{display:flex;flex-direction:column;min-width:0;line-height:1.25}.msg-call-text small{color:var(--muted)}.msg-call-action{display:inline-flex;align-items:center;gap:6px;flex:none;margin-left:4px;padding:6px 10px;border:1px solid var(--accent-line);border-radius:var(--r-pill);background:var(--accent-softer);color:var(--accent);font:inherit;font-size:.85rem;cursor:pointer}.msg-call-action:hover{background:var(--accent-soft)}@keyframes call-fade{0%{opacity:0;transform:scale(.985)}}@keyframes call-pulse{0%{transform:scale(.96);opacity:.8}to{transform:scale(1.5);opacity:0}}@media(max-width:640px){.call-stage.grid.g3,.call-stage.grid.g4,.call-stage.grid.g5{grid-template:none;grid-template-columns:1fr 1fr;grid-auto-rows:minmax(0,1fr)}.call-tile.pip{width:92px;height:128px;right:12px;bottom:12px}.call-controls{gap:10px}.call-ctl{width:52px;height:52px}}@media(prefers-reduced-motion:reduce){.call-pulse:before,.call-pulse:after{animation:none}}.calls-check-list{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}.calls-check-row{display:flex;align-items:flex-start;gap:10px}.calls-check-row span:last-child{display:flex;flex-direction:column;min-width:0}.calls-check-row small{color:var(--muted);overflow-wrap:anywhere}.calls-check-icon{width:22px;height:22px;flex:none;display:grid;place-items:center}.calls-check-icon svg{width:20px;height:20px}.calls-check-row.ok .calls-check-icon{color:var(--ok)}.calls-check-row.fail .calls-check-icon{color:var(--danger)}.calls-check-row.wait,.calls-check-row.skip{opacity:.55}.calls-check-icon .spin{animation:call-spin 1s linear infinite}.calls-check-verdict{margin:14px 0 0;padding:10px 12px;border-radius:var(--r-2)}.calls-check-verdict.good{background:color-mix(in srgb,var(--ok) 14%,transparent)}.calls-check-verdict.bad{background:color-mix(in srgb,var(--danger) 12%,transparent)}@keyframes call-spin{to{transform:rotate(360deg)}}.dev-check-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0}.dev-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));align-items:start;gap:12px;margin-top:6px}.dev-block{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:var(--r-3);background:var(--surface-2);border:1.5px solid transparent;transition:border-color var(--t-base) var(--ease)}.dev-block[data-state=ok]{border-color:color-mix(in srgb,var(--ok) 45%,transparent)}.dev-block[data-state=bad]{border-color:color-mix(in srgb,var(--danger) 45%,transparent)}.dev-head{display:flex;align-items:center;gap:8px}.dev-head svg{width:20px;height:20px;color:var(--accent)}.dev-block .select{background-color:var(--surface)}.dev-block video{display:block;width:100%;aspect-ratio:16 / 9;border-radius:10px;background:#000;object-fit:cover;transform:scaleX(-1)}.dev-block video[hidden]{display:none}.dev-meter{position:relative;height:10px;overflow:hidden;border-radius:5px;background:var(--surface-3)}.dev-meter>i{position:absolute;inset:0 auto 0 0;width:calc(var(--level, 0) * 100%);background:linear-gradient(90deg,var(--ok),var(--accent));transition:width .08s linear}.dev-meter{-webkit-mask:repeating-linear-gradient(90deg,#000 0 6px,transparent 6px 9px);mask:repeating-linear-gradient(90deg,#000 0 6px,transparent 6px 9px)}.dev-check-state{margin:0;font-size:14px;line-height:1.35;color:var(--muted)}.dev-check-state[data-state=ok]{color:var(--ok)}.dev-check-state[data-state=bad]{color:var(--danger)}.dev-note{margin:0;font-size:13px;line-height:1.35}.call-tile.pip.movable{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}.call-tile.pip.movable:active{cursor:grabbing}
