:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;--tlove-accent: #c3263f;--tlove-ink: #0a0a0a;--tlove-secondary: #525252;--tlove-muted: #737373;--tlove-border: #d4d4d4;--tlove-line: #d4d4d4;--tlove-divider: #e5e5e5;--tlove-soft: #f5f5f5;--tlove-blush: #fce7f3;--tlove-black: #000;--tlove-white: #fff;--tlove-accent-pale: #fff0f2;--tlove-shadow: 0 2px 8px rgba(35, 24, 27, .025);color:var(--tlove-ink);background:var(--tlove-soft);font-synthesis:none}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;touch-action:pan-x pan-y}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--tlove-accent);outline-offset:2px}.shell{width:min(100%,520px);height:100dvh;margin:auto;background:var(--tlove-soft);display:flex;flex-direction:column;overflow:hidden}.app-header{min-height:68px;flex:none;display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--tlove-accent);color:var(--tlove-white);z-index:1}h1{font-size:21px;line-height:1.3;font-weight:700;letter-spacing:-.025em;margin:0}.avatar{flex:none;display:grid;place-items:center;border:2px solid rgba(255,255,255,.75);border-radius:50%;overflow:hidden;color:var(--tlove-ink);font-weight:700}.avatar img{width:100%;height:100%;object-fit:cover}.header-label{min-width:0;display:flex;flex-direction:column;gap:2px}.header-label strong{font-size:16px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-label small{font-size:12px;color:var(--tlove-white);opacity:.88;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-button{border:0;background:transparent;color:var(--tlove-white);padding:8px;display:grid;place-items:center}.back-button{margin-left:-8px}.list-view{background:var(--tlove-soft)}.list-view .app-header{justify-content:center}.header-search{flex:1;min-width:0;height:42px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid rgba(255,255,255,.4);border-radius:8px;background:#ffffff24;color:var(--tlove-white)}.header-search svg{flex:none;width:19px;height:19px}.header-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;color:var(--tlove-white);font-size:16px}.header-search input::placeholder{color:#ffffffd1}.header-search:focus-within{background:#fff3}.chat-list{flex:1;overflow-y:auto;padding:16px}.chat-row{position:relative;width:100%;min-height:80px;margin-bottom:9px;padding:12px;display:flex;align-items:center;gap:12px;border:1px solid var(--tlove-divider);border-radius:12px;background:var(--tlove-white);box-shadow:var(--tlove-shadow);text-align:left;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.chat-row:active{transform:scale(.99)}.chat-row:focus-visible{border-color:var(--tlove-accent);outline:2px solid var(--tlove-accent);outline-offset:1px}.chat-row-label{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}.chat-row-name{min-width:0;display:flex;align-items:center;gap:5px}.chat-row-name strong{min-width:0}.chat-list-muted-icon{flex:none;width:17px;height:17px;color:var(--tlove-muted)}.chat-row-label strong,.chat-row-label small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-row-label strong{font-size:15px;font-weight:700;letter-spacing:-.01em}.chat-row-label small{font-size:13px;color:var(--tlove-secondary)}.chat-preview{display:flex;align-items:center;gap:3px}.chat-preview>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.read-checks{display:inline-flex;flex:none;align-items:center;justify-content:center;color:var(--tlove-border);vertical-align:middle}.read-checks.is-read{color:var(--tlove-accent)}.chat-row-meta{align-self:stretch;display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:5px}.chat-row time{font-size:11px;color:var(--tlove-secondary)}.unread-badge{min-width:23px;height:23px;padding:0 6px;border-radius:12px;display:grid;place-items:center;background:var(--tlove-accent);color:var(--tlove-white);font-size:12px;font-weight:700}.unread-badge.muted{background:var(--tlove-divider);color:var(--tlove-secondary)}.chat-view{background:var(--tlove-soft)}.chat-view .app-header{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr) 36px 40px;gap:5px;background:var(--tlove-accent)}.chat-view .back-button{margin-left:-8px}.peer-avatar-button{display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:transparent}.chat-view .header-label{text-align:center;align-items:center}.header-name-line{display:flex;align-items:center;justify-content:center;gap:5px;min-width:0;max-width:100%}.header-name-line strong{min-width:0}.header-muted-icon{flex:none;width:17px;height:17px}.chat-menu-trigger{width:36px;height:40px}.chat-action-menu,.attach-menu{position:absolute;z-index:4;width:190px;padding:5px;border:1px solid var(--tlove-divider);border-radius:12px;background:var(--tlove-white);box-shadow:0 5px 18px #23181b1f}.chat-action-menu{top:calc(100% - 4px);right:14px}.attach-menu{bottom:calc(100% + 14px);left:0}.chat-action-menu button,.attach-menu button{display:block;width:100%;min-height:44px;padding:10px 12px;border:0;border-radius:6px;background:transparent;color:var(--tlove-ink);text-align:left;font-size:14px}.chat-action-menu button:active,.attach-menu button:active{background:var(--tlove-soft)}.message-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:39}.message-actions-menu{position:fixed;z-index:40;padding:6px;border:1px solid var(--tlove-divider);border-radius:12px;background:var(--tlove-white);box-shadow:0 8px 24px #23181b2e}.message-actions-menu button{display:block;width:100%;min-height:44px;padding:9px 12px;border:0;border-radius:6px;background:transparent;color:var(--tlove-ink);text-align:left;font-size:14px}.message-actions-menu button:active{background:var(--tlove-soft)}.message-actions-menu button.danger{color:var(--tlove-accent)}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:grid;place-items:center;padding:24px;background:#0a0a0a61}.confirm-dialog{width:min(100%,360px);padding:20px;border-radius:12px;background:var(--tlove-white);box-shadow:0 12px 32px #0a0a0a26}.confirm-dialog h2{margin:0;font-size:19px}.confirm-dialog p{margin:8px 0 18px;color:var(--tlove-secondary);font-size:13px}.confirm-dialog button{display:block;width:100%;min-height:44px;margin-top:8px;border:1px solid var(--tlove-divider);border-radius:6px;background:var(--tlove-white);color:var(--tlove-ink);font-weight:600}.confirm-dialog button.danger{border-color:var(--tlove-accent);background:var(--tlove-accent);color:var(--tlove-white)}.confirm-dialog button.cancel{border:0;color:var(--tlove-secondary)}.messages{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:16px;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}.messages-content{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.messages-loading{visibility:hidden}.message-row{display:flex;align-items:center;gap:4px;max-width:100%}.message-row.mine{align-self:flex-end}.message-row .bubble{max-width:min(75vw,420px)}.bubble[role=button]{cursor:pointer}.heart-button,.heart-indicator{flex:none;width:30px;height:32px;display:grid;place-items:center;border:0;border-radius:50%;background:transparent}.heart-button{color:var(--tlove-border);transition:transform .16s ease,color .16s ease}.heart-button.active,.heart-indicator{color:var(--tlove-accent)}.heart-button:active{transform:scale(1.16)}.heart-button:focus-visible{outline:2px solid var(--tlove-ink);outline-offset:2px}.bubble{min-width:92px;padding:10px 12px 7px;background:var(--tlove-white);border:1px solid var(--tlove-divider);border-radius:15px 15px 15px 4px}.bubble.mine{background:var(--tlove-blush);border-color:#f5d5e1;border-radius:15px 15px 4px}.bubble p{margin:0 0 4px;font-size:15px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.bubble a{color:var(--tlove-accent);font-size:14px;font-weight:600;text-decoration:underline;overflow-wrap:anywhere}.contact-message-stack{width:min(75vw,320px);max-width:100%;display:flex;flex-direction:column;gap:3px}.message-row .contact-message-stack .bubble{width:100%;max-width:none}.contact-message-stack .bubble p{margin:0 0 4px}.contact-inline-button{display:flex;align-items:center;justify-content:center;min-height:42px;padding:9px 12px;border:1px solid var(--tlove-divider);border-radius:8px;background:var(--tlove-white);color:var(--tlove-accent);font-size:13px;font-weight:700;line-height:1.3;text-align:center;text-decoration:none}.contact-inline-button:active{background:var(--tlove-accent-pale)}.bubble-foot{display:flex;justify-content:flex-end;align-items:center;gap:3px;min-height:15px}.bubble-foot small,.mine .bubble-foot small{color:var(--tlove-secondary);font-size:10px}.bubble-foot .read-checks{margin-left:0}.message-photo{max-width:100%;max-height:280px;border-radius:4px}.photo-thumbnail{display:block;max-width:100%;padding:0;border:0;background:transparent;line-height:0;cursor:zoom-in}.photo-thumbnail:focus-visible{outline:2px solid var(--tlove-accent);outline-offset:2px}.photo-viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:center;justify-content:center;padding:72px 12px 24px;background:#000e;touch-action:pan-x pan-y}.photo-viewer>img{display:block;max-width:100%;max-height:100%;object-fit:contain}.photo-viewer-close{position:absolute;top:calc(12px + max(env(safe-area-inset-top,0px),var(--app-device-safe-top, 0px)) + var(--app-content-safe-top, 0px));right:12px;width:44px;height:44px;border:0;border-radius:6px;background:var(--tlove-accent);color:var(--tlove-white);font-size:32px;line-height:1}.photo-warning{display:flex;flex-direction:column;gap:10px;min-width:190px;padding:8px 2px;color:var(--tlove-secondary)}.photo-warning strong{font-size:13px;color:var(--tlove-ink)}.photo-warning span{font-size:12px}.photo-warning button{align-self:flex-start;border:0;border-radius:6px;background:var(--tlove-accent);color:var(--tlove-white);padding:9px 13px;font-size:12px;font-weight:600}.composer{flex:none;display:flex;align-items:center;gap:5px;min-height:64px;margin:0;padding:8px 12px;border-top:1px solid var(--tlove-line);background:var(--tlove-white)}.edit-banner{flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px;padding:5px 16px;border-top:1px solid var(--tlove-divider);background:var(--tlove-white);color:var(--tlove-accent);font-size:13px;font-weight:600}.edit-banner button{width:32px;height:32px;border:0;border-radius:6px;background:transparent;color:var(--tlove-secondary);font-size:22px}.composer>input{min-width:0;flex:1;border:1px solid var(--tlove-divider);outline:none;background:var(--tlove-soft);padding:11px 14px;border-radius:22px;font-size:16px;transition:border-color .16s ease,box-shadow .16s ease}.composer>input:focus{border-color:#e9a6b1;box-shadow:0 0 0 3px #c3263f14}.composer>input::placeholder{color:var(--tlove-secondary)}.composer-blocked{justify-content:center}.unblock-chat-button{width:100%;min-height:48px;border:0;border-radius:12px;background:var(--tlove-accent);color:var(--tlove-white);font:inherit;font-size:16px;font-weight:700;cursor:pointer}.unblock-chat-button:active{opacity:.88}.unblock-chat-button:focus-visible{outline:2px solid var(--tlove-accent);outline-offset:2px}.blocked-chat-label{color:var(--tlove-secondary);font-size:14px}.attach-control{position:relative;flex:none;width:38px;height:42px;display:grid;place-items:center;color:var(--tlove-accent)}.attach-trigger{width:38px;height:42px;display:grid;place-items:center;padding:0;border:0;border-radius:6px;background:transparent;color:var(--tlove-accent)}.attach-trigger:focus-visible{outline:2px solid var(--tlove-accent);outline-offset:2px}.send{flex:none;width:42px;height:42px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--tlove-accent);color:var(--tlove-white);transition:transform .16s ease}.send:not(:disabled):active{transform:scale(.92)}.send:disabled{background:var(--tlove-soft);color:var(--tlove-border);box-shadow:none}.error{margin:8px 12px;padding:9px 12px;border:1px solid var(--tlove-accent);border-radius:6px;background:var(--tlove-white);color:var(--tlove-accent);font-size:13px}.onboarding-card .error{margin:0}.loading-state{flex:1;display:grid;place-items:center;color:var(--tlove-secondary);font-size:14px}.onboarding{background:var(--tlove-soft)}.onboarding-scroll{flex:1;min-height:0;overflow-y:auto;padding:16px}.onboarding-card{display:flex;flex-direction:column;gap:16px;padding:20px;border:1px solid var(--tlove-divider);border-radius:12px;background:var(--tlove-white);box-shadow:var(--tlove-shadow)}.onboarding .app-header h1{font-size:20px}.profile-card{overflow:hidden;border:1px solid var(--tlove-divider);border-radius:12px;background:var(--tlove-white);box-shadow:var(--tlove-shadow)}.profile-hero{display:flex;flex-direction:column;align-items:center;gap:10px;padding:26px 18px 21px;background:linear-gradient(180deg,var(--tlove-accent-pale),var(--tlove-white))}.profile-hero .avatar{border:4px solid var(--tlove-white);box-shadow:0 0 0 1px #f0cbd2}.profile-hero strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px}.profile-form{display:flex;flex-direction:column;padding:0 18px 20px}.profile-form>label{margin-bottom:8px;font-size:14px;font-weight:700}.profile-form>input{width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--tlove-border);border-radius:6px;background:var(--tlove-white);color:var(--tlove-ink);outline-color:var(--tlove-accent);font-size:16px}.profile-form>input:focus{border-color:var(--tlove-accent)}.profile-choice-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:22px 0 13px}.profile-choice-head>strong{font-size:14px}.profile-photo-upload{display:flex;align-items:center;gap:6px;padding:7px 0 7px 7px;color:var(--tlove-accent);font-size:13px;font-weight:700;white-space:nowrap;cursor:pointer}.profile-photo-upload input[hidden]{display:none}.avatar-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:22px}.avatar-option{display:flex;align-items:center;justify-content:center;min-width:0;aspect-ratio:1;padding:0;border:2px solid transparent;border-radius:15px;font-size:clamp(26px,8vw,35px);line-height:1;transition:transform .15s ease,border-color .15s ease}.avatar-option:active{transform:scale(.96)}.avatar-option.selected{border-color:var(--tlove-accent);box-shadow:inset 0 0 0 3px var(--tlove-white)}.profile-remove-avatar{align-self:flex-start;margin:-8px 0 14px;padding:6px 0;border:0;background:transparent;color:var(--tlove-secondary);font-size:13px;font-weight:600}.profile-form .error{margin:12px 0 0}.primary{width:100%;padding:16px;border:0;border-radius:6px;background:var(--tlove-accent);color:var(--tlove-white);font-weight:700;transition:transform .16s ease}.primary:not(:disabled):active{transform:scale(.985)}.primary:disabled{opacity:.55;cursor:default}.onboarding a.primary{display:block;text-align:center;text-decoration:none}.bottom-nav{flex:none;min-height:70px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--tlove-divider);background:var(--tlove-white)}.bottom-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;padding:6px 2px;border:0;background:transparent;color:var(--tlove-muted);font-size:11px}.bottom-nav button.active{color:var(--tlove-accent);font-weight:700}.nav-icon{width:40px;height:35px;display:grid;place-items:center;border-radius:12px;transition:background .16s ease,transform .16s ease}.bottom-nav button.active .nav-icon{background:var(--tlove-accent-pale);transform:translateY(-1px)}.bottom-nav svg{width:23px;height:23px}.settings-content{flex:1;min-height:0;overflow-y:auto;padding:16px}.blocked-list{margin-top:22px}.blocked-list h2{margin:0 0 10px;font-size:15px}.blocked-row{display:flex;align-items:center;gap:10px;min-height:58px;padding:9px 12px;border:1px solid var(--tlove-divider);border-radius:12px;background:var(--tlove-white)}.blocked-row+.blocked-row{margin-top:7px}.blocked-row>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.blocked-row button{padding:8px;border:0;background:transparent;color:var(--tlove-accent);font:inherit;font-size:13px;font-weight:600}.profile-delete-account{display:block;min-height:44px;margin:12px auto 0;padding:10px;border:0;background:transparent;color:var(--tlove-accent);font-size:13px;font-weight:600;text-align:center;text-decoration:underline;text-underline-offset:3px}.stats-content{flex:1;min-height:0;overflow-y:auto;padding:16px}.stats-empty{display:grid;place-items:center}.stats-empty-card{width:min(100%,420px);padding:30px 24px;border:1px solid var(--tlove-divider);border-radius:12px;background:var(--tlove-white);text-align:center}.stats-empty-icon{width:56px;height:56px;margin:0 auto 18px;display:grid;place-items:center;border-radius:12px;background:var(--tlove-accent-pale);color:var(--tlove-accent)}.stats-empty-icon svg{width:30px;height:30px}.stats-empty-card h2{margin:0 0 8px;font-size:21px}.stats-empty-card p{margin:0 0 22px;color:var(--tlove-secondary);font-size:14px}.stats-empty-card a.primary{display:block;padding:13px 14px;text-decoration:none}.shared-stats-footer{flex:none;padding:10px 16px;border-top:1px solid var(--tlove-divider);background:var(--tlove-white)}.shared-stats-footer a{display:flex;align-items:center;justify-content:center;min-height:50px;padding:10px 14px;border-radius:12px;background:var(--tlove-accent);color:var(--tlove-white);font-size:15px;font-weight:700;line-height:1.3;text-align:center;text-decoration:none}.shared-stats-footer a:active{opacity:.88}.stats-header-spacer,.stats-share{width:38px;flex:none}.list-view .app-header:has(.stats-share){justify-content:space-between}.stats-share{padding:8px}.app-header:has(.stats-share) h1{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;font-size:18px}.stats-item-select{width:100%;min-height:44px;margin-bottom:12px;padding:8px 12px;border:1px solid var(--tlove-divider);border-radius:6px;background:var(--tlove-white);color:var(--tlove-ink);font-size:16px}.rating-card-after-model{margin-bottom:12px}.stats-pairs{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));padding-bottom:8px}.stat-pair{position:relative;min-width:0;min-height:188px;padding:15px;overflow:hidden;border:1px solid #f0d7dc;border-radius:12px;background:linear-gradient(148deg,#fff2f4,var(--tlove-white) 64%);box-shadow:var(--tlove-shadow)}.stat-pair-messages,.stat-pair-sales{background:linear-gradient(150deg,var(--tlove-white),#fff7f8)}.stat-pair-head{display:flex;align-items:center;gap:8px;min-height:34px;color:var(--tlove-ink);font-size:13px;font-weight:700}.stat-pair-icon{flex:none;width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:var(--tlove-accent-pale);color:var(--tlove-accent)}.stat-pair-values{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-top:19px}.stat-pair-values>div{min-width:0;display:flex;flex-direction:column;gap:4px}.stat-pair-values>div+div{padding-left:11px;border-left:1px solid #efdde0}.stat-pair-values strong{color:var(--tlove-accent);font-size:clamp(27px,8vw,36px);line-height:1;letter-spacing:-.05em}.stat-pair-values small{color:var(--tlove-secondary);font-size:11px;line-height:1.25}.stat-pair-progress{margin-top:16px}.stat-pair-progress>div{height:5px;overflow:hidden;border-radius:5px;background:#f0dfe2}.stat-pair-progress>div>span{display:block;height:100%;border-radius:inherit;background:var(--tlove-accent)}.stat-pair-progress small{display:block;margin-top:5px;color:var(--tlove-secondary);font-size:10px}.stat-pair-total{margin-top:17px;color:var(--tlove-secondary);font-size:11px}.stats-model{width:min(100%,440px,72dvh);aspect-ratio:1;margin:0 auto 12px;display:grid;place-items:center}.stats-model img{display:block;width:100%;height:100%;object-fit:contain}.stats-model-status{grid-area:1 / 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--tlove-secondary);font-size:13px}.stats-model-status button{padding:8px 12px;border:1px solid var(--tlove-divider);border-radius:6px;background:var(--tlove-white);color:var(--tlove-accent);font-weight:600}.stats-model-spinner{width:30px;height:30px;border:3px solid #efdde0;border-top-color:var(--tlove-accent);border-radius:50%;animation:stats-model-spin .8s linear infinite}.stats-model img{grid-area:1 / 1}@keyframes stats-model-spin{to{transform:rotate(360deg)}}.rating-card{grid-column:1 / -1;display:flex;flex-direction:column;gap:11px;padding:18px 20px 20px;border:1px solid #f0cbd2;border-radius:12px;background:linear-gradient(110deg,var(--tlove-accent-pale),var(--tlove-white) 76%);box-shadow:var(--tlove-shadow)}.rating-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.rating-heading strong{font-size:15px}.rating-heading span{padding:4px 7px;border-radius:6px;background:var(--tlove-white);color:var(--tlove-accent);font-size:11px;font-weight:700}.rating-value{color:var(--tlove-accent);font-size:28px;font-weight:700;line-height:1;letter-spacing:-.04em}.rating-value span{margin-left:2px;color:var(--tlove-muted);font-size:15px;font-weight:500}.rating-track{height:10px;overflow:hidden;border-radius:8px;background:#f0dfe2}.rating-track>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ee687d,var(--tlove-accent))}.settings-card{min-height:72px;display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid var(--tlove-divider);border-radius:12px;background:var(--tlove-white);box-shadow:var(--tlove-shadow);font-size:15px;font-weight:600}.settings-card>span:nth-child(2){flex:1}.settings-icon{flex:none;width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:var(--tlove-accent-pale);color:var(--tlove-accent)}.switch{position:relative;flex:none;width:44px;height:26px;cursor:pointer}.switch input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.switch-track{display:block;width:100%;height:100%;border-radius:13px;background:var(--tlove-border);pointer-events:none;transition:background .15s ease}.switch-track:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--tlove-white);transition:transform .15s ease}.switch input:checked+.switch-track{background:var(--tlove-accent)}.switch input:checked+.switch-track:after{transform:translate(18px)}.switch input:focus-visible+.switch-track{outline:2px solid var(--tlove-accent);outline-offset:2px}.switch input:disabled+.switch-track{opacity:.5}@media(max-width:767px){.shell{width:100%;max-width:none}}.telegram-mobile,.telegram-mobile body,.telegram-mobile #root{height:100%;overflow:hidden;overscroll-behavior:none}.telegram-mobile .shell{width:100%;max-width:none;height:var(--app-viewport-height, 100dvh)}.telegram-mobile .onboarding-scroll{overflow-y:auto}.telegram-fullscreen .shell{--app-top-inset: calc(max(env(safe-area-inset-top, 0px), var(--app-device-safe-top, 0px)) + var(--app-content-safe-top, 0px));--app-bottom-inset: calc(max(env(safe-area-inset-bottom, 0px), var(--app-device-safe-bottom, 0px)) + var(--app-content-safe-bottom, 0px));position:relative;padding-top:var(--app-top-inset);padding-bottom:var(--app-bottom-inset)}.telegram-fullscreen .shell:before,.telegram-fullscreen .shell:after{content:"";position:absolute;left:0;right:0;pointer-events:none}.telegram-fullscreen .shell:before{top:0;height:var(--app-top-inset);background:var(--tlove-accent)}.telegram-fullscreen .shell:after{bottom:0;height:var(--app-bottom-inset);background:var(--tlove-white)}.typing-label{color:var(--tlove-accent)!important;font-weight:600}.chat-view .header-label .typing-label{color:var(--tlove-white)!important}.typing-bubble{display:flex;align-items:center;gap:5px;height:36px;min-width:57px;padding:0 13px;border:1px solid var(--tlove-line);border-radius:12px 12px 12px 3px;background:var(--tlove-white)}.typing-bubble i{display:block;width:6px;height:6px;border-radius:50%;background:var(--tlove-accent);animation:typing-dot 1.25s infinite ease-in-out}.typing-bubble i:nth-child(2){animation-delay:.16s}.typing-bubble i:nth-child(3){animation-delay:.32s}@keyframes typing-dot{0%,60%,to{transform:translateY(0);opacity:.45}30%{transform:translateY(-4px);opacity:1}}@media(prefers-reduced-motion:reduce){.typing-bubble i{animation:none;opacity:.8}.chat-row,.composer>input,.send,.primary,.nav-icon{transition:none}}
