@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";:root{font-family:DM Sans,sans-serif;color:#182230;background:#f4f6fa;font-synthesis:none;--navy:#14243b;--blue:#286ee8;--border:#e7eaf0;--muted:#8996a8}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;height:100%}body{overflow:hidden}.app-shell{display:flex;height:100vh;min-height:560px}.sidebar{width:260px;background:var(--navy);color:#d9e2ef;display:flex;flex-direction:column;padding:22px 14px;flex-shrink:0}.brand{display:flex;align-items:center;gap:11px;padding:0 10px 25px;color:#fff;font-family:Manrope}.brand small{display:block;font-size:10px;letter-spacing:2px;color:#8ea1ba}.brand-mark{width:48px;height:48px;border-radius:15px;background:linear-gradient(145deg,#3986f6,#2563eb);display:grid;place-items:center;color:#fff;font:800 25px Manrope;box-shadow:0 8px 24px #2563eb44}.brand-mark.small{width:36px;height:36px;border-radius:11px;font-size:19px}.user-mini{display:flex;align-items:center;gap:10px;padding:12px 8px;margin-bottom:23px;background:#ffffff0b;border:1px solid #ffffff12;border-radius:12px}.user-mini>div:nth-child(2){flex:1;min-width:0}.user-mini b,.person b{display:block;font-size:12px}.user-mini small,.person small{display:block;color:#92a3b9;font-size:11px;margin-top:3px}.avatar{width:36px;height:36px;border-radius:50%;background:#dceafe;color:#2861b5;display:grid;place-items:center;font-weight:700;flex-shrink:0}.nav-label,.people-title{font-size:9px;font-weight:700;letter-spacing:1.4px;color:#7f93ad;padding:0 10px 10px}.nav-item,.dept-item{border:0;background:transparent;color:#b9c7d8;display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:9px;text-align:left;font:500 13px DM Sans;cursor:pointer;margin-bottom:3px}.nav-item:hover,.dept-item:hover,.nav-item.active{background:#ffffff12;color:#fff}.nav-item.active{box-shadow:inset 3px 0 #4d91fa}.nav-dot{margin-left:auto;width:6px;height:6px;background:#4e9bff;border-radius:50%}.dept-item{font-size:12px;padding:8px 12px;width:100%}.dept-item small{margin-left:auto;color:#8297b2}.dept-dot,.online-dot{width:7px;height:7px;border-radius:50%;background:#34c58a}.sidebar-bottom{margin-top:auto;border-top:1px solid #ffffff18;padding:17px 10px 0;display:flex;gap:10px;font-size:12px;color:#a9bad0}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:68px;background:#fff;border-bottom:1px solid #e8edf3;display:flex;align-items:center;padding:0 28px;gap:12px;flex-shrink:0}.topbar b{font:700 16px Manrope}.topbar small{color:#9aa5b4;font-size:12px}.top-actions{margin-left:auto;color:#758397;font-size:11px;display:flex;align-items:center;gap:8px}.mobile-only{display:none}.chat-layout{display:grid;grid-template-columns:310px 1fr;flex:1;min-height:0;padding:18px;gap:16px}.people-panel,.conversation{background:#fff;border:1px solid #e8edf3;border-radius:14px;min-height:0;overflow:hidden}.people-panel{display:flex;flex-direction:column;padding:18px 12px;overflow-y:auto}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding:0 5px 15px}.panel-heading h2{font:700 18px Manrope;margin:0 0 4px}.panel-heading small{font-size:11px;color:#97a3b3}.round-btn,.send-btn{border:0;background:var(--blue);color:#fff;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;cursor:pointer}.search{height:38px;background:#f5f7fa;border:1px solid #edf0f4;border-radius:8px;display:flex;align-items:center;gap:8px;padding:0 10px;color:#99a5b4}.search input,.composer input{border:0;outline:0;background:transparent;min-width:0;flex:1;font:12px DM Sans}.people-title{padding:22px 7px 8px}.person{display:flex;align-items:center;gap:10px;border:0;background:transparent;padding:10px 7px;border-radius:9px;text-align:left;cursor:pointer}.person:hover{background:#f3f7fd}.person-info{flex:1}.person b{color:#263449}.person small{color:#8996a8}.status{width:7px;height:7px;border-radius:50%;background:#c4cbd4}.status.online{background:#30bf83}.conversation{display:flex;flex-direction:column;position:relative}.conversation-head{height:70px;border-bottom:1px solid #edf0f4;display:flex;align-items:center;padding:0 22px;gap:11px;flex-shrink:0}.conversation-head>div:nth-child(2){flex:1;min-width:0}.conversation-head b{font-size:13px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-head small{display:block;color:#96a1af;font-size:11px;margin-top:4px}.head-actions{display:flex;gap:8px}.icon-btn{border:0;background:transparent;color:#8190a3;cursor:pointer;padding:8px;display:grid;place-items:center}.icon-btn:disabled{opacity:.45;cursor:not-allowed}.messages{flex:1;min-height:0;overflow:auto;padding:24px;display:flex;flex-direction:column;gap:12px;background:linear-gradient(#fff,#fbfcfe)}.message-row{display:flex;justify-content:flex-start}.message-row.mine{justify-content:flex-end}.bubble{max-width:min(70%,520px);background:#f0f3f7;border-radius:4px 13px 13px;padding:10px 13px;color:#263449;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.mine .bubble{background:var(--blue);color:#fff;border-radius:13px 4px 13px 13px}.bubble small{display:block;font-size:10px;font-weight:700;margin-bottom:3px;opacity:.7}.bubble time{display:block;text-align:right;font-size:9px;opacity:.6;margin-top:5px}.composer{margin:14px 18px 18px;border:1px solid #e5eaf0;border-radius:12px;min-height:52px;display:flex;align-items:center;padding:0 8px;gap:8px;flex-shrink:0;background:#fff}.composer input{font-size:13px}.attach{position:relative;overflow:hidden}.attach input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;cursor:pointer}.send-btn{width:36px;height:36px}.send-btn:disabled{opacity:.45;cursor:not-allowed}.empty,.module-placeholder{margin:auto;text-align:center;color:#8c99aa}.empty h2,.module-placeholder h2{font:700 18px Manrope;color:#344257;margin:15px 0 7px}.empty p,.module-placeholder p{font-size:12px}.empty-icon{width:64px;height:64px;border-radius:20px;background:#edf4ff;color:#3679e8;display:grid;place-items:center;margin:auto}.login-wrap{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,#e1edff,transparent 35%),#f3f6fb;padding:20px}.login-card{width:min(410px,100%);background:#fff;padding:38px;border-radius:20px;box-shadow:0 20px 70px #243d6415;display:flex;flex-direction:column;gap:15px}.login-card .brand-mark{margin:auto}.login-card h1{text-align:center;font:800 21px Manrope;margin:0}.login-card p{text-align:center;color:#8b98a9;font-size:12px;margin:0 0 10px}.login-card label{font-size:11px;font-weight:700;color:#536176}.login-card input{display:block;width:100%;height:43px;border:1px solid #e2e8f0;border-radius:8px;padding:0 12px;margin-top:7px;outline-color:#3986f6}.primary{height:44px;background:var(--blue);border:0;color:#fff;border-radius:8px;font-weight:700;cursor:pointer}.login-card small{text-align:center;color:#99a4b3;font-size:10px}.error{color:#b42318;background:#fff0ef;padding:9px;border-radius:7px;font-size:12px}.module-placeholder{padding:35px}.department-card{background:#fff;border:1px solid #e8edf3;padding:14px 20px;border-radius:10px;margin:10px auto;text-align:left;max-width:360px}.department-card small{display:block;color:#8794a5;margin-top:4px}.management-page{padding:28px;height:100%;overflow-y:auto}.management-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.management-heading h2{margin:0 0 7px}.management-heading p{margin:0;color:#8993a5;font-size:14px}.action-button{display:flex;align-items:center;justify-content:center;gap:9px;white-space:nowrap}.management-toolbar{display:flex;gap:12px;align-items:center;margin-bottom:22px}.management-toolbar .search{flex:1;max-width:550px}.management-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.management-card{background:#fff;border:1px solid var(--border);border-radius:13px;padding:19px;display:flex;gap:14px;align-items:flex-start;min-width:0}.management-card-icon{width:43px;height:43px;border-radius:11px;display:grid;place-items:center;flex-shrink:0;background:#edf2ff;color:#4968ce}.management-card-content{flex:1;min-width:0}.management-card-content h3{margin:2px 0 8px;font-size:15px}.management-card-content p{color:#8993a5;font-size:13px;line-height:1.5;margin:0 0 13px;overflow-wrap:anywhere}.management-card-content small{display:flex;align-items:center;gap:6px;color:#8993a5}.card-actions,.table-actions{display:flex;gap:4px}.icon-btn.danger{color:#d65b63}.management-empty{grid-column:1/-1;padding:55px 20px}.management-table-wrap,.files-table-wrap{width:100%;overflow-x:auto;border:1px solid var(--border);border-radius:13px;background:#fff}.management-table{width:100%;border-collapse:collapse;min-width:780px;text-align:left}.management-table th{padding:15px 17px;color:#8993a5;font-size:11px;letter-spacing:.5px;font-weight:700;background:#f8f9fc;border-bottom:1px solid var(--border)}.management-table td{padding:13px 17px;border-bottom:1px solid #edf0f4;font-size:13px}.management-table tbody tr:last-child td{border-bottom:0}.table-user{display:flex;align-items:center;gap:10px}.table-user>div:last-child{display:flex;flex-direction:column;gap:4px}.table-user small{color:#8993a5;font-size:12px}.profile-tag{background:#edf2ff;color:#4968ce;border-radius:20px;padding:5px 9px;font-size:11px;font-weight:700}.status-label{display:inline-flex;align-items:center;gap:6px;color:#8993a5;font-size:12px}.status-label:before{content:"";width:7px;height:7px;border-radius:50%;background:#aab1bd}.status-label.online:before{background:#21b77a}.status-label.online{color:#21a875}.table-empty{text-align:center;padding:35px!important;color:#8993a5}.files-table{min-width:900px}.file-name-cell{display:flex;align-items:center;gap:10px;min-width:230px}.file-name-cell .management-card-icon{width:36px;height:36px;border-radius:9px}.file-name-cell>div:last-child{display:flex;flex-direction:column;gap:4px;min-width:0}.file-name-cell b{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-name-cell small{color:#8993a5;font-size:11px}.files-table td{vertical-align:middle}.files-table td:nth-child(3),.files-table td:nth-child(5){white-space:nowrap;color:#66758a;font-size:12px}.files-total{color:#8993a5;font-size:12px;white-space:nowrap}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0c13238c;display:flex;align-items:center;justify-content:center;padding:20px;overflow-y:auto}.management-modal{width:100%;max-width:560px;max-height:calc(100vh - 40px);overflow-y:auto;background:#fff;border-radius:16px;padding:25px;box-shadow:0 20px 70px #0003}.password-modal{max-width:430px}.modal-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:23px}.modal-heading h2{margin:0 0 7px;font-size:20px}.modal-heading p{margin:0;color:#8993a5;font-size:13px}.management-modal label{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:600;margin-bottom:17px}.management-modal input,.management-modal select,.management-modal textarea{width:100%;padding:12px 13px;border:1px solid #dfe4ec;border-radius:9px;outline:none;background:#fff;color:#263247;font:inherit;font-size:13px;box-sizing:border-box}.management-modal input:focus,.management-modal select:focus,.management-modal textarea:focus{border-color:#5574dc;box-shadow:0 0 0 3px #5574dc1a}.management-modal textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.form-grid .full{grid-column:1/-1}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:23px}.modal-actions button{min-height:40px;padding:0 17px;border-radius:8px;cursor:pointer}.secondary-button{border:1px solid #dfe4ec;background:#fff;color:#586276}.modal-actions button:disabled{opacity:.6;cursor:not-allowed}.toast{position:fixed;bottom:24px;right:24px;z-index:1100;max-width:min(420px,calc(100vw - 40px));padding:14px 18px;border:0;border-radius:9px;background:#263247;color:#fff;box-shadow:0 8px 25px #0003;cursor:pointer;text-align:left}.attachment-card{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:1px solid #d7e2f2;border-radius:9px;background:#fff;color:#286ee8;text-align:left;cursor:pointer}.mine .attachment-card{border-color:#fff6;background:#ffffff18;color:#fff}.attachment-card>span{display:flex;flex-direction:column;min-width:0}.attachment-card b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:280px}.attachment-card small{margin:2px 0 0;font-weight:400;opacity:.75}.conversation-list{display:flex;flex-direction:column;gap:2px;max-height:190px;overflow:auto}.saved-conversation{display:flex;align-items:center;gap:9px;width:100%;padding:8px 7px;border:0;border-radius:9px;background:transparent;color:#263449;text-align:left;cursor:pointer}.saved-conversation:hover,.saved-conversation.active{background:#f3f7fd}.saved-conversation-info{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.saved-conversation-info b{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.saved-conversation-info small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#8996a8;font-size:10px}.unread-badge{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:#286ee8;color:#fff;font-size:10px;font-weight:700}.conversation.dragging-file{border-color:#286ee8;box-shadow:inset 0 0 0 2px #286ee8}.drop-overlay{position:absolute;z-index:20;top:70px;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#edf4ffe8;color:#286ee8;border:2px dashed #286ee8;pointer-events:none}.drop-overlay small{color:#5d7190}.preview-overlay{position:fixed;z-index:1200;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px;background:#0c1323b8}.preview-modal{display:flex;flex-direction:column;width:min(1000px,96vw);height:min(760px,92vh);background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 24px 80px #0005}.preview-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid #e8edf3;color:#263449}.preview-modal img{display:block;max-width:100%;max-height:calc(92vh - 58px);margin:auto;object-fit:contain}.preview-modal iframe{width:100%;height:100%;border:0;flex:1}.notification-toast{position:fixed;right:24px;bottom:24px;z-index:1150;display:flex;align-items:center;gap:10px;max-width:min(390px,calc(100vw - 32px));padding:13px 15px;border:1px solid #b9d2fb;border-radius:12px;background:#fff;color:#263449;text-align:left;box-shadow:0 12px 35px #15243b2e;cursor:pointer}.notification-toast>span:nth-child(2){display:flex;flex-direction:column;gap:3px;min-width:0}.notification-toast b{font-size:12px;color:#1f5fbe}.notification-toast small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#718096;font-size:11px}.notification-icon{width:9px;height:9px;border-radius:50%;background:#286ee8;flex-shrink:0}.call-overlay{position:fixed;z-index:1250;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:20px;background:#0c1323b8}.call-modal{width:min(620px,96vw);background:#14243b;color:#fff;border-radius:18px;overflow:hidden;box-shadow:0 24px 80px #0006}.call-heading{display:flex;align-items:center;justify-content:space-between;padding:18px 20px}.call-heading b{display:block;font:700 16px Manrope}.call-heading small{display:block;margin-top:5px;color:#aebdd0;font-size:12px}.call-status-dot{width:9px;height:9px;border-radius:50%;background:#35c98d;box-shadow:0 0 0 5px #35c98d22}.call-media{position:relative;display:grid;place-items:center;min-height:280px;background:#0b1423}.remote-video{width:100%;height:100%;min-height:280px;object-fit:contain;background:#0b1423}.audio-call .remote-video{display:none}.local-video{position:absolute;right:16px;bottom:16px;width:150px;height:105px;object-fit:cover;border:2px solid #fff;border-radius:10px;background:#253650}.call-avatar{width:90px;height:90px;border-radius:50%;display:grid;place-items:center;background:#dceafe;color:#2861b5;font:700 35px Manrope}.call-actions{display:flex;justify-content:center;gap:12px;padding:18px}.call-button{min-width:110px;padding:11px 18px;border:0;border-radius:22px;color:#fff;font-weight:700;cursor:pointer}.call-button.reject{background:#d64f5c}.call-button.accept{background:#25ae78}@media(max-width:850px){.sidebar{position:fixed;z-index:5;inset:0 auto 0 0;transform:translate(-100%);transition:.2s;box-shadow:10px 0 30px #15243b22}.sidebar.show{transform:translate(0)}.mobile-only{display:grid}.topbar{padding:0 12px}.top-actions{font-size:0}.top-actions .online-dot{font-size:initial}.management-table{min-width:780px}.chat-layout{grid-template-columns:1fr;padding:10px}.people-panel{max-height:36vh}.conversation{min-height:48vh}.messages{padding:15px}.bubble{max-width:88%}}@media(max-width:700px){html,body,#root{min-height:100%;height:100%;overflow:hidden}.app-shell{height:100dvh;min-height:0}.main{min-height:0}.topbar{height:58px;min-height:58px;padding:0 12px}.topbar b{font-size:15px}.topbar small{font-size:10px}.chat-layout{display:flex;flex-direction:column;height:calc(100dvh - 58px);min-height:0;padding:8px;gap:8px;overflow:hidden}.people-panel{flex:0 0 auto;width:100%;max-height:205px;min-height:0;overflow-y:auto;padding:12px 10px;border-radius:13px}.panel-heading{padding:0 5px 10px}.panel-heading h2{font-size:17px}.panel-heading small{font-size:10px}.round-btn{width:36px;height:36px}.people-panel .search{height:34px;min-height:34px}.people-title{padding:12px 7px 6px}.conversation-list{max-height:88px}.saved-conversation{min-height:42px;padding:6px 7px}.person{min-height:44px;padding:7px}.conversation{flex:1 1 auto;width:100%;min-height:0;border-radius:13px}.conversation-head{height:58px;min-height:58px;padding:0 12px;gap:9px}.conversation-head .avatar{width:32px;height:32px}.conversation-head b{font-size:12px}.conversation-head small{font-size:10px;margin-top:2px}.head-actions{gap:2px;margin-left:auto}.head-actions .icon-btn{min-width:42px;min-height:42px;padding:9px}.messages{min-height:0;padding:12px 10px;gap:9px;overscroll-behavior:contain}.bubble{max-width:86%;padding:9px 11px;font-size:12px}.bubble small{font-size:9px}.bubble time{font-size:8px}.composer{flex:0 0 auto;min-height:52px;margin:8px 9px 9px;padding:0 6px;border-radius:12px;padding-bottom:env(safe-area-inset-bottom)}.composer input{font-size:13px;min-height:42px}.composer .icon-btn{min-width:40px;min-height:40px}.send-btn{width:40px;height:40px}.drop-overlay{top:58px;right:0;bottom:0;left:0}.management-page{padding:18px 13px}.management-heading{align-items:flex-start;flex-direction:column}.management-heading .action-button{width:100%}.management-grid,.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.management-modal{padding:19px}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}.management-toolbar{align-items:stretch;flex-direction:column}.files-total{align-self:flex-end}.preview-overlay{padding:10px}.preview-modal{width:100%;height:90vh}.notification-toast{right:16px;bottom:16px}.call-overlay{padding:10px}.call-media,.remote-video{min-height:230px}.local-video{width:110px;height:78px;right:10px;bottom:10px}}
