@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/inter-400.woff2") format("woff2")}@font-face{font-family:"Inter";font-style:normal;font-weight:500;font-display:swap;src:url("fonts/inter-500.woff2") format("woff2")}@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/inter-600.woff2") format("woff2")}@font-face{font-family:"Inter";font-style:normal;font-weight:700;font-display:swap;src:url("fonts/inter-700.woff2") format("woff2")}:root{--bg-base: #f5f5f7;--bg-elevated: #ffffff;--bg-elevated-2: #f9fafb;--bg-overlay: rgba(0, 0, 0, 0.5);--glass-bg: rgba(255, 255, 255, 0.65);--glass-border: rgba(0, 0, 0, 0.06);--glass-blur: 16px;--text-primary: #1a1a1a;--text-secondary: #6b7280;--text-tertiary: #9ca3af;--accent: #f97316;--accent-hover: #ea580c;--accent-subtle: rgba(249, 115, 22, 0.10);--border-default: rgba(0, 0, 0, 0.08);--border-subtle: rgba(0, 0, 0, 0.04);--card-bg: rgba(255, 255, 255, 0.70);--card-border: rgba(0, 0, 0, 0.06);--card-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);--card-shadow-hover: 0 8px 32px rgba(0, 0, 0, 0.10);--input-bg: rgba(0, 0, 0, 0.04);--input-border: rgba(0, 0, 0, 0.10);--input-text: #1a1a1a;--nav-bg: #ffffff;--nav-active: #f97316;--nav-inactive: #9ca3af;--bubble-mine-bg: rgba(249, 115, 22, 0.35);--bubble-mine-border: rgba(249, 115, 22, 0.2);--bubble-peer-bg: rgba(255, 255, 255, 0.88);--bubble-peer-border: rgba(0, 0, 0, 0.12);--color-success: #16a34a;--color-danger: #dc2626;--color-warning: #eab308;--color-danger-subtle: rgba(220, 38, 38, 0.10);--shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.04);--shadow-md: 0 4px 12px rgba(0, 0, 0, 0.06);--shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.08);--shadow-xl: 0 25px 60px rgba(0, 0, 0, 0.12);--orb-opacity: 0.18;--control-bg: rgba(255, 255, 255, 0.75);--control-btn-bg: rgba(0, 0, 0, 0.06);--control-btn-border: rgba(0, 0, 0, 0.08);--chat-bg: linear-gradient(135deg, #f8ddd0 0%, #fce6d8 35%, #fef0e6 65%, #fdf6f0 100%);--chat-pattern-url: url('../images/chat-bg-pattern.svg');--chat-pattern-opacity: 0.14;--chat-player-border: rgba(249, 115, 22, 0.2)}html[data-theme=dark]{--bg-base: #0b0f19;--bg-elevated: #111827;--bg-elevated-2: #1f2937;--bg-overlay: rgba(0, 0, 0, 0.75);--glass-bg: rgba(17, 24, 39, 0.75);--glass-border: rgba(255, 255, 255, 0.08);--glass-blur: 16px;--text-primary: rgba(255, 255, 255, 0.92);--text-secondary: rgba(156, 163, 175, 0.8);--text-tertiary: rgba(107, 114, 128, 0.85);--accent: #f97316;--accent-hover: #ea580c;--accent-subtle: rgba(249, 115, 22, 0.14);--border-default: rgba(255, 255, 255, 0.08);--border-subtle: rgba(255, 255, 255, 0.04);--card-bg: rgba(17, 24, 39, 0.85);--card-border: rgba(255, 255, 255, 0.08);--card-shadow: 0 4px 24px rgba(0, 0, 0, 0.4);--card-shadow-hover: 0 8px 32px rgba(0, 0, 0, 0.5);--input-bg: rgba(255, 255, 255, 0.05);--input-border: rgba(255, 255, 255, 0.10);--input-text: #ffffff;--nav-bg: #111827;--nav-active: #f97316;--nav-inactive: rgba(255, 255, 255, 0.4);--bubble-mine-bg: rgba(34, 211, 238, 0.3);--bubble-mine-border: rgba(34, 211, 238, 0.2);--bubble-peer-bg: rgba(255, 255, 255, 0.22);--bubble-peer-border: rgba(255, 255, 255, 0.16);--color-success: #22c55e;--color-danger: #ef4444;--color-warning: #facc15;--color-danger-subtle: rgba(239, 68, 68, 0.15);--shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.2);--shadow-md: 0 4px 12px rgba(0, 0, 0, 0.3);--shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.4);--shadow-xl: 0 25px 60px rgba(0, 0, 0, 0.5);--orb-opacity: 0.35;--control-bg: rgba(11, 15, 25, 0.75);--control-btn-bg: rgba(255, 255, 255, 0.07);--control-btn-border: rgba(255, 255, 255, 0.08);--chat-bg: linear-gradient(135deg, #1a1828 0%, #151a30 35%, #101828 65%, #0d1320 100%);--chat-pattern-url: url('../images/chat-bg-dark-pattern.svg');--chat-pattern-opacity: 0.2;--chat-player-border: rgba(249, 115, 22, 0.2);--bg-hover: #2a2a4a }html.theme-transitioning,html.theme-transitioning *{transition:background-color 300ms ease,color 300ms ease,border-color 300ms ease,box-shadow 300ms ease !important}.card-glass{background:var(--card-bg);border:1px solid var(--card-border);border-radius:1.25rem;box-shadow:var(--card-shadow);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));transition:box-shadow 250ms ease}.card-glass:hover{box-shadow:var(--card-shadow-hover)}body{font-family:"Inter",system-ui,-apple-system,sans-serif;background:var(--bg-base);color:var(--text-primary)}.hidden{display:none !important}.safe-top{padding-top:calc(env(safe-area-inset-top, 0px) + .5rem) !important}.safe-bottom{padding-bottom:env(safe-area-inset-bottom, 0px) !important}button,label,span,p,h1,h2{-webkit-user-select:none;user-select:none}.bg-gray-900{background-color:#111827}.bg-gray-800{background-color:#1f2937}.bg-gray-700{background-color:#374151}.bg-black{background-color:#000}.text-gray-300{color:#d1d5db}.text-gray-400{color:#9ca3af}.text-gray-500{color:#6b7280}.bg-orange-600{background-color:#ea580c}.bg-orange-500{background-color:#f97316}.bg-orange-700{background-color:#c2410c}.text-orange-400{color:#fb923c}.bg-red-600{background-color:#dc2626}.bg-red-500{background-color:#ef4444}.bg-red-700{background-color:#b91c1c}.text-red-400{color:#f87171}.bg-green-600{background-color:#16a34a}.bg-green-500{background-color:#22c55e}.bg-green-700{background-color:#15803d}.text-green-400{color:#4ade80}.bg-yellow-500{background-color:#eab308}.bg-yellow-600{background-color:#ca8a04}.bg-black-60{background-color:rgba(0,0,0,.6)}.bg-black-80{background-color:rgba(0,0,0,.8)}.bg-gray-800-95{background-color:rgba(31,41,55,.95)}.border-gray-600{border-color:#4b5563 !important}.border-gray-700{border-color:#374151 !important}.text-bold{font-weight:bold}.text-bold:hover{color:var(--text-primary) !important}.w-2{width:.5rem}.h-2{height:.5rem}.w-14{width:3.5rem}.h-14{height:3.5rem}.w-24{width:6rem}.h-24{height:6rem}.w-28{width:7rem}.h-40{height:10rem}.max-w-sm{max-width:24rem}.h-dvh{height:100dvh}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.tracking-wide{letter-spacing:.025em}.inset-0{top:0;right:0;bottom:0;left:0}.top-4{top:1rem}.left-4{left:1rem}.right-4{right:1rem}.bottom-24{bottom:6rem}.z-10{z-index:10}.z-50{z-index:50}.z-100{z-index:100}.transition{transition:all 150ms ease}.active-scale:active{transform:scale(0.95)}.backdrop-blur-sm{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.shadow-2xl{box-shadow:0 25px 50px -12px rgba(0,0,0,.25)}.aspect-video{aspect-ratio:16/9}.object-cover{object-fit:cover}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.video-soft-blur{filter:blur(4px) saturate(0.95)}.pointer-events-none{pointer-events:none}.left-50{left:50%}.translate-x-minus-50{transform:translateX(-50%)}.overflow-hidden{overflow:hidden}.space-y-2>*+*{margin-top:.5rem}.btn-gray-700:hover{background-color:#4b5563}.btn-orange:hover{background-color:#f97316}.btn-orange:active{background-color:#c2410c}.btn-red:hover{background-color:#ef4444}.btn-red:active{background-color:#b91c1c}.btn-green:hover{background-color:#22c55e}.btn-green:active{background-color:#15803d}.btn-active-red{background-color:#dc2626 !important}.icon-btn{color:var(--text-primary)}.icon-btn svg{width:1.5rem;height:1.5rem;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.static-icon svg{stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;display:inline-block}.static-icon-sm svg{width:1rem;height:1rem}.static-icon-2xl svg{width:1.75rem;height:1.75rem}.static-icon-4xl svg{width:2.5rem;height:2.5rem}.static-icon-5xl svg{width:3rem;height:3rem}.static-icon-6xl svg{width:4rem;height:4rem}#preToggleMic,#btnMute{color:#facc15}#preToggleCam,#btnCam{color:#38bdf8}#btnBlur{color:#22d3ee}#btnSpeaker{color:#86efac}#btnNotify,#btnRingToggle{color:#fb923c}#btnHangup{color:#fff}@keyframes slide-in{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-out{from{opacity:1}to{opacity:0}}.toast-item{display:flex;align-items:center;gap:.6rem;padding:.7rem 1rem;border-radius:14px;font-size:.85rem;font-weight:500;line-height:1.3;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 4px 20px rgba(0,0,0,.12),0 0 0 1px hsla(0,0%,100%,.06);max-width:360px;margin:0 auto}.toast-icon{flex-shrink:0;width:20px;height:20px}.toast-info{background:var(--glass-bg);color:var(--text-primary);border:1px solid var(--glass-border)}.toast-success{background:var(--glass-bg);color:var(--color-success);border:1px solid var(--color-success)}.toast-error{background:var(--glass-bg);color:var(--color-danger);border:1px solid var(--color-danger)}.toast-warning{background:var(--glass-bg);color:var(--color-warning);border:1px solid var(--color-warning)}.toast-in{animation:toast-slide-in .35s cubic-bezier(0.16, 1, 0.3, 1)}.toast-out{animation:toast-slide-out .3s ease-in forwards}@keyframes toast-slide-in{from{opacity:0;transform:translateY(-12px) scale(0.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toast-slide-out{from{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-8px) scale(0.95)}}@keyframes soft-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.animate-soft-pulse{animation:soft-pulse 2s ease-in-out infinite}@keyframes scale-in{from{opacity:0;transform:scale(0.9)}to{opacity:1;transform:scale(1)}}.approval-anim>div{animation:scale-in .3s ease-out}@keyframes ring-attention{0%,100%{box-shadow:0 0 0 0 rgba(249,115,22,0);transform:scale(1)}50%{box-shadow:0 0 0 10px rgba(249,115,22,.22);transform:scale(1.015)}}.approval-ringing{animation:ring-attention 1.1s ease-in-out infinite}#localVideoWrapper{touch-action:none}#previewHint{width:100%;background:rgba(0,0,0,.1);border:1px solid hsla(0,0%,100%,.16);color:var(--text-secondary);text-align:center;line-height:1.35}.prejoin-cam-off-circle{width:6rem;height:6rem;border-radius:50%;border:1.5px solid hsla(0,0%,100%,.14);background:hsla(0,0%,100%,.04);box-shadow:0 0 30px rgba(0,0,0,.34),inset 0 0 20px hsla(0,0%,100%,.02);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.8rem;transform:translateY(-25px)}.prejoin-cam-off-circle--speaking{border-color:rgba(56,189,248,.48);animation:prejoin-cam-off-speaking-pulse .85s ease-in-out infinite}@keyframes prejoin-cam-off-speaking-pulse{0%,100%{transform:translateY(-25px) scale(1);box-shadow:0 0 34px rgba(0,0,0,.34),0 0 0 0 rgba(56,189,248,0),inset 0 0 30px hsla(0,0%,100%,.02)}50%{transform:translateY(-25px) scale(1.06);box-shadow:0 0 42px rgba(56,189,248,.24),0 0 0 10px rgba(56,189,248,.16),inset 0 0 30px hsla(0,0%,100%,.02)}}#previewCamOffName{font-size:.78rem;line-height:1.15;text-align:center;max-width:100%;word-break:break-word}#translatedCaption{bottom:6.2rem;max-width:min(92vw,52rem);background:rgba(0,0,0,.68);color:#fff;z-index:15;text-align:center;font-size:.95rem;line-height:1.35;border:1px solid hsla(0,0%,100%,.16);pointer-events:none}.translated-caption-list{display:flex;flex-direction:column;gap:.2rem}.translated-caption-line{word-break:break-word}.caption-partial{opacity:.55;font-style:italic}.self-transcript-list{display:flex;flex-direction:column;gap:.2rem}.self-transcript-line{word-break:break-word}#selfTranscript{bottom:8.9rem;max-width:min(92vw,52rem);background:rgba(15,23,42,.75);color:#e2e8f0;z-index:15;text-align:center;font-size:.9rem;line-height:1.3;border:1px solid rgba(148,163,184,.35);pointer-events:none}.caption-fab{left:.35rem;bottom:.5rem;width:2rem;height:2rem;z-index:16;background:rgba(148,163,184,.55);box-shadow:0 0 0 2px rgba(0,0,0,.35);border:1px solid hsla(0,0%,100%,.35);pointer-events:auto;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:700;color:#fff;line-height:1}.caption-fab svg{width:.9rem;height:.9rem;stroke:currentColor;fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.caption-fab.recording{background:#dc2626;border-color:hsla(0,0%,100%,.5);animation:soft-pulse 1s ease-in-out infinite}.caption-fab.paused{background:rgba(17,24,39,.9);border-color:hsla(0,0%,100%,.7);animation:none}.caption-fab.disabled{opacity:.35;cursor:default}@media(min-width: 992px){#callScreen #remoteVideoContainer{flex:0 1 auto;height:min(100dvh - 7rem,760px);width:min(430px,100% - 2rem,(100dvh - 7rem)*9/16);margin:1rem auto 0;border-radius:1rem}}@media(orientation: landscape)and (max-height: 500px){#translatedCaption{bottom:4.3rem;font-size:.85rem}#selfTranscript{bottom:6.2rem;font-size:.8rem}.caption-fab{bottom:4.3rem;left:.2rem;width:.85rem;height:.85rem}}body{-ms-overflow-style:none;scrollbar-width:none}body::-webkit-scrollbar{display:none}html[data-registered="1"] #preJoinScreen{display:none}.prejoin-root{position:relative;background:var(--bg-base)}.prejoin-bg{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}.prejoin-content{flex:1 1 0% !important;overflow-y:auto !important;min-height:0 !important;-webkit-overflow-scrolling:touch}.prejoin-bg-orb{position:absolute;border-radius:50%;filter:blur(90px);opacity:var(--orb-opacity);will-change:transform}.prejoin-bg-orb--warm{width:80vmin;height:80vmin;background:radial-gradient(circle, #f97316 0%, #dc2626 50%, transparent 70%);top:-10%;right:-15%;animation:orb-drift-warm 60s ease-in-out infinite alternate;transform:translate3d(0, 0, 0)}.prejoin-bg-orb--cool{width:60vmin;height:60vmin;background:radial-gradient(circle, #3b82f6 0%, #6366f1 50%, transparent 70%);bottom:-10%;left:-15%;animation:orb-drift-cool 60s ease-in-out infinite alternate}@keyframes orb-drift-warm{0%{transform:translate3d(0, 0, 0) scale(1);opacity:.35}100%{transform:translate3d(-200px, 200px, 0) scale(1.04);opacity:.35}}@keyframes orb-drift-cool{0%{transform:translate3d(0, 0, 0) scale(1)}100%{transform:translate3d(100px, -100px, 0) scale(1.04);opacity:.35}}@media(min-width: 992px){.prejoin-bg-orb--warm,.prejoin-bg-orb--cool{display:none}}.prejoin-root>*:not(.prejoin-bg){position:relative;z-index:1}.prejoin-footer-label{position:fixed;left:50%;bottom:0;transform:translateX(-50%);z-index:20;padding:.4rem .8rem calc(.4rem + env(safe-area-inset-bottom, 0px));font-size:.68rem;line-height:1;letter-spacing:.03em;color:var(--text-tertiary);background:var(--glass-bg);border-radius:.55rem .55rem 0 0;pointer-events:none;white-space:nowrap;text-align:center}.prejoin-header{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--glass-border)}.prejoin-logo-dot{width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg, #f97316, #fb923c);box-shadow:0 0 8px rgba(249,115,22,.5);flex-shrink:0}.prejoin-title{font-size:1rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-primary);margin:0;line-height:1}.prejoin-status-badge{font-size:.68rem;font-weight:500;letter-spacing:.03em;color:var(--text-secondary);background:var(--input-bg);border:1px solid var(--border-default);border-radius:100px;padding:3px 10px;white-space:nowrap}.prejoin-status--ok{color:#4ade80;border-color:rgba(74,222,128,.2);background:rgba(74,222,128,.08)}.prejoin-status--warning{color:#facc15;border-color:rgba(250,204,21,.2);background:rgba(250,204,21,.08)}.notify-status-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.notify-status-icon svg{width:1.1rem;height:1.1rem;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;fill:none}.notify-status-icon--on{color:#4ade80}.notify-status-icon--off{color:#f87171}.prejoin-header-btn{font-size:.7rem;font-weight:600;letter-spacing:.04em;color:var(--text-secondary);background:var(--input-bg);border:1px solid var(--input-border);border-radius:6px;padding:4px 10px;cursor:pointer;transition:all 180ms ease}.prejoin-header-btn:hover{background:var(--input-bg);border-color:var(--input-border);color:var(--text-primary)}.prejoin-content{gap:0}#preJoinScreen #previewHint{background:hsla(0,0%,100%,.04);border:1px solid hsla(0,0%,100%,.07);color:var(--text-secondary);text-align:center;line-height:1.4;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.prejoin-video-wrap{isolation:isolate}.prejoin-video-glow{position:absolute;inset:-3px;border-radius:calc(1rem + 3px);background:linear-gradient(135deg, rgba(249, 115, 22, 0.35), rgba(251, 146, 60, 0.1) 40%, rgba(59, 130, 246, 0.15) 70%, rgba(99, 102, 241, 0.25));z-index:-1;animation:glow-rotate 8s linear infinite;opacity:.7}@keyframes glow-rotate{0%{filter:hue-rotate(0deg) brightness(1)}50%{filter:hue-rotate(15deg) brightness(1.1)}100%{filter:hue-rotate(0deg) brightness(1)}}.prejoin-video{border:1px solid hsla(0,0%,100%,.1);box-shadow:0 8px 40px rgba(0,0,0,.5),0 2px 12px rgba(0,0,0,.3)}.prejoin-video-controls{bottom:.7rem;left:50%;transform:translateX(-50%);z-index:2}.prejoin-toggle-btn{width:2.75rem;height:2.75rem;background:rgba(0,0,0,.55);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid hsla(0,0%,100%,.15) !important;box-shadow:0 2px 8px rgba(0,0,0,.3);transition:all 180ms ease}.prejoin-toggle-btn:hover{background:rgba(0,0,0,.7);border-color:hsla(0,0%,100%,.25) !important}.prejoin-toggle-btn.btn-active-red{background:rgba(220,38,38,.8) !important;border-color:rgba(220,38,38,.5) !important}.prejoin-toggle-btn svg{width:1.15rem;height:1.15rem}.prejoin-name-input{padding:.85rem 1.2rem;font-size:.95rem;font-weight:500;color:var(--input-text);background:var(--input-bg);border:1px solid var(--input-border);border-radius:.75rem;outline:none;transition:all 250ms ease;letter-spacing:.01em}.prejoin-name-input::placeholder{color:var(--text-tertiary);font-weight:400}.prejoin-name-input:focus{background:hsla(0,0%,100%,.07);border-color:rgba(249,115,22,.5);box-shadow:0 0 0 3px rgba(249,115,22,.12),0 0 20px rgba(249,115,22,.06)}.reg-card{width:100%;max-width:24rem;padding:2rem 1.5rem;background:var(--card-bg);border-radius:1.25rem;backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--card-border);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;align-items:center;gap:0}.reg-card-icon{color:#fdba74;margin-bottom:1rem}.reg-card-title{font-size:1.15rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem 0;text-align:center}.reg-card-subtitle{font-size:.82rem;color:var(--text-secondary);margin:0 0 1.25rem 0;text-align:center;line-height:1.4}.reg-input-wrap{position:relative;width:100%;margin-bottom:.75rem}.reg-input-icon{position:absolute;left:.85rem;top:50%;transform:translateY(-50%);color:var(--text-tertiary);pointer-events:none}.reg-input{width:100%;padding:.8rem .85rem .8rem 2.75rem;font-size:.95rem;font-weight:500;color:var(--input-text);background:var(--input-bg);border:1px solid var(--input-border);border-radius:.75rem;outline:none;transition:all 250ms ease;letter-spacing:.01em;box-sizing:border-box}.reg-input::placeholder{color:var(--text-tertiary);font-weight:400}.reg-input:focus{background:hsla(0,0%,100%,.07);border-color:rgba(249,115,22,.5);box-shadow:0 0 0 3px rgba(249,115,22,.12),0 0 20px rgba(249,115,22,.06)}.reg-input:read-only{opacity:.6;cursor:default}.reg-lang-row{width:100%;display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.reg-lang-label{font-size:.8rem;color:var(--text-secondary);white-space:nowrap}.reg-status{width:100%;font-size:.82rem;color:var(--text-secondary);text-align:center;margin-bottom:.75rem}.reg-submit-btn{width:100%;padding:.8rem;font-size:.95rem;font-weight:600;color:#fff;background:linear-gradient(135deg, #c2410c, #f97316);border:none;border-radius:.65rem;cursor:pointer;transition:all 250ms ease;position:relative;overflow:hidden}.reg-submit-btn:hover{transform:translateY(-1px);box-shadow:0 6px 28px rgba(249,115,22,.35),0 2px 6px rgba(0,0,0,.25)}.reg-submit-btn:active{transform:translateY(0);box-shadow:0 2px 12px rgba(249,115,22,.2)}.reg-submit-btn.hidden{display:none}.reg-password-hint{font-size:.75rem;color:var(--text-tertiary);text-align:center;line-height:1.35;margin:-0.25rem 0 .75rem;padding:0 .5rem}.reg-status--error{color:var(--color-danger)}.reg-sms-divider{width:100%;height:1px;background:var(--border-color);margin:1.25rem 0}.reg-sms-title{font-size:1.1rem;font-weight:600;text-align:center;margin:0 0 .25rem}.reg-sms-hint{font-size:.85rem;color:var(--text-secondary);text-align:center;margin:0 0 1rem}.reg-input--code{text-align:center;letter-spacing:.35em;font-size:1.3rem;font-weight:600}.reg-sms-timer{font-size:.8rem;color:var(--text-tertiary);text-align:center;margin:.5rem 0}.reg-sms-resend{display:block;width:100%;margin-top:.5rem;padding:.6rem 1rem;background:rgba(0,0,0,0);border:1px solid var(--border-color);border-radius:.75rem;color:var(--accent);font-weight:500;font-size:.9rem;cursor:pointer;transition:background .15s,border-color .15s}.reg-sms-resend:hover{background:var(--bg-hover);border-color:var(--accent)}.reg-sms-resend.hidden{display:none}.key-restore-card{max-width:360px}.device-settings-overlay{position:absolute;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.7);backdrop-filter:blur(10px);animation:dsOverlayIn .25s ease}.device-settings-overlay.hidden{display:none}@keyframes dsOverlayIn{from{opacity:0}to{opacity:1}}.device-settings-panel{background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:1rem;width:90%;max-width:420px;box-shadow:0 20px 60px rgba(0,0,0,.25);animation:dsPanelIn .25s ease}.device-settings-preview{width:100%;aspect-ratio:16/9;background:#000;border-radius:.75rem;overflow:hidden;margin-bottom:.75rem}.device-preview-video{width:100%;height:100%;object-fit:cover;display:block}@keyframes dsPanelIn{from{opacity:0;transform:scale(0.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.device-settings-header{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.1rem;border-bottom:1px solid var(--border-subtle)}.device-settings-title{font-size:.95rem;font-weight:600;color:var(--text-primary)}.device-settings-close{background:var(--bg-secondary);border:none;color:var(--text-secondary);font-size:1.2rem;cursor:pointer;line-height:1;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .15s}.device-settings-close:hover{background:var(--bg-hover);color:var(--text-primary)}.device-settings-body{padding:1rem 1.1rem 1.2rem;display:flex;flex-direction:column;gap:.35rem}.device-settings-label{font-size:.7rem;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:hsla(0,0%,100%,.5);margin-top:.5rem}.device-settings-label:first-child{margin-top:0}.app-select{appearance:none;-webkit-appearance:none;display:block;width:100%;padding:.45rem 2rem .45rem .65rem;font-size:.85rem;font-family:inherit;line-height:1.4;color:var(--text-primary);background-color:var(--bg-elevated);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8.825a.5.5 0 0 1-.354-.146l-3.5-3.5a.5.5 0 1 1 .708-.708L6 7.618l3.146-3.147a.5.5 0 1 1 .708.708l-3.5 3.5A.5.5 0 0 1 6 8.825z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;background-size:12px;border:1px solid var(--border-default);border-radius:8px;outline:none;cursor:pointer;transition:border-color .15s,box-shadow .15s}.app-select:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(249,115,22,.18)}.app-select option{color:var(--text-primary);background:var(--bg-elevated)}.device-settings-panel .settings-section{flex-direction:column;align-items:stretch;gap:.3rem}.device-settings-panel .settings-label{font-size:.8rem}.device-settings-panel .app-select{width:100%}#btnOpenDeviceSettings{color:hsla(0,0%,100%,.9)}#btnOpenDeviceSettings:hover{color:#fff}.prejoin-details{border:1px solid var(--border-subtle);border-radius:.75rem;overflow:hidden;background:var(--input-bg);transition:border-color 200ms ease,background 200ms ease}.prejoin-details[open]{border-color:var(--input-border);background:hsla(0,0%,100%,.04);overflow:visible}.prejoin-details-summary{font-size:.8rem;font-weight:600;letter-spacing:.03em;color:var(--text-tertiary);cursor:pointer;padding:.65rem 1rem;list-style:none;display:flex;align-items:center;gap:.5rem;transition:color 150ms ease}.prejoin-details-summary::-webkit-details-marker{display:none}.prejoin-details-summary::before{content:"";width:5px;height:5px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform 200ms ease;flex-shrink:0}.prejoin-details[open]>.prejoin-details-summary::before{transform:rotate(45deg)}.prejoin-details-summary:hover{color:var(--text-primary)}.prejoin-details-body{padding:0 1rem .8rem}.prejoin-field-label{font-size:.68rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--text-tertiary);display:block;margin-top:.4rem}.prejoin-select{padding:.5rem .75rem;font-size:.82rem;font-weight:400;color:var(--text-primary);background:var(--input-bg);border:1px solid var(--input-border);border-radius:.5rem;outline:none;transition:all 200ms ease;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M3 5l3 3 3-3' stroke='%236b7280' fill='none' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .7rem center;padding-right:2rem}.prejoin-select:focus{border-color:rgba(249,115,22,.4);box-shadow:0 0 0 2px rgba(249,115,22,.1);background-color:hsla(0,0%,100%,.07)}.prejoin-select option{color:#000;background:#fff}.prejoin-join-btn{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.9rem 1.5rem;font-size:1rem;font-weight:600;letter-spacing:.04em;color:#fff;background:linear-gradient(135deg, #ea580c, #f97316);border:none;border-radius:.75rem;cursor:pointer;position:relative;overflow:hidden;transition:all 250ms ease;box-shadow:0 4px 20px rgba(249,115,22,.25),0 1px 3px rgba(0,0,0,.2)}.prejoin-join-btn::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg, rgba(255, 255, 255, 0.15) 0%, transparent 50%, transparent 100%);opacity:0;transition:opacity 250ms ease}.prejoin-join-btn:hover{transform:translateY(-1px);box-shadow:0 6px 28px rgba(249,115,22,.35),0 2px 6px rgba(0,0,0,.25)}.prejoin-join-btn:hover::before{opacity:1}.prejoin-join-btn:active{transform:translateY(0);box-shadow:0 2px 12px rgba(249,115,22,.2)}.prejoin-join-arrow{width:1.1rem;height:1.1rem;stroke:currentColor;fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;transition:transform 250ms ease}.prejoin-join-btn:hover .prejoin-join-arrow{transform:translateX(3px)}.prejoin-room-id{font-size:.72rem;line-height:1.35;color:var(--text-secondary);letter-spacing:.02em}.prejoin-room-id-row{display:flex;align-items:center;justify-content:space-between;gap:.55rem}#roomIdDisplay{color:var(--text-primary);background:var(--input-bg);border:1px solid var(--input-border);border-radius:.4rem;padding:.05rem .35rem;font-size:.7rem;letter-spacing:.03em;word-break:break-all;-webkit-user-select:text;user-select:text}.prejoin-room-history-btn{font-size:.66rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--border-default);background:var(--input-bg);color:var(--text-primary);border-radius:.45rem;padding:.2rem .45rem;line-height:1}.prejoin-room-history-btn:hover{border-color:var(--input-border);background:var(--input-bg)}.room-id-history-list{display:flex;flex-wrap:wrap;gap:.45rem;max-height:min(55vh,18rem);overflow-y:auto;align-content:flex-start}.room-id-history-chip{display:inline-flex;align-items:center;border-radius:999px;border:1px solid var(--border-default);background:rgba(249,115,22,.14);overflow:hidden;max-width:100%}.room-id-history-title{font-size:.95rem;font-weight:600;letter-spacing:.02em}.room-id-history-hint{margin:0 0 .65rem 0;font-size:.76rem;line-height:1.35;color:var(--text-secondary);letter-spacing:.01em}.room-id-history-item{display:inline-flex;align-items:center;border:0;text-align:center;font-size:.72rem;font-weight:600;color:var(--text-primary);background:rgba(0,0,0,0);padding:.34rem .62rem;letter-spacing:.03em;word-break:normal;white-space:nowrap;max-width:100%;text-overflow:ellipsis;overflow:hidden}.room-id-history-item:hover{background:rgba(249,115,22,.24)}.room-id-history-remove{border:0;border-left:1px solid hsla(0,0%,100%,.12);background:rgba(0,0,0,.16);color:var(--text-primary);width:1.45rem;min-width:1.45rem;height:1.45rem;line-height:1;font-size:.9rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.room-id-history-remove:hover{background:rgba(220,38,38,.35);color:#fff}.room-id-history-empty{font-size:.72rem;color:var(--text-secondary);padding:.35rem .45rem;border:1px dashed var(--border-default);border-radius:.55rem;text-align:center}@keyframes prejoin-fade-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.prejoin-content>*{animation:prejoin-fade-up .5s ease-out both}.prejoin-content>*:nth-child(1){animation-delay:.05s}.prejoin-content>*:nth-child(2){animation-delay:.12s}.prejoin-content>*:nth-child(3){animation-delay:.2s}.prejoin-content>*:nth-child(4){animation-delay:.28s}.prejoin-content>*:nth-child(5){animation-delay:.36s}@media(max-height: 620px){.prejoin-video-glow{display:none}.prejoin-bg-orb{opacity:.2}}@media(min-width: 768px){.prejoin-title{font-size:1.1rem;letter-spacing:.08em}}.waiting-root{position:relative;background:var(--bg-base)}.waiting-bg{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}.waiting-bg-orb{position:absolute;border-radius:50%;filter:blur(100px);opacity:var(--orb-opacity);will-change:transform}.waiting-bg-orb--warm{width:70vmin;height:70vmin;background:radial-gradient(circle, #f97316 0%, #dc2626 50%, transparent 70%);top:-15%;right:-20%;animation:waiting-orb-warm 50s ease-in-out infinite alternate}.waiting-bg-orb--cool{width:55vmin;height:55vmin;background:radial-gradient(circle, #3b82f6 0%, #6366f1 50%, transparent 70%);bottom:-15%;left:-20%;animation:waiting-orb-cool 50s ease-in-out infinite alternate}@keyframes waiting-orb-warm{0%{transform:translate3d(0, 0, 0) scale(1)}100%{transform:translate3d(-150px, 150px, 0) scale(1.06)}}@keyframes waiting-orb-cool{0%{transform:translate3d(0, 0, 0) scale(1)}100%{transform:translate3d(100px, -80px, 0) scale(1.06)}}@media(min-width: 992px){.waiting-bg-orb--warm,.waiting-bg-orb--cool{display:none}}.waiting-root>*:not(.waiting-bg){position:relative;z-index:1}.waiting-header{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--glass-border)}.waiting-action-btn{width:2.75rem;height:2.75rem;background:var(--input-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--input-border) !important;transition:all 180ms ease}.waiting-action-btn:hover{background:var(--input-bg);border-color:var(--input-border) !important}.waiting-action-btn svg{width:1.15rem;height:1.15rem;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.waiting-leave-btn{font-size:.78rem;font-weight:600;letter-spacing:.03em;color:#f87171;background:rgba(248,113,113,.08);border:1px solid rgba(248,113,113,.15) !important;border-radius:8px;padding:5px 14px;cursor:pointer;transition:all 180ms ease}.waiting-leave-btn:hover{background:rgba(248,113,113,.16);border-color:rgba(248,113,113,.3) !important;color:#fca5a5}.waiting-content{animation:waiting-fade-in .6s ease-out both}@keyframes waiting-fade-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.waiting-state-card{max-width:22rem}.waiting-icon-ring{position:relative;width:7rem;height:7rem;margin:0 auto;border-radius:50%;display:flex;align-items:center;justify-content:center}.waiting-icon-ring::before{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid rgba(0,0,0,0);border-top-color:rgba(249,115,22,.6);border-right-color:rgba(249,115,22,.2);animation:waiting-ring-spin 2.5s linear infinite}.waiting-icon-ring::after{content:"";position:absolute;inset:6px;border-radius:50%;border:1.5px solid rgba(0,0,0,0);border-bottom-color:rgba(59,130,246,.4);border-left-color:rgba(59,130,246,.15);animation:waiting-ring-spin 3.5s linear infinite reverse}@keyframes waiting-ring-spin{to{transform:rotate(360deg)}}.waiting-icon-inner{color:var(--text-secondary);animation:waiting-icon-breathe 3s ease-in-out infinite}@keyframes waiting-icon-breathe{0%,100%{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}.waiting-title{font-size:1.15rem;font-weight:600;letter-spacing:.02em;color:var(--text-primary);line-height:1.4}.waiting-subtitle{font-size:.85rem;font-weight:400;color:var(--text-secondary);line-height:1.4}.waiting-rejoin-hint{font-size:.75rem;font-weight:500;color:#facc15;background:rgba(250,204,21,.08);border:1px solid rgba(250,204,21,.15);border-radius:8px;padding:6px 14px}.waiting-dots{display:flex;align-items:center;justify-content:center;gap:6px}.waiting-dots span{display:block;width:6px;height:6px;border-radius:50%;background:rgba(249,115,22,.6);animation:waiting-dot-bounce 1.4s ease-in-out infinite}.waiting-dots span:nth-child(2){animation-delay:.16s}.waiting-dots span:nth-child(3){animation-delay:.32s}@keyframes waiting-dot-bounce{0%,80%,100%{opacity:.3;transform:scale(0.8)}40%{opacity:1;transform:scale(1.2)}}#approvalOverlay{background:var(--bg-overlay);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.approval-card{background:var(--card-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--card-border);border-radius:1.25rem;padding:2rem 1.5rem;box-shadow:var(--shadow-xl)}.approval-icon-wrap{width:4rem;height:4rem;margin:0 auto;border-radius:50%;background:rgba(249,115,22,.1);border:1px solid rgba(249,115,22,.2);display:flex;align-items:center;justify-content:center;color:#fb923c}.approval-name{font-size:1.25rem;font-weight:700;color:#fb923c}.approval-btn{font-size:.92rem;letter-spacing:.03em;position:relative;overflow:hidden}.approval-btn--deny{background:linear-gradient(135deg, #dc2626, #ef4444);box-shadow:0 4px 16px rgba(220,38,38,.25)}.approval-btn--deny:hover{box-shadow:0 6px 24px rgba(220,38,38,.4);transform:translateY(-1px)}.approval-btn--deny:active{transform:translateY(0)}.approval-btn--approve{background:linear-gradient(135deg, #16a34a, #22c55e);box-shadow:0 4px 16px rgba(22,163,74,.25)}.approval-btn--approve:hover{box-shadow:0 6px 24px rgba(22,163,74,.4);transform:translateY(-1px)}.approval-btn--approve:active{transform:translateY(0)}.call-root{background:#000}.call-badge{background:rgba(0,0,0,.45);backdrop-filter:blur(12px) saturate(1.4);-webkit-backdrop-filter:blur(12px) saturate(1.4);border:1px solid hsla(0,0%,100%,.08);border-radius:10px;color:hsla(0,0%,100%,.9);font-weight:500;letter-spacing:.01em;transition:opacity 300ms ease}.call-badge--name{font-weight:600;letter-spacing:.02em}.call-badge--mute{color:rgba(248,113,113,.9)}.call-badge--status{font-size:.7rem}.call-cc-toggle{width:56px;height:30px;border-radius:15px;background:rgba(220,220,220,.35);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);cursor:pointer;position:relative;transition:background .35s ease;-webkit-tap-highlight-color:rgba(0,0,0,0)}.call-cc-toggle.btn-active-green{background:rgba(34,197,94,.85)}.call-cc-knob{position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-size:.5rem;font-weight:800;color:rgba(180,60,60,.8);letter-spacing:.01em;transition:transform .35s cubic-bezier(0.4, 0, 0.2, 1),color .35s;box-shadow:0 2px 6px rgba(0,0,0,.2),0 0 1px rgba(0,0,0,.1)}.call-cc-toggle.btn-active-green .call-cc-knob{transform:translateX(26px);color:rgba(34,150,70,.9)}.call-cc-toggle.call-cc-disabled{opacity:.3;pointer-events:none}.call-status-dot{display:inline-block;width:.5rem;height:.5rem;border-radius:50%;background:#eab308;box-shadow:0 0 6px rgba(234,179,8,.5);transition:background 400ms ease,box-shadow 400ms ease}.net-quality-indicator{position:absolute;right:1rem;bottom:1rem;z-index:20;background:rgba(0,0,0,.45);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:.6rem;padding:.45rem;line-height:0;transition:opacity 300ms ease}.net-quality-indicator svg{display:block}.net-quality-indicator.hidden{display:none}.net-bar{fill:hsla(0,0%,100%,.2);transition:fill 600ms ease}.net-quality--good .net-bar-1,.net-quality--good .net-bar-2,.net-quality--good .net-bar-3{fill:#22c55e}.net-quality--fair .net-bar-1,.net-quality--fair .net-bar-2{fill:#eab308}.net-quality--bad .net-bar-1{fill:#ef4444}.net-quality-reconnect{display:flex;align-items:center;justify-content:center;width:32px;height:32px;margin-top:.35rem;border:none;border-radius:50%;background:rgba(239,68,68,.8);color:#fff;cursor:pointer;transition:background 200ms ease,transform 200ms ease;-webkit-tap-highlight-color:rgba(0,0,0,0)}.net-quality-reconnect:active{transform:scale(0.9);background:#ef4444}.net-quality-reconnect.hidden{display:none}.net-quality-indicator{display:flex;flex-direction:column;align-items:center}.call-cam-off{background:radial-gradient(ellipse at 50% 40%, #1a2236 0%, #0b0f19 70%)}.call-cam-off-avatar{width:6.5rem;height:6.5rem;border-radius:50%;background:hsla(0,0%,100%,.04);border:1.5px solid hsla(0,0%,100%,.08);display:flex;align-items:center;justify-content:center;color:rgba(156,163,175,.7);box-shadow:0 0 40px rgba(0,0,0,.3),inset 0 0 30px hsla(0,0%,100%,.02);transition:transform 120ms ease,box-shadow 140ms ease,border-color 140ms ease}@keyframes cam-off-speaking-pulse{0%,100%{transform:scale(1);box-shadow:0 0 34px rgba(0,0,0,.34),0 0 0 0 rgba(56,189,248,0),inset 0 0 30px hsla(0,0%,100%,.02)}50%{transform:scale(1.06);box-shadow:0 0 42px rgba(56,189,248,.24),0 0 0 10px rgba(56,189,248,.16),inset 0 0 30px hsla(0,0%,100%,.02)}}.call-cam-off-avatar--speaking{border-color:rgba(56,189,248,.48);animation:cam-off-speaking-pulse .85s ease-in-out infinite}.call-cam-off-name{font-size:.9rem;font-weight:500;color:rgba(156,163,175,.6);letter-spacing:.03em}.call-local-video{width:7rem;height:10rem;border:2px solid hsla(0,0%,100%,.12);box-shadow:0 8px 32px rgba(0,0,0,.6),0 0 0 1px rgba(0,0,0,.3);transition:box-shadow 300ms ease,border-color 300ms ease}.call-local-video:hover{border-color:hsla(0,0%,100%,.2);box-shadow:0 10px 40px rgba(0,0,0,.7),0 0 0 1px hsla(0,0%,100%,.05)}.call-control-bar{background:var(--control-bg);backdrop-filter:blur(20px) saturate(1.5);-webkit-backdrop-filter:blur(20px) saturate(1.5);border-top:1px solid var(--glass-border)}.call-ctrl-btn{width:3.5rem;height:3.5rem;font-size:1.5rem;background:var(--control-btn-bg);border:1px solid var(--control-btn-border) !important;transition:all 200ms ease}.call-ctrl-btn:hover{background:hsla(0,0%,100%,.14);border-color:hsla(0,0%,100%,.16) !important;transform:scale(1.06)}.call-ctrl-btn:active{transform:scale(0.95)}.call-ctrl-btn--hangup{background:linear-gradient(135deg, #dc2626, #ef4444) !important;border:1px solid rgba(239,68,68,.3) !important;box-shadow:0 4px 16px rgba(220,38,38,.3)}.call-ctrl-btn--hangup:hover{background:linear-gradient(135deg, #ef4444, #f87171) !important;box-shadow:0 6px 24px rgba(220,38,38,.45);transform:scale(1.06)}.blur-btn-wrap{position:relative}.blur-popup{position:absolute;bottom:calc(100% + .5rem);left:50%;transform:translateX(-50%);display:flex;gap:.25rem;padding:.3rem .4rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:1.5rem;box-shadow:0 8px 30px rgba(0,0,0,.4);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);white-space:nowrap;animation:chat-ctx-scale .15s ease-out;z-index:60}.blur-popup.hidden{display:none}.blur-popup-btn{display:flex;align-items:center;justify-content:center;padding:.35rem .65rem;font-size:.75rem;font-weight:500;border:none;background:rgba(0,0,0,0);color:var(--text-primary);border-radius:1rem;cursor:pointer;transition:background .12s,transform .12s}.blur-popup-btn:hover{background:hsla(0,0%,100%,.1)}.blur-popup-btn:active{transform:scale(0.95)}.blur-popup-btn--active{background:rgba(249,115,22,.25);color:#f97316}.call-ctrl-btn.btn-active-red{background:rgba(220,38,38,.7) !important;border-color:rgba(220,38,38,.4) !important;box-shadow:0 0 12px rgba(220,38,38,.2)}.call-ctrl-btn.btn-active-green{background:var(--color-success, #22c55e) !important;color:#fff !important;border-color:rgba(34,197,94,.4) !important;box-shadow:0 0 12px rgba(34,197,94,.2)}@media(orientation: landscape)and (max-height: 500px){.call-ctrl-btn{width:2.75rem;height:2.75rem;font-size:1.25rem}.call-local-video{width:5rem;height:7rem;bottom:4rem}.call-control-bar{padding-top:.25rem;padding-bottom:.25rem}}.chat-root{background:var(--chat-bg);position:relative}.chat-root::before{content:"";position:absolute;inset:0;background:var(--chat-pattern-url) repeat;background-size:700px 700px;opacity:var(--chat-pattern-opacity, 0.5);pointer-events:none;z-index:0}.chat-root>*{position:relative;z-index:1}.chat-header{background:var(--glass-bg);border-bottom:1px solid var(--glass-border);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);min-height:3.25rem;z-index:10}@supports(padding-top: env(safe-area-inset-top)){.chat-header.safe-top{min-height:calc(env(safe-area-inset-top, 0px) + 3.25rem)}}.chat-header-title{font-size:20px;font-weight:700;color:var(--text-primary)}.chat-back-btn{font-size:.85rem;color:var(--text-secondary);cursor:pointer;padding:.25rem;transition:color .15s}.chat-back-btn:hover{color:#f97316}.chat-list-container{padding:0}.chat-list-item{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border-bottom:1px solid var(--border-subtle);transition:background .15s}.cursor-pointer{cursor:pointer}.chat-list-item:hover{background:var(--input-bg)}.chat-list-item:active{background:var(--input-bg)}.chat-list-avatar{width:2.75rem;height:2.75rem;border-radius:50%;background:rgba(249,115,22,.15);color:#f97316;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem;flex-shrink:0}.chat-list-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.chat-list-top-row{display:flex;justify-content:space-between;align-items:baseline}.chat-list-name{font-weight:600;font-size:.95rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-list-time{font-size:.7rem;color:var(--text-tertiary);flex-shrink:0;margin-left:.5rem}.chat-list-preview{font-size:.82rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-list-right{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.chat-unread-badge{background:#f97316;color:#fff;font-size:.65rem;font-weight:700;min-width:1.2rem;height:1.2rem;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0 .3rem}.chat-list-empty{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-tertiary);font-size:.9rem}.chat-messages-container{padding:.85rem .85rem .5rem;display:flex;flex-direction:column;gap:.35rem}.chat-bubble{max-width:78%;padding:.65rem .85rem;border-radius:1rem;position:relative;word-wrap:break-word;overflow-wrap:break-word;border:1px solid rgba(0,0,0,0);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;will-change:transform}.chat-swipe-reply-icon{position:absolute;left:-2rem;top:50%;margin-top:-0.85rem;width:1.7rem;height:1.7rem;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(0);pointer-events:none}.chat-bubble--mine{align-self:flex-end;background:var(--bubble-mine-bg);border-color:var(--bubble-mine-border)}.chat-bubble--peer{align-self:flex-start;background:var(--bubble-peer-bg);border-color:var(--bubble-peer-border)}.chat-bubble-text{color:var(--text-primary);font-size:.92rem;line-height:1.4}.chat-auto-translated-pill{display:inline-block;font-size:.68rem;color:var(--text-secondary);background:rgba(128,128,128,.12);border-radius:9px;padding:1px 8px;margin-top:6px;margin-bottom:2px;letter-spacing:.01em}.chat-bubble-translation{color:var(--text-secondary);font-size:.82rem;font-style:italic;margin-top:.2rem;line-height:1.35}.chat-bubble-meta{display:flex;justify-content:flex-end;align-items:center;gap:.3rem;margin-top:.2rem}.chat-bubble-time{font-size:.65rem;color:var(--text-tertiary)}.chat-bubble-status{font-size:.65rem;color:var(--text-tertiary)}.chat-bubble-status--read{color:#60a5fa}.chat-bubble-status--partial{color:#93c5fd}.chat-read-info{display:inline-block;font-size:.7rem;color:#60a5fa;cursor:pointer;padding:4px 8px;margin-left:4px;border-radius:8px;transition:background .15s}.chat-read-info:hover{background:rgba(96,165,250,.12)}.chat-read-info:active{background:rgba(96,165,250,.22)}.read-receipts-popup{position:fixed;z-index:9999;min-width:180px;max-width:260px;background:var(--bg-elevated);border:1px solid var(--border-default);border-radius:12px;padding:10px 0;box-shadow:0 8px 24px rgba(0,0,0,.15)}.read-receipts-header{font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;padding:0 14px 8px;border-bottom:1px solid var(--border-default)}.read-receipts-empty{padding:12px 14px;font-size:.82rem;color:var(--text-tertiary)}.read-receipts-item{display:flex;align-items:center;justify-content:space-between;padding:6px 14px;gap:10px}.read-receipts-name{font-size:.85rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.read-receipts-time{font-size:.72rem;color:var(--text-tertiary);flex-shrink:0}.chat-voice-player{display:flex;align-items:center;gap:.5rem;border:1px solid var(--chat-player-border);border-radius:12px;padding:6px}.chat-voice-btn{width:2rem;height:2rem;border-radius:50%;border:none;background:rgba(249,115,22,.3);color:#f97316;display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;transition:background .15s}.chat-voice-btn:hover{background:rgba(249,115,22,.5)}.chat-voice-btn--translated{background:rgba(96,165,250,.2);color:#60a5fa}.chat-voice-btn--translated:hover{background:rgba(96,165,250,.35)}.chat-voice-progress-wrap{flex:1;height:3px;background:hsla(0,0%,100%,.1);border-radius:2px;overflow:hidden}.chat-voice-progress-bar{height:100%;background:#f97316;border-radius:2px;width:0%;transition:width .1s linear}.chat-voice-progress-bar--translated{background:#60a5fa}.chat-voice-duration{font-size:.7rem;color:var(--text-secondary);flex-shrink:0;min-width:2.2rem;text-align:right}.chat-voice-label{font-size:.6rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary);margin-bottom:.15rem}.chat-mic-btn--recording{background:linear-gradient(135deg, rgba(239, 68, 68, 0.22), rgba(248, 113, 113, 0.2)) !important;color:#ef4444 !important;border-color:rgba(239,68,68,.45) !important;animation:chat-mic-pulse 1.2s ease-in-out infinite}.chat-mic-btn.chat-mic-btn--mode-video{background:linear-gradient(135deg, rgba(59, 130, 246, 0.18), rgba(96, 165, 250, 0.2));color:#3b82f6;border-color:rgba(59,130,246,.38)}.chat-mic-btn.chat-mic-btn--armed{box-shadow:0 0 0 2px rgba(249,115,22,.28),0 0 0 6px rgba(249,115,22,.08)}@keyframes chat-mic-pulse{0%,100%{box-shadow:0 0 0 0 rgba(239,68,68,.3)}50%{box-shadow:0 0 0 8px rgba(239,68,68,0)}}.chat-record-popup{position:absolute;bottom:calc(100% + 8px);right:0;background:var(--bg-elevated-2);border:1px solid var(--border-default);border-radius:12px;padding:6px;display:flex;flex-direction:column;gap:2px;box-shadow:0 4px 16px rgba(0,0,0,.2);z-index:100;min-width:150px}.chat-record-popup.hidden{display:none}.chat-record-popup-btn{display:flex;align-items:center;gap:10px;padding:8px 14px;border:none;background:rgba(0,0,0,0);color:var(--text-primary);border-radius:8px;font-size:.85rem;cursor:pointer;white-space:nowrap}.chat-record-popup-btn:hover{background:var(--bg-hover)}.chat-record-popup-btn svg{flex-shrink:0;color:var(--text-secondary)}.chat-voicephoto{position:relative;width:270px;border-radius:12px;overflow:hidden;background:#111}.chat-voicephoto-img-wrap{position:relative}.chat-voicephoto-img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;cursor:pointer}.chat-voicephoto-hint{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:16px 24px;background:rgba(0,0,0,.45);color:hsla(0,0%,100%,.9);font-size:.85rem;text-align:center;cursor:pointer;transition:opacity .3s ease}.chat-voicephoto-hint.hidden{opacity:0;pointer-events:none}.chat-voicephoto-caption{position:absolute;bottom:0;left:0;right:0;padding:24px 14px 12px;background:linear-gradient(transparent, rgba(0, 0, 0, 0.8));color:#fff;font-size:.9rem;line-height:1.4;text-shadow:0 1px 3px rgba(0,0,0,.6);pointer-events:none;min-height:20px}.chat-vp-word{opacity:.35;transition:opacity .15s ease}.chat-vp-word--active{opacity:1}.chat-voicephoto-controls{display:flex;align-items:center;gap:10px;padding:10px 12px;background:rgba(0,0,0,.65);backdrop-filter:blur(12px)}.chat-voicephoto-play{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:none;background:#f97316;color:#fff;cursor:pointer;flex-shrink:0;transition:background .2s,transform .15s}.chat-voicephoto-play:hover{background:#ea580c}.chat-voicephoto-play:active{transform:scale(0.92)}.chat-voicephoto-progress-wrap{flex:1;display:flex;align-items:center}.chat-voicephoto-progress{width:100%;height:4px;background:hsla(0,0%,100%,.2);border-radius:2px;overflow:hidden;cursor:pointer}.chat-voicephoto-progress-bar{width:0%;height:100%;background:#f97316;border-radius:2px;transition:width .1s linear}.chat-voicephoto-dur{font-size:.75rem;color:hsla(0,0%,100%,.7);font-variant-numeric:tabular-nums;min-width:32px;text-align:right;flex-shrink:0}.chat-voicephoto-audio{display:none}.chat-voicephoto-translating{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;width:270px;aspect-ratio:3/4;background:rgba(0,0,0,.15);border-radius:12px;color:hsla(0,0%,100%,.7);font-size:.85rem}.chat-photo-capture-overlay{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.9);display:flex;align-items:center;justify-content:center}.chat-photo-capture-container{display:flex;flex-direction:column;align-items:center;width:100%;max-width:480px;gap:16px}.chat-photo-capture-video-wrap{position:relative;width:100%}.chat-photo-capture-video{width:100%;max-height:70vh;border-radius:16px;object-fit:cover;display:block;aspect-ratio:9/16}.chat-photo-capture-hint{position:absolute;bottom:16px;left:16px;right:16px;background:rgba(0,0,0,.6);color:#fff;padding:10px 16px;border-radius:10px;font-size:.85rem;text-align:center;backdrop-filter:blur(4px);pointer-events:none}.chat-photo-capture-hint--below{position:static;margin-top:10px;background:hsla(0,0%,100%,.1)}.chat-photo-capture-progress{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px 20px}.chat-photo-capture-spinner{width:40px;height:40px;border:3px solid hsla(0,0%,100%,.2);border-top:3px solid #f97316;border-radius:50%;animation:chatPhotoSpin .8s linear infinite}@keyframes chatPhotoSpin{to{transform:rotate(360deg)}}.chat-photo-capture-progress-text{color:hsla(0,0%,100%,.8);font-size:.9rem}.chat-photo-capture-preview{position:relative;width:100%}.chat-photo-capture-preview.hidden{display:none}.chat-photo-capture-img{width:100%;max-height:70vh;border-radius:16px;object-fit:cover;display:block}.chat-photo-capture-transcript{position:absolute;bottom:16px;left:16px;right:16px;background:rgba(0,0,0,.6);color:#fff;padding:10px 14px;border-radius:10px;font-size:.9rem;line-height:1.4;text-align:center;min-height:1.4em;backdrop-filter:blur(4px)}.chat-photo-capture-transcript:empty{display:none}.chat-photo-capture-rec-indicator{position:absolute;top:16px;right:16px;display:flex;align-items:center;gap:6px;background:rgba(0,0,0,.6);padding:4px 10px;border-radius:20px;color:#ef4444;font-size:.8rem;font-weight:600}.chat-photo-capture-rec-indicator.hidden{display:none}.chat-photo-capture-actions{display:flex;align-items:center;justify-content:center;gap:20px}.chat-photo-capture-btn{background:hsla(0,0%,100%,.12);color:#fff;border:none;border-radius:999px;padding:10px 20px;font-size:.9rem;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background .15s}.chat-photo-capture-btn:hover{background:hsla(0,0%,100%,.22)}.chat-photo-capture-btn.hidden{display:none}.chat-photo-capture-btn--snap{background:rgba(0,0,0,0);padding:0;color:#fff}.chat-photo-capture-btn--snap:hover{color:#f97316}.chat-photo-capture-btn--flip{background:hsla(0,0%,100%,.2);padding:12px;border-radius:50%;min-width:46px;min-height:46px;justify-content:center;touch-action:manipulation;-webkit-tap-highlight-color:rgba(0,0,0,0)}.chat-photo-capture-btn--flip:hover,.chat-photo-capture-btn--flip:active{background:hsla(0,0%,100%,.35)}.chat-photo-capture-btn--flip .chat-flip-icon{display:block;transition:transform .5s cubic-bezier(0.4, 0, 0.2, 1)}.chat-photo-capture-btn--flip.spinning .chat-flip-icon{transform:rotate(360deg)}.chat-photo-capture-btn--stop{background:rgba(239,68,68,.3);color:#ef4444}.chat-photo-capture-btn--stop:hover{background:rgba(239,68,68,.45)}.chat-photo-capture-btn--send{background:#f97316;font-weight:600}.chat-photo-capture-btn--send:hover{background:#ea580c}.chat-video-capture-video-wrap{position:relative;width:100%}.chat-video-capture-video-wrap.hidden{display:none}.chat-video-capture-video{width:100%;max-height:70vh;border-radius:16px;object-fit:cover;display:block;aspect-ratio:9/16}.chat-video-capture-preview{position:relative;width:100%}.chat-video-capture-preview.hidden{display:none}.chat-video-capture-preview-video{width:100%;max-height:70vh;border-radius:16px;object-fit:cover;display:block}.chat-video-capture-btn--record{background:rgba(0,0,0,0) !important;padding:0}.chat-video-capture-btn--record:hover svg circle:last-child{fill:#dc2626}.chat-recording-bar{background:rgba(239,68,68,.1);border-top:1px solid rgba(239,68,68,.15)}.chat-recording-bar--video{background:rgba(59,130,246,.12);border-top:1px solid rgba(59,130,246,.22)}.chat-recording-mode{font-size:.7rem;letter-spacing:.06em;font-weight:700;color:#ef4444}.chat-recording-bar--video .chat-recording-mode{color:#3b82f6}.chat-recording-dot{width:8px;height:8px;border-radius:50%;background:#ef4444;animation:chat-rec-blink 1s ease-in-out infinite}@keyframes chat-rec-blink{0%,100%{opacity:1}50%{opacity:.3}}.chat-recording-time{font-size:.85rem;color:#ef4444;font-weight:500;font-variant-numeric:tabular-nums}.chat-recording-bar--video .chat-recording-time{color:#3b82f6}.chat-voice-rec-overlay{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;animation:chatVoiceRecFadeIn .2s ease-out}@keyframes chatVoiceRecFadeIn{from{opacity:0}to{opacity:1}}.chat-voice-rec-dialog{position:relative;background:var(--bg-elevated-2, #232323);border-radius:16px;padding:24px;width:280px;box-shadow:0 8px 32px rgba(0,0,0,.5);animation:chatVoiceRecScaleIn .2s ease-out;display:flex;flex-direction:column;align-items:center;gap:16px}@keyframes chatVoiceRecScaleIn{from{opacity:0;transform:scale(0.92)}to{opacity:1;transform:scale(1)}}.chat-voice-rec-dialog-ready{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%}.chat-voice-rec-dialog-label{color:var(--text-secondary, rgba(255, 255, 255, 0.5));font-size:.78rem;text-align:center;line-height:1.4}.chat-voice-rec-dialog-recording{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%}.chat-voice-rec-round-btn{width:56px;height:56px;border-radius:50%;border:none;background:#64748b;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s,box-shadow .2s,transform .15s}.chat-voice-rec-round-btn:hover{background:#475569;transform:scale(1.06)}.chat-voice-rec-round-btn:active{transform:scale(0.94)}.chat-voice-rec-round-btn--cancel{background:rgba(0,0,0,0);color:#3b82f6;border:2px solid #3b82f6}.chat-voice-rec-round-btn--cancel:hover{background:rgba(59,130,246,.1)}[data-theme=dark] .chat-voice-rec-round-btn--cancel{color:hsla(0,0%,100%,.85);border-color:hsla(0,0%,100%,.5)}[data-theme=dark] .chat-voice-rec-round-btn--cancel:hover{background:hsla(0,0%,100%,.1)}.chat-voice-rec-round-btn--active{background:#ef4444;box-shadow:0 0 0 5px rgba(239,68,68,.2);animation:chatVoiceRecPulse 1.5s ease-in-out infinite}.chat-voice-rec-round-btn--active:hover{background:#dc2626}@keyframes chatVoiceRecPulse{0%,100%{box-shadow:0 0 0 5px rgba(239,68,68,.2)}50%{box-shadow:0 0 0 12px rgba(239,68,68,.06)}}.chat-voice-rec-close-btn{position:absolute;top:8px;right:8px;width:32px;height:32px;border-radius:50%;border:none;background:rgba(0,0,0,0);color:var(--text-secondary, rgba(255, 255, 255, 0.5));cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s;z-index:1}.chat-voice-rec-close-btn:hover{background:hsla(0,0%,100%,.1);color:#ef4444}.chat-voice-rec-btn-row{display:flex;align-items:center;justify-content:center;gap:20px}.chat-voice-rec-indicator{display:flex;align-items:center;gap:6px}.chat-voice-rec-time{color:#ef4444;font-size:.85rem;font-weight:600;font-variant-numeric:tabular-nums}.chat-voice-rec-canvas{width:100%;height:48px;border-radius:8px}.chat-date-separator{display:flex;justify-content:center;position:sticky;top:0;z-index:5;padding:.4rem 0;pointer-events:none}.chat-date-separator span{font-size:.72rem;font-weight:500;color:var(--text-secondary);background:var(--card-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:.15rem .7rem;border-radius:.5rem;box-shadow:var(--shadow-sm);border:1px solid var(--border-subtle)}.chat-bubble-group{display:flex;flex-direction:column;gap:2px}.chat-bubble-group--mine{align-items:flex-end}.chat-bubble-group--peer{align-items:flex-start}.chat-bubble-group--mine .chat-bubble--first{border-radius:1rem 1rem .25rem 1rem}.chat-bubble-group--mine .chat-bubble--middle{border-radius:1rem .25rem .25rem 1rem}.chat-bubble-group--mine .chat-bubble--last{border-radius:1rem .25rem .25rem 1rem}.chat-bubble-group--mine .chat-bubble--single{border-radius:1rem 1rem .25rem 1rem}.chat-bubble-group--peer .chat-bubble--first{border-radius:1rem 1rem 1rem .25rem}.chat-bubble-group--peer .chat-bubble--middle{border-radius:.25rem 1rem 1rem .25rem}.chat-bubble-group--peer .chat-bubble--last{border-radius:.25rem 1rem 1rem .25rem}.chat-bubble-group--peer .chat-bubble--single{border-radius:1rem 1rem 1rem .25rem}.chat-header-info{display:flex;flex-direction:column;min-width:0}.chat-header-phone{font-size:.7rem;color:var(--text-secondary);line-height:1.2}.chat-header-status{font-size:.65rem;color:var(--text-tertiary);line-height:1.2}.chat-header-status--online{color:#22c55e}.chat-typing-indicator{display:flex;align-items:center;gap:.4rem;padding:.3rem 1rem;font-size:.75rem;color:var(--text-tertiary);background:var(--glass-bg)}.chat-typing-dots{display:flex;gap:3px}.chat-typing-dots span{width:5px;height:5px;border-radius:50%;background:var(--text-tertiary);animation:chat-typing-bounce 1.4s ease-in-out infinite}.chat-typing-dots span:nth-child(2){animation-delay:.2s}.chat-typing-dots span:nth-child(3){animation-delay:.4s}@keyframes chat-typing-bounce{0%,60%,100%{transform:translateY(0);opacity:.35}30%{transform:translateY(-4px);opacity:1}}.chat-recording-indicator{display:flex;align-items:center;gap:.4rem;padding:.3rem 1rem;font-size:.75rem;color:#ef4444;background:rgba(239,68,68,.06)}.chat-recording-indicator-mic{color:#ef4444;animation:chat-rec-blink 1s ease-in-out infinite}.contact-activity{font-size:.75rem;font-style:italic}.contact-activity--typing{color:var(--accent, #6366f1)}.contact-activity--recording{color:#ef4444}.contact-activity--online{color:#22c55e;font-style:normal}.chat-scroll-fab{position:absolute;bottom:5rem;left:50%;transform:translateX(-50%);width:2.5rem;height:2.5rem;border-radius:50%;border:none;background:#f97316;color:#fff;display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 4px 12px rgba(0,0,0,.4);cursor:pointer;transition:transform .2s,opacity .2s;animation:chat-fab-slide-up .2s ease-out}.chat-scroll-fab:hover{transform:translateX(-50%) scale(1.08)}.chat-scroll-fab-count{position:absolute;top:-4px;right:-4px;background:#ef4444;color:#fff;font-size:.6rem;font-weight:600;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px}@keyframes chat-fab-slide-up{from{transform:translateX(-50%) translateY(20px);opacity:0}to{transform:translateX(-50%) translateY(0);opacity:1}}.chat-reply-bar{display:flex;align-items:center;gap:0;background:var(--glass-bg);border-top:1px solid var(--glass-border);padding:.4rem .75rem}.chat-reply-bar-accent{width:3px;height:2rem;background:#f97316;border-radius:2px;flex-shrink:0}.chat-reply-bar-content{display:flex;flex-direction:column;margin-left:.5rem;min-width:0;flex:1}.chat-reply-bar-name{font-size:.72rem;font-weight:600;color:#f97316;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-reply-bar-text{font-size:.75rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-reply-bar-close{background:none;border:none;color:var(--text-secondary);font-size:1.2rem;cursor:pointer;padding:0 .3rem;flex-shrink:0}.chat-reply-bar-close:hover{color:var(--text-primary)}.chat-bubble-reply{padding:.3rem .5rem;margin-bottom:.3rem;border-left:3px solid #60a5fa;background:rgba(96,165,250,.08);border-radius:0 .35rem .35rem 0;cursor:pointer}.chat-bubble-reply-name{font-size:.68rem;font-weight:600;color:#60a5fa}.chat-bubble-reply-text{font-size:.72rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.chat-bubble-edited{font-size:.6rem;color:var(--text-tertiary);font-style:italic;margin-left:.3rem}.chat-context-overlay{position:fixed;inset:0;z-index:99;background:rgba(0,0,0,.35);animation:chat-ctx-fade .15s ease-out}.chat-context-overlay.hidden{display:none}@keyframes chat-ctx-fade{from{opacity:0}to{opacity:1}}.chat-context-wrap{position:fixed;z-index:100;display:flex;flex-direction:column;gap:.35rem;animation:chat-ctx-pop .15s ease-out}@keyframes chat-ctx-pop{from{opacity:0;scale:.92}to{opacity:1;scale:1}}.chat-reaction-bar{display:flex;gap:.15rem;padding:.3rem .4rem;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:1.5rem;box-shadow:0 8px 30px rgba(0,0,0,.18);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.chat-reaction-btn{display:flex;align-items:center;justify-content:center;width:2.2rem;height:2.2rem;font-size:1.25rem;border:none;background:rgba(0,0,0,0);border-radius:50%;cursor:pointer;transition:transform .12s ease,background .12s ease;padding:0;line-height:1}.chat-reaction-btn:hover{background:hsla(0,0%,100%,.1)}.chat-reaction-btn:active{transform:scale(1.3)}.chat-reaction-btn--active{background:rgba(249,115,22,.2)}.chat-context-menu{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:.75rem;box-shadow:0 8px 30px rgba(0,0,0,.5);padding:.3rem 0;min-width:140px;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.chat-context-menu button{display:block;width:100%;text-align:left;background:none;border:none;color:var(--text-primary);padding:.5rem 1rem;font-size:.85rem;cursor:pointer;transition:background .1s}.chat-context-menu button:hover{background:hsla(0,0%,100%,.06)}.chat-context-menu button[data-action=delete]{color:#ef4444}@media(max-width: 575px){.chat-reaction-bar{gap:.35rem;padding:.5rem .6rem}.chat-reaction-btn{width:2.6rem;height:2.6rem;font-size:1.4rem}.chat-context-menu{min-width:180px}.chat-context-menu button{padding:.65rem 1.1rem;font-size:.95rem}}@keyframes chat-ctx-scale{from{transform:scale(0.9);opacity:0}to{transform:scale(1);opacity:1}}.chat-reactions{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:-0.35rem;padding-top:.1rem;position:relative;max-width:78%}.chat-reaction-badge{display:inline-flex;align-items:center;gap:.2rem;padding:.1rem .4rem;font-size:.82rem;border-radius:.75rem;background:var(--glass-bg);border:1px solid var(--glass-border);cursor:pointer;transition:transform .12s ease,background .12s ease;user-select:none;-webkit-user-select:none;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.chat-reaction-badge:hover{background:hsla(0,0%,100%,.1)}.chat-reaction-badge--mine{border-color:var(--accent);background:rgba(249,115,22,.12)}.chat-reaction-badge .reaction-count{font-size:.68rem;color:var(--text-secondary)}@keyframes chat-reaction-pop{0%{transform:scale(0);opacity:0}60%{transform:scale(1.2)}100%{transform:scale(1);opacity:1}}.chat-reaction-badge--new{animation:chat-reaction-pop .25s ease-out}.chat-unread-separator{display:flex;align-items:center;gap:.5rem;padding:.5rem 0}.chat-unread-separator::before,.chat-unread-separator::after{content:"";flex:1;height:1px;background:rgba(96,165,250,.3)}.chat-unread-separator span{font-size:.68rem;color:#60a5fa;white-space:nowrap;font-weight:500}.chat-voice-waveform{display:flex;align-items:center;gap:1.5px;height:28px;flex:1}.chat-voice-waveform-bar{width:2.5px;border-radius:1.5px;background:rgba(249,115,22,.5);transition:height .15s ease;min-height:3px}.chat-voice-waveform-bar--played{background:#f97316}.chat-voice-waveform--translated .chat-voice-waveform-bar{background:rgba(96,165,250,.4)}.chat-voice-waveform--translated .chat-voice-waveform-bar--played{background:#60a5fa}.chat-voice-seek{-webkit-appearance:none;appearance:none;flex:1;height:4px;border-radius:2px;background:rgba(249,115,22,.25);outline:none;cursor:pointer;margin:0;padding:0}.chat-voice-seek::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:#f97316;border:none;cursor:pointer;margin-top:0}.chat-voice-seek::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#f97316;border:none;cursor:pointer}.chat-voice-seek::-webkit-slider-runnable-track{height:4px;border-radius:2px}.chat-voice-seek::-moz-range-track{height:4px;border-radius:2px;background:rgba(249,115,22,.25)}.chat-voice-seek--translated{background:rgba(96,165,250,.25)}.chat-voice-seek--translated::-webkit-slider-thumb{background:#60a5fa}.chat-voice-seek--translated::-moz-range-thumb{background:#60a5fa}.chat-voice-seek--translated::-moz-range-track{background:rgba(96,165,250,.25)}@keyframes chatCheckBounce{0%{transform:scale(0)}60%{transform:scale(1.15)}100%{transform:scale(1)}}.chat-bubble-status--new{animation:chatCheckBounce .3s ease-out}.chat-list-online-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;position:absolute;z-index:2;bottom:2px;right:2px;border:2px solid var(--bg-base)}.chat-list-e2e-badge{position:absolute;bottom:-2px;left:-2px;width:18px;height:18px;z-index:2;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid var(--text-secondary)}.chat-list-e2e-badge--locked{background:var(--accent);color:#fff}.chat-list-e2e-badge--unlocked{background:var(--text-secondary);color:#fff;opacity:1}.chat-bubble--sending{opacity:.6}.chat-list-avatar{position:relative}.app-tab{background:var(--bg-base)}.bottom-nav{display:flex;min-height:64px;background:var(--nav-bg);border-top:1px solid var(--border-default);flex-shrink:0;padding-bottom:env(safe-area-inset-bottom, 0px)}.bottom-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:none;background:rgba(0,0,0,0);color:var(--nav-inactive);font-size:.65rem;font-weight:500;cursor:pointer;transition:color .15s;position:relative;padding:0;-webkit-user-select:none;user-select:none}.bottom-nav-item svg{stroke:currentColor;fill:none}.bottom-nav-item--active{color:var(--nav-active)}.bottom-nav-item--active::before{content:"";position:absolute;top:0;left:20%;right:20%;height:3px;background:rgba(249,115,22,.15);border-radius:0 0 3px 3px}.bottom-nav-badge{position:absolute;top:4px;right:calc(50% - 20px);background:#ef4444;color:#fff;font-size:.55rem;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px}.chat-detail-avatar{width:36px;height:36px;border-radius:50%;background:rgba(249,115,22,.15);border:1px solid rgba(249,115,22,.3);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;color:var(--text-primary);flex-shrink:0;position:relative;overflow:hidden}.chat-detail-avatar img{width:100%;height:100%}.chat-detail-avatar.has-avatar{background:rgba(0,0,0,0);border:none}.chat-detail-avatar-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}.chat-input-bar{background:var(--nav-bg);border-top:1px solid var(--border-default);padding:6px 8px;padding-bottom:calc(6px + env(safe-area-inset-bottom, 0px))}.chat-input-row{flex:1;display:flex;align-items:end;background:var(--input-bg);border:1px solid var(--input-border);border-radius:24px;padding:2px 4px}.chat-input-field{background:rgba(0,0,0,0);border:none;border-radius:0;padding:8px 4px;color:var(--input-text);font-size:15px;outline:none;min-width:0;resize:none;overflow-y:hidden;max-height:315px;line-height:1.4;font-family:inherit}.chat-input-field::placeholder{color:var(--text-tertiary)}.chat-emoji-btn,.chat-attach-btn{width:38px;height:38px;border:none;background:rgba(0,0,0,0);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;border-radius:50%;padding:0}.chat-emoji-btn:hover,.chat-attach-btn:hover{color:var(--accent)}.contacts-sub-tab-bar{display:flex;border-bottom:1px solid var(--border-default, #e5e5e5);flex-shrink:0}.contacts-sub-tab{flex:1;padding:.55rem .5rem;background:rgba(0,0,0,0);border:none;border-bottom:2px solid rgba(0,0,0,0);color:var(--text-secondary, #888);font-size:.85rem;font-weight:500;cursor:pointer;text-align:center;transition:color .2s,border-color .2s}.contacts-sub-tab--active{color:var(--accent, #f97316);border-bottom:2px solid var(--accent, #f97316)}.group-create-btn{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;border:none;background:rgba(0,0,0,0);color:var(--accent, #f97316);font-size:.95rem;font-weight:500;cursor:pointer;border-bottom:1px solid var(--border, rgba(255, 255, 255, 0.08));transition:background .15s}.group-create-btn:hover{background:var(--hover-bg, rgba(255, 255, 255, 0.05))}.group-create-btn svg{stroke:var(--accent, #f97316);flex-shrink:0}.group-list-avatar{position:relative;width:44px;height:44px;min-width:44px;border-radius:50%;background:var(--accent, #f97316);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.1rem;flex-shrink:0}.group-detail-avatar-wrap{position:relative;cursor:pointer;flex-shrink:0}.group-avatar-edit{position:absolute;bottom:-2px;right:-2px;width:20px;height:20px;border-radius:50%;background:var(--bg-secondary, #2a2a3e);color:var(--accent, #f97316);display:flex;align-items:center;justify-content:center;border:2px solid var(--bg-primary, #1a1a2e);line-height:0}.group-list-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.group-member-count{color:var(--text-secondary, #888);font-size:.82rem}.group-edit-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;min-width:34px;border-radius:50%;border:none;background:var(--hover-bg, rgba(255, 255, 255, 0.08));color:var(--text-secondary, #888);cursor:pointer;transition:background .15s,color .15s;flex-shrink:0}.group-edit-btn:hover{background:var(--accent, #f97316);color:#fff}.group-edit-btn:active{transform:scale(0.92)}.group-role-badge{font-size:.65rem;padding:1px 6px;border-radius:4px;background:var(--accent, #f97316);color:#fff;margin-left:6px;font-weight:500}.group-detail-actions{border-bottom:1px solid var(--border-default, #e5e5e5)}.group-detail-member-header{font-size:.8rem;font-weight:600;color:var(--text-secondary, #888);text-transform:uppercase;letter-spacing:.5px}.group-contact-picker{max-height:300px;overflow-y:auto}.group-contact-picker-label{font-size:.82rem;font-weight:500;color:var(--text-secondary, #888);margin-bottom:8px}.group-contact-picker-item{display:flex;align-items:center;gap:10px;padding:8px 0;cursor:pointer}.group-contact-picker-item input[type=checkbox]{accent-color:var(--accent, #f97316);width:18px;height:18px;flex-shrink:0}.group-member-name-online{color:#22c55e}.group-member-remove-btn{background:rgba(0,0,0,0);border:none;color:var(--text-tertiary, #aaa);cursor:pointer;padding:4px;font-size:1.1rem;line-height:1}.group-member-remove-btn:hover{color:var(--danger, #ef4444)}.group-members-bar{display:flex;gap:.25rem;overflow-x:auto;white-space:nowrap;font-size:.7rem;color:var(--text-secondary, #888);padding:2px 0;scrollbar-width:none}.group-members-bar::-webkit-scrollbar{display:none}.group-bar-member{color:var(--text-secondary, #888)}.group-bar-member::after{content:","}.group-bar-member:last-child::after{content:""}.group-bar-member--online{color:#22c55e}.chat-list-group-badge{position:absolute;bottom:-2px;right:-2px;width:18px;height:18px;border-radius:50%;background:var(--accent, #f97316);color:#fff;display:flex;align-items:center;justify-content:center;border:1px solid hsla(0,0%,100%,.3);line-height:0}#btnGroupRename,#btnGroupLeave,#btnGroupDelete{font-size:.75rem !important}.chat-bubble-sender{font-size:.72rem;font-weight:600;color:var(--accent, #f97316);margin-bottom:2px}.group-video-grid{display:grid;width:100%;min-height:0;gap:4px;padding:4px;background:#000;flex-grow:1;overflow:hidden}.group-video-grid--1{grid-template-columns:1fr}.group-video-grid--2{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.group-video-grid--3{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.group-video-grid--3 .group-video-tile:last-child{grid-column:1/-1}.group-video-grid--4{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.group-video-tile{position:relative;border-radius:12px;overflow:hidden;background:#1a1a1a}.group-video-el{width:100%;height:100%;object-fit:cover}.group-video-name{position:absolute;bottom:8px;left:8px;background:rgba(0,0,0,.6);color:#fff;padding:2px 8px;border-radius:6px;font-size:.75rem;z-index:2}.group-video-muted-icon{position:absolute;top:8px;right:8px;background:rgba(0,0,0,.5);color:#ef4444;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:2}.group-video-cam-off{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#1a1a1a;z-index:1}.group-video-cam-off-initial{width:56px;height:56px;border-radius:50%;background:var(--accent, #f97316);color:#fff;font-size:1.5rem;font-weight:600;display:flex;align-items:center;justify-content:center}.group-call-banner{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:var(--accent, #f97316);color:#fff;font-size:.85rem;font-weight:500}.group-call-join-btn{background:#fff;color:var(--accent, #f97316);border:none;border-radius:8px;padding:4px 12px;font-weight:600;font-size:.8rem;cursor:pointer}.emoji-picker-wrap{position:relative;z-index:150;width:100%;animation:chat-ctx-scale .15s ease-out}.emoji-picker-wrap.hidden{display:none}.emoji-picker-wrap emoji-picker{width:100%;max-height:300px;--num-columns: 8;--border-size: 0;--border-radius: 0;--category-emoji-size: 1.25rem}[data-theme=light] .emoji-picker-wrap emoji-picker{--background: var(--bg-elevated, #fff);--input-border-color: var(--input-border, #e0e0e0);--indicator-color: var(--accent, #f97316);--button-active-background: var(--bg-hover, #f0f0f0);--input-font-color: var(--input-text, #1a1a2e)}[data-theme=dark] .emoji-picker-wrap emoji-picker{--background: var(--bg-elevated, #1a1a2e);--input-border-color: var(--input-border, #2a2a4a);--indicator-color: var(--accent, #f97316);--button-active-background: var(--bg-hover, #2a2a4a);--input-font-color: var(--input-text, #e0e0e0);color-scheme:dark}[data-theme=dark] .emoji-picker-wrap emoji-picker{--emoji-padding: 0.3rem}.chat-action-btns{display:flex;flex-shrink:0;margin-left:4px;position:relative}.chat-send-btn{width:38px;height:38px;background:#f97316;color:#fff;flex-shrink:0;transition:background .15s,transform .15s}.chat-send-btn:hover{background:#ea580c}.chat-mic-btn{width:38px;height:38px;background:#f97316;color:#fff;border:none;position:relative;flex-shrink:0;transition:background .18s,transform .12s}.chat-mic-btn:hover{background:#ea580c}.chat-mic-btn svg{width:20px;height:20px;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.settings-profile-section{padding:1rem 0;border-bottom:1px solid var(--border-subtle)}.settings-profile-row{display:flex;align-items:center;gap:.85rem;cursor:pointer;padding:.3rem 0}.settings-profile-avatar{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg, #f97316, #fb923c);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;position:relative}.settings-profile-avatar span{font-size:1.3rem;font-weight:600;color:#fff}.settings-profile-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.settings-profile-info{flex:1;min-width:0}.settings-profile-name{font-weight:600;font-size:1rem;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-profile-hint{font-size:.8rem;color:var(--text-secondary);margin-top:.1rem}.settings-profile-chevron{color:var(--text-secondary);flex-shrink:0}.profile-overlay{position:fixed;inset:0;z-index:60;background:var(--glass-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);display:flex;align-items:flex-start;justify-content:center}.profile-panel{width:100%;max-width:420px;height:100%;display:flex;flex-direction:column}.profile-panel-header{display:flex;align-items:center;gap:.6rem;padding:1rem;padding-top:calc(env(safe-area-inset-top, 0px) + 1rem)}.profile-panel-header h3{font-size:1.15rem;font-weight:600;margin:0;color:var(--text-primary)}.profile-back-btn{background:none;border:none;color:var(--text-primary);cursor:pointer;padding:.3rem;display:flex;align-items:center}.profile-panel-body{flex:1;display:flex;flex-direction:column;align-items:center;padding:2rem 1rem;gap:1rem}.profile-avatar-wrap{position:relative;cursor:pointer}.profile-avatar-large{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg, #f97316, #fb923c);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.profile-avatar-large span{font-size:3rem;font-weight:600;color:#fff}.profile-avatar-large img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.profile-avatar-edit{position:absolute;bottom:2px;right:2px;width:34px;height:34px;border-radius:50%;background:#f97316;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(0,0,0,.3)}.profile-action-btns{display:flex;gap:.75rem}.profile-action-btn{display:flex;flex-direction:column;align-items:center;gap:.4rem;background:var(--glass-bg);border:1px solid var(--border-subtle);border-radius:.75rem;color:var(--text-primary);padding:.8rem 1.2rem;font-size:.8rem;cursor:pointer;transition:background .15s;min-width:100px}.profile-action-btn:hover{background:hsla(0,0%,100%,.08)}.profile-action-btn svg{color:#f97316}.profile-camera-overlay{position:fixed;inset:0;z-index:300;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center}.profile-camera-overlay video{width:min(400px,90vw);height:min(400px,90vw);object-fit:cover;border-radius:50%}.profile-camera-guide{display:none}.profile-camera-controls{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-around;padding:2rem 1.5rem;padding-bottom:calc(env(safe-area-inset-bottom, 0px) + 2rem)}.profile-camera-btn{background:none;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}.profile-camera-btn--shutter{width:72px;height:72px;border-radius:50%;background:rgba(0,0,0,0);border:4px solid #fff;position:relative}.profile-camera-btn--shutter::after{content:"";position:absolute;inset:4px;border-radius:50%;background:#fff;transition:transform .1s}.profile-camera-btn--shutter:active::after{transform:scale(0.85)}.profile-camera-btn--close,.profile-camera-btn--flip{width:48px;height:48px}.profile-remove-btn{background:none;border:1px solid var(--border-subtle);border-radius:.5rem;color:#ef4444;padding:.4rem 1rem;font-size:.85rem;cursor:pointer}.profile-remove-btn:hover{background:rgba(239,68,68,.1)}.profile-field{width:100%;padding:.6rem 0;border-top:1px solid var(--border-subtle)}.profile-field:first-of-type{margin-top:.8rem}.profile-field-label{font-size:.75rem;color:var(--text-secondary);margin-bottom:.2rem}.profile-field-value{font-size:.9rem;color:var(--text-primary)}.profile-name-row{display:flex;align-items:center;gap:.5rem}.profile-field-input{flex:1;background:var(--input-bg);border:1px solid var(--border-subtle);border-radius:.5rem;padding:.4rem .6rem;font-size:.9rem;color:var(--text-primary);outline:none}.profile-field-input:focus{border-color:var(--accent)}.profile-name-save-btn{width:32px;height:32px;border-radius:50%;border:none;background:var(--accent);color:#fff;font-size:1rem;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center}.settings-section{display:flex;justify-content:space-between;align-items:center;padding:.8rem 0;border-bottom:1px solid var(--border-subtle)}.settings-section-stacked{flex-direction:column;align-items:stretch;gap:.35rem}.settings-accordion{flex-direction:column;align-items:stretch}.settings-accordion-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;width:100%}.settings-accordion-chevron{color:var(--text-secondary);transition:transform .2s;flex-shrink:0}.settings-accordion.open .settings-accordion-chevron{transform:rotate(180deg)}.settings-accordion-body{padding-top:.4rem}.privacy-row{display:flex;justify-content:space-between;align-items:center;padding:.3rem 0}.privacy-row-label{font-size:.85rem;color:var(--text-secondary)}.privacy-select{width:auto;min-width:120px;font-size:.85rem;padding:4px 8px}.privacy-hint{font-size:.75rem;color:var(--text-secondary);opacity:.7;margin-top:.25rem}.avatar-viewer-overlay{position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center}.avatar-viewer-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.85)}.avatar-viewer-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:1rem}.avatar-viewer-name{color:#fff;font-size:1.1rem;font-weight:600}.avatar-viewer-img{width:280px;height:280px;border-radius:12px;object-fit:cover}.settings-section-stacked .settings-name-row{width:100%}.settings-section-stacked .settings-name-input{width:100%;flex:1}.settings-label{font-size:.9rem;color:var(--text-primary)}.settings-value{font-size:.85rem;color:var(--text-secondary);padding-right:5px}.settings-plan-block{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.settings-plan-heading{font-size:.8rem;color:var(--text-secondary)}.settings-plan-name{font-size:1rem;font-weight:600;color:var(--text-primary)}.settings-plan-trial{font-size:.85rem;color:var(--text-secondary)}.settings-pro-trial{display:flex;flex-direction:column;gap:3px}.settings-pro-trial-label{font-size:.85rem;color:var(--text-secondary)}.settings-pro-trial-bar{height:4px;border-radius:2px;background:var(--bg-elevated-2, rgba(0, 0, 0, 0.1));overflow:hidden;max-width:200px}.settings-pro-trial-progress{height:100%;border-radius:2px;background:var(--accent, #f97316);transition:width .3s ease}.settings-upgrade-btn{font-size:.75rem;font-weight:600;padding:3px 10px;border-radius:4px;background:var(--accent);color:#fff;text-decoration:none;white-space:nowrap}.settings-name-row{display:flex;align-items:center;gap:.4rem}.settings-name-input{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:8px;padding:.3rem .6rem;font-size:.85rem;width:160px;outline:none;transition:border-color .2s}.settings-name-input:focus{border-color:var(--accent)}.settings-name-save-btn{background:var(--accent);color:#fff;border:none;border-radius:50%;width:28px;height:28px;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .2s}.settings-name-save-btn:hover{opacity:.85}.settings-section .app-select{width:auto;min-width:140px}.theme-toggle-btn{font-size:.75rem;font-weight:600;padding:.3rem .7rem;border-radius:.5rem;border:1px solid var(--border-default);background:rgba(0,0,0,0);color:var(--text-secondary);cursor:pointer;transition:all 180ms ease}.theme-toggle-btn:hover{background:var(--input-bg);color:var(--text-primary)}.theme-toggle-btn--active{background:var(--accent-subtle);border-color:var(--accent);color:var(--accent)}.install-hint-bar{background:var(--glass-bg);border-top:1px solid var(--glass-border);color:var(--text-secondary)}.pwa-install-banner{background:var(--glass-bg);border-bottom:1px solid var(--glass-border);display:flex;flex-direction:column;gap:6px}.pwa-install-banner-text{font-size:.8125rem;color:var(--text-secondary);line-height:1.4}.pwa-install-banner-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.pwa-install-banner-btn{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:4px 14px;font-size:.8125rem;font-weight:600;cursor:pointer;white-space:nowrap}.pwa-install-banner-dismiss{display:flex;align-items:center;gap:5px;font-size:.75rem;color:var(--text-tertiary);cursor:pointer;white-space:nowrap}.pwa-install-banner-dismiss input[type=checkbox]{width:14px;height:14px;margin:0;cursor:pointer}.approval-call-type{color:var(--text-primary)}.tab-call-body{background:var(--bg-base);position:relative}.preview-cam-off-icon{color:var(--text-tertiary)}.settings-body{background:var(--bg-base);padding:1rem}.settings-logout-btn{background:var(--bg-elevated);color:var(--text-primary);font-weight:600;font-size:.85rem}.settings-delete-btn{background:var(--color-danger-subtle);color:var(--color-danger);font-weight:600;font-size:.85rem}.settings-device-btn{background:var(--bg-elevated);color:var(--text-primary);font-weight:600;font-size:.85rem;cursor:pointer}.call-history-item.call-history-missed .chat-list-name,.call-history-item.call-history-missed .call-history-direction-icon{color:var(--color-danger)}.call-history-detail{display:flex;align-items:center;gap:4px}.call-history-type-icon{color:var(--text-secondary);flex:0 0 auto}.call-history-direction-icon{color:var(--text-secondary);flex:0 0 auto}.call-history-duration{color:var(--text-tertiary);font-size:.8rem}.settings-toggle{position:relative;display:inline-block;width:48px;height:26px;cursor:pointer;flex-shrink:0}.settings-toggle input{opacity:0;width:0;height:0}.settings-toggle-slider{position:absolute;inset:0;background:var(--text-secondary);border-radius:26px;transition:background .25s ease}.settings-toggle-slider::before{content:"";position:absolute;width:20px;height:20px;left:3px;bottom:3px;background:#fff;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .25s ease}.settings-toggle input:checked+.settings-toggle-slider{background:var(--accent)}.settings-toggle input:checked+.settings-toggle-slider::before{transform:translateX(22px)}.settings-unregister-section{margin-top:2rem;display:flex;gap:.75rem;flex-wrap:wrap}.settings-version{margin-top:1rem;opacity:.3}.settings-version-row{display:flex;align-items:center;gap:.4rem}.settings-version-text{font-size:.7rem}.settings-info-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:2px;display:flex;align-items:center;opacity:.7;transition:opacity .15s}.settings-info-btn:hover{opacity:1}.system-info-body{display:flex;flex-direction:column;gap:.6rem}.system-info-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.45rem 0;border-bottom:1px solid var(--border-subtle)}.system-info-row:last-child{border-bottom:none}.system-info-label{font-size:.8rem;font-weight:500;color:var(--text-secondary);flex-shrink:0}.system-info-value{font-size:.8rem;color:var(--text-primary);text-align:right;word-break:break-word}.chat-detail-peer-name{font-size:16px;font-weight:600}.modal-content-themed{background:var(--card-bg);color:var(--text-primary);border:1px solid var(--card-border);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur))}.modal-header-themed{border-bottom:1px solid var(--border-subtle)}.modal-footer-themed{border-top:1px solid var(--border-subtle)}.local-cam-off-bg{background:var(--bg-elevated)}.denied-overlay-bg{background:var(--bg-overlay)}.preview-cam-off-bg{background:var(--card-bg)}.chat-list-avatar{width:48px;height:48px;border-radius:50%;background:rgba(249,115,22,.15);border:1px solid rgba(249,115,22,.3);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:600;color:var(--text-primary);flex-shrink:0;position:relative}.chat-list-avatar-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%;z-index:1}.chat-list-avatar.has-avatar{background:rgba(0,0,0,0);border:none;color:rgba(0,0,0,0)}.chat-list-item{padding:12px 16px;border-bottom:1px solid var(--border-subtle)}.chat-list-name{font-size:15px;font-weight:600}.chat-list-preview{font-size:13px;color:var(--text-secondary)}.chat-list-status{display:inline-flex;vertical-align:middle;margin-right:3px;color:var(--text-secondary)}.chat-list-status--read{color:#53bdeb}.chat-list-time{font-size:12px;color:var(--text-secondary)}.chat-scroll-fab{position:absolute;bottom:5rem;right:16px;left:auto;transform:none;width:40px;height:40px;border-radius:50%;border:1px solid var(--border-default);background:var(--nav-bg);color:var(--accent);display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 4px 12px rgba(0,0,0,.4);cursor:pointer;transition:transform .2s,opacity .2s;animation:chat-fab-slide-up .2s ease-out}.chat-scroll-fab:hover{transform:scale(1.08)}.contact-request-section{border-bottom:1px solid var(--border-default);margin-bottom:.5rem;padding-bottom:.5rem}.contact-request-section-title{text-transform:uppercase;color:#f97316;font-size:.75rem;font-weight:600;letter-spacing:.04em;padding:.5rem 1rem .25rem}.contact-request-actions{display:flex;gap:.5rem;margin-top:.25rem}.contact-req-btn{font-size:.75rem;font-weight:600;border-radius:.5rem;border:none;padding:.3rem .75rem;cursor:pointer;transition:opacity .15s}.contact-req-btn:active{opacity:.7}.contact-req-btn--accept{background:#f97316;color:#fff}.contact-req-btn--decline{background:var(--input-bg);color:var(--text-secondary)}.contact-request-sent-label{font-size:.75rem;color:var(--text-tertiary);font-style:italic}.contact-action-btns{flex-shrink:0}.contact-action-btn{width:36px;height:36px;border-radius:50%;border:1px solid rgba(0,0,0,0);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .1s,opacity .15s;padding:0}.contact-action-btn:active{transform:scale(0.88)}.contact-action-btn--chat{background:rgba(249,115,22,.15);color:#f97316;border-color:rgba(249,115,22,.3)}.contact-action-btn--audio{background:rgba(34,197,94,.15);color:#22c55e;border-color:rgba(34,197,94,.3)}.contact-action-btn--video{background:rgba(96,165,250,.15);color:#60a5fa;border-color:rgba(96,165,250,.3)}.incoming-call-overlay{position:fixed;inset:0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(0,0,0,.85);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);animation:incomingCallFadeIn .3s ease-out}@keyframes incomingCallFadeIn{from{opacity:0}to{opacity:1}}@keyframes incomingCallPulse{0%,100%{transform:scale(1);opacity:.5}50%{transform:scale(1.15);opacity:.8}}.incoming-call-avatar{width:96px;height:96px;border-radius:50%;background:linear-gradient(135deg, #f97316, #fb923c);display:flex;align-items:center;justify-content:center;font-size:40px;color:#fff;font-weight:700;text-transform:uppercase;position:relative;margin-bottom:1.25rem}.incoming-call-avatar::before{content:"";position:absolute;inset:-8px;border-radius:50%;border:2px solid rgba(249,115,22,.4);animation:incomingCallPulse 2s ease-in-out infinite}.incoming-call-name{font-size:1.5rem;font-weight:600;color:#fff;text-align:center;margin-bottom:.35rem;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.incoming-call-type{font-size:.9rem;color:hsla(0,0%,100%,.6);text-align:center;margin-bottom:3rem}.incoming-call-actions{display:flex;gap:3.5rem}.incoming-call-btn{display:flex;flex-direction:column;align-items:center;gap:.5rem;background:none;border:none;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0)}.incoming-call-btn-circle{width:68px;height:68px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .15s ease}.incoming-call-btn-circle svg{width:28px;height:28px;fill:#fff}.incoming-call-btn:active .incoming-call-btn-circle{transform:scale(0.9)}.incoming-call-btn-label{font-size:.75rem;color:hsla(0,0%,100%,.7);font-weight:500}.incoming-call-btn--decline .incoming-call-btn-circle{background:#ef4444;box-shadow:0 4px 20px rgba(239,68,68,.4)}.incoming-call-btn--decline:active .incoming-call-btn-circle{box-shadow:0 2px 10px rgba(239,68,68,.3)}.incoming-call-btn--accept .incoming-call-btn-circle{background:#22c55e;box-shadow:0 4px 20px rgba(34,197,94,.4)}.incoming-call-btn--accept:active .incoming-call-btn-circle{box-shadow:0 2px 10px rgba(34,197,94,.3)}.confirm-overlay{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:var(--bg-overlay);backdrop-filter:blur(4px);padding:1rem;animation:confirm-fade-in .18s ease}@keyframes confirm-fade-in{from{opacity:0}to{opacity:1}}.confirm-card{background:var(--bg-elevated);border:1px solid var(--card-border);border-radius:1rem;box-shadow:var(--shadow-xl);padding:1.75rem 1.5rem 1.25rem;width:100%;max-width:340px;text-align:center;animation:confirm-slide-up .2s ease}@keyframes confirm-slide-up{from{transform:translateY(16px) scale(0.97);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.confirm-icon{margin-bottom:.75rem;color:var(--accent)}.confirm-message{font-size:1rem;font-weight:500;color:var(--text-primary);margin-bottom:1.25rem;line-height:1.45}.welcome-card{max-width:380px}.welcome-title{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin-bottom:.75rem}.welcome-text{font-size:.925rem;color:var(--text-secondary);line-height:1.55;margin-bottom:1.25rem;text-align:left}.confirm-actions{display:flex;gap:.625rem}.confirm-btn{flex:1;padding:.65rem 1rem;border:none;border-radius:.75rem;font-size:.9rem;font-weight:600;cursor:pointer;transition:transform .1s,opacity .15s}.confirm-btn:active{transform:scale(0.96)}.confirm-btn--cancel{background:var(--input-bg);color:var(--text-secondary);border:1px solid var(--border-default)}.confirm-btn--cancel:hover{opacity:.85}.confirm-btn--ok{background:var(--accent);color:#fff}.confirm-btn--ok:hover{background:var(--accent-hover)}.notify-prompt-dontask{display:flex;align-items:center;gap:.5rem;margin-top:1rem;font-size:.82rem;color:var(--text-secondary);cursor:pointer}.notify-prompt-dontask input[type=checkbox]{accent-color:var(--accent);width:1rem;height:1rem}.app-tooltip{position:fixed;z-index:300;padding:4px 10px;border-radius:6px;background:var(--bg-elevated-2);color:var(--text-primary);font-size:.72rem;font-weight:500;white-space:nowrap;box-shadow:var(--shadow-md);border:1px solid var(--border-default);pointer-events:none;opacity:0;transition:opacity .15s}.app-tooltip--visible{opacity:1}@media(min-width: 993px){#appShell{flex-direction:row !important}#bottomNav{flex-direction:column;width:60px;height:100% !important;border-top:none;border-right:1px solid var(--border-default);order:-1;padding-top:env(safe-area-inset-top, 0px);flex-shrink:0}#bottomNav .bottom-nav-item{flex:0 0 auto;padding:14px 0}#bottomNav .bottom-nav-item>span:not(.bottom-nav-badge){display:none}.bottom-nav-item--active::before{top:20%;bottom:20%;left:0;right:auto;width:3px;height:auto;border-radius:0 3px 3px 0}#appShell>.app-tab{flex:0 0 350px;max-width:350px;border-right:1px solid var(--border-default)}#chatDetailScreen{flex:1;display:flex !important;max-width:none;margin:0;border:none}.chat-root{max-width:none;margin:0}.chat-messages-container{padding-left:max(.75rem,(100% - 900px)/2);padding-right:max(.75rem,(100% - 900px)/2)}.chat-bubble{max-width:65%}#chatDetailBack{display:none !important}#chatEmptyState{background:var(--bg-base)}#chatDetailScreen.desktop-empty>:not(#chatEmptyState){display:none !important}.chat-list-item--active{background:var(--accent-subtle) !important}}.media-preview-overlay{position:fixed;inset:0;z-index:250;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:1rem}.media-preview-card{background:var(--bg-elevated);border-radius:16px;max-width:480px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-xl)}.media-preview-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border-default)}.media-preview-title{font-weight:600;font-size:.95rem;color:var(--text-primary)}.media-preview-close{background:none;border:none;font-size:1.5rem;line-height:1;color:var(--text-secondary);cursor:pointer;padding:0 .25rem}.media-preview-content{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;padding:1rem;min-height:120px;max-height:50vh;background:var(--bg-base)}.media-preview-content img{max-width:100%;max-height:48vh;border-radius:8px;object-fit:contain}.media-preview-content video{max-width:100%;max-height:48vh;border-radius:8px}.media-preview-content audio{width:100%}.media-preview-info{padding:.5rem 1rem;font-size:.8rem;color:var(--text-secondary);border-top:1px solid var(--border-subtle)}.media-preview-input-row{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-top:1px solid var(--border-default)}.media-preview-caption{flex:1;border:1px solid var(--input-border);background:var(--input-bg);color:var(--input-text);border-radius:20px;padding:.5rem 1rem;font-size:.9rem;outline:none}.media-preview-caption:focus{border-color:var(--accent)}.media-preview-send-btn{width:40px;height:40px;border:none;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background .15s}.media-preview-send-btn:hover{background:var(--accent-hover)}.chat-bubble--has-media{padding:4px !important}.chat-bubble--has-media .chat-bubble-meta{padding:0 8px 4px}.chat-bubble--has-media .chat-bubble-text{padding:4px 8px 0}.chat-bubble--has-media .chat-bubble-translation{padding:0 8px}.chat-bubble-media img{max-width:100%;border-radius:12px;cursor:pointer;display:block}.chat-video-poster{width:270px;max-width:100%;aspect-ratio:9/16;border-radius:12px;background-color:#1a1a1a;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:filter .2s ease}.chat-video-poster svg{filter:drop-shadow(0 1px 4px rgba(0, 0, 0, 0.6))}.chat-video-poster:hover{filter:brightness(1.15)}.chat-bubble-media video{width:270px;max-width:100%;aspect-ratio:9/16;border-radius:12px;display:block;transition:opacity .2s ease}.chat-video-player-wrap{position:relative;display:block;width:270px;max-width:100%}.chat-video-player-wrap video{width:100%;aspect-ratio:9/16;border-radius:12px;display:block}.chat-video-caption{position:absolute;bottom:0;left:0;right:0;padding:16px 10px 6px;background:linear-gradient(transparent, rgba(0, 0, 0, 0.3));color:#fff;font-size:1.15rem;line-height:1.35;text-align:center;text-shadow:0 1px 4px rgba(0,0,0,.9);pointer-events:none;min-height:16px}.chat-video-caption:empty{display:none}.chat-media-save-btn{margin-top:6px;border:1px solid var(--border-default);background:var(--bg-elevated-2);color:var(--text-primary);border-radius:8px;padding:4px 8px;display:inline-flex;align-items:center;gap:5px;font-size:.72rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.chat-media-save-btn:hover{background:var(--accent-subtle);border-color:rgba(249,115,22,.35);color:var(--accent)}.chat-media-save-btn:disabled{opacity:.5;cursor:default}.chat-media-save-btn svg{flex-shrink:0}.chat-video-toggle-row{margin-top:6px;display:inline-flex;gap:6px}.chat-video-toggle-btn{border:1px solid var(--border-default);background:rgba(0,0,0,0);color:var(--text-secondary);border-radius:999px;padding:2px 8px;font-size:.68rem;font-weight:600;cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease}.chat-video-toggle-btn--active{border-color:rgba(249,115,22,.42);color:var(--accent);background:var(--accent-subtle)}.chat-video-processing{display:inline-flex;align-items:center;gap:6px;margin:2px 2px 4px;padding:6px 10px;border-radius:10px;border:1px solid var(--border-default);background:var(--bg-elevated-2);color:var(--text-secondary);font-size:.74rem;font-weight:600}.chat-video-processing-clock{display:inline-flex;align-items:center;justify-content:center;color:var(--accent);animation:chat-video-processing-spin 1.3s linear infinite}@keyframes chat-video-processing-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.chat-bubble-media audio{width:100%;display:block;margin:4px 0}.chat-bubble-media-name{font-size:.8rem;color:var(--text-secondary);padding:4px 8px 0;display:flex;align-items:center;gap:.35rem}.chat-bubble-media-name svg{flex-shrink:0}.chat-bubble-youtube{position:relative;width:100%;padding-top:56.25%;margin-top:6px;border-radius:12px;overflow:hidden}.chat-bubble-youtube iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.chat-bubble-maps{position:relative;width:100%;padding-top:75%;margin-top:6px;border-radius:12px;overflow:hidden}.chat-bubble-maps iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.og-preview{margin-top:6px}.og-preview-link{display:block;border:1px solid hsla(0,0%,100%,.12);border-radius:10px;overflow:hidden;text-decoration:none;color:inherit;background:rgba(0,0,0,.15)}.og-preview-image{width:100%;max-height:180px;overflow:hidden}.og-preview-image img{width:100%;height:auto;display:block;object-fit:cover}.og-preview-title{padding:8px 10px 2px;font-size:.88rem;font-weight:600;line-height:1.3}.og-preview-desc{padding:2px 10px 4px;font-size:.78rem;opacity:.7;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.og-preview-domain{padding:4px 10px 8px;font-size:.72rem;opacity:.5}.chat-drop-zone{position:absolute;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.4);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);pointer-events:none}.chat-drop-zone-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;width:calc(100% - 2rem);height:calc(100% - 2rem);margin:1rem;border:3px dashed var(--accent);border-radius:20px;background:var(--bg-elevated);color:var(--accent);font-size:1.1rem;font-weight:600;opacity:.95}.media-lightbox{position:fixed;inset:0;z-index:300;background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center;cursor:zoom-out;padding:1rem}.media-lightbox img{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px}.chat-translate-toggle{display:flex;align-items:center;gap:4px;cursor:pointer;flex-shrink:0;position:relative}.chat-translate-toggle input{display:none}.chat-translate-slider{width:34px;height:18px;background:rgba(0,0,0,.22);border-radius:9px;position:relative;transition:background .2s}.chat-translate-slider::after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;background:#fff;border-radius:50%;transition:transform .2s,background .2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}.chat-translate-toggle input:checked+.chat-translate-slider{background:var(--accent)}.chat-translate-toggle input:checked+.chat-translate-slider::after{transform:translateX(16px);background:#fff}.chat-translate-label{font-size:11px;color:var(--text-tertiary);white-space:nowrap;transition:color .2s;user-select:none}.chat-translate-toggle input:checked~.chat-translate-label{color:var(--accent)}.chat-translate-icon{color:var(--text-tertiary);transition:color .2s}.chat-translate-toggle input:checked~.chat-translate-icon{color:var(--accent)}html[data-theme=dark] .chat-translate-slider{background:hsla(0,0%,100%,.2)}.e2e-lock{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:50%;background:rgba(0,0,0,0);color:var(--text-tertiary);cursor:pointer;transition:color .2s,background .2s;padding:0;flex-shrink:0}.e2e-lock:hover{background:var(--bg-elevated-2)}.e2e-lock--active{color:var(--accent)}.e2e-lock--active:hover{background:rgba(249,115,22,.1)}.msg-e2e-badge{display:inline-flex;align-items:center;margin-left:3px;color:var(--accent);vertical-align:middle;opacity:.7}.chat-bubble-text--encrypted{font-style:italic;opacity:.7}.media-gallery-overlay{position:fixed;inset:0;z-index:1100;background:var(--bg-base, #fff);color:var(--text-primary, #1a1a1a);display:flex;flex-direction:column}.media-gallery{display:flex;flex-direction:column;height:100%;overflow:hidden}.media-gallery-header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid var(--border-default, #e5e5e5);background:var(--bg-elevated, #fff)}.media-gallery-close{background:rgba(0,0,0,0);border:none;cursor:pointer;padding:.25rem;color:var(--text-primary, #1a1a1a);display:flex;align-items:center}.media-gallery-peer-name{font-weight:600;font-size:1.05rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary, #1a1a1a)}.media-gallery-tab-bar{display:flex;gap:0;border-bottom:1px solid var(--border-default, #e5e5e5);background:var(--bg-elevated, #fff);overflow-x:auto;-webkit-overflow-scrolling:touch}.media-gallery-tab{flex:1;padding:.6rem .5rem;background:rgba(0,0,0,0);border:none;border-bottom:2px solid rgba(0,0,0,0);font-size:.82rem;font-weight:500;color:var(--text-secondary, #888);cursor:pointer;white-space:nowrap;transition:color .2s,border-color .2s}.media-gallery-tab--active{color:var(--accent, #007aff);border-bottom:2px solid var(--accent, #007aff)}.media-gallery-grid{flex:1;overflow:auto;padding:.5rem;-webkit-overflow-scrolling:touch}.media-gallery-grid--tiles{display:grid;grid-template-columns:repeat(3, 1fr);gap:3px}.media-gallery-grid--list{display:flex;flex-direction:column;gap:2px}.media-gallery-item{position:relative;cursor:pointer;border-radius:4px;overflow:hidden}.media-gallery-grid--tiles .media-gallery-item{aspect-ratio:1}.media-gallery-thumb{width:100%;height:100%;object-fit:cover;display:block}.media-gallery-date{position:absolute;bottom:0;left:0;right:0;padding:.2rem .4rem;font-size:.65rem;color:#fff;background:linear-gradient(transparent, rgba(0, 0, 0, 0.55));text-align:right}.media-gallery-vp-badge{position:absolute;top:6px;left:6px;width:22px;height:22px;border-radius:50%;background:rgba(0,0,0,.5);color:#fff;display:flex;align-items:center;justify-content:center}.media-gallery-item--list{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;background:var(--bg-elevated, #f6f6f6);border-radius:8px;transition:background .15s}.media-gallery-item--list:active{background:var(--bg-elevated-2, #eee)}.media-gallery-video-thumb{position:relative;width:56px;height:56px;border-radius:6px;overflow:hidden;flex-shrink:0;background:#000}.media-gallery-video-preview{width:100%;height:100%;object-fit:cover}.media-gallery-play{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);color:hsla(0,0%,100%,.9);filter:drop-shadow(0 1px 3px rgba(0, 0, 0, 0.4))}.media-gallery-music-icon{width:44px;height:44px;border-radius:50%;background:#e879a0;color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.media-gallery-voice-icon{width:44px;height:44px;border-radius:50%;background:var(--accent, #007aff);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.media-gallery-meta{display:flex;flex-direction:column;gap:.15rem;min-width:0}.media-gallery-meta-title{font-size:.88rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary, #1a1a1a)}.media-gallery-meta-sub{font-size:.75rem;color:var(--text-secondary, #888)}.media-gallery-empty{display:flex;align-items:center;justify-content:center;flex:1;color:var(--text-secondary, #888);font-size:.9rem;padding:2rem}.media-viewer-overlay{position:fixed;inset:0;z-index:1200;background:rgba(0,0,0,.92);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem}.media-viewer-close{position:absolute;top:12px;right:12px;z-index:10;background:hsla(0,0%,100%,.15);backdrop-filter:blur(8px);border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;color:#fff;cursor:pointer;transition:background .2s}.media-viewer-close:hover{background:hsla(0,0%,100%,.25)}.media-viewer-img{max-width:100%;max-height:calc(100vh - 6rem);object-fit:contain;border-radius:4px}.media-viewer-video{max-width:100%;max-height:calc(100vh - 6rem);border-radius:8px;background:#000;outline:none}.media-viewer-audio-card{display:flex;flex-direction:column;align-items:center;gap:1.2rem;padding:2.5rem 2rem 2rem;background:hsla(0,0%,100%,.08);backdrop-filter:blur(20px);border-radius:16px;min-width:280px;max-width:360px}.media-viewer-audio-icon{width:80px;height:80px;border-radius:50%;background:var(--accent, #007aff);color:#fff;display:flex;align-items:center;justify-content:center}.media-viewer-audio-title{color:#fff;font-size:.95rem;font-weight:500;text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-viewer-audio{width:100%}.media-viewer-vp-frame{position:relative;max-width:100%;max-height:calc(100vh - 4rem);border-radius:8px;overflow:hidden}.media-viewer-vp-img{display:block;max-width:100%;max-height:calc(100vh - 4rem);object-fit:contain}.media-viewer-vp-caption{position:absolute;bottom:3.5rem;left:0;right:0;padding:24px 14px 12px;background:linear-gradient(transparent, rgba(0, 0, 0, 0.8));color:#fff;font-size:1.05rem;font-weight:500;line-height:1.4;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.6);pointer-events:none;min-height:20px}.media-viewer-vp-caption:empty{background:none}.media-viewer-vp-caption--static{opacity:.85}.media-viewer-vp-word{opacity:.35;transition:opacity .15s ease}.media-viewer-vp-word--active{opacity:1}.media-viewer-vp-controls{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;gap:10px;padding:10px 12px;background:rgba(0,0,0,.65);backdrop-filter:blur(12px)}.media-viewer-vp-controls audio{display:none}.media-viewer-vp-play{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:none;background:#f97316;color:#fff;cursor:pointer;flex-shrink:0;transition:background .15s,transform .1s}.media-viewer-vp-play:hover{background:#ea580c}.media-viewer-vp-play:active{transform:scale(0.92)}.media-viewer-vp-progress-wrap{flex:1;display:flex;align-items:center}.media-viewer-vp-progress{width:100%;height:4px;background:hsla(0,0%,100%,.2);border-radius:2px;overflow:hidden}.media-viewer-vp-progress-bar{width:0%;height:100%;background:#f97316;border-radius:2px;transition:width .1s linear}.media-viewer-vp-dur{font-size:.75rem;color:hsla(0,0%,100%,.7);font-variant-numeric:tabular-nums;min-width:32px;text-align:right;flex-shrink:0}.chat-header-info{cursor:pointer}.storage-notice{position:fixed;bottom:0;left:0;right:0;z-index:9999;padding:16px 24px;background:rgba(30,41,59,.95);border-top:1px solid hsla(0,0%,100%,.08);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 -4px 24px rgba(0,0,0,.2);animation:storageSlideUp .4s ease}.storage-notice__inner{max-width:960px;margin:0 auto;display:flex;align-items:center;gap:16px}.storage-notice__icon{flex-shrink:0;color:#3b82f6}.storage-notice__text{font-size:13px;color:hsla(0,0%,100%,.7);line-height:1.6;flex:1}.storage-notice__text a{color:#3b82f6;text-decoration:underline;text-underline-offset:2px}.storage-notice__link{font-size:13px;color:#3b82f6;text-decoration:underline;text-underline-offset:2px;flex-shrink:0}.storage-notice__btn{flex-shrink:0;padding:8px 24px;border:none;border-radius:980px;background:#3b82f6;color:#fff;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s ease,transform .2s ease}.storage-notice__btn:hover{background:#2563eb;transform:translateY(-1px)}@keyframes storageSlideUp{from{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width: 640px){.storage-notice__inner{flex-direction:column;text-align:center;gap:12px}.storage-notice__icon{display:none}}/*# sourceMappingURL=call.min.css.map */
