:root{--sef:#0b6f5c;--sef-dark:#075345;--ink:#17211f;--muted:#66736f;--line:#dfe7e4;--surface:#ffffff;--soft:#f5f7f8;--amber:#b7791f;--blue:#2563eb;--danger:#b42318}*{box-sizing:border-box}body,html{margin:0;min-height:100%;color:var(--ink);background:var(--soft);font-family:Arial,Helvetica,sans-serif;letter-spacing:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(140deg,rgba(11,111,92,.12),rgba(37,99,235,.1)),var(--soft)}.login-panel{width:min(440px,100%);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:28px;box-shadow:0 24px 60px rgba(23,33,31,.12)}.brand-lockup{display:flex;align-items:center;gap:12px}.brand-lockup h1,.brand-lockup p{margin:0}.brand-lockup p,.demo-note,.form-error{color:var(--muted)}.brand-lockup.compact{margin-bottom:18px}.brand-logo{width:170px;height:auto;display:block;flex:0 0 auto}.compact-logo{width:118px}.login-form{display:grid;grid-gap:14px;gap:14px;margin-top:26px}label{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-size:14px}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:11px 12px;color:var(--ink);background:#fff}textarea{min-height:84px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid rgba(11,111,92,.22);border-color:var(--sef)}.form-error{margin:0;color:var(--danger)}.primary-button,.primary-icon{border:0;border-radius:8px;color:#fff;background:var(--sef);font-weight:700}.primary-button{padding:12px 16px}.primary-button:hover,.primary-icon:hover{background:var(--sef-dark)}.app-shell{height:100vh;display:grid;grid-template-columns:280px minmax(0,1fr) 320px;overflow:hidden}.details,.sidebar{min-height:0;overflow-y:auto;background:var(--surface);border-right:1px solid var(--line);padding:18px}.details{border-right:0;border-left:1px solid var(--line)}.new-chat{display:grid;grid-template-columns:minmax(0,1fr) 40px;grid-gap:8px;gap:8px;margin-bottom:18px}.new-chat-button{width:100%;min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:8px;color:#fff;background:var(--sef);font-weight:800}.attach-button,.icon-button,.new-chat button,.primary-icon{width:40px;height:40px;border:1px solid var(--line);border-radius:8px;display:inline-grid;place-items:center;background:#fff;color:var(--ink)}.chat-group{margin-top:18px}.chat-group h3{margin:0 0 8px;color:var(--muted);font-size:12px;text-transform:uppercase}.chat-group button{width:100%;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:4px 0;border:0;border-radius:8px;background:transparent;color:var(--ink);text-align:left;padding:10px}.chat-list-copy{min-width:0;display:grid;grid-gap:2px;gap:2px}.chat-list-copy small,.chat-list-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-list-copy strong{font-size:14px}.chat-list-copy small{color:var(--muted);font-size:11px}.chat-group button.active,.chat-group button:hover{background:rgba(11,111,92,.1)}.chat-group button.unread{background:rgba(220,38,38,.08)}.collapsible-chat-group .chat-group-toggle{border:1px dashed rgba(100,116,139,.45);color:var(--muted);background:#f8fafc}.collapsible-chat-group .chat-group-toggle strong{color:var(--sef);font-size:12px}.chat-unread{min-width:22px;height:22px;display:grid;place-items:center;border-radius:999px;color:#fff;background:var(--danger);font-size:12px}.reminder-menu{display:grid;grid-gap:10px;gap:10px;margin-top:20px;border-top:1px solid var(--line);padding-top:16px}.reminder-menu-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.reminder-menu-title h3{display:inline-flex;align-items:center;gap:7px;margin:0;color:var(--sef-dark);font-size:14px;font-weight:900;text-transform:uppercase}.reminder-menu-title span{min-width:22px;height:22px;display:grid;place-items:center;border-radius:999px;color:var(--sef-dark);background:rgba(11,111,92,.12);font-size:12px;font-weight:900}.reminder-form{display:grid;grid-template-columns:minmax(0,1fr) 38px;grid-gap:7px;gap:7px}.reminder-form input{min-height:38px;padding:8px 9px;font-size:12px}.reminder-form input[type=datetime-local]{grid-column:1/2}.reminder-add-button{grid-column:2;grid-row:1/span 2;width:38px;min-height:83px;display:grid;place-items:center;border:0;border-radius:8px;color:#fff;background:var(--sef)}.reminder-list{display:grid;grid-gap:7px;gap:7px}.reminder-item{display:grid;grid-template-columns:minmax(0,1fr) 30px;align-items:center;grid-gap:6px;gap:6px;border:1px solid var(--line);border-radius:8px;padding:7px;background:#fff}.reminder-item.done{opacity:.68}.reminder-copy{min-width:0;display:grid;grid-gap:2px;gap:2px;border:0;background:transparent;padding:0;color:var(--ink);text-align:left}.reminder-copy span,.reminder-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reminder-copy strong{font-size:13px}.reminder-copy span{color:var(--muted);font-size:12px}.reminder-delete-button{width:30px;height:30px;display:grid;place-items:center;border:1px solid #ffd6d1;border-radius:8px;color:var(--danger);background:#fff5f3}.chat-column{position:relative;min-width:0;height:100vh;display:flex;flex-direction:column}.chat-column.drag-active{outline:2px solid rgba(11,111,92,.45);outline-offset:-2px}.drop-overlay{position:absolute;z-index:25;inset:12px;display:grid;place-items:center;border:2px dashed var(--sef);border-radius:8px;color:var(--sef-dark);background:rgba(238,248,245,.88);font-weight:900;pointer-events:none}.chat-header,.composer,.topbar-app{background:var(--surface);border-bottom:1px solid var(--line)}.topbar-app{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px 44px;grid-gap:10px;gap:10px;align-items:center;padding:12px 16px}.search-box{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:0 10px;background:#fff}.search-box input{border:0;padding-left:0}.icon-button{position:relative}.icon-button span{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;display:grid;place-items:center;border-radius:999px;color:#fff;background:var(--danger);font-size:11px}.notification-control{position:relative}.notification-panel{position:absolute;z-index:35;top:48px;right:0;width:min(360px,calc(100vw - 32px));display:grid;grid-gap:8px;gap:8px;border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff;box-shadow:0 18px 50px rgba(15,23,42,.18)}.notification-panel-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.notification-panel-header button{border:0;color:var(--sef);background:transparent;font-weight:800}.notification-item{display:grid;grid-gap:3px;gap:3px;border:1px solid var(--line);border-radius:8px;padding:9px;background:#fff;text-align:left}.notification-item.unread{border-color:rgba(220,38,38,.22);background:#fff7f7}.notification-item small,.notification-item span{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.empty-note{margin:4px 0;color:var(--muted);font-size:13px}.search-results{display:grid;grid-gap:6px;gap:6px;padding:10px 16px;background:#fff8eb;border-bottom:1px solid #f0d7a3}.search-results button{display:flex;justify-content:space-between;gap:10px;border:0;background:transparent;text-align:left}.search-results span{color:var(--muted)}.chat-header{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px}.chat-header p{margin:4px 0 0;color:var(--muted);font-size:13px}.presence-line{display:inline-flex;align-items:center;gap:7px}.presence-dot{width:9px;height:9px;display:inline-block;flex:0 0 auto;border-radius:999px;background:#9ca3af;box-shadow:0 0 0 2px #fff}.presence-dot.online{background:#16a34a}.chat-header-actions{display:inline-flex;align-items:center;gap:10px}.danger-soft{border:1px solid #ffd6d1;border-radius:8px;color:var(--danger);background:#fff5f3;padding:9px 11px;font-weight:800}.chat-header h2{margin:4px 0 0;font-size:22px}.chat-badge,.user-chip{display:inline-flex;align-items:center;min-height:24px;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:800;color:var(--sef-dark);background:rgba(11,111,92,.12)}.chat-badge.personal{color:var(--blue);background:rgba(37,99,235,.12)}.chat-badge.temporary{color:var(--amber);background:rgba(183,121,31,.14)}.pinned-strip{display:flex;gap:8px;align-items:center;padding:10px 16px;border-bottom:1px solid #e6d7aa;color:#674d08;background:#fff9e8;overflow-x:auto}.pinned-strip button{flex:0 0 min(260px,72vw);min-height:48px;display:grid;grid-template-columns:26px minmax(0,1fr);align-items:center;grid-gap:8px;gap:8px;border:1px solid rgba(103,77,8,.18);border-left-width:5px;border-radius:8px;color:var(--ink);background:#fff;padding:6px 9px 6px 7px;font-weight:700;text-align:left}.pinned-item.tone-0{border-left-color:var(--sef)}.pinned-item.tone-1{border-left-color:var(--blue)}.pinned-item.tone-2{border-left-color:var(--amber)}.pinned-item.tone-3{border-left-color:var(--danger)}.pinned-item.tone-4{border-left-color:#7c3aed}.pinned-marker{width:24px;height:24px;display:grid;place-items:center;border-radius:999px;color:#fff;background:#334155;font-size:12px}.pinned-copy{min-width:0;display:grid;grid-gap:2px;gap:2px}.pinned-copy small,.pinned-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pinned-copy small{color:var(--muted)}.messages{flex:1 1 auto;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding:18px}.message{width:min(680px,88%);border:1px solid var(--line);border-radius:8px;padding:12px 12px 10px;background:#fff}.message.own{align-self:flex-end;border-color:rgba(11,111,92,.24);background:#eef8f5}.message.requires-action{border-left:5px solid var(--amber)}.message.focused{border-color:var(--sef);box-shadow:0 0 0 3px rgba(11,111,92,.16)}.message-meta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}.message p{margin:8px 0 10px;line-height:1.45}.edited-label{margin-left:6px;color:var(--muted);font-size:11px}.edit-message-box{display:grid;grid-gap:8px;gap:8px;margin:8px 0 10px}.edit-message-box textarea{min-height:84px;resize:vertical}.edit-message-box div{display:flex;gap:10px}.attachment-preview{display:grid;grid-gap:8px;gap:8px;margin:10px 0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.attachment-preview.compact{margin:8px 0 0}.file-preview{grid-template-columns:72px minmax(0,1fr);align-items:stretch;min-height:76px}.file-preview-icon{display:grid;place-items:center;color:#fff;background:var(--sef);font-size:13px;font-weight:900;border:0}.file-preview-icon.image-file{background:#1d4ed8}.attachment-preview-meta{min-width:0;display:grid;grid-template-columns:18px minmax(0,1fr) auto auto;align-items:center;grid-gap:8px;gap:8px;padding:8px 10px}.attachment-preview-meta div{min-width:0;display:grid;grid-gap:2px;gap:2px}.attachment-preview-meta small,.attachment-preview-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-preview-meta small{color:var(--muted)}.attachment-preview-meta button.row-link{border:0;background:transparent}.attachment-preview-modal{width:min(980px,calc(100vw - 32px))}.preview-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.preview-modal-header h2{margin-bottom:4px}.preview-modal-header p{margin:0;color:var(--muted)}.preview-modal-header button{border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:#fff}.modal-preview-fallback,.modal-preview-frame,.modal-preview-image{width:100%;min-height:360px;max-height:68vh;border:1px solid var(--line);border-radius:8px;background:#f8fafc}.modal-preview-image{display:block;object-fit:contain;background:#0f172a}.modal-preview-frame{height:68vh}.modal-preview-fallback{display:grid;place-items:center;align-content:center;grid-gap:8px;gap:8px;color:var(--muted);text-align:center}.composer-reply,.reply-preview{border-left:3px solid var(--sef);border-radius:6px;background:rgba(11,111,92,.08)}.reply-preview{display:grid;grid-gap:3px;gap:3px;margin-top:8px;padding:7px 9px;font-size:12px}.composer-reply span,.reply-preview span{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.mini-action{display:inline-flex;align-items:center;gap:4px;border:0;color:var(--sef);background:transparent;padding:0;font-size:12px;font-weight:700}.mini-action.danger-action{color:var(--danger)}.message-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.message-like-button{width:30px;height:30px;display:inline-grid;place-items:center;flex:0 0 auto;margin-left:auto;border:1px solid rgba(100,116,139,.2);border-radius:999px;color:rgba(100,116,139,.58);background:rgba(148,163,184,.13);padding:0}.message-like-button:hover{color:#8a5a00;border-color:rgba(245,158,11,.42);background:#fff7df}.message-like-button.active{color:#8a5a00;border-color:rgba(245,158,11,.55);background:#facc15}.action-chip,.status-chip{display:inline-flex;align-items:center;min-height:24px;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:800}.status-chip.new{color:#991b1b;background:#fee2e2}.status-chip.read{color:#92400e;background:#fef3c7}.status-chip.taken{color:#166534;background:#dcfce7}.status-chip.done{color:#334155;background:#e2e8f0}.action-chip{margin-bottom:10px;color:#9a3412;background:#ffedd5}.composer{flex:0 0 auto;display:grid;grid-template-columns:44px 44px minmax(0,1fr) auto 44px;grid-gap:10px;gap:10px;align-items:center;padding:12px 16px}.composer.read-only{opacity:.72}.composer.read-only button,.composer.read-only label{cursor:not-allowed}.read-only-chat-note{border-top:1px solid #fde7bd;padding:9px 16px;color:#92400e;background:#fff7e6;font-size:13px;font-weight:800}.composer-main{min-width:0;display:grid;grid-gap:6px;gap:6px}.composer-main>input{height:40px}.dictation-button{width:40px;height:40px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--ink);background:#fff}.dictation-button.active{color:#fff;border-color:var(--danger);background:var(--danger)}.dictation-status{border-radius:8px;padding:6px 8px;color:#991b1b;background:#fee2e2;font-size:12px;font-weight:800}.dictation-status.warning{color:#92400e;background:#fef3c7}.composer-reply{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding:6px 8px;font-size:12px}.composer-reply button{border:0;color:var(--danger);background:transparent;font-weight:800}.attach-button input{display:none}.notification-popup{position:fixed;z-index:30;right:18px;top:18px;width:min(360px,calc(100vw - 36px));display:grid;grid-gap:4px;gap:4px;border:1px solid rgba(11,111,92,.28);border-radius:8px;padding:12px 14px;color:var(--text);background:#fff;box-shadow:0 18px 50px rgba(15,23,42,.18);text-align:left}.notification-popup span{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.reminder-popup{position:fixed;z-index:32;right:18px;bottom:18px;width:min(460px,calc(100vw - 36px));display:grid;grid-template-columns:minmax(0,1fr);grid-gap:12px;gap:12px;border:1px solid rgba(183,121,31,.35);border-radius:8px;padding:14px;background:#fff8e6;box-shadow:0 18px 50px rgba(15,23,42,.2)}.reminder-popup-close{position:absolute;top:8px;right:8px;width:28px;height:28px;display:grid;place-items:center;border:1px solid rgba(183,121,31,.24);border-radius:8px;color:#8a5a00;background:rgba(255,255,255,.72);padding:0}.reminder-popup-copy{min-width:0;display:grid;grid-gap:4px;gap:4px;padding-right:28px}.reminder-popup strong{display:inline-flex;align-items:center;gap:7px;color:#8a5a00}.reminder-popup small,.reminder-popup span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reminder-popup span{color:var(--ink);font-weight:800}.reminder-popup small{color:var(--muted)}.reminder-popup-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:end;grid-gap:8px;gap:8px}.reminder-popup-actions label{gap:4px;color:#8a5a00;font-size:12px;font-weight:900}.reminder-popup-actions select{min-height:36px;padding:7px 9px;background:#fff}.reminder-popup button{border:0;border-radius:8px;min-height:36px;padding:8px 11px;color:#fff;font-weight:900;white-space:nowrap}.reminder-popup .snooze-button{background:#64748b}.reminder-popup .complete-button{background:var(--amber)}.forward-list{display:grid;grid-gap:8px;gap:8px;max-height:300px;overflow:auto}.forward-list button{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;text-align:left}.action-toggle,.forward-list button{border:1px solid var(--line);border-radius:8px;background:#fff}.action-toggle{min-height:40px;display:inline-flex;flex-direction:row;align-items:center;gap:8px;white-space:nowrap;padding:0 10px;color:var(--ink)}.action-toggle input{width:16px}.primary-icon{border:0;color:#fff}.details section{border-bottom:1px solid var(--line);padding:0 0 16px;margin:0 0 16px}.details h3{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:16px}.admin-panel h3{margin-bottom:12px}.admin-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:6px;gap:6px;margin-bottom:14px}.admin-tabs button{min-height:34px;border:0;border-radius:8px;color:var(--muted);background:var(--soft);padding:6px;font-size:12px;font-weight:800}.admin-tabs button.active{color:#fff;background:var(--sef)}.stat-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.stat-card{min-height:76px;display:grid;align-content:center;grid-gap:3px;gap:3px;border:1px solid var(--line);border-radius:8px;padding:12px;background:var(--soft)}.stat-card strong{font-size:24px}.stat-card span{color:var(--muted);font-size:12px}.admin-list{display:grid;grid-gap:8px;gap:8px}.admin-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.admin-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#fff;padding:9px 8px;font-size:12px}.admin-actions button,.admin-row{border:1px solid var(--line);border-radius:8px}.admin-row{display:grid;grid-gap:4px;gap:4px;padding:10px;background:var(--soft)}.admin-row strong{display:inline-flex;align-items:center;gap:6px;font-size:14px}.admin-row small,.admin-row span{color:var(--muted);font-size:12px;line-height:1.35}.row-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.row-actions button{color:var(--ink)}.row-actions button,.row-link{border:1px solid var(--line);border-radius:8px;background:#fff;padding:7px 9px;font-size:12px}.row-link{display:inline-flex;align-items:center;color:var(--sef);font-weight:800;text-decoration:none}.row-actions .danger-text{color:var(--danger)}.task-row{border-left:5px solid var(--amber)}.task-link{width:100%;display:grid;grid-gap:4px;gap:4px;border:1px solid var(--line);border-radius:8px;padding:10px;background:var(--soft);text-align:left;cursor:pointer}.task-link:hover{border-color:rgba(11,111,92,.35);background:#eef8f5}.task-footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.task-clear-button{flex:0 0 auto;border:1px solid rgba(11,111,92,.24);border-radius:8px;padding:6px 9px;color:var(--sef);background:#fff;font-size:12px;font-weight:800}.admin-box p,.attachment-row,.notification,.person{margin:8px 0;padding:10px;border-radius:8px;background:var(--soft)}.attachment-row{display:grid;grid-gap:4px;gap:4px}.attachment-row span,.person span{color:var(--muted);font-size:12px}.person{display:flex;justify-content:space-between;gap:10px}.person-name{display:inline-flex;align-items:center;gap:7px}.modal-backdrop{position:fixed;inset:0;display:grid;place-items:center;padding:20px;background:rgba(23,33,31,.42)}.confirm-modal{width:min(440px,100%);background:#fff;border-radius:8px;padding:22px;box-shadow:0 24px 70px rgba(0,0,0,.22)}.wide-modal{width:min(720px,100%)}.modal-copy{color:var(--muted);margin-top:-4px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.participant-picker{margin-top:16px}.participant-picker strong{display:block;margin-bottom:8px}.participant-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.participant-option{min-height:40px;display:flex;flex-direction:row;align-items:center;gap:9px;border:1px solid var(--line);border-radius:8px;padding:8px 10px;color:var(--ink);background:var(--soft)}.participant-option input{width:16px}.confirm-modal h2{margin-top:0}.checkbox-line{display:flex;grid-template-columns:auto 1fr;flex-direction:row;align-items:center;gap:10px;color:var(--ink)}.checkbox-line input{width:18px}.retention{color:var(--muted)}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.modal-actions button:first-child{border:1px solid var(--line);border-radius:8px;padding:10px 14px;background:#fff}@media (max-width:1100px){.app-shell{grid-template-columns:240px minmax(0,1fr)}.details{display:none}}@media (max-width:760px){.app-shell{min-height:100vh;grid-template-columns:1fr;overflow:visible}.app-shell,.chat-column,.sidebar{height:auto}.sidebar{border-right:0;border-bottom:1px solid var(--line)}.chat-column{min-height:72vh}.topbar-app{grid-template-columns:minmax(0,1fr) 40px 40px}.chat-header{align-items:flex-start;flex-direction:column}.chat-header-actions{width:100%;justify-content:space-between}.message{width:100%}.composer{grid-template-columns:40px minmax(0,1fr) 40px}.action-toggle{grid-column:1/-1;justify-content:center}.form-grid,.participant-grid{grid-template-columns:1fr}}