﻿*{margin:0;padding:0;box-sizing:border-box}
:root{
  --ink:#0E3416;--forest:#1A5C2A;--fern:#2E7D3F;
  --sage:#D2DFD4;--sage2:#EBF2EC;--sage3:#F4F7F4;
  --body:#111;--sub:#4b5563;--muted:#9ca3af;
  --border:#e5e7eb;--bg:#f9fafb;--white:#fff;
  --amber:#92400e;--amber-bg:#fffbeb;--amber-bd:#fde68a;
  --ruby:#9f1239;--ruby-bg:#fff1f2;--ruby-bd:#fecdd3;
  --sky:#1e3a8a;--sky-bg:#eff6ff;--sky-bd:#bfdbfe;
  --leaf:#14532d;--leaf-bg:#f0fdf4;--leaf-bd:#bbf7d0;
  --sh:0 1px 3px rgba(0,0,0,.05),0 1px 8px rgba(0,0,0,.04);
  --sh2:0 4px 16px rgba(0,0,0,.08);
  --sh3:0 16px 48px rgba(0,0,0,.14);
  --r:4px;--rlg:6px;
}
[data-theme="dark"]{
  --ink:#22c55e;--forest:#16a34a;--fern:#15803d;
  --sage:#1e3a24;--sage2:#162a1c;--sage3:#0f1e14;
  --body:#e5e7eb;--sub:#9ca3af;--muted:#6b7280;
  --border:#374151;--bg:#111827;--white:#1f2937;
  --amber:#fbbf24;--amber-bg:#292001;--amber-bd:#854d0e;
  --ruby:#f87171;--ruby-bg:#1f0608;--ruby-bd:#9f1239;
  --sky:#93c5fd;--sky-bg:#0c1631;--sky-bd:#1e3a8a;
  --leaf:#86efac;--leaf-bg:#0a1f10;--leaf-bd:#14532d;
  --sh:0 1px 3px rgba(0,0,0,.4),0 1px 8px rgba(0,0,0,.3);
  --sh2:0 4px 16px rgba(0,0,0,.5);
  --sh3:0 16px 48px rgba(0,0,0,.7);
}
[data-theme="dark"] thead th{background:var(--bg)}
[data-theme="dark"] tbody tr:hover,[data-theme="dark"] .task-row:hover,[data-theme="dark"] .person-row:hover,[data-theme="dark"] .dept-row:hover{background:var(--bg)}
[data-theme="dark"] .task-row,[data-theme="dark"] .task-list,[data-theme="dark"] .compose-ac,[data-theme="dark"] .wed-card,[data-theme="dark"] .wed-card-dept,[data-theme="dark"] .email-link-btn,[data-theme="dark"] .ag-ta,[data-theme="dark"] .ag-status-btn,[data-theme="dark"] .mo-foot,[data-theme="dark"] .tv-msg-actions button{background:var(--white);color:var(--body)}
[data-theme="dark"] .tv-msg-actions button{border-color:var(--border)}
[data-theme="dark"] .tv-msg-actions button:hover{background:var(--sage3);border-color:var(--sage);color:var(--ink)}
[data-theme="dark"] .act-item{border-bottom-color:var(--border)}
[data-theme="dark"] .nb.red{background:#7f1d1d;color:#fca5a5;border-color:#991b1b}
[data-theme="dark"] .wed-sum-clip:not(.expanded)::after{background:linear-gradient(transparent,var(--white))}
[data-theme="dark"] .p-high{background:#7f1d1d;color:#fca5a5}
[data-theme="dark"] .p-low{background:var(--bg);color:var(--muted)}
[data-theme="dark"] .acct-option.danger:hover{background:#7f1d1d}
[data-theme="dark"] .mo-x:hover{background:#7f1d1d;color:#fca5a5;border-color:#991b1b}
[data-theme="dark"] .ai-status-bar.ai-ok{background:#0a1f10;color:#86efac;border-color:#14532d}
[data-theme="dark"] .ai-status-bar.ai-err{background:#1f0608;color:#f87171;border-color:#9f1239}
[data-theme="dark"] .ol-folder:hover{background:var(--sage3);color:var(--body)}
[data-theme="dark"] .ol-folder.active{background:var(--sage2);color:var(--ink)}
[data-theme="dark"] .ol-filter-icon{background:var(--white);border-color:var(--border);color:var(--sub)}
[data-theme="dark"] .ol-filter-icon:hover,[data-theme="dark"] .ol-filter-icon.active{background:var(--sage2);color:var(--ink)}
[data-theme="dark"] .ol-filter-pop{background:var(--white);border-color:var(--border)}
[data-theme="dark"] .ol-filter-pop button{color:var(--sub)}
[data-theme="dark"] .ol-filter-pop button.active{background:var(--sage2);color:var(--ink)}
[data-theme="dark"] .ol-filter-pop button.active::after{color:var(--ink)}
[data-theme="dark"] .ol-filter-pop button:hover:not(.active){background:var(--sage3);color:var(--body)}
[data-theme="dark"] .ol-email-item.active{background:var(--sage2);border-left-color:var(--ink)}
[data-theme="dark"] .ol-date-group{background:var(--sage3);border-bottom-color:var(--border);color:var(--sub)}
[data-theme="dark"] .ol-thread-count{background:var(--bg);border-color:var(--border)}
[data-theme="dark"] .ol-divider-btn{background:var(--white);border-right-color:var(--border)}
[data-theme="dark"] .ol-divider-btn:hover{background:var(--bg)}
[data-theme="dark"] .card,[data-theme="dark"] .ch-card,[data-theme="dark"] .pulse-card,[data-theme="dark"] .sc,[data-theme="dark"] .mo-box,[data-theme="dark"] .drill-box{background:var(--white);border-color:var(--border);color:var(--body)}
[data-theme="dark"] .exec-item{background:var(--white);border-color:var(--border)}
[data-theme="dark"] .exec-item:hover{background:var(--sage3);border-color:var(--sage)}
[data-theme="dark"] .exec-rank{background:var(--sage2);color:var(--ink)}
[data-theme="dark"] .card-hdr,[data-theme="dark"] .mo-hdr,[data-theme="dark"] .mo-foot,[data-theme="dark"] .drill-hdr{border-color:var(--border)}
[data-theme="dark"] .card-sub,[data-theme="dark"] .ch-sub,[data-theme="dark"] .pulse-lbl,[data-theme="dark"] .mo-sub,[data-theme="dark"] .es-sub,[data-theme="dark"] .d-lbl{color:var(--sub)}
[data-theme="dark"] .card-ttl,[data-theme="dark"] .ch-ttl,[data-theme="dark"] .pulse-num,[data-theme="dark"] .sec-title,[data-theme="dark"] .es-text,[data-theme="dark"] .d-val{color:var(--body)}
[data-theme="dark"] .top,[data-theme="dark"] .sb,[data-theme="dark"] #ol-layout,[data-theme="dark"] #ol-left-panel{background:var(--white);border-color:var(--border)}
[data-theme="dark"] .ol-email-item{background:var(--white);border-bottom-color:var(--border);color:var(--body)}
[data-theme="dark"] .ol-email-item:hover{background:var(--sage3)}
[data-theme="dark"] .ol-email-sender,[data-theme="dark"] .ol-email-subject,[data-theme="dark"] .ol-search-input{color:var(--body)}
[data-theme="dark"] .ol-email-preview,[data-theme="dark"] .ol-email-date,[data-theme="dark"] .ol-email-attachments{color:var(--sub)}
[data-theme="dark"] .tv-hdr,[data-theme="dark"] .tv-msg,[data-theme="dark"] .tv-msg-hdr,[data-theme="dark"] .tv-msg-actions{background:var(--white);border-color:var(--border)}
[data-theme="dark"] .tv-list{background-color:#0f1e14;background-image:none}
[data-theme="dark"] .tv-preview,[data-theme="dark"] .tv-history-note,[data-theme="dark"] .tv-att{background:var(--sage3);border-color:var(--border)}
[data-theme="dark"] .btn-ghost{background:var(--white);color:var(--body);border-color:var(--border)}
[data-theme="dark"] .btn-ghost:hover{background:var(--sage3);color:var(--ink)}
[data-theme="dark"] .form-in,[data-theme="dark"] .form-sel,[data-theme="dark"] .form-ta,[data-theme="dark"] input,[data-theme="dark"] textarea,[data-theme="dark"] select{background:var(--bg);color:var(--body);border-color:var(--border)}
[data-theme="dark"] input,[data-theme="dark"] textarea,[data-theme="dark"] select{color-scheme:dark}
html{font-size:13px;max-width:100%;overflow-x:hidden}
body{font-family:'Inter',sans-serif;background:var(--bg);color:var(--body);display:flex;min-height:100vh;-webkit-font-smoothing:antialiased;max-width:100%;overflow-x:hidden}

/* SIDEBAR */
.sb{width:190px;height:100vh;background:var(--white);border-right:1px solid var(--border);position:fixed;left:0;top:0;z-index:100;display:flex;flex-direction:column;box-shadow:1px 0 0 var(--border)}
.sb-brand{padding:12px 12px 10px;border-bottom:1px solid var(--border)}
.sb-brand img{width:100%;max-width:140px;height:34px;object-fit:contain;object-position:left center;display:block}
.sb-tag{font-size:8.5px;letter-spacing:2.5px;text-transform:uppercase;color:var(--muted);margin-top:8px;font-weight:700}
.sb-nav{padding:8px 5px 92px;flex:1;overflow-y:auto;min-height:0}
.sb-lbl{font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);padding:0 6px;margin:10px 0 3px;font-weight:700}
.ni{display:flex;align-items:center;gap:7px;padding:6px 8px;border-radius:var(--r);cursor:pointer;color:var(--sub);font-size:12px;font-weight:500;transition:all .15s;margin-bottom:1px;border:none;background:none;width:100%;text-align:left;font-family:'Inter',sans-serif;position:relative}
.ni:hover{background:var(--sage3);color:var(--ink)}
.ni.active{background:var(--sage2);color:var(--ink);font-weight:700}
.ni.active::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:18px;background:var(--ink);border-radius:0 3px 3px 0}
.ni svg{width:14px;height:14px;flex-shrink:0;color:var(--muted);transition:color .15s}
.ni:hover svg,.ni.active svg{color:var(--ink)}
.nb{margin-left:auto;background:var(--sage2);color:var(--ink);font-size:10px;font-weight:700;padding:1px 6px;border-radius:20px;min-width:18px;text-align:center;border:1px solid var(--sage)}
.nb.red{background:#fee2e2;color:#b91c1c;border-color:#fecaca}
.nb.amber{background:var(--amber-bg);color:var(--amber);border-color:var(--amber-bd)}
/* Pinned directly to the true bottom of the viewport, independent of the
   flex/shrink math above it — this way the username + settings row can never
   get pushed below the visible screen, no matter how tall the nav content
   above it ends up (or how the browser window is sized/positioned). */
.sb-foot{padding:8px 6px;border-top:1px solid var(--border);position:fixed;left:0;bottom:0;width:190px;background:var(--white);z-index:110}
.user-row{display:flex;align-items:center;gap:7px;padding:6px 8px;border-radius:var(--r);background:var(--sage3);border:1px solid transparent;width:100%;font-family:'Inter',sans-serif;text-align:left;cursor:pointer;transition:all .15s}
.user-row:hover{background:var(--sage2);border-color:var(--sage)}
.uav{width:26px;height:26px;border-radius:50%;background:var(--ink);display:flex;align-items:center;justify-content:center;font-size:10px;color:#fff;font-weight:700;flex-shrink:0}
.unm{font-size:11.5px;color:var(--body);font-weight:700}
.url{font-size:10px;color:var(--muted)}
.acct-menu{display:none;position:absolute;left:8px;right:8px;bottom:62px;background:var(--white);border:1px solid var(--border);border-radius:var(--rlg);box-shadow:var(--sh3);padding:6px;z-index:150}
.acct-menu.open{display:block}
.acct-option{width:100%;border:none;background:none;border-radius:var(--r);padding:9px 8px;display:flex;align-items:center;gap:9px;font-family:'Inter',sans-serif;cursor:pointer;text-align:left;color:var(--body);font-size:12.5px;font-weight:500}
.acct-option:hover{background:var(--sage3)}
.acct-option.danger{color:#b91c1c}
.acct-option.danger:hover{background:#fff1f2}

/* MAIN */
.main{margin-left:190px;flex:1;display:flex;flex-direction:column;min-height:100vh;min-width:0;max-width:calc(100vw - 190px);overflow-x:hidden}
.topbar{background:var(--white);border-bottom:1px solid var(--border);padding:0 16px;height:46px;display:flex;align-items:center;gap:10px;position:sticky;top:0;z-index:50}
.tb-left{flex:1}
.tb-title{font-size:14px;font-weight:700;color:var(--body);letter-spacing:-.2px}
.tb-sub{font-size:11px;color:var(--muted);margin-top:0}
.search-box{display:flex;align-items:center;gap:7px;background:var(--bg);border:1px solid var(--border);border-radius:var(--r);padding:5px 10px;width:190px;transition:all .15s}
.search-box:focus-within{border-color:#9ca3af;background:var(--white)}
.search-box input{border:none;background:none;font-family:'Inter',sans-serif;font-size:12.5px;color:var(--body);outline:none;width:100%}
.search-box input::placeholder{color:var(--muted)}
.btn{padding:6px 12px;border-radius:var(--r);font-family:'Inter',sans-serif;font-size:12px;font-weight:600;cursor:pointer;border:none;transition:all .15s;display:inline-flex;align-items:center;gap:5px;line-height:1;white-space:nowrap}
.btn-primary{background:var(--ink);color:#fff}
.btn-primary:hover{background:var(--forest)}
.btn-ghost{background:var(--white);color:var(--body);border:1px solid var(--border)}
.btn-ghost:hover{background:var(--bg);border-color:#9ca3af}
.btn-sm{padding:5px 12px;font-size:12px}
.btn-xs{padding:4px 8px;font-size:11px;border-radius:6px}

/* CONTENT */
.content{padding:12px 16px;flex:1;min-width:0;max-width:100%;overflow-x:hidden}
.page{display:none;min-width:0;max-width:100%;overflow-x:hidden}
.page.active{display:block;animation:pgIn .18s ease}
@keyframes pgIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}

/* STAT CARDS */
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px}
.sc{background:var(--white);border-radius:var(--rlg);padding:12px 14px 10px;border:1px solid var(--border);transition:all .18s;cursor:pointer;position:relative;overflow:hidden}
.sc:hover{box-shadow:var(--sh2);transform:translateY(-2px);border-color:#9ca3af}
.sc::after{content:'';position:absolute;top:0;left:0;width:100%;height:3px;border-radius:var(--rlg) var(--rlg) 0 0}
.sc.c-ink::after{background:var(--ink)}.sc.c-leaf::after{background:#15803d}
.sc.c-amber::after{background:#b45309}.sc.c-ruby::after{background:#b91c1c}
.sc-num{font-size:24px;font-weight:700;color:var(--body);line-height:1;margin-bottom:2px;letter-spacing:-.5px}
.sc-num.red{color:#dc2626}
.sc-lbl{font-size:11px;font-weight:600;color:var(--body);margin-bottom:1px}
.sc-sub{font-size:10.5px;color:var(--muted)}
.sc-hint{font-size:11px;color:var(--fern);font-weight:600;margin-top:6px;opacity:0;transition:opacity .15s}
.sc:hover .sc-hint{opacity:1}

/* PROGRESS */
.prog-track{height:5px;background:var(--sage2);border-radius:20px;overflow:hidden}
.prog-fill{height:100%;background:var(--ink);border-radius:20px;transition:width 1s ease}

/* CARD */
.card{background:var(--white);border-radius:var(--rlg);border:1px solid var(--border)}
.card-hdr{padding:9px 14px 8px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
.card-ttl{font-size:12.5px;font-weight:700;color:var(--body)}
.card-sub{font-size:11px;color:var(--muted);margin-top:1px}
.card-bdy{padding:10px 14px}

/* DASHBOARD */
.dash-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,290px);gap:8px;margin-bottom:8px}
.chart-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:8px}
.pulse-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px}
.pulse-card{background:var(--white);border-radius:var(--rlg);padding:10px 14px 9px;border:1px solid var(--border);transition:all .15s}
.pulse-card[onclick]{cursor:pointer}.pulse-card[onclick]:hover{box-shadow:var(--sh2);border-color:#9ca3af}
.pulse-num{font-size:20px;font-weight:700;color:var(--body);line-height:1;margin-bottom:2px;letter-spacing:-.5px}
.pulse-num.red{color:#dc2626}
.pulse-lbl{font-size:10.5px;font-weight:600;color:var(--muted)}
.pulse-hint{font-size:10px;color:var(--fern);font-weight:600;margin-top:3px;opacity:0;transition:opacity .15s}
.pulse-card[onclick]:hover .pulse-hint{opacity:1}
.tab-btn{padding:3px 8px;border-radius:4px;border:1px solid transparent;font-family:'Inter',sans-serif;font-size:10.5px;font-weight:600;cursor:pointer;background:none;color:var(--muted);transition:all .12s}
.tab-btn.active{background:var(--sage2);color:var(--ink);border-color:var(--sage)}
.tab-btn:hover:not(.active){background:var(--sage3)}
.card,.ch-card,.pulse-card,.sc{min-width:0}
.ch-card{background:var(--white);border-radius:var(--rlg);border:1px solid var(--border);padding:11px 14px 10px;transition:all .18s;cursor:pointer;min-width:0;overflow:hidden}
.ch-card:hover{box-shadow:var(--sh2);border-color:#9ca3af}
.ch-ttl{font-size:13px;font-weight:700;color:var(--body)}
.ch-sub{font-size:11px;color:var(--muted);margin-top:1px}
.ch-wrap{position:relative;height:148px;margin-top:8px}
.exec-list{display:flex;flex-direction:column;gap:6px;margin-top:10px;min-height:242px;overflow:hidden;padding-right:2px}
.exec-item{border:1px solid var(--border);border-radius:6px;background:var(--white);padding:7px 10px;cursor:pointer;transition:all .14s}
.exec-item:hover{box-shadow:var(--sh);border-color:#a7c8ad;transform:translateY(-1px)}
.exec-top{display:flex;align-items:center;gap:7px;margin-bottom:4px}
.exec-rank{width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--sage2);color:var(--ink);font-size:10px;font-weight:800;flex-shrink:0}
.exec-title{font-size:12px;font-weight:700;color:var(--body);line-height:1.22;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.exec-reason{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.35px;border-radius:12px;padding:1px 6px;white-space:nowrap;margin-left:auto}
.exec-reason.hot{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca}
.exec-reason.warn{background:#fffbeb;color:#92400e;border:1px solid #fde68a}
.exec-reason.info{background:#eff6ff;color:#1e3a8a;border:1px solid #bfdbfe}
.exec-meta{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:5px;flex-wrap:wrap;line-height:1.35}

/* ACTIVITY */
.act-item{display:flex;align-items:flex-start;gap:7px;padding:6px 0;border-bottom:1px solid #f3f4f6}
.act-item:last-child{border-bottom:none}
.act-dot{width:6px;height:6px;border-radius:50%;background:var(--ink);margin-top:5px;flex-shrink:0}
.act-dot.done{background:#15803d}.act-dot.overdue{background:#b91c1c}.act-dot.progress{background:#b45309}
.act-title{font-size:12px;font-weight:600;color:var(--body);margin-bottom:1px}
.act-meta{font-size:11px;color:var(--muted)}

/* TABLE */
.tbl-wrap{background:var(--white);border-radius:var(--rlg);border:1px solid var(--border);overflow:hidden;max-width:100%}
.tbl-hdr{padding:8px 12px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.tbl-title{font-size:12.5px;font-weight:700;color:var(--body);flex:1}
table{width:100%;border-collapse:collapse;table-layout:fixed}
thead th{padding:7px 10px;text-align:left;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);background:#f9fafb;border-bottom:1px solid var(--border)}
tbody tr{border-bottom:1px solid #f3f4f6;transition:background .1s;cursor:pointer}
tbody tr:hover{background:#f9fafb}
tbody tr:last-child{border-bottom:none}
td{padding:7px 10px;font-size:12.5px;vertical-align:middle;overflow-wrap:anywhere;word-break:break-word}
.tbl-wrap th,.tbl-wrap td{min-width:0}
.tbl-wrap .btn{white-space:normal}
.chk{width:15px;height:15px;border-radius:4px;border:1.5px solid #d1d5db;appearance:none;cursor:pointer;transition:all .15s;display:block}
.chk:checked{background:var(--ink);border-color:var(--ink)}
.dept-pill{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;background:var(--sage2);color:var(--ink);border:1px solid var(--sage)}
.dept-dot{width:6px;height:6px;border-radius:50%;display:inline-block;flex-shrink:0}
.p-high,.p-low{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;word-break:normal;overflow-wrap:normal;line-height:1;padding:3px 8px;border-radius:4px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.25px;min-width:48px}
.p-high{background:#fee2e2;color:#b91c1c}
.p-low{background:#f3f4f6;color:#6b7280}
.wed-btn{width:28px;height:28px;border-radius:var(--r);border:1px solid var(--border);background:var(--white);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;color:var(--muted);font-size:11px;font-weight:600}
.wed-btn:hover{border-color:#9ca3af;color:var(--body)}
.wed-btn.on{background:var(--sage2);border-color:var(--sage);color:var(--ink);font-weight:700}
.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600}
.bp{background:var(--amber-bg);color:var(--amber);border:1px solid var(--amber-bd)}
.bd{background:var(--leaf-bg);color:var(--leaf);border:1px solid var(--leaf-bd)}
.bo{background:var(--ruby-bg);color:var(--ruby);border:1px solid var(--ruby-bd)}

/* COMPOSE AUTOCOMPLETE */
.compose-ac{position:absolute;left:50px;right:0;top:100%;z-index:9999;background:#fff;border:1px solid var(--border);border-radius:var(--r);box-shadow:0 6px 24px rgba(0,0,0,.12);max-height:280px;overflow-y:auto;margin-top:0}
.compose-ac-item{display:flex;align-items:center;gap:10px;padding:9px 12px;cursor:pointer;border-bottom:1px solid #f3f4f6;transition:background .1s}
.compose-ac-item:last-child{border-bottom:none}
.compose-ac-item:hover,.compose-ac-item.ac-focused{background:var(--sage3)}
.compose-ac-name{font-size:13px;font-weight:600;color:var(--body);line-height:1.2}
.compose-ac-email{font-size:11.5px;color:var(--muted);margin-top:1px}
.compose-ac-role{font-size:10.5px;color:var(--forest);font-weight:600;margin-top:1px}
.chip-pill{display:inline-flex;align-items:center;gap:2px;padding:2px 4px 2px 7px;background:#e8f0fe;border:1px solid #c6d7f7;border-radius:12px;font-size:12px;color:#1a56db;white-space:nowrap;margin:2px 3px 2px 0;line-height:1.3;max-width:220px}
.chip-pill-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:180px}
.chip-pill .chip-x{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;border:none;background:none;color:#6b7280;cursor:pointer;font-size:14px;line-height:1;padding:0;flex-shrink:0;transition:background .1s}
.chip-pill .chip-x:hover{background:#c6d7f7;color:#1a56db}
.chip-field-wrap{display:flex;flex-wrap:wrap;align-items:center;gap:2px;border-bottom:1px solid var(--border);padding:5px 0;margin-bottom:4px;min-height:35px;cursor:text}
.chip-text-input{flex:1;min-width:80px;border:none;outline:none;font-family:Inter,sans-serif;font-size:13px;color:var(--body);background:transparent}
.ctx-menu{position:fixed;background:#fff;border:1px solid #e5e7eb;border-radius:7px;box-shadow:0 4px 18px rgba(0,0,0,.16);z-index:99999;min-width:192px;padding:4px 0;font-family:Inter,sans-serif;font-size:12.5px}
.ctx-item{display:flex;align-items:center;gap:9px;padding:8px 14px;cursor:pointer;color:#374151;transition:background .1s;user-select:none;white-space:nowrap}
.ctx-item:hover{background:#f5f5f5}
.ctx-item--danger{color:#dc2626}
.ctx-item--danger:hover{background:#fff1f2}
.ctx-sep{height:1px;background:#f0f0f0;margin:3px 0}

/* ACTION LOG CARD LIST */
.task-list{background:#fff;border-radius:0 0 var(--rlg) var(--rlg);overflow:hidden}
.task-row{display:flex;align-items:center;gap:0;padding:8px 12px;border-bottom:1px solid #f3f4f6;cursor:pointer;transition:background .1s;background:#fff}
.task-row:last-child{border-bottom:none}
.task-row:hover{background:#f9fafb}
.task-row.done-row{opacity:.6}
.task-row.overdue-row .task-row-title{color:#b91c1c}
.task-row-left{display:flex;align-items:center;flex-shrink:0;width:28px}
.task-row-mid{flex:1;min-width:0;padding:0 14px}
.task-row-title{font-size:12.5px;font-weight:600;color:var(--body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}
.task-row-meta{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--muted);flex-wrap:nowrap;overflow:hidden}
.task-row-right{display:flex;align-items:center;gap:6px;flex-shrink:0}
.task-sep{color:#d1d5db}

/* COMPACT WED CARDS */
.wed-sum-clip{max-height:80px;overflow:hidden;position:relative}
.wed-sum-clip.expanded{max-height:none}
.wed-sum-clip:not(.expanded)::after{content:'';position:absolute;bottom:0;left:0;right:0;height:28px;background:linear-gradient(transparent,#fff);pointer-events:none}
/* Assignment card descriptions only fade when actually clamped (see
   is-clamped, toggled in tasks-hub.js) — otherwise a short one-line
   description gets an unnecessary fade smeared across it. */
.assign-desc.wed-sum-clip:not(.is-clamped)::after{content:none}
.wed-expand-btn{font-size:11px;color:var(--forest);background:none;border:none;cursor:pointer;padding:0;font-weight:600;margin-bottom:8px;display:inline-block;letter-spacing:.2px}
.wed-card-compact-body{padding:7px 10px}

/* FILTER */
.sel-f{padding:5px 9px;border-radius:var(--r);border:1px solid var(--border);font-family:'Inter',sans-serif;font-size:12px;color:var(--sub);background:var(--white);outline:none;cursor:pointer}

/* WEEK NAV */
.week-bar{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding:7px 12px;background:var(--white);border-radius:var(--rlg);border:1px solid var(--border)}
.wn-btn{width:26px;height:26px;border-radius:var(--r);border:1px solid var(--border);background:var(--white);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--sub);transition:all .15s}
.wn-btn:hover{background:var(--bg);border-color:#9ca3af}
.wn-lbl{font-size:12.5px;font-weight:700;color:var(--body)}
.wn-range{font-size:12px;color:var(--muted);margin-left:2px}

/* SPLIT LAYOUT */
.split-layout{display:grid;grid-template-columns:240px 1fr;background:var(--white);border-radius:var(--rlg);border:1px solid var(--border);min-height:480px;overflow:hidden}
.directory-toggle{display:inline-flex;background:var(--white);border:1px solid var(--border);border-radius:var(--r);padding:3px;margin-bottom:12px}
.directory-toggle button{border:none;background:transparent;border-radius:6px;padding:7px 13px;font-family:'Inter',sans-serif;font-size:12px;font-weight:700;color:var(--muted);cursor:pointer}
.directory-toggle button.active{background:var(--ink);color:#fff}
.directory-pane{display:none}
.directory-pane.active{display:block}
.split-panel{border-right:1px solid var(--border);display:flex;flex-direction:column}
.split-panel-hdr{padding:12px 14px;border-bottom:1px solid var(--border);background:var(--white);position:sticky;top:0;z-index:1}
.split-panel-body{overflow-y:auto;flex:1}
.ppl-search{width:100%;padding:7px 10px;border:1px solid var(--border);border-radius:var(--r);font-family:'Inter',sans-serif;font-size:12.5px;color:var(--body);outline:none;transition:all .15s}
.ppl-search:focus{border-color:#9ca3af}
.person-row{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background .12s;border-bottom:1px solid #f9fafb}
.person-row:hover{background:#f9fafb}
.person-row.sel{background:var(--sage3);border-left:3px solid var(--ink)}
.person-row.sel .pr-nm{color:var(--ink);font-weight:700}
.pr-nm{font-size:13px;font-weight:600;color:var(--body);margin-bottom:1px}
.pr-role{font-size:10.5px;color:var(--muted);margin-bottom:2px}
.pr-stats{display:flex;gap:8px}
.pr-stat{font-size:10.5px}
.pr-stat.pending{color:#dc2626}
.pr-stat.done{color:#15803d}
.split-right{padding:14px;overflow-y:auto}
.split-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:var(--muted);text-align:center}
.dept-row{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background .12s;border-bottom:1px solid #f9fafb}
.dept-row:hover{background:#f9fafb}
.dept-row.sel{background:var(--sage3);border-left:3px solid var(--ink)}
.dept-row.sel .dr-nm{color:var(--ink);font-weight:700}
.dept-icon{width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;color:#fff}
.dr-nm{font-size:13px;font-weight:600;color:var(--body)}
.dr-cnt{font-size:11px;color:var(--muted);margin-top:1px}

/* WEDNESDAY */
.wed-page{max-width:100%;margin:0}
.wed-hero{background:linear-gradient(135deg,#0E3416 0%,#1A5C2A 100%);border-radius:var(--rlg);padding:12px 16px;margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.wh-title{font-size:14px;font-weight:800;color:#fff;margin-bottom:1px}
.wh-sub{font-size:11px;color:rgba(255,255,255,.72)}
.wh-stats{display:flex;gap:8px}
.whs{text-align:left;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.1);border-radius:var(--r);padding:5px 9px;min-width:70px}
.whs-n{font-size:16px;font-weight:800;color:#fff;line-height:1}
.whs-l{font-size:9px;color:rgba(255,255,255,.65);text-transform:uppercase;letter-spacing:.7px;margin-top:3px;font-weight:700}
.wed-actions{display:flex;gap:6px;justify-content:flex-end;margin-bottom:8px}
.cn-card{background:var(--sage3);border-radius:var(--rlg);border:1px solid var(--sage);padding:8px;margin-bottom:8px}
.cn-row{display:flex;gap:8px}
.cn-in{flex:1;padding:8px 12px;border:1px solid var(--border);border-radius:var(--r);font-family:'Inter',sans-serif;font-size:13px;color:var(--body);outline:none;transition:border .15s}
.cn-in:focus{border-color:#9ca3af}
.agenda-panel{background:var(--white);border:1px solid var(--sage);border-radius:var(--rlg);overflow:hidden;width:100%}
.agenda-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 14px;border-bottom:1px solid var(--sage);background:var(--sage3)}
.agenda-title{font-size:13px;font-weight:800;color:var(--ink)}
.agenda-sub{font-size:11.5px;color:var(--muted)}
.ag-lbl{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--forest);padding:14px 16px 6px}
.wed-date-group{border-top:1px solid #eef3ef}
.wed-date-group:first-child{border-top:none}
.wed-date{display:flex;align-items:center;gap:7px;padding:9px 14px 5px;color:var(--ink);font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.8px}
.wed-date::before{content:none}
.wed-card{margin:5px 12px 8px;border:1px solid var(--sage);border-radius:var(--rlg);background:#fff;overflow:hidden}
.wed-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;background:var(--sage3);border-bottom:1px solid var(--sage);flex-wrap:wrap}
.wed-card-title{font-size:13px;font-weight:800;color:var(--body);line-height:1.3;flex:1;min-width:160px}
.wed-card-dept{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:4px;background:#fff;border:1px solid var(--sage);color:var(--forest);font-size:11px;font-weight:800;white-space:nowrap}
.wed-card-body{padding:8px 10px}
.wed-card-meta{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:6px;font-size:11px;color:var(--muted);font-weight:600}
.wed-card-summary{font-size:12px;color:var(--sub);line-height:1.5;margin-bottom:7px}
/* ASSIGNMENT CARDS (Tasks tab — Received/Delegated Assignments) */
.assign-group{margin-bottom:12px}
.assign-group-head{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--sage3);border:1px solid var(--border);border-radius:var(--rlg);cursor:pointer;transition:background .1s}
.assign-group-head:hover{background:var(--sage2)}
.assign-group-toggle{font-size:13px;color:var(--muted);width:14px;flex-shrink:0;display:inline-flex;justify-content:center}
.assign-avatar-wrap{position:relative;display:inline-flex;flex-shrink:0}
.assign-new-badge{position:absolute;top:-3px;right:-3px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--ruby);color:#fff;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center;line-height:1;box-shadow:0 0 0 2px var(--white)}
.assign-group-name{font-size:13px;font-weight:800;color:var(--body)}
.assign-group-summary{margin-left:auto;font-size:11px;color:var(--sub);font-weight:700;text-align:right}
.assign-cards{display:grid;gap:8px;margin:8px 0 12px 28px;padding-left:12px;border-left:2px solid var(--sage)}
.assign-cards .wed-card{margin:0}
.assign-card-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:11px;color:var(--muted);font-weight:600}
.assign-due{white-space:nowrap}
.assign-due.is-overdue{color:var(--ruby);font-weight:700}
.assign-desc-wrap{margin:8px 0}
.assign-desc{font-size:12.5px;line-height:1.6;color:var(--sub);white-space:pre-wrap}
.assign-stepper{display:flex;align-items:flex-start;gap:0;margin:10px 0 2px;overflow-x:auto}
.assign-step{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:50px}
.assign-step-dot{width:10px;height:10px;border-radius:50%;background:var(--white);border:2px solid var(--border);flex-shrink:0}
.assign-step-label{font-size:9px;font-weight:800;color:var(--muted);white-space:nowrap;letter-spacing:.3px;text-transform:uppercase}
.assign-step-line{flex:1;height:2px;background:var(--border);min-width:14px;margin:4px 2px 0}
.assign-step.is-complete .assign-step-dot{background:var(--fern);border-color:var(--fern)}
.assign-step.is-complete .assign-step-label{color:var(--forest)}
.assign-step-line.is-complete{background:var(--fern)}
.assign-step.is-current .assign-step-dot{background:var(--white);border-color:var(--fern);box-shadow:0 0 0 3px var(--sage2)}
.assign-step.is-current .assign-step-label{color:var(--forest)}
.assign-step.is-declined .assign-step-dot{background:var(--ruby);border-color:var(--ruby)}
.assign-step.is-declined .assign-step-label{color:var(--ruby)}
.assign-step.is-done .assign-step-dot{width:14px;height:14px;background:var(--fern);border-color:var(--fern);box-shadow:0 0 0 3px var(--leaf-bg);display:flex;align-items:center;justify-content:center;position:relative}
.assign-step.is-done .assign-step-dot::after{content:'✓';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:9px;font-weight:900;line-height:1}
.assign-step.is-done .assign-step-label{color:var(--forest);font-weight:900}
.assign-decline-note{margin-top:8px;padding:7px 10px;background:var(--ruby-bg);border:1px solid var(--ruby-bd);border-radius:var(--r);font-size:11.5px;line-height:1.5;color:var(--ruby)}
.assign-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid var(--border);flex-wrap:wrap}
.assign-actions-trailing{display:flex;align-items:center;gap:6px;margin-left:auto}
.assign-followup-btn{position:relative}
.assign-followup-count{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;margin-left:6px;border-radius:8px;background:var(--ruby);color:#fff;font-size:10px;font-weight:800;line-height:1}
.assign-followup-group-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:10px;background:#fef3c7;border:1px solid #f59e0b;color:#92400e;font-size:10.5px;font-weight:800;white-space:nowrap}
.notif-new-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:10px;background:var(--ruby);color:#fff;font-size:10.5px;font-weight:800;white-space:nowrap}
.notif-pending-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:10px;background:#fef3c7;border:1px solid #f59e0b;color:#92400e;font-size:10.5px;font-weight:800;white-space:nowrap}
.wed-card.has-followup{border-color:#f4cf75;box-shadow:inset 3px 0 0 #f59e0b}
.wed-card.has-followup .wed-card-head{background:#fffbeb;border-bottom-color:#fde68a}
.wed-card.has-new-reminder{border-color:#f4cf75;box-shadow:inset 3px 0 0 #f59e0b}
.wed-card.has-new-reminder .wed-card-head{background:#fffbeb;border-bottom-color:#fde68a}
.wed-card.has-proof-ready{border-color:#f4cf75;box-shadow:inset 3px 0 0 #f59e0b}
.wed-card.has-proof-ready .wed-card-head{background:#fffbeb;border-bottom-color:#fde68a}
.assign-alert-btn{white-space:nowrap;font-weight:700;color:var(--forest);transition:background .12s}
.assign-alert-btn:hover{background:var(--sage3)}
.assign-alert-btn.is-active{color:var(--muted);background:var(--sage3);opacity:1}
.assign-alert-label,.assign-alert-group-badge{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:10px;background:#fee2e2;border:1px solid #fca5a5;color:#b91c1c;font-size:10.5px;font-weight:800;white-space:nowrap}
.assign-alert-dismiss{border:none;background:none;cursor:pointer;color:#b91c1c;font-size:13px;font-weight:800;line-height:1;padding:0;opacity:.7}
.assign-alert-dismiss:hover{opacity:1}
.assign-more-btn{border:none;background:none;cursor:pointer;font-size:15px;line-height:1;padding:3px 7px;border-radius:5px;color:var(--muted);opacity:.7;transition:opacity .12s,background .12s}
.assign-more-btn:hover{opacity:1;background:var(--sage3);color:var(--ink)}
.assign-cancel-btn{color:var(--ruby);border-color:var(--ruby-bd)}
.assign-cancel-btn:hover{background:var(--ruby-bg);border-color:var(--ruby)}
.assign-cancelled-banner{margin:10px 0 2px;padding:8px 11px;background:var(--ruby-bg);border:1px solid var(--ruby-bd);border-radius:var(--r);color:var(--ruby);font-size:11.5px;font-weight:700;line-height:1.5}
.notif-highlight{animation:notifFlash 1.3s ease-in-out 2;outline:3px solid #f59e0b;outline-offset:2px;border-radius:var(--rlg)}
@keyframes notifFlash{0%,100%{background:transparent}50%{background:#fffbeb}}
.notif-unseen{background:#fffbeb;border:1px solid #fde68a;border-left:4px solid #f59e0b}
.assign-approval-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:10px;background:#fef3c7;border:1px solid #f59e0b;color:#92400e;font-size:10.5px;font-weight:800;white-space:nowrap}
.assign-compact-card{margin-bottom:0}
.assign-person-new-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--ruby);color:#fff;font-size:10px;font-weight:900;line-height:1}
.assign-task-new{display:inline-flex;align-items:center;padding:2px 7px;border-radius:999px;background:var(--ruby-bg);border:1px solid var(--ruby-bd);color:var(--ruby);font-size:10px;font-weight:900;line-height:1.2}
.assign-compact-card.is-overdue{border-color:var(--ruby-bd);box-shadow:inset 3px 0 0 var(--ruby)}
.assign-compact-card.has-changes-requested{border-color:var(--ruby-bd);box-shadow:inset 3px 0 0 var(--ruby)}
.assign-compact-card.has-changes-requested .assign-compact-head{background:var(--ruby-bg)}
.assign-compact-head{padding:7px 10px;background:#fff}
.assign-title-button{display:flex;align-items:center;gap:7px;flex:1;min-width:220px;border:0;background:none;padding:0;text-align:left;cursor:pointer;color:inherit}
.assign-reminder-count{display:inline-flex;align-items:center;padding:2px 7px;border:1px solid #f6c453;border-radius:999px;background:#fffbeb;color:#8a5200;font-size:10px;font-weight:800;line-height:1.2;white-space:nowrap}
.assign-changes-count{display:inline-flex;align-items:center;padding:2px 7px;border:1px solid var(--ruby-bd);border-radius:999px;background:var(--ruby-bg);color:var(--ruby);font-size:10px;font-weight:800;line-height:1.2;white-space:nowrap}
.assign-not-submitted{display:inline-flex;align-items:center;padding:2px 7px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--muted);font-size:10px;font-weight:700;line-height:1.2;white-space:nowrap}
.assign-expand-symbol{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--sage3);color:var(--forest);font-size:13px;font-weight:800;flex-shrink:0}
.assign-compact-body{padding:7px 10px}
.assign-compact-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.assign-compact-summary .assign-actions{margin:0;padding:0;border:0;flex:1;justify-content:flex-end}
.assign-expanded-details{margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}
.assign-show-more{width:100%;padding:8px;border:1px dashed var(--sage);border-radius:var(--r);background:var(--sage3);color:var(--forest);font-size:11.5px;font-weight:800;cursor:pointer}.assign-show-more span{color:var(--muted);font-weight:600}.assign-show-more:hover{background:var(--sage2)}
.assign-history-direction{display:flex;gap:5px;margin:8px 0 0 28px;padding-left:12px}.assign-history-direction button{border:1px solid var(--border);border-radius:var(--r);background:#fff;color:var(--sub);padding:6px 10px;font-size:11px;font-weight:700;cursor:pointer}.assign-history-direction button.active{background:var(--forest);border-color:var(--forest);color:#fff}.assign-history-direction button span{margin-left:5px;opacity:.75}.assign-history-direction button:disabled{opacity:.4;cursor:not-allowed}
.assign-history-labels{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.assign-history-label{display:inline-flex;align-items:center;padding:3px 8px;border:1px solid var(--border);border-radius:999px;background:#f8fafc;color:var(--muted);font-size:10.5px;font-weight:700;white-space:nowrap;cursor:default}
@media(max-width:640px){.assign-cards{margin-left:12px;padding-left:8px}}
.task-review-box{width:640px;max-width:calc(100vw - 28px);max-height:90vh}
.task-review-body{max-height:52vh;overflow-y:auto;background:var(--white)}
.task-review-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;margin-bottom:10px;border:1px solid var(--border);border-radius:var(--r);background:var(--sage3)}
.task-review-summary.is-pending{background:#fffbeb;border-color:#fde68a}
.task-review-summary.is-approved{background:#f0fdf4;border-color:#bbf7d0}
.task-review-summary.is-changes{background:var(--ruby-bg);border-color:var(--ruby-bd)}
.task-review-kicker{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;color:var(--muted)}
.task-review-state{margin-top:2px;font-size:13px;font-weight:800;color:var(--body)}
.task-review-person{font-size:11.5px;font-weight:700;color:var(--sub);text-align:right}
.task-review-foot{display:block;padding:12px 16px}
.task-review-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.task-review-status{margin-right:auto;font-size:11px;color:var(--muted)}
.task-review-changes-btn{color:var(--ruby);border-color:var(--ruby-bd)}
.task-review-changes-btn:hover{background:var(--ruby-bg);border-color:var(--ruby)}
@media(max-width:640px){.task-review-actions{align-items:stretch}.task-review-actions .btn{flex:1}.task-review-status{width:100%;margin:0}.task-review-body{max-height:45vh}}
.email-link-btn{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border);background:#fff;color:var(--forest);border-radius:6px;padding:5px 9px;font-size:11px;font-weight:700;cursor:pointer;margin-top:8px}
.email-link-btn:hover{background:var(--sage3);border-color:var(--sage)}
.ag-ta{width:100%;padding:8px 10px;border:1px solid var(--sage);border-radius:var(--r);font-family:'Inter',sans-serif;font-size:12.5px;color:var(--body);outline:none;transition:border .15s;resize:vertical;min-height:42px;line-height:1.45;background:#fff}
.ag-ta:focus{border-color:var(--forest);box-shadow:0 0 0 3px var(--sage2)}
.ag-foot{display:flex;gap:6px;align-items:center;margin-top:8px;flex-wrap:wrap}
.ag-status-btn{border:1px solid var(--border);background:#fff;color:var(--muted);border-radius:6px;padding:4px 8px;font-family:'Inter',sans-serif;font-size:11px;font-weight:700;cursor:pointer}
.ag-status-btn:hover{border-color:var(--sage);color:var(--forest);background:var(--sage3)}
.ag-status-btn.on{background:var(--ink);border-color:var(--ink);color:#fff}
.ag-status-btn.overdue.on{background:#b91c1c;border-color:#b91c1c}
.ag-status-btn.done.on{background:#15803d;border-color:#15803d}
.rm-btn{background:none;border:none;cursor:pointer;color:var(--muted);font-size:15px;padding:0;line-height:1;transition:color .12s;flex-shrink:0}
.rm-btn:hover{color:#dc2626}

/* NOTES PAGE (for other principals) */
.notes-hero{background:linear-gradient(135deg,#0E3416 0%,#1A5C2A 100%);border-radius:var(--rlg);padding:12px 16px;margin-bottom:8px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.notes-panel{background:var(--white);border:1px solid var(--sage);border-radius:var(--rlg);overflow:hidden}
.notes-head{display:flex;align-items:center;justify-content:space-between;padding:9px 14px;border-bottom:1px solid var(--sage);background:var(--sage3)}
.note-item{padding:9px 14px;border-bottom:1px solid #f3f4f6;display:flex;align-items:flex-start;gap:8px}
.note-item:last-child{border-bottom:none}
.note-dot{width:8px;height:8px;border-radius:50%;background:var(--ink);margin-top:4px;flex-shrink:0}
.note-text{font-size:13px;color:var(--body);font-weight:500;flex:1;line-height:1.4}
.note-time{font-size:11px;color:var(--muted);margin-top:2px}

/* BACK */
.back-btn{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;color:var(--sub);cursor:pointer;margin-bottom:14px;border:none;background:none;font-family:'Inter',sans-serif;padding:0;font-weight:500;transition:color .12s}
.back-btn:hover{color:var(--body)}

/* ARCHIVE */
.arc-item{background:var(--white);border-radius:var(--rlg);border:1px solid var(--border);padding:9px 14px;margin-bottom:6px;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:10px}
.arc-item:hover{border-color:#9ca3af;box-shadow:var(--sh2)}
.arc-date{background:var(--ink);color:#fff;border-radius:var(--r);padding:8px 12px;text-align:center;flex-shrink:0;min-width:50px}
.arc-day{font-size:20px;font-weight:700;line-height:1}
.arc-mon{font-size:9px;text-transform:uppercase;letter-spacing:1px;opacity:.6;margin-top:1px;font-weight:700}
.arc-ttl{font-size:13px;font-weight:700;color:var(--body);margin-bottom:2px}
.arc-meta{font-size:11.5px;color:var(--muted)}

/* SUMMARY */
.sum-ctrl{display:flex;gap:8px;margin-bottom:14px;flex-wrap:wrap;align-items:center}

/* MODAL */
.mo{display:none;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:200;align-items:center;justify-content:center;padding:20px}
.mo.open{display:flex}
#mo-department-required{z-index:1200}
.mo-box{background:var(--white);border-radius:var(--rlg);width:500px;max-width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--sh3);animation:moIn .18s ease}
@keyframes moIn{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.mo-hdr{padding:13px 16px 10px;border-bottom:1px solid var(--border);display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.mo-title{font-size:14px;font-weight:700;color:var(--body)}
.mo-sub{font-size:11px;color:var(--muted);margin-top:2px}
.mo-x{width:26px;height:26px;border-radius:6px;border:1px solid var(--border);background:none;cursor:pointer;font-size:13px;color:var(--muted);display:flex;align-items:center;justify-content:center;transition:all .12s;flex-shrink:0}
.mo-x:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}
.mo-body{padding:12px 16px;overflow-y:auto;min-height:0}
.mo-foot{padding:9px 16px;border-top:1px solid var(--border);display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap;flex-shrink:0;background:#fff}
.sum-box{background:var(--sage3);border-left:3px solid var(--fern);padding:7px 10px;font-size:11.5px;color:var(--sub);line-height:1.5;margin-bottom:10px;border-radius:0 var(--r) var(--r) 0}
.sum-hdr{font-size:11.5px;font-weight:700;color:var(--body);margin-bottom:6px;padding-bottom:5px;border-bottom:1px solid var(--sage);display:flex;align-items:center;gap:6px;flex-wrap:wrap;line-height:1.3}
.sum-thread-badge{font-size:10px;color:var(--muted);font-weight:400;background:var(--sage2);padding:0 5px;border-radius:10px;border:1px solid var(--sage);white-space:nowrap}
.sum-rows{display:flex;flex-direction:column}
.sum-row{display:grid;grid-template-columns:76px 1fr;gap:1px 8px;padding:3px 0;border-bottom:1px solid var(--sage);align-items:baseline}
.sum-row:last-child{border-bottom:none}
.sum-row .lbl{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);padding-top:1px}
.sum-row .val{font-size:11.5px;color:var(--body);line-height:1.4}
.sum-row.s-involved .val{font-weight:600;color:var(--forest)}
.sum-row.s-action{background:rgba(46,125,63,.06);border-radius:3px;padding:3px 4px}
.sum-row.s-action .lbl{color:var(--fern)}
.sum-row.s-action .val{color:var(--ink);font-weight:600}
.sum-row.s-facts .lbl{color:var(--muted)}
.sum-row.s-facts .val{font-family:monospace;font-size:11px;color:var(--sub)}
.sum-link-row{margin-top:6px;padding-top:5px;border-top:1px solid var(--sage)}
.sum-empty{font-size:11.5px;color:var(--muted);font-style:italic}
.sum-ai-badge{display:inline-flex;align-items:center;gap:3px;font-size:9.5px;font-weight:700;color:var(--fern);background:var(--leaf-bg);border:1px solid var(--leaf-bd);border-radius:10px;padding:0 5px;margin-left:6px;vertical-align:middle;letter-spacing:.2px}
/* AI Settings */
.ai-status-bar{border-radius:var(--r);padding:9px 12px;font-size:12.5px;font-weight:500;margin-bottom:12px;line-height:1.45}
.ai-status-bar.ai-ok{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}
.ai-status-bar.ai-err{background:#fff1f2;color:#9f1239;border:1px solid #fecdd3}
/* Pre-send unread thread cards */
.unread-thread-card{border:1px solid var(--border);border-radius:var(--r);margin-bottom:12px;overflow:hidden}
.unread-thread-card:last-child{margin-bottom:0}
.unread-thread-head{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--sage3);border-bottom:1px solid var(--sage);flex-wrap:wrap}
.unread-thread-title{font-size:13px;font-weight:700;color:var(--body);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.unread-thread-meta{display:flex;gap:10px;padding:7px 12px;font-size:11.5px;border-bottom:1px solid var(--border);background:var(--white)}
.unread-thread-summary{padding:10px 12px;background:var(--white)}
/* Thread conversation view */
.tv-hdr{padding:12px 16px;border-bottom:1px solid var(--border);background:var(--white);flex-shrink:0}
.tv-subject{font-size:15px;font-weight:700;color:var(--body);margin-bottom:3px;line-height:1.3}
.tv-count{font-size:11.5px;color:var(--muted);margin-bottom:8px}
.tv-hdr-actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.tv-list{overflow-y:auto;flex:1;min-height:0;padding:14px;background-color:#f4faf5;background-image:url("data:image/svg+xml,%3Csvg width='900' height='520' viewBox='0 0 900 520' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='900' height='520' fill='%23f4faf5'/%3E%3Cpath d='M-90 402 C130 245 250 600 470 405 C650 245 760 315 1010 165' fill='none' stroke='%23d7eadb' stroke-width='86' stroke-linecap='round' opacity='.72'/%3E%3Cpath d='M-120 120 C120 20 245 235 455 116 C630 18 755 40 1020 -52' fill='none' stroke='%23ffffff' stroke-width='72' stroke-linecap='round' opacity='.9'/%3E%3Cpath d='M38 512 C210 380 330 468 475 362 C620 258 755 275 910 185' fill='none' stroke='%23b9dcc1' stroke-width='2' opacity='.55'/%3E%3Cpath d='M-45 180 C150 92 270 260 462 172 C650 86 780 110 938 36' fill='none' stroke='%23cce4d1' stroke-width='2' opacity='.7'/%3E%3Cpath d='M630 520 L900 300 L900 520 Z' fill='%23ffffff' opacity='.42'/%3E%3Cpath d='M0 0 L230 0 L0 145 Z' fill='%23e7f3e9' opacity='.72'/%3E%3C/svg%3E");background-size:cover;background-position:center}
.tv-msg{border:1px solid #d7dce2;border-radius:6px;background:var(--white);overflow:hidden;margin-bottom:12px;box-shadow:0 1px 2px rgba(15,23,42,.05)}
.tv-msg--latest{border-color:#7db5de;box-shadow:0 2px 8px rgba(0,120,212,.12)}
.tv-msg-hdr{display:flex;align-items:center;gap:10px;padding:12px 13px 9px;cursor:pointer;user-select:none;background:var(--white)}
.tv-msg-hdr:hover{background:var(--sage3)}
.tv-avatar{width:32px;height:32px;border-radius:50%;color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.tv-msg-meta{flex:1;min-width:0}
.tv-from{font-size:13px;font-weight:700;color:var(--body);line-height:1.35;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.tv-to{font-size:11.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:2px}
.tv-date{font-size:11px;color:var(--muted);white-space:nowrap;flex-shrink:0}
.tv-badge-latest{font-size:9px;font-weight:700;background:#0078d4;color:#fff;border-radius:8px;padding:1px 6px;letter-spacing:.2px}
.tv-msg-actions{display:flex;gap:5px;flex-wrap:wrap;padding:0 13px 10px 55px;background:var(--white)}
.tv-msg-actions button{height:26px;padding:0 9px;border-radius:4px;border:1px solid #d1d5db;background:#fff;color:#374151;font-family:Inter,sans-serif;font-size:11px;font-weight:600;cursor:pointer}
.tv-msg-actions button:hover{background:#f3faf4;border-color:#b8d9bd;color:#0E3416}
.tv-body{border-top:1px solid var(--border)}
.tv-body--collapsed{display:none}
.tv-preview{padding:7px 13px 8px 55px;font-size:12px;color:var(--muted);border-top:1px solid var(--sage);background:#f8fafc;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tv-history-note{font-size:10.5px;color:#64748b;background:#f8fafc;border-top:1px solid #e5e7eb;padding:6px 13px 6px 55px}
.tv-att{padding:6px 11px 7px;display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--border);background:var(--sage3)}
.tv-body-inner{padding:13px 14px 15px 55px}
.form-grp{margin-bottom:13px}
.form-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--sub);margin-bottom:4px;display:block}
.form-in,.form-sel,.form-ta{width:100%;padding:8px 11px;border:1px solid var(--border);border-radius:var(--r);font-family:'Inter',sans-serif;font-size:13px;color:var(--body);outline:none;transition:border .15s;background:var(--white)}
.form-in:focus,.form-sel:focus,.form-ta:focus{border-color:#9ca3af}
.form-ta{resize:vertical;min-height:68px;line-height:1.5}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.d-row{display:flex;gap:8px;margin-bottom:10px;align-items:flex-start}
.d-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);width:80px;flex-shrink:0;padding-top:2px}
.mo-section-lbl{font-size:12.5px;font-weight:800;letter-spacing:.2px;color:var(--forest);margin:18px 0 9px;padding-top:14px;border-top:1px solid var(--border)}
.mo-section-lbl-first{margin-top:0;padding-top:0;border-top:none}
.d-val{font-size:13px;color:var(--body);flex:1;line-height:1.4}
.info-bar{background:var(--sage3);border:1px solid var(--sage);border-radius:var(--r);padding:9px 12px;font-size:12px;color:var(--forest);margin-bottom:13px;line-height:1.5;font-weight:500}
.deadline-btn{padding:3px 9px;font-size:11px;font-weight:600;border:1px solid var(--border);border-radius:4px;background:var(--white);color:var(--muted);cursor:pointer;transition:all .12s;white-space:nowrap}
.deadline-btn.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.deadline-btn:hover:not(.active){background:var(--sage3);border-color:var(--sage);color:var(--body)}
.admin-tab{padding:10px 16px;font-size:12.5px;font-weight:600;border:none;background:none;cursor:pointer;color:var(--muted);border-bottom:2px solid transparent;transition:all .15s;margin-bottom:-1px}
.admin-tab.active{color:var(--ink);border-bottom-color:var(--ink)}
.admin-tab:hover:not(.active){color:var(--body)}
.admin-person-row{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #f3f4f6;font-size:12.5px}
.admin-person-row:last-child{border-bottom:none}
.principal-tag{font-size:9.5px;font-weight:700;background:var(--sage2);color:var(--ink);border:1px solid var(--sage);padding:1px 6px;border-radius:3px;text-transform:uppercase;letter-spacing:.5px}

.sec-hdr{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.sec-title{font-size:14px;font-weight:700;color:var(--body)}
.sec-sub{font-size:12px;color:var(--muted)}
.empty-state{text-align:center;padding:44px 20px}
.es-text{font-size:13.5px;font-weight:600;color:var(--body);margin-bottom:4px}
.es-sub{font-size:12px;color:var(--muted)}
.drill-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:200;align-items:center;justify-content:center;padding:20px}
.drill-overlay.open{display:flex}
.drill-box{background:var(--white);border-radius:var(--rlg);width:660px;max-width:100%;max-height:88vh;overflow-y:auto;box-shadow:var(--sh3);animation:moIn .18s ease}
.drill-hdr{padding:16px 20px 13px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--ink)}
.drill-hdr-title{font-size:15px;font-weight:700;color:#fff}
.drill-hdr-sub{font-size:11px;color:var(--sage);margin-top:2px;opacity:.75}
.toast{position:fixed;bottom:22px;right:22px;background:#111827;color:#fff;padding:10px 16px;border-radius:var(--rlg);font-size:12.5px;font-weight:600;box-shadow:var(--sh3);z-index:999;opacity:0;transform:translateY(8px);transition:.22s ease;pointer-events:none;max-width:280px}
.toast.show{opacity:1;transform:none}

/* OUTLOOK */
.ol-folder{display:flex;align-items:center;gap:7px;padding:6px 8px;border-radius:3px;cursor:pointer;font-size:11px;font-weight:500;color:#4b5563;transition:background .12s;margin-bottom:1px;border:none;background:none;width:100%;text-align:left;white-space:nowrap;overflow:hidden}
.ol-folder:hover{background:#f5f5f5;color:#111}
.ol-folder.active{background:#EBF2EC;color:#0E3416;font-weight:700}
.ol-filter-menu{position:relative;display:inline-flex;flex-shrink:0}
.ol-filter-icon{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #e5e7eb;border-radius:5px;background:#fff;color:#6b7280;cursor:pointer;padding:0;transition:all .12s}
.ol-filter-icon:hover,.ol-filter-icon.active{background:#EBF2EC;color:#0E3416;border-color:#D2DFD4}
.ol-filter-pop{display:none;position:absolute;right:0;top:28px;z-index:80;min-width:118px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 8px 22px rgba(0,0,0,.12);padding:4px}
.ol-filter-pop.open{display:block}
.ol-filter-pop button{display:flex;width:100%;align-items:center;justify-content:space-between;border:none;background:transparent;border-radius:4px;padding:6px 8px;font-family:'Inter',sans-serif;font-size:11px;font-weight:700;color:#4b5563;cursor:pointer;text-align:left}
.ol-filter-pop button.active{background:#EBF2EC;color:#0E3416}
.ol-filter-pop button.active::after{content:'✓';font-size:10px;color:#0E3416}
.ol-filter-pop button:hover:not(.active){background:#f3f4f6;color:#111}
.ol-email-item{display:block;width:100%;box-sizing:border-box;padding:8px 10px;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background .12s;overflow:hidden;position:relative}
.ol-email-item:hover{background:#f5f5f5}
.ol-email-item.active{background:#EBF2EC;border-left:2px solid #0E3416;padding-left:8px}
.ol-email-item.unread{border-left:2px solid #0E3416;padding-left:8px}
.ol-email-item.unread .ol-email-sender{font-weight:700}
.ol-email-item.unread .ol-email-subject{font-weight:700;color:#111}
.ol-email-item.pinned{background:#f7fbf8}
.ol-email-item.flagged .ol-email-actions,.ol-email-item.pinned .ol-email-actions,.ol-email-item:hover .ol-email-actions{display:inline-flex}
.ol-email-item .ol-sum-btn{display:none}
.ol-email-item:hover .ol-sum-btn{display:inline-flex}
.ol-email-actions{display:none;align-items:center;gap:3px;flex-shrink:0}
.ol-email-action-btn{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e5e7eb;border-radius:4px;color:#6b7280;padding:0;cursor:pointer;transition:all .12s}
.ol-email-action-btn:hover{background:#f9fafb;color:#111827;border-color:#cbd5e1}
.ol-email-action-btn.on{background:#ecfdf3;color:#0E3416;border-color:#9fd3a5}
.ol-date-group{padding:8px 10px 5px;background:#f4fbf5;border-bottom:1px solid #d9eadb;font-size:10px;font-weight:700;color:#355e3b;text-transform:uppercase;letter-spacing:.45px;position:sticky;top:0;z-index:1}
.ol-thread-count{font-size:10px;color:#6b7280;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:10px;padding:1px 6px;white-space:nowrap}
.ol-email-sender{font-size:12px;font-weight:500;color:#111;flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;display:block}
.ol-email-top{display:flex;align-items:center;gap:4px;margin-bottom:2px;width:100%;box-sizing:border-box}
.ol-email-subject{font-size:12px;color:#4b5563;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;max-width:100%;font-weight:400}
.ol-email-preview{font-size:11px;color:#9ca3af;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;max-width:100%}
.ol-email-attachments{display:flex;align-items:center;gap:4px;margin-top:3px;font-size:10px;color:#9ca3af;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ol-email-attachments svg{flex-shrink:0}
.ol-email-date{font-size:10px;color:#9ca3af;margin-left:auto;white-space:nowrap;flex-shrink:0}
.ol-search-input{width:100%;border:none;outline:none;font-family:Inter,sans-serif;font-size:12px;color:#111;background:transparent;padding:0}
.ol-search-input::placeholder{color:#9ca3af}
.ol-divider-btn{width:14px;flex-shrink:0;display:flex;align-items:center;justify-content:center;cursor:pointer;border-right:1px solid #e5e7eb;background:#fafafa;transition:background .12s;height:100%;position:relative;z-index:2}
.ol-divider-btn:hover{background:#f0f0f0}
.ol-mobile-back-btn{display:none}
/* Thin scrollbars in Outlook panels */
#page-outlook ::-webkit-scrollbar{width:4px;height:4px}
#page-outlook ::-webkit-scrollbar-track{background:transparent}
#page-outlook ::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:2px}
#page-outlook ::-webkit-scrollbar-thumb:hover{background:#9ca3af}

@media (max-width:1180px){
  .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dash-row{grid-template-columns:minmax(0,1fr)}
  .chart-grid{grid-template-columns:minmax(0,1fr)}
  .split-layout{grid-template-columns:minmax(0,1fr)}
  .topbar{height:auto;min-height:46px;flex-wrap:wrap;padding:8px 16px}
  .search-box{width:min(100%,240px)}
}
@media (max-width:760px){
  html{font-size:14px}
  body{display:block;padding-bottom:68px;min-height:100dvh;background:var(--bg)}
  .sb{position:fixed;left:0;right:0;bottom:0;top:auto;width:100%;height:64px;min-height:0;border-right:none;border-top:1px solid var(--border);z-index:250;box-shadow:0 -6px 24px rgba(0,0,0,.08);display:flex;flex-direction:row}
  .sb-brand,.sb-lbl,.sync-bar{display:none!important}
  .sb-nav{display:flex;align-items:center;gap:4px;padding:6px 8px;overflow-x:auto;overflow-y:hidden;flex:1;scrollbar-width:none}
  .sb-nav::-webkit-scrollbar{display:none}
  .ni{flex:0 0 58px;height:52px;justify-content:center;align-items:center;flex-direction:column;gap:3px;margin:0;padding:5px 3px;font-size:9.5px;line-height:1.15;text-align:center;white-space:normal}
  .ni svg{width:18px;height:18px}
  .ni.active::before{left:50%;top:auto;bottom:1px;transform:translateX(-50%);width:24px;height:3px;border-radius:3px 3px 0 0}
  .nb{position:absolute;top:3px;right:5px;margin:0;min-width:15px;padding:0 4px;font-size:9px;line-height:14px}
  .sb-foot{position:fixed;right:8px;top:8px;z-index:280;padding:0;border:none;background:transparent}
  .user-row{width:36px;height:36px;padding:0;border-radius:50%;justify-content:center;background:var(--white);box-shadow:var(--sh2);border:1px solid var(--border)}
  .user-row>div:not(.uav){display:none}
  .uav{width:30px;height:30px}
  .acct-menu{position:fixed;left:auto;right:8px;top:50px;bottom:auto;width:240px}
  .main{margin-left:0;max-width:100vw;min-height:calc(100dvh - 68px)}
  .topbar{height:auto;min-height:52px;padding:8px 52px 8px 10px;gap:8px;align-items:flex-start}
  .tb-left{min-width:0;flex:1 1 100%}
  .tb-title{font-size:15px}
  .tb-sub{display:none}
  .search-box{order:3;width:100%;height:36px}
  #pwa-install-btn{display:none!important}
  .topbar>.btn-primary{height:36px;padding:0 10px}
  .content{padding:10px 10px 14px}
  .stats-grid,.pulse-grid{grid-template-columns:minmax(0,1fr)}
  .form-row,.sum-row{grid-template-columns:minmax(0,1fr)}
  .btn{white-space:normal}
  .tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:6px}
  table{min-width:760px}
  #page-summary .sum-ctrl{display:grid;grid-template-columns:1fr 1fr;gap:7px;align-items:stretch}
  #page-summary .sum-ctrl .sel-f,#page-summary .sum-ctrl .btn{width:100%;height:36px;justify-content:center}
  #page-summary .sum-ctrl #sum-cnt{grid-column:1/-1}
  #page-summary .tbl-wrap{overflow:visible;background:transparent;border:none}
  #page-summary table{min-width:0;width:100%;display:block}
  #page-summary thead{display:none}
  #page-summary tbody{display:grid;gap:8px}
  #page-summary tr{display:grid;grid-template-columns:1fr;gap:5px;background:var(--white);border:1px solid var(--border);border-radius:7px;padding:10px 11px;box-shadow:var(--sh)}
  #page-summary td{display:flex;justify-content:space-between;gap:10px;padding:0!important;border:none;font-size:12px;color:var(--body)!important;white-space:normal!important}
  #page-summary td::before{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);flex-shrink:0}
  #page-summary td:nth-child(1){display:none}
  #page-summary td:nth-child(2){display:block;font-size:13px}
  #page-summary td:nth-child(2)::before{content:'Task';display:block;margin-bottom:3px}
  #page-summary td:nth-child(3)::before{content:'Assigned'}
  #page-summary td:nth-child(4)::before{content:'Department'}
  #page-summary td:nth-child(5)::before{content:'Status'}
  #page-summary td:nth-child(6)::before{content:'Priority'}
  #page-summary td:nth-child(7)::before{content:'Date'}
  #page-summary td:nth-child(8)::before{content:'Note'}
  #page-master .tbl-hdr{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:10px}
  #page-master .tbl-title{grid-column:1/-1}
  #page-master .sel-f{width:100%;height:36px}
  #page-master .tbl-wrap{overflow:visible;background:transparent;border:none}
  #page-master table{min-width:0;width:100%;display:block}
  #page-master thead{display:none}
  #page-master tbody{display:grid;gap:8px}
  #page-master tr{display:grid;grid-template-columns:1fr;gap:6px;background:var(--white)!important;border:1px solid var(--border);border-radius:7px;padding:10px 11px;box-shadow:var(--sh);opacity:1!important}
  #page-master td{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:0!important;border:none;font-size:12px;color:var(--body)!important;white-space:normal!important;text-align:left!important}
  #page-master td::before{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);flex-shrink:0;padding-top:2px}
  #page-master td:nth-child(1){position:absolute;right:10px;top:10px;width:auto}
  #page-master td:nth-child(1)::before{display:none}
  #page-master td:nth-child(2){display:block;padding-right:34px!important}
  #page-master td:nth-child(2)::before{content:'Task';display:block;margin-bottom:3px}
  #page-master td:nth-child(3)::before{content:'Assigned'}
  #page-master td:nth-child(4)::before{content:'Department'}
  #page-master td:nth-child(5)::before{content:'Status'}
  #page-master td:nth-child(6)::before{content:'Priority'}
  #page-master td:nth-child(7)::before{content:'Review'}
  #page-master td:nth-child(8)::before{content:'Deadline'}
  #page-master td:nth-child(9){justify-content:flex-end;border-top:1px solid var(--border);padding-top:8px!important;margin-top:2px}
  #page-master td:nth-child(9)::before{display:none}
  .card,.ch-card,.pulse-card,.sc{border-radius:6px}
  .mo{align-items:flex-end;padding:0}
  .mo-box{width:100%!important;max-width:100%!important;max-height:92dvh;border-radius:12px 12px 0 0}
  .mo-body{max-height:calc(92dvh - 104px);overflow:auto}
  .split-layout{grid-template-columns:minmax(0,1fr)}
  #page-outlook{margin:-10px!important;height:calc(100dvh - 120px)!important;max-width:calc(100% + 20px)!important}
  #ol-layout{height:100%!important;flex-direction:column;background:var(--white)!important}
  #ol-left-panel{width:100%!important;height:122px!important;min-height:122px!important;display:flex!important;overflow:hidden!important;border-bottom:1px solid var(--border);background:var(--white)!important}
  #ol-left-panel>div:first-child{padding:8px!important;gap:6px!important}
  #ol-left-panel>div:nth-child(2){display:flex;gap:5px;overflow-x:auto;overflow-y:hidden;padding:6px 8px!important;flex:0 0 auto!important;scrollbar-width:none}
  #ol-left-panel>div:nth-child(2)::-webkit-scrollbar{display:none}
  #ol-left-panel>div:nth-child(2)>div[style*="uppercase"],#ol-left-panel>div:nth-child(2)>div[style*="height:1px"]{display:none!important}
  .ol-folder{flex:0 0 auto;min-width:86px;height:38px;border:1px solid var(--border);border-radius:6px;background:var(--white);padding:6px 8px!important;margin:0!important;justify-content:center}
  .ol-folder span:first-of-type{font-size:11px;white-space:nowrap}
  #ol-contacts-sync-bar{display:none!important}
  .ol-divider-btn{display:none!important}
  #ol-mid-panel{width:100%!important;min-width:100%!important;flex:0 0 38%!important;height:auto!important;border-right:none!important;border-bottom:1px solid var(--border);display:flex!important}
  #ol-right-panel{display:flex!important;width:100%!important;flex:1 1 auto!important;height:auto!important;min-height:0}
  #ol-email-reader{overflow:auto!important}
  .ol-mobile-back-btn{display:inline-flex;margin-bottom:8px;border:1px solid var(--border);background:var(--white);color:var(--body);border-radius:6px;padding:7px 10px;font-family:Inter,sans-serif;font-size:12px;font-weight:700}
  .tv-hdr{padding:10px 12px!important}
  .tv-list{padding:8px!important;overflow:auto!important}
  .tv-msg{border-radius:7px!important}
  .tv-msg-hdr{gap:7px!important}
  .tv-date{font-size:10px!important;max-width:72px;white-space:normal!important;text-align:right}
}

@media (display-mode:standalone) and (max-width:760px){
  body{padding-top:env(safe-area-inset-top);padding-bottom:calc(68px + env(safe-area-inset-bottom))}
  .sb{height:calc(64px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom)}
  .topbar{position:sticky;top:0}
}

/* ONEDRIVE SYNC INDICATOR */
.sync-bar{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);padding:4px 0}
.sync-dot{width:7px;height:7px;border-radius:50%;background:var(--muted);flex-shrink:0}
.sync-dot.syncing{background:#b45309;animation:pulse 1s infinite}
.sync-dot.synced{background:#15803d}
.sync-dot.error{background:#b91c1c}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}

/* Laptop widths and Windows 125% scaling: keep the desktop structure while
   preventing wide tables and dialogs from being clipped by the viewport. */
@media (max-width:1400px) and (min-width:761px){
  .sb{width:170px}
  .sb-foot{width:170px}
  .main{margin-left:170px;max-width:calc(100vw - 170px)}
  .content{padding:10px 12px}
  .topbar{padding-left:12px;padding-right:12px}
  .tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  #page-master table{min-width:1040px}
  #page-summary table{min-width:900px}
  .wed-card-head,.assign-compact-summary{min-width:0;flex-wrap:wrap}
  .wed-card-title{overflow-wrap:anywhere}
  .mo-box{max-width:calc(100vw - 48px);max-height:calc(100vh - 32px)}
}

@media print{
  @page{
    margin:1.8cm 2cm 2.4cm;
    size:A4 portrait;
    @bottom-left{content:"CONFIDENTIAL \2014  INTERNAL USE ONLY";font-family:'Segoe UI',Helvetica,Arial,sans-serif;font-size:6.5pt;color:#9ca3af;letter-spacing:.4pt}
    @bottom-right{content:"Page " counter(page) " of " counter(pages);font-family:'Segoe UI',Helvetica,Arial,sans-serif;font-size:6.5pt;color:#9ca3af}
  }
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact;box-sizing:border-box}

  /* hide interactive UI + dept nav strip */
  .sb,.topbar,.btn,.wed-btn,button,.acct-menu,.week-bar,.tbl-hdr,
  .cn-row,.wed-actions,.rm-btn,.ag-foot,.compose-ac,.deadline-btn,
  #mo-ai-settings,#mo-admin,.sync-bar,.mo,.empty-state,
  .wed-expand-btn{display:none!important}
  body.printing-summary #page-summary .sum-ctrl,
  body.printing-summary #page-summary .tbl-wrap{display:none!important}
  body.printing-summary #summary-print-report{display:block!important}
  #wed-list>div[style*="gap:8px"]:first-child{display:none!important}

  /* page base */
  html,body{font-family:'Segoe UI',Helvetica,Arial,sans-serif;color:#111;background:#fff;font-size:9.5pt;line-height:1.5;margin:0;padding:0}
  .main{margin-left:0!important;padding:0}

  /* print header */
  #print-header{display:block!important;margin-bottom:20pt}

  /* department section headers */
  .wed-date-group{page-break-inside:avoid;break-inside:avoid;margin-bottom:14pt}
  .wed-date{
    display:flex!important;align-items:center;gap:8pt;
    font-size:8pt;font-weight:800;color:#fff;
    text-transform:uppercase;letter-spacing:.8pt;
    padding:4.5pt 10pt;
    background:#0E3416;
    margin-bottom:7pt;
    border-radius:2pt
  }
  .wed-date>span:first-child{display:none!important}

  /* task cards */
  .wed-card{
    page-break-inside:avoid;break-inside:avoid;
    border:1pt solid #e5e7eb;
    border-left:3.5pt solid #0E3416;
    border-radius:0 3pt 3pt 0;
    margin:0 0 5pt 0;
    background:#fff;
    overflow:hidden
  }
  .wed-card-head{
    display:flex!important;align-items:center;gap:8pt;
    background:#f9fafb;
    border-bottom:1pt solid #e5e7eb;
    padding:5.5pt 9pt
  }
  .wed-card-title{font-size:10.5pt;font-weight:700;color:#0d1117;flex:1;line-height:1.3}
  .wed-card-compact-body{padding:5pt 9pt 7pt}
  .wed-card-body{padding:5pt 9pt 7pt}

  /* meta row */
  .wed-card-meta{display:flex!important;gap:7pt;flex-wrap:wrap;align-items:center;margin-bottom:5pt;font-size:8.5pt;color:#374151;font-weight:600}
  .wed-card-summary{font-size:8.5pt;color:#1f2937;line-height:1.6;margin-bottom:4pt}

  /* show full summary */
  .wed-sum-clip{max-height:none!important;display:block!important}
  .wed-sum-clip::after{display:none!important}

  /* status badges pill style */
  .badge,.bp,.bd,.bo{display:inline-block!important;padding:1.5pt 6pt;border-radius:10pt;font-size:7pt;font-weight:700;letter-spacing:.2pt}
  .bd{background:#d1fae5!important;color:#065f46!important;border:1pt solid #6ee7b7!important}
  .bo{background:#fee2e2!important;color:#991b1b!important;border:1pt solid #fca5a5!important}
  .bp{background:#fef9c3!important;color:#713f12!important;border:1pt solid #fde047!important}

  /* priority badges */
  .p-high{display:inline-block!important;background:#fee2e2!important;color:#b91c1c!important;border:1pt solid #fca5a5!important;padding:1.5pt 6pt;border-radius:10pt;font-size:7pt;font-weight:700}
  .p-low{display:none}

  /* department pill */
  .dept-pill{display:inline-flex!important;font-size:7pt;padding:1.5pt 6pt;border-radius:10pt;border:1pt solid #d1d5db;background:#f3f4f6;color:#374151;font-weight:600}

  /* follow-up note left-accent */
  .wed-card-compact-body div[style*="background:var(--sage3)"]{
    background:#f0fdf4!important;
    border:none!important;border-left:3pt solid #16a34a!important;
    padding:3pt 8pt!important;font-size:8.5pt!important;color:#14532d!important;
    margin-bottom:5pt!important;border-radius:0 2pt 2pt 0!important
  }

  /* meeting note area ruled lines */
  .ag-ta{
    display:block!important;
    width:100%;
    border:none;
    border-top:1pt solid #e5e7eb;
    padding:5pt 0 2pt;
    font-size:8.5pt;font-family:inherit;color:#374151;
    background:repeating-linear-gradient(transparent,transparent 17pt,#e5e7eb 17pt,#e5e7eb 18pt);
    background-size:100% 18pt;
    min-height:36pt;
    line-height:18pt;
    margin-top:5pt;
    resize:none
  }

  /* tables */
  table{border-collapse:collapse;width:100%}
  th,td{border:1pt solid #d1d5db;padding:4.5pt 8pt;font-size:8.5pt}
  th{background:#f0f4f0!important;font-weight:700;color:#111;letter-spacing:.2pt;text-transform:uppercase;font-size:7.5pt}
  .summary-print-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:8pt;margin:0 0 12pt}
  .summary-print-box{border:1pt solid #d1d5db;border-radius:3pt;padding:6pt 8pt;background:#f9fafb}
  .summary-print-label{font-size:6.8pt;text-transform:uppercase;letter-spacing:.5pt;color:#6b7280;font-weight:800}
  .summary-print-value{font-size:10pt;color:#111827;font-weight:800;margin-top:2pt;word-break:break-word}
  .summary-print-note{font-size:8pt;color:#374151;margin:0 0 10pt;line-height:1.5}
}
/* Isolated real-interface D1 staging build. */
#staging-app-banner{background:#fffbeb;border-bottom:1px solid #f59e0b;color:#92400e;padding:7px 16px;font-size:11px;font-weight:800;letter-spacing:.25px;text-align:center}
#staging-dual-write-test{margin-left:8px;border:1px solid #d97706;background:#fff;color:#92400e;border-radius:4px;padding:3px 7px;font-size:10px;font-weight:800;cursor:pointer}

/* Compact notification bell. Kept visually quiet until unread activity exists. */
.notification-center{position:relative;flex-shrink:0}
.notification-center[hidden],.notification-popover[hidden],.notification-bell-count[hidden]{display:none!important}
.notification-bell{width:30px;height:30px;border:1px solid var(--border);border-radius:var(--r);background:var(--white);color:var(--sub);display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative}
.notification-bell:hover{background:var(--sage3);color:var(--ink)}
.notification-bell-count{position:absolute;right:-5px;top:-6px;min-width:17px;height:17px;padding:0 4px;border-radius:10px;background:#dc2626;color:#fff;border:2px solid var(--white);font-size:9px;font-weight:800;line-height:13px;text-align:center}
.notification-popover{position:absolute;right:0;top:37px;width:min(370px,calc(100vw - 24px));max-height:min(560px,calc(100vh - 70px));background:var(--white);border:1px solid var(--border);border-radius:8px;box-shadow:var(--sh3);overflow:hidden;z-index:300}
.notification-popover-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--border)}
.notification-popover-head>div{display:flex;flex-direction:column;gap:2px}.notification-popover-head strong{font-size:13px}.notification-popover-head span{font-size:10px;color:var(--muted)}
.notification-popover-head button,.notification-history-link{border:0;background:none;color:var(--forest);font:600 10.5px Inter,sans-serif;cursor:pointer}
.notification-popover-list{overflow-y:auto;max-height:430px}
.notification-item{width:100%;border:0;border-bottom:1px solid var(--border);background:var(--white);display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:9px;align-items:start;padding:10px 12px;text-align:left;cursor:pointer;color:var(--body)}
.notification-item:hover{background:var(--sage3)}.notification-item.unread{background:var(--sage2)}
.notification-item-icon{width:28px;height:28px;border-radius:50%;background:var(--sage3);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;color:var(--forest)}
.notification-item-icon.type-changes,.notification-item-icon.type-cancelled{background:var(--ruby-bg);color:var(--ruby)}
.notification-item-icon.type-reminder,.notification-item-icon.type-proof{background:var(--amber-bg);color:var(--amber)}
.notification-item-copy{display:flex;flex-direction:column;min-width:0;gap:2px}.notification-item-copy strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-item-copy span{font-size:10.5px;color:var(--sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.notification-item-time{font-size:9.5px;color:var(--muted);padding-top:2px}.notification-history-link{width:100%;padding:10px;border-top:1px solid var(--border);text-align:center}.notification-empty{padding:30px 14px;text-align:center;color:var(--muted);font-size:11px}
@media(max-width:700px){.notification-popover{position:fixed;right:8px;top:50px;left:8px;width:auto}.search-box{display:none}}
