.app-container{--font-main:"Pretendard", "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, system-ui, Roboto, sans-serif;--nex-primary:#3b82f6;--nex-primary-hover:#2563eb;--nex-gradient:linear-gradient(135deg, #3b82f6 0%, #8b5cf6 50%, #ec4899 100%);--nex-gradient-subtle:linear-gradient(135deg, #3b82f61f 0%, #8b5cf61f 100%);--kakao-yellow:#fee500;--kakao-text:#191919;--ktalk-primary:#6366f1;--ktalk-violet:#8b5cf6;--telegram-blue:var(--nex-primary,#3b82f6);--online-green:#10b981;--danger-red:#ef4444;--warning-amber:#f59e0b;--bg-app:#07090d;--bg-sidebar:#0e121a;--bg-chat:#0a0e15;--bg-surface:#151b26;--bg-surface-hover:#1d2535;--bg-glass:#0e121adb;--bg-glass-card:#151b26f5;--bg-glass-input:#0a0e15e6;--bg-active-room:#f5b80024;--text-main:#f8fafc;--text-muted:#94a3b8;--text-dim:#64748b;--text-inverse:#0f172a;--border-subtle:#ffffff14;--border-active:#3b82f666;--border-glass:#ffffff1f;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 20px #0006;--shadow-lg:0 10px 30px #0009;--shadow-xl:0 16px 40px #000000a6;--shadow-glow:0 0 25px #3b82f659;--sidebar-width:380px;--drawer-width:380px;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-full:9999px;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.25s cubic-bezier(.4, 0, .2, 1);--transition-smooth:.35s cubic-bezier(.16, 1, .3, 1);background-color:var(--bg-app);width:100%;height:100%;color:var(--text-main);font-family:var(--font-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;box-sizing:border-box;line-height:1.5;display:flex;position:relative;overflow:hidden}.app-container *,.app-container :before,.app-container :after{box-sizing:border-box;-webkit-tap-highlight-color:transparent}.app-container[data-theme=light]{--bg-app:#f1f5f9;--bg-sidebar:#fff;--bg-chat:#f8fafc;--bg-surface:#fff;--bg-surface-hover:#e2e8f0;--bg-glass:#ffffffe0;--bg-glass-card:#fffffffa;--bg-glass-input:#f1f5f9e6;--bg-active-room:#3b82f61a;--text-main:#0f172a;--text-muted:#64748b;--text-dim:#94a3b8;--text-inverse:#fff;--border-subtle:#00000014;--border-active:#3b82f666;--border-glass:#00000014;--shadow-sm:0 1px 3px #0000000f;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 12px 30px #0000001f;--shadow-xl:0 16px 40px #0000001f;--shadow-glow:0 0 20px #3b82f633}.app-container ::-webkit-scrollbar{width:6px;height:6px}.app-container ::-webkit-scrollbar-track{background:0 0}.app-container ::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:9999px}.app-container[data-theme=light] ::-webkit-scrollbar-thumb{background:#00000026}.app-container ::-webkit-scrollbar-thumb:hover{background:#ffffff40}.app-container h1,.app-container h2,.app-container h3,.app-container h4,.app-container h5,.app-container h6{letter-spacing:-.02em;font-weight:700}.app-container button,.app-container input,.app-container textarea,.app-container select{font-family:inherit;font-size:inherit;background:0 0;border:none;outline:none}.app-container button{cursor:pointer;transition:all var(--transition-fast)}.top-header{background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border-subtle);z-index:50;justify-content:space-between;align-items:center;height:60px;padding:0 20px;display:flex;position:absolute;top:0;left:0;right:0}.workspace-container{width:100%;height:100%;padding-top:60px;display:flex;position:relative;overflow:hidden}.space-switcher{background:var(--bg-surface-hover,#0000000d);border:1px solid var(--border-subtle,#00000014);border-radius:9999px;align-items:center;padding:3px;display:flex;position:relative;box-shadow:inset 0 1px 2px #0000000d}.space-btn{color:var(--text-muted,#64748b);z-index:2;cursor:pointer;background:0 0;border:none;border-radius:9999px;align-items:center;gap:6px;padding:6px 16px;font-size:13px;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.space-btn:hover{color:var(--text-main,#0f172a)}.space-btn.active{border:none;font-weight:800;box-shadow:0 2px 8px #f5b80040;color:var(--ksb-text-on-brand,#07090d)!important;background:var(--ksb-brand-fill,#f5b800)!important}.space-btn.active.work{border:none;box-shadow:0 2px 8px #0284c759;color:#fff!important;background:#0284c7!important}.badge-online{background-color:var(--online-green);border:2px solid var(--bg-sidebar);border-radius:50%;width:9px;height:9px;display:inline-block}.badge-unread{color:#fff;text-align:center;background:linear-gradient(135deg,#ef4444 0%,#f43f5e 100%);border-radius:9999px;min-width:18px;padding:2px 7px;font-size:11px;font-weight:700;box-shadow:0 2px 6px #ef444466}@keyframes fadeInScale{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes pulseRecording{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(1.2)}}.pulse-recording{animation:1s ease-in-out infinite pulseRecording}.animate-fade{animation:.25s cubic-bezier(.16,1,.3,1) forwards fadeInScale}.animate-slide-right{animation:.3s cubic-bezier(.16,1,.3,1) forwards slideInRight}.glass-panel{background:var(--bg-glass);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border-glass);border-radius:var(--radius-md)}.interactive-hover{transition:transform var(--transition-fast), background var(--transition-fast)}.interactive-hover:hover{background-color:var(--bg-surface-hover);transform:translateY(-1px)}.interactive-hover:active{transform:translateY(0)}.msg-context-menu-item{width:100%;color:var(--text-main);cursor:pointer;text-align:left;transition:all var(--transition-fast);background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:13px;font-weight:500;display:flex}.msg-context-menu-item:hover{background-color:var(--bg-surface-hover);color:var(--text-main);transform:translate(2px)}.msg-context-menu-item:active{transform:scale(.98)}.msg-reaction-btn{cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:4px 6px;font-size:20px;transition:transform .15s cubic-bezier(.34,1.56,.64,1);display:flex}.msg-reaction-btn:hover{background:var(--bg-surface-hover);transform:scale(1.35)translateY(-2px)}.msg-reaction-btn:active{transform:scale(1.1)}.ktalk-emoji-grid-btn:hover{transform:scale(1.28);background:var(--bg-surface-hover)!important}.ktalk-emoji-grid-btn:active{transform:scale(.95)}.msg-hover-actions{opacity:0;pointer-events:none;transition:opacity var(--transition-fast)}.msg-bubble-group:hover .msg-hover-actions{opacity:1;pointer-events:auto}@media (max-width:768px){.app-container{width:100vw!important;height:100dvh!important}.hide-mobile,.msg-hover-actions{display:none!important}.space-btn span{display:none}.space-btn{padding:6px 10px}.sidebar-container{width:100%!important}.sidebar-room-list{padding-bottom:calc(76px + env(safe-area-inset-bottom,16px))!important}.drawer-container{position:absolute;top:0;bottom:0;right:0;width:100%!important;max-width:100%!important}.ktalk-chat-header{height:56px!important;padding:0 12px!important}.ktalk-composer-bar{padding:6px 10px!important}}@keyframes callFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes callRipple{0%{opacity:.8;transform:scale(.95)}50%{opacity:.4}to{opacity:0;transform:scale(1.4)}}@keyframes callPulse{0%{transform:scale(1);box-shadow:0 0 #10b981b3}70%{transform:scale(1.05);box-shadow:0 0 0 16px #10b98100}to{transform:scale(1);box-shadow:0 0 #10b98100}}@keyframes pulseBorder{0%{border-color:#10b98199;box-shadow:0 0 15px #10b98166}50%{border-color:#10b981;box-shadow:0 0 35px #10b981cc}to{border-color:#10b98199;box-shadow:0 0 15px #10b98166}}.app-container.mode-floating{--sidebar-width:100%}.app-container.mode-floating .sidebar-container{border-right:none!important;width:100%!important;max-width:100%!important}.app-container.mode-floating .workspace-container{overflow:hidden}@keyframes slideUpMobile{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (max-width:768px){.ktalk-calendar-modal-mobile{border-radius:0!important;width:100%!important;max-width:100%!important;height:100dvh!important;max-height:100dvh!important}}.ktalk-fab-compose{color:#fff;cursor:pointer;z-index:25;background:linear-gradient(135deg,#7c3aed 0%,#6366f1 50%,#3b82f6 100%);border:none;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s;display:flex;position:absolute;bottom:74px;right:18px;box-shadow:0 4px 18px #7c3aed73,0 0 1px #fff3}.ktalk-fab-compose:hover{transform:scale(1.08);box-shadow:0 6px 24px #7c3aeda6,0 0 12px #6366f166}.ktalk-fab-compose:active{transform:scale(.95)}.telegram-new-chat-sheet,.ktalk-new-chat-sheet{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:20px;flex-direction:column;width:95%;max-width:460px;max-height:85vh;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 48px #00000080,0 0 1px #ffffff1a}@media (max-width:768px){.telegram-new-chat-sheet,.ktalk-new-chat-sheet{animation:.25s cubic-bezier(.16,1,.3,1) forwards slideUpMobile;border-bottom-right-radius:0!important;border-bottom-left-radius:0!important;width:100%!important;max-width:100%!important;height:90vh!important;max-height:90vh!important}}.telegram-action-item,.ktalk-action-item{cursor:pointer;text-align:left;background:0 0;border:none;border-radius:12px;align-items:center;gap:14px;width:100%;padding:10px 16px;transition:background-color .15s;display:flex}.telegram-action-item:hover,.ktalk-action-item:hover{background:var(--bg-surface-hover)}.telegram-action-icon,.ktalk-action-icon{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.telegram-contact-item,.ktalk-contact-item{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:12px;align-items:center;gap:12px;padding:10px 16px;transition:background-color .15s;display:flex}.telegram-contact-item:hover,.ktalk-contact-item:hover{background:var(--bg-surface-hover)}.telegram-contact-item:active,.ktalk-contact-item:active{background:var(--bg-app)}.app-container.telegram-layout .workspace-container{padding-top:0!important}.telegram-sidebar-top{background:var(--bg-sidebar);border-bottom:1px solid var(--border-subtle);box-sizing:border-box;flex-shrink:0;align-items:center;gap:8px;width:100%;padding:10px 14px;display:flex}.telegram-icon-btn{width:36px;height:36px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s cubic-bezier(.16,1,.3,1);display:flex}.telegram-icon-btn:hover{background:var(--bg-surface-hover);color:var(--text-main);transform:scale(1.05)}.telegram-icon-btn:active{transform:scale(.95)}.telegram-search-bar{background:var(--bg-surface);border:1px solid var(--border-subtle);box-sizing:border-box;border-radius:9999px;flex:1;align-items:center;gap:8px;min-width:0;padding:6px 12px;transition:all .2s;display:flex}.telegram-search-bar:focus-within{background:var(--bg-surface);border-color:#08c;box-shadow:0 0 0 2px #0088cc40}.telegram-search-input{width:100%;min-width:0;color:var(--text-main);background:0 0;border:none;outline:none;flex:1;font-size:13px}.telegram-search-input::placeholder{color:var(--text-dim)}.telegram-clear-btn{width:18px;height:18px;color:var(--text-dim);cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;display:flex}.telegram-folder-tabs{scrollbar-width:none;background:var(--bg-sidebar);border-bottom:1px solid var(--border-subtle);box-sizing:border-box;flex-shrink:0;align-items:center;gap:4px;width:100%;padding:8px 12px;display:flex;overflow-x:auto}.telegram-folder-tabs::-webkit-scrollbar{display:none}.telegram-folder-tab{white-space:nowrap;color:var(--text-muted);cursor:pointer;text-align:center;background:0 0;border:1px solid #0000;border-radius:9999px;justify-content:center;align-items:center;gap:5px;padding:6px 10px;font-size:13px;font-weight:600;transition:all .15s cubic-bezier(.16,1,.3,1);display:inline-flex}.telegram-folder-tab:hover{background:var(--bg-surface);color:var(--text-main)}.telegram-folder-tab.active{font-weight:700;box-shadow:0 2px 8px #0088cc59;color:#fff!important;background:#08c!important}.telegram-folder-badge{color:inherit;background:#ffffff40;border-radius:9999px;flex-shrink:0;padding:1px 5px;font-size:10px;font-weight:700;line-height:1.2}.telegram-folder-tab:not(.active) .telegram-folder-badge{background:var(--bg-surface);color:var(--text-dim);border:1px solid var(--border-subtle)}.app-container[data-theme=light] .telegram-sidebar-top{background:#fff;border-bottom-color:#00000014}.app-container[data-theme=light] .telegram-search-bar{background:#f1f5f9;border-color:#00000014}.app-container[data-theme=light] .telegram-search-bar:focus-within{background:#fff;border-color:#08c;box-shadow:0 0 0 2px #08c3}.app-container[data-theme=light] .telegram-search-input{color:#0f172a}.app-container[data-theme=light] .telegram-search-input::placeholder{color:#94a3b8}.app-container[data-theme=light] .telegram-clear-btn{color:#64748b;background:#00000014}.app-container[data-theme=light] .telegram-folder-tabs{background:#fff;border-bottom-color:#00000014}.app-container[data-theme=light] .telegram-folder-tab:not(.active){color:#64748b}.app-container[data-theme=light] .telegram-folder-tab:not(.active):hover{color:#0f172a;background:#f1f5f9}.app-container[data-theme=light] .telegram-folder-tab:not(.active) .telegram-folder-badge{color:#475569;background:#e2e8f0;border-color:#0000000f}.telegram-chat-item{cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #0000;border-radius:12px;align-items:center;gap:12px;margin-bottom:2px;padding:9px 12px;transition:all .15s cubic-bezier(.16,1,.3,1);display:flex}.telegram-chat-item:hover{background:var(--bg-surface-hover)}.app-container[data-theme=light] .telegram-chat-item:hover{background:#f1f5f9}.telegram-chat-item.active{background:#0088cc29!important;border-color:#0088cc59!important}.app-container[data-theme=light] .telegram-chat-item.active{background:#e0f2fe!important;border-color:#7dd3fc!important}.telegram-unread-pill{color:#fff;text-align:center;background:#08c;border-radius:9999px;min-width:19px;padding:2px 7px;font-size:11px;font-weight:700;line-height:1.2;box-shadow:0 2px 6px #08c6}.telegram-drawer-overlay{-webkit-backdrop-filter:blur(2px);z-index:99;background:#00000073;animation:.18s ease-out fadeIn;position:absolute;inset:0}.telegram-drawer{background:var(--bg-sidebar);border-right:1px solid var(--border-subtle);z-index:100;flex-direction:column;width:100%;animation:.22s cubic-bezier(.16,1,.3,1) slideInFromLeft;display:flex;position:absolute;top:0;bottom:0;left:0;box-shadow:4px 0 24px #00000040}@keyframes slideInFromLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}.telegram-drawer-user-header{border-bottom:1px solid var(--border-subtle);background:linear-gradient(135deg,#0088cce0 0%,#6366f1e0 100%);flex-direction:column;gap:10px;padding:16px 16px 14px;display:flex}.app-container[data-theme=light] .telegram-drawer-user-header{background:linear-gradient(135deg,#08c 0%,#6366f1 100%)}.telegram-drawer-item{color:var(--text-main);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:14px;width:100%;padding:11px 16px;font-size:13.5px;font-weight:500;transition:all .15s;display:flex}.app-container[data-theme=light] .telegram-drawer-item{color:#1e293b}.telegram-drawer-item:hover{background:var(--bg-surface-hover);color:#08c}.app-container[data-theme=light] .telegram-drawer-item:hover{color:#08c;background:#f1f5f9}.telegram-drawer-item:active{transform:scale(.98)}.telegram-date-pill{-webkit-backdrop-filter:blur(12px);color:var(--text-muted);border:1px solid var(--border-subtle);background:#1e293bb3;border-radius:9999px;padding:4px 14px;font-size:11.5px;font-weight:600;box-shadow:0 2px 6px #0003}.telegram-bubble-incoming{color:var(--text-main)!important;background-color:#1e293b!important;border:1px solid #ffffff0f!important;border-radius:16px 16px 16px 4px!important;box-shadow:0 1px 3px #0003!important}.app-container[data-theme=light] .telegram-bubble-incoming{color:#0f172a!important;background-color:#fff!important;border:1px solid #00000014!important;box-shadow:0 1px 3px #0000000d!important}.telegram-bubble-outgoing{color:#fff!important;background:linear-gradient(135deg,#08c 0%,#0077b5 100%)!important;border:none!important;border-radius:16px 16px 4px!important;box-shadow:0 2px 8px #0088cc59!important}.telegram-msg-meta{opacity:.75;float:right;-webkit-user-select:none;user-select:none;align-items:center;gap:3px;margin-top:4px;margin-left:8px;font-size:10.5px;display:inline-flex}.telegram-fab-compose{color:#fff;cursor:pointer;z-index:10;background:linear-gradient(135deg,#08c 0%,#0077b5 100%);border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;bottom:20px;right:18px;box-shadow:0 4px 16px #0088cc73}.telegram-fab-compose:hover{transform:scale(1.08);box-shadow:0 6px 20px #08c9}.telegram-fab-compose:active{transform:scale(.95)}.app-container[data-theme=light] .telegram-fab-compose{color:#fff;background:linear-gradient(135deg,#08c 0%,#0284c7 100%);box-shadow:0 4px 14px #08c6}.telegram-composer-bar{background:var(--bg-surface);border-top:1px solid var(--border-subtle);z-index:15;align-items:flex-end;gap:8px;padding:10px 16px;display:flex;position:relative}.telegram-composer-input{background:var(--bg-app);border:1px solid var(--border-subtle);color:var(--text-main);resize:none;border-radius:20px;outline:none;flex:1;max-height:120px;padding:9px 16px;font-size:14px;line-height:1.4;transition:border-color .15s}.telegram-composer-input:focus{border-color:#08c}.telegram-composer-btn{width:36px;height:36px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.telegram-composer-btn:hover{color:#08c;background:var(--bg-surface-hover)}.telegram-send-btn{color:#fff;cursor:pointer;background:#08c;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 2px 10px #08c6}.telegram-send-btn:hover{transform:scale(1.06)}.telegram-send-btn:disabled{color:#ffffff4d!important;box-shadow:none!important;cursor:not-allowed!important;background:#ffffff14!important;transform:scale(1)!important}
