:root{--bg-color:#fff;--card-bg:#fff;--sidebar-bg:#f0f0f0;--text-color:#000;--text-secondary:#666;--border-color:#000;--primary-color:#000;--primary-hover:#333;--error-bg:#fff;--error-text:#000;--error-border:#000;--header-bg:#fff;--header-bg-rgb:255,255,255;--shadow-sm:none;--shadow-md:none;--radius-lg:0px;--radius-md:0px;--audio-invert:0}[data-theme=dark]{--bg-color:#000;--card-bg:#000;--sidebar-bg:#1a1a1a;--text-color:#fff;--text-secondary:#aaa;--border-color:#fff;--primary-color:#fff;--primary-hover:#ccc;--error-bg:#000;--error-text:#fff;--error-border:#fff;--header-bg:#000;--header-bg-rgb:0,0,0;--audio-invert:1}#root,body,html{height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;background-color:var(--bg-color);color:#000;color:var(--text-color);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;height:100vh;height:100dvh;margin:0;min-height:100vh;min-height:100dvh;overflow:hidden;transition:background-color .3s ease,color .3s ease;width:100%}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{background-color:var(--bg-color);color:var(--text-color);display:flex;flex-direction:column;height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;overflow:hidden;transition:background-color .3s ease,color .3s ease,box-shadow .5s ease}.App.safety-off{animation:pulse-red 2s ease-in-out infinite}@keyframes pulse-red{0%{box-shadow:inset 0 0 50px #ff000005}50%{box-shadow:inset 0 0 150px #ff00001a}to{box-shadow:inset 0 0 50px #ff000005}}.main-content{display:flex;flex:1 1;flex-direction:column;overflow-y:auto}.top-controls{display:flex;gap:.75rem;position:fixed;right:1.5rem;top:1.5rem;z-index:1000}.kill-button,.theme-toggle{align-items:center;background-color:var(--card-bg);border:2px solid var(--border-color);border-radius:0;box-shadow:none;color:var(--text-color);cursor:pointer;display:flex;justify-content:center;padding:.75rem;transition:all .2s ease}.kill-button:hover{box-shadow:0 0 20px #f009;transform:scale(1.1)}.kill-button.active,.kill-button:hover{background-color:red;border-color:red;color:#fff}.kill-button.active{animation:skull-glow 1.5s cubic-bezier(.4,0,.2,1) infinite alternate}@keyframes skull-glow{0%{box-shadow:0 0 5px #ff000080,inset 0 0 5px #f003;transform:scale(1)}to{box-shadow:0 0 25px #f00c,inset 0 0 10px #f006;transform:scale(1.05)}}.theme-toggle:hover{background-color:var(--bg-color);border-color:var(--primary-color);transform:scale(1.1)}.App-logo{height:20vmin;margin-bottom:2rem;pointer-events:none}.App-link{color:var(--text-color);text-decoration:underline}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.top-controls{gap:.5rem;right:.75rem;top:.75rem}.kill-button,.theme-toggle{padding:.5rem}}@font-face{font-family:Iokharic;font-style:normal;font-weight:400;src:url(/static/media/Iokharic.2cc8cff769ec48620c56.otf) format("opentype")}@font-face{font-family:Iokharic;font-style:normal;font-weight:700;src:url(/static/media/Iokharic%20Bold.7482ab0dbf430f22c4e4.otf) format("opentype")}.login-container{background-color:var(--bg-color);height:100vh}.login-container,.pattern-gate{align-items:center;display:flex;justify-content:center}.pattern-gate{animation:fadeIn .5s ease}.grid-3x3{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);width:200px}.grid-square{align-items:center;background-color:var(--bg-color);border:2px solid var(--border-color);border-radius:0;cursor:pointer;display:flex;height:56px;justify-content:center;overflow:hidden;transition:all .1s ease;width:56px}.draconic-char{color:#000;font-family:Iokharic,serif;font-size:24px;pointer-events:none;transition:all .2s ease;-webkit-user-select:none;user-select:none}.grid-square:hover .draconic-char{color:#fff;text-shadow:0 0 8px #fff}.grid-square:hover{background-color:#000;border-color:#000}.grid-square.active{background-color:red;border-color:red;box-shadow:0 0 20px #f009;transform:scale(.9)}.grid-square.active .draconic-char{color:#fff;text-shadow:0 0 10px #fff,0 0 20px red}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.login-form{animation:loginAppear .6s cubic-bezier(.16,1,.3,1);background-color:var(--card-bg);border:2px solid var(--border-color);border-radius:0;box-shadow:none;max-width:450px;padding:3rem;width:100%}@keyframes loginAppear{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.form-group{margin-bottom:1.5rem}.field-label{color:var(--text-color);display:block;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.form-group input{background-color:var(--bg-color);border:2px solid var(--border-color);border-radius:0;box-sizing:border-box;color:var(--text-color);font-size:1rem;padding:.8rem 1rem;transition:all .2s;width:100%}.cloaked-input{-webkit-text-security:disc!important}.form-group input:focus{background-color:var(--card-bg);border-color:var(--primary-color);box-shadow:none;outline:none}.login-button{background:var(--primary-color);border:2px solid var(--border-color);border-radius:0;color:var(--bg-color);cursor:pointer;font-size:1rem;font-weight:600;margin-top:1rem;padding:.8rem;text-transform:uppercase;transition:all .2s;width:100%}.login-button:hover{background:var(--primary-hover);color:var(--bg-color)}.login-button:active{transform:scale(.98)}.error-message{align-items:center;animation:shake .4s cubic-bezier(.36,.07,.19,.97) both;background-color:var(--error-bg);border:2px solid var(--error-border);border-radius:0;color:var(--error-text);display:flex;font-size:.875rem;gap:.5rem;margin-bottom:1.5rem;padding:.75rem 1rem}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.loader-container{align-items:center;display:flex;gap:12px;justify-content:center}.square-loader{animation:rotate 1s linear infinite;border:2px solid var(--bg-color);height:16px;width:16px}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.login-footer{margin-top:1.5rem;text-align:center}.login-footer p{color:var(--text-secondary);cursor:pointer;font-size:.85rem}.login-footer p:hover{color:var(--primary-color)}@media (max-width:480px){.pattern-gate{transform:scale(.85)}.login-form{border-width:1px;padding:1.5rem;width:90%}.grid-3x3{gap:12px;width:180px}.grid-square{height:48px;width:48px}.draconic-char{font-size:20px}}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:var(--text-color);border-radius:0}[data-theme=light] ::-webkit-scrollbar-thumb{background:#000}.chat-layout{font-family:Inter,sans-serif;height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;overflow:hidden;width:100vw}.chat-container,.chat-layout{background-color:var(--bg-color);display:flex}.chat-container{border-left:2px solid var(--border-color);border-right:2px solid var(--border-color);flex:1 1;flex-direction:column;position:relative}.chat-header{background-color:var(--bg-color);border-bottom:2px solid var(--border-color);height:48px;justify-content:flex-end;padding:0 16px;z-index:100}.chat-header,.header-actions{align-items:center;display:flex}.header-actions{gap:16px}.user-settings-compact{align-items:center;border-right:2px solid var(--border-color);display:flex;gap:12px;margin-right:16px;padding-right:16px}.action-button{align-items:center;background:none;border:1px solid #0000;border-radius:0;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s}.action-button:hover{background:var(--text-color);border-color:var(--text-color);color:var(--bg-color)}.action-button.logout:hover{background:var(--text-secondary);color:var(--text-color)}.messages-list{-webkit-overflow-scrolling:touch;display:flex;flex:1 1;flex-direction:column;overflow-anchor:none;overflow-y:auto;overscroll-behavior:contain;padding:16px 0;scroll-behavior:auto;touch-action:pan-y}.messages-list>div:first-child{min-height:1px}.history-status{color:var(--text-secondary);font-size:.7rem;letter-spacing:.02em;padding:6px 16px 8px;text-align:center;text-transform:uppercase}.history-status.error{color:#f44}.message-item{display:flex;gap:16px;padding:4px 72px 4px 16px;position:relative;transition:background-color .1s}@media (hover:hover){.message-item:hover{background-color:#00000005}[data-theme=dark] .message-item:hover{background-color:#ffffff08}.message-item:hover .message-actions-overlay{display:flex}}.message-item.active{background-color:#0000000a}[data-theme=dark] .message-item.active{background-color:#ffffff14}.message-actions-overlay.show{display:flex}.message-item.compact{padding-bottom:0;padding-top:0}.message-avatar,.message-avatar-container{display:flex;flex-shrink:0;justify-content:center;width:40px}.message-avatar{align-items:center;background-color:var(--primary-color);border:2px solid var(--border-color);border-radius:50%;color:var(--bg-color);cursor:pointer;font-weight:700;height:40px;margin-top:2px;overflow:hidden}.message-content-wrapper{display:flex;flex:1 1;flex-direction:column;min-width:0}.message-header{align-items:baseline;display:flex;gap:8px;margin-bottom:2px}.message-sender{color:var(--text-color);cursor:pointer;font-size:1rem;font-weight:700;text-transform:uppercase}.message-sender:hover{text-decoration:underline}.message-time{color:var(--text-secondary);font-size:.75rem}.mobile-more-button{background:none;border:none;color:var(--text-secondary);cursor:pointer;display:none;margin-left:auto;padding:4px}@media (max-width:768px){.mobile-more-button{display:block}}.message-bubble-container{align-items:center;display:flex;position:relative;touch-action:pan-y}.message-bubble{word-wrap:break-word;color:var(--text-color);display:flex;flex-direction:column;font-size:1rem;gap:8px;line-height:1.375rem}.message-text{white-space:pre-wrap}.decryption-error{color:#f44;font-size:.85rem;font-style:italic}.reply-reference{background:#00000008;border-left:3px solid var(--border-color);color:var(--text-secondary);display:flex;flex-direction:column;font-size:.75rem;margin:4px 0;max-width:80%;padding:2px 10px}[data-theme=dark] .reply-reference{background:#ffffff0d}.reply-sender{color:var(--text-color);font-size:.7rem;font-weight:700;margin-bottom:2px;text-transform:uppercase}.reply-text{font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-attachment{margin-top:8px;max-width:100%}.message-image{border:2px solid var(--border-color);border-radius:0;cursor:pointer;display:block;margin-top:4px;max-height:300px;max-width:400px;transition:transform .2s}.message-image:hover{transform:scale(1.01)}.message-actions-overlay{background:var(--card-bg);border:1px solid var(--border-color);border-radius:4px;box-shadow:0 2px 8px #0000001a;display:none;gap:2px;padding:2px;position:absolute;right:16px;top:-12px;z-index:10}.message-actions-overlay.show,.message-item:hover .message-actions-overlay{display:flex}.message-actions-overlay button{align-items:center;background:none;border:none;border-radius:3px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.85rem;justify-content:center;padding:4px 6px}.message-actions-overlay button:hover{background:var(--border-color);color:var(--text-color)}.edit-form{margin-top:4px;width:100%}.edit-form input{background:var(--bg-color);border:2px solid var(--border-color);border-radius:0;color:var(--text-color);font-size:1rem;padding:8px 12px;width:100%}.edit-help{font-size:.7rem;margin-top:4px}.edit-help,.edited-tag{color:var(--text-secondary)}.edited-tag{font-size:.65rem;margin-left:4px}.reactions-list{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.reaction-pill{align-items:center;background:var(--bg-color);border:1px solid var(--border-color);border-radius:0;cursor:pointer;display:flex;font-size:.85rem;gap:4px;padding:2px 6px;transition:all .2s}.reaction-pill.active,.reaction-pill:hover{background:var(--text-color);color:var(--bg-color)}.reaction-pill.active{border-color:var(--text-color)}.reaction-pill span{color:inherit;font-size:.75rem;font-weight:600}.chat-layout .input-icon,.chat-layout .member-item,.chat-layout .reaction-pill,.chat-layout button{touch-action:manipulation}.chat-layout .message-item{touch-action:pan-y}.typing-indicator{color:var(--text-secondary);font-size:.75rem;font-weight:500;height:24px;padding:0 16px}.chat-input-area{display:flex;flex-direction:column;gap:8px;padding:0 16px calc(24px + env(safe-area-inset-bottom))}.reply-context{align-items:center;background:var(--card-bg);border-left:2px solid var(--text-color);border:2px solid var(--border-color);border-left-width:4px;display:flex;justify-content:space-between;padding:8px 12px}.reply-info{display:flex;flex-direction:column;overflow:hidden}.reply-label{color:var(--text-secondary);font-size:.7rem;font-weight:700;text-transform:uppercase}.reply-preview{color:var(--text-color);font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cancel-image,.cancel-reply{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:4px}.cancel-image:hover,.cancel-reply:hover{color:var(--text-color)}.attachments-preview-container{background:var(--card-bg);border:2px solid var(--border-color);border-bottom:none;display:flex;flex-wrap:wrap;gap:10px;max-height:200px;overflow-y:auto;padding:12px}.attachment-preview-item{align-items:center;background:var(--bg-color);border:1px solid var(--border-color);display:flex;height:80px;justify-content:center;overflow:visible;position:relative;width:80px}.attachment-preview-item .image-preview{height:100%;object-fit:cover;width:100%}.file-preview-info{flex-direction:column;gap:4px;padding:4px;text-align:center;width:100%}.file-preview-info span{font-size:.6rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.cancel-attachment{align-items:center;background:var(--text-color);border:none;border-radius:50%;box-shadow:0 2px 4px #0003;color:var(--bg-color);cursor:pointer;display:flex;height:20px;justify-content:center;position:absolute;right:-8px;top:-8px;width:20px;z-index:10}.image-preview-container{background:var(--card-bg);border:2px solid var(--border-color);padding:8px;position:relative;width:-webkit-fit-content;width:fit-content}.image-preview{display:block;max-height:150px;max-width:200px}.cancel-image{background:var(--bg-color);position:absolute;right:-12px;top:-12px}.cancel-image,.input-wrapper{border:2px solid var(--border-color)}.input-wrapper{align-items:center;border-radius:0;display:flex;gap:12px;height:44px;padding:0 16px}.input-wrapper,[data-theme=light] .input-wrapper{background-color:var(--bg-color)}.input-icon{color:var(--text-secondary);cursor:pointer;transition:color .2s}.input-icon:hover{color:var(--text-color)}.input-wrapper input[type=text]{background:none;border:none;color:var(--text-color);flex:1 1;font-size:1rem;padding:11px 0}.input-wrapper input:focus{outline:none}.message-audio{filter:invert(var(--audio-invert));height:32px;max-width:300px;width:100%}.message-file{align-items:center;background:var(--card-bg);border:2px solid var(--border-color);display:flex;gap:12px;padding:10px 15px;width:-webkit-fit-content;width:fit-content}.file-name{font-size:.9rem;font-weight:500;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-download{align-items:center;color:var(--text-secondary);display:flex;transition:color .2s}.file-download:hover{color:var(--text-color)}.recording-ui{align-items:center;color:#f44;display:flex;flex:1 1;gap:12px}.recording-dot{animation:pulse 1s infinite;background:#f44;border-radius:50%;height:10px;width:10px}.recording-time{font-family:monospace;font-weight:700}.stop-recording{align-items:center;background:none;border:none;color:#f44;cursor:pointer;display:flex;padding:4px}.mic-icon{color:var(--text-secondary)}.mic-icon:hover{color:#f44}.send-button{align-items:center;background:var(--text-color);border:none;border-radius:50%;color:var(--bg-color);cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;transition:opacity .2s;width:32px}.send-button:hover{opacity:.8}.file-preview-container{align-items:center;background:var(--card-bg);border:2px solid var(--border-color);display:flex;gap:15px;padding:10px 15px;position:relative;width:-webkit-fit-content;width:fit-content}.file-preview-info{align-items:center;display:flex;font-size:.9rem;gap:10px}.cancel-file{align-items:center;background:var(--bg-color);border:2px solid var(--border-color);color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:4px}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.member-sidebar{background-color:var(--sidebar-bg);display:flex;flex-direction:column;flex-shrink:0;padding:16px 8px;width:240px}.member-group-title{color:var(--text-secondary);font-size:.75rem;font-weight:700;letter-spacing:.02em;margin-bottom:8px;padding:0 8px;text-transform:uppercase}.member-item{align-items:center;border-radius:0;cursor:pointer;display:flex;gap:12px;padding:6px 8px;transition:background-color .1s}.member-item:hover{background-color:var(--text-color)}.member-avatar-small,.member-item:hover .member-name{color:var(--bg-color)}.member-avatar-small{align-items:center;background-color:var(--primary-color);border:1px solid var(--border-color);border-radius:50%;display:flex;font-size:.85rem;font-weight:700;height:32px;justify-content:center;position:relative;width:32px}.status-dot{background:var(--text-color);border:1px solid var(--bg-color);border-radius:0;bottom:-2px;height:10px;position:absolute;right:-2px;width:10px}.member-name{color:var(--text-secondary);font-weight:500}.history-modal-overlay{align-items:center;background:#000000e6;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.history-modal{background:var(--card-bg);border:2px solid var(--border-color);border-radius:0;box-shadow:none;overflow:hidden;width:400px}.history-header{align-items:center;border-bottom:2px solid var(--border-color);display:flex;justify-content:space-between;padding:16px}.history-header h3{color:var(--text-color);font-size:1rem;font-weight:800;margin:0;text-transform:uppercase}.history-header button{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.5rem}.history-list{max-height:400px;overflow-y:auto;padding:8px}.history-entry{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:12px}.history-entry:last-child{border-bottom:none}.history-ip{color:var(--text-color);font-family:monospace;font-weight:800}.history-time{color:var(--text-secondary);font-size:.8rem}.history-main{display:flex;flex-direction:column;gap:2px}.history-meta{display:flex;font-size:.7rem;font-weight:600;gap:8px;text-transform:uppercase}.history-device{color:var(--text-secondary)}.history-status{border:1px solid;border-radius:0;padding:0 4px}.history-entry.success .history-status{background:#0000;color:var(--text-color)}.history-entry.failed .history-status{background:var(--text-color);color:var(--text-color);color:var(--bg-color)}.history-entry.failed{background:#0000000d}.mobile-only{display:none}@media (max-width:768px){.mobile-only{display:flex}.chat-layout{flex-direction:column}.chat-header{height:calc(48px + env(safe-area-inset-top));padding-top:env(safe-area-inset-top)}.member-sidebar{border-left:2px solid var(--border-color);bottom:0;box-shadow:-5px 0 15px #0000001a;padding-bottom:env(safe-area-inset-bottom);position:fixed;right:-240px;top:calc(48px + env(safe-area-inset-top));transition:right .3s ease;z-index:1000}.member-sidebar.show{right:0}.chat-container{border-left:none;border-right:none}.message-item{gap:12px;padding:8px 16px}.message-bubble-container{align-items:flex-start;flex-direction:column}.message-avatar{height:32px;width:32px}.message-content-wrapper{margin-left:0!important}.message-item.compact .message-content-wrapper{margin-left:44px}.chat-input-area{padding:8px 8px calc(8px + env(safe-area-inset-bottom))}.input-wrapper{height:40px;padding:0 12px}.input-wrapper input[type=text]{font-size:16px}.message-actions-overlay{background:var(--card-bg);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 2px 8px #0003;flex-wrap:nowrap;gap:0;margin-top:0;max-width:none;padding:1px;position:absolute;right:4px;top:-10px}.message-actions-overlay button{font-size:.8rem;padding:4px 6px}.message-actions-overlay button svg{height:14px;width:14px}.mobile-more-button{margin-left:4px;padding:2px}.mobile-more-button svg{height:14px;width:14px}.message-image{max-height:240px;max-width:100%}.message-audio{max-width:100%}.message-file{width:100%}.file-name{max-width:160px}.attachments-preview-container{max-height:140px}.history-modal{max-width:none;width:90%}.user-settings-compact{margin-right:8px;padding-right:8px}}
/*# sourceMappingURL=main.fa08c1f3.css.map*/