:root{
  --blue:#0755b8; --blue-dark:#082f68; --blue-soft:#eaf3ff; --green:#0f8a45; --green-soft:#e9fbf0; --red:#d71920; --orange:#f28c18; --purple:#6d28d9;
  --bg:#f4f7fb; --text:#1e293b; --muted:#64748b; --card:#ffffff; --line:#d8e2ef;
  --shadow:0 16px 40px rgba(15,23,42,.08); --shadow-soft:0 8px 20px rgba(15,23,42,.06); --radius:20px;
}
*{box-sizing:border-box} body{margin:0;font-family:"Segoe UI",Arial,Helvetica,sans-serif;background:linear-gradient(180deg,#f7faff,#eef4fb);color:var(--text)} a{text-decoration:none;color:inherit}.app{display:flex;min-height:100vh}
.sidebar{width:292px;background:linear-gradient(180deg,#071f49,#064b9e);color:#fff;position:fixed;left:0;top:0;bottom:0;overflow:auto;padding:24px 16px;box-shadow:10px 0 30px rgba(6,33,75,.18)}.emp-sidebar{background:linear-gradient(180deg,#06381d,#0d7d42)}.brand{display:flex;gap:13px;align-items:center;margin-bottom:26px;padding:8px}.brand-logo{width:52px;height:52px;border-radius:16px;background:#fff;color:var(--blue);display:grid;place-items:center;font-weight:900;font-size:18px;letter-spacing:-.04em;box-shadow:0 8px 18px rgba(0,0,0,.12)}.emp-sidebar .brand-logo{color:var(--green)}.brand h2{font-size:20px;margin:0}.brand p{font-size:12px;margin:4px 0 0;color:#dbeafe}.menu-title{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:#bdd7ff;margin:22px 10px 8px}.menu a{display:flex;align-items:center;gap:10px;padding:12px 13px;border-radius:14px;color:#eaf2ff;margin-bottom:6px;font-size:14px;font-weight:600;transition:.2s}.menu a:hover,.menu a.active{background:rgba(255,255,255,.16);transform:translateX(3px);color:#fff}
.main{margin-left:292px;width:calc(100% - 292px);padding:24px}.topbar{min-height:78px;background:rgba(255,255,255,.86);backdrop-filter:blur(12px);border:1px solid var(--line);box-shadow:var(--shadow-soft);border-radius:var(--radius);display:flex;align-items:center;justify-content:space-between;padding:16px 22px;margin-bottom:22px}.topbar h1{margin:0;font-size:26px;color:var(--blue-dark)}.eyebrow{margin:0 0 3px;text-transform:uppercase;letter-spacing:.15em;color:#0e65ce;font-weight:800;font-size:11px}.user-pill{display:flex;align-items:center;gap:10px;background:#eef6ff;border:1px solid #c7ddff;padding:10px 14px;border-radius:999px;font-size:14px}.role{background:var(--blue);color:#fff;padding:5px 10px;border-radius:999px;font-size:12px}.grid{display:grid;gap:18px}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.single{grid-template-columns:1fr}.card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-soft);border-radius:var(--radius);padding:22px;margin-bottom:18px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.section-title{font-size:21px;margin:0;color:var(--blue-dark)}.sub-title{font-size:17px;margin:6px 0 0;color:var(--blue-dark)}
.hero-card{background:linear-gradient(135deg,#082f68,#0755b8);border-radius:24px;color:#fff;padding:28px;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;overflow:hidden;position:relative}.hero-card:after{content:"";position:absolute;right:-60px;top:-70px;width:240px;height:240px;border-radius:50%;background:rgba(255,255,255,.12)}.hero-card h2{margin:0;font-size:30px}.hero-card p{color:#dceafe;max-width:740px}.hero-card .eyebrow{color:#bfdbfe}.hero-actions{display:flex;gap:10px;position:relative;z-index:2}.employee-hero{background:linear-gradient(135deg,#075f31,#12a254);justify-content:flex-start;gap:18px}
.stat.pro{display:flex;justify-content:space-between;align-items:center;position:relative;overflow:hidden}.stat h3{margin:0 0 7px;font-size:14px;color:var(--muted)}.stat strong{font-size:36px;color:var(--blue-dark);line-height:1}.stat p{margin:6px 0 0;color:var(--muted);font-size:13px}.stat .icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;font-size:25px;font-weight:900}.icon.blue{background:#eaf3ff;color:var(--blue)}.icon.green{background:#e9fbf0;color:var(--green)}.icon.orange{background:#fff5e7;color:var(--orange)}.icon.purple{background:#f3e8ff;color:var(--purple)}
.btn{border:0;border-radius:12px;padding:11px 16px;background:var(--blue);color:#fff;font-weight:800;cursor:pointer;display:inline-block;transition:.2s}.btn:hover{filter:brightness(.97);transform:translateY(-1px)}.btn-green{background:var(--green)}.btn-red{background:var(--red)}.btn-orange{background:var(--orange)}.btn-light{background:#eef2f7;color:#102033}.btn-sm{padding:7px 10px;font-size:12px}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.premium-form .field{animation:fadeUp .25s ease both}.field label{display:block;font-size:13px;font-weight:800;margin-bottom:7px;color:#334155}.checkline{display:flex!important;align-items:center;gap:8px}.input,select,textarea{width:100%;border:1px solid #cbd5e1;border-radius:13px;padding:12px 13px;font-size:14px;background:#fff;transition:.2s}.input:focus,select:focus,textarea:focus{outline:0;border-color:#2b7de9;box-shadow:0 0 0 4px rgba(43,125,233,.12)}.field-full{grid-column:1/-1}textarea{min-height:94px;resize:vertical}.file-input{background:#f8fbff}.extra-doc-row{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;margin-bottom:10px}.soft-badge{background:#eef6ff;color:#0755b8;border:1px solid #c7ddff;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:800}.credential-box{background:linear-gradient(135deg,#ecfdf5,#eff6ff);border:1px solid #a7f3d0;border-radius:20px;padding:18px;margin-bottom:18px;box-shadow:var(--shadow-soft)}.credential-box h3{margin:0 0 10px;color:#075f31}
.table-wrap{overflow:auto;border-radius:16px;border:1px solid var(--line)}table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:13px 14px;border-bottom:1px solid #e5edf6;text-align:left;font-size:14px;vertical-align:top}th{background:#f1f6ff;color:#0f356d;font-size:12px;text-transform:uppercase;letter-spacing:.05em}tr:hover td{background:#fbfdff}.table-search{max-width:300px}.badge{display:inline-flex;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800}.badge-green{background:#dcfce7;color:#166534}.badge-red{background:#fee2e2;color:#991b1b}.badge-blue{background:#dbeafe;color:#1e40af}.badge-yellow{background:#fef3c7;color:#92400e}.badge-gray{background:#e5e7eb;color:#374151}.notice{padding:13px 15px;border-radius:14px;margin-bottom:14px;background:#e8f7ee;border:1px solid #bbf7d0;color:#166534;font-weight:700}.error{background:#fee2e2;border-color:#fecaca;color:#991b1b}.muted{color:var(--muted)}.permission-note{font-size:13px;color:#64748b;margin-top:12px}
.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at top left,#dbeafe,transparent 30%),linear-gradient(135deg,#eef6ff,#f7fbff);padding:20px}.login-card{width:440px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:26px;padding:30px}.login-card.wide{width:540px}.mini-logo{width:62px;height:62px;border-radius:18px;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:900;margin-bottom:16px}.mini-logo.green{background:var(--green)}.login-card h1{margin:0 0 8px;color:var(--blue-dark)}.login-card p{margin:0 0 18px;color:var(--muted)}.login-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.process-card{border:1px solid #dbeafe;background:#f8fbff;border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:6px;transition:.2s}.process-card:hover{border-color:#7bb4ff;transform:translateY(-2px);box-shadow:var(--shadow-soft)}.process-card span{font-weight:900;color:var(--blue-dark)}.process-card b{font-size:28px;color:var(--blue)}.process-card small{color:var(--muted)}.quick-actions{display:grid;gap:10px}.quick-actions a{background:#f8fbff;border:1px solid #dbeafe;border-radius:14px;padding:14px;font-weight:800;color:#0b2d64;transition:.2s}.quick-actions a:hover{background:#eaf3ff;transform:translateX(3px)}.workflow-board{display:grid;grid-template-columns:repeat(7,1fr);gap:12px}.workflow-card{border-radius:16px;padding:15px;border:1px solid #dbeafe;background:#f8fbff}.workflow-card span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--blue);font-weight:900;margin-bottom:10px}.workflow-card b{display:block;color:#0b2d64}.workflow-card small{color:var(--muted)}.workflow-card.green span{background:var(--green)}.workflow-card.purple span{background:var(--purple)}.workflow-card.dark span{background:var(--blue-dark)}
.profile-hero{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-soft);border-radius:24px;padding:22px;margin-bottom:18px;display:flex;align-items:center;gap:18px}.profile-photo{width:128px;height:128px;border-radius:26px;background:#eaf3ff;color:var(--blue);display:grid;place-items:center;font-size:48px;font-weight:900;border:1px solid #c7ddff;overflow:hidden}.profile-photo.small{width:90px;height:90px;font-size:34px;flex-shrink:0}.profile-photo img{width:100%;height:100%;object-fit:cover}.profile-hero h2{margin:0;font-size:29px;color:var(--blue-dark)}.profile-hero p{margin:7px 0;color:var(--muted)}.profile-tags{display:flex;flex-wrap:wrap;gap:8px}.profile-tags>span{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;padding:7px 11px;font-size:13px;font-weight:700}.info-list{display:grid;gap:9px}.info-list p{display:flex;justify-content:space-between;gap:15px;margin:0;padding:12px;background:#f8fbff;border:1px solid #e2eaf5;border-radius:13px}.notif{padding:12px;border:1px solid #e2eaf5;background:#f8fbff;border-radius:14px;margin-bottom:10px}.notif p{margin:4px 0 0;color:var(--muted)}.two-actions{display:flex;gap:8px;flex-wrap:wrap}.mobile-toggle{display:none}@keyframes fadeUp{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(max-width:1200px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(2,1fr)}.workflow-board{grid-template-columns:repeat(3,1fr)}}
@media(max-width:820px){.sidebar{transform:translateX(-100%);transition:.25s;z-index:20}.sidebar.open{transform:translateX(0)}.main{margin-left:0;width:100%;padding:14px}.mobile-toggle{display:inline-block}.grid-4,.grid-3,.grid-2,.form-grid,.process-grid,.workflow-board{grid-template-columns:1fr}.topbar,.hero-card{height:auto;gap:12px;align-items:flex-start;flex-direction:column}.hero-actions{flex-direction:column;width:100%}.profile-hero{flex-direction:column;align-items:flex-start}.extra-doc-row{grid-template-columns:1fr}.login-card{width:100%}}

/* Professional Team Discussion Chat */
.chat-hero{background:linear-gradient(135deg,#09295f,#0a66d6 55%,#10a37f);position:relative;overflow:hidden}.chat-hero:before{content:"";position:absolute;right:180px;top:25px;width:120px;height:120px;border-radius:36px;background:rgba(255,255,255,.1);transform:rotate(12deg)}.chat-layout{grid-template-columns:390px 1fr;align-items:start}.chat-panel{min-width:0}.chat-create .section-title,.room-list-card .section-title{font-size:18px}.mini-form{display:grid;gap:13px}.room-list{display:grid;gap:10px;max-height:630px;overflow:auto;padding-right:4px}.room-item{display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center;border:1px solid #dbeafe;background:linear-gradient(135deg,#fff,#f8fbff);border-radius:18px;padding:13px;transition:.2s}.room-item:hover,.room-item.active{border-color:#60a5fa;background:#eef6ff;box-shadow:0 10px 24px rgba(37,99,235,.12);transform:translateY(-1px)}.room-avatar{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:#eaf3ff;color:#0755b8;font-size:21px}.room-item b{display:block;color:#0b2d64;font-size:14px}.room-item small{display:block;color:#64748b;margin-top:4px;font-size:12px}.chat-box{padding:0;overflow:hidden}.chat-header-pro{padding:22px 24px;border-bottom:1px solid #e5edf6;background:linear-gradient(135deg,#ffffff,#f8fbff);display:flex;justify-content:space-between;gap:15px;align-items:center}.chat-header-pro h2{margin:0;color:#082f68;font-size:24px}.chat-header-pro p{margin:6px 0 0;color:#64748b}.chat-thread{height:560px;overflow:auto;padding:26px;background:radial-gradient(circle at top left,#edf6ff,transparent 26%),#fbfdff}.message{display:flex;gap:12px;margin-bottom:18px;max-width:86%}.message.mine{margin-left:auto;flex-direction:row-reverse}.msg-avatar{width:42px;height:42px;border-radius:15px;background:#0755b8;color:#fff;font-weight:900;display:grid;place-items:center;box-shadow:0 6px 14px rgba(7,85,184,.18);flex-shrink:0}.message.mine .msg-avatar{background:#0f8a45}.msg-bubble{background:#fff;border:1px solid #dbe4f0;border-radius:20px;padding:14px 16px;box-shadow:0 8px 22px rgba(15,23,42,.06);min-width:260px}.message.mine .msg-bubble{background:linear-gradient(135deg,#e9fbf0,#ffffff);border-color:#b7ebcc}.msg-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:7px}.msg-meta b{color:#0b2d64}.msg-meta span{font-size:11px;text-transform:uppercase;letter-spacing:.07em;background:#eef6ff;color:#0755b8;padding:4px 7px;border-radius:999px;font-weight:800}.msg-meta small{color:#94a3b8;font-size:12px}.msg-bubble p{margin:0;color:#1e293b;line-height:1.55}.attachment-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.attachment-chip{display:flex;align-items:center;gap:7px;background:#f1f6ff;border:1px solid #cfe0f9;border-radius:999px;padding:8px 10px;font-size:12px;font-weight:800;color:#0b2d64;max-width:260px}.attachment-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-chip small{font-weight:700;color:#64748b}.chat-composer{border-top:1px solid #e5edf6;padding:18px;background:#fff}.chat-composer textarea{min-height:86px;border-radius:18px}.composer-actions{display:flex;gap:12px;align-items:center;margin-top:11px;flex-wrap:wrap}.composer-actions small{color:#64748b;flex:1}.file-pill{display:inline-flex;align-items:center;gap:8px;background:#eef6ff;color:#0755b8;border:1px solid #c7ddff;border-radius:999px;padding:10px 13px;font-weight:900;cursor:pointer}.file-pill input{display:none}.empty-chat{text-align:center;padding:90px 20px;color:#64748b}.empty-chat>div{font-size:62px;margin-bottom:14px}.empty-chat h2{margin:0 0 8px;color:#082f68}
@media(max-width:1100px){.chat-layout{grid-template-columns:1fr}.chat-thread{height:520px}.message{max-width:100%}}


/* Professional chat identity details */
.chat-header-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.chat-search-input{min-width:260px;border:1px solid #cfe0f9;background:#fff;border-radius:999px;padding:10px 14px;font-weight:800;color:#0b2d64;outline:none}.chat-search-input:focus{border-color:#60a5fa;box-shadow:0 0 0 4px rgba(37,99,235,.10)}.msg-meta-pro{display:block}.sender-name-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}.sender-name-line b{font-size:15px;color:#09295f}.sender-detail-line{display:flex;gap:7px;flex-wrap:wrap}.sender-detail-line small{background:#f8fbff;border:1px solid #dbeafe;color:#475569;border-radius:999px;padding:4px 8px;font-weight:800;font-size:11px}.message.mine .sender-detail-line small{background:#f0fff6;border-color:#b7ebcc}.message.chat-hidden{display:none!important}@media(max-width:720px){.chat-search-input{min-width:100%;width:100%}.chat-header-actions{width:100%;justify-content:stretch}.msg-bubble{min-width:0;width:100%}.sender-detail-line small{font-size:10px}}


/* Fixed professional two-login screen */
.crm-login-pro{background:radial-gradient(circle at 12% 12%,#dbeafe,transparent 28%),radial-gradient(circle at 90% 10%,#c7f9dd,transparent 26%),linear-gradient(135deg,#eef6ff,#f8fbff);}
.login-shell{width:min(1040px,96vw);display:grid;grid-template-columns:1.05fr .95fr;gap:22px;align-items:stretch;}
.login-info-panel{border-radius:30px;padding:34px;color:#fff;box-shadow:0 24px 60px rgba(15,23,42,.16);position:relative;overflow:hidden;min-height:540px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(135deg,#082f68,#0755b8);}
.login-info-panel:before{content:"";position:absolute;right:-80px;top:-70px;width:250px;height:250px;border-radius:50%;background:rgba(255,255,255,.14)}
.login-info-panel:after{content:"";position:absolute;left:-40px;bottom:-60px;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,.10)}
.login-info-panel h2{font-size:42px;margin:18px 0 12px;position:relative;z-index:1;}
.login-info-panel p{font-size:17px;line-height:1.65;color:#eaf3ff;max-width:440px;position:relative;z-index:1;}
.employee-panel{background:linear-gradient(135deg,#064b2a,#0f8a45);}
.brand-mark{width:72px;height:72px;border-radius:22px;background:#fff;color:#0755b8;display:grid;place-items:center;font-weight:900;font-size:21px;box-shadow:0 12px 28px rgba(0,0,0,.14);position:relative;z-index:1;}
.brand-mark.green{color:#0f8a45;}
.login-flow-list{display:flex;gap:10px;flex-wrap:wrap;position:relative;z-index:1;}
.login-flow-list span{border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.13);padding:9px 12px;border-radius:999px;font-size:13px;font-weight:800;color:#fff;}
.pro-card{width:auto;border-radius:30px;padding:34px;box-shadow:0 24px 60px rgba(15,23,42,.12);}
.pro-card h1{font-size:31px;}
.password-field{position:relative;}
.password-field input{padding-right:76px;}
.password-field button{position:absolute;right:9px;bottom:8px;border:0;border-radius:10px;background:#eef2f7;color:#0b2d64;font-weight:900;padding:8px 12px;cursor:pointer;}
.mini-credentials{margin-top:15px;margin-bottom:0;padding:14px;border-radius:16px;font-size:13px;line-height:1.65;}
.mini-credentials code{background:#fff;border:1px solid #dbeafe;border-radius:7px;padding:2px 6px;color:#082f68;font-weight:900;}
.green-box{background:linear-gradient(135deg,#ecfdf5,#ffffff);border-color:#bbf7d0;}
@media(max-width:900px){.login-shell{grid-template-columns:1fr}.login-info-panel{min-height:auto}.login-info-panel h2{font-size:32px}.pro-card{padding:26px}}

/* DIP inspired employee attendance UI */
.dip-hero{display:flex;justify-content:space-between;gap:18px;align-items:stretch;background:linear-gradient(135deg,#073b86,#0867c9 60%,#0fbf7a);border-radius:26px;padding:24px;margin-bottom:18px;color:#fff;box-shadow:0 18px 44px rgba(7,85,184,.18);position:relative;overflow:hidden}.dip-hero:before{content:"";position:absolute;right:220px;top:-60px;width:170px;height:170px;border-radius:50%;background:rgba(255,255,255,.13)}.dip-hero-left{display:flex;gap:18px;align-items:center;position:relative;z-index:1}.dip-emblem{width:72px;height:72px;border-radius:20px;background:#fff;color:#0755b8;display:grid;place-items:center;font-size:21px;font-weight:900;box-shadow:0 12px 26px rgba(0,0,0,.16);flex-shrink:0}.dip-kicker{margin:0 0 6px;text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:900;color:#2563eb}.dip-hero .dip-kicker{color:#dbeafe}.dip-hero h2{font-size:31px;margin:0 0 8px}.dip-hero p{margin:0;color:#e8f2ff;line-height:1.55}.dip-live-card{width:210px;position:relative;z-index:1;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.24);border-radius:22px;padding:18px;text-align:right;display:flex;flex-direction:column;justify-content:center}.dip-live-card span{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;color:#eaf2ff}.dip-live-card strong{font-size:22px;margin:8px 0 4px}.dip-live-card em{font-style:normal;font-weight:900;color:#fff;background:rgba(255,255,255,.16);border-radius:999px;padding:7px 10px;display:inline-block}.dip-profile-strip{display:grid;grid-template-columns:72px 1.5fr repeat(4,1fr);gap:14px;align-items:center;background:#fff;border:1px solid #d8e2ef;border-radius:22px;padding:16px;margin-bottom:18px;box-shadow:0 8px 20px rgba(15,23,42,.06)}.dip-profile-avatar{width:62px;height:62px;border-radius:20px;background:linear-gradient(135deg,#0f8a45,#22c55e);color:#fff;display:grid;place-items:center;font-size:28px;font-weight:900}.dip-profile-info p,.dip-info-cell span{display:block;margin:0 0 5px;color:#64748b;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.dip-profile-info h3{margin:0;color:#082f68;font-size:22px}.dip-info-cell{border-left:1px solid #e5edf6;padding-left:14px;min-height:52px;display:flex;flex-direction:column;justify-content:center}.dip-info-cell b{color:#0f172a}.dip-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.dip-mark-card,.dip-summary-card{background:#fff;border:1px solid #d8e2ef;border-radius:22px;padding:22px;box-shadow:0 8px 20px rgba(15,23,42,.06)}.dip-card-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px}.dip-card-head h2{margin:0;color:#082f68;font-size:22px}.dip-status-pill{padding:9px 13px;border-radius:999px;font-weight:900;font-size:12px}.dip-status-pill.pending{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa}.dip-status-pill.open{background:#e0f2fe;color:#075985;border:1px solid #bae6fd}.dip-status-pill.done{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.dip-check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.dip-check-box{background:linear-gradient(135deg,#f8fbff,#eef6ff);border:1px solid #dbeafe;border-radius:18px;padding:16px}.dip-check-box span{display:block;color:#64748b;font-size:12px;font-weight:900;text-transform:uppercase;margin-bottom:8px}.dip-check-box strong{font-size:22px;color:#082f68}.dip-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.dip-actions button:disabled{opacity:.55;cursor:not-allowed;transform:none}.dip-help{font-size:13px;color:#64748b;margin:0;line-height:1.5}.dip-filter{display:flex;gap:8px;align-items:center}.dip-filter select{padding:9px 10px;border-radius:12px;font-size:13px}.dip-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.dip-stats div{border:1px solid #dbeafe;background:#f8fbff;border-radius:18px;padding:16px;text-align:center}.dip-stats span{display:block;color:#64748b;font-weight:900;font-size:12px;text-transform:uppercase;margin-bottom:8px}.dip-stats b{font-size:30px;color:#0755b8}.dip-calendar-card{padding:22px}.dip-legend{display:flex;gap:10px;flex-wrap:wrap}.dip-legend span{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:900;color:#475569}.dip-legend i{width:10px;height:10px;border-radius:50%;display:inline-block}.dip-legend i.present{background:#22c55e}.dip-legend i.absent{background:#ef4444}.dip-legend i.holiday{background:#94a3b8}.dip-legend i.weekend{background:#3b82f6}.dip-legend i.today{background:#2563eb}.dip-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.dip-week-name{text-align:center;font-size:12px;text-transform:uppercase;font-weight:900;color:#64748b;background:#f1f6ff;border-radius:12px;padding:10px}.dip-day{min-height:88px;border:1px solid #dbe4f0;border-radius:16px;padding:10px;background:#fff;display:flex;flex-direction:column;gap:5px}.dip-day b{font-size:18px;color:#082f68}.dip-day span{font-size:12px;font-weight:900;color:#475569}.dip-day small{font-size:11px;color:#64748b}.dip-day.present{background:#dcfce7;border-color:#86efac}.dip-day.present span{color:#166534}.dip-day.absent{background:#fff1f2;border-color:#fecdd3}.dip-day.holiday{background:#f8fafc;border-color:#cbd5e1}.dip-day.holiday span{color:#475569}.dip-day.weekend{background:#eff6ff;border-color:#bfdbfe}.dip-day.weekend span{color:#1d4ed8}.dip-day.future{background:#f8fbff;border-style:dashed}.dip-day.today{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.16)}.dip-day.today:not(.present):not(.weekend):not(.holiday):not(.paid-leave):not(.lop-leave):not(.pending-leave){background:#dbeafe}.dip-day.blank{background:transparent;border:0}.dip-rules{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}.dip-rules div{background:linear-gradient(135deg,#ffffff,#f8fbff);border:1px solid #d8e2ef;border-radius:18px;padding:16px;box-shadow:0 8px 20px rgba(15,23,42,.05)}.dip-rules b{display:block;color:#082f68;margin-bottom:6px}.dip-rules span{color:#64748b;font-size:14px;line-height:1.5}
@media(max-width:1100px){.dip-profile-strip{grid-template-columns:62px 1fr 1fr}.dip-layout{grid-template-columns:1fr}.dip-live-card{width:auto}.dip-calendar-grid{gap:7px}.dip-day{min-height:78px}}
@media(max-width:720px){.dip-hero{flex-direction:column}.dip-hero-left{align-items:flex-start;flex-direction:column}.dip-profile-strip{grid-template-columns:1fr}.dip-info-cell{border-left:0;border-top:1px solid #e5edf6;padding-left:0;padding-top:12px}.dip-check-grid,.dip-stats,.dip-actions,.dip-rules{grid-template-columns:1fr}.dip-card-head{align-items:flex-start;flex-direction:column}.dip-filter{width:100%;flex-wrap:wrap}.dip-filter select{flex:1}.dip-calendar-grid{grid-template-columns:repeat(2,1fr)}.dip-week-name{display:none}.dip-day.blank{display:none}.dip-day{min-height:70px}}


/* To-Do and EOD employee page */
.todo-hero{background:linear-gradient(135deg,#064b2a,#0f8a45 62%,#06b6d4)}
.todo-strip{grid-template-columns:72px 1.4fr repeat(4,1fr)}
.todo-summary-grid .card{margin-bottom:18px}.todo-card-pro{position:relative;overflow:hidden}.todo-card-pro:before{content:"";position:absolute;right:-42px;top:-42px;width:118px;height:118px;border-radius:50%;background:#eef6ff;z-index:0}.todo-card-pro>*{position:relative;z-index:1}.todo-form{display:grid;gap:14px}.activity-pills{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.activity-pills label{cursor:pointer}.activity-pills input{display:none}.activity-pills span{display:block;text-align:center;background:#f8fbff;border:1px solid #dbeafe;border-radius:16px;padding:14px 10px;font-weight:900;color:#334155;transition:.18s}.activity-pills input:checked+span{background:#eaf8f0;border-color:#86efac;color:#075f31;box-shadow:0 0 0 3px rgba(34,197,94,.12)}.empty-state{border:1px dashed #cbd5e1;background:#f8fbff;border-radius:18px;padding:22px;text-align:center;color:#64748b}.empty-state b{display:block;color:#082f68;margin-bottom:8px}.empty-state span{line-height:1.5}.admin-eod-filter{display:grid;grid-template-columns:180px 240px auto;gap:10px;align-items:center}.todo-form textarea{min-height:118px}.todo-card-pro .soft-badge{white-space:nowrap}
@media(max-width:1100px){.todo-strip{grid-template-columns:62px 1fr 1fr}.admin-eod-filter{grid-template-columns:1fr 1fr auto}}
@media(max-width:720px){.activity-pills{grid-template-columns:1fr 1fr}.admin-eod-filter{grid-template-columns:1fr;width:100%}.todo-strip{grid-template-columns:1fr}.todo-summary-grid{grid-template-columns:1fr}.todo-card-pro .card-head{flex-direction:column;align-items:flex-start}}

.eod-hero{background:linear-gradient(135deg,#3b0764,#7c3aed 60%,#06b6d4)}
.eod-layout{align-items:start}.eod-reference-card{background:linear-gradient(135deg,#f8fbff,#fff);border:1px solid #dbeafe;border-radius:20px;padding:20px;box-shadow:0 8px 20px rgba(15,23,42,.05)}.eod-reference-card span{display:inline-block;background:#eef6ff;color:#0755b8;border:1px solid #bfdbfe;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900;margin-bottom:10px}.eod-reference-card h3{margin:0 0 10px;color:#082f68;font-size:22px}.eod-reference-card p{margin:0;color:#475569;line-height:1.6}.eod-ref-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:14px}.eod-ref-meta b{background:#ecfdf5;color:#166534;border:1px solid #bbf7d0;border-radius:999px;padding:7px 10px;font-size:12px}@media(max-width:720px){.eod-layout{grid-template-columns:1fr}}

/* Sidebar readability update */
.sidebar{width:305px;}
.main{margin-left:305px;width:calc(100% - 305px);}
.brand h2{font-size:22px;}
.brand p{font-size:13px;}
.menu-title{font-size:12px;letter-spacing:.18em;margin-top:24px;}
.menu a{font-size:15.5px;font-weight:800;padding:13px 14px;line-height:1.3;}

/* Multi task To-Do update */
.two-col{grid-template-columns:1fr 240px;}
.todo-task-section{background:linear-gradient(135deg,#ffffff,#f8fbff);border:1px solid #dbeafe;border-radius:20px;padding:18px;margin-bottom:16px;box-shadow:0 8px 20px rgba(15,23,42,.05)}
.task-section-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:14px}
.task-section-head h3{margin:0;color:#082f68;font-size:19px}
.todo-action-row{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}
.activity-pills.multi span{position:relative;padding-left:26px}
.activity-pills.multi span:before{content:"";width:13px;height:13px;border-radius:4px;border:2px solid #94a3b8;position:absolute;left:14px;top:50%;transform:translateY(-50%);background:#fff}
.activity-pills.multi input:checked+span:before{content:"✓";display:grid;place-items:center;font-size:10px;color:#fff;background:#16a34a;border-color:#16a34a;font-weight:900}
.activity-chip-list{display:flex;flex-wrap:wrap;gap:6px;max-width:260px}.activity-chip-list b{background:#eef6ff;color:#0755b8;border:1px solid #bfdbfe;border-radius:999px;padding:5px 9px;font-size:12px;white-space:nowrap}
@media(max-width:820px){.sidebar{width:292px}.main{margin-left:0;width:100%}.two-col{grid-template-columns:1fr}.task-section-head{flex-direction:column;align-items:flex-start}.todo-action-row .btn{width:100%;text-align:center}}

/* Notification system update */
.topbar-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.notif-bell{width:46px;height:46px;border-radius:16px;background:#fff;border:1px solid #c7ddff;box-shadow:0 8px 18px rgba(15,23,42,.06);display:grid;place-items:center;position:relative;font-size:19px}
.notif-bell b{position:absolute;right:-7px;top:-7px;min-width:23px;height:23px;padding:0 6px;border-radius:999px;background:#ef4444;color:#fff;font-size:12px;display:grid;place-items:center;border:2px solid #fff}
.menu-badge{margin-left:auto;background:#ef4444;color:#fff;border-radius:999px;min-width:24px;height:24px;padding:0 7px;display:inline-grid;place-items:center;font-size:12px;font-weight:900}
.notification-hero{background:linear-gradient(135deg,#082f68,#2563eb 65%,#06b6d4)}
.notification-card{overflow:hidden}.notification-list{display:grid;gap:12px}.notification-item{display:grid;grid-template-columns:54px 1fr;gap:14px;border:1px solid #e2e8f0;background:#fff;border-radius:18px;padding:15px;box-shadow:0 8px 18px rgba(15,23,42,.04)}.notification-item.unread{background:linear-gradient(135deg,#eff6ff,#ffffff);border-color:#93c5fd;box-shadow:0 12px 24px rgba(37,99,235,.08)}.notification-icon{width:52px;height:52px;border-radius:16px;background:#dbeafe;color:#1e40af;display:grid;place-items:center;font-weight:900;font-size:20px;text-transform:uppercase}.notification-icon.green{background:#dcfce7;color:#166534}.notification-title-line{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.notification-title-line h3{margin:0;color:#082f68;font-size:17px}.notification-body p{margin:7px 0;color:#475569;line-height:1.5}.notification-body small{color:#64748b;font-weight:700}.notification-actions{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.notify-select{min-width:260px;flex:1}.notify-select select{min-height:74px;background:#f8fbff}.notify-select small{display:block;margin-top:5px;color:#64748b;font-size:12px}.chat-composer-grid{display:grid;grid-template-columns:auto minmax(280px,1fr) 1fr auto;align-items:end;gap:12px}.chat-composer-grid .field{margin:0}.chat-composer-grid>small{align-self:center}
@media(max-width:900px){.chat-composer-grid{grid-template-columns:1fr}.topbar-actions{justify-content:flex-start}.notification-item{grid-template-columns:1fr}.notification-icon{width:44px;height:44px}}

/* Settings mail and auto password update */
.mail-log-body{white-space:pre-wrap;max-width:540px;max-height:220px;overflow:auto;background:#f8fbff;border:1px solid #dbeafe;border-radius:12px;padding:12px;color:#334155;font-size:12px;line-height:1.55}
.credential-box code{background:#fff;border:1px solid #bfdbfe;border-radius:8px;padding:4px 8px;color:#082f68;font-weight:900}


/* Swiggy-style location / map link UI */
.map-input-card{background:linear-gradient(135deg,#f8fbff,#ffffff);border:1px solid #dbeafe;border-radius:18px;padding:14px;box-shadow:0 8px 18px rgba(15,23,42,.04)}
.map-input-card .input{background:#fff}
.map-action-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px;align-items:center}
.map-action-row .btn{border-radius:13px;padding:11px 14px;font-size:13px}
.map-preview{margin-top:10px;background:#ecfdf5;border:1px dashed #86efac;color:#166534;border-radius:14px;padding:12px 14px;font-weight:800;line-height:1.45}
.map-preview a{color:#166534;text-decoration:none;display:block}
.map-open-btn{display:inline-flex;align-items:center;gap:6px;background:#eaf8f0;color:#075f31;border:1px solid #86efac;border-radius:999px;padding:9px 12px;text-decoration:none;font-size:12.5px;font-weight:900;white-space:nowrap}
.map-open-btn:hover{background:#dcfce7;box-shadow:0 8px 18px rgba(22,163,74,.14)}
.location-help{display:block;color:#64748b;font-size:12px;margin-top:7px;line-height:1.45}.location-help b{color:#082f68}
.location-card-link{display:flex;align-items:center;justify-content:space-between;gap:10px;text-decoration:none;background:linear-gradient(135deg,#ecfdf5,#f8fbff);border:1px solid #bbf7d0;border-radius:16px;padding:12px 14px;color:#075f31;font-weight:900}.location-card-link span{font-size:13px;color:#475569;font-weight:700}.location-card-link:hover{box-shadow:0 10px 22px rgba(22,163,74,.12)}
@media(max-width:720px){.map-action-row .btn{width:100%}.location-card-link{align-items:flex-start;flex-direction:column}}

/* Chat style Observation page */
.observation-layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:18px;align-items:start}.observation-leads-card{position:sticky;top:20px}.lead-chat-list{display:grid;gap:10px;margin-top:14px;max-height:calc(100vh - 260px);overflow:auto;padding-right:4px}.lead-chat-item{display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:center;text-decoration:none;background:#f8fbff;border:1px solid #dbeafe;border-radius:18px;padding:12px;color:#0f172a;transition:.18s}.lead-chat-item:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(15,23,42,.06)}.lead-chat-item.active{background:linear-gradient(135deg,#eff6ff,#ffffff);border-color:#60a5fa;box-shadow:0 0 0 3px rgba(37,99,235,.10)}.lead-avatar{width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,#0755b8,#0f8a45);color:#fff;display:grid;place-items:center;font-weight:900;font-size:18px}.lead-chat-info b{display:block;color:#082f68;font-size:15px}.lead-chat-info span,.lead-chat-info small{display:block;color:#64748b;line-height:1.35}.lead-chat-info small{font-size:12px}.lead-chat-meta{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.lead-chat-meta em{font-style:normal;font-size:11px;color:#64748b;font-weight:900}.observation-chat-wrap{display:grid;gap:18px}.client-observation-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.client-observation-head h2{font-size:26px;margin:0 0 7px;color:#082f68}.client-observation-head h2 span{vertical-align:middle;margin-left:8px}.client-observation-head p{margin:0;color:#64748b;font-weight:700}.client-head-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.client-observation-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px}.client-observation-grid div{background:#f8fbff;border:1px solid #dbeafe;border-radius:16px;padding:14px}.client-observation-grid span{display:block;color:#64748b;font-size:12px;text-transform:uppercase;font-weight:900;letter-spacing:.08em;margin-bottom:6px}.client-observation-grid b{display:block;color:#0f172a;line-height:1.4}.client-basic-note{margin-top:14px;background:#fff7ed;border:1px solid #fed7aa;color:#7c2d12;border-radius:16px;padding:13px 14px;line-height:1.5}.observation-timeline{display:grid;gap:12px;margin:12px 0 18px;max-height:420px;overflow:auto;padding:4px 4px 4px 0}.observe-bubble{background:linear-gradient(135deg,#f8fbff,#ffffff);border:1px solid #dbeafe;border-radius:18px;padding:15px 16px;box-shadow:0 8px 18px rgba(15,23,42,.04);position:relative}.observe-bubble:before{content:"";position:absolute;left:-6px;top:22px;width:12px;height:12px;background:#f8fbff;border-left:1px solid #dbeafe;border-bottom:1px solid #dbeafe;transform:rotate(45deg)}.observe-bubble-top{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.observe-bubble-top b{color:#082f68}.observe-bubble-top span{color:#64748b;font-size:12px;font-weight:800}.observe-bubble p{color:#334155;margin:10px 0 0;line-height:1.58}.observe-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.observe-tags em{font-style:normal;background:#eef6ff;border:1px solid #bfdbfe;color:#0755b8;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.observe-bubble.decision{border-width:2px}.observe-bubble.decision.approved{background:#ecfdf5;border-color:#86efac}.observe-bubble.decision.approved:before{background:#ecfdf5;border-color:#86efac}.observe-bubble.decision.rejected{background:#fff1f2;border-color:#fda4af}.observe-bubble.decision.rejected:before{background:#fff1f2;border-color:#fda4af}.observation-composer{border-top:1px solid #e2e8f0;padding-top:18px}.three-col{grid-template-columns:repeat(3,1fr)}.observation-decision-card{background:linear-gradient(135deg,#ffffff,#f8fbff)}
@media(max-width:1100px){.observation-layout{grid-template-columns:1fr}.observation-leads-card{position:static}.lead-chat-list{max-height:none}.client-observation-grid{grid-template-columns:1fr 1fr}.three-col{grid-template-columns:1fr}}
@media(max-width:720px){.client-observation-head{flex-direction:column}.client-head-actions{justify-content:flex-start}.client-observation-grid{grid-template-columns:1fr}.lead-chat-item{grid-template-columns:44px 1fr}.lead-chat-meta{grid-column:2;align-items:flex-start;flex-direction:row}.observation-decision-card form{grid-template-columns:1fr!important}.observe-bubble-top{align-items:flex-start}.observe-bubble:before{display:none}}

/* Project assignment + case study chat updates */
body, input, select, textarea, button, .card, .menu a, table, .msg-bubble { font-weight: 500; }
.case-hero{background:linear-gradient(135deg,#eef6ff,#f8fbff);border:1px solid #d7e7ff}
.case-study-layout{grid-template-columns:330px 1fr;align-items:start;gap:18px}
.lead-queue-card{position:sticky;top:18px}.lead-case-list{max-height:650px;overflow:auto;padding-right:4px}
.case-main{display:grid;gap:18px}.project-title-row{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.project-title-row h2{margin:4px 0 6px;color:#082e68;font-weight:800}.mini-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px}.mini-stat-grid div{background:#f8fbff;border:1px solid #d9e6f5;border-radius:14px;padding:13px}.mini-stat-grid span{display:block;text-transform:uppercase;letter-spacing:.1em;font-size:11px;color:#61708a;margin-bottom:6px;font-weight:800}.mini-stat-grid b{font-size:14px;color:#10233f;font-weight:700}.project-assign-form{display:grid;gap:14px}.employee-pick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.employee-pick{display:flex;gap:10px;align-items:center;border:1px solid #d9e6f5;border-radius:16px;background:#f9fbff;padding:12px;cursor:pointer;transition:.2s}.employee-pick:hover,.employee-pick.checked{border-color:#16a34a;background:#ecfdf3;box-shadow:0 10px 24px rgba(22,163,74,.08)}.employee-pick input{width:18px;height:18px}.emp-avatar,.room-avatar{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:#0b63c7;color:white;font-weight:800;flex:0 0 auto}.employee-pick b{display:block;font-weight:800;color:#0b2d64}.employee-pick small{display:block;color:#61708a;font-size:12px;font-weight:600}.assigned-member-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.member-chip{background:#eef6ff;border:1px solid #cfe0f7;color:#0b2d64;border-radius:999px;padding:8px 12px;font-weight:700}.member-chip small{color:#64748b;margin-left:5px}.case-chat-box{overflow:hidden}.whatsapp-thread{background:linear-gradient(180deg,#f7fbff,#edf5ff);border-radius:18px;padding:16px;min-height:330px;max-height:540px;overflow:auto;border:1px solid #dbeafe}.move-next-form{display:flex;align-items:center;gap:12px;margin-top:14px;padding-top:14px;border-top:1px solid #e5edf7}.task-assign-card small{color:#64748b;font-weight:600}.task-assign-card select option[hidden]{display:none}.two-col{grid-template-columns:1fr 1fr}.sender-name-line b{font-weight:800}.msg-bubble p{font-weight:500;line-height:1.55}.sidebar .menu a{font-size:15px;font-weight:700}.sidebar .menu-title{font-size:12px;font-weight:800}
@media(max-width:1100px){.case-study-layout{grid-template-columns:1fr}.lead-queue-card{position:static}.employee-pick-grid,.mini-stat-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.employee-pick-grid,.mini-stat-grid,.two-col{grid-template-columns:1fr}.project-title-row{flex-direction:column}.whatsapp-thread{max-height:440px}}

/* Team assign -> case study room refined flow */
.workflow-board-8{grid-template-columns:repeat(8,1fr)}
.team-assign-hero,.chat-hero-clean{background:linear-gradient(135deg,#082f68,#0b63c7 55%,#16a34a);position:relative;overflow:hidden}.team-assign-hero:after,.chat-hero-clean:after{content:"";position:absolute;right:70px;top:-28px;width:170px;height:170px;border-radius:45px;background:rgba(255,255,255,.12);transform:rotate(20deg)}
.workflow-mini-flow{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:10px;margin:0 0 18px;background:#fff;border:1px solid #dbeafe;border-radius:22px;padding:14px 16px;box-shadow:0 10px 26px rgba(15,23,42,.06)}
.mini-flow-step{display:flex;align-items:center;gap:10px;background:#f8fbff;border:1px solid #dbeafe;border-radius:16px;padding:12px 14px;min-width:190px}.mini-flow-step b{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#0755b8;font-weight:900}.mini-flow-step span{font-weight:900;color:#082f68}.mini-flow-step small{display:block;color:#64748b;font-weight:700}.mini-flow-step.active{background:#ecfdf5;border-color:#86efac}.mini-flow-step.active b{background:#16a34a;color:#fff}.mini-flow-step.done{background:#eff6ff}.mini-flow-step.done b{background:#0b63c7;color:#fff}.mini-flow-line{height:3px;background:linear-gradient(90deg,#93c5fd,#86efac);border-radius:999px}
.pro-team-card{border-color:#bfdbfe}.assigned-member-panel{margin-top:14px;background:linear-gradient(135deg,#f8fbff,#fff);border:1px solid #dbeafe;border-radius:18px;padding:16px}.assigned-member-panel h3{margin:0 0 10px;color:#082f68}.compact-members{margin-top:18px}.compact-members .card-head{margin-bottom:8px}.compact-members h3{margin:0;color:#082f68;font-size:17px}.team-save-actions{align-items:center;margin-top:2px}.project-room-chat .chat-header-pro{background:linear-gradient(135deg,#f8fbff,#eef6ff)}
.sidebar .menu a{font-size:15.8px!important;font-weight:500!important;line-height:1.35}.sidebar .menu-title{font-size:12px!important;font-weight:500!important}.menu a.active{box-shadow:inset 4px 0 0 rgba(255,255,255,.45)}
@media(max-width:1200px){.workflow-board-8{grid-template-columns:repeat(4,1fr)}.workflow-mini-flow{grid-template-columns:1fr}.mini-flow-line{height:18px;width:3px;justify-self:center}.mini-flow-step{min-width:0}.team-assign-layout{grid-template-columns:1fr}}
@media(max-width:700px){.workflow-board-8{grid-template-columns:1fr}.mini-stat-grid,.employee-pick-grid{grid-template-columns:1fr}.project-title-row{flex-direction:column}.workflow-mini-flow{padding:10px}}

.employee-role-section{display:grid;gap:16px}.employee-role-group{border:1px solid #d9e6f5;background:#fff;border-radius:18px;padding:14px}.role-group-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.role-group-title span{font-weight:900;color:#0b2d64}.role-group-title em{font-style:normal;background:#eef6ff;border:1px solid #cfe0f7;border-radius:999px;padding:6px 10px;color:#0b63c7;font-weight:800;font-size:12px}.employee-pick-grid{margin-top:0}.employee-pick span b{font-weight:850}.employee-pick span small{font-weight:700}


/* Requirement management module */
.req-hero{background:linear-gradient(135deg,#eef6ff,#ffffff 55%,#ecfdf5);border:1px solid #cfe0f7}
.req-layout{grid-template-columns:360px 1fr;align-items:start;gap:18px}.req-side-card{position:sticky;top:18px}.req-search{margin:12px 0}.req-list{display:grid;gap:10px;max-height:760px;overflow:auto;padding-right:4px}.req-list-item{display:grid;grid-template-columns:14px 1fr auto;gap:12px;align-items:center;padding:14px;border:1px solid #dbeafe;border-radius:16px;background:#f8fbff;text-decoration:none;color:#0f172a;transition:.18s}.req-list-item:hover,.req-list-item.active{border-color:#60a5fa;background:#eef6ff;box-shadow:0 10px 26px rgba(37,99,235,.08)}.req-list-item b{display:block;color:#082f68;font-weight:900}.req-list-item small{display:block;color:#64748b;font-weight:700;margin-top:3px}.req-list-item em{font-style:normal;background:#eaf2ff;border:1px solid #bfdbfe;color:#0755b8;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:900}.req-dot{width:12px;height:12px;border-radius:50%;background:#f59e0b}.req-dot.high{background:#ef4444}.req-dot.medium{background:#f59e0b}.req-dot.low{background:#16a34a}.req-main{display:grid;gap:18px}.req-create-form .drop-upload{margin-top:4px}.req-employee-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.drop-upload{display:flex;align-items:center;justify-content:center;min-height:88px;border:2px dashed #bfdbfe;background:#f8fbff;border-radius:18px;cursor:pointer;text-align:center;color:#0b2d64;font-weight:900;padding:18px;transition:.2s}.drop-upload:hover{border-color:#16a34a;background:#ecfdf5}.drop-upload input,.file-pill input{display:none}.file-preview-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.file-preview-list span{display:inline-flex;align-items:center;gap:6px;border:1px solid #dbeafe;background:#fff;border-radius:999px;padding:7px 10px;color:#0b2d64;font-size:12px;font-weight:800}.req-detail-card{border-color:#bfdbfe}.req-status-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.req-link-line{background:#eff6ff;border:1px solid #bfdbfe;color:#0755b8;border-radius:14px;padding:12px 14px;font-weight:800}.req-link-line a{color:#0755b8}.req-description{background:#f8fbff;border:1px solid #dbeafe;border-radius:16px;padding:16px;line-height:1.65;color:#334155;margin-top:14px;white-space:normal}.req-status-form{margin-top:14px;border-top:1px solid #e5edf7;padding-top:14px}.req-two-col{grid-template-columns:1fr 1fr;align-items:start}.req-file-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.req-file-card{display:grid;gap:7px;border:1px solid #dbeafe;background:#f8fbff;border-radius:16px;padding:12px;text-decoration:none;color:#0f172a;min-height:92px;overflow:hidden}.req-file-card:hover{border-color:#60a5fa;background:#eff6ff}.req-file-card span{font-size:22px}.req-file-card b{font-size:13px;color:#082f68;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.req-file-card small{font-size:11px;color:#64748b;font-weight:800}.req-file-card img{width:100%;height:110px;object-fit:cover;border-radius:12px;border:1px solid #e2e8f0;margin-top:4px}.timeline-list{display:grid;gap:10px;max-height:320px;overflow:auto}.timeline-item{border-left:4px solid #60a5fa;background:#f8fbff;border-radius:14px;padding:12px 14px}.timeline-item b{display:block;color:#082f68}.timeline-item p{margin:6px 0;color:#334155}.timeline-item small{color:#64748b;font-weight:700}.req-chat-card{overflow:hidden}.req-chat-thread{background:linear-gradient(180deg,#f7fbff,#eef6ff);min-height:360px;max-height:610px}.chat-file-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-top:10px}.chat-file-grid .req-file-card{min-height:72px;background:#fff}.req-composer textarea{min-height:80px}.req-composer .file-preview-list{grid-column:1/-1}.field-full{grid-column:1/-1}
@media(max-width:1150px){.req-layout{grid-template-columns:1fr}.req-side-card{position:static}.req-two-col,.req-employee-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.req-two-col,.req-employee-grid,.req-layout{grid-template-columns:1fr}.req-list-item{grid-template-columns:12px 1fr}.req-list-item em{grid-column:2;justify-self:start}.drop-upload{min-height:74px}.req-file-grid{grid-template-columns:1fr}.chat-header-pro{flex-direction:column;align-items:flex-start}}


/* Requirements module user-friendly UI polish */
.hero-card.req-hero.req-hero-pro{
  background:linear-gradient(135deg,#0a3d86 0%,#0b63c7 48%,#13a05f 100%)!important;
  color:#fff!important;
  border:0!important;
  padding:28px 32px!important;
  min-height:150px;
}
.hero-card.req-hero.req-hero-pro:after{background:rgba(255,255,255,.13)!important;right:-35px;top:-45px;width:230px;height:230px}
.hero-card.req-hero.req-hero-pro h2{color:#fff!important;font-size:30px!important;font-weight:500!important;letter-spacing:-.03em;margin-bottom:8px!important}
.hero-card.req-hero.req-hero-pro p{color:#e9f4ff!important;font-size:15px!important;line-height:1.6!important;max-width:850px!important}
.hero-card.req-hero.req-hero-pro .eyebrow{color:#d7ecff!important}
.req-hero-content{position:relative;z-index:2}.req-hero-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.req-hero-chips span{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.25);backdrop-filter:blur(8px);border-radius:999px;padding:8px 11px;font-size:12px;font-weight:900;color:#fff}.req-hero-actions{position:relative;z-index:3;min-width:max-content}.req-hero-actions .btn-light{background:#fff;color:#082f68}.req-hero-actions .btn-green{box-shadow:0 12px 28px rgba(15,138,69,.25)}
.req-stepper{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0 0 18px}.req-step{background:#fff;border:1px solid #dbeafe;border-radius:18px;padding:14px 16px;display:flex;align-items:center;gap:12px;box-shadow:0 8px 22px rgba(15,23,42,.05)}.req-step b{width:36px;height:36px;border-radius:13px;display:grid;place-items:center;background:#eaf3ff;color:#0755b8;font-weight:900}.req-step span{display:block;font-size:14px;font-weight:900;color:#082f68}.req-step small{display:block;color:#64748b;font-weight:700;margin-top:2px}.req-step.done b{background:#dbeafe;color:#0755b8}.req-step.active{border-color:#86efac;background:linear-gradient(135deg,#ecfdf5,#fff)}.req-step.active b{background:#16a34a;color:#fff}.emp-req-stepper .req-step.active{border-color:#93c5fd;background:linear-gradient(135deg,#eff6ff,#fff)}
.req-layout{grid-template-columns:minmax(310px,360px) minmax(0,1fr)!important}.req-list-panel{padding:20px!important;border-color:#cfe0f7!important}.req-side-help{background:#f8fbff;border:1px dashed #cfe0f7;border-radius:14px;padding:10px 12px;color:#556987;font-size:13px;font-weight:700;line-height:1.45}.req-search{height:46px;background:#f8fbff!important;border-color:#cfe0f7!important}.req-list{gap:12px!important}.req-list-item{border-radius:18px!important;padding:15px!important;grid-template-columns:14px minmax(0,1fr) auto!important;background:#fff!important}.req-list-item.active{background:linear-gradient(135deg,#eef6ff,#fff)!important;border-color:#2b7de9!important;box-shadow:0 10px 28px rgba(43,125,233,.12)!important}.req-list-item b{font-size:14px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.req-list-item small{font-size:12px!important;line-height:1.35}.req-list-item em{white-space:nowrap}
.req-form-card{border-color:#cfe0f7!important;padding:24px!important}.req-form-head{align-items:flex-start!important}.req-mini-tag{background:#ecfdf5;border:1px solid #86efac;color:#166534;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900}.req-create-form{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}.req-create-form .field{background:#fff;border-radius:16px}.req-create-form label{color:#0f356d!important;font-size:12.5px!important;letter-spacing:.01em}.req-create-form .input,.req-create-form select,.req-create-form textarea{min-height:47px;border-color:#cfe0f7!important;background:#fbfdff!important;border-radius:14px!important;font-weight:500!important}.req-create-form textarea{min-height:120px!important;line-height:1.6!important}.req-section-label{display:flex!important;align-items:center;gap:12px;background:linear-gradient(135deg,#f1f7ff,#ffffff)!important;border:1px solid #dbeafe;border-radius:16px;padding:13px 14px!important;margin-top:4px}.req-section-label span{width:34px;height:34px;border-radius:12px;background:#0755b8;color:#fff;display:grid;place-items:center;font-weight:900}.req-section-label b{font-size:15px;color:#082f68}.req-section-label small{margin-left:auto;color:#64748b;font-weight:700}.req-employee-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))!important;gap:12px!important}.req-employee-grid .employee-pick{min-height:76px;background:#fbfdff!important}.req-employee-grid .employee-pick input:checked + .emp-avatar{background:#16a34a}.req-drop-upload{background:linear-gradient(135deg,#f8fbff,#ffffff)!important;border-color:#93c5fd!important;min-height:108px!important}.req-drop-upload span{font-size:14px;line-height:1.45}.req-submit-btn{grid-column:1/-1!important;justify-self:start;min-width:300px;height:50px;font-size:15px;border-radius:15px!important;box-shadow:0 12px 28px rgba(15,138,69,.18)}
.req-detail-card{background:linear-gradient(135deg,#ffffff,#f8fbff)!important}.project-title-row{gap:18px}.project-title-row h2{font-size:25px!important;letter-spacing:-.02em}.mini-stat-grid div{background:#fff!important;box-shadow:0 6px 18px rgba(15,23,42,.04)}.req-description{font-weight:600}.assigned-member-row .member-chip{background:#ecfdf5;border-color:#bbf7d0;color:#166534}.req-file-card{background:#fff!important;box-shadow:0 8px 20px rgba(15,23,42,.04)}.req-chat-card .chat-header-pro{background:linear-gradient(135deg,#eff6ff,#ffffff);border:1px solid #dbeafe;border-radius:18px;padding:16px;margin-bottom:14px}.req-chat-thread{border:1px solid #dbeafe;border-radius:18px}.req-composer{background:#fff;border-top:1px solid #e5edf7;padding-top:14px;margin-top:12px}.chat-composer-grid{align-items:center}
@media(max-width:1180px){.req-stepper{grid-template-columns:repeat(2,1fr)}.req-layout{grid-template-columns:1fr!important}.req-side-card{position:static!important}.req-create-form{grid-template-columns:1fr 1fr!important}.req-section-label small{display:none}}
@media(max-width:720px){.hero-card.req-hero.req-hero-pro{flex-direction:column;align-items:flex-start;padding:22px!important}.req-hero-actions{width:100%;display:grid;grid-template-columns:1fr}.req-stepper,.req-create-form{grid-template-columns:1fr!important}.req-submit-btn{width:100%;min-width:0}.req-list-item{grid-template-columns:12px 1fr!important}.req-list-item em{grid-column:2;justify-self:start}.req-section-label{align-items:flex-start}.req-section-label small{display:block;margin-left:0}.req-section-label{display:grid!important;grid-template-columns:34px 1fr}.req-section-label small{grid-column:2}}

/* Requirement simple user-friendly UI - compact version */
.req-clean-top{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px!important;margin-bottom:14px;background:#fff!important;border:1px solid #dbeafe!important;box-shadow:0 8px 22px rgba(15,23,42,.05)!important}.req-clean-top h2{font-size:28px;margin:2px 0 4px;color:#082f68;font-weight:900}.req-clean-actions{display:flex;gap:10px;flex-wrap:wrap}.req-simple-flow{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 14px}.req-simple-flow span{background:#fff;border:1px solid #dbeafe;color:#42607f;border-radius:999px;padding:9px 13px;font-size:13px;font-weight:800}.req-simple-flow span.active{background:#0b63c7;color:#fff;border-color:#0b63c7}.req-simple-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;align-items:start}.req-simple-side{position:sticky;top:16px;padding:16px!important}.req-side-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.req-side-title h3{font-size:18px;color:#082f68;margin:0;font-weight:900}.req-side-title span{background:#eaf3ff;border:1px solid #bfdbfe;color:#0755b8;border-radius:999px;padding:7px 11px;font-weight:900}.simple-list{max-height:520px}.req-simple-main{display:grid;gap:16px}.req-create-simple{padding:20px!important;background:#fff!important}.simple-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.simple-card-head h2{font-size:22px;color:#082f68;margin:0 0 5px;font-weight:900}.req-simple-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.req-simple-form .full{grid-column:1/-1}.req-simple-form label{font-size:13px!important;color:#0f356d!important;font-weight:500!important}.req-simple-form .input,.req-simple-form select,.req-simple-form textarea{border-radius:13px!important;border-color:#cfe0f7!important;background:#fbfdff!important;min-height:46px!important;font-weight:500!important}.req-simple-form textarea{min-height:96px!important}.req-employee-compact{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important;gap:10px!important}.req-employee-compact .employee-pick{padding:10px 12px!important;min-height:64px!important;border-radius:14px!important;background:#fbfdff!important}.req-employee-compact .emp-avatar{width:36px!important;height:36px!important}.req-drop-small{min-height:62px!important;border-radius:14px!important;background:#f8fbff!important}.req-drop-small span{font-size:13px!important}.req-submit-btn{grid-column:1/-1!important;justify-self:start!important;min-width:220px!important;height:46px!important}.req-open-simple{padding:20px!important;background:#fff!important}.req-summary-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0}.req-summary-row div{background:#f8fbff;border:1px solid #dbeafe;border-radius:14px;padding:12px}.req-summary-row span{display:block;color:#64748b;font-size:12px;font-weight:800}.req-summary-row b{display:block;color:#082f68;margin-top:3px;font-size:14px}.req-short-description{background:#f8fbff;border:1px solid #dbeafe;border-radius:14px;padding:13px 14px;color:#334155;line-height:1.55;font-weight:600;margin:12px 0}.req-open-link{display:inline-flex;align-items:center;gap:8px;background:#eff6ff;border:1px solid #bfdbfe;color:#0755b8;text-decoration:none;border-radius:999px;padding:9px 12px;font-weight:900;margin:4px 0 10px}.compact-members{gap:8px;margin:8px 0}.compact-members .member-chip{font-size:12px;padding:7px 10px;background:#ecfdf5;border-color:#bbf7d0;color:#166534}.req-inline-status{display:grid;grid-template-columns:220px 220px auto;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid #e5edf7}.req-inline-status select,.req-inline-status input{min-height:43px!important}.req-file-simple{padding:0!important;overflow:hidden}.req-file-simple details{padding:0}.req-file-simple summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:15px 18px;color:#082f68;font-size:17px;font-weight:900;background:#fff;border-bottom:1px solid #e5edf7}.req-file-simple summary span{background:#eaf3ff;border:1px solid #bfdbfe;color:#0755b8;border-radius:999px;padding:4px 9px;font-size:12px}.req-file-compact{padding:16px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))!important}.req-chat-simple{padding:18px!important}.simple-chat-thread{min-height:280px!important;max-height:430px!important;border-radius:18px;border:1px solid #dbeafe;background:#f8fbff!important}.req-chat-simple .chat-search-input{max-width:230px}.req-chat-simple .req-composer textarea{min-height:58px!important}.req-chat-simple .chat-composer-grid{display:grid;grid-template-columns:auto 1fr auto;gap:10px}.main-content{font-size:15px}.sidebar .nav-link,.sidebar a{font-size:15px!important;font-weight:500!important}.sidebar .nav-title{font-size:12px!important;letter-spacing:.22em!important}
@media(max-width:1180px){.req-simple-layout{grid-template-columns:1fr}.req-simple-side{position:static}.req-simple-form{grid-template-columns:1fr 1fr}.req-summary-row{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.req-clean-top,.simple-card-head{flex-direction:column;align-items:flex-start}.req-simple-form,.req-summary-row,.req-inline-status{grid-template-columns:1fr}.req-clean-actions{width:100%;display:grid;grid-template-columns:1fr}.req-submit-btn{width:100%;min-width:0!important}.req-chat-simple .chat-composer-grid{grid-template-columns:1fr}.req-chat-simple .chat-search-input{max-width:none;width:100%}}

/* Team Assign simple user-friendly UI */
.team-simple-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px!important;background:#fff!important;border:1px solid #dbeafe!important;box-shadow:0 8px 22px rgba(15,23,42,.05)!important}.team-simple-top h2{margin:0 0 4px;color:#082f68;font-size:26px;font-weight:900}.team-simple-top p:not(.eyebrow){margin:0;color:#64748b;font-weight:650}.team-simple-actions{display:flex;gap:10px;flex-wrap:wrap}.team-flow-clean{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 14px}.team-flow-clean span{background:#fff;border:1px solid #dbeafe;color:#43617f;border-radius:999px;padding:9px 13px;font-size:13px;font-weight:850}.team-flow-clean span.active{background:#0b63c7;color:#fff;border-color:#0b63c7}.team-simple-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;align-items:start}.team-lead-panel{position:sticky;top:16px;padding:16px!important}.card-head.compact{margin-bottom:10px}.team-search{height:44px;margin-bottom:12px;background:#f8fbff!important}.team-lead-list{display:grid;gap:10px;max-height:560px;overflow:auto;padding-right:3px}.team-lead-item{display:flex;gap:10px;align-items:center;border:1px solid #dbeafe;border-radius:16px;padding:12px;background:#fff;transition:.2s}.team-lead-item:hover,.team-lead-item.active{border-color:#2b7de9;background:#eef6ff;box-shadow:0 8px 20px rgba(43,125,233,.10)}.lead-dot{width:40px;height:40px;border-radius:13px;background:#0b63c7;color:#fff;display:grid;place-items:center;font-weight:900;flex:0 0 auto}.team-lead-item b{display:block;color:#082f68;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:190px}.team-lead-item small{display:block;color:#64748b;font-size:12px;font-weight:700;margin-top:2px}.team-simple-main{display:grid;gap:16px}.team-project-card,.team-picker-card{padding:20px!important;background:#fff!important}.team-project-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.team-project-head h2{margin:2px 0 5px;font-size:24px;color:#082f68;font-weight:900}.team-project-head p:not(.eyebrow){margin:0;color:#64748b;font-weight:700}.team-project-buttons{display:flex;gap:8px;flex-wrap:wrap}.team-picker-card .simple-card-head{margin-bottom:12px}.team-picker-card .simple-card-head h2{font-size:22px!important}.team-form-line{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.team-form-line label{font-size:13px!important;color:#0f356d!important;font-weight:500!important}.team-form-line .input{min-height:46px!important;border-color:#cfe0f7!important;background:#fbfdff!important;border-radius:13px!important}.team-toolbar-simple{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;background:#f8fbff;border:1px solid #dbeafe;border-radius:16px;padding:12px;margin-bottom:12px}.team-toolbar-simple .input{background:#fff!important;min-height:42px!important}.team-role-pills{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.team-role-pills button{border:1px solid #dbeafe;background:#fff;color:#0f356d;border-radius:999px;padding:8px 11px;font-size:12.5px;font-weight:900;cursor:pointer}.team-role-pills button.active,.team-role-pills button:hover{background:#0b63c7;color:#fff;border-color:#0b63c7}.team-employee-simple-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;margin-bottom:14px}.team-employee-card{display:flex;align-items:center;gap:10px;min-height:70px;border:1px solid #dbeafe;background:#fbfdff;border-radius:16px;padding:11px;cursor:pointer;transition:.18s}.team-employee-card:hover{border-color:#93c5fd;background:#f2f8ff}.team-employee-card.checked{border-color:#16a34a;background:#ecfdf3;box-shadow:0 8px 20px rgba(22,163,74,.08)}.team-employee-card input{width:18px;height:18px}.small-avatar{width:38px!important;height:38px!important;border-radius:13px!important}.emp-text{min-width:0}.emp-text b{display:block;color:#0b2d64;font-size:14px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.emp-text small{display:block;color:#52647e;font-size:12px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.emp-text em{display:inline-flex;margin-top:4px;background:#eef6ff;border:1px solid #cfe0f7;color:#0755b8;border-radius:999px;padding:3px 8px;font-size:11px;font-style:normal;font-weight:900}.team-selected-simple{background:#f8fbff;border:1px dashed #bfdbfe;border-radius:16px;padding:14px;margin:10px 0}.team-selected-simple h3{margin:0 0 10px;color:#082f68;font-size:16px;font-weight:900}.team-save-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;border-top:1px solid #e5edf7;padding-top:14px}.team-save-bar small{color:#64748b;font-weight:650}.sidebar .menu a{font-size:15.5px!important;font-weight:750!important}.sidebar .menu-title{font-size:12px!important;font-weight:500!important;letter-spacing:.18em!important}
@media(max-width:1100px){.team-simple-layout{grid-template-columns:1fr}.team-lead-panel{position:static}.team-project-head,.team-simple-top{flex-direction:column;align-items:flex-start}.team-form-line{grid-template-columns:1fr}.team-toolbar-simple{grid-template-columns:1fr auto auto}}
@media(max-width:720px){.team-simple-actions,.team-project-buttons{width:100%;display:grid;grid-template-columns:1fr}.team-flow-clean span{width:100%;text-align:center}.team-toolbar-simple{grid-template-columns:1fr 1fr}.team-toolbar-simple .input{grid-column:1/-1}.team-employee-simple-grid{grid-template-columns:1fr}.team-save-bar .btn{width:100%;text-align:center}.team-save-bar{align-items:stretch}}

/* Requirements page - extra simple user friendly layout */
.req-min-hero{max-width:1240px;margin:0 auto 14px!important;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px 24px!important;background:#fff!important;border:1px solid #dbeafe!important;box-shadow:0 8px 22px rgba(15,23,42,.05)!important}.req-min-hero h2{font-size:30px;line-height:1.1;margin:2px 0 5px;color:#082f68;font-weight:900}.req-min-hero p:not(.eyebrow){font-size:15px;color:#64748b;margin:0;font-weight:650}.req-min-actions{display:flex;gap:10px;flex-wrap:wrap}.req-min-flow{max-width:1240px;margin:0 auto 14px;display:flex;gap:10px;flex-wrap:wrap}.req-min-flow span{background:#fff;border:1px solid #dbeafe;border-radius:999px;color:#42607f;padding:9px 14px;font-size:13px;font-weight:850}.req-min-flow span.active{background:#0b63c7;color:#fff;border-color:#0b63c7}.req-min-wrap{max-width:1240px;margin:0 auto 16px;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:16px;align-items:start}.req-min-create,.req-min-list-card,.req-min-open,.req-min-detail-card{padding:20px!important;background:#fff!important;border-color:#dbeafe!important;box-shadow:0 8px 22px rgba(15,23,42,.05)!important}.req-min-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.req-min-card-title h2{margin:0 0 5px;color:#082f68;font-size:22px;font-weight:900}.req-min-card-title span{background:#eaf3ff;border:1px solid #bfdbfe;color:#0755b8;border-radius:999px;padding:6px 10px;font-weight:900;font-size:12px;white-space:nowrap}.req-min-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.req-min-form .wide,.req-min-form .full,.req-more-options.full{grid-column:1/-1}.req-min-form label{font-size:13px!important;color:#0f356d!important;font-weight:500!important}.req-min-form .input,.req-min-form select,.req-min-form textarea{min-height:46px!important;border:1px solid #cfe0f7!important;border-radius:14px!important;background:#fbfdff!important;font-size:14px!important;font-weight:500!important}.req-min-form textarea{min-height:86px!important}.req-min-emp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;max-height:210px;overflow:auto;border:1px solid #e5edf7;border-radius:16px;padding:10px;background:#f8fbff}.req-min-emp{display:grid;grid-template-columns:auto 1fr;gap:7px 10px;align-items:center;background:#fff;border:1px solid #dbeafe;border-radius:14px;padding:10px;cursor:pointer;transition:.18s}.req-min-emp:hover,.req-min-emp:has(input:checked){border-color:#16a34a;background:#ecfdf5}.req-min-emp input{width:16px;height:16px}.req-min-emp b{color:#082f68;font-size:14px;font-weight:900;line-height:1.1}.req-min-emp small{grid-column:2;color:#64748b;font-size:12px;font-weight:700;line-height:1.2}.req-more-options{border:1px dashed #bfdbfe;border-radius:16px;background:#f8fbff;padding:0!important;overflow:hidden}.req-more-options summary{cursor:pointer;padding:13px 15px;color:#0755b8;font-weight:900;list-style:none}.req-more-options summary::-webkit-details-marker{display:none}.req-more-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;border-top:1px solid #e5edf7;padding:14px}.req-min-upload{min-height:46px!important;border-radius:14px!important;padding:10px!important}.req-min-upload span{font-size:13px!important}.req-min-submit{grid-column:1/-1;justify-self:start;min-width:260px;height:46px}.req-min-list-card{position:sticky;top:16px}.req-min-list{display:grid;gap:9px;max-height:610px;overflow:auto}.req-min-list-item{display:grid;gap:3px;text-decoration:none;background:#f8fbff;border:1px solid #dbeafe;border-radius:15px;padding:12px;color:#0f172a;transition:.18s}.req-min-list-item:hover,.req-min-list-item.active{background:#eef6ff;border-color:#60a5fa;box-shadow:0 8px 18px rgba(37,99,235,.08)}.req-min-list-item b{color:#082f68;font-size:14px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.req-min-list-item small{color:#64748b;font-size:12px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.req-min-list-item span{justify-self:start;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:900;margin-top:3px}.req-min-open{max-width:1240px;margin:0 auto 16px!important}.req-min-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.req-min-detail-grid div{background:#f8fbff;border:1px solid #dbeafe;border-radius:14px;padding:12px}.req-min-detail-grid span{display:block;color:#64748b;font-size:12px;font-weight:800}.req-min-detail-grid b{display:block;color:#082f68;font-size:14px;margin-top:4px;font-weight:900}.req-min-desc{background:#f8fbff;border:1px solid #dbeafe;border-radius:14px;padding:13px 14px;color:#334155;line-height:1.55;font-weight:650;margin:12px 0}.req-min-status{display:grid;grid-template-columns:220px 220px auto;gap:10px;border-top:1px solid #e5edf7;margin-top:14px;padding-top:14px}.req-min-status select,.req-min-status input{height:43px!important}.req-min-bottom{max-width:1240px;margin:0 auto 18px;display:grid;grid-template-columns:1fr;gap:14px}.req-min-detail-card{padding:0!important;overflow:hidden}.req-min-detail-card summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:16px 18px;color:#082f68;font-size:18px;font-weight:900;background:#fff;border-bottom:1px solid #e5edf7}.req-min-detail-card summary span{background:#eaf3ff;border:1px solid #bfdbfe;color:#0755b8;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:900}.req-min-files{padding:16px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))!important}.req-min-chat-box{min-height:260px;max-height:430px;overflow:auto;background:#f8fbff;border:1px solid #dbeafe;border-radius:18px;margin:16px;padding:16px}.req-min-chat-form{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:start;border-top:1px solid #e5edf7;padding:14px 16px}.req-min-chat-form textarea{min-height:52px!important;border-radius:14px!important;border-color:#cfe0f7!important}.req-min-chat-form .file-preview-list{grid-column:1/-1}.req-min-chat-form .file-pill{height:42px;display:inline-flex;align-items:center}.main:has(.req-min-hero) .topbar{max-width:1240px;margin-left:auto;margin-right:auto}.main:has(.req-min-hero){padding-left:20px!important;padding-right:20px!important}.sidebar .menu a{font-size:15.8px!important;font-weight:500!important}.sidebar .menu-title{font-size:12px!important;font-weight:500!important}
@media(max-width:1160px){.req-min-wrap{grid-template-columns:1fr}.req-min-list-card{position:static}.req-min-list{max-height:320px}.req-min-detail-grid{grid-template-columns:1fr 1fr}.req-more-grid{grid-template-columns:1fr}}
@media(max-width:720px){.req-min-hero,.req-min-card-title{flex-direction:column;align-items:flex-start}.req-min-actions{width:100%;display:grid;grid-template-columns:1fr}.req-min-form,.req-min-detail-grid,.req-min-status,.req-min-chat-form{grid-template-columns:1fr}.req-min-submit{width:100%;min-width:0}.req-min-flow span{width:100%;text-align:center}.main:has(.req-min-hero){padding-left:12px!important;padding-right:12px!important}.req-min-emp-grid{max-height:none}}

/* Task Assignment - clean simple UI */
.task-simple-notice{max-width:1180px;margin-left:auto;margin-right:auto}.task-simple-hero{max-width:1180px;margin:0 auto 14px!important;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px!important;background:#fff!important;border:1px solid #dbeafe!important;box-shadow:0 8px 22px rgba(15,23,42,.05)!important}.task-simple-hero h2{font-size:30px;line-height:1.1;margin:2px 0 6px;color:#082f68;font-weight:900}.task-simple-hero p:not(.eyebrow){font-size:15px;color:#64748b;margin:0;max-width:650px;font-weight:650}.task-simple-actions{display:flex;gap:10px;flex-wrap:wrap}.task-flow-clean{max-width:1180px;margin:0 auto 14px;display:flex;gap:10px;flex-wrap:wrap}.task-flow-clean span{background:#fff;border:1px solid #dbeafe;border-radius:999px;color:#42607f;padding:9px 14px;font-size:13px;font-weight:850}.task-flow-clean span.active{background:#0b63c7;color:#fff;border-color:#0b63c7}.task-simple-wrap{max-width:1180px;margin:0 auto 18px;display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:16px;align-items:start}.task-create-simple,.task-list-simple-card{padding:20px!important;background:#fff!important;border-color:#dbeafe!important;box-shadow:0 8px 22px rgba(15,23,42,.05)!important}.task-card-title{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.task-card-title h2{margin:0 0 5px;color:#082f68;font-size:22px;font-weight:900}.task-card-title p{margin:0;color:#64748b;font-size:13px;font-weight:650}.task-card-title span{background:#eaf3ff;border:1px solid #bfdbfe;color:#0755b8;border-radius:999px;padding:6px 10px;font-weight:900;font-size:12px;white-space:nowrap}.task-card-title.compact h2{font-size:20px}.task-simple-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.task-simple-form .wide,.task-simple-form .full{grid-column:1/-1}.task-simple-form label{font-size:13px!important;color:#0f356d!important;font-weight:500!important}.task-simple-form .input,.task-simple-form select,.task-simple-form textarea{min-height:46px!important;border:1px solid #cfe0f7!important;border-radius:14px!important;background:#fbfdff!important;font-size:14px!important;font-weight:650!important}.task-simple-form textarea{min-height:95px!important;resize:vertical}.task-simple-form small{font-size:12px;color:#64748b;font-weight:650}.task-submit-btn{grid-column:1/-1;width:240px;height:46px}.task-list-simple-card{position:sticky;top:16px}.task-mini-list{display:grid;gap:10px;max-height:690px;overflow:auto;padding-right:2px}.task-mini-card{background:#f8fbff;border:1px solid #dbeafe;border-radius:16px;padding:13px;transition:.18s}.task-mini-card:hover{border-color:#93c5fd;background:#f2f8ff;transform:translateY(-1px)}.task-mini-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.task-mini-top b{color:#082f68;font-size:14.5px;font-weight:900;line-height:1.25}.task-mini-card p{margin:7px 0 10px;color:#475569;font-size:13px;line-height:1.45;font-weight:650}.task-mini-meta{display:grid;gap:5px;color:#64748b;font-size:12px;font-weight:750}.task-mini-status{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.empty-state-simple{background:#f8fbff;border:1px dashed #bfdbfe;border-radius:16px;padding:18px;text-align:center;color:#64748b;font-weight:800}.main:has(.task-simple-hero) .topbar{max-width:1180px;margin-left:auto;margin-right:auto}.main:has(.task-simple-hero){padding-left:20px!important;padding-right:20px!important}.sidebar .menu a{font-size:15.8px!important;font-weight:500!important}.sidebar .menu-title{font-size:12px!important;font-weight:500!important}
@media(max-width:1100px){.task-simple-wrap{grid-template-columns:1fr}.task-list-simple-card{position:static}.task-mini-list{max-height:420px}}
@media(max-width:720px){.task-simple-hero,.task-card-title{flex-direction:column;align-items:flex-start}.task-simple-actions{width:100%;display:grid;grid-template-columns:1fr}.task-flow-clean span{width:100%;text-align:center}.task-simple-form{grid-template-columns:1fr}.task-submit-btn{width:100%}.main:has(.task-simple-hero){padding-left:12px!important;padding-right:12px!important}}

/* Development Tracking - clean simple UI */
.dev-simple-notice{max-width:1180px;margin-left:auto;margin-right:auto}.dev-simple-hero{max-width:1180px;margin:0 auto 14px!important;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px!important;background:#fff!important;border:1px solid #dbeafe!important;box-shadow:0 8px 22px rgba(15,23,42,.05)!important}.dev-simple-hero h2{font-size:30px;line-height:1.1;margin:2px 0 6px;color:#082f68;font-weight:900}.dev-simple-hero p:not(.eyebrow){font-size:15px;color:#64748b;margin:0;max-width:650px;font-weight:650}.dev-simple-actions{display:flex;gap:10px;flex-wrap:wrap}.dev-flow-clean{max-width:1180px;margin:0 auto 14px;display:flex;gap:10px;flex-wrap:wrap}.dev-flow-clean span{background:#fff;border:1px solid #dbeafe;border-radius:999px;color:#42607f;padding:9px 14px;font-size:13px;font-weight:850}.dev-flow-clean span.active{background:#0b63c7;color:#fff;border-color:#0b63c7}.dev-simple-wrap{max-width:1180px;margin:0 auto 18px;display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;align-items:start}.dev-side-card,.dev-list-head,.dev-task-card{background:#fff!important;border-color:#dbeafe!important;box-shadow:0 8px 22px rgba(15,23,42,.05)!important}.dev-side-card{position:sticky;top:16px;padding:18px!important}.dev-side-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.dev-side-title h2{margin:0;color:#082f68;font-size:20px;font-weight:900}.dev-side-title span,.dev-list-head span{background:#eaf3ff;border:1px solid #bfdbfe;color:#0755b8;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900;white-space:nowrap}.dev-stats-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.dev-stats-mini div{background:#f8fbff;border:1px solid #dbeafe;border-radius:15px;padding:12px 8px;text-align:center}.dev-stats-mini b{display:block;color:#082f68;font-size:24px;font-weight:900;line-height:1}.dev-stats-mini span{display:block;color:#64748b;font-size:11px;font-weight:800;margin-top:5px}.dev-filter-simple{display:grid;gap:10px}.dev-filter-simple label{color:#0f356d;font-size:12px;font-weight:900}.dev-filter-simple .input,.dev-filter-simple select{height:43px!important;border:1px solid #cfe0f7!important;border-radius:13px!important;background:#fbfdff!important;font-size:13px!important;font-weight:650!important}.dev-task-list{display:grid;gap:12px}.dev-list-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 20px!important;margin-bottom:0!important}.dev-list-head h2{margin:0 0 5px;color:#082f68;font-size:22px;font-weight:900}.dev-list-head p{margin:0;color:#64748b;font-size:13px;font-weight:650}.dev-task-card{padding:16px!important;margin-bottom:0!important}.dev-task-main{display:grid;grid-template-columns:46px 1fr;gap:13px;align-items:start}.dev-avatar{width:46px;height:46px;border-radius:15px;background:#0b63c7;color:#fff;display:grid;place-items:center;font-weight:900;font-size:18px;box-shadow:0 8px 16px rgba(11,99,199,.16)}.dev-task-info{min-width:0}.dev-task-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.dev-task-top h3{margin:0;color:#082f68;font-size:18px;font-weight:900;line-height:1.25}.dev-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.dev-task-info p{margin:7px 0 10px;color:#475569;font-size:13.5px;line-height:1.5;font-weight:650}.dev-meta-row{display:flex;gap:8px;flex-wrap:wrap}.dev-meta-row span{background:#f8fbff;border:1px solid #e2eaf5;border-radius:999px;padding:6px 9px;color:#475569;font-size:12px;font-weight:800}.dev-update-box{margin-top:14px;padding-top:14px;border-top:1px solid #e5edf7;display:grid;grid-template-columns:1fr 1fr;gap:12px}.dev-update-box .wide{grid-column:1/-1}.dev-update-box label{font-size:12px!important;color:#0f356d!important;font-weight:500!important}.dev-update-box .input,.dev-update-box select{height:43px!important;border:1px solid #cfe0f7!important;border-radius:13px!important;background:#fbfdff!important;font-size:13px!important;font-weight:650!important}.dev-card-actions{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}.dev-card-actions .btn{min-width:132px}.main:has(.dev-simple-hero) .topbar{max-width:1180px;margin-left:auto;margin-right:auto}.main:has(.dev-simple-hero){padding-left:20px!important;padding-right:20px!important}.sidebar .menu a{font-size:15.8px!important;font-weight:500!important}.sidebar .menu-title{font-size:12px!important;font-weight:500!important}
@media(max-width:1100px){.dev-simple-wrap{grid-template-columns:1fr}.dev-side-card{position:static}.dev-stats-mini{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.dev-simple-hero,.dev-list-head,.dev-task-top{flex-direction:column;align-items:flex-start}.dev-simple-actions{width:100%;display:grid;grid-template-columns:1fr}.dev-flow-clean span{width:100%;text-align:center}.dev-task-main{grid-template-columns:1fr}.dev-update-box{grid-template-columns:1fr}.dev-card-actions .btn{width:100%}.main:has(.dev-simple-hero){padding-left:12px!important;padding-right:12px!important}}

/* Create Employee - clean simple UI */
.emp-simple-notice{max-width:1180px;margin-left:auto;margin-right:auto}.emp-login-card{max-width:1180px;margin:0 auto 14px;background:#ecfdf5;border:1px solid #86efac;border-radius:22px;padding:24px;display:grid;grid-template-columns:minmax(260px,1.05fr) minmax(0,2.4fr) minmax(260px,1fr);gap:18px;align-items:stretch;box-shadow:0 8px 22px rgba(15,23,42,.05)}.emp-login-intro{padding:8px 6px 8px 0;align-self:center}.emp-login-card h3{margin:3px 0 8px;color:#065f46;font-size:22px;font-weight:900;line-height:1.2}.emp-login-card p{margin:0;color:#047857;font-weight:700;font-size:14px;line-height:1.55}.emp-login-grid{display:grid;grid-template-columns:minmax(140px,.8fr) minmax(250px,1.55fr) minmax(150px,.85fr);gap:12px;min-width:0;align-content:start}.emp-login-item{min-width:0;background:rgba(255,255,255,.72);border:1px solid #86efac;border-radius:17px;padding:15px 16px;color:#0f356d}.emp-login-item b{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.09em;color:#059669;margin-bottom:7px}.emp-login-item span{display:block;font-size:17px;font-weight:850;line-height:1.4;overflow-wrap:anywhere}.emp-login-status{grid-column:1/-1}.emp-login-message{display:flex;align-items:center;min-width:0;background:rgba(255,255,255,.62);border:1px solid #86efac;border-radius:17px;padding:18px 20px;color:#047857;font-size:15px;font-weight:750;line-height:1.55;overflow-wrap:anywhere}.emp-login-message.error{background:#fff1f2;border-color:#fda4af;color:#b91c1c}.emp-login-message b{margin-right:5px}.emp-simple-hero{max-width:1180px;margin:0 auto 14px!important;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px!important;background:#fff!important;border:1px solid #dbeafe!important;box-shadow:0 8px 22px rgba(15,23,42,.05)!important}.emp-simple-hero h2{font-size:30px;line-height:1.1;margin:2px 0 6px;color:#082f68;font-weight:900}.emp-simple-hero p:not(.eyebrow){font-size:15px;color:#64748b;margin:0;max-width:650px;font-weight:650}.emp-hero-actions{display:flex;gap:10px;flex-wrap:wrap}.emp-simple-shell{max-width:1180px;margin:0 auto 18px;display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;align-items:start}.emp-side-card,.emp-create-card,.emp-list-simple{background:#fff!important;border-color:#dbeafe!important;box-shadow:0 8px 22px rgba(15,23,42,.05)!important}.emp-side-card{position:sticky;top:16px;padding:18px!important}.emp-side-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.emp-side-title h2{margin:0;color:#082f68;font-size:20px;font-weight:900}.emp-side-title span,.emp-card-title>span,.emp-section-head>span{background:#eaf3ff;border:1px solid #bfdbfe;color:#0755b8;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900;white-space:nowrap}.emp-mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.emp-mini-stats div{background:#f8fbff;border:1px solid #dbeafe;border-radius:15px;padding:12px 8px;text-align:center}.emp-mini-stats b{display:block;color:#082f68;font-size:24px;font-weight:900;line-height:1}.emp-mini-stats span{display:block;color:#64748b;font-size:11px;font-weight:800;margin-top:5px}.emp-label{display:block;color:#0f356d;font-size:12px;font-weight:900;margin-bottom:7px}.emp-search{height:43px!important;border-radius:13px!important;background:#fbfdff!important}.emp-help-box{margin-top:14px;background:#f8fbff;border:1px solid #dbeafe;border-radius:16px;padding:13px}.emp-help-box b{color:#082f68;font-weight:900}.emp-help-box p{margin:6px 0 0;color:#64748b;font-size:13px;line-height:1.45;font-weight:650}.emp-main-area{display:grid;gap:16px}.emp-create-card,.emp-list-simple{padding:20px!important}.emp-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.emp-card-title h2{margin:0 0 5px;color:#082f68;font-size:22px;font-weight:900}.emp-card-title p{margin:0;color:#64748b;font-size:13px;font-weight:650}.emp-card-title.compact h2{font-size:20px}.emp-card-title.compact .input{max-width:260px;height:42px!important}.emp-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.emp-form-grid.two{grid-template-columns:1fr}.emp-form-grid .field-full,.emp-doc-grid .field-full{grid-column:1/-1}.emp-create-card label,.emp-create-card .field label{font-size:12.5px!important;color:#0f356d!important;font-weight:500!important}.emp-create-card .input,.emp-create-card select,.emp-create-card textarea{min-height:44px!important;border:1px solid #cfe0f7!important;border-radius:13px!important;background:#fbfdff!important;font-size:13.5px!important;font-weight:650!important}.emp-create-card textarea{min-height:82px!important;resize:vertical}.emp-create-card small{color:#64748b;font-weight:650;font-size:12px}.emp-section-box{margin-top:18px;padding:16px;border:1px solid #e2eaf5;border-radius:18px;background:#fbfdff}.emp-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.emp-section-head h3{margin:0;color:#082f68;font-size:18px;font-weight:900}.emp-map-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center}.emp-doc-main{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.emp-upload-tile{display:block;border:1px dashed #bfdbfe;background:#fff;border-radius:16px;padding:14px;cursor:pointer;min-height:96px;transition:.18s}.emp-upload-tile:hover{border-color:#0b63c7;background:#f8fbff;transform:translateY(-1px)}.emp-upload-tile b{display:block;color:#082f68;font-size:14px;font-weight:900}.emp-upload-tile small{display:block;margin:4px 0 10px}.emp-upload-tile input{width:100%;font-size:11px}.emp-more-docs{margin-top:12px}.emp-more-docs summary{cursor:pointer;background:#eef6ff;border:1px solid #dbeafe;border-radius:14px;padding:12px 14px;color:#0755b8;font-weight:900}.emp-doc-grid{margin-top:12px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.emp-doc-row{display:flex;flex-direction:column;gap:7px;background:#fff;border:1px solid #e2eaf5;border-radius:14px;padding:10px}.emp-doc-row span{font-weight:850;color:#0f356d;font-size:12.5px}.emp-extra-docs{background:#fff;border:1px solid #e2eaf5;border-radius:14px;padding:12px}.emp-login-check{margin-top:14px;display:flex;gap:8px;align-items:flex-start;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:14px;padding:12px 14px;color:#065f46!important;font-size:13px!important;line-height:1.45}.emp-action-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.emp-action-row .btn{min-width:160px}.emp-card-list{display:grid;gap:9px;max-height:560px;overflow:auto;padding-right:3px}.emp-list-row{display:grid;grid-template-columns:44px minmax(0,1fr) auto auto;gap:12px;align-items:center;background:#f8fbff;border:1px solid #dbeafe;border-radius:16px;padding:12px;transition:.18s}.emp-list-row:hover{background:#f2f8ff;border-color:#93c5fd;transform:translateY(-1px)}.emp-avatar{width:44px;height:44px;border-radius:14px;background:#0b63c7;color:#fff;display:grid;place-items:center;font-size:17px;font-weight:900}.emp-row-main b{display:block;color:#082f68;font-size:14.5px;font-weight:900}.emp-row-main span,.emp-row-main small{display:block;color:#64748b;font-size:12.5px;font-weight:700;margin-top:2px}.emp-row-tags{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.emp-row-actions{display:flex;gap:7px;align-items:center}.main:has(.emp-simple-hero) .topbar{max-width:1180px;margin-left:auto;margin-right:auto}.main:has(.emp-simple-hero){padding-left:20px!important;padding-right:20px!important}.sidebar .menu a{font-size:15.8px!important;font-weight:500!important}.sidebar .menu-title{font-size:12px!important;font-weight:500!important}
@media(max-width:1180px){.emp-simple-shell{grid-template-columns:1fr}.emp-side-card{position:static}.emp-mini-stats{max-width:440px}.emp-login-card{grid-template-columns:1fr 1.8fr}.emp-login-message{grid-column:1/-1}.emp-login-grid{min-width:0;width:100%}}
@media(max-width:900px){.emp-form-grid{grid-template-columns:1fr 1fr}.emp-doc-main,.emp-doc-grid{grid-template-columns:1fr 1fr}.emp-list-row{grid-template-columns:44px 1fr}.emp-row-tags,.emp-row-actions{grid-column:2}.emp-row-tags{justify-content:flex-start}.emp-card-title.compact{flex-direction:column}.emp-card-title.compact .input{max-width:100%;width:100%}.emp-login-card{grid-template-columns:1fr}.emp-login-intro{padding-right:0}.emp-login-grid{grid-template-columns:1fr 1fr}.emp-login-email,.emp-login-status{grid-column:1/-1}.emp-login-message{grid-column:auto}}
@media(max-width:640px){.emp-simple-hero,.emp-card-title,.emp-section-head{flex-direction:column;align-items:flex-start}.emp-hero-actions{width:100%;display:grid;grid-template-columns:1fr}.emp-form-grid,.emp-doc-main,.emp-doc-grid{grid-template-columns:1fr}.emp-map-row{grid-template-columns:1fr}.emp-action-row .btn{width:100%}.main:has(.emp-simple-hero){padding-left:12px!important;padding-right:12px!important}.emp-create-card,.emp-list-simple{padding:16px!important}}

/* Phase 172: automatic employee offer-letter workflow. */
.emp-offer-auto-note{margin-top:12px;display:flex;gap:12px;align-items:flex-start;padding:13px 14px;border:1px solid #b7d5fb;border-radius:14px;background:#f3f8ff;color:#0b3d78}.emp-offer-auto-note>span{width:32px;height:32px;display:grid;place-items:center;flex:0 0 32px;border-radius:10px;background:#1265d6;color:#fff;font-size:15px}.emp-offer-auto-note b,.emp-offer-auto-note small{display:block}.emp-offer-auto-note b{font-size:13px;font-weight:900}.emp-offer-auto-note small{margin-top:3px;color:#55708e;font-size:12px;line-height:1.5;font-weight:650}.offer-mail-state{display:inline-flex;align-items:center;min-height:25px;padding:4px 9px;border:1px solid #bfdbfe;border-radius:999px;background:#eff6ff;color:#1d4f91;font-size:10.5px;font-weight:850;white-space:nowrap}.offer-mail-state.sent{border-color:#a7f3d0;background:#ecfdf5;color:#047857}.offer-email-inline{display:inline-flex;margin:0}.offer-letter-btn{display:inline-flex!important;align-items:center;gap:5px!important;min-height:34px!important;padding:7px 10px!important;border-color:#aacaf2!important;color:#0c4f9b!important;background:#f5f9ff!important;white-space:nowrap}.offer-letter-btn:hover{border-color:#1265d6!important;background:#eaf3ff!important}.offer-email-btn{width:34px!important;min-width:34px!important;height:34px!important;padding:0!important;display:grid!important;place-items:center!important;border-radius:10px!important}.offer-letter-dialog{width:min(1120px,calc(100vw - 32px));max-width:none;height:min(880px,calc(100vh - 32px));padding:0;border:1px solid #cbdced;border-radius:20px;background:#fff;box-shadow:0 28px 80px rgba(8,47,104,.28);overflow:hidden}.offer-letter-dialog::backdrop{background:rgba(7,24,48,.62);backdrop-filter:blur(4px)}.offer-dialog-head{height:74px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid #dce7f4;background:#fff}.offer-dialog-head .eyebrow{margin:0 0 2px}.offer-dialog-head h2{margin:0;color:#082f68;font-size:20px;font-weight:900}.offer-dialog-close{width:38px;height:38px;border:1px solid #d8e4f1;border-radius:12px;background:#f7faff;color:#315270;font-size:25px;line-height:1;cursor:pointer}.offer-dialog-close:hover{background:#eef5ff;color:#0b63c7}.offer-dialog-body{height:calc(100% - 142px);background:#edf3fa}.offer-dialog-body iframe{display:block;width:100%;height:100%;border:0;background:#edf3fa}.offer-dialog-actions{height:68px;display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:11px 18px;border-top:1px solid #dce7f4;background:#fff}.offer-dialog-email-form{margin:0;display:inline-flex}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:900px){.emp-row-actions{flex-wrap:wrap}.offer-letter-dialog{width:calc(100vw - 18px);height:calc(100vh - 18px);border-radius:15px}.offer-dialog-actions{height:auto;min-height:68px;flex-wrap:wrap}.offer-dialog-body{height:calc(100% - 160px)}}
@media(max-width:560px){.offer-dialog-head{height:68px;padding:11px 13px}.offer-dialog-head h2{font-size:16px}.offer-dialog-actions{display:grid;grid-template-columns:1fr 1fr;padding:10px 12px}.offer-dialog-actions .btn{width:100%;text-align:center}.offer-dialog-email-form{grid-column:1/-1}.offer-dialog-email-form .btn{width:100%}.offer-dialog-body{height:calc(100% - 184px)}}

/* Employee Profile - clean simple UI */
.emp-profile-simple{width:100%;max-width:1600px;margin:0 auto 18px}.profile-notice{width:100%;max-width:1600px;margin-left:auto;margin-right:auto}.eps-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px!important}.eps-header h2{margin:0 0 5px;color:#082f68;font-size:30px;font-weight:900;line-height:1.1}.eps-header p:not(.eyebrow){margin:0;color:#64748b;font-size:14px;font-weight:650}.eps-selector{padding:13px 16px!important}.eps-select-form{display:grid;grid-template-columns:145px 1fr;gap:12px;align-items:center}.eps-select-form label,.eps-label{font-size:13px;font-weight:900;color:#0f356d}.eps-select-form select{height:44px;background:#fbfdff!important;border-color:#cfe0f7!important;font-weight:750}.eps-hero{display:grid;grid-template-columns:76px 1fr auto;gap:14px;align-items:center;padding:16px 18px!important}.eps-avatar{width:76px;height:76px;border-radius:22px;background:#eaf3ff;border:1px solid #bfdbfe;color:#0755b8;display:grid;place-items:center;font-size:34px;font-weight:950;overflow:hidden}.eps-avatar img{width:100%;height:100%;object-fit:cover}.eps-main small{display:block;text-transform:uppercase;letter-spacing:.14em;color:#0755b8;font-size:10px;font-weight:950;margin-bottom:4px}.eps-main h2{font-size:27px;margin:0 0 4px;color:#082f68;font-weight:950}.eps-main p{margin:0;color:#64748b;font-weight:750}.eps-chips{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.eps-chips>span,.eps-card-title>span{background:#eef6ff;border:1px solid #c7ddff;color:#0755b8;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900;white-space:nowrap}.eps-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(350px,.72fr);gap:12px;align-items:start}.eps-right-stack{display:grid;gap:12px}.eps-card{padding:16px!important;border-color:#dbeafe!important;box-shadow:0 8px 22px rgba(15,23,42,.055)!important}.eps-card-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.eps-card-title h3{margin:0;color:#082f68;font-size:20px;font-weight:950}.eps-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.eps-info-grid div,.eps-mini-list p{background:#f8fbff;border:1px solid #e2eaf5;border-radius:14px;padding:10px 12px;margin:0}.eps-info-grid b,.eps-mini-list b,.eps-address b{display:block;color:#64748b;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.eps-info-grid span,.eps-mini-list span{display:block;color:#102033;font-size:14px;font-weight:750;word-break:break-word}.eps-address{margin-top:10px;background:#fbfdff;border:1px solid #e2eaf5;border-radius:15px;padding:13px}.eps-address p{margin:0;color:#102033;font-size:14px;line-height:1.5;font-weight:650}.eps-edit-box{margin-top:14px}.eps-edit-box summary{cursor:pointer;background:#eef6ff;border:1px solid #dbeafe;border-radius:14px;padding:12px 14px;color:#0755b8;font-weight:900}.eps-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px;background:#fbfdff;border:1px solid #e2eaf5;border-radius:18px;padding:16px}.eps-edit-grid label{font-size:12px!important;color:#0f356d!important}.eps-edit-grid .input,.eps-edit-grid select,.eps-edit-grid textarea{min-height:42px!important;border-color:#cfe0f7!important;background:#fff!important;font-size:13.5px!important}.eps-edit-grid .btn{max-width:180px}.eps-mini-list{display:grid;gap:7px}.eps-safe-note{margin-top:12px;background:#eef6ff;border:1px solid #dbeafe;border-radius:15px;padding:13px;color:#0f356d;font-weight:750;font-size:13px;line-height:1.45}.eps-button-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.eps-button-row .btn{padding:10px 13px}.eps-doc-form{display:grid;grid-template-columns:210px 1fr 1fr auto;gap:8px;align-items:end;margin-bottom:12px}.eps-doc-form select,.eps-doc-form .input{height:44px!important;background:#fbfdff!important;border-color:#cfe0f7!important}.eps-doc-list{display:grid;gap:9px}.eps-doc-item{display:grid;grid-template-columns:44px minmax(0,1fr) auto auto;gap:12px;align-items:center;background:#f8fbff;border:1px solid #dbeafe;border-radius:16px;padding:12px}.eps-doc-icon{width:44px;height:44px;border-radius:14px;background:#eaf3ff;color:#0755b8;display:grid;place-items:center;font-size:20px}.eps-doc-item b{display:block;color:#082f68;font-size:14.5px;font-weight:900}.eps-doc-item span{display:block;color:#64748b;font-size:12.5px;font-weight:700;margin-top:3px}.eps-doc-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.eps-empty{background:#f8fbff;border:1px dashed #bfdbfe;border-radius:16px;padding:18px;color:#64748b;font-weight:750;text-align:center}.main:has(.emp-profile-simple) .topbar{width:100%;max-width:1600px;margin-left:auto;margin-right:auto}.main:has(.emp-profile-simple){padding-left:12px!important;padding-right:12px!important}.sidebar .menu a{font-size:15.8px!important;font-weight:500!important}.sidebar .menu-title{font-size:12px!important;font-weight:500!important}
@media(max-width:1100px){.eps-grid{grid-template-columns:1fr}.eps-hero{grid-template-columns:82px 1fr}.eps-chips{grid-column:1/-1;justify-content:flex-start}.eps-doc-form{grid-template-columns:1fr 1fr}.eps-doc-form .btn{grid-column:1/-1}.eps-doc-item{grid-template-columns:44px 1fr}.eps-doc-item>div:nth-child(3),.eps-doc-actions{grid-column:2;justify-content:flex-start}.eps-edit-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.eps-header{flex-direction:column;align-items:flex-start}.eps-select-form{grid-template-columns:1fr}.eps-hero{grid-template-columns:1fr;text-align:left}.eps-avatar{width:74px;height:74px}.eps-info-grid,.eps-edit-grid,.eps-doc-form{grid-template-columns:1fr}.eps-button-row .btn,.eps-doc-actions .btn{width:100%;text-align:center}.main:has(.emp-profile-simple){padding-left:12px!important;padding-right:12px!important}}

/* Global Font Weight 500 Update - applied to full CRM */
html,
body,
body *,
input,
select,
textarea,
button,
a,
label,
th,
td,
p,
span,
small,
b,
strong,
h1,
h2,
h3,
h4,
h5,
h6,
.btn,
.badge,
.role,
.soft-badge,
.menu a,
.menu-title,
.section-title,
.sub-title,
.eyebrow,
.user-pill {
  font-weight: 500 !important;
}

::placeholder {
  font-weight: 500 !important;
}


/* =========================================================
   SUPER SIDEBAR UI - clean dark corporate style
   Icons are SVG and forced white for admin + employee panels
   ========================================================= */
.sidebar.crm-pro-sidebar{
  width: 318px !important;
  background:
    radial-gradient(circle at 18% 0%, rgba(29, 122, 255, .36) 0, rgba(29,122,255,0) 28%),
    linear-gradient(180deg, #061a3f 0%, #073a83 48%, #075bb1 100%) !important;
  padding: 22px 16px 20px !important;
  color: #fff !important;
  border-right: 1px solid rgba(255,255,255,.10) !important;
  box-shadow: 16px 0 40px rgba(3, 20, 52, .22) !important;
}
.sidebar.crm-pro-sidebar.emp-sidebar{
  background:
    radial-gradient(circle at 18% 0%, rgba(25, 211, 125, .26) 0, rgba(25,211,125,0) 30%),
    linear-gradient(180deg, #042616 0%, #075830 50%, #0a854a 100%) !important;
}
.sidebar.crm-pro-sidebar .brand{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  padding: 14px 12px 18px !important;
  margin-bottom: 12px !important;
  border-bottom: 1px solid rgba(255,255,255,.12) !important;
}
.sidebar.crm-pro-sidebar .brand-logo{
  width:54px !important;
  height:54px !important;
  border-radius:18px !important;
  color:#0b63c7 !important;
  background: #ffffff !important;
  font-size:17px !important;
  font-weight:900 !important;
  box-shadow: 0 14px 30px rgba(0,0,0,.18) !important;
}
.sidebar.crm-pro-sidebar.emp-sidebar .brand-logo{ color:#0b7e45 !important; }
.sidebar.crm-pro-sidebar .brand h2{
  margin:0 !important;
  color:#fff !important;
  font-size:22px !important;
  line-height:1.12 !important;
  letter-spacing:-.02em !important;
  font-weight:500 !important;
}
.sidebar.crm-pro-sidebar .brand p{
  margin:5px 0 0 !important;
  color:rgba(255,255,255,.74) !important;
  font-size:12.5px !important;
  font-weight:500 !important;
}
.sidebar.crm-pro-sidebar .menu{
  padding-top: 4px !important;
}
.sidebar.crm-pro-sidebar .menu-title{
  position: relative !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  margin: 20px 10px 10px !important;
  color: rgba(255,255,255,.68) !important;
  font-size: 11px !important;
  line-height: 1 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  font-weight:500 !important;
}
.sidebar.crm-pro-sidebar .menu-title::after{
  content:"";
  height:1px;
  flex:1;
  background:linear-gradient(90deg, rgba(255,255,255,.22), rgba(255,255,255,0));
}
.sidebar.crm-pro-sidebar .menu a{
  position: relative !important;
  display:flex !important;
  align-items:center !important;
  gap: 13px !important;
  min-height: 48px !important;
  padding: 12px 14px !important;
  margin: 5px 0 !important;
  border-radius: 18px !important;
  color: #ffffff !important;
  text-decoration:none !important;
  font-size: 16px !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
  letter-spacing: -.01em !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  transition: background .18s ease, transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}
.sidebar.crm-pro-sidebar .menu a:hover{
  background: rgba(255,255,255,.11) !important;
  border-color: rgba(255,255,255,.14) !important;
  transform: translateX(4px) !important;
  box-shadow: 0 12px 24px rgba(0,0,0,.08) !important;
}
.sidebar.crm-pro-sidebar .menu a.active{
  background: linear-gradient(135deg, rgba(255,255,255,.22), rgba(255,255,255,.10)) !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  box-shadow: inset 4px 0 0 rgba(255,255,255,.75), 0 14px 28px rgba(0,0,0,.12) !important;
  transform: none !important;
}
.sidebar.crm-pro-sidebar .menu a.active::before{
  content:"";
  position:absolute;
  left: 7px;
  top: 50%;
  width: 6px;
  height: 26px;
  border-radius: 999px;
  transform: translateY(-50%);
  background: #fff;
  opacity: .85;
}
.sidebar.crm-pro-sidebar .menu-icon{
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  display:grid !important;
  place-items:center !important;
  border-radius: 13px !important;
  background: rgba(255,255,255,.12) !important;
  color: #ffffff !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08) !important;
}
.sidebar.crm-pro-sidebar .menu a:hover .menu-icon,
.sidebar.crm-pro-sidebar .menu a.active .menu-icon{
  background: rgba(255,255,255,.20) !important;
  color: #ffffff !important;
}
.sidebar.crm-pro-sidebar .menu-icon svg{
  width:20px !important;
  height:20px !important;
  display:block !important;
  stroke: #ffffff !important;
  fill: none !important;
  stroke-width: 2.05 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
.sidebar.crm-pro-sidebar .menu-text{
  color:#ffffff !important;
  font-weight:500 !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.08);
  white-space: normal;
}
.sidebar.crm-pro-sidebar .menu-badge{
  margin-left:auto !important;
  background:#ef4444 !important;
  color:#fff !important;
  min-width:24px !important;
  height:24px !important;
  border-radius:999px !important;
  display:inline-grid !important;
  place-items:center !important;
  font-size:12px !important;
  font-weight:500 !important;
  box-shadow:0 6px 14px rgba(239,68,68,.28) !important;
}
.sidebar.crm-pro-sidebar::-webkit-scrollbar{width:7px}.sidebar.crm-pro-sidebar::-webkit-scrollbar-track{background:rgba(255,255,255,.04)}.sidebar.crm-pro-sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.35);border-radius:999px}
@media(max-width:820px){
  .sidebar.crm-pro-sidebar{width:304px !important; z-index: 40 !important;}
}

@media(max-width:620px){.emp-login-card{padding:16px;gap:12px;border-radius:18px}.emp-login-grid{grid-template-columns:1fr}.emp-login-email,.emp-login-status{grid-column:auto}.emp-login-item,.emp-login-message{padding:14px}.emp-login-card h3{font-size:19px}.emp-login-item span{font-size:15px}}


/* Phase 58: mandatory employee check-in gate */
.employee-gate-menu-note{margin:8px 10px 14px;padding:12px;border:1px solid rgba(255,255,255,.22);border-radius:12px;background:rgba(255,255,255,.09);display:grid;gap:4px;color:#fff}
.employee-gate-menu-note b{font-size:13px;letter-spacing:.04em}
.employee-gate-menu-note span{font-size:11px;line-height:1.45;opacity:.86}
.employee-gate-top-pill{display:inline-flex;align-items:center;gap:7px;padding:10px 13px;border:1px solid #f3c56b;border-radius:999px;background:#fff7e6;color:#8a5800;font-size:12px;font-weight:700;white-space:nowrap}
.attendance-gate-banner{max-width:1220px;margin:0 auto 16px;padding:20px 22px;border:1px solid #b9d5ff;border-radius:18px;background:linear-gradient(135deg,#f7fbff,#eef7ff);display:flex;align-items:center;gap:18px;box-shadow:0 10px 30px rgba(15,70,130,.08)}
.attendance-gate-icon{width:58px;height:58px;flex:0 0 58px;border-radius:16px;display:grid;place-items:center;background:#0f66cf;color:#fff;font-size:25px;box-shadow:0 8px 20px rgba(15,102,207,.24)}
.attendance-gate-copy{min-width:0;flex:1}
.attendance-gate-copy h2{margin:2px 0 6px;color:#063a7a;font-size:22px}
.attendance-gate-copy>p:last-of-type{margin:0;color:#526780;line-height:1.55}
.attendance-gate-steps{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}
.attendance-gate-steps span{padding:7px 10px;border:1px solid #ccdaea;border-radius:999px;background:#fff;color:#6a7d91;font-size:11px;font-weight:700}
.attendance-gate-steps span.active{border-color:#80b6f4;background:#eaf4ff;color:#075ab7}
@media(max-width:700px){.attendance-gate-banner{align-items:flex-start;padding:16px}.attendance-gate-icon{width:46px;height:46px;flex-basis:46px;border-radius:13px;font-size:20px}.attendance-gate-copy h2{font-size:18px}.employee-gate-top-pill{display:none}}

.inline-form{display:inline-flex;margin:0;align-items:center}.inline-form button{margin:0}

/* Phase 73: friendly duplicate employee recovery */
.emp-duplicate-card{
  display:flex;
  align-items:center;
  gap:18px;
  margin:0 0 18px;
  padding:18px 20px;
  border:1px solid #f2c36b;
  background:#fffaf0;
}
.emp-duplicate-icon{
  width:46px;
  height:46px;
  flex:0 0 46px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:#fff0c8;
  color:#9a5b00;
  font-size:24px;
  font-weight:700;
}
.emp-duplicate-main{flex:1;min-width:0}
.emp-duplicate-main h3{margin:2px 0 5px;color:#0f356d}
.emp-duplicate-main p{margin:0;color:#586a84}
.emp-duplicate-status{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}
.emp-duplicate-status span{font-size:13px;color:#52647f}
.emp-duplicate-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.emp-duplicate-actions form{margin:0}
@media (max-width:800px){
  .emp-duplicate-card{align-items:flex-start;flex-wrap:wrap}
  .emp-duplicate-actions{width:100%;justify-content:flex-start}
}

/* Phase 77 - Employee Profile professional redesign */
.profile-v2{width:100%;max-width:1540px;margin:0 auto 28px;display:grid;gap:16px}.main:has(.profile-v2){padding-left:18px!important;padding-right:18px!important}.main:has(.profile-v2) .topbar{width:100%;max-width:1540px;margin-left:auto;margin-right:auto}.profile-notice{max-width:1540px!important}.pv2-intro{padding:26px 28px!important;display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(120deg,#0a4388 0%,#087077 52%,#0c9b58 100%)!important;border:0!important;color:#fff;overflow:hidden;position:relative}.pv2-intro:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-95px;top:-145px;background:rgba(255,255,255,.09)}.pv2-intro-copy,.pv2-actions{position:relative;z-index:1}.pv2-kicker,.pv2-card-head>div>span{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:900}.pv2-intro h2{font-size:34px;line-height:1.05;margin:6px 0 7px;font-weight:900;color:#fff}.pv2-intro p{margin:0;color:rgba(255,255,255,.86);font-size:15px;font-weight:500;max-width:690px}.pv2-actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap}.pv2-actions .btn{min-height:42px;display:inline-flex;align-items:center}.pv2-selector{padding:15px 18px!important}.pv2-selector-form{display:grid;grid-template-columns:240px minmax(0,1fr);gap:20px;align-items:center}.pv2-selector-form label{display:block;color:#0b356a;font-size:14px;font-weight:800;margin-bottom:3px}.pv2-selector-form p{margin:0;color:#718096;font-size:12.5px}.pv2-selector-form select{height:48px!important;background:#fbfdff!important;border-color:#cddcf0!important;font-size:14px!important;font-weight:600}.pv2-hero{padding:22px 24px!important;display:grid;grid-template-columns:minmax(0,1fr) minmax(500px,.82fr);gap:22px;align-items:center;border-color:#cee1f6!important;background:linear-gradient(145deg,#ffffff 0%,#f7fbff 100%)!important}.pv2-identity{display:flex;align-items:center;gap:18px;min-width:0}.pv2-avatar{width:92px;height:92px;border-radius:25px;display:grid;place-items:center;flex:0 0 auto;overflow:hidden;background:linear-gradient(145deg,#0b59b1,#0b9a64);color:#fff;font-size:38px;font-weight:900;box-shadow:0 12px 30px rgba(8,67,136,.2)}.pv2-avatar img{width:100%;height:100%;object-fit:cover}.pv2-name>span{display:block;color:#0c6ac5;font-size:10.5px;font-weight:900;text-transform:uppercase;letter-spacing:.14em}.pv2-name h2{margin:5px 0 5px;color:#082f68;font-size:31px;line-height:1.1;font-weight:900}.pv2-name p{margin:0;color:#5b6b80;font-size:14px;font-weight:600}.pv2-name p i{display:inline-block;width:4px;height:4px;border-radius:50%;background:#8ba1b9;margin:0 8px 3px}.pv2-badges{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.pv2-badges>b{display:inline-flex;align-items:center;background:#edf6ff;border:1px solid #c9def7;border-radius:999px;padding:6px 10px;color:#0b5bab;font-size:11.5px;font-weight:700}.pv2-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pv2-stats>div{background:#fff;border:1px solid #dbe7f4;border-radius:16px;padding:14px 16px;min-width:0;box-shadow:0 6px 18px rgba(15,45,85,.04)}.pv2-stats span{display:block;color:#718096;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.pv2-stats strong{display:block;color:#092f66;font-size:16px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pv2-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(350px,.72fr);gap:16px;align-items:start}.pv2-main-column,.pv2-side-column{display:grid;gap:16px}.pv2-card,.pv2-documents{padding:22px!important;border-color:#d8e4f2!important;box-shadow:0 12px 32px rgba(15,45,85,.055)!important}.pv2-card-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:17px}.pv2-card-head.compact{margin-bottom:14px}.pv2-card-head>div>span{color:#0b67bd;margin-bottom:4px}.pv2-card-head h3{margin:0;color:#082f68;font-size:21px;font-weight:900}.pv2-pill{display:inline-flex;align-items:center;background:#eef6ff;border:1px solid #c8def7;border-radius:999px;color:#0b5bab;padding:7px 11px;font-size:11px;font-weight:700;white-space:nowrap}.pv2-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.pv2-info-item{min-height:72px;background:#f8fbff;border:1px solid #e0e9f4;border-radius:15px;padding:12px 13px}.pv2-info-item span,.pv2-side-list span,.pv2-address>span{display:block;color:#758399;font-size:10.5px;text-transform:uppercase;letter-spacing:.055em;font-weight:700;margin-bottom:6px}.pv2-info-item strong,.pv2-side-list strong{display:block;color:#10243d;font-size:13.5px;line-height:1.35;font-weight:700;word-break:break-word}.pv2-address{margin-top:11px;background:#f8fbff;border:1px solid #e0e9f4;border-radius:15px;padding:14px 15px}.pv2-address p{margin:0;color:#263b55;font-size:13.5px;line-height:1.55;font-weight:500}.pv2-edit-card{padding:0!important;overflow:hidden}.pv2-edit-card>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:19px 22px;background:#f7fbff}.pv2-edit-card>summary::-webkit-details-marker{display:none}.pv2-edit-card>summary span{display:block;color:#0b67bd;font-size:10.5px;font-weight:900;text-transform:uppercase;letter-spacing:.14em}.pv2-edit-card>summary h3{margin:4px 0 0;color:#082f68;font-size:20px;font-weight:900}.pv2-edit-card>summary b{background:#eaf4ff;color:#0b5bab;border:1px solid #c9def7;border-radius:999px;padding:8px 12px;font-size:11.5px}.pv2-edit-card[open]>summary{border-bottom:1px solid #dce8f5}.pv2-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;padding:20px 22px 22px}.pv2-edit-grid label,.pv2-location-form label,.pv2-doc-upload label{font-size:12px!important;font-weight:700!important;color:#153b6d!important}.pv2-edit-grid .input,.pv2-edit-grid select,.pv2-edit-grid textarea,.pv2-location-form .input,.pv2-doc-upload .input,.pv2-doc-upload select{min-height:44px!important;background:#fff!important;border-color:#ccdced!important;font-size:13.5px!important}.pv2-edit-grid textarea{min-height:94px!important}.pv2-form-actions{display:flex;justify-content:flex-end}.pv2-form-actions .btn{min-width:190px}.pv2-side-card{padding:19px!important}.pv2-side-list{display:grid;gap:8px}.pv2-side-list>div{background:#f8fbff;border:1px solid #e0e9f4;border-radius:14px;padding:11px 12px}.pv2-full-btn{width:100%;display:flex!important;justify-content:center;margin-top:12px}.pv2-location-form{display:grid;gap:10px}.pv2-location-actions{display:grid;grid-template-columns:1fr 1fr auto;gap:7px}.pv2-location-actions .btn{padding:9px 10px}.pv2-documents{display:grid;gap:4px}.pv2-doc-upload{display:grid;grid-template-columns:220px minmax(220px,1fr) minmax(260px,1.2fr) auto;gap:10px;align-items:end;background:#f7fbff;border:1px solid #dce8f5;border-radius:17px;padding:14px;margin-bottom:13px}.pv2-doc-upload>div{display:grid;gap:6px}.pv2-doc-upload .btn{height:44px}.pv2-doc-list{display:grid;gap:9px}.pv2-doc-row{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:14px;align-items:center;background:#fff;border:1px solid #dce7f4;border-radius:16px;padding:12px 13px}.pv2-doc-file{display:flex;align-items:center;gap:12px;min-width:0}.pv2-doc-file>span{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:#eaf4ff;color:#0b5bab;font-size:10px;font-weight:900;letter-spacing:.05em}.pv2-doc-file strong{display:block;color:#092f66;font-size:14px;font-weight:800}.pv2-doc-file p{margin:3px 0 0;color:#718096;font-size:12px;font-weight:500}.pv2-doc-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.pv2-empty{padding:24px!important;background:#f8fbff;border:1px dashed #bad3f1!important;border-radius:16px;color:#64748b;text-align:center;font-weight:600}.profile-v2 .btn,.profile-v2 input,.profile-v2 select,.profile-v2 textarea{font-weight:500!important}
@media(max-width:1240px){.pv2-hero{grid-template-columns:1fr}.pv2-layout{grid-template-columns:1fr}.pv2-side-column{grid-template-columns:repeat(3,minmax(0,1fr))}.pv2-location-actions{grid-template-columns:1fr}.pv2-doc-upload{grid-template-columns:1fr 1fr}.pv2-doc-upload .btn{grid-column:1/-1}.pv2-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.pv2-intro{align-items:flex-start;flex-direction:column}.pv2-actions{justify-content:flex-start}.pv2-selector-form{grid-template-columns:1fr}.pv2-side-column{grid-template-columns:1fr}.pv2-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pv2-doc-row{grid-template-columns:1fr}.pv2-doc-status,.pv2-doc-actions{justify-self:start}.pv2-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.main:has(.profile-v2){padding-left:10px!important;padding-right:10px!important}.pv2-intro,.pv2-card,.pv2-documents{padding:17px!important}.pv2-intro h2{font-size:28px}.pv2-actions .btn{width:100%;justify-content:center}.pv2-identity{align-items:flex-start}.pv2-avatar{width:72px;height:72px;border-radius:20px;font-size:30px}.pv2-name h2{font-size:25px}.pv2-name p i{margin-left:4px;margin-right:4px}.pv2-stats,.pv2-info-grid,.pv2-edit-grid,.pv2-doc-upload{grid-template-columns:1fr}.pv2-hero{padding:17px!important}.pv2-doc-actions .btn,.pv2-doc-actions .inline-form{width:100%}.pv2-doc-actions .inline-form .btn{width:100%}.pv2-form-actions .btn{width:100%}.pv2-card-head{align-items:flex-start}.pv2-pill{white-space:normal}}

/* Phase 78 - Employee Profile vertical gap fix */
.pv2-main-column{align-content:start}
.pv2-main-column>.pv2-documents{margin-top:0}

/* Phase 79: passport-size employee profile photo */
.profile-v2 .pv2-avatar{
  width:120px;
  height:150px;
  flex:0 0 120px;
  border-radius:14px;
  border:3px solid #fff;
  background:linear-gradient(145deg,#eaf3ff,#dbeaff);
  color:#0b5bab;
  box-shadow:0 12px 30px rgba(8,67,136,.18);
}
.profile-v2 .pv2-avatar img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center 20%;
}
.profile-v2 .pv2-identity{
  align-items:center;
}
@media(max-width:620px){
  .profile-v2 .pv2-avatar{
    width:96px;
    height:120px;
    flex-basis:96px;
    border-radius:12px;
  }
  .profile-v2 .pv2-identity{
    align-items:flex-start;
  }
}

/* Phase 80: Employee Profile final UI polish */
.profile-v2,
.profile-v2 *{
  font-weight:500!important;
}
.profile-v2 .pv2-kicker,
.profile-v2 .pv2-card-head>div>span,
.profile-v2 .pv2-name>span{
  letter-spacing:.12em;
}
.profile-v2 .pv2-photo-block{
  width:120px;
  flex:0 0 120px;
  display:grid;
  justify-items:center;
  gap:7px;
}
.profile-v2 .pv2-photo-form{
  width:100%;
  margin:0;
}
.profile-v2 .pv2-photo-upload{
  width:100%;
  min-height:32px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:7px 8px;
  border:1px solid #c7ddf6;
  border-radius:10px;
  background:#eef6ff;
  color:#0b5bab;
  cursor:pointer;
  font-size:11px;
  line-height:1.1;
  text-align:center;
  transition:.18s ease;
}
.profile-v2 .pv2-photo-upload:hover{
  background:#dfefff;
  border-color:#9fc6ef;
}
.profile-v2 .pv2-photo-upload input{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
}
.profile-v2 .pv2-photo-block small{
  color:#748399;
  font-size:10px;
  line-height:1.2;
  text-align:center;
}
.profile-v2 .pv2-avatar img{
  object-position:center 18%;
}
.profile-v2 .pv2-hero{
  align-items:stretch;
}
.profile-v2 .pv2-identity,
.profile-v2 .pv2-stats{
  align-self:center;
}
.profile-v2 .pv2-side-card,
.profile-v2 .pv2-details-card,
.profile-v2 .pv2-documents{
  overflow:hidden;
}
.profile-v2 .pv2-documents{
  scroll-margin-top:18px;
}
.profile-v2 .pv2-doc-upload input[type="file"]{
  padding:8px 10px!important;
}
.profile-v2 .pv2-doc-row:hover,
.profile-v2 .pv2-info-item:hover,
.profile-v2 .pv2-side-list>div:hover{
  border-color:#bfd7f1;
  background:#fbfdff;
}
@media(max-width:620px){
  .profile-v2 .pv2-photo-block{
    width:96px;
    flex-basis:96px;
  }
  .profile-v2 .pv2-photo-upload{
    font-size:10px;
    padding:6px;
  }
  .profile-v2 .pv2-identity{
    gap:14px;
  }
}


/* Phase 81: attendance final UI and leave/payroll status integration */
.main:has(.dip-hero){padding-left:22px!important;padding-right:22px!important}
.main:has(.dip-hero) .topbar,.main:has(.dip-hero) > .notice,.main:has(.dip-hero) > .attendance-gate-banner,.main:has(.dip-hero) > .dip-hero,.main:has(.dip-hero) > .dip-profile-strip,.main:has(.dip-hero) > .dip-layout,.main:has(.dip-hero) > .dip-calendar-card,.main:has(.dip-hero) > .card,.main:has(.dip-hero) > .dip-correction-card,.main:has(.dip-hero) > .dip-rules{max-width:1480px;margin-left:auto;margin-right:auto}
.dip-stats.dip-stats-six{grid-template-columns:repeat(3,minmax(0,1fr))}
.dip-summary-alerts{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.dip-summary-alerts span{display:inline-flex;padding:7px 10px;border-radius:999px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-size:12px;font-weight:500}
.dip-legend i.paid-leave{background:#8b5cf6}.dip-legend i.lop-leave{background:#f97316}
.dip-day.paid-leave{background:#f5f3ff;border-color:#c4b5fd}.dip-day.paid-leave span{color:#6d28d9}.dip-day.lop-leave{background:#fff7ed;border-color:#fdba74}.dip-day.lop-leave span{color:#c2410c}.dip-day.pending-leave{background:#fffbeb;border-color:#fde68a}.dip-day.pending-leave span{color:#a16207}
.attendance-day-notice{font-weight:500}.attendance-day-notice.working{border-color:#bfdbfe;background:#eff6ff;color:#1e3a8a}.attendance-day-notice.off{border-color:#bbf7d0;background:#f0fdf4;color:#166534}.attendance-open-notice{border-color:#fed7aa!important;background:#fff7ed!important;color:#9a3412!important}
.dip-correction-card{margin-top:18px;margin-bottom:18px;background:linear-gradient(135deg,#fff,#f8fbff);border:1px solid #dbeafe;border-radius:20px;padding:18px;display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 10px 28px rgba(15,23,42,.06)}.dip-correction-card b{display:block;color:#082f68;font-size:17px;margin-bottom:4px}.dip-correction-card span{color:#64748b;font-size:14px}
.main:has(.dip-hero) .table-wrap table{min-width:1180px}.main:has(.dip-hero) .table-wrap th,.main:has(.dip-hero) .table-wrap td{font-weight:500}
@media(max-width:1050px){.dip-stats.dip-stats-six{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.main:has(.dip-hero){padding-left:12px!important;padding-right:12px!important}.dip-stats.dip-stats-six{grid-template-columns:1fr 1fr}.dip-correction-card{align-items:stretch;flex-direction:column}.dip-correction-card .btn{width:100%;text-align:center}}
@media(max-width:460px){.dip-stats.dip-stats-six{grid-template-columns:1fr}}


/* Phase 82: grouped hover/touch sidebar navigation */
.sidebar.crm-pro-sidebar .menu-group{
  position:relative;
  margin:5px 0;
}
.sidebar.crm-pro-sidebar .menu-group-toggle{
  width:100%;
  position:relative;
  display:flex;
  align-items:center;
  gap:13px;
  min-height:48px;
  padding:12px 14px;
  border:1px solid transparent;
  border-radius:18px;
  color:#fff;
  background:transparent;
  font-family:inherit;
  font-size:16px;
  line-height:1.2;
  font-weight:500;
  text-align:left;
  cursor:pointer;
  transition:background .18s ease,transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.sidebar.crm-pro-sidebar .menu-group-toggle:hover,
.sidebar.crm-pro-sidebar .menu-group.has-active>.menu-group-toggle,
.sidebar.crm-pro-sidebar .menu-group.is-open>.menu-group-toggle{
  background:rgba(255,255,255,.13);
  border-color:rgba(255,255,255,.17);
  box-shadow:0 10px 22px rgba(0,0,0,.08);
}
.sidebar.crm-pro-sidebar .menu-group-toggle:hover{transform:none}
.sidebar.crm-pro-sidebar .menu-group.has-active>.menu-group-toggle{
  background:linear-gradient(135deg,rgba(255,255,255,.20),rgba(255,255,255,.09));
  box-shadow:inset 4px 0 0 rgba(255,255,255,.72),0 12px 24px rgba(0,0,0,.10);
}
.sidebar.crm-pro-sidebar .menu-group-toggle .menu-text{
  flex:1;
  color:#fff!important;
  font-weight:500!important;
}
.sidebar.crm-pro-sidebar .menu-group-chevron{
  width:30px;
  height:30px;
  flex:0 0 30px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.16);
  border-radius:10px;
  background:rgba(255,255,255,.08);
  color:rgba(255,255,255,.92);
  transition:transform .22s ease,background .18s ease,border-color .18s ease;
}
.sidebar.crm-pro-sidebar .menu-group-chevron svg{
  width:17px;
  height:17px;
  display:block;
  fill:none;
  stroke:currentColor;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.sidebar.crm-pro-sidebar .menu-group.is-open>.menu-group-toggle .menu-group-chevron{
  transform:rotate(180deg);
  background:rgba(255,255,255,.18);
}
.sidebar.crm-pro-sidebar .menu-submenu{
  max-height:0;
  opacity:0;
  overflow:hidden;
  margin:0 0 0 24px;
  padding:0 0 0 12px;
  border-left:1px solid rgba(255,255,255,.18);
  transform:translateY(-5px);
  pointer-events:none;
  transition:max-height .28s ease,opacity .18s ease,transform .22s ease,padding .22s ease,margin .22s ease;
}
.sidebar.crm-pro-sidebar .menu-group.is-open>.menu-submenu{
  max-height:620px;
  opacity:1;
  margin-top:5px;
  margin-bottom:8px;
  padding-top:2px;
  padding-bottom:2px;
  transform:none;
  pointer-events:auto;
}
.sidebar.crm-pro-sidebar .menu-submenu a{
  min-height:42px!important;
  padding:9px 10px!important;
  margin:3px 0!important;
  border-radius:14px!important;
  font-size:14px!important;
  gap:10px!important;
}
.sidebar.crm-pro-sidebar .menu-submenu a .menu-icon{
  width:28px!important;
  height:28px!important;
  min-width:28px!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.09)!important;
}
.sidebar.crm-pro-sidebar .menu-submenu a .menu-icon svg{
  width:17px!important;
  height:17px!important;
}
.sidebar.crm-pro-sidebar .menu-submenu a.active{
  background:rgba(255,255,255,.18)!important;
  box-shadow:inset 3px 0 0 rgba(255,255,255,.82),0 8px 18px rgba(0,0,0,.08)!important;
}
.sidebar.crm-pro-sidebar .menu-submenu a.active::before{display:none!important}
.sidebar.crm-pro-sidebar .menu-logout{margin-top:14px!important;border-top:1px solid rgba(255,255,255,.12)!important;border-radius:0 0 16px 16px!important;padding-top:16px!important}
@media(max-width:820px){
  .sidebar.crm-pro-sidebar .menu-group-toggle{min-height:46px;font-size:15px;padding:10px 12px}
  .sidebar.crm-pro-sidebar .menu-submenu{margin-left:20px}
  .sidebar.crm-pro-sidebar .menu-submenu a{font-size:13.5px!important}
}


/* Phase 83: grouped sidebar QA, keyboard access and mobile overlay */
.sidebar.crm-pro-sidebar{
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.30) transparent;
}
.sidebar.crm-pro-sidebar::-webkit-scrollbar{width:7px}
.sidebar.crm-pro-sidebar::-webkit-scrollbar-track{background:transparent}
.sidebar.crm-pro-sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.28);border-radius:999px}
.sidebar.crm-pro-sidebar .menu-group-toggle:focus-visible,
.sidebar.crm-pro-sidebar .menu-submenu a:focus-visible,
.sidebar.crm-pro-sidebar .menu>a:focus-visible{
  outline:3px solid rgba(255,255,255,.72);
  outline-offset:2px;
}
.sidebar-backdrop{
  display:none;
  position:fixed;
  inset:0;
  z-index:19;
  border:0;
  padding:0;
  background:rgba(2,12,27,.56);
  backdrop-filter:blur(2px);
}
body.sidebar-mobile-open{overflow:hidden}
@media(max-width:820px){
  .sidebar.crm-pro-sidebar{z-index:30;box-shadow:18px 0 45px rgba(2,12,27,.28)}
  .sidebar-backdrop.show{display:block}
  .sidebar.crm-pro-sidebar .menu-group-toggle:hover{transform:none}
  .sidebar.crm-pro-sidebar .menu-submenu{max-height:0}
  .sidebar.crm-pro-sidebar .menu-group.is-open>.menu-submenu{max-height:72vh;overflow-y:auto;overscroll-behavior:contain}
}

/* Phase 84: Encrypted Domain Management */
.domain-vault-page{max-width:1540px;margin:0 auto;padding:0 0 34px;font-weight:500;color:#0b2b58}
.domain-vault-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;margin:0 0 18px;padding:28px 32px;border-radius:25px;background:linear-gradient(120deg,#0b4d96 0%,#08757b 54%,#0a995d 100%);color:#fff;box-shadow:0 18px 45px rgba(8,75,126,.18)}
.domain-vault-hero .eyebrow{margin:0 0 6px;color:#b8e4ff;letter-spacing:1.8px;font-size:11px}
.domain-vault-hero h2{margin:0;font-size:32px;line-height:1.15;color:#fff}
.domain-vault-hero p{margin:8px 0 0;max-width:850px;color:#e4f5ff;line-height:1.55}
.vault-security-badge{min-width:205px;padding:18px 20px;border:1px solid rgba(255,255,255,.3);border-radius:18px;background:rgba(255,255,255,.13);text-align:center}
.vault-security-badge b{display:block;font-size:18px;color:#fff}.vault-security-badge span{display:block;margin-top:5px;font-size:12px;color:#d9f7eb}
.vault-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:0 0 16px}
.vault-stats>div{padding:18px 19px;border:1px solid #d4e2f4;border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(15,56,104,.06)}
.vault-stats span{display:block;color:#62748d;font-size:12px}.vault-stats b{display:block;margin-top:7px;font-size:27px;color:#083d83}
.vault-editor,.vault-list-card,.vault-audit-card{margin:0 0 18px;border:1px solid #d4e2f4;border-radius:22px;background:#fff;box-shadow:0 14px 35px rgba(15,56,104,.07);overflow:hidden}
.vault-editor>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:19px 22px;cursor:pointer;list-style:none;background:#f8fbff;color:#093d7b;font-size:20px;font-weight:500}.vault-editor>summary::-webkit-details-marker{display:none}.vault-editor>summary small{padding:7px 11px;border:1px solid #bcd8ff;border-radius:999px;background:#eef6ff;color:#075ac0;font-size:11px}
.vault-form{padding:0 22px 22px}.vault-form-section{padding:22px 0;border-top:1px solid #e0e9f5}.vault-section-title{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.vault-section-title>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:10px;background:#0b62c6;color:#fff}.vault-section-title h3{margin:0;color:#0a3268}.vault-section-title p{margin:3px 0 0;color:#687a91;font-size:13px}
.vault-grid{display:grid;gap:14px}.vault-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.vault-grid .span-2{grid-column:span 2}.vault-form label{display:flex;flex-direction:column;gap:7px;color:#1b3f6c;font-size:13px}.vault-form input,.vault-form select,.vault-form textarea{font-weight:500}.vault-form textarea{min-height:88px}
.vault-check{align-self:end;min-height:49px;flex-direction:row!important;align-items:center!important;padding:12px 14px;border:1px solid #d1e0f2;border-radius:13px;background:#f7fbff}.vault-check input{width:19px;height:19px}
.vault-credential-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.vault-credential-edit-grid article{padding:17px;border:1px solid #d8e5f5;border-radius:17px;background:#f9fbfe}.vault-credential-edit-grid h4{margin:0 0 13px;font-size:16px;color:#0a3b78}.vault-credential-edit-grid label+label{margin-top:10px}
.vault-password-input{display:grid;grid-template-columns:1fr auto auto;gap:7px}.vault-password-input button,.vault-revealed button{border:0;border-radius:10px;padding:0 11px;background:#e6f1ff;color:#0759bc;font-weight:500;cursor:pointer}.vault-password-input button:last-child{background:#e7f8ef;color:#08753f}
.vault-access-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 15px}.vault-access-list label{flex-direction:row!important;align-items:center!important;padding:12px;border:1px solid #d9e5f4;border-radius:13px;background:#f9fbfe}.vault-access-list input{width:18px;height:18px}.vault-access-list span{display:flex;flex-direction:column}.vault-access-list small{margin-top:2px;color:#6e7d92}
.vault-form-actions,.vault-domain-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.vault-list-card,.vault-audit-card{padding:20px}.vault-list-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.vault-list-head h3{margin:0;color:#092f62;font-size:21px}.vault-list-head p{margin:4px 0 0;color:#6b7c92}.vault-list-head>span{padding:7px 12px;border:1px solid #c7dcf8;border-radius:999px;background:#eff7ff;color:#075bbd;font-size:12px}
.vault-filter{display:grid;grid-template-columns:minmax(260px,1.8fr) minmax(150px,.6fr) minmax(220px,.8fr) auto auto;gap:10px;margin-bottom:16px;padding:13px;border:1px solid #dbe7f5;border-radius:16px;background:#f8fbff}.vault-filter select{min-width:0}
.vault-domain-list{display:grid;gap:16px}.vault-domain-card{border:1px solid #d5e3f4;border-radius:20px;background:#fff;overflow:hidden}.vault-domain-card.archived{opacity:.7}.vault-domain-top{display:flex;align-items:center;gap:14px;padding:18px 19px;border-bottom:1px solid #e1eaf5;background:linear-gradient(100deg,#f8fbff,#f1fbf7)}.vault-domain-icon{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;border-radius:14px;background:linear-gradient(145deg,#dcecff,#d8f8e8);font-size:23px}.vault-domain-title{flex:1}.vault-domain-title p{margin:0 0 2px;color:#0b64c6;font-size:11px;letter-spacing:1px;text-transform:uppercase}.vault-domain-title h3{margin:0;color:#082e61;font-size:22px}.vault-domain-title span{display:block;margin-top:4px;color:#64758d}.vault-domain-status{text-align:right}.vault-domain-status small{display:block;margin-top:6px;font-size:11px}
.vault-domain-info{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border-bottom:1px solid #e1eaf5}.vault-domain-info>div{padding:14px 17px;border-right:1px solid #e1eaf5}.vault-domain-info>div:last-child{border-right:0}.vault-domain-info span{display:block;color:#718198;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.vault-domain-info b{display:block;margin-top:4px;color:#103a70}.vault-domain-info small{display:block;margin-top:4px;color:#6c7c91;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vault-domain-info .ok,.vault-domain-status .ok{color:#07834a}.vault-domain-info .warning,.vault-domain-status .warning{color:#a75d00}.vault-domain-info .danger,.vault-domain-status .danger{color:#c52d37}.vault-domain-info .muted,.vault-domain-status .muted{color:#748297}
.vault-accounts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px}.vault-account{padding:14px;border:1px solid #dce7f4;border-radius:15px;background:#f9fbfe}.vault-account>div:first-child{display:flex;justify-content:space-between;gap:8px}.vault-account span{color:#64758d;font-size:11px;text-transform:uppercase}.vault-account b{color:#123d71}.vault-account p{margin:8px 0 0;color:#5d7089;font-size:12px}.vault-account-actions{display:flex;align-items:center;gap:7px;margin-top:11px}.vault-account-actions form{margin:0}.vault-revealed{display:grid;grid-template-columns:1fr auto;gap:7px;margin-top:10px;padding:9px;border:1px solid #bce5cd;border-radius:12px;background:#eefbf4}.vault-revealed input{min-width:0;border:0;background:transparent;color:#063d24;font-family:Consolas,monospace;font-size:14px;outline:none}.vault-revealed small{grid-column:1/-1;color:#4f7963;font-size:10px}
.vault-notes{padding:0 18px 15px;color:#526983;font-size:12px}.vault-notes p{margin:5px 0;padding:9px 11px;border-radius:10px;background:#f7faff}.vault-domain-actions{padding:13px 17px;border-top:1px solid #e1eaf5;background:#fbfdff}.vault-domain-actions form{margin:0}.vault-empty{display:flex;flex-direction:column;align-items:center;padding:45px;border:1px dashed #b7d2f4;border-radius:17px;background:#f8fbff;color:#536b86}.vault-empty b{color:#0b3b78;font-size:18px}.vault-empty span{margin-top:5px}.vault-audit-card table{width:100%}.vault-audit-card th{background:#eef5ff}.vault-audit-card td,.vault-audit-card th{padding:11px 12px;border-bottom:1px solid #e1e9f4;text-align:left}
@media(max-width:1200px){.vault-stats{grid-template-columns:repeat(3,1fr)}.vault-grid.three,.vault-credential-edit-grid,.vault-access-list{grid-template-columns:repeat(2,minmax(0,1fr))}.vault-accounts{grid-template-columns:1fr}.vault-domain-info{grid-template-columns:repeat(2,1fr)}.vault-domain-info>div:nth-child(2){border-right:0}.vault-domain-info>div:nth-child(-n+2){border-bottom:1px solid #e1eaf5}}
@media(max-width:760px){.domain-vault-page{padding:0 0 22px}.domain-vault-hero{align-items:flex-start;flex-direction:column;padding:22px}.domain-vault-hero h2{font-size:25px}.vault-security-badge{width:100%;min-width:0}.vault-stats{grid-template-columns:repeat(2,1fr)}.vault-grid.three,.vault-credential-edit-grid,.vault-access-list{grid-template-columns:1fr}.vault-grid .span-2{grid-column:auto}.vault-filter{grid-template-columns:1fr}.vault-domain-top{align-items:flex-start}.vault-domain-status{margin-left:auto}.vault-domain-info{grid-template-columns:1fr}.vault-domain-info>div{border-right:0!important;border-bottom:1px solid #e1eaf5}.vault-domain-info>div:last-child{border-bottom:0}.vault-list-card,.vault-audit-card{padding:14px}.vault-editor>summary{font-size:17px}.vault-form{padding:0 14px 14px}.vault-password-input{grid-template-columns:1fr auto}.vault-password-input button:last-child{grid-column:1/-1;min-height:38px}.vault-domain-actions{align-items:stretch;flex-direction:column}.vault-domain-actions .btn,.vault-domain-actions form,.vault-domain-actions form button{width:100%}}

/* Phase 85: Employee profile spacing, map link and action-button polish */
.profile-v2{padding-bottom:8px}
.pv2-side-column{align-content:start}
.pv2-side-card{padding:22px!important}
.pv2-location-form{display:grid;gap:11px}
.pv2-location-form>label{margin-bottom:-2px}
.pv2-location-form .input{width:100%;box-sizing:border-box;padding:12px 13px!important}
.pv2-map-preview{min-height:42px;display:flex;align-items:center;padding:10px 12px;border:1px solid #d8e7f5;border-radius:12px;background:#f7fbff;color:#64748b;font-size:12.5px;line-height:1.45}
.pv2-map-preview a{color:#075db5;font-weight:700;text-decoration:none;word-break:break-word}
.pv2-map-preview a:hover{text-decoration:underline}
.map-link-error{color:#b42318;font-weight:700}
.pv2-location-actions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:9px!important}
.pv2-location-actions .btn{min-height:44px!important;padding:10px 12px!important;white-space:normal;line-height:1.25;text-align:center;justify-content:center}
.pv2-location-actions .btn:disabled{opacity:.55;cursor:not-allowed}
.pv2-location-save{grid-column:1/-1;width:100%}
.pv2-location-help{display:block;color:#6b7f96;line-height:1.45;margin-top:-1px}
.notification-card,.notification-hero{max-width:1280px;margin-left:auto;margin-right:auto}
.notification-item{padding:16px!important}
.notification-actions{gap:8px!important;flex-wrap:wrap}
.leave-page{padding-bottom:24px}
.leave-card{min-width:0}
@media(max-width:680px){
  .main:has(.profile-v2){padding-left:10px!important;padding-right:10px!important}
  .pv2-side-card{padding:17px!important}
  .pv2-location-actions{grid-template-columns:1fr!important}
  .pv2-location-save{grid-column:auto}
  .notification-actions .btn{width:100%;justify-content:center}
}



/* Phase 86: simplified secure UI, readable area names and Employee Profile spacing */
.domain-vault-page .location-name-text{display:inline-flex;align-items:center;color:#0d4f91;font-weight:500;line-height:1.4}
.profile-v2{max-width:1480px!important;gap:14px!important;padding:0 4px 12px!important}
.main:has(.profile-v2){padding-left:22px!important;padding-right:22px!important}
.profile-v2 .pv2-card,.profile-v2 .pv2-documents,.profile-v2 .pv2-side-card{padding:19px!important}
.profile-v2 .pv2-layout{gap:14px!important}
.profile-v2 .pv2-main-column,.profile-v2 .pv2-side-column{gap:14px!important}
.profile-v2 .pv2-card-head{margin-bottom:14px!important}
.profile-v2 .pv2-documents{overflow:hidden;min-width:0}
.profile-v2 .pv2-doc-upload{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;padding:16px!important;align-items:end}
.profile-v2 .pv2-doc-upload>.btn{grid-column:1/-1;justify-self:end;min-width:190px;max-width:100%;height:44px!important}
.profile-v2 .pv2-doc-row{grid-template-columns:minmax(220px,1fr) auto!important;gap:12px!important;min-width:0}
.profile-v2 .pv2-doc-status{justify-self:end}
.profile-v2 .pv2-doc-actions{grid-column:1/-1;border-top:1px solid #e4edf7;padding-top:10px}
.profile-v2 .pv2-map-preview{display:grid!important;gap:4px;min-height:0!important;padding:12px 13px!important}
.profile-v2 .pv2-map-preview span{color:#748398;font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;font-weight:700}
.profile-v2 .pv2-map-preview strong{color:#103a70;font-size:13.5px;font-weight:500;line-height:1.45}
.profile-v2 .pv2-location-actions{grid-template-columns:1fr 1fr!important}
.profile-v2 .pv2-location-save{grid-column:1/-1!important}
.profile-v2 .pv2-location-help{display:none!important}
@media(max-width:900px){
  .main:has(.profile-v2){padding-left:14px!important;padding-right:14px!important}
  .profile-v2 .pv2-doc-upload{grid-template-columns:1fr 1fr!important}
  .profile-v2 .pv2-doc-upload>div:nth-child(3){grid-column:1/-1}
  .profile-v2 .pv2-doc-upload>.btn{width:100%;justify-self:stretch}
}
@media(max-width:620px){
  .main:has(.profile-v2){padding-left:9px!important;padding-right:9px!important}
  .profile-v2{padding-left:0!important;padding-right:0!important}
  .profile-v2 .pv2-card,.profile-v2 .pv2-documents,.profile-v2 .pv2-side-card{padding:15px!important}
  .profile-v2 .pv2-doc-upload{grid-template-columns:1fr!important;padding:12px!important}
  .profile-v2 .pv2-doc-upload>div:nth-child(3){grid-column:auto}
  .profile-v2 .pv2-doc-actions{display:grid!important;grid-template-columns:1fr 1fr;width:100%}
  .profile-v2 .pv2-doc-actions .btn,.profile-v2 .pv2-doc-actions .inline-form,.profile-v2 .pv2-doc-actions .inline-form .btn{width:100%}
  .profile-v2 .pv2-location-actions{grid-template-columns:1fr!important}
  .profile-v2 .pv2-location-save{grid-column:auto!important}
}


/* Phase 87: clean click-only grouped sidebar */
.sidebar.crm-pro-sidebar .menu-group-toggle:hover{
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.14);
  box-shadow:none;
}
.sidebar.crm-pro-sidebar .menu-group.is-open>.menu-group-toggle{
  background:linear-gradient(135deg,rgba(255,255,255,.20),rgba(255,255,255,.10));
  border-color:rgba(255,255,255,.24);
  box-shadow:inset 3px 0 0 rgba(255,255,255,.82),0 8px 20px rgba(0,0,0,.08);
}
.sidebar.crm-pro-sidebar .menu-group-toggle:hover .menu-group-chevron{
  background:rgba(255,255,255,.14);
  border-color:rgba(255,255,255,.22);
}
.sidebar.crm-pro-sidebar .menu-group.is-open>.menu-group-toggle .menu-group-chevron{
  transform:rotate(180deg);
  background:#fff;
  border-color:#fff;
  color:#0b4f92;
}
.sidebar.crm-pro-sidebar .menu-group:not(.is-open)>.menu-submenu{
  max-height:0!important;
  opacity:0!important;
  margin-top:0!important;
  margin-bottom:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
  transform:translateY(-5px)!important;
  pointer-events:none!important;
}
.sidebar.crm-pro-sidebar .menu-group.is-open>.menu-submenu{
  max-height:620px!important;
  opacity:1!important;
  margin-top:6px!important;
  margin-bottom:9px!important;
  padding-top:3px!important;
  padding-bottom:3px!important;
  transform:none!important;
  pointer-events:auto!important;
}
@media(max-width:820px){
  .sidebar.crm-pro-sidebar .menu-group-chevron{width:28px;height:28px;flex-basis:28px;border-radius:9px}
  .sidebar.crm-pro-sidebar .menu-group-chevron svg{width:16px;height:16px}
  .sidebar.crm-pro-sidebar .menu-group.is-open>.menu-submenu{max-height:72vh!important;overflow-y:auto;overscroll-behavior:contain}
}

/* Phase 88: animate only the grouped-menu chevron; the button and icon box stay still. */
@keyframes crm-menu-chevron-shake {
  0%,100% { transform:translateY(0); }
  22% { transform:translateY(-2px); }
  44% { transform:translateY(2px); }
  66% { transform:translateY(-1px); }
  82% { transform:translateY(1px); }
}
.sidebar.crm-pro-sidebar .menu-group-chevron{
  transform-origin:center;
}
.sidebar.crm-pro-sidebar .menu-group-chevron svg{
  will-change:transform;
}
.sidebar.crm-pro-sidebar .menu-group-toggle:hover .menu-group-chevron svg,
.sidebar.crm-pro-sidebar .menu-group.is-arrow-animating>.menu-group-toggle .menu-group-chevron svg{
  animation:crm-menu-chevron-shake .48s ease-in-out 1;
}
@media (prefers-reduced-motion:reduce){
  .sidebar.crm-pro-sidebar .menu-group-toggle:hover .menu-group-chevron svg,
  .sidebar.crm-pro-sidebar .menu-group.is-arrow-animating>.menu-group-toggle .menu-group-chevron svg{
    animation:none;
  }
}

/* Phase 91: professional S panel login redesign */
.crm-login-pro{
  --login-accent:#0f5cc9;
  --login-accent-dark:#0a3477;
  --login-accent-soft:#eaf2ff;
  min-height:100svh;
  padding:clamp(16px,3vw,42px);
  background:
    radial-gradient(circle at 0 0,rgba(59,130,246,.16),transparent 29%),
    radial-gradient(circle at 100% 0,rgba(45,212,191,.15),transparent 27%),
    linear-gradient(135deg,#f7faff 0%,#eef4fb 48%,#f8fbff 100%);
}
.crm-login-pro.employee-login-bg{
  --login-accent:#0b8a45;
  --login-accent-dark:#075b31;
  --login-accent-soft:#e9f8ef;
}
.crm-login-pro .login-shell-v2{
  width:min(1440px,100%);
  min-height:min(790px,calc(100svh - clamp(32px,6vw,84px)));
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(480px,.98fr);
  gap:0;
  align-items:stretch;
  overflow:hidden;
  border:1px solid rgba(203,213,225,.75);
  border-radius:34px;
  background:#fff;
  box-shadow:0 30px 80px rgba(15,23,42,.15);
}
.crm-login-pro .login-info-panel{
  min-height:0;
  border-radius:33px 0 0 33px;
  padding:clamp(42px,5vw,72px);
  box-shadow:none;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:48px;
  isolation:isolate;
  background:
    radial-gradient(circle at 84% 7%,rgba(255,255,255,.14),transparent 28%),
    linear-gradient(145deg,#103f8e 0%,#0755b8 56%,#0b72e7 100%);
}
.crm-login-pro .login-info-panel.employee-panel{
  background:
    radial-gradient(circle at 84% 7%,rgba(255,255,255,.14),transparent 28%),
    linear-gradient(145deg,#075b31 0%,#087d40 56%,#10a357 100%);
}
.crm-login-pro .login-info-panel:before{
  right:-105px;
  top:-135px;
  width:430px;
  height:430px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.07);
  box-shadow:0 0 0 72px rgba(255,255,255,.035);
  z-index:-1;
}
.crm-login-pro .login-info-panel:after{
  left:-155px;
  bottom:-210px;
  width:410px;
  height:410px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(0,0,0,.07);
  z-index:-1;
}
.crm-login-pro .login-brand-content{
  position:relative;
  z-index:2;
}
.crm-login-pro .brand-mark-image{
  width:112px;
  height:112px;
  border-radius:28px;
  padding:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  box-shadow:0 18px 42px rgba(0,0,0,.2);
  overflow:hidden;
}
.crm-login-pro .brand-mark-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  border-radius:20px;
}
.crm-login-pro .login-brand-copy h2{
  margin:34px 0 0;
  color:#fff;
  font-size:clamp(48px,5vw,76px);
  line-height:1;
  letter-spacing:-.045em;
  font-weight:800;
}
.crm-login-pro .brand-accent-line{
  display:block;
  width:68px;
  height:4px;
  margin:30px 0 24px;
  border-radius:999px;
  background:rgba(147,197,253,.95);
}
.crm-login-pro.employee-login-bg .brand-accent-line{
  background:rgba(134,239,172,.95);
}
.crm-login-pro .login-brand-copy p{
  max-width:650px;
  margin:0;
  color:rgba(255,255,255,.92);
  font-size:clamp(17px,1.5vw,22px);
  line-height:1.65;
  font-weight:500;
}
.crm-login-pro .login-feature-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
}
.crm-login-pro .login-feature-item{
  min-width:0;
  padding:0 8px;
  text-align:center;
  color:#fff;
  font-size:13px;
  line-height:1.45;
  font-weight:700;
}
.crm-login-pro .login-feature-icon{
  width:58px;
  height:58px;
  margin:0 auto 12px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.22);
  border-radius:50%;
  background:rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
}
.crm-login-pro .login-feature-icon svg,
.crm-login-pro .login-role-icon svg,
.crm-login-pro .login-input-icon svg,
.crm-login-pro .login-primary-button svg,
.crm-login-pro .login-secondary-button svg{
  width:25px;
  height:25px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.crm-login-pro .pro-card{
  width:auto;
  min-width:0;
  border:0;
  border-radius:0 33px 33px 0;
  padding:clamp(38px,5.4vw,82px);
  box-shadow:none;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.98);
}
.crm-login-pro .login-form-inner{
  width:min(100%,590px);
}
.crm-login-pro .login-role-icon{
  width:68px;
  height:68px;
  margin-bottom:24px;
  border-radius:22px;
  display:grid;
  place-items:center;
  color:var(--login-accent);
  background:var(--login-accent-soft);
}
.crm-login-pro .pro-card h1{
  margin:0 0 10px;
  color:#0b326a;
  font-size:clamp(32px,3vw,44px);
  line-height:1.12;
  letter-spacing:-.025em;
  font-weight:800;
}
.crm-login-pro.employee-login-bg .pro-card h1{
  color:#073b28;
}
.crm-login-pro .login-subtitle{
  margin:0 0 26px;
  color:#64748b;
  font-size:18px;
  line-height:1.5;
  font-weight:600;
}
.crm-login-pro .login-notice{
  margin:0 0 26px;
  padding:15px 18px;
  display:flex;
  align-items:center;
  gap:12px;
  border-radius:15px;
  font-size:15px;
  line-height:1.4;
}
.crm-login-pro .notice-icon{
  flex:0 0 auto;
  width:25px;
  height:25px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:#dc2626;
  font-size:14px;
  font-weight:900;
}
.crm-login-pro .notice-icon.success{background:#16a34a}
.crm-login-pro .login-form{
  display:grid;
  gap:20px;
}
.crm-login-pro .login-field label{
  margin-bottom:9px;
  color:#1e293b;
  font-size:14px;
  font-weight:750;
}
.crm-login-pro .login-input-shell{
  position:relative;
  display:flex;
  align-items:center;
}
.crm-login-pro .login-input-icon{
  position:absolute;
  left:15px;
  z-index:2;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:11px;
  color:var(--login-accent);
  background:var(--login-accent-soft);
  pointer-events:none;
}
.crm-login-pro .login-input-icon svg{width:20px;height:20px}
.crm-login-pro .login-input-shell .input{
  min-height:58px;
  padding:14px 90px 14px 62px;
  border:1px solid #cbd7e6;
  border-radius:15px;
  background:#fff;
  color:#0f172a;
  font-size:15px;
  font-weight:600;
  box-shadow:0 1px 2px rgba(15,23,42,.02);
}
.crm-login-pro .login-input-shell .input::placeholder{color:#94a3b8;font-weight:500}
.crm-login-pro .login-input-shell .input:focus{
  border-color:var(--login-accent);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--login-accent) 13%,transparent);
}
.crm-login-pro .password-field input{padding-right:88px}
.crm-login-pro .password-field .password-toggle{
  position:absolute;
  right:10px;
  bottom:auto;
  z-index:3;
  border:0;
  border-radius:10px;
  padding:9px 12px;
  background:transparent;
  color:var(--login-accent);
  font:inherit;
  font-size:14px;
  font-weight:800;
  cursor:pointer;
}
.crm-login-pro .password-field .password-toggle:hover,
.crm-login-pro .password-field .password-toggle:focus-visible{
  outline:0;
  background:var(--login-accent-soft);
}
.crm-login-pro .login-primary-button,
.crm-login-pro .login-secondary-button{
  width:100%;
  min-height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:11px;
  border-radius:15px;
  font-size:16px;
  font-weight:800;
}
.crm-login-pro .login-primary-button{
  margin-top:2px;
  background:linear-gradient(135deg,var(--login-accent-dark),var(--login-accent));
  box-shadow:0 13px 28px color-mix(in srgb,var(--login-accent) 25%,transparent);
}
.crm-login-pro .login-primary-button:hover{
  filter:brightness(1.04);
  transform:translateY(-1px);
}
.crm-login-pro .login-primary-button svg,
.crm-login-pro .login-secondary-button svg{width:21px;height:21px}
.crm-login-pro .login-tabs{
  display:block;
  margin-top:16px;
}
.crm-login-pro .login-secondary-button{
  border:1px solid color-mix(in srgb,var(--login-accent) 75%,white);
  background:#fff;
  color:var(--login-accent);
}
.crm-login-pro .login-secondary-button:hover{
  background:var(--login-accent-soft);
  transform:translateY(-1px);
}
@supports not (color:color-mix(in srgb,#000 50%,#fff)){
  .crm-login-pro .login-input-shell .input:focus{box-shadow:0 0 0 4px rgba(15,92,201,.13)}
  .crm-login-pro.employee-login-bg .login-input-shell .input:focus{box-shadow:0 0 0 4px rgba(11,138,69,.13)}
  .crm-login-pro .login-primary-button{box-shadow:0 13px 28px rgba(15,92,201,.24)}
  .crm-login-pro.employee-login-bg .login-primary-button{box-shadow:0 13px 28px rgba(11,138,69,.24)}
  .crm-login-pro .login-secondary-button{border-color:#3b82f6}
  .crm-login-pro.employee-login-bg .login-secondary-button{border-color:#22a762}
}
@media(max-width:1050px){
  .crm-login-pro .login-shell-v2{grid-template-columns:minmax(0,.9fr) minmax(440px,1.1fr)}
  .crm-login-pro .login-info-panel{padding:42px 34px}
  .crm-login-pro .login-feature-grid{grid-template-columns:repeat(3,1fr);row-gap:22px}
  .crm-login-pro .login-feature-item:nth-child(4){grid-column:1/2}
}
@media(max-width:820px){
  .crm-login-pro{padding:14px;align-items:flex-start}
  .crm-login-pro .login-shell-v2{
    min-height:auto;
    grid-template-columns:1fr;
    overflow:visible;
    border-radius:26px;
  }
  .crm-login-pro .login-info-panel{
    min-height:auto;
    border-radius:25px 25px 0 0;
    padding:34px 28px;
    gap:32px;
  }
  .crm-login-pro .brand-mark-image{width:82px;height:82px;border-radius:22px;padding:9px}
  .crm-login-pro .login-brand-copy h2{margin-top:24px;font-size:45px}
  .crm-login-pro .brand-accent-line{margin:20px 0 16px}
  .crm-login-pro .login-brand-copy p{font-size:16px}
  .crm-login-pro .login-feature-grid{grid-template-columns:repeat(5,1fr);gap:8px;overflow-x:auto;padding-bottom:4px}
  .crm-login-pro .login-feature-item{min-width:105px;padding:0 4px;font-size:12px}
  .crm-login-pro .login-feature-item:nth-child(4){grid-column:auto}
  .crm-login-pro .login-feature-icon{width:50px;height:50px}
  .crm-login-pro .pro-card{border-radius:0 0 25px 25px;padding:38px 28px}
}
@media(max-width:520px){
  .crm-login-pro{padding:0;background:#fff}
  .crm-login-pro .login-shell-v2{border:0;border-radius:0;box-shadow:none}
  .crm-login-pro .login-info-panel{border-radius:0;padding:30px 22px}
  .crm-login-pro .login-feature-grid{display:none}
  .crm-login-pro .pro-card{border-radius:0;padding:34px 22px 42px}
  .crm-login-pro .login-role-icon{width:58px;height:58px;border-radius:18px;margin-bottom:19px}
  .crm-login-pro .pro-card h1{font-size:31px}
  .crm-login-pro .login-subtitle{font-size:16px;margin-bottom:22px}
  .crm-login-pro .login-input-shell .input{min-height:55px;padding-left:57px}
  .crm-login-pro .login-primary-button,.crm-login-pro .login-secondary-button{min-height:55px;font-size:15px}
}


/* Phase 91B: compact professional S panel login sizing */
@media (min-width:821px){
.crm-login-pro{height:100svh;min-height:100svh;padding:18px;align-items:center;overflow:hidden}
.crm-login-pro .login-shell-v2{width:min(1240px,100%);height:min(680px,calc(100svh - 36px));min-height:0;max-height:680px;grid-template-columns:minmax(0,46%) minmax(0,54%);border-radius:27px}
.crm-login-pro .login-info-panel{min-height:0;border-radius:26px 0 0 26px;padding:40px 46px 32px;gap:26px}
.crm-login-pro .brand-mark-image{width:78px;height:78px;padding:8px;border-radius:21px}
.crm-login-pro .brand-mark-image img{border-radius:15px}
.crm-login-pro .login-brand-copy h2{margin-top:22px;font-size:54px}
.crm-login-pro .brand-accent-line{width:54px;height:3px;margin:17px 0 16px}
.crm-login-pro .login-brand-copy p{max-width:520px;font-size:17px;line-height:1.5}
.crm-login-pro .login-feature-grid{gap:8px}
.crm-login-pro .login-feature-item{padding:0 3px;font-size:12px;line-height:1.35}
.crm-login-pro .login-feature-icon{width:46px;height:46px;margin-bottom:8px}
.crm-login-pro .login-feature-icon svg{width:21px;height:21px}
.crm-login-pro .pro-card{border-radius:0 26px 26px 0;padding:32px 50px}
.crm-login-pro .login-form-inner{width:min(100%,500px)}
.crm-login-pro .login-role-icon{width:52px;height:52px;margin-bottom:15px;border-radius:16px}
.crm-login-pro .login-role-icon svg{width:23px;height:23px}
.crm-login-pro .pro-card h1{margin-bottom:7px;font-size:36px}
.crm-login-pro .login-subtitle{margin-bottom:18px;font-size:16px}
.crm-login-pro .login-notice{margin-bottom:18px;padding:11px 14px;border-radius:13px;font-size:14px}
.crm-login-pro .notice-icon{width:23px;height:23px;font-size:13px}
.crm-login-pro .login-form{gap:15px}
.crm-login-pro .login-field label{margin-bottom:6px;font-size:13px}
.crm-login-pro .login-input-icon{left:13px;width:31px;height:31px;border-radius:10px}
.crm-login-pro .login-input-icon svg{width:18px;height:18px}
.crm-login-pro .login-input-shell .input{min-height:52px;padding:11px 82px 11px 55px;border-radius:13px;font-size:14px}
.crm-login-pro .password-field .password-toggle{right:8px;padding:8px 10px;font-size:13px}
.crm-login-pro .login-primary-button,.crm-login-pro .login-secondary-button{min-height:52px;border-radius:13px;font-size:15px}
.crm-login-pro .login-tabs{margin-top:12px}
}
@media (min-width:821px) and (max-width:1100px){
.crm-login-pro .login-info-panel{padding-left:34px;padding-right:34px}
.crm-login-pro .pro-card{padding-left:34px;padding-right:34px}
.crm-login-pro .pro-card h1{font-size:32px}
.crm-login-pro .login-brand-copy h2{font-size:48px}
}
@media (min-width:821px) and (max-height:720px){
.crm-login-pro{padding:10px}
.crm-login-pro .login-shell-v2{height:calc(100svh - 20px)}
.crm-login-pro .login-info-panel{padding:25px 38px 22px;gap:18px}
.crm-login-pro .brand-mark-image{width:64px;height:64px;border-radius:18px}
.crm-login-pro .login-brand-copy h2{margin-top:14px;font-size:43px}
.crm-login-pro .brand-accent-line{margin:11px 0 11px}
.crm-login-pro .login-brand-copy p{font-size:15px;line-height:1.4}
.crm-login-pro .login-feature-icon{width:40px;height:40px;margin-bottom:6px}
.crm-login-pro .login-feature-item{font-size:11px}
.crm-login-pro .pro-card{padding:20px 44px}
.crm-login-pro .login-role-icon{width:44px;height:44px;margin-bottom:10px}
.crm-login-pro .pro-card h1{font-size:31px}
.crm-login-pro .login-subtitle{margin-bottom:12px;font-size:15px}
.crm-login-pro .login-notice{margin-bottom:12px;padding:9px 12px}
.crm-login-pro .login-form{gap:11px}
.crm-login-pro .login-input-shell .input{min-height:47px}
.crm-login-pro .login-primary-button,.crm-login-pro .login-secondary-button{min-height:47px}
.crm-login-pro .login-tabs{margin-top:9px}
}


/* S panel application branding */
.sidebar.crm-pro-sidebar .brand-logo.brand-logo-image{
  padding:5px !important;
  overflow:hidden !important;
}
.sidebar.crm-pro-sidebar .brand-logo.brand-logo-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  border-radius:13px;
}
.dip-emblem.dip-emblem-image{
  padding:5px;
  overflow:hidden;
  background:#fff;
}
.dip-emblem.dip-emblem-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  border-radius:inherit;
}


/* 2026-07-20: centered wide logo on both login panels; separate S panel heading removed */
.crm-login-pro .login-brand-centered{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.crm-login-pro .brand-mark-image.brand-logo-wide{
  width:min(430px,100%);
  height:auto;
  aspect-ratio:1983/793;
  margin:0 auto;
  padding:14px 20px;
  border-radius:22px;
  background:#fff;
  box-shadow:0 16px 38px rgba(2,12,27,.22);
}
.crm-login-pro .brand-mark-image.brand-logo-wide img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  border-radius:12px;
}
.crm-login-pro .login-brand-centered .login-brand-copy{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.crm-login-pro .login-brand-centered .brand-accent-line{
  margin:18px auto 14px;
}
.crm-login-pro .login-brand-centered .login-brand-copy p{
  max-width:560px;
  margin:0 auto;
  text-align:center;
}
@media (min-width:821px) and (max-height:720px){
  .crm-login-pro .brand-mark-image.brand-logo-wide{
    width:min(360px,100%);
    padding:10px 16px;
    border-radius:18px;
  }
  .crm-login-pro .login-brand-centered .brand-accent-line{
    margin:10px auto 10px;
  }
}
@media (max-width:820px){
  .crm-login-pro .brand-mark-image.brand-logo-wide{
    width:min(390px,100%);
    padding:12px 18px;
    border-radius:20px;
  }
  .crm-login-pro .login-brand-centered .brand-accent-line{
    margin:16px auto 13px;
  }
}
@media (max-width:520px){
  .crm-login-pro .brand-mark-image.brand-logo-wide{
    width:min(330px,100%);
    padding:10px 14px;
    border-radius:17px;
  }
  .crm-login-pro .login-brand-centered .login-brand-copy p{
    font-size:15px;
    line-height:1.45;
  }
}


/* Phase 94: go-live system health */
.health-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(135deg,#f8fbff,#eef6ff)}
.health-score{min-width:150px;padding:18px 22px;border-radius:18px;text-align:center;background:#fff;border:1px solid #dbe7f6}.health-score strong{display:block;font-size:34px;color:#0b4fae}.health-score span{font-size:12px;font-weight:700;color:#64748b}.health-score.needs-fix strong{color:#b42318}.health-summary{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr)) auto;gap:14px;align-items:stretch;margin:16px 0}.health-summary .card{margin:0;padding:16px}.health-summary b{display:block;font-size:25px;color:#0f2f61}.health-summary span{font-size:12px;color:#64748b}.health-summary .btn{display:flex;align-items:center;justify-content:center}.health-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.health-item{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px;border:1px solid #e2e8f0;border-radius:14px;background:#fff}.health-item p{margin:3px 0 0;color:#64748b;font-size:13px}.health-item>strong{font-size:11px}.health-dot{width:11px;height:11px;border-radius:50%}.status-pass .health-dot{background:#16a34a}.status-pass>strong{color:#15803d}.status-warn .health-dot{background:#f59e0b}.status-warn>strong{color:#b45309}.status-fail .health-dot{background:#ef4444}.status-fail>strong{color:#b91c1c}@media(max-width:900px){.health-summary{grid-template-columns:repeat(3,1fr)}.health-summary .btn{grid-column:1/-1}.health-grid{grid-template-columns:1fr}}@media(max-width:600px){.health-hero{align-items:flex-start;flex-direction:column}.health-score{width:100%}.health-summary{grid-template-columns:1fr}.health-summary .btn{grid-column:auto}}

/* Safe single-submit state: prevents duplicate records without changing layout. */
form[aria-busy="true"] { cursor: progress; }
.crm-submit-locked,
.crm-submit-locked:hover,
.crm-submit-locked:focus {
  opacity: .68;
  cursor: wait !important;
  pointer-events: none;
}



/* Phase 111: Dynamic Admin Management */
.admin-management-hero{border:1px solid #dbe7f6;background:linear-gradient(135deg,#fff 0%,#f5f9ff 100%)}
.admin-permission-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:8px}
.admin-permission-option{display:flex;align-items:center;gap:9px;padding:11px 12px;border:1px solid #dbe7f6;border-radius:12px;background:#fff;font-weight:600;color:#24405f;cursor:pointer;transition:.18s ease}
.admin-permission-option:hover{border-color:#73a9f7;box-shadow:0 5px 18px rgba(15,91,196,.08)}
.admin-permission-option:has(input:checked){border-color:#2563eb;background:#eff6ff;color:#0f4da8}
.admin-permission-option input{width:17px;height:17px;accent-color:#2563eb}
.admin-edit-dialog{width:min(980px,calc(100% - 28px));max-height:90vh;border:0;border-radius:22px;padding:0;box-shadow:0 28px 90px rgba(15,35,70,.28);overflow:auto}
.admin-edit-dialog::backdrop{background:rgba(6,20,44,.55);backdrop-filter:blur(4px)}
.admin-dialog-card{padding:24px;background:#fff}
.admin-dialog-secondary{display:flex;gap:14px;align-items:end;justify-content:space-between;padding:18px 24px;background:#f7faff;border-top:1px solid #dbe7f6}
.admin-dialog-secondary form:first-child{display:flex;gap:10px;align-items:end;flex:1}.admin-dialog-secondary .field{margin:0;flex:1}
.admin-dialog-actions{display:flex;justify-content:flex-end;margin-top:18px}
.btn-danger{background:#dc2626!important;color:#fff!important;border-color:#dc2626!important}
.admin-list-table td{vertical-align:middle}
@media(max-width:1100px){.admin-permission-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.admin-permission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-dialog-secondary{align-items:stretch;flex-direction:column}.admin-dialog-secondary form:first-child{width:100%}}
@media(max-width:480px){.admin-permission-grid{grid-template-columns:1fr}}


/* Phase 112: separate Admin and Super Admin login pages */
.crm-login-pro.super-admin-login-bg{
  --login-accent:#6d28d9;
  --login-accent-dark:#3b167d;
  --login-accent-soft:#f1ebff;
}
.crm-login-pro .login-info-panel.super-admin-panel{
  background:
    radial-gradient(circle at 84% 7%,rgba(255,255,255,.14),transparent 28%),
    linear-gradient(145deg,#28105c 0%,#4c1d95 56%,#6d28d9 100%);
}
.crm-login-pro.super-admin-login-bg .brand-accent-line{background:rgba(216,180,254,.95)}
.crm-login-pro.super-admin-login-bg .pro-card h1{color:#3b167d}
.crm-login-pro .login-tabs.login-tabs-multiple{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.crm-login-pro .login-tabs.login-tabs-multiple .login-secondary-button{
  min-width:0;
  padding-left:12px;
  padding-right:12px;
  white-space:normal;
  text-align:center;
}
@media(max-width:520px){
  .crm-login-pro .login-tabs.login-tabs-multiple{grid-template-columns:1fr}
}


/* Phase 113: QuizMaster-inspired Admin / Super Admin settings */
.account-control-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:2px 0 18px}.account-control-header h2{margin:0 0 5px;font-size:28px;color:#14213d}.account-control-header p{margin:0;color:#64748b}.account-user-summary{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e3eaf5;border-radius:17px;padding:10px 14px;box-shadow:0 10px 26px rgba(15,23,42,.07);min-width:260px}.account-avatar{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#3167f5,#6b3fe5);font-weight:800;font-size:18px}.account-user-summary b,.account-user-summary small{display:block}.account-user-summary small{color:#64748b;margin-top:2px;font-size:12px}.account-tab-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}.account-tab-card{display:flex;align-items:center;gap:15px;padding:17px 18px;border:1.5px solid #e2e8f0;background:#fff;border-radius:17px;color:#172033;text-decoration:none;transition:.2s ease;box-shadow:0 8px 22px rgba(15,23,42,.04)}.account-tab-card:hover{transform:translateY(-1px);border-color:#8aa7ff}.account-tab-card.active{border-color:#3768f5;box-shadow:0 0 0 2px rgba(55,104,245,.07),0 12px 28px rgba(55,104,245,.08)}.account-tab-icon,.account-card-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#edf4ff;color:#3366f5;flex:0 0 auto}.account-tab-card.active .account-tab-icon,.account-card-icon{background:linear-gradient(135deg,#3167f5,#6248ed);color:#fff}.account-tab-icon .menu-icon,.account-card-icon .menu-icon{width:24px;height:24px;margin:0}.account-tab-icon svg,.account-card-icon svg{width:24px;height:24px}.account-tab-card b{display:block;font-size:16px}.account-tab-card small{display:block;color:#64748b;margin-top:3px}.account-info-strip{padding:12px 15px;margin:0 0 16px;border:1px solid #7dd3fc;background:#ecfeff;color:#155e75;border-radius:12px;font-size:13px}.account-management-shell,.account-activity-card,.account-settings-card{background:#fff;border:1px solid #e5ebf4;border-radius:19px;padding:20px;box-shadow:0 14px 34px rgba(15,23,42,.06);margin-bottom:18px}.account-section-head{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #e8edf5;padding-bottom:15px;margin-bottom:15px}.account-section-head h3{margin:0;color:#15213b;font-size:21px}.account-section-head p{margin:4px 0 0;color:#64748b}.account-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0 0 15px}.account-stat-grid>div{border:1px solid #e4eaf3;border-radius:14px;padding:14px;background:#fbfdff}.account-stat-grid small{display:block;color:#64748b}.account-stat-grid b{display:block;font-size:22px;color:#18233f;margin-top:6px}.account-table-tools{display:grid;grid-template-columns:minmax(260px,1fr) 165px 145px;gap:10px;margin-bottom:14px}.account-search{display:flex;align-items:center;gap:9px;border:1px solid #dfe6f1;border-radius:12px;padding:0 12px;background:#fff}.account-search input{border:0;outline:0;width:100%;height:42px;background:transparent}.account-table-tools select{height:42px;border:1px solid #dfe6f1;border-radius:12px;background:#fff;padding:0 12px}.account-admin-table{min-width:1080px}.account-admin-table th{white-space:nowrap}.account-admin-table td{vertical-align:middle}.your-account-label{display:block;color:#64748b;font-size:11px;margin-top:3px}.position-pill,.status-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:7px 12px;font-size:12px;white-space:nowrap}.position-pill{background:#eef2ff;color:#4338ca}.status-pill.active{background:#dcfce7;color:#15803d}.status-pill.inactive{background:#fee2e2;color:#b91c1c}.account-actions{display:flex;align-items:center;gap:8px}.account-actions form{margin:0}.account-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.account-settings-card{margin:0}.account-card-title{display:flex;align-items:center;gap:14px;margin-bottom:17px}.account-card-title h3{margin:0;color:#17213b;font-size:20px}.account-card-title p{margin:4px 0 0;color:#64748b}.account-form{display:grid;gap:13px}.account-save-btn{justify-self:start}.password-input-wrap{position:relative}.password-input-wrap .input{padding-right:72px;width:100%}.password-eye{position:absolute;right:9px;top:50%;transform:translateY(-50%);border:0;background:#edf4ff;color:#1d5dd8;border-radius:9px;padding:7px 10px;cursor:pointer;font-weight:700}.admin-edit-dialog{border:0;padding:0;background:transparent;width:min(900px,calc(100% - 28px));max-height:92vh}.admin-edit-dialog::backdrop{background:rgba(15,23,42,.58);backdrop-filter:blur(4px)}.admin-dialog-card{background:#fff;border-radius:20px;padding:22px;max-height:78vh;overflow:auto}.admin-dialog-secondary{background:#f8fafc;border-radius:0 0 20px 20px;padding:15px 22px}.admin-dialog-actions{display:flex;justify-content:flex-end;margin-top:18px}.admin-permission-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1050px){.account-stat-grid{grid-template-columns:repeat(2,1fr)}.account-settings-grid{grid-template-columns:1fr}.account-table-tools{grid-template-columns:1fr 150px 140px}}
@media(max-width:760px){.account-control-header{align-items:flex-start;flex-direction:column}.account-user-summary{width:100%}.account-tab-cards{grid-template-columns:1fr}.account-table-tools{grid-template-columns:1fr}.account-stat-grid{grid-template-columns:1fr 1fr}.account-section-head{align-items:flex-start;flex-direction:column}.account-section-head .btn{width:100%}.admin-permission-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.account-stat-grid{grid-template-columns:1fr}.admin-permission-grid{grid-template-columns:1fr}.account-control-header h2{font-size:24px}}

/* Separate Admin and Super Admin account pages */
.account-tab-cards-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.account-stat-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.account-table-tools-two{grid-template-columns:minmax(260px,1fr) 170px}
.btn-success{background:#16a34a!important;color:#fff!important;border-color:#16a34a!important}
.super-admin-pill{background:#ede9fe;color:#6d28d9}
.field-help{display:block;margin-top:6px;color:#64748b;font-size:12px;line-height:1.4}
.admin-edit-dialog select:disabled{background:#f1f5f9;color:#64748b;cursor:not-allowed}
@media(max-width:980px){.account-tab-cards-three{grid-template-columns:1fr}.account-stat-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.account-stat-grid-three,.account-table-tools-two{grid-template-columns:1fr}}

/* WhatsApp-style live chat updates */
[data-live-chat] { position: relative; overflow-y: auto; scroll-behavior: smooth; }
.live-chat-ready { overscroll-behavior: contain; }
.live-chat-pending { opacity: .68; filter: saturate(.75); }
.live-chat-uploading { display: block; margin-top: 8px; font-weight: 700; opacity: .8; }
.live-chat-new-button {
  position: absolute;
  right: 24px;
  bottom: 112px;
  z-index: 15;
  border: 0;
  border-radius: 999px;
  padding: 9px 14px;
  background: #075e54;
  color: #fff;
  box-shadow: 0 8px 24px rgba(15, 23, 42, .22);
  font-weight: 700;
  cursor: pointer;
}
.live-chat-new-button[hidden] { display: none; }
.live-chat-error {
  grid-column: 1 / -1;
  margin-bottom: 8px;
  padding: 10px 12px;
  border: 1px solid #fecaca;
  border-radius: 12px;
  background: #fff1f2;
  color: #b91c1c;
  font-size: 13px;
  font-weight: 700;
}
form[data-live-chat-form][aria-busy="true"] textarea { opacity: .85; }
@media (max-width: 820px) {
  .live-chat-new-button { right: 14px; bottom: 104px; }
}
.chat-box:has([data-live-chat]),
.req-chat-card:has([data-live-chat]),
.req-min-detail-card:has([data-live-chat]) { position: relative; }

/* Chat ownership alignment: always keep own messages right and other users left. */
.chat-thread > .message.other { margin-left: 0 !important; margin-right: auto !important; flex-direction: row !important; }
.chat-thread > .message.mine { margin-left: auto !important; margin-right: 0 !important; flex-direction: row-reverse !important; }
.chat-thread > .message.other .msg-avatar { order: 0; }
.chat-thread > .message.other .msg-bubble { order: 1; }
.chat-thread > .message.mine .msg-bubble { order: 0; }
.chat-thread > .message.mine .msg-avatar { order: 1; }

/* S Panel WhatsApp-style chat controls, delivery ticks and message actions. */
.chat-thread{position:relative}
.message .msg-bubble{position:relative;padding-bottom:30px!important}
.message-menu-trigger{position:absolute;top:7px;right:8px;width:28px;height:28px;border:0;border-radius:50%;background:transparent;color:#64748b;font-size:20px;line-height:1;opacity:0;cursor:pointer;display:grid;place-items:center;z-index:3}
.message:hover .message-menu-trigger,.message:focus-within .message-menu-trigger{opacity:1}
.message.mine .message-menu-trigger{right:auto;left:8px}
.msg-footer{position:absolute;right:12px;bottom:7px;display:flex;align-items:center;justify-content:flex-end;gap:5px;min-height:16px;color:#64748b;font-size:11px;font-weight:700}
.message.mine .msg-footer{color:#4b6f65}
.msg-time{white-space:nowrap}
.chat-ticks{font-size:14px;font-weight:900;letter-spacing:-3px;padding-right:3px;white-space:nowrap}
.chat-ticks.status-sent,.chat-ticks.status-delivered{color:#718096}
.chat-ticks.status-read{color:#1787e0;text-shadow:0 0 1px rgba(23,135,224,.15)}
.message-star-indicator{color:#f59e0b;font-size:12px;line-height:1}
.forwarded-label{font-size:12px;color:#64748b;font-style:italic;font-weight:700;margin:7px 0 4px}
.deleted-message-text{margin:9px 0!important;color:#64748b!important;font-style:italic;font-weight:700}
.chat-reply-reference{width:100%;display:grid;gap:2px;text-align:left;border:0;border-left:4px solid #16a34a;background:rgba(255,255,255,.7);border-radius:8px;padding:8px 10px;margin:7px 0 8px;cursor:pointer;color:#334155}
.chat-reply-reference b{font-size:12px;color:#08783f}.chat-reply-reference span{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.composer-reply-preview{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#eefbf3;border-left:4px solid #16a34a;border-radius:12px;padding:9px 12px;margin-bottom:8px}
.composer-reply-preview div{display:grid;min-width:0}.composer-reply-preview b{font-size:12px;color:#08783f}.composer-reply-preview span{font-size:12px;color:#475569;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-reply-preview button{border:0;background:transparent;font-size:24px;color:#64748b;cursor:pointer}
.whatsapp-message-menu{position:fixed;z-index:10080;width:230px;max-height:min(520px,calc(100vh - 16px));overflow:auto;background:#202020;color:#f8fafc;border-radius:11px;padding:7px 0;box-shadow:0 18px 50px rgba(0,0,0,.42);border:1px solid #323232}
.whatsapp-message-menu[hidden]{display:none}
.whatsapp-message-menu button{width:100%;height:46px;border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:14px;padding:0 16px;text-align:left;font-size:15px;font-weight:600;cursor:pointer}
.whatsapp-message-menu button:hover{background:#333}.whatsapp-message-menu button:disabled{opacity:.34;cursor:not-allowed}.whatsapp-message-menu button span{width:20px;text-align:center;font-size:19px}
.whatsapp-message-menu button[data-menu-action="star"],.whatsapp-message-menu button[data-menu-action="select"],.whatsapp-message-menu button[data-menu-action="delete"]{border-top:1px solid #393939}
.chat-modal-backdrop{position:fixed;inset:0;z-index:10100;background:rgba(15,23,42,.58);display:grid;place-items:center;padding:18px}
.chat-modal{width:min(520px,100%);max-height:min(720px,calc(100vh - 36px));overflow:hidden;background:#fff;border-radius:18px;box-shadow:0 24px 80px rgba(15,23,42,.35);display:grid;grid-template-rows:auto minmax(80px,1fr) auto}
.chat-modal header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid #e2e8f0}.chat-modal h3{margin:0;color:#082f68;font-size:19px}.chat-modal header button{border:0;background:#eef2f7;width:34px;height:34px;border-radius:50%;font-size:22px;cursor:pointer}
.chat-modal-body{padding:18px;overflow:auto;color:#334155}.chat-modal footer{display:flex;justify-content:flex-end;gap:9px;padding:13px 18px;border-top:1px solid #e2e8f0}.chat-modal footer:empty{display:none}
.chat-forward-field{display:grid;gap:8px;font-weight:800;color:#0f356d}.chat-info-loading{text-align:center;padding:25px;color:#64748b}
.message-info-grid{display:grid;gap:14px}.message-info-grid>div{display:grid;grid-template-columns:32px 1fr;gap:3px 10px;border-bottom:1px solid #e2e8f0;padding-bottom:12px}.message-info-grid>div>span{grid-row:1/4;font-size:20px;color:#64748b}.message-info-grid .read-info>span{color:#1787e0}.message-info-grid small{color:#64748b}.message-info-grid ul{list-style:none;padding:0;margin:5px 0 0;display:grid;gap:7px}.message-info-grid li{display:flex;justify-content:space-between;gap:10px;font-size:12px}.message-info-grid li span{color:#64748b}
.btn-danger{background:#dc2626!important;color:#fff!important;border-color:#dc2626!important}.btn-danger-light{background:#fff1f2!important;color:#b91c1c!important;border:1px solid #fecdd3!important}
.chat-selection-toolbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#075e54;color:#fff;padding:10px 13px;border-radius:12px;margin-bottom:8px;box-shadow:0 8px 22px rgba(0,0,0,.16)}
.chat-selection-toolbar[hidden]{display:none}.chat-selection-toolbar div{display:flex;gap:5px}.chat-selection-toolbar button{border:0;background:rgba(255,255,255,.14);color:#fff;border-radius:8px;padding:7px 10px;cursor:pointer;font-weight:700}
.chat-select-mode .message{cursor:pointer}.message-selected .msg-bubble{outline:3px solid #38bdf8;box-shadow:0 0 0 5px rgba(56,189,248,.15)!important}.message-selected:before{content:'✓';position:absolute;z-index:5;width:24px;height:24px;border-radius:50%;background:#0ea5e9;color:#fff;display:grid;place-items:center;font-weight:900}
.message-highlight .msg-bubble{animation:chatMessageHighlight 1.4s ease}@keyframes chatMessageHighlight{0%,100%{box-shadow:inherit}35%{box-shadow:0 0 0 7px rgba(14,165,233,.28)}}
.live-chat-pending{opacity:.72}.live-chat-uploading{display:block;margin-top:8px;color:#64748b}
@media(max-width:700px){.message-menu-trigger{opacity:1}.whatsapp-message-menu{width:215px}.chat-selection-toolbar{border-radius:0;margin:-1px -1px 8px}.chat-selection-toolbar button{padding:7px}.chat-modal-backdrop{padding:10px}.chat-modal{border-radius:15px}.msg-footer{font-size:10px}}
/* Keep sender/receiver sides correct on every live-chat container, including requirement chat. */
[data-live-chat] > .message.other{margin-left:0!important;margin-right:auto!important;flex-direction:row!important}
[data-live-chat] > .message.mine{margin-left:auto!important;margin-right:0!important;flex-direction:row-reverse!important}
[data-live-chat] > .message.other .msg-avatar{order:0}[data-live-chat] > .message.other .msg-bubble{order:1}
[data-live-chat] > .message.mine .msg-bubble{order:0}[data-live-chat] > .message.mine .msg-avatar{order:1}


/* Project, task timer, document request and committee selection upgrade */
.project-hero,.project-detail-hero,.task-timer-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 30px;margin-bottom:20px;background:linear-gradient(135deg,#f8fbff,#eef6ff);border:1px solid #cfe0f7}
.project-hero h2,.project-detail-hero h2,.task-timer-hero h2{margin:4px 0 8px;font-size:30px;color:#0d3978}
.project-hero p,.project-detail-hero p,.task-timer-hero p{margin:0;color:#5d6e86;max-width:780px;line-height:1.55}
.project-hero-actions,.project-detail-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.project-editor{margin-bottom:20px}
.project-filter{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.project-filter .input{min-width:260px}
.project-list-table td{vertical-align:middle}
.project-name-link,.domain-name-link{display:flex;align-items:center;gap:10px;text-decoration:none;color:#0d3978}
.project-name-link span,.domain-name-link small{display:block;color:#718096;font-weight:500;margin-top:3px}
.project-progress-mini,.project-progress-large{height:8px;background:#e6eef8;border-radius:999px;overflow:hidden;margin:8px 0}
.project-progress-mini i,.project-progress-large i{display:block;height:100%;background:linear-gradient(90deg,#1767d8,#16a36a);border-radius:inherit}
.project-progress-large{height:12px}
.project-progress-large.compact{height:8px}
.project-detail-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-bottom:20px}
.project-detail-stats .card{padding:18px}
.project-detail-stats span,.project-scope-grid span,.domain-detail-grid span,.task-schedule-grid span,.employee-project-dates span,.eod-task-timing span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:#73829a;margin-bottom:6px}
.project-detail-stats b,.project-scope-grid b,.domain-detail-grid b,.task-schedule-grid b,.employee-project-dates b,.eod-task-timing b{color:#102f5e}
.project-scope-grid,.domain-detail-grid,.task-schedule-grid,.eod-task-timing{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:16px}
.project-scope-grid>div,.domain-detail-grid>div,.task-schedule-grid>div,.eod-task-timing>div{padding:14px;border:1px solid #dfe8f4;border-radius:14px;background:#f8fbff}
.project-description,.domain-detail-note{margin-top:16px;padding:16px;border-radius:14px;background:#f7f9fc;color:#45556f;line-height:1.65}
.project-update-list{display:grid;gap:12px}
.project-update-list article{padding:14px 16px;border:1px solid #dde7f3;border-radius:14px;background:#fbfdff}
.project-update-list article>div{display:flex;justify-content:space-between;gap:10px}
.project-update-list p{margin:8px 0;color:#33445e}
.project-update-list time{font-size:12px;color:#78869a}
.employee-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.employee-project-card{display:flex;flex-direction:column;gap:16px}
.employee-project-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.employee-project-card-head span{font-size:12px;color:#4d69a0;text-transform:uppercase;font-weight:700}
.employee-project-card h3{margin:4px 0;color:#123c77;font-size:22px}
.employee-project-dates{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.employee-project-dates>div{padding:12px;background:#f6f9fe;border-radius:12px}
.employee-project-bottom{display:flex;justify-content:space-between;gap:12px;color:#52647e;font-size:13px}
.employee-project-description{color:#5d6c82;line-height:1.5;margin:0}
.task-duration-inputs{display:grid;grid-template-columns:1fr auto 1fr auto;align-items:center;gap:8px}
.task-duration-inputs span{font-size:12px;color:#64748b}
.task-timer-list{display:grid;gap:18px}
.task-timer-card{border:1px solid #d6e2f1}
.task-timer-card.is-running{border-color:#45b97c;box-shadow:0 10px 35px rgba(22,163,74,.12)}
.task-timer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.task-timer-head h3{font-size:23px;color:#10376f;margin:4px 0 8px}
.task-timer-head p{color:#56677e;line-height:1.55;margin:0}
.task-timer-status{display:flex;gap:8px;flex-wrap:wrap}
.task-schedule-grid{grid-template-columns:repeat(6,minmax(0,1fr));margin:18px 0 12px}
.task-running-banner{display:flex;align-items:center;gap:9px;padding:12px 14px;background:#eafaf1;border:1px solid #9be1b9;border-radius:12px;margin-bottom:14px;color:#08783c}
.task-running-banner small{margin-left:auto}
.task-running-dot{width:10px;height:10px;border-radius:50%;background:#12a65b;box-shadow:0 0 0 5px rgba(18,166,91,.15);animation:crmPulse 1.2s infinite}
@keyframes crmPulse{50%{opacity:.45}}
.task-stop-grid{display:grid;grid-template-columns:1fr 1fr 1.4fr auto;gap:12px;align-items:end}
.task-start-form{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:10px;align-items:center;flex:1}
.task-action-row{display:flex;align-items:center;gap:12px;margin-top:14px}
.task-scheduled-note{font-size:13px;color:#9a6700;background:#fff7d6;padding:9px 12px;border-radius:10px}
.task-comment-panel{margin-top:14px;border-top:1px solid #e3eaf3;padding-top:12px}
.task-comment-panel summary,.task-history-grid summary{cursor:pointer;font-weight:700;color:#31527e}
.task-history-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}
.task-history-grid details{padding:12px 14px;border:1px solid #e1e8f2;border-radius:12px}
.document-rule-card ol{margin:12px 0 0;padding-left:20px;color:#52637b;line-height:1.9}
.approved-request-grid{display:grid;gap:12px}
.approved-request-item{display:grid;grid-template-columns:1.2fr 1fr auto;gap:14px;align-items:center;padding:14px;border:1px solid #b7e4c9;border-radius:14px;background:#f0fff6}
.approved-request-item span,.approved-request-item small{display:block;color:#63748b;margin-top:4px}
.document-request-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}
.document-request-tabs a{display:flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid #d6e0ed;border-radius:999px;color:#405571;text-decoration:none;background:#fff}
.document-request-tabs a.active{background:#145fc6;color:#fff;border-color:#145fc6}
.document-request-tabs b{min-width:24px;height:24px;border-radius:999px;display:grid;place-items:center;background:rgba(255,255,255,.22)}
.document-review-form{display:grid;gap:8px;min-width:260px}
.document-review-form textarea{min-height:70px}
.document-review-form>div{display:flex;gap:8px}
.committee-review-card{margin-bottom:18px}
.committee-employee-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.committee-employee-card{padding:14px;border:1px solid #dce5f0;border-radius:16px;background:#fff}
.committee-employee-card.status-approved{border-color:#9fddb9;background:#f4fff8}
.committee-employee-card.status-rejected{border-color:#f2b1b1;background:#fff7f7}
.committee-person{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}
.committee-person small{display:block;color:#6c7b90;margin-top:4px}
.committee-employee-card>p{margin:10px 0;color:#5c6879}
.committee-review-form{display:grid;gap:9px;margin-top:12px}
.committee-review-form>div{display:flex;gap:7px;flex-wrap:wrap}
.approved-mark{margin-left:auto;color:#0a8345;font-size:12px;font-weight:800}
.domain-normal-list .table-wrap{margin-top:16px}
.domain-list-table td{vertical-align:middle}
.domain-list-row{cursor:pointer;transition:background-color .18s ease,box-shadow .18s ease}
.domain-list-row:hover,.domain-list-row:focus-visible{background:#f5f9ff;box-shadow:inset 3px 0 0 #1769d2;outline:0}
.domain-list-row:focus-visible .domain-name-link b{text-decoration:underline}
.domain-name-link>span{width:38px;height:38px;border-radius:12px;background:#eaf2ff;display:grid;place-items:center}
.domain-detail-hero{background:linear-gradient(135deg,#f5f9ff,#edf5ff)}
.domain-expiry-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
.domain-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.domain-account-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.domain-account-detail-grid article{padding:18px;border:1px solid #dbe5f0;border-radius:16px;background:#fbfdff}
.domain-account-detail-grid h3{margin:5px 0 14px;color:#123d78}
.domain-account-detail-grid p{color:#5a6a80}
.domain-account-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.authorised-staff-list{display:flex;flex-wrap:wrap;gap:10px}
.authorised-staff-list span{padding:10px 13px;background:#eef5ff;color:#1b4f91;border-radius:999px;font-size:13px}
.eod-task-timing{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:14px}
.ok{color:#0b8b4d!important}.warning{color:#b06c00!important}.danger{color:#c52b2b!important}
@media(max-width:1200px){
 .project-detail-stats{grid-template-columns:repeat(3,1fr)}
 .task-schedule-grid{grid-template-columns:repeat(3,1fr)}
 .domain-detail-grid{grid-template-columns:repeat(2,1fr)}
 .domain-account-detail-grid{grid-template-columns:1fr}
}
@media(max-width:800px){
 .project-hero,.project-detail-hero,.task-timer-hero{flex-direction:column;align-items:flex-start;padding:20px}
 .project-detail-stats,.project-scope-grid,.task-schedule-grid,.employee-project-dates,.eod-task-timing,.domain-expiry-stats,.domain-detail-grid{grid-template-columns:1fr 1fr}
 .employee-project-grid,.committee-employee-grid{grid-template-columns:1fr}
 .task-stop-grid,.approved-request-item{grid-template-columns:1fr}
 .task-start-form{grid-template-columns:1fr}
 .task-history-grid{grid-template-columns:1fr}
}
@media(max-width:520px){
 .project-detail-stats,.project-scope-grid,.task-schedule-grid,.employee-project-dates,.eod-task-timing,.domain-expiry-stats,.domain-detail-grid{grid-template-columns:1fr}
}

/* Phase 125: Employee project-wise sequential task workspace */
.project-task-board{display:grid;gap:22px}
.project-task-group{padding:24px;border:1px solid #d5e2f1;background:linear-gradient(180deg,#fff,#fbfdff)}
.project-task-group.project-complete{border-color:#9ad7b5;background:linear-gradient(180deg,#fff,#f5fff9)}
.project-task-group-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.project-task-group-head h2{margin:4px 0 5px;color:#103a75;font-size:26px}
.project-task-group-head p{margin:0;color:#66768c}
.project-task-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.project-task-summary>b{font-size:22px;color:#10417f}
.project-task-sequence{display:grid;gap:14px;margin-top:20px;position:relative}
.project-task-sequence:before{content:"";position:absolute;left:22px;top:28px;bottom:28px;width:2px;background:#d9e4f2}
.project-task-step{display:grid;grid-template-columns:46px minmax(0,1fr);gap:14px;position:relative}
.project-task-step-number{position:relative;z-index:2;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#eaf2ff;border:2px solid #9fc3f5;color:#145bb8;font-weight:900;box-shadow:0 0 0 6px #fff}
.project-task-step.is-current .project-task-step-number{background:#1464d2;color:#fff;border-color:#1464d2}
.project-task-step.is-running .project-task-step-number{background:#0f9b58;border-color:#0f9b58;color:#fff;animation:crmPulse 1.2s infinite}
.project-task-step.is-completed .project-task-step-number{background:#e9faef;border-color:#5cc786;color:#078343}
.project-task-step.is-locked .project-task-step-number{background:#f2f4f8;border-color:#cbd5e1;color:#8794a8}
.project-task-step-body{padding:18px;border:1px solid #dce6f1;border-radius:18px;background:#fff}
.project-task-step.is-current .project-task-step-body{border-color:#7eb3f5;box-shadow:0 10px 30px rgba(20,100,210,.09)}
.project-task-step.is-running .project-task-step-body{border-color:#6fd39a;box-shadow:0 10px 30px rgba(15,155,88,.1)}
.project-task-step.is-completed .project-task-step-body{background:#f7fff9;border-color:#b9e5c9}
.project-task-step.is-locked .project-task-step-body{background:#f8fafc;opacity:.82}
.project-task-step-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.project-task-step-head h3{margin:4px 0 7px;color:#113a73;font-size:21px}
.project-task-step-head p{margin:0;color:#5e6d81;line-height:1.5}
.project-task-step-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#1765c9}
.project-task-step.is-completed .project-task-step-label{color:#078343}
.project-task-step.is-locked .project-task-step-label{color:#7b8799}
.task-schedule-grid.compact-project-task{grid-template-columns:repeat(6,minmax(0,1fr));margin-top:15px}
.current-task-workbox{margin-top:16px;padding:16px;border-radius:15px;background:#f7fbff;border:1px solid #cfe1f8}
.current-task-workbox textarea{min-height:92px}
.single-work-comment{grid-template-columns:minmax(0,1fr) auto;align-items:end}
.single-work-comment .field{margin:0}
.next-task-lock,.completed-task-note{display:flex;align-items:center;gap:12px;margin-top:15px;padding:13px 15px;border-radius:13px}
.next-task-lock{background:#f1f4f8;color:#5f6e82;border:1px dashed #c5cfdb}
.completed-task-note{background:#eefbf3;color:#087d43;border:1px solid #b4e1c5}
.next-task-lock>span,.completed-task-note>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#fff}
.next-task-lock small,.completed-task-note small{display:block;margin-top:3px;color:#748196}
.project-task-activity{margin-top:15px;padding:14px 16px;border:1px solid #dfe7f1;border-radius:14px;background:#fbfdff}
.project-task-activity summary{cursor:pointer;font-weight:800;color:#244e83}
.project-comment-stream,.project-session-stream{display:grid;gap:10px;margin-top:13px}
.project-comment-stream article{padding:13px 14px;border-radius:12px;background:#fff;border:1px solid #dfe7f1}
.project-comment-stream article>div{display:flex;align-items:center;justify-content:space-between;gap:10px}
.project-comment-stream p{margin:8px 0;color:#3d4e66;line-height:1.5}
.project-comment-stream small,.project-session-stream p{color:#6c7b90}
.project-session-stream p{margin:0;padding:11px 12px;background:#fff;border-radius:11px;border:1px solid #e2e8f0}
@media(max-width:1200px){.task-schedule-grid.compact-project-task{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){
 .project-task-group{padding:17px}
 .project-task-group-head,.project-task-step-head{flex-direction:column}
 .project-task-summary{justify-content:flex-start}
 .project-task-step{grid-template-columns:38px minmax(0,1fr);gap:10px}
 .project-task-step-number{width:38px;height:38px;box-shadow:0 0 0 4px #fff}
 .project-task-sequence:before{left:18px}
 .task-schedule-grid.compact-project-task{grid-template-columns:1fr 1fr}
 .single-work-comment{grid-template-columns:1fr}
}
@media(max-width:520px){.task-schedule-grid.compact-project-task{grid-template-columns:1fr}.project-task-step-body{padding:14px}}

/* Project module full-detail enhancements */
.project-assigned-work{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;max-width:360px}
.project-assigned-work small{width:100%;color:#75839a}
.project-assigned-work span,.project-assigned-work em{display:inline-flex;padding:4px 8px;border-radius:999px;background:#eef5ff;color:#315f9c;font-size:11px;font-style:normal;border:1px solid #d8e7fb}
.employee-project-work-list{padding:13px 14px;border:1px solid #dce8f8;background:#f8fbff;border-radius:12px;color:#52647e}
.employee-project-work-list b{display:block;color:#173e75;margin-bottom:7px}
.employee-project-work-list ul{margin:0;padding-left:18px;display:grid;gap:4px}
.employee-project-work-list span{font-size:13px}
@media(max-width:900px){.project-list-table{min-width:1220px}}
/* Compact Project Details save action */
.project-save-action{grid-column:1/-1;display:flex;align-items:center;justify-content:flex-end;margin-top:2px}
.project-save-btn{width:auto!important;min-width:180px;height:42px;padding:9px 18px!important;line-height:1;display:inline-flex;align-items:center;justify-content:center;align-self:center}
@media(max-width:600px){.project-save-action{justify-content:stretch}.project-save-btn{width:100%!important;min-width:0}}

/* Project-level Observation approval/rejection */
.observation-page-head{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;padding:22px 24px!important;background:linear-gradient(135deg,#fff,#f7fbff)!important}.observation-page-head h2{margin:0 0 6px;color:#082f68;font-size:27px;font-weight:900}.observation-page-head p:not(.eyebrow){margin:0;color:#64748b;font-weight:650}.project-decision-form{display:grid;gap:14px}.project-decision-actions{display:flex;gap:10px;flex-wrap:wrap}.project-decision-actions .btn{min-width:150px;justify-content:center}.decision-current-reason{margin:0 0 14px;background:#f8fafc;border:1px solid #dbeafe;border-radius:14px;padding:12px 14px;color:#334155;line-height:1.5}.observation-decision-card.decision-approved{border-color:#86efac!important;background:linear-gradient(135deg,#f0fdf4,#fff)!important}.observation-decision-card.decision-rejected{border-color:#fda4af!important;background:linear-gradient(135deg,#fff1f2,#fff)!important}.observation-decision-card.decision-on-hold{border-color:#fcd34d!important;background:linear-gradient(135deg,#fffbeb,#fff)!important}.disabled-link{opacity:.65;cursor:not-allowed;pointer-events:none}.observe-bubble.decision.on-hold{background:#fffbeb;border-color:#fcd34d}.observe-bubble.decision.on-hold:before{background:#fffbeb;border-color:#fcd34d}
@media(max-width:720px){.observation-page-head{align-items:flex-start;flex-direction:column}.observation-page-head .btn{width:100%}.project-decision-actions{display:grid;grid-template-columns:1fr}.project-decision-actions .btn{width:100%}}

.observation-project-picker{margin-top:14px}.observation-project-picker label{font-size:12px;font-weight:900;color:#0f356d;text-transform:uppercase;letter-spacing:.07em}.observation-project-picker .input{margin-top:7px;background:#fff!important}

/* Phase 129: reliable employee login credential fallback */
.emp-credential-result{grid-template-columns:minmax(260px,1.05fr) minmax(0,2.4fr) minmax(280px,1.15fr)}.emp-credential-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.emp-credential-value{display:flex;align-items:center;justify-content:space-between;gap:10px}.emp-credential-value button{flex:0 0 auto;border:1px solid #86efac;background:#fff;color:#047857;border-radius:9px;padding:6px 9px;font-weight:850;cursor:pointer}.emp-password-value{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.05em}.emp-mail-readiness{margin-top:14px;border-radius:14px;padding:12px 14px;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;font-size:13px}.emp-mail-readiness.ready{background:#ecfdf5;border:1px solid #86efac;color:#065f46}.emp-mail-readiness.warning{background:#fff7ed;border:1px solid #fdba74;color:#9a3412}.emp-mail-readiness span{line-height:1.4}.emp-mail-readiness a{font-weight:900;color:inherit;white-space:nowrap}@media(max-width:900px){.emp-credential-result{grid-template-columns:1fr}.emp-mail-readiness{grid-template-columns:1fr}}


/* Phase 133: dynamic assigned work and rework approval */
.task-monitor-open{padding:5px 10px!important;min-height:30px;font-size:12px}
.task-detail-link{display:inline-flex;align-items:center;padding:5px 9px;border:1px solid #cbdcf2;border-radius:9px;color:#1458a8;background:#fff;font-size:11px;font-weight:850;text-decoration:none}
.task-cycle-summary{display:flex;gap:9px;flex-wrap:wrap;margin-top:12px}.task-cycle-summary span{display:grid;gap:2px;min-width:130px;padding:10px 12px;border:1px solid #d9e7f6;border-radius:12px;background:#f8fbff;color:#52647d}.task-cycle-summary b{color:#163f76;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.rework-waiting-note,.rework-rejected-note{margin-top:12px;padding:12px 14px;border-radius:12px;display:grid;gap:4px}.rework-waiting-note{background:#fff8e7;border:1px solid #f6ca69;color:#7b4d00}.rework-rejected-note{background:#fff1f2;border:1px solid #fda4af;color:#9f1239}
.task-monitor-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:24px!important}.task-monitor-hero h2{margin:3px 0 6px;color:#0c3974}.task-monitor-hero p{margin:0;color:#68778b}.task-monitor-hero>div:last-child{display:flex;gap:8px;flex-wrap:wrap}.task-monitor-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:16px 0}.task-monitor-stats>div{padding:15px 16px;border:1px solid #dce7f4;border-radius:15px;background:#fff;display:grid;gap:3px;box-shadow:0 8px 20px rgba(22,57,101,.05)}.task-monitor-stats b{font-size:24px;color:#0d448c}.task-monitor-stats span{color:#6b7b90;font-size:12px;font-weight:750}.task-monitor-filter{display:flex;gap:10px;align-items:center;margin-bottom:16px;padding:14px!important}.task-monitor-filter select{min-width:220px;height:42px;border:1px solid #cedaea;border-radius:11px;padding:0 12px;background:#fff}.task-monitor-list{display:grid;gap:15px}.task-monitor-card{padding:19px!important;border:1px solid #dce7f3}.task-monitor-card.is-running{border-color:#65c990;box-shadow:0 10px 28px rgba(15,155,88,.10)}.task-monitor-card>header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.task-monitor-card h3{margin:3px 0 5px;color:#113d77;font-size:21px}.task-monitor-card header span{color:#6d7d91}.task-monitor-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.task-monitor-facts{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;margin-top:14px}.task-monitor-facts>div{padding:10px;border-radius:11px;background:#f8fbff;border:1px solid #e0e9f4;display:grid;gap:3px}.task-monitor-facts span{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#77869a;font-weight:850}.task-monitor-facts b{font-size:13px;color:#183f72}.task-monitor-hours{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}.task-monitor-hours span{padding:8px 10px;border-radius:10px;background:#eef6ff;color:#225184;font-size:12px}.task-monitor-hours b{margin-right:6px}.task-rework-pending{margin-top:14px;padding:15px;border:1px solid #f2c96d;border-radius:14px;background:#fffaf0}.task-rework-pending>p{color:#654a16}.task-rework-review{display:grid;grid-template-columns:1fr 1fr;gap:12px}.task-rework-review form,.task-rework-request form{display:grid;gap:8px}.task-rework-review textarea,.task-rework-request textarea{min-height:78px;border:1px solid #d4dfec;border-radius:11px;padding:10px}.task-rework-request{margin-top:13px;padding:12px 14px;border:1px solid #d9e5f2;border-radius:12px;background:#fbfdff}.task-rework-request summary{cursor:pointer;font-weight:850;color:#1d579f}.task-rework-request form{margin-top:11px}.task-monitor-state-note{margin-top:13px;padding:10px 12px;border-radius:10px;background:#f3f7fc;color:#57708f}.assigned-work-detail-head{display:flex;justify-content:space-between;gap:15px;align-items:center}.assigned-work-detail-head h2{margin:3px 0;color:#123f7a}.task-detail-head-actions{display:flex;align-items:center;gap:9px}.assigned-work-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.assigned-work-detail-grid>.card{padding:20px!important}.assigned-work-detail-grid h3{margin:0 0 12px;color:#143f77}.task-detail-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:15px}.task-detail-facts>div{padding:10px;border:1px solid #e0e9f4;border-radius:11px;background:#f8fbff;display:grid;gap:3px}.task-detail-facts span{font-size:10px;color:#78869a;text-transform:uppercase;font-weight:850}.task-detail-timeline{display:grid;gap:9px}.task-detail-timeline article{padding:12px 13px;border:1px solid #dfe8f3;border-radius:12px;background:#fbfdff;display:grid;gap:5px}.task-detail-timeline article span,.task-detail-timeline article small{color:#718198;font-size:12px}.task-detail-timeline article p{margin:3px 0;color:#3d526e;line-height:1.45}
@media(max-width:1100px){.task-monitor-stats{grid-template-columns:repeat(3,1fr)}.task-monitor-facts{grid-template-columns:repeat(3,1fr)}.assigned-work-detail-grid{grid-template-columns:1fr}}
@media(max-width:720px){.task-monitor-hero,.assigned-work-detail-head{align-items:flex-start;flex-direction:column}.task-monitor-filter{align-items:stretch;flex-direction:column}.task-monitor-filter select{min-width:0;width:100%}.task-monitor-stats{grid-template-columns:1fr 1fr}.task-monitor-card>header{flex-direction:column}.task-monitor-badges{justify-content:flex-start}.task-monitor-facts{grid-template-columns:1fr 1fr}.task-rework-review{grid-template-columns:1fr}.task-detail-head-actions{flex-wrap:wrap}.task-detail-facts{grid-template-columns:1fr}}

/* Phase 134: Dynamic daily EOD submission and review */
.eod-daily-submit-card{margin:18px 0}.eod-daily-submit-card .card-head{align-items:flex-start}.eod-daily-status{display:flex;align-items:center;justify-content:flex-end}.eod-daily-metrics{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px;margin:18px 0}.eod-daily-metrics>div{padding:14px 16px;border:1px solid #dce6f4;border-radius:14px;background:#f8fbff}.eod-daily-metrics span{display:block;color:#66758a;font-size:12px;font-weight:700;margin-bottom:7px}.eod-daily-metrics b{font-size:18px;color:#12335f}.eod-daily-form textarea{min-height:190px}.eod-daily-form small{display:block;color:#718096;margin-top:7px;line-height:1.5}.eod-review-comment{margin:14px 0;padding:14px 16px;border-radius:14px;border:1px solid #b9dfc6;background:#f1fbf4}.eod-review-comment.needs-change{border-color:#f0c3a6;background:#fff7ed}.eod-review-comment b{display:block;color:#16375f;margin-bottom:5px}.eod-review-comment p{margin:0;line-height:1.6}.eod-admin-hero{display:flex;align-items:center;justify-content:space-between;gap:20px}.eod-admin-hero h2{margin:4px 0 8px}.eod-admin-hero p{margin:0;max-width:720px}.eod-review-summary-grid{margin-top:18px}.daily-eod-review-table{min-width:1350px}.eod-mini-counts{display:grid;gap:5px}.eod-mini-counts span{white-space:nowrap;font-size:12px;color:#64748b}.eod-mini-counts b{color:#17365d}.eod-summary-cell{min-width:310px;max-width:430px;white-space:normal;line-height:1.55}.eod-inline-review-form{margin-top:10px;display:grid;gap:8px;min-width:240px}.eod-inline-review-form textarea{min-height:70px;padding:9px 10px;font-size:12px}.eod-inline-review-form>div{display:flex;gap:7px;flex-wrap:wrap}.eod-detail-hero{display:flex;align-items:center;justify-content:space-between;gap:18px}.eod-detail-hero h2{margin:5px 0}.eod-detail-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.eod-overall-summary{padding:18px;border:1px solid #dce6f4;background:#f8fbff;border-radius:14px;line-height:1.7;white-space:normal}.eod-session-timeline{display:grid;gap:12px}.eod-session-timeline article{padding:14px 16px;border:1px solid #dce6f4;border-radius:14px;background:#fff}.eod-session-timeline article>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.eod-session-timeline p{margin:8px 0;line-height:1.55}.eod-session-timeline small{color:#64748b}.eod-detail-stats{margin-top:18px}
@media(max-width:1100px){.eod-daily-metrics{grid-template-columns:repeat(3,1fr)}.eod-admin-hero,.eod-detail-hero{align-items:flex-start;flex-direction:column}}
@media(max-width:680px){.eod-daily-metrics{grid-template-columns:repeat(2,1fr)}.eod-daily-metrics>div{padding:12px}.eod-inline-review-form{min-width:210px}}

/* Phase 142: Live chat dropdown arrow alignment correction. */
.chat-header-pro{padding:20px 22px}
.chat-thread{padding:22px}
.chat-composer{padding:16px 18px}
.message{align-items:flex-start;gap:10px}
.message.other .msg-bubble,
.message.mine .msg-bubble{padding:14px 50px 30px 16px!important}
.message-menu-trigger{
  position:absolute!important;
  top:10px!important;
  right:10px!important;
  left:auto!important;
  width:30px;
  height:30px;
  margin:0;
  padding:0;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid transparent;
  border-radius:50%;
  background:transparent;
  color:#526277;
  font-size:0;
  line-height:0;
  opacity:0;
  cursor:pointer;
  z-index:6;
  appearance:none;
  -webkit-appearance:none;
}
.message-menu-trigger svg{
  display:block;
  width:16px;
  height:16px;
  overflow:visible;
  pointer-events:none;
}
.message-menu-trigger svg path{
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.message:hover .message-menu-trigger,
.message:focus-within .message-menu-trigger,
.message-menu-trigger:focus-visible{opacity:1}
.message-menu-trigger:hover,.message-menu-trigger:focus-visible{
  background:#e8eef6;
  border-color:#cbd8e7;
  color:#0b3d82;
  outline:none;
}
.message.mine .message-menu-trigger{
  right:10px!important;
  left:auto!important;
}
.msg-meta-pro,.sender-name-line,.sender-detail-line{min-width:0}
.sender-name-line{padding-right:2px}
.sender-name-line b,.message-text{overflow-wrap:anywhere}

@media(max-width:700px){
  .chat-header-pro{padding:14px 15px;gap:10px}
  .chat-thread{padding:14px 12px}
  .chat-composer{padding:12px}
  .message{max-width:96%;gap:8px;margin-bottom:14px}
  .msg-avatar{width:36px;height:36px;border-radius:12px;font-size:13px;margin-top:2px}
  .message.other .msg-bubble,
  .message.mine .msg-bubble{padding:12px 44px 28px 13px!important}
  .message-menu-trigger,
  .message.mine .message-menu-trigger{top:7px!important;right:7px!important;left:auto!important;width:28px;height:28px;opacity:1}
  .message-menu-trigger svg{width:15px;height:15px}
  .msg-footer{right:10px;bottom:6px}
}

/* Phase 144: Keep the live-chat dropdown arrow on the right side with safe content spacing. */
.message.other .msg-bubble,
.message.mine .msg-bubble{
  padding:14px 50px 30px 16px!important;
}
.message-menu-trigger,
.message.mine .message-menu-trigger{
  top:10px!important;
  right:10px!important;
  left:auto!important;
}
@media(max-width:700px){
  .message.other .msg-bubble,
  .message.mine .msg-bubble{
    padding:12px 44px 28px 13px!important;
  }
  .message-menu-trigger,
  .message.mine .message-menu-trigger{
    top:7px!important;
    right:7px!important;
    left:auto!important;
  }
}

/* Phase 157: Global S Panel SweetAlert-style dialogs (offline, all CRM pages). */
.crm-swal-open { overflow: hidden; }
.crm-swal-overlay {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: grid;
  place-items: center;
  padding: 22px;
  background: rgba(15, 23, 42, .56);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  opacity: 0;
  visibility: hidden;
  transition: opacity .17s ease, visibility .17s ease;
}
.crm-swal-overlay.is-visible { opacity: 1; visibility: visible; }
.crm-swal-popup {
  width: min(430px, 100%);
  border: 1px solid rgba(148, 163, 184, .25);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 28px 80px rgba(15, 23, 42, .28);
  padding: 30px 28px 25px;
  text-align: center;
  transform: translateY(14px) scale(.96);
  transition: transform .18s cubic-bezier(.2,.8,.2,1);
}
.crm-swal-overlay.is-visible .crm-swal-popup { transform: translateY(0) scale(1); }
.crm-swal-icon {
  width: 68px;
  height: 68px;
  margin: 0 auto 17px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  border: 2px solid currentColor;
}
.crm-swal-icon svg { width: 35px; height: 35px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.crm-swal-success .crm-swal-icon { color: #16a34a; background: #f0fdf4; }
.crm-swal-error .crm-swal-icon { color: #dc2626; background: #fef2f2; }
.crm-swal-warning .crm-swal-icon { color: #d97706; background: #fffbeb; }
.crm-swal-question .crm-swal-icon { color: #2563eb; background: #eff6ff; }
.crm-swal-info .crm-swal-icon { color: #0f766e; background: #f0fdfa; }
.crm-swal-title { margin: 0; color: #0f172a; font-size: 1.32rem; line-height: 1.3; font-weight: 750; }
.crm-swal-text { margin: 10px auto 0; max-width: 350px; color: #64748b; font-size: .96rem; line-height: 1.65; white-space: pre-line; }
.crm-swal-input {
  width: 100%;
  min-height: 46px;
  margin-top: 18px;
  border: 1px solid #cbd5e1;
  border-radius: 12px;
  padding: 11px 13px;
  background: #fff;
  color: #0f172a;
  font: inherit;
  outline: none;
  resize: vertical;
}
textarea.crm-swal-input { min-height: 100px; }
.crm-swal-input:focus { border-color: #2563eb; box-shadow: 0 0 0 4px rgba(37,99,235,.12); }
.crm-swal-input.is-invalid { border-color: #dc2626; box-shadow: 0 0 0 4px rgba(220,38,38,.1); }
.crm-swal-validation { margin: 8px 0 0; color: #b91c1c; font-size: .86rem; font-weight: 650; }
.crm-swal-actions { display: flex; justify-content: center; gap: 11px; margin-top: 24px; }
.crm-swal-btn {
  min-width: 112px;
  min-height: 44px;
  border: 0;
  border-radius: 12px;
  padding: 10px 18px;
  font: inherit;
  font-weight: 700;
  cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}
.crm-swal-btn:hover { transform: translateY(-1px); }
.crm-swal-btn:focus-visible { outline: 3px solid rgba(37, 99, 235, .22); outline-offset: 2px; }
.crm-swal-confirm { color: #fff; background: #2563eb; box-shadow: 0 9px 20px rgba(37, 99, 235, .25); }
.crm-swal-confirm:hover { background: #1d4ed8; }
.crm-swal-confirm.is-danger { background: #dc2626; box-shadow: 0 9px 20px rgba(220, 38, 38, .22); }
.crm-swal-confirm.is-danger:hover { background: #b91c1c; }
.crm-swal-cancel { color: #334155; background: #eef2f7; }
.crm-swal-cancel:hover { background: #e2e8f0; }
.crm-swal-toast-stack {
  position: fixed;
  top: 18px;
  right: 18px;
  z-index: 100001;
  width: min(380px, calc(100vw - 28px));
  display: grid;
  gap: 10px;
  pointer-events: none;
}
.crm-swal-toast {
  display: grid;
  grid-template-columns: 36px minmax(0,1fr) 26px;
  align-items: center;
  gap: 11px;
  min-height: 66px;
  padding: 12px 12px 12px 14px;
  border: 1px solid #e2e8f0;
  border-left: 4px solid #16a34a;
  border-radius: 15px;
  background: rgba(255,255,255,.98);
  box-shadow: 0 18px 45px rgba(15,23,42,.18);
  color: #1e293b;
  transform: translateX(28px);
  opacity: 0;
  pointer-events: auto;
  transition: transform .18s ease, opacity .18s ease;
}
.crm-swal-toast.is-visible { transform: translateX(0); opacity: 1; }
.crm-swal-toast-error { border-left-color: #dc2626; }
.crm-swal-toast-warning { border-left-color: #d97706; }
.crm-swal-toast-info { border-left-color: #0f766e; }
.crm-swal-toast-icon { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: #f0fdf4; color: #16a34a; }
.crm-swal-toast-error .crm-swal-toast-icon { background: #fef2f2; color: #dc2626; }
.crm-swal-toast-warning .crm-swal-toast-icon { background: #fffbeb; color: #d97706; }
.crm-swal-toast-info .crm-swal-toast-icon { background: #f0fdfa; color: #0f766e; }
.crm-swal-toast-icon svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.crm-swal-toast-copy { font-size: .91rem; font-weight: 650; line-height: 1.45; overflow-wrap: anywhere; }
.crm-swal-toast button { border: 0; background: transparent; color: #94a3b8; font-size: 22px; cursor: pointer; line-height: 1; padding: 2px; }
.crm-swal-toast button:hover { color: #334155; }
@media (max-width: 600px) {
  .crm-swal-overlay { padding: 16px; align-items: end; }
  .crm-swal-popup { border-radius: 22px 22px 18px 18px; padding: 26px 20px 20px; }
  .crm-swal-actions { flex-direction: column-reverse; }
  .crm-swal-btn { width: 100%; }
  .crm-swal-toast-stack { top: 12px; right: 12px; width: calc(100vw - 24px); }
}


/* Phase 158: verified SweetAlert test page and popup layering. */
.crm-swal-overlay { z-index: 2147483000; }
.crm-swal-toast-stack { z-index: 2147483001; }
.swal-test-page {
  min-height: 100vh;
  margin: 0;
  display: grid;
  place-items: center;
  padding: 24px;
  background: linear-gradient(145deg, #eef5ff 0%, #f8fbff 52%, #edf9f2 100%);
  color: #0f172a;
}
.swal-test-card {
  width: min(720px, 100%);
  border: 1px solid #dbe7f7;
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(15, 52, 96, .14);
  padding: clamp(24px, 5vw, 42px);
  text-align: center;
}
.swal-test-card h1 { margin: 0 0 10px; font-size: clamp(1.7rem, 4vw, 2.35rem); }
.swal-test-card p { margin: 0 auto 22px; max-width: 590px; color: #64748b; line-height: 1.65; }
.swal-test-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.swal-test-status { margin-top: 18px; font-weight: 700; color: #047857; }

/* Phase 160: Client Priority Management — no amounts, separated lists */
.client-priority-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;background:linear-gradient(135deg,#ffffff 0%,#f3f7ff 100%);border:1px solid #dce7f6}
.client-priority-hero h2{margin:4px 0 8px;font-size:clamp(24px,3vw,34px);color:#153d70}
.client-priority-hero p{margin:0;color:#66758a;max-width:760px;line-height:1.6}
.client-priority-rule{min-width:285px;display:grid;gap:9px;padding:16px 18px;border:1px solid #d7e2f1;border-radius:14px;background:#fff;box-shadow:0 10px 28px rgba(35,67,113,.08)}
.client-priority-rule>b{color:#173f73}.client-priority-rule span{font-size:13px;color:#64748b}.client-priority-rule strong{margin-right:4px}
.cp-text-high{color:#b91c1c}.cp-text-medium{color:#c2410c}.cp-text-low{color:#15803d}
.cp-stat-link{text-decoration:none;color:inherit;transition:transform .18s ease,box-shadow .18s ease}.cp-stat-link:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(25,58,105,.12)}
.cp-stat-dot{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;font-weight:800;font-size:18px}
.cp-stat-dot.high{background:#fee2e2;color:#b91c1c}.cp-stat-dot.medium{background:#ffedd5;color:#c2410c}.cp-stat-dot.low{background:#dcfce7;color:#15803d}.cp-stat-dot.total{background:#dbeafe;color:#1d4ed8}
.cp-editor{scroll-margin-top:20px}.cp-form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.cp-filter-card{padding-bottom:14px}.cp-filter-grid{display:grid;grid-template-columns:minmax(230px,2fr) repeat(3,minmax(150px,1fr)) auto auto;gap:10px;align-items:end;margin:14px 0 0}.cp-filter-grid-simple{margin-bottom:0}
.cp-list-head{align-items:center}.cp-table td small{display:block;margin-top:5px;color:#718096;line-height:1.35}.cp-table th{white-space:nowrap}.cp-table td{vertical-align:top}
.cp-priority-sections{display:grid;gap:18px}.cp-priority-section{padding:0;overflow:hidden;border-width:1px;border-style:solid}.cp-section-high{border-color:#fecaca}.cp-section-medium{border-color:#fed7aa}.cp-section-low{border-color:#bbf7d0}
.cp-section-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border-bottom:1px solid #e5eaf1}.cp-section-high .cp-section-head{background:#fff7f7}.cp-section-medium .cp-section-head{background:#fffaf4}.cp-section-low .cp-section-head{background:#f7fff9}
.cp-section-title-wrap{display:flex;align-items:center;gap:13px;min-width:0}.cp-section-title-wrap h2{margin:0 0 4px;font-size:20px;color:#173f73}.cp-section-title-wrap p{margin:0;color:#6b7b91;font-size:13px;line-height:1.45}.cp-section-count{white-space:nowrap;background:#fff;border:1px solid #dfe6ef;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:800;color:#47617f}
.cp-priority-row{border-left:4px solid transparent}.cp-row-high{border-left-color:#dc2626}.cp-row-medium{border-left-color:#f97316}.cp-row-low{border-left-color:#16a34a}
.cp-priority-badge{display:inline-flex;align-items:center;justify-content:center;min-width:78px;padding:7px 11px;border-radius:999px;font-weight:800;font-size:12px;letter-spacing:.02em}
.cp-priority-badge.high{background:#fee2e2;color:#b91c1c}.cp-priority-badge.medium{background:#ffedd5;color:#c2410c}.cp-priority-badge.low{background:#dcfce7;color:#15803d}
.cp-overdue{color:#c62828}.cp-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.cp-actions form{margin:0}.cp-empty{padding:34px;text-align:center;display:grid;gap:7px;color:#68758a}.cp-empty b{font-size:17px;color:#1f3f6d}
@media(max-width:1100px){.cp-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-priority-hero{align-items:flex-start}.client-priority-rule{min-width:250px}}
@media(max-width:720px){.client-priority-hero{flex-direction:column}.client-priority-rule{width:100%;min-width:0}.cp-filter-grid{grid-template-columns:1fr}.client-priority-stats{grid-template-columns:1fr 1fr}.cp-form-actions .btn{width:100%;text-align:center}.cp-section-head{align-items:flex-start}.cp-section-title-wrap{align-items:flex-start}.cp-section-count{margin-top:2px}}
@media(max-width:520px){.client-priority-stats{grid-template-columns:1fr}.cp-stat-link{min-height:auto}.cp-section-head{flex-direction:column}.cp-section-title-wrap{flex-direction:column}.cp-section-count{align-self:flex-start}}

/* Phase 163: Client Priority typing-style client/project picker */
.cp-typeahead{position:relative}
.cp-typeahead-control{position:relative}
.cp-typeahead-control .input{width:100%;padding-right:46px}
.cp-typeahead-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:0;border-radius:9px;background:#eef4ff;color:#315a91;font-size:22px;line-height:1;display:grid;place-items:center;cursor:pointer}
.cp-typeahead-clear:hover{background:#dce9ff;color:#143f78}
.cp-typeahead-clear[hidden]{display:none}
.cp-typeahead-menu{position:absolute;z-index:80;left:0;right:0;top:calc(100% + 7px);max-height:310px;overflow:auto;padding:7px;background:#fff;border:1px solid #c9d8ec;border-radius:12px;box-shadow:0 16px 38px rgba(29,65,112,.18)}
.cp-typeahead-menu[hidden]{display:none}
.cp-typeahead-option{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:10px 12px;border:0;border-radius:9px;background:transparent;color:#173d6e;text-align:left;cursor:pointer}
.cp-typeahead-option:hover,.cp-typeahead-option.is-active{background:#edf5ff}
.cp-typeahead-option strong{font-size:14px;line-height:1.35}
.cp-typeahead-option span{font-size:12px;color:#6a788c;line-height:1.35}
.cp-typeahead-empty{padding:12px;color:#718096;font-size:13px;text-align:center}
@media(max-width:720px){.cp-typeahead-menu{max-height:250px}.cp-typeahead-option{padding:11px}}


/* Phase 166: user-friendly notification Mark All Read button */
.notification-mark-all-form{position:relative;z-index:3;margin:0;flex-shrink:0}
.notification-mark-all-btn{
  min-height:50px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:7px 15px 7px 8px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:15px;
  background:rgba(255,255,255,.96);
  color:#0b356f;
  box-shadow:0 10px 24px rgba(3,25,64,.18),inset 0 1px 0 rgba(255,255,255,.9);
  font-family:inherit;
  text-align:left;
  cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease;
}
.notification-mark-all-btn:hover:not(:disabled){
  transform:translateY(-2px);
  background:#fff;
  border-color:#fff;
  box-shadow:0 14px 30px rgba(3,25,64,.24),inset 0 1px 0 rgba(255,255,255,.95);
}
.notification-mark-all-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 7px 16px rgba(3,25,64,.18)}
.notification-mark-all-btn:focus-visible{outline:3px solid rgba(255,255,255,.72);outline-offset:3px}
.notification-mark-all-icon{
  width:36px;
  height:36px;
  flex:0 0 36px;
  display:grid;
  place-items:center;
  border-radius:11px;
  color:#fff;
  background:linear-gradient(135deg,#0755b8,#2f80ed);
  box-shadow:0 7px 14px rgba(7,85,184,.24);
}
.notification-mark-all-icon svg{width:21px;height:21px;display:block}
.employee-hero .notification-mark-all-icon{background:linear-gradient(135deg,#087a3d,#19ad5f);box-shadow:0 7px 14px rgba(8,122,61,.24)}
.notification-mark-all-copy{display:grid;gap:1px;line-height:1.12;white-space:nowrap}
.notification-mark-all-copy strong{font-size:13px;font-weight:800;color:#0b356f}
.notification-mark-all-copy small{font-size:10.5px;font-weight:700;color:#64748b}
.notification-mark-all-btn:disabled{cursor:default;opacity:.78;box-shadow:none;background:rgba(255,255,255,.82)}
.notification-mark-all-btn:disabled .notification-mark-all-icon{background:#94a3b8;box-shadow:none}
.notification-mark-all-btn:disabled .notification-mark-all-copy strong{color:#475569}
@media(max-width:720px){
  .notification-mark-all-form{width:100%}
  .notification-mark-all-btn{width:100%;justify-content:flex-start;padding-right:16px}
}


/* Phase 167: shared pagination for large tables and card lists */
.crm-pagination-hidden,.crm-filter-hidden{display:none!important}
.crm-pagination{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:14px 0 22px;
  padding:12px 14px;
  border:1px solid #dce7f4;
  border-radius:15px;
  background:#fff;
  box-shadow:0 7px 20px rgba(25,58,105,.06);
  color:#45617f;
}
.crm-pagination[hidden]{display:none!important}
.crm-pagination-summary{display:flex;align-items:center;gap:5px;font-size:13px;white-space:nowrap}
.crm-pagination-summary strong{color:#123f77;font-size:14px}
.crm-pagination-tools{display:flex;align-items:center;justify-content:flex-end;gap:14px;min-width:0}
.crm-page-size{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:700;color:#60748d;white-space:nowrap}
.crm-page-size-select{
  min-width:66px;
  height:38px;
  padding:0 28px 0 10px;
  border:1px solid #cfdeed;
  border-radius:10px;
  background:#f8fbff;
  color:#153f73;
  font:inherit;
  font-weight:800;
  cursor:pointer;
}
.crm-pagination-nav,.crm-page-numbers{display:flex;align-items:center;gap:5px}
.crm-page-btn{
  min-width:36px;
  height:36px;
  padding:0 9px;
  display:inline-grid;
  place-items:center;
  border:1px solid #d5e2f0;
  border-radius:10px;
  background:#f8fbff;
  color:#174878;
  font-family:inherit;
  font-size:13px;
  font-weight:800;
  line-height:1;
  cursor:pointer;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.crm-page-btn:hover:not(:disabled){transform:translateY(-1px);background:#eaf3ff;border-color:#a9c9ed;box-shadow:0 5px 12px rgba(31,88,153,.12)}
.crm-page-btn.is-active{background:linear-gradient(135deg,#0b55b5,#247be3);border-color:#0b55b5;color:#fff;box-shadow:0 6px 14px rgba(11,85,181,.23)}
.crm-page-btn:focus-visible,.crm-page-size-select:focus-visible{outline:3px solid rgba(37,121,225,.22);outline-offset:2px}
.crm-page-btn:disabled{cursor:not-allowed;opacity:.42;background:#f4f7fa;box-shadow:none;transform:none}
.crm-page-ellipsis{min-width:24px;text-align:center;color:#8090a4;font-weight:800}
.crm-pagination-single-page .crm-pagination-nav{opacity:.72}
.crm-paginated-list + .crm-pagination{margin-top:12px}
@media(max-width:760px){
  .crm-pagination{align-items:stretch;flex-direction:column;padding:12px;margin-bottom:18px}
  .crm-pagination-tools{justify-content:space-between;gap:10px;flex-wrap:wrap}
  .crm-pagination-nav{max-width:100%;overflow-x:auto;padding-bottom:3px}
  .crm-page-btn{min-width:38px;flex:0 0 38px}
  .crm-pagination-summary{justify-content:center}
}
@media(max-width:460px){
  .crm-pagination-tools{flex-direction:column;align-items:stretch}
  .crm-page-size{justify-content:center}
  .crm-pagination-nav{justify-content:flex-start}
}
.crm-pagination-compact{align-items:stretch;flex-direction:column;gap:9px;padding:10px;margin:10px 0 14px}
.crm-pagination-compact .crm-pagination-summary{justify-content:center}
.crm-pagination-compact .crm-pagination-tools{justify-content:center}
.crm-pagination-compact .crm-page-size,.crm-pagination-compact .crm-page-edge{display:none}
.crm-pagination-compact .crm-pagination-nav{justify-content:center;max-width:100%;overflow-x:auto}


/* Phase 170: compact Client Priority form spacing and alignment */
.cp-editor{padding:20px!important}
.cp-editor>.card-head{margin-bottom:14px;align-items:flex-start}
.cp-editor>.card-head .section-title{margin-bottom:0}
.cp-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 14px;align-items:start}
.cp-form-grid .field{min-width:0;margin:0}
.cp-form-grid .field label{margin-bottom:6px;font-size:12.5px;color:#173b6d;font-weight:700}
.cp-form-grid .input,.cp-form-grid select,.cp-form-grid textarea{min-height:44px;padding:10px 12px;border-radius:12px;background:#fbfdff}
.cp-form-grid textarea{min-height:78px;resize:vertical}
.cp-form-grid .cp-remarks-field{grid-column:2/-1}
.cp-form-grid .cp-form-actions{grid-column:1/-1;margin-top:2px;padding-top:2px}
.cp-form-grid .cp-form-actions .btn{min-height:42px;padding:10px 16px}
@media(max-width:1100px){
  .cp-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cp-form-grid .cp-remarks-field{grid-column:1/-1}
}
@media(max-width:720px){
  .cp-editor{padding:16px!important}
  .cp-editor>.card-head{margin-bottom:12px}
  .cp-form-grid{grid-template-columns:1fr;gap:11px}
  .cp-form-grid .cp-remarks-field,.cp-form-grid .cp-form-actions{grid-column:1}
  .cp-form-grid .cp-form-actions{display:grid}
  .cp-form-grid .cp-form-actions .btn{width:100%;text-align:center}
}


/* Phase 171: responsive layouts for Pixel 7, iPad Mini, iPad Air and iPad Pro */
.sidebar-close-button{
  display:none;
  position:absolute;
  top:max(14px,env(safe-area-inset-top));
  right:14px;
  z-index:3;
  width:42px;
  height:42px;
  padding:0;
  border:1px solid rgba(255,255,255,.24);
  border-radius:13px;
  background:rgba(255,255,255,.12);
  color:#fff;
  cursor:pointer;
  place-items:center;
}
.sidebar-close-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
.crm-nav-toggle{
  display:none;
  min-height:44px;
  align-items:center;
  justify-content:center;
  gap:9px;
  padding:8px 13px;
  border:1px solid #bfd5ee;
  border-radius:13px;
  background:#f7fbff;
  color:#0b427f;
  box-shadow:0 6px 16px rgba(15,65,120,.08);
  font:inherit;
  font-size:13px;
  font-weight:800;
  cursor:pointer;
}
.crm-nav-toggle-icon{width:20px;height:16px;display:flex;flex-direction:column;justify-content:space-between}
.crm-nav-toggle-icon span{display:block;width:100%;height:2px;border-radius:999px;background:currentColor;transition:transform .2s ease,opacity .2s ease}
.crm-nav-toggle.is-open .crm-nav-toggle-icon span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.crm-nav-toggle.is-open .crm-nav-toggle-icon span:nth-child(2){opacity:0}
.crm-nav-toggle.is-open .crm-nav-toggle-icon span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.crm-nav-toggle:focus-visible,.sidebar-close-button:focus-visible{outline:3px solid rgba(59,130,246,.28);outline-offset:2px}

@media(max-width:1180px){
  .sidebar{
    width:min(330px,88vw)!important;
    transform:translateX(calc(-100% - 24px));
    transition:transform .24s ease;
    z-index:1000!important;
    padding-top:max(22px,env(safe-area-inset-top));
    padding-bottom:max(22px,env(safe-area-inset-bottom));
    box-shadow:20px 0 55px rgba(2,12,27,.30)!important;
    overscroll-behavior:contain;
  }
  .sidebar.open{transform:translateX(0)!important}
  .sidebar .brand{padding-right:48px}
  .sidebar-close-button{display:grid}
  .sidebar-backdrop{z-index:990!important}
  .main{margin-left:0!important;width:100%!important;padding:clamp(12px,2vw,20px)!important;min-width:0}
  .mobile-toggle,.crm-nav-toggle{display:inline-flex!important}
  .topbar{
    position:sticky;
    top:8px;
    z-index:80;
    min-height:72px;
    padding:13px 16px;
    gap:14px;
    margin-bottom:16px;
  }
  .topbar>div:first-child{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;align-items:center;min-width:0}
  .topbar>div:first-child .crm-nav-toggle{grid-row:1/3;grid-column:1}
  .topbar>div:first-child .eyebrow{grid-column:2;margin:0 0 2px;min-width:0}
  .topbar>div:first-child h1{grid-column:2;margin:0;min-width:0;font-size:clamp(21px,3vw,25px);overflow-wrap:anywhere}
  .topbar-actions{min-width:0;flex-wrap:nowrap}
  .user-pill{min-width:0;max-width:260px}
  .user-pill>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .grid-4,.grid-3,.grid-2,.form-grid,.process-grid,.workflow-board{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .cp-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .cp-form-grid .cp-remarks-field{grid-column:1/-1!important}
  .table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
  .table-wrap table{width:max-content;min-width:100%}
  .btn,button,input,select,textarea{touch-action:manipulation}
  .btn{min-height:42px}
  .menu a,.menu-group-toggle{touch-action:manipulation}
}

@media(min-width:1181px){
  .sidebar{transform:none!important}
  .sidebar[aria-hidden="true"]{visibility:visible}
}

/* iPad Mini, Air and Pro portrait/tablet widths */
@media(min-width:601px) and (max-width:1180px){
  .card{padding:clamp(17px,2.2vw,22px)}
  .hero-card{padding:clamp(21px,3vw,28px)}
  .hero-card h2{font-size:clamp(25px,3.5vw,30px)}
  .client-priority-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .cp-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .crm-pagination{gap:12px}
}

/* Pixel 7 and other phone widths */
@media(max-width:600px){
  .main{padding:10px!important}
  .topbar{position:sticky;top:6px;padding:11px 12px;border-radius:16px;flex-wrap:wrap;align-items:center}
  .topbar>div:first-child{width:100%}
  .topbar>div:first-child h1{font-size:20px;line-height:1.2}
  .topbar>div:first-child .eyebrow{font-size:9px;letter-spacing:.12em}
  .topbar-actions{width:100%;justify-content:space-between;gap:9px}
  .notif-bell{width:42px;height:42px;border-radius:13px;flex:0 0 42px}
  .user-pill{flex:1;max-width:none;justify-content:space-between;padding:8px 10px;font-size:12px}
  .user-pill .role{padding:4px 7px;font-size:10px}
  .crm-nav-toggle{min-height:42px;padding:7px 10px}
  .crm-nav-toggle-label{font-size:12px}
  .grid-4,.grid-3,.grid-2,.form-grid,.process-grid,.workflow-board,.cp-form-grid{grid-template-columns:1fr!important}
  .card{padding:14px;border-radius:16px;margin-bottom:13px}
  .card-head{align-items:flex-start;flex-direction:column;gap:9px;margin-bottom:11px}
  .section-title{font-size:19px}
  .hero-card{padding:19px;border-radius:18px;gap:12px}
  .hero-card h2{font-size:24px;line-height:1.18}
  .hero-card p{font-size:13px;line-height:1.5}
  .hero-actions,.hero-actions .btn{width:100%}
  .hero-actions .btn{text-align:center}
  .grid{gap:12px}
  .input,select,textarea{font-size:16px} /* prevents iOS zoom and improves touch entry */
  .cp-editor{padding:14px!important}
  .cp-form-grid .cp-remarks-field,.cp-form-grid .cp-form-actions{grid-column:1!important}
  .cp-filter-grid,.client-priority-stats{grid-template-columns:1fr!important}
  .cp-section-head{padding:14px;gap:10px}
  .cp-actions,.cp-actions .btn,.cp-actions form,.cp-actions form .btn{width:100%}
  .crm-pagination{padding:10px;border-radius:13px}
  .crm-pagination-tools{width:100%}
  .crm-pagination-nav{width:100%}
}

@media(max-width:390px){
  .crm-nav-toggle-label{display:none}
  .crm-nav-toggle{width:42px;padding:0}
  .topbar>div:first-child{column-gap:9px}
  .role{display:none}
}

@media(orientation:landscape) and (max-height:600px) and (max-width:1180px){
  .sidebar{padding-top:14px;padding-bottom:14px}
  .sidebar .brand{margin-bottom:12px}
  .sidebar.crm-pro-sidebar .menu-group.is-open>.menu-submenu{max-height:48vh!important}
}

/* Phase 172: place the responsive menu toggle in the top-right action area */
@media(max-width:1180px){
  .topbar>div:first-child{
    display:block!important;
    min-width:0;
    flex:1 1 auto;
  }
  .topbar>div:first-child .eyebrow{margin:0 0 3px!important}
  .topbar>div:first-child h1{margin:0!important}
  .topbar-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:10px!important;
    margin-left:auto!important;
  }
  .topbar-actions .crm-nav-toggle{
    order:99;
    flex:0 0 auto;
    margin-left:2px;
  }
}

@media(max-width:600px){
  .topbar{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:start!important;
    gap:10px 12px!important;
  }
  .topbar>div:first-child{
    grid-column:1;
    grid-row:1;
    width:auto!important;
    min-width:0;
    padding-top:2px;
  }
  .topbar>div:first-child h1{
    font-size:20px!important;
    line-height:1.18!important;
    overflow-wrap:anywhere;
  }
  .topbar-actions{
    grid-column:1 / -1;
    grid-row:2;
    width:100%!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    align-items:center!important;
    justify-content:stretch!important;
    gap:9px!important;
    margin:0!important;
  }
  .topbar-actions .notif-bell,
  .topbar-actions .employee-gate-top-pill{grid-column:1}
  .topbar-actions .user-pill{grid-column:2;min-width:0;width:100%!important}
  .topbar-actions .crm-nav-toggle{
    grid-column:3;
    order:initial;
    width:44px!important;
    min-width:44px!important;
    height:44px!important;
    min-height:44px!important;
    padding:0!important;
    border-radius:13px!important;
  }
  .topbar-actions .crm-nav-toggle-label{display:none!important}
  .topbar-actions .crm-nav-toggle-icon{width:19px;height:15px}
}

@media(max-width:390px){
  .topbar{padding:10px!important}
  .topbar-actions{gap:7px!important}
  .topbar-actions .crm-nav-toggle{width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important}
}

/* Phase 173: Mobile/tablet sidebar overlay clarity fix.
   Keep the page visible behind the open sidebar without any blur effect. */
.sidebar-backdrop{
  background:rgba(2,12,27,.42)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.sidebar-mobile-open .main,
body.sidebar-mobile-open .topbar,
body.sidebar-mobile-open .page-content,
body.sidebar-mobile-open .content{
  filter:none!important;
  -webkit-filter:none!important;
}
@media(max-width:1180px){
  .sidebar-backdrop.show{
    display:block;
    opacity:1;
  }
}

/* Phase 174: final responsive sidebar drawer QA fix */
@media (max-width:1180px){
  html,body{max-width:100%;overflow-x:hidden}
  body.sidebar-mobile-open{overflow:hidden!important;overscroll-behavior:none}

  .sidebar.crm-pro-sidebar{
    position:fixed!important;
    inset:0 auto 0 0!important;
    top:0!important;
    left:0!important;
    bottom:0!important;
    width:min(360px,82vw)!important;
    max-width:360px!important;
    height:100vh!important;
    height:100dvh!important;
    max-height:100dvh!important;
    padding:max(18px,env(safe-area-inset-top)) 14px max(18px,env(safe-area-inset-bottom))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch;
    transform:translate3d(-106%,0,0)!important;
    transition:transform .24s cubic-bezier(.22,.61,.36,1)!important;
    z-index:5000!important;
    box-shadow:22px 0 55px rgba(2,12,27,.30)!important;
    isolation:isolate;
  }
  .sidebar.crm-pro-sidebar.open{transform:translate3d(0,0,0)!important}
  .sidebar.crm-pro-sidebar .brand{
    position:relative;
    min-height:66px;
    margin:0 0 16px!important;
    padding:5px 54px 13px 5px!important;
    border-bottom:1px solid rgba(255,255,255,.12);
  }
  .sidebar.crm-pro-sidebar .menu{padding-bottom:18px}
  .sidebar.crm-pro-sidebar .menu-title{margin-top:12px!important}

  .sidebar-close-button{
    display:grid!important;
    position:absolute!important;
    top:max(15px,env(safe-area-inset-top))!important;
    right:14px!important;
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
    z-index:5010!important;
    border-radius:13px!important;
    background:rgba(255,255,255,.15)!important;
    border:1px solid rgba(255,255,255,.24)!important;
    color:#fff!important;
    box-shadow:0 8px 20px rgba(0,0,0,.12)!important;
  }
  .sidebar-close-button:hover{background:rgba(255,255,255,.23)!important}

  .sidebar-backdrop{
    display:block!important;
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100vh!important;
    height:100dvh!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:rgba(2,12,27,.46)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:opacity .2s ease,visibility .2s ease!important;
    z-index:4900!important;
  }
  .sidebar-backdrop.show{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  .main{min-width:0!important}
  .topbar{z-index:100!important}

  /* Keep the header button as a menu icon; the drawer has its own close button. */
  .crm-nav-toggle.is-open .crm-nav-toggle-icon span:nth-child(1),
  .crm-nav-toggle.is-open .crm-nav-toggle-icon span:nth-child(2),
  .crm-nav-toggle.is-open .crm-nav-toggle-icon span:nth-child(3){
    transform:none!important;
    opacity:1!important;
  }
  .crm-nav-toggle.is-open .crm-nav-toggle-label{font-size:0!important}
  .crm-nav-toggle.is-open .crm-nav-toggle-label::after{content:'Menu';font-size:12px}
}

/* Phones: use a proper full-screen navigation sheet so the page does not look split. */
@media (max-width:600px){
  .sidebar.crm-pro-sidebar{
    width:100vw!important;
    max-width:none!important;
    box-shadow:none!important;
    padding-left:14px!important;
    padding-right:14px!important;
  }
  .sidebar-backdrop{background:transparent!important}
  .sidebar.crm-pro-sidebar .brand{padding-right:58px!important}
  .sidebar.crm-pro-sidebar .menu-group.is-open>.menu-submenu{
    max-height:none!important;
    overflow:visible!important;
  }
}

/* Small landscape phones: keep the drawer scrollable and controls reachable. */
@media (max-width:900px) and (max-height:520px) and (orientation:landscape){
  .sidebar.crm-pro-sidebar{width:min(360px,72vw)!important;max-width:360px!important}
  .sidebar.crm-pro-sidebar .brand{min-height:54px;margin-bottom:10px!important}
  .sidebar.crm-pro-sidebar .menu-group.is-open>.menu-submenu{max-height:62vh!important;overflow-y:auto!important}
}


/* Phase 176: keep grouped-menu chevrons close to their labels. */
.sidebar.crm-pro-sidebar .menu-group-toggle{
  justify-content:flex-start;
}
.sidebar.crm-pro-sidebar .menu-group-toggle .menu-text{
  flex:0 1 auto!important;
  min-width:0;
  max-width:calc(100% - 76px);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.sidebar.crm-pro-sidebar .menu-group-toggle .menu-group-chevron{
  margin-left:4px;
  width:26px;
  height:26px;
  flex:0 0 26px;
  border-radius:9px;
}
.sidebar.crm-pro-sidebar .menu-group-toggle .menu-group-chevron svg{
  width:15px;
  height:15px;
}
@media(max-width:820px){
  .sidebar.crm-pro-sidebar .menu-group-toggle{
    gap:9px;
    padding-left:11px;
    padding-right:11px;
  }
  .sidebar.crm-pro-sidebar .menu-group-toggle .menu-group-chevron{
    margin-left:3px;
    width:25px;
    height:25px;
    flex-basis:25px;
  }
}


/* Phase 177: full-screen phone sidebar with balanced padding and spacing */
@media (max-width:600px){
  html,body,.app{width:100%!important;max-width:100%!important;min-height:100%!important;margin:0!important;overflow-x:hidden!important}

  .sidebar.crm-pro-sidebar{
    inset:0!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    width:100vw!important;
    min-width:100vw!important;
    max-width:100vw!important;
    height:100vh!important;
    height:100dvh!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    padding:max(12px,env(safe-area-inset-top)) 12px max(16px,env(safe-area-inset-bottom))!important;
    box-shadow:none!important;
    background:linear-gradient(180deg,#071f49 0%,#075db8 100%)!important;
  }
  .sidebar.crm-pro-sidebar.emp-sidebar{
    background:linear-gradient(180deg,#06381d 0%,#0d7d42 100%)!important;
  }

  .sidebar.crm-pro-sidebar .brand{
    position:sticky!important;
    top:calc(-1 * max(12px,env(safe-area-inset-top)))!important;
    z-index:6!important;
    width:calc(100% + 24px)!important;
    min-height:70px!important;
    margin:calc(-1 * max(12px,env(safe-area-inset-top))) -12px 12px!important;
    padding:max(14px,env(safe-area-inset-top)) 62px 12px 16px!important;
    border-bottom:1px solid rgba(255,255,255,.14)!important;
    background:linear-gradient(180deg,rgba(7,31,73,.98),rgba(7,48,104,.96))!important;
    box-shadow:0 8px 18px rgba(2,12,27,.14)!important;
    backdrop-filter:none!important;
  }
  .sidebar.crm-pro-sidebar.emp-sidebar .brand{
    background:linear-gradient(180deg,rgba(6,56,29,.98),rgba(8,91,48,.96))!important;
  }
  .sidebar.crm-pro-sidebar .brand-logo.brand-logo-image{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    border-radius:14px!important;
  }
  .sidebar.crm-pro-sidebar .brand-logo.brand-logo-image img{
    width:46px!important;
    height:46px!important;
  }
  .sidebar.crm-pro-sidebar .brand h2{font-size:18px!important;line-height:1.15!important}
  .sidebar.crm-pro-sidebar .brand p{font-size:11px!important;margin-top:3px!important}

  .sidebar-close-button{
    position:fixed!important;
    top:max(14px,env(safe-area-inset-top))!important;
    right:14px!important;
    z-index:5020!important;
  }

  .sidebar.crm-pro-sidebar .menu{
    width:100%!important;
    padding:0 2px 18px!important;
  }
  .sidebar.crm-pro-sidebar .menu-title{
    margin:5px 8px 9px!important;
    font-size:10px!important;
    line-height:1.2!important;
  }

  .sidebar.crm-pro-sidebar .menu>a,
  .sidebar.crm-pro-sidebar .menu-logout,
  .sidebar.crm-pro-sidebar .menu-group-toggle{
    width:100%!important;
    min-height:46px!important;
    margin:0 0 7px!important;
    padding:10px 11px!important;
    gap:9px!important;
    border-radius:14px!important;
    font-size:13px!important;
    line-height:1.25!important;
  }
  .sidebar.crm-pro-sidebar .menu>a:hover,
  .sidebar.crm-pro-sidebar .menu>a.active{
    transform:none!important;
  }
  .sidebar.crm-pro-sidebar .menu-group{
    width:100%!important;
    margin:0!important;
  }
  .sidebar.crm-pro-sidebar .menu-group-toggle .menu-text{
    flex:0 1 auto!important;
    max-width:calc(100% - 70px)!important;
  }
  .sidebar.crm-pro-sidebar .menu-group-toggle .menu-group-chevron{
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    flex-basis:24px!important;
    margin-left:3px!important;
    border-radius:8px!important;
  }
  .sidebar.crm-pro-sidebar .menu-group-toggle .menu-group-chevron svg{
    width:14px!important;
    height:14px!important;
  }

  .sidebar.crm-pro-sidebar .menu-group.is-open>.menu-submenu{
    max-height:none!important;
    overflow:visible!important;
    margin:1px 0 8px 17px!important;
    padding:2px 0 2px 10px!important;
  }
  .sidebar.crm-pro-sidebar .menu-submenu a{
    width:100%!important;
    min-height:40px!important;
    margin:2px 0!important;
    padding:8px 9px!important;
    gap:8px!important;
    border-radius:12px!important;
    font-size:12px!important;
  }
  .sidebar.crm-pro-sidebar .menu-submenu a .menu-icon{
    width:25px!important;
    height:25px!important;
    min-width:25px!important;
    border-radius:8px!important;
  }
  .sidebar.crm-pro-sidebar .menu-submenu a .menu-icon svg{
    width:15px!important;
    height:15px!important;
  }
  .sidebar.crm-pro-sidebar .menu-logout{
    margin-top:8px!important;
    padding-top:11px!important;
    border-radius:14px!important;
  }
  .sidebar-backdrop{display:none!important}
}

/* Tablet drawers stay comfortably wide without covering the entire screen. */
@media (min-width:601px) and (max-width:1180px){
  .sidebar.crm-pro-sidebar{
    width:min(380px,78vw)!important;
    max-width:380px!important;
    padding-left:16px!important;
    padding-right:16px!important;
  }
  .sidebar.crm-pro-sidebar .menu>a,
  .sidebar.crm-pro-sidebar .menu-group-toggle{margin-bottom:7px!important}
  .sidebar.crm-pro-sidebar .menu-submenu{margin-left:18px!important}
}

/* Phase 178: final phone sidebar polish and reliable full-height scrolling */
@media (max-width:600px){
  .sidebar.crm-pro-sidebar{
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:calc(28px + env(safe-area-inset-bottom))!important;
  }
  .sidebar.crm-pro-sidebar .menu{
    padding:0 2px calc(34px + env(safe-area-inset-bottom))!important;
  }
  .sidebar.crm-pro-sidebar .menu>a,
  .sidebar.crm-pro-sidebar .menu-logout,
  .sidebar.crm-pro-sidebar .menu-group-toggle{
    min-height:48px!important;
    padding:11px 12px!important;
    margin-bottom:8px!important;
    gap:10px!important;
    font-size:14px!important;
  }
  .sidebar.crm-pro-sidebar .menu-submenu{
    margin:2px 0 10px 14px!important;
    padding:3px 0 3px 9px!important;
  }
  .sidebar.crm-pro-sidebar .menu-submenu a{
    min-height:42px!important;
    padding:9px 10px!important;
    margin:2px 0!important;
    font-size:13px!important;
  }
  .sidebar.crm-pro-sidebar .menu-title{
    margin:7px 8px 10px!important;
  }
  .sidebar-close-button{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    min-height:36px!important;
    border-radius:11px!important;
  }
  .sidebar.crm-pro-sidebar .brand{
    min-height:72px!important;
  }
}

/* Phase 179: compact mobile side drawer — do not cover the full phone screen. */
@media (max-width:600px){
  .sidebar.crm-pro-sidebar{
    inset:auto!important;
    top:0!important;
    right:auto!important;
    bottom:0!important;
    left:0!important;
    width:min(330px,88vw)!important;
    min-width:0!important;
    max-width:330px!important;
    height:100vh!important;
    height:100dvh!important;
    border-right:1px solid rgba(255,255,255,.16)!important;
    border-radius:0 18px 18px 0!important;
    box-shadow:18px 0 42px rgba(2,12,27,.32)!important;
    padding:max(12px,env(safe-area-inset-top)) 12px calc(24px + env(safe-area-inset-bottom))!important;
  }

  .sidebar.crm-pro-sidebar .brand{
    width:calc(100% + 24px)!important;
    margin:calc(-1 * max(12px,env(safe-area-inset-top))) -12px 12px!important;
    padding:max(14px,env(safe-area-inset-top)) 56px 12px 14px!important;
    border-radius:0 18px 0 0!important;
  }

  .sidebar-close-button{
    position:fixed!important;
    top:max(14px,env(safe-area-inset-top))!important;
    left:calc(min(330px,88vw) - 50px)!important;
    right:auto!important;
  }

  .sidebar-backdrop{
    display:block!important;
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100vh!important;
    height:100dvh!important;
    background:rgba(2,12,27,.46)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }

  .sidebar-backdrop.show{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
}

@media (max-width:360px){
  .sidebar.crm-pro-sidebar{
    width:90vw!important;
    max-width:90vw!important;
  }
  .sidebar-close-button{
    left:calc(90vw - 50px)!important;
  }
}

/* Phase 180: consistent grouped-menu arrow alignment and styling. */
.sidebar.crm-pro-sidebar .menu-group-toggle{
  justify-content:flex-start!important;
}
.sidebar.crm-pro-sidebar .menu-group-toggle .menu-text{
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:none!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.sidebar.crm-pro-sidebar .menu-group-toggle .menu-group-chevron,
.sidebar.crm-pro-sidebar .menu-group.is-open>.menu-group-toggle .menu-group-chevron{
  width:25px!important;
  height:25px!important;
  min-width:25px!important;
  flex:0 0 25px!important;
  margin-left:auto!important;
  transform:none!important;
  border:1px solid rgba(255,255,255,.18)!important;
  border-radius:8px!important;
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
  box-shadow:none!important;
}
.sidebar.crm-pro-sidebar .menu-group-toggle .menu-group-chevron svg{
  width:14px!important;
  height:14px!important;
  transform:rotate(0deg)!important;
  transition:transform .2s ease!important;
  animation:none!important;
}
.sidebar.crm-pro-sidebar .menu-group.is-open>.menu-group-toggle .menu-group-chevron svg{
  transform:rotate(180deg)!important;
}
.sidebar.crm-pro-sidebar .menu-group-toggle:hover .menu-group-chevron,
.sidebar.crm-pro-sidebar .menu-group.is-open>.menu-group-toggle .menu-group-chevron{
  background:rgba(255,255,255,.14)!important;
  border-color:rgba(255,255,255,.22)!important;
  color:#fff!important;
}
@media(max-width:600px){
  .sidebar.crm-pro-sidebar .menu-group-toggle{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
  }
  .sidebar.crm-pro-sidebar .menu-group-toggle .menu-group-chevron,
  .sidebar.crm-pro-sidebar .menu-group.is-open>.menu-group-toggle .menu-group-chevron{
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    flex-basis:24px!important;
    margin-left:auto!important;
  }
}



/* Mobile/touch navigation: keep only the group being touched visually selected. */
@media (max-width:1100px), (hover:none){
  .sidebar.crm-pro-sidebar.crm-touch-menu-active .menu > a.active,
  .sidebar.crm-pro-sidebar.crm-touch-menu-active .menu > .menu-group.has-active:not(.crm-touch-selected) > .menu-group-toggle{
    background:transparent!important;
    border-color:transparent!important;
    box-shadow:none!important;
    transform:none!important;
  }

  .sidebar.crm-pro-sidebar.crm-touch-menu-active .menu > a.active::before{
    display:none!important;
  }

  .sidebar.crm-pro-sidebar .menu > .menu-group.crm-touch-selected > .menu-group-toggle{
    background:linear-gradient(135deg,rgba(255,255,255,.20),rgba(255,255,255,.10))!important;
    border-color:rgba(255,255,255,.24)!important;
    box-shadow:inset 3px 0 0 rgba(255,255,255,.82),0 8px 20px rgba(0,0,0,.08)!important;
  }

  .sidebar.crm-pro-sidebar .menu > a:hover:not(.active),
  .sidebar.crm-pro-sidebar .menu-group-toggle:hover{
    transform:none!important;
  }
}


/* Mobile/touch sidebar: show only one selected top-level item.
   CSS :has() fallback prevents Dashboard/Notifications from staying highlighted
   while another grouped menu is open, even if an older JS file is cached. */
@media (max-width:1100px), (hover:none) {
  .sidebar.crm-pro-sidebar .menu:has(> .menu-group.is-open) > a.active {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
    transform: none !important;
  }

  .sidebar.crm-pro-sidebar .menu:has(> .menu-group.is-open) > a.active::before {
    display: none !important;
  }

  .sidebar.crm-pro-sidebar .menu > .menu-group.is-open > .menu-group-toggle {
    background: linear-gradient(135deg,rgba(255,255,255,.20),rgba(255,255,255,.10)) !important;
    border-color: rgba(255,255,255,.24) !important;
    box-shadow: inset 3px 0 0 rgba(255,255,255,.82),0 8px 20px rgba(0,0,0,.08) !important;
  }

  .sidebar.crm-pro-sidebar .menu > .menu-group:not(.is-open) > .menu-group-toggle {
    box-shadow: none;
  }
}


/* Final mobile/tablet single-active sidebar fix.
   When a grouped menu is open, completely suppress the current-page
   top-level link highlight, including icon and left indicator. */
.sidebar.crm-pro-sidebar.crm-single-group-active .menu > a.active {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

.sidebar.crm-pro-sidebar.crm-single-group-active .menu > a.active::before {
  content: none !important;
  display: none !important;
  opacity: 0 !important;
}

.sidebar.crm-pro-sidebar.crm-single-group-active
  .menu > a.active .menu-icon {
  background: rgba(255,255,255,.12) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08) !important;
}

.sidebar.crm-pro-sidebar.crm-single-group-active
  .menu > .menu-group.crm-touch-selected > .menu-group-toggle {
  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,.20),
      rgba(255,255,255,.10)
    ) !important;
  border-color: rgba(255,255,255,.24) !important;
  box-shadow:
    inset 4px 0 0 rgba(255,255,255,.82),
    0 10px 22px rgba(0,0,0,.10) !important;
  transform: none !important;
}

.sidebar.crm-pro-sidebar.crm-single-group-active
  .menu > .menu-group:not(.crm-touch-selected)
  > .menu-group-toggle {
  box-shadow: none;
}


/* Final touch-state fix: no ghost hover and no double selected menu. */
@media (max-width:1100px), (hover:none) {
  .sidebar.crm-pro-sidebar .menu > a.crm-active-suspended,
  .sidebar.crm-pro-sidebar .menu > a.crm-active-suspended:hover {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
    transform: none !important;
  }

  .sidebar.crm-pro-sidebar
    .menu > a.crm-active-suspended::before {
    content: none !important;
    display: none !important;
  }

  .sidebar.crm-pro-sidebar
    .menu > a.crm-active-suspended .menu-icon {
    background: rgba(255,255,255,.12) !important;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,.08) !important;
  }

  .sidebar.crm-pro-sidebar .menu > a:hover:not(.active),
  .sidebar.crm-pro-sidebar
    .menu-group:not(.crm-touch-selected)
    > .menu-group-toggle:hover {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
    transform: none !important;
  }

  .sidebar.crm-pro-sidebar
    .menu-group.crm-touch-selected
    > .menu-group-toggle,
  .sidebar.crm-pro-sidebar
    .menu-group.crm-touch-selected
    > .menu-group-toggle:hover {
    background:
      linear-gradient(
        135deg,
        rgba(255,255,255,.20),
        rgba(255,255,255,.10)
      ) !important;
    border-color: rgba(255,255,255,.24) !important;
    box-shadow:
      inset 4px 0 0 rgba(255,255,255,.82),
      0 10px 22px rgba(0,0,0,.10) !important;
    transform: none !important;
  }
}


/* Phase 149: Management Password Vault */
.management-vault-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;background:linear-gradient(135deg,#f8fafc,#eef2ff);overflow:hidden;position:relative}
.management-vault-hero::after{content:"";position:absolute;width:210px;height:210px;border-radius:50%;right:-70px;top:-95px;background:rgba(79,70,229,.09)}
.management-vault-hero>div,.management-vault-hero>.btn{position:relative;z-index:1}
.management-vault-hero h2{margin:4px 0 8px;font-size:clamp(1.45rem,2.5vw,2.15rem)}
.management-vault-hero p{max-width:760px;margin:0;color:#64748b;line-height:1.7}
.management-vault-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0}
.management-vault-stats .card{display:flex;flex-direction:column;gap:8px;min-height:112px;justify-content:center}
.management-vault-stats span{font-size:.82rem;color:#64748b;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.management-vault-stats strong{font-size:1.5rem;color:#172554}
.management-vault-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.management-vault-form label,.vault-action-details label,.management-vault-reveal-grid label{display:flex;flex-direction:column;gap:7px;font-weight:700;color:#334155}
.management-vault-form input,.management-vault-form select,.management-vault-form textarea,.vault-action-details input,.management-vault-filters input,.management-vault-filters select,.vault-copy-field input{width:100%;border:1px solid #dbe3ef;border-radius:12px;padding:11px 12px;background:#fff;color:#0f172a;font:inherit}
.management-vault-form input:focus,.management-vault-form select:focus,.management-vault-form textarea:focus,.vault-action-details input:focus,.management-vault-filters input:focus,.management-vault-filters select:focus{outline:3px solid rgba(79,70,229,.12);border-color:#6366f1}
.management-vault-form textarea{resize:vertical;min-height:96px}
.vault-wide{grid-column:1/-1}
.vault-password-input{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px}
.vault-password-input button,.vault-copy-field button{border:0;border-radius:10px;padding:0 14px;background:#e0e7ff;color:#3730a3;font-weight:800;cursor:pointer}
.management-vault-form-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.management-vault-form-actions small{color:#64748b}
.management-vault-filters{display:grid;grid-template-columns:minmax(220px,1fr) minmax(160px,220px) minmax(130px,170px) auto auto;gap:10px;margin-bottom:16px;align-items:center}
.management-vault-table td{vertical-align:top}
.management-vault-table td strong,.management-vault-table td span{display:block}
.management-vault-table td small,.management-vault-audit td small{display:block;color:#64748b;margin-top:5px;line-height:1.35}
.management-vault-table code,.management-vault-audit code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#f1f5f9;padding:4px 7px;border-radius:7px;color:#334155;white-space:nowrap}
.vault-url{font-weight:800;color:#4338ca;text-decoration:none}
.vault-password-mask{letter-spacing:.12em;color:#475569;font-weight:900}
.management-vault-actions{display:flex;gap:7px;align-items:flex-start;flex-wrap:wrap;min-width:240px}
.vault-action-details{position:relative}
.vault-action-details>summary{list-style:none;cursor:pointer}
.vault-action-details>summary::-webkit-details-marker{display:none}
.vault-action-details[open]>form{position:absolute;z-index:20;right:0;top:calc(100% + 7px);width:290px;padding:14px;border-radius:14px;background:#fff;box-shadow:0 18px 45px rgba(15,23,42,.2);border:1px solid #e2e8f0}
.vault-action-details form{display:grid;gap:10px}
.vault-action-details form p{margin:0;color:#991b1b;font-weight:800}
.btn-danger{background:#b91c1c!important;border-color:#b91c1c!important;color:#fff!important}
.management-vault-reveal{border:1px solid #c7d2fe;background:linear-gradient(135deg,#eef2ff,#f8fafc)}
.management-vault-reveal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.vault-copy-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.vault-copy-field input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#fff}
.management-vault-audit td strong{display:block;font-size:.82rem;color:#334155}
.empty-cell{text-align:center!important;padding:30px!important;color:#64748b}
@media(max-width:1100px){.management-vault-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.management-vault-filters{grid-template-columns:1fr 1fr}.management-vault-filters input{grid-column:1/-1}}
@media(max-width:700px){.management-vault-hero{align-items:flex-start;flex-direction:column}.management-vault-stats,.management-vault-form,.management-vault-reveal-grid{grid-template-columns:1fr}.vault-wide{grid-column:auto}.management-vault-filters{grid-template-columns:1fr}.management-vault-filters input{grid-column:auto}.vault-password-input{grid-template-columns:1fr auto}.vault-password-input [data-generate-password]{grid-column:1/-1;min-height:42px}.vault-action-details[open]>form{position:fixed;left:16px;right:16px;top:50%;transform:translateY(-50%);width:auto;max-width:420px;margin:auto}.management-vault-table-wrap{overflow-x:auto}.management-vault-table{min-width:920px}}


/* Password Vault one-click View and preserved pagination */
.vault-inline-action-form{display:inline-flex;margin:0}
.vault-inline-reveal-row>td{padding:0 12px 16px!important;background:#f8fafc}
.management-vault-inline-reveal{padding:16px;border:1px solid #c7d2fe;border-radius:14px;background:linear-gradient(135deg,#eef2ff,#f8fafc);box-shadow:0 10px 28px rgba(15,23,42,.08)}
.management-vault-inline-reveal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.management-vault-inline-reveal-head strong{font-size:1rem;color:#172554}
.management-vault-inline-reveal-head small{display:block;margin-top:4px;color:#64748b}
.management-vault-pagination-wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:18px}
.management-vault-pagination-wrap>span{font-size:.88rem;color:#64748b;font-weight:700}
@media(max-width:700px){.management-vault-inline-reveal-head{flex-direction:column}.management-vault-pagination-wrap{align-items:flex-start;flex-direction:column}}


/* Password Vault email OTP verification before credential reveal */
.vault-inline-otp-row>td{padding:0 12px 16px!important;background:#f8fafc}
.management-vault-otp-panel{padding:16px;border:1px solid #bfdbfe;border-radius:14px;background:linear-gradient(135deg,#eff6ff,#f8fafc);box-shadow:0 10px 28px rgba(15,23,42,.08)}
.management-vault-otp-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.management-vault-otp-head strong{display:block;font-size:1rem;color:#172554}
.management-vault-otp-head small{display:block;margin-top:4px;color:#64748b}
.vault-otp-expiry{flex:0 0 auto;padding:6px 10px;border-radius:999px;background:#dbeafe;color:#1e40af;font-size:.78rem;font-weight:800}
.vault-otp-expiry.is-expired{background:#fee2e2;color:#991b1b}
.management-vault-otp-actions{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap}
.management-vault-otp-form{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin:0}
.management-vault-otp-form label{display:grid;gap:6px;margin:0}
.management-vault-otp-form label span{font-size:.78rem;font-weight:800;color:#334155}
.management-vault-otp-form input[name="otp"]{width:170px;min-height:42px;padding:9px 12px;border:1px solid #cbd5e1;border-radius:10px;font-size:1.15rem;font-weight:800;letter-spacing:.28em;text-align:center;background:#fff}
.vault-otp-security-note{display:block;margin-top:10px;color:#64748b}
@media(max-width:700px){.management-vault-otp-head{flex-direction:column}.management-vault-otp-actions,.management-vault-otp-form{align-items:stretch;flex-direction:column}.management-vault-otp-form input[name="otp"]{width:100%}}

/* CEO approval OTP flow */
.vault-ceo-approval-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}
.vault-ceo-approval-steps span{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid #dbeafe;border-radius:10px;background:#fff;color:#334155;font-size:.78rem;font-weight:700}
.vault-ceo-approval-steps b{display:inline-grid;place-items:center;width:22px;height:22px;flex:0 0 22px;border-radius:50%;background:#1d4ed8;color:#fff;font-size:.72rem}
.management-vault-otp-actions button:disabled{cursor:not-allowed;opacity:.62}
@media(max-width:820px){.vault-ceo-approval-steps{grid-template-columns:1fr}}

/* Team QA fixes - 29 Jul 2026 */
select,select option,input,textarea,button{font-family:inherit}
select{font-size:14px!important;font-weight:600!important;color:#24364d!important;line-height:1.35}
select option{font-family:Arial,Helvetica,sans-serif!important;font-size:14px!important;font-weight:500!important;color:#1f2937!important;background:#fff!important}
.sidebar.crm-pro-sidebar .menu-group.crm-group-active-suspended>.menu-group-toggle{background:transparent!important;border-color:transparent!important;box-shadow:none!important}
.sidebar.crm-pro-sidebar .menu-group.crm-group-active-suspended>.menu-group-toggle::before{display:none!important}
.project-duration-controls{display:grid;grid-template-columns:minmax(110px,1fr) minmax(130px,auto);gap:8px}.project-duration-controls select{min-width:130px}.project-duration-field small{display:block;margin-top:6px;color:#64748b;line-height:1.4}
.case-study-layout,.case-main,.case-chat-box,.project-room-chat{text-align:left!important;min-width:0}.case-main{width:100%}.project-room-chat{display:flex;flex-direction:column;max-height:none!important;overflow:visible!important}.project-room-chat .chat-thread,.case-chat-box .whatsapp-thread{height:min(58vh,560px)!important;min-height:360px!important;max-height:560px!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;scrollbar-gutter:stable;scroll-behavior:smooth}.lead-case-list{max-height:min(68vh,650px)!important;overflow-y:auto!important;overscroll-behavior:contain;scrollbar-gutter:stable}.project-room-chat .message{align-self:flex-start}.project-room-chat .message.mine{align-self:flex-end;margin-left:auto}.case-hero .hero-actions{align-items:center}
.req-min-detail-card[open]{overflow:visible!important}.req-min-chat-box{height:min(55vh,520px)!important;min-height:320px!important;max-height:520px!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;scrollbar-gutter:stable;scroll-behavior:smooth}.req-min-chat-form{position:sticky;bottom:0;z-index:2;background:#fff}.req-min-list{overscroll-behavior:contain;scrollbar-gutter:stable}
.report-activity-list{display:grid;gap:10px}.report-activity-item{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;padding:13px;border:1px solid #e1eaf5;border-radius:14px;background:linear-gradient(135deg,#fff,#f8fbff)}.report-activity-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;background:#dcfce7;color:#166534;font-weight:900}.report-activity-item b{display:block;color:#0b2d64}.report-activity-item p{margin:5px 0;color:#475569;line-height:1.45;overflow-wrap:anywhere}.report-activity-item small{color:#64748b}.document-request-tabs a{font-weight:700}.document-review-form textarea:required{border-color:#fbbf24}.cp-form-grid [data-priority-lead]{background:#f8fbff;border-color:#93c5fd!important}.cp-form-grid input[readonly]{background:#f8fafc!important;color:#334155!important;cursor:not-allowed}
@media(max-width:760px){.project-duration-controls{grid-template-columns:1fr}.project-room-chat .chat-thread,.case-chat-box .whatsapp-thread,.req-min-chat-box{height:52vh!important;min-height:300px!important}.case-hero .hero-actions{width:100%;display:grid;grid-template-columns:1fr}.case-hero .hero-actions .btn{width:100%;text-align:center}.report-activity-item{grid-template-columns:32px minmax(0,1fr);padding:11px}.report-activity-icon{width:32px;height:32px}}


/* Case Study Room viewport-fit chat layout */
@media (min-width:1101px){
  .case-study-page .main{min-width:0}
  .case-study-page .case-study-layout{grid-template-columns:minmax(250px,285px) minmax(0,1fr);gap:14px;align-items:start}
  .case-study-page .lead-queue-card{position:sticky;top:86px;max-height:calc(100dvh - 110px);padding:16px;overflow:hidden}
  .case-study-page .lead-queue-card .card-head{gap:8px;margin-bottom:8px}
  .case-study-page .lead-queue-card .section-title{font-size:19px}
  .case-study-page .lead-queue-card>.muted{margin:0 0 10px;font-size:13px;line-height:1.35}
  .case-study-page .lead-case-list{max-height:calc(100dvh - 220px)!important;min-height:300px;gap:8px;padding-right:5px}
  .case-study-page .room-item{grid-template-columns:40px minmax(0,1fr);gap:10px;padding:10px;border-radius:14px;transform:none!important}
  .case-study-page .room-avatar{width:40px;height:40px;border-radius:12px;font-size:17px}
  .case-study-page .room-item b{font-size:13px;line-height:1.25}
  .case-study-page .room-item small{font-size:11px;line-height:1.35;margin-top:3px}

  .case-study-page .project-room-chat{height:calc(100dvh - 112px);min-height:610px;max-height:820px!important;overflow:hidden!important;display:flex;flex-direction:column}
  .case-study-page .project-room-chat .chat-header-pro{flex:0 0 auto;padding:13px 16px;gap:12px}
  .case-study-page .project-room-chat .chat-header-pro h2{font-size:20px}
  .case-study-page .project-room-chat .chat-header-pro p{font-size:12px;margin-top:3px}
  .case-study-page .project-room-chat .chat-search-input{height:40px;min-width:220px}
  .case-study-page .project-room-chat .chat-thread,
  .case-study-page .case-chat-box .whatsapp-thread{flex:1 1 auto;height:auto!important;min-height:230px!important;max-height:none!important;padding:16px 18px;scrollbar-gutter:stable both-edges}
  .case-study-page .project-room-chat .message{max-width:80%;gap:9px;margin-bottom:12px}
  .case-study-page .project-room-chat .msg-avatar{width:36px;height:36px;border-radius:12px;font-size:14px}
  .case-study-page .project-room-chat .msg-bubble{min-width:0;padding:11px 13px;border-radius:16px}
  .case-study-page .project-room-chat .msg-bubble p{font-size:14px;line-height:1.45}

  .case-study-page .project-room-chat .chat-composer{flex:0 0 auto;padding:11px 16px 12px}
  .case-study-page .project-room-chat .chat-composer textarea{min-height:54px;max-height:92px;padding:12px 14px;border-radius:14px;resize:vertical}
  .case-study-page .project-room-chat .composer-actions{margin-top:8px}
  .case-study-page .project-room-chat .chat-composer-grid{display:grid;grid-template-columns:auto minmax(190px,250px) minmax(180px,1fr) auto;gap:9px;align-items:center}
  .case-study-page .case-file-picker{height:42px;padding:8px 11px;border-radius:12px;white-space:nowrap}
  .case-study-page .case-file-picker>small{display:none}
  .case-study-page .case-attachment-help{font-size:11px;line-height:1.3;color:#64748b}
  .case-study-page .case-send-button{height:42px;min-width:72px;padding:0 18px}
  .case-study-page .move-next-form{flex:0 0 auto;margin:0;padding:10px 16px;border-top:1px solid #e5edf7;background:#fbfdff}
  .case-study-page .move-next-form .btn{padding:9px 13px}
  .case-study-page .move-next-form small{font-size:12px}
}

.case-notify-picker{position:relative;min-width:0}
.case-notify-picker>summary{list-style:none;height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 12px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:#334155;cursor:pointer;font-size:13px;font-weight:800}
.case-notify-picker>summary::-webkit-details-marker{display:none}
.case-notify-picker>summary:after{content:'⌄';font-size:15px;color:#64748b;transition:transform .18s ease}
.case-notify-picker[open]>summary:after{transform:rotate(180deg)}
.case-notify-picker>summary b{margin-left:auto;padding:4px 7px;border-radius:999px;background:#eef6ff;color:#0755b8;font-size:10px;white-space:nowrap}
.case-notify-menu{position:absolute;right:0;bottom:calc(100% + 7px);z-index:30;width:min(360px,82vw);padding:12px;border:1px solid #cbd5e1;border-radius:14px;background:#fff;box-shadow:0 18px 45px rgba(15,23,42,.2)}
.case-notify-menu-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:2px 2px 9px;border-bottom:1px solid #e2e8f0}
.case-notify-menu-head strong{color:#0b2d64;font-size:14px}
.case-notify-menu-head small{color:#64748b}
.case-notify-options{display:grid;gap:5px;max-height:230px;overflow:auto;padding:8px 1px}
.case-notify-option{display:flex;align-items:center;gap:9px;padding:8px;border-radius:10px;cursor:pointer}
.case-notify-option:hover{background:#f1f6ff}
.case-notify-option input{width:17px;height:17px;flex:0 0 auto}
.case-notify-option span{min-width:0}
.case-notify-option b,.case-notify-option small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.case-notify-option b{font-size:13px;color:#1e293b}
.case-notify-option small{margin-top:2px;font-size:11px;color:#64748b}
.case-notify-menu>p{margin:7px 2px 0;font-size:11px;line-height:1.35;color:#64748b}

@media (max-width:1300px) and (min-width:1101px){
  .case-study-page .case-study-layout{grid-template-columns:245px minmax(0,1fr)}
  .case-study-page .project-room-chat .chat-composer-grid{grid-template-columns:auto minmax(175px,220px) 1fr auto}
  .case-study-page .case-attachment-help{max-width:180px}
}

@media (max-width:1100px){
  .case-study-page .project-room-chat{height:auto;max-height:none!important;overflow:hidden!important}
  .case-study-page .project-room-chat .chat-thread,
  .case-study-page .case-chat-box .whatsapp-thread{height:52vh!important;min-height:300px!important;max-height:560px!important}
  .case-study-page .project-room-chat .chat-composer{padding:12px}
  .case-study-page .project-room-chat .chat-composer textarea{min-height:64px}
  .case-study-page .project-room-chat .chat-composer-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
  .case-study-page .case-attachment-help{align-self:center}
  .case-study-page .case-send-button{width:100%}
}

@media (max-width:650px){
  .case-study-page .project-room-chat .chat-header-pro{align-items:stretch;flex-direction:column;padding:13px}
  .case-study-page .project-room-chat .chat-search-input{width:100%;min-width:0}
  .case-study-page .project-room-chat .message{max-width:96%;gap:7px}
  .case-study-page .project-room-chat .msg-avatar{width:32px;height:32px}
  .case-study-page .project-room-chat .chat-composer-grid{grid-template-columns:1fr}
  .case-study-page .case-file-picker{justify-content:center}
  .case-study-page .case-file-picker>small{display:inline;margin-left:auto;font-size:10px;color:#64748b}
  .case-study-page .case-notify-menu{position:fixed;left:12px;right:12px;bottom:12px;width:auto;max-height:70vh}
  .case-study-page .move-next-form{align-items:stretch;flex-direction:column}
  .case-study-page .move-next-form .btn{width:100%}
}

/* Full-screen chat workspace sizing — management and employee portals */
@media (min-width: 1181px) {
  .main:has(.project-room-chat),
  .main:has(.chat-layout),
  .main:has(.req-chat-card),
  .main:has(.req-min-chat-box) {
    padding: 16px 18px !important;
    min-width: 0;
  }

  /* Case Study management chat */
  .case-study-page .case-study-layout {
    grid-template-columns: minmax(285px, 320px) minmax(0, 1fr) !important;
    gap: 16px !important;
  }
  .case-study-page .lead-queue-card {
    top: 92px !important;
    max-height: calc(100dvh - 112px) !important;
    padding: 18px !important;
  }
  .case-study-page .lead-case-list {
    max-height: calc(100dvh - 235px) !important;
  }
  .case-study-page .project-room-chat {
    height: calc(100dvh - 116px) !important;
    min-height: 680px !important;
    max-height: 900px !important;
    border-radius: 22px !important;
  }
  .case-study-page .project-room-chat .chat-header-pro {
    padding: 16px 20px !important;
  }
  .case-study-page .project-room-chat .chat-header-pro h2 {
    font-size: 23px !important;
  }
  .case-study-page .project-room-chat .chat-header-pro p {
    font-size: 13px !important;
  }
  .case-study-page .project-room-chat .chat-search-input {
    min-width: 260px !important;
    height: 44px !important;
    font-size: 14px !important;
  }
  .case-study-page .project-room-chat .chat-thread,
  .case-study-page .case-chat-box .whatsapp-thread {
    flex: 1 1 auto !important;
    height: auto !important;
    min-height: 390px !important;
    max-height: none !important;
    padding: 20px 22px !important;
  }
  .case-study-page .project-room-chat .message {
    max-width: 86% !important;
    margin-bottom: 15px !important;
  }
  .case-study-page .project-room-chat .msg-avatar {
    width: 42px !important;
    height: 42px !important;
    font-size: 16px !important;
  }
  .case-study-page .project-room-chat .msg-bubble {
    padding: 14px 16px !important;
    border-radius: 18px !important;
  }
  .case-study-page .project-room-chat .msg-bubble p {
    font-size: 15px !important;
    line-height: 1.55 !important;
  }
  .case-study-page .project-room-chat .chat-composer {
    padding: 14px 18px 15px !important;
  }
  .case-study-page .project-room-chat .chat-composer textarea {
    min-height: 72px !important;
    max-height: 130px !important;
    font-size: 15px !important;
  }
  .case-study-page .project-room-chat .chat-composer-grid {
    grid-template-columns: auto minmax(210px, 280px) minmax(220px, 1fr) auto !important;
    gap: 11px !important;
  }
  .case-study-page .case-file-picker,
  .case-study-page .case-send-button {
    min-height: 46px !important;
    font-size: 14px !important;
  }

  /* Employee project/team chat */
  .main:has(.chat-layout) .chat-layout {
    grid-template-columns: minmax(300px, 340px) minmax(0, 1fr) !important;
    gap: 16px !important;
    align-items: stretch !important;
  }
  .main:has(.chat-layout) .chat-panel,
  .main:has(.chat-layout) .room-list-card,
  .main:has(.chat-layout) .chat-box {
    min-height: 0;
  }
  .main:has(.chat-layout) .room-list-card,
  .main:has(.chat-layout) .chat-box {
    height: calc(100dvh - 150px) !important;
    min-height: 680px !important;
    max-height: 900px !important;
  }
  .main:has(.chat-layout) .room-list-card {
    display: flex !important;
    flex-direction: column !important;
  }
  .main:has(.chat-layout) .room-list {
    flex: 1 1 auto !important;
    max-height: none !important;
    overflow-y: auto !important;
  }
  .main:has(.chat-layout) .chat-box {
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
  }
  .main:has(.chat-layout) .chat-header-pro {
    flex: 0 0 auto !important;
    padding: 17px 20px !important;
  }
  .main:has(.chat-layout) .chat-header-pro h2 {
    font-size: 23px !important;
  }
  .main:has(.chat-layout) .chat-thread {
    flex: 1 1 auto !important;
    height: auto !important;
    min-height: 390px !important;
    max-height: none !important;
    padding: 20px 22px !important;
  }
  .main:has(.chat-layout) .message {
    max-width: 86% !important;
  }
  .main:has(.chat-layout) .msg-avatar {
    width: 42px !important;
    height: 42px !important;
  }
  .main:has(.chat-layout) .msg-bubble {
    padding: 14px 16px !important;
  }
  .main:has(.chat-layout) .msg-bubble p {
    font-size: 15px !important;
  }
  .main:has(.chat-layout) .chat-composer {
    flex: 0 0 auto !important;
    padding: 14px 18px !important;
  }
  .main:has(.chat-layout) .chat-composer textarea {
    min-height: 72px !important;
    max-height: 130px !important;
    font-size: 15px !important;
  }
  .main:has(.chat-layout) .chat-composer-grid {
    grid-template-columns: auto minmax(240px, 310px) minmax(220px, 1fr) auto !important;
    gap: 11px !important;
  }
  .main:has(.chat-layout) .file-pill,
  .main:has(.chat-layout) .chat-composer .btn {
    min-height: 46px !important;
    font-size: 14px !important;
  }
  .main:has(.chat-layout) .notify-select select {
    min-height: 70px !important;
  }

  /* Employee requirement conversation */
  .main:has(.req-chat-card) .req-layout {
    grid-template-columns: minmax(300px, 340px) minmax(0, 1fr) !important;
    gap: 16px !important;
  }
  .main:has(.req-chat-card) .req-side-card {
    max-height: calc(100dvh - 120px) !important;
    overflow: hidden !important;
  }
  .main:has(.req-chat-card) .req-list {
    max-height: calc(100dvh - 270px) !important;
  }
  .main:has(.req-chat-card) .req-chat-card {
    height: calc(100dvh - 150px) !important;
    min-height: 680px !important;
    max-height: 900px !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
  }
  .main:has(.req-chat-card) .req-chat-card .chat-header-pro {
    flex: 0 0 auto !important;
    padding: 17px 20px !important;
  }
  .main:has(.req-chat-card) .req-chat-thread {
    flex: 1 1 auto !important;
    height: auto !important;
    min-height: 390px !important;
    max-height: none !important;
    padding: 20px 22px !important;
  }
  .main:has(.req-chat-card) .req-composer {
    flex: 0 0 auto !important;
    padding: 14px 18px !important;
  }
  .main:has(.req-chat-card) .req-composer textarea {
    min-height: 72px !important;
    font-size: 15px !important;
  }

  /* Management requirement chat */
  .main:has(.req-min-chat-box) .req-min-detail-card[open] {
    overflow: hidden !important;
  }
  .main:has(.req-min-chat-box) .req-min-chat-box {
    height: 62dvh !important;
    min-height: 500px !important;
    max-height: 720px !important;
    padding: 20px 22px !important;
  }
  .main:has(.req-min-chat-box) .req-min-chat-form {
    padding: 14px 16px !important;
    gap: 10px !important;
  }
  .main:has(.req-min-chat-box) .req-min-chat-form textarea {
    min-height: 72px !important;
    font-size: 15px !important;
  }
}

@media (min-width: 821px) and (max-width: 1180px) {
  .case-study-page .project-room-chat,
  .main:has(.chat-layout) .chat-box,
  .main:has(.req-chat-card) .req-chat-card {
    min-height: 640px !important;
  }
  .case-study-page .project-room-chat .chat-thread,
  .main:has(.chat-layout) .chat-thread,
  .main:has(.req-chat-card) .req-chat-thread,
  .main:has(.req-min-chat-box) .req-min-chat-box {
    min-height: 380px !important;
  }
}

@media (max-width: 820px) {
  .case-study-page .project-room-chat .chat-header-pro h2,
  .main:has(.chat-layout) .chat-header-pro h2,
  .main:has(.req-chat-card) .chat-header-pro h2 {
    font-size: 20px !important;
  }
  .case-study-page .project-room-chat .msg-bubble p,
  .main:has(.chat-layout) .msg-bubble p,
  .main:has(.req-chat-card) .msg-bubble p {
    font-size: 14px !important;
  }
  .case-study-page .project-room-chat .chat-thread,
  .main:has(.chat-layout) .chat-thread,
  .main:has(.req-chat-card) .req-chat-thread,
  .main:has(.req-min-chat-box) .req-min-chat-box {
    height: 56dvh !important;
    min-height: 340px !important;
    max-height: 620px !important;
  }
}

/* Final chat bubble, timestamp and composer spacing correction — 2026-07-29 */
:is(
  .case-study-page .project-room-chat,
  .main:has(.chat-layout) .chat-box,
  .main:has(.req-chat-card) .req-chat-card,
  .main:has(.req-min-chat-box) .req-min-detail-card
) .message {
  min-width: 0 !important;
  max-width: min(78%, 760px) !important;
  gap: 10px !important;
  margin-bottom: 12px !important;
}

:is(
  .case-study-page .project-room-chat,
  .main:has(.chat-layout) .chat-box,
  .main:has(.req-chat-card) .req-chat-card,
  .main:has(.req-min-chat-box) .req-min-detail-card
) .msg-bubble {
  box-sizing: border-box !important;
  min-width: 0 !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 12px 48px 34px 14px !important;
  border-radius: 17px !important;
  overflow: hidden !important;
}

:is(
  .case-study-page .project-room-chat,
  .main:has(.chat-layout) .chat-box,
  .main:has(.req-chat-card) .req-chat-card,
  .main:has(.req-min-chat-box) .req-min-detail-card
) .msg-bubble p,
:is(
  .case-study-page .project-room-chat,
  .main:has(.chat-layout) .chat-box,
  .main:has(.req-chat-card) .req-chat-card,
  .main:has(.req-min-chat-box) .req-min-detail-card
) .message-text {
  max-width: 100% !important;
  margin: 0 !important;
  font-size: 15px !important;
  line-height: 1.48 !important;
  white-space: pre-wrap !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

:is(
  .case-study-page .project-room-chat,
  .main:has(.chat-layout) .chat-box,
  .main:has(.req-chat-card) .req-chat-card,
  .main:has(.req-min-chat-box) .req-min-detail-card
) .msg-footer {
  right: 13px !important;
  bottom: 8px !important;
  min-height: 16px !important;
  line-height: 1 !important;
  padding: 0 !important;
  background: transparent !important;
}

:is(
  .case-study-page .project-room-chat,
  .main:has(.chat-layout) .chat-box,
  .main:has(.req-chat-card) .req-chat-card,
  .main:has(.req-min-chat-box) .req-min-detail-card
) .message-menu-trigger,
:is(
  .case-study-page .project-room-chat,
  .main:has(.chat-layout) .chat-box,
  .main:has(.req-chat-card) .req-chat-card,
  .main:has(.req-min-chat-box) .req-min-detail-card
) .message.mine .message-menu-trigger {
  top: 8px !important;
  right: 9px !important;
  left: auto !important;
}

:is(
  .case-study-page .project-room-chat,
  .main:has(.chat-layout) .chat-box,
  .main:has(.req-chat-card) .req-chat-card
) .chat-thread,
.case-study-page .case-chat-box .whatsapp-thread,
.main:has(.req-chat-card) .req-chat-thread {
  padding: 15px 17px !important;
  overflow-x: hidden !important;
}

:is(
  .case-study-page .project-room-chat,
  .main:has(.chat-layout) .chat-box,
  .main:has(.req-chat-card) .req-chat-card
) .chat-header-pro {
  padding: 14px 18px !important;
  gap: 12px !important;
}

:is(
  .case-study-page .project-room-chat,
  .main:has(.chat-layout) .chat-box,
  .main:has(.req-chat-card) .req-chat-card
) .chat-header-pro h2 {
  font-size: 22px !important;
  line-height: 1.2 !important;
}

:is(
  .case-study-page .project-room-chat,
  .main:has(.chat-layout) .chat-box,
  .main:has(.req-chat-card) .req-chat-card
) .chat-header-pro p {
  margin: 4px 0 0 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

:is(
  .case-study-page .project-room-chat,
  .main:has(.chat-layout) .chat-box,
  .main:has(.req-chat-card) .req-chat-card
) .chat-composer,
.main:has(.req-chat-card) .req-composer {
  padding: 12px 16px !important;
}

:is(
  .case-study-page .project-room-chat,
  .main:has(.chat-layout) .chat-box,
  .main:has(.req-chat-card) .req-chat-card
) .chat-composer textarea,
.main:has(.req-chat-card) .req-composer textarea {
  min-height: 58px !important;
  max-height: 105px !important;
  padding: 12px 14px !important;
  border-radius: 15px !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}

:is(
  .case-study-page .project-room-chat,
  .main:has(.chat-layout) .chat-box,
  .main:has(.req-chat-card) .req-chat-card
) .chat-composer-grid {
  gap: 10px !important;
  align-items: center !important;
}

.case-study-page .case-file-picker,
.case-study-page .case-send-button,
.main:has(.chat-layout) .file-pill,
.main:has(.chat-layout) .chat-composer .btn,
.main:has(.req-chat-card) .file-pill,
.main:has(.req-chat-card) .req-composer .btn {
  min-height: 42px !important;
  height: 42px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

@media (max-width: 820px) {
  :is(
    .case-study-page .project-room-chat,
    .main:has(.chat-layout) .chat-box,
    .main:has(.req-chat-card) .req-chat-card,
    .main:has(.req-min-chat-box) .req-min-detail-card
  ) .message {
    max-width: 94% !important;
    gap: 7px !important;
  }

  :is(
    .case-study-page .project-room-chat,
    .main:has(.chat-layout) .chat-box,
    .main:has(.req-chat-card) .req-chat-card,
    .main:has(.req-min-chat-box) .req-min-detail-card
  ) .msg-bubble {
    padding: 11px 42px 31px 12px !important;
    border-radius: 15px !important;
  }

  :is(
    .case-study-page .project-room-chat,
    .main:has(.chat-layout) .chat-box,
    .main:has(.req-chat-card) .req-chat-card,
    .main:has(.req-min-chat-box) .req-min-detail-card
  ) .msg-bubble p,
  :is(
    .case-study-page .project-room-chat,
    .main:has(.chat-layout) .chat-box,
    .main:has(.req-chat-card) .req-chat-card,
    .main:has(.req-min-chat-box) .req-min-detail-card
  ) .message-text {
    font-size: 14px !important;
  }

  :is(
    .case-study-page .project-room-chat,
    .main:has(.chat-layout) .chat-box,
    .main:has(.req-chat-card) .req-chat-card
  ) .chat-thread,
  .case-study-page .case-chat-box .whatsapp-thread,
  .main:has(.req-chat-card) .req-chat-thread {
    padding: 12px !important;
  }

  :is(
    .case-study-page .project-room-chat,
    .main:has(.chat-layout) .chat-box,
    .main:has(.req-chat-card) .req-chat-card
  ) .chat-composer,
  .main:has(.req-chat-card) .req-composer {
    padding: 10px 12px !important;
  }
}


/* Case Study workflow footer — clear action and no backward stage movement */
.case-study-page .case-stage-footer {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  min-height: 66px;
  margin: 0 !important;
  padding: 11px 16px !important;
  border-top: 1px solid #dbe7f5 !important;
  background: linear-gradient(135deg, #f8fbff, #ffffff) !important;
}

.case-study-page .case-stage-footer-copy {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 0;
}

.case-study-page .case-stage-footer-copy > span:last-child {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.case-study-page .case-stage-footer-copy strong {
  color: #0b2d64;
  font-size: 14px;
  line-height: 1.25;
}

.case-study-page .case-stage-footer-copy small {
  color: #64748b;
  font-size: 12px !important;
  line-height: 1.35;
}

.case-study-page .case-stage-footer-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  border-radius: 11px;
  background: #dcfce7;
  color: #15803d;
  font-size: 18px;
  font-weight: 900;
}

.case-study-page .case-stage-footer-button {
  flex: 0 0 auto;
  min-height: 42px;
  padding: 0 16px !important;
  white-space: nowrap;
}

.case-study-page .case-stage-footer.is-complete {
  background: linear-gradient(135deg, #f0fdf4, #ffffff) !important;
}

.case-study-page .case-stage-footer.is-complete .case-stage-footer-icon {
  background: #bbf7d0;
}

@media (max-width: 760px) {
  .case-study-page .case-stage-footer {
    align-items: stretch !important;
    flex-direction: column !important;
    gap: 10px !important;
    padding: 12px !important;
  }

  .case-study-page .case-stage-footer-button {
    width: 100%;
    text-align: center;
  }
}


/* Case Study footer visibility correction — prevent status row clipping */
.case-study-page .project-room-chat {
  display: flex !important;
  flex-direction: column !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

.case-study-page .project-room-chat .chat-header-pro,
.case-study-page .project-room-chat .chat-composer,
.case-study-page .project-room-chat .case-stage-footer {
  flex: 0 0 auto !important;
}

.case-study-page .project-room-chat .chat-thread,
.case-study-page .case-chat-box .whatsapp-thread {
  flex: 1 1 0 !important;
  min-height: 180px !important;
  max-height: none !important;
  overflow-y: auto !important;
}

.case-study-page .case-stage-footer {
  box-sizing: border-box !important;
  min-height: 78px !important;
  height: auto !important;
  padding: 12px 16px !important;
  overflow: visible !important;
}

.case-study-page .case-stage-footer-copy {
  min-width: 0 !important;
  min-height: 46px;
}

.case-study-page .case-stage-footer-copy > span:last-child {
  min-width: 0 !important;
  overflow: visible !important;
}

.case-study-page .case-stage-footer-copy strong,
.case-study-page .case-stage-footer-copy small {
  display: block !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

.case-study-page .case-stage-footer-copy small {
  margin-top: 3px !important;
  line-height: 1.35 !important;
}

.case-study-page .case-stage-footer-button {
  min-width: 190px;
  max-width: 250px;
  min-height: 42px !important;
  height: auto !important;
  padding: 9px 15px !important;
  line-height: 1.25 !important;
  text-align: center;
}

@media (min-width: 1181px) {
  .case-study-page .project-room-chat {
    height: calc(100dvh - 116px) !important;
    min-height: 620px !important;
  }

  .case-study-page .project-room-chat .chat-thread,
  .case-study-page .case-chat-box .whatsapp-thread {
    min-height: 220px !important;
  }
}

@media (max-width: 820px) {
  .case-study-page .case-stage-footer {
    min-height: 0 !important;
    padding: 12px !important;
  }

  .case-study-page .case-stage-footer-button {
    min-width: 0;
    max-width: none;
    width: 100%;
  }
}


/* Management Requirements chat compact screen-size fix — 2026-07-29 */
.main:has(.req-min-chat-box) .req-min-bottom {
  gap: 10px !important;
  margin-bottom: 12px !important;
}

.main:has(.req-min-chat-box) .req-min-detail-card[open] {
  overflow: hidden !important;
}

.main:has(.req-min-chat-box) .req-min-detail-card > summary {
  min-height: 54px !important;
  padding: 12px 16px !important;
  font-size: 17px !important;
  line-height: 1.2 !important;
}

.main:has(.req-min-chat-box) .req-min-chat-box {
  box-sizing: border-box !important;
  height: min(44dvh, 430px) !important;
  min-height: 300px !important;
  max-height: 430px !important;
  margin: 12px 14px !important;
  padding: 14px 16px !important;
  border-radius: 16px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  scrollbar-gutter: stable !important;
}

.main:has(.req-min-chat-box) .req-min-chat-box .message {
  max-width: min(76%, 700px) !important;
  margin-bottom: 12px !important;
  gap: 9px !important;
}

.main:has(.req-min-chat-box) .req-min-chat-box .msg-avatar {
  width: 38px !important;
  height: 38px !important;
  border-radius: 12px !important;
  font-size: 15px !important;
}

.main:has(.req-min-chat-box) .req-min-chat-box .msg-bubble {
  min-width: 0 !important;
  padding: 11px 40px 28px 13px !important;
  border-radius: 16px !important;
}

.main:has(.req-min-chat-box) .req-min-chat-box .msg-bubble p,
.main:has(.req-min-chat-box) .req-min-chat-box .message-text {
  font-size: 14px !important;
  line-height: 1.45 !important;
}

.main:has(.req-min-chat-box) .req-min-chat-form {
  position: static !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto auto !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 10px 14px 12px !important;
  background: #ffffff !important;
}

.main:has(.req-min-chat-box) .req-min-chat-form textarea {
  min-height: 50px !important;
  max-height: 90px !important;
  padding: 11px 13px !important;
  border-radius: 13px !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  resize: vertical !important;
}

.main:has(.req-min-chat-box) .req-min-chat-form .file-pill,
.main:has(.req-min-chat-box) .req-min-chat-form .btn {
  min-height: 42px !important;
  height: 42px !important;
  padding: 0 15px !important;
  border-radius: 13px !important;
  font-size: 14px !important;
  white-space: nowrap !important;
}

.main:has(.req-min-chat-box) .req-min-chat-form .file-preview-list {
  grid-column: 1 / -1 !important;
  margin-top: 0 !important;
}

@media (min-width: 1500px) {
  .main:has(.req-min-chat-box) .req-min-chat-box {
    height: min(42dvh, 410px) !important;
    max-height: 410px !important;
  }
}

@media (min-width: 821px) and (max-width: 1180px) {
  .main:has(.req-min-chat-box) .req-min-chat-box {
    height: min(46dvh, 420px) !important;
    min-height: 300px !important;
    max-height: 420px !important;
  }
}

@media (max-width: 820px) {
  .main:has(.req-min-chat-box) .req-min-chat-box {
    height: 48dvh !important;
    min-height: 280px !important;
    max-height: 480px !important;
    margin: 10px !important;
    padding: 11px !important;
  }

  .main:has(.req-min-chat-box) .req-min-chat-box .message {
    max-width: 94% !important;
  }

  .main:has(.req-min-chat-box) .req-min-chat-form {
    grid-template-columns: 1fr 1fr !important;
    padding: 10px !important;
  }

  .main:has(.req-min-chat-box) .req-min-chat-form textarea {
    grid-column: 1 / -1 !important;
  }

  .main:has(.req-min-chat-box) .req-min-chat-form .file-pill,
  .main:has(.req-min-chat-box) .req-min-chat-form .btn {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* Leads page stable table sizing and responsive layout — 2026-07-29 */
.leads-page {
  min-width: 0;
}

.leads-page .card {
  min-width: 0;
}

.leads-page .table-wrap {
  width: 100%;
  max-width: 100%;
  overflow-x: auto !important;
  overflow-y: visible;
  -webkit-overflow-scrolling: touch;
  scrollbar-gutter: stable;
}

.leads-page .lead-friendly-table {
  width: 100% !important;
  min-width: 1180px !important;
  table-layout: fixed !important;
  border-collapse: separate;
  border-spacing: 0;
}

.leads-page .lead-friendly-table .lead-col-contact { width: 15%; }
.leads-page .lead-friendly-table .lead-col-business { width: 15%; }
.leads-page .lead-friendly-table .lead-col-location { width: 16%; }
.leads-page .lead-friendly-table .lead-col-notes { width: 15%; }
.leads-page .lead-friendly-table .lead-col-stage { width: 10%; }
.leads-page .lead-friendly-table .lead-col-status { width: 11%; }
.leads-page .lead-friendly-table .lead-col-actions { width: 18%; }

.leads-page .lead-friendly-table th,
.leads-page .lead-friendly-table td {
  box-sizing: border-box;
  min-width: 0;
  padding: 13px 12px !important;
  vertical-align: top;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: anywhere !important;
  line-height: 1.4;
}

.leads-page .lead-friendly-table thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  white-space: nowrap !important;
}

.leads-page .lead-friendly-table td > b,
.leads-page .lead-friendly-table td > strong {
  display: block;
  color: #102f63;
  line-height: 1.35;
}

.leads-page .lead-friendly-table td small {
  display: block;
  max-width: 100%;
  margin-top: 5px;
  color: #64748b;
  line-height: 1.4;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.leads-page .lead-note-details,
.leads-page .lead-reason-details {
  width: 100%;
  max-width: none !important;
}

.leads-page .lead-note-details p,
.leads-page .lead-reason-details p {
  max-height: 150px;
  overflow-y: auto;
}

.leads-page .lead-action-bar {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch !important;
  gap: 7px !important;
  min-width: 0 !important;
}

.leads-page .lead-action-bar > * {
  min-width: 0;
  margin: 0;
}

.leads-page .lead-action-bar .lead-primary-action {
  grid-column: 1 / -1;
}

.leads-page .lead-action-bar .btn,
.leads-page .lead-action-bar form,
.leads-page .lead-action-bar form .btn {
  width: 100%;
  max-width: 100%;
}

.leads-page .lead-action-bar .btn {
  min-height: 36px;
  padding: 7px 9px !important;
  white-space: normal !important;
  line-height: 1.2;
  text-align: center;
}

@media (max-width: 760px) {
  .leads-page .card-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .leads-page .lead-action-help {
    max-width: none;
    text-align: left;
  }

  .leads-page .table-wrap {
    overflow: visible !important;
    border: 0;
    background: transparent;
  }

  .leads-page .lead-friendly-table,
  .leads-page .lead-friendly-table tbody,
  .leads-page .lead-friendly-table tr,
  .leads-page .lead-friendly-table td {
    display: block;
    width: 100% !important;
    min-width: 0 !important;
  }

  .leads-page .lead-friendly-table {
    table-layout: auto !important;
    background: transparent;
  }

  .leads-page .lead-friendly-table colgroup,
  .leads-page .lead-friendly-table thead {
    display: none;
  }

  .leads-page .lead-friendly-table tbody {
    display: grid;
    gap: 14px;
  }

  .leads-page .lead-friendly-table tr {
    overflow: hidden;
    border: 1px solid #dbe7f5;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(15, 45, 90, .07);
  }

  .leads-page .lead-friendly-table td {
    display: grid;
    grid-template-columns: minmax(108px, 36%) minmax(0, 1fr);
    gap: 10px;
    padding: 11px 13px !important;
    border-bottom: 1px solid #edf2f7;
  }

  .leads-page .lead-friendly-table td:last-child {
    border-bottom: 0;
  }

  .leads-page .lead-friendly-table td::before {
    content: attr(data-label);
    color: #31527e;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.35;
  }

  .leads-page .lead-action-bar {
    grid-template-columns: 1fr !important;
  }

  .leads-page .lead-action-bar .lead-primary-action {
    grid-column: auto;
  }

  .leads-page .lead-friendly-table .empty-cell {
    display: block;
    text-align: center;
  }

  .leads-page .lead-friendly-table .empty-cell::before {
    content: none;
  }
}


/* Final Leads table alignment: compact map, notes and stable row height */
.leads-page .lead-friendly-table {
  min-width: 1040px !important;
}

.leads-page .lead-friendly-table .lead-col-contact { width: 14%; }
.leads-page .lead-friendly-table .lead-col-business { width: 15%; }
.leads-page .lead-friendly-table .lead-col-location { width: 17%; }
.leads-page .lead-friendly-table .lead-col-notes { width: 18%; }
.leads-page .lead-friendly-table .lead-col-stage { width: 10%; }
.leads-page .lead-friendly-table .lead-col-status { width: 10%; }
.leads-page .lead-friendly-table .lead-col-actions { width: 16%; }

.leads-page .lead-friendly-table tbody tr {
  height: auto !important;
}

.leads-page .lead-friendly-table td {
  padding: 12px 11px !important;
}

.leads-page .lead-friendly-table td[data-label="Pipeline Stage"],
.leads-page .lead-friendly-table td[data-label="Current Status"] {
  vertical-align: middle;
}

.leads-page .lead-location-cell {
  min-width: 0;
}

.leads-page .lead-map-compact,
.leads-page .lead-map-unavailable {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  max-width: 100%;
  min-height: 32px;
  padding: 6px 11px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.1;
  white-space: nowrap !important;
}

.leads-page .lead-map-compact {
  border: 1px solid #86efac;
  background: #f0fdf4;
  color: #166534;
  text-decoration: none;
}

.leads-page .lead-map-compact:hover {
  border-color: #4ade80;
  background: #dcfce7;
}

.leads-page .lead-map-unavailable {
  border: 1px solid #e2e8f0;
  background: #f8fafc;
  color: #64748b;
}

.leads-page .lead-address-text {
  display: -webkit-box !important;
  margin-top: 7px !important;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow-wrap: anywhere !important;
}

.leads-page .lead-note-compact {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.leads-page .lead-note-preview {
  display: -webkit-box;
  overflow: hidden;
  color: #334155;
  font-size: 13px;
  line-height: 1.4;
  overflow-wrap: anywhere;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}

.leads-page .lead-note-details {
  position: relative;
  width: 100%;
}

.leads-page .lead-note-details summary {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  width: auto;
  cursor: pointer;
  color: #0755b8;
  font-size: 12px;
  font-weight: 800;
  list-style: none;
}

.leads-page .lead-note-details summary::-webkit-details-marker {
  display: none;
}

.leads-page .lead-note-details summary::before {
  content: "▸";
  transition: transform .18s ease;
}

.leads-page .lead-note-details[open] summary::before {
  transform: rotate(90deg);
}

.leads-page .lead-note-details p {
  width: 100%;
  max-height: 92px !important;
  margin: 7px 0 0 !important;
  padding: 9px 10px !important;
  overflow-y: auto !important;
  border: 1px solid #dbeafe;
  border-radius: 10px;
  background: #f8fbff;
  color: #263449;
  font-size: 12.5px;
  line-height: 1.4;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.leads-page .lead-action-bar {
  grid-template-columns: 1fr !important;
}

.leads-page .lead-action-bar .lead-primary-action {
  grid-column: auto !important;
}

.leads-page .lead-action-bar .btn {
  min-height: 34px;
  padding: 6px 8px !important;
  font-size: 12px;
}

@media (max-width: 1180px) and (min-width: 761px) {
  .leads-page .lead-friendly-table {
    min-width: 980px !important;
  }

  .leads-page .lead-friendly-table th,
  .leads-page .lead-friendly-table td {
    padding-left: 9px !important;
    padding-right: 9px !important;
  }
}

@media (max-width: 760px) {
  .leads-page .lead-map-compact,
  .leads-page .lead-map-unavailable {
    justify-self: start;
  }

  .leads-page .lead-address-text,
  .leads-page .lead-note-preview {
    -webkit-line-clamp: 3;
    line-clamp: 3;
  }

  .leads-page .lead-note-details p {
    max-height: 130px !important;
  }
}



/* Exact lead location picker — search, GPS and draggable pin */
.crm-location-picker[hidden]{display:none!important}.crm-location-picker{position:fixed;inset:0;z-index:12000;display:grid;place-items:center;padding:18px}.crm-location-picker-backdrop{position:absolute;inset:0;background:rgba(7,25,52,.66);backdrop-filter:blur(3px)}.crm-location-picker-dialog{position:relative;z-index:1;width:min(900px,100%);max-height:calc(100dvh - 36px);overflow:auto;border:1px solid #c9dcf5;border-radius:20px;background:#fff;box-shadow:0 30px 90px rgba(8,31,68,.32)}.crm-location-picker-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid #dce8f6;background:linear-gradient(135deg,#f7fbff,#eef6ff)}.crm-location-picker-head h2{margin:3px 0 5px;color:#0b326b}.crm-location-picker-head small{color:#64748b}.crm-location-picker-close{display:grid;place-items:center;width:40px;height:40px;flex:0 0 40px;border:0;border-radius:12px;background:#e8f1fb;color:#24496f;font-size:28px;cursor:pointer}.crm-location-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:9px;padding:14px 18px}.crm-location-search-row input{min-height:46px;border:1px solid #c9d9ec;border-radius:12px;padding:0 14px;font:inherit}.crm-location-search-results{max-height:210px;margin:0 18px 12px;overflow-y:auto;border:1px solid #d9e6f4;border-radius:12px;background:#fff}.crm-location-result{display:grid;width:100%;gap:3px;padding:11px 13px;border:0;border-bottom:1px solid #edf2f7;background:#fff;text-align:left;cursor:pointer}.crm-location-result:last-child{border-bottom:0}.crm-location-result:hover{background:#f2f8ff}.crm-location-result strong{color:#123b72}.crm-location-result small{color:#64748b;line-height:1.35}.crm-location-result-empty{padding:14px;color:#64748b}.crm-location-map{height:min(48dvh,430px);min-height:310px;margin:0 18px;border:1px solid #cbddef;border-radius:16px;overflow:hidden;background:#eaf1f8}.crm-location-selected{display:grid;gap:4px;margin:12px 18px;padding:12px 14px;border:1px solid #cce2f8;border-radius:13px;background:#f5faff}.crm-location-selected span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#4b6b91}.crm-location-selected strong{color:#102f63}.crm-location-selected small{color:#64748b}.crm-location-picker-actions{display:flex;justify-content:flex-end;gap:10px;padding:0 18px 18px}.crm-location-picker-open{overflow:hidden}.leaflet-container{font-family:inherit}.map-input-card .map-action-row{align-items:center}.map-input-card [data-exact-location-picker]{min-width:190px}
@media(max-width:700px){.crm-location-picker{padding:0}.crm-location-picker-dialog{width:100%;max-height:100dvh;height:100dvh;border-radius:0}.crm-location-picker-head{padding:15px}.crm-location-search-row{grid-template-columns:1fr 1fr;padding:12px}.crm-location-search-row input{grid-column:1/-1}.crm-location-search-results{margin:0 12px 10px}.crm-location-map{height:44dvh;min-height:270px;margin:0 12px}.crm-location-selected{margin:10px 12px}.crm-location-picker-actions{padding:0 12px 14px}.crm-location-picker-actions .btn{flex:1}.map-input-card .map-action-row .btn{width:100%}}


/* EOD PDF and Excel download controls */
.eod-daily-head-actions {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

.eod-download-actions,
.eod-row-download-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.eod-download-button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 7px;
  white-space: nowrap;
}

.eod-download-button > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 37px;
  height: 24px;
  padding: 0 6px;
  border-radius: 7px;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .04em;
}

.eod-download-button.is-pdf > span {
  background: #fee2e2;
  color: #b91c1c;
}

.eod-download-button.is-excel > span {
  background: #dcfce7;
  color: #166534;
}

.eod-download-button.is-pdf:hover {
  border-color: #fecaca !important;
  background: #fff7f7 !important;
}

.eod-download-button.is-excel:hover {
  border-color: #bbf7d0 !important;
  background: #f4fff7 !important;
}

.eod-row-download-actions {
  min-width: 230px;
  margin-bottom: 8px;
}

@media (max-width: 760px) {
  .eod-daily-submit-card .card-head {
    gap: 14px;
  }

  .eod-daily-head-actions {
    width: 100%;
    align-items: stretch;
    justify-content: flex-start;
  }

  .eod-download-actions {
    width: 100%;
  }

  .eod-download-actions .eod-download-button {
    flex: 1 1 150px;
  }

  .eod-detail-actions {
    width: 100%;
  }

  .eod-detail-actions .eod-download-button {
    flex: 1 1 150px;
  }
}



/* Phase 160: direct employee chat, task issues and To-Do/EOD comparison */
.direct-chat-shell{display:grid;grid-template-columns:minmax(270px,330px) minmax(0,1fr);height:calc(100dvh - 118px);min-height:620px;border:1px solid #dbe7f5;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 18px 45px rgba(15,45,90,.1)}
.direct-people-panel{display:flex;flex-direction:column;min-height:0;border-right:1px solid #dbe7f5;background:#f8fbff}.direct-panel-head{display:flex;align-items:center;justify-content:space-between;padding:18px;border-bottom:1px solid #e3edf8}.direct-panel-head h2{margin:2px 0;color:#0b2d64}.direct-panel-head>span{display:grid;place-items:center;min-width:34px;height:34px;border-radius:50%;background:#dbeafe;color:#0755b8;font-weight:800}.direct-search{padding:12px}.direct-search input{width:100%;padding:11px 14px;border:1px solid #d4e2f3;border-radius:14px}.direct-people-list{flex:1;min-height:0;overflow-y:auto;padding:0 10px 12px}.direct-person{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;margin:4px 0;border:1px solid transparent;border-radius:14px;color:#17365f;text-decoration:none}.direct-person:hover,.direct-person.active{background:#eaf3ff;border-color:#9fc5ff}.direct-person-avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#0b63ce,#19a463);color:#fff;font-weight:900}.direct-person-avatar.large{width:48px;height:48px}.direct-person b,.direct-person small{display:block}.direct-person small{margin-top:3px;color:#6b7f99;font-size:11px}.direct-person em{display:grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:#16a34a;color:#fff;font-style:normal;font-size:11px;font-weight:800}.direct-conversation{display:flex;flex-direction:column;min-width:0;min-height:0;background:linear-gradient(180deg,#f3f8ff,#eaf2fb)}.direct-conversation-head{display:flex;align-items:center;gap:12px;flex:0 0 auto;padding:14px 18px;border-bottom:1px solid #dbe7f5;background:#fff}.direct-conversation-head h2{margin:0;color:#0b2d64}.direct-conversation-head p{margin:3px 0 0;color:#64748b;font-size:12px}.direct-private-pill{margin-left:auto;padding:7px 11px;border-radius:999px;background:#ecfdf5;color:#047857;font-size:11px;font-weight:800}.direct-message-thread{flex:1;min-height:0;overflow-y:auto;padding:20px 24px}.direct-message{display:flex;align-items:flex-end;gap:9px;margin:11px 0}.direct-message.mine{flex-direction:row-reverse}.direct-avatar{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;background:#0f9b57;color:#fff;font-weight:900}.direct-message.mine .direct-avatar{background:#1266c3}.direct-bubble{position:relative;max-width:min(72%,700px);padding:11px 13px 8px;border:1px solid #dbeafe;border-radius:18px 18px 18px 5px;background:#fff;box-shadow:0 6px 16px rgba(15,45,90,.06);overflow-wrap:anywhere}.direct-message.mine .direct-bubble{border-color:#a7e6c5;border-radius:18px 18px 5px 18px;background:#e9fff3}.direct-sender{display:flex;align-items:center;gap:8px;margin-bottom:6px;color:#0b2d64}.direct-sender small{color:#64748b}.direct-bubble p{margin:0 0 7px;line-height:1.5}.direct-bubble footer{display:flex;align-items:center;justify-content:flex-end;gap:5px;color:#6b7f99;font-size:10px}.direct-ticks{color:#64748b}.direct-ticks.read{color:#1687ff}.direct-file{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:7px 0;padding:10px;border:1px solid #dbe7f5;border-radius:12px;background:#fff;color:#174b86;text-decoration:none}.direct-file small{color:#64748b}.direct-media-preview{display:grid;gap:6px;color:#174b86;text-decoration:none}.direct-media-preview img{max-width:300px;max-height:240px;border-radius:12px;object-fit:cover}.direct-audio,.direct-video{display:grid;gap:5px;margin-top:7px}.direct-audio audio{width:min(360px,100%)}.direct-video video{width:min(420px,100%);max-height:280px;border-radius:12px}.direct-composer{flex:0 0 auto;padding:12px 16px;border-top:1px solid #dbe7f5;background:#fff}.direct-composer textarea{width:100%;min-height:70px;max-height:130px;padding:13px 15px;border:1px solid #cbdcf0;border-radius:16px;resize:vertical}.direct-composer-actions{display:flex;align-items:center;gap:9px;margin-top:9px;flex-wrap:wrap}.direct-action-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 13px;border:1px solid #bcd5f4;border-radius:12px;background:#f5f9ff;color:#0755b8;font-weight:800;cursor:pointer}.direct-action-button input{display:none}.direct-action-button.is-stop{border-color:#fecaca;background:#fff1f2;color:#b91c1c}.direct-selection-status{color:#64748b;font-size:11px}.direct-send{margin-left:auto;min-width:90px}.direct-empty{display:grid;place-items:center;gap:5px;padding:24px;color:#64748b;text-align:center}.direct-empty.large{margin:auto}.task-start-direct{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border:1px solid #bbf7d0;border-radius:14px;background:#f0fdf4}.task-start-explain{display:grid;gap:4px}.task-start-explain b{color:#166534}.task-start-explain span{color:#4b6b5a;font-size:12px}.task-stop-workflow-grid{grid-template-columns:minmax(220px,.8fr) minmax(280px,1.4fr) 120px minmax(170px,.8fr) auto!important}.task-conditional-comment textarea{min-height:90px}.task-issue-hero{display:flex;align-items:center;justify-content:space-between;gap:20px}.task-issue-hero form{display:flex;gap:8px}.task-issue-stats .card{display:grid;gap:6px;padding:18px}.task-issue-stats b{font-size:28px;color:#0b2d64}.task-issue-list{display:grid;gap:14px}.task-issue-card{border-left:5px solid #f59e0b}.task-issue-card.issue{border-left-color:#ef4444}.task-issue-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.task-issue-card h3{margin:6px 0 2px;color:#0b2d64}.task-issue-card header p{margin:0;color:#64748b}.task-issue-type{display:inline-flex;padding:5px 9px;border-radius:999px;background:#fff7ed;color:#c2410c;font-size:11px;font-weight:900;text-transform:uppercase}.task-issue-card.issue .task-issue-type{background:#fef2f2;color:#b91c1c}.task-issue-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.task-issue-meta span{display:grid;gap:3px;padding:10px;border-radius:11px;background:#f8fafc;color:#334155;font-size:12px}.task-issue-comment,.task-issue-resolution{padding:12px;border-radius:12px;background:#fff7ed}.task-issue-resolution{background:#ecfdf5}.task-issue-comment p,.task-issue-resolution p{margin:6px 0}.task-issue-resolve-form{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:12px}.task-issue-resolve-form textarea{min-height:70px}.daily-compare-hero{display:flex;align-items:center;justify-content:space-between;gap:18px}.daily-compare-hero form{display:flex;gap:8px;flex-wrap:wrap}.daily-compare-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}.daily-compare-steps .card{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:4px 10px;padding:16px}.daily-compare-steps b{grid-row:1/3;display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#dbeafe;color:#0755b8}.daily-compare-steps span{color:#64748b;font-size:11px;text-transform:uppercase}.daily-compare-steps strong{color:#0b2d64}.daily-compare-table{width:100%;table-layout:fixed}.daily-compare-table th{background:#eff6ff;color:#174b86}.daily-compare-table td{vertical-align:top;padding:15px}.daily-compare-table td b,.daily-compare-table td small{display:block}.daily-compare-table td small{margin-top:4px;color:#64748b}.daily-compare-table td p{margin:9px 0;line-height:1.5;overflow-wrap:anywhere}.compare-result{display:inline-flex;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:900}.compare-result.matched{background:#dcfce7;color:#166534}.compare-result.missing{background:#fee2e2;color:#991b1b}.daily-overall-summary{margin-top:16px;padding:15px;border:1px solid #dbeafe;border-radius:14px;background:#f8fbff}.daily-overall-summary p{margin:7px 0 0;line-height:1.6}.admin-daily-compare-table td small{display:block;margin-top:4px;color:#64748b}.compare-progress{width:110px;height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}.compare-progress i{display:block;height:100%;background:linear-gradient(90deg,#2563eb,#16a34a)}
@media(max-width:1050px){.direct-chat-shell{grid-template-columns:280px minmax(0,1fr)}.task-stop-workflow-grid{grid-template-columns:1fr 1fr!important}.task-issue-meta,.daily-compare-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.direct-chat-shell{display:block;height:auto;min-height:0;overflow:visible}.direct-people-panel{max-height:310px;border-right:0;border-bottom:1px solid #dbe7f5}.direct-conversation{min-height:620px}.direct-message-thread{padding:14px}.direct-bubble{max-width:86%}.direct-private-pill{display:none}.direct-composer-actions{align-items:stretch}.direct-selection-status{width:100%}.direct-send{margin-left:0}.task-start-direct,.task-issue-hero,.daily-compare-hero{align-items:stretch;flex-direction:column}.task-stop-workflow-grid,.task-issue-resolve-form{grid-template-columns:1fr!important}.task-issue-meta,.daily-compare-steps{grid-template-columns:1fr}.daily-compare-table,.daily-compare-table tbody,.daily-compare-table tr,.daily-compare-table td{display:block;width:100%}.daily-compare-table thead{display:none}.daily-compare-table tr{margin-bottom:13px;border:1px solid #dbeafe;border-radius:14px;overflow:hidden}.daily-compare-table td{border-bottom:1px solid #e7eef7}.daily-compare-table td:last-child{border-bottom:0}}


/* My Tasks — balanced Stop Task form padding and responsive sizing */
.current-task-workbox .task-stop-form {
  min-width: 0;
}

.current-task-workbox .task-running-banner {
  min-height: 64px;
  padding: 15px 18px !important;
  margin-bottom: 18px !important;
}

.current-task-workbox .task-running-banner b {
  font-size: 17px;
}

.current-task-workbox .task-running-banner small {
  white-space: nowrap;
  font-size: 13px;
}

.task-stop-workflow-grid {
  display: grid !important;
  grid-template-columns:
    minmax(230px, 1.05fr)
    minmax(140px, .55fr)
    minmax(220px, .95fr)
    minmax(145px, .55fr) !important;
  grid-template-areas: "status progress file action";
  gap: 16px !important;
  align-items: end !important;
  width: 100%;
  min-width: 0;
}

.task-stop-workflow-grid.has-comment {
  grid-template-areas:
    "status comment comment comment"
    "progress file file action";
}

.task-stop-status-field {
  grid-area: status;
}

.task-conditional-comment {
  grid-area: comment;
}

.task-progress-field {
  grid-area: progress;
}

.task-file-field {
  grid-area: file;
}

.task-stop-submit {
  grid-area: action;
  align-self: end;
  width: 100%;
  min-width: 145px;
  min-height: 54px;
  padding: 11px 16px !important;
  white-space: nowrap !important;
  line-height: 1.2;
  font-size: 15px;
}

.task-stop-workflow-grid .field {
  display: grid;
  align-content: end;
  gap: 7px;
  min-width: 0;
  margin: 0 !important;
}

.task-stop-workflow-grid .field > label {
  margin: 0 !important;
  color: #334155;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.3;
}

.task-stop-workflow-grid .field > small {
  display: block;
  min-height: 18px;
  margin: 0 !important;
  color: #64748b;
  font-size: 12px;
  line-height: 1.45;
}

.task-stop-workflow-grid select,
.task-stop-workflow-grid input[type="number"] {
  width: 100%;
  min-width: 0;
  min-height: 54px;
  padding: 0 14px;
  border-radius: 14px;
}

.task-stop-workflow-grid .task-conditional-comment textarea {
  width: 100%;
  min-width: 0;
  min-height: 104px !important;
  max-height: 180px;
  padding: 13px 15px !important;
  border-radius: 14px;
  line-height: 1.45;
  resize: vertical;
}

.task-stop-workflow-grid input[type="file"] {
  display: block;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: 54px;
  padding: 7px 9px !important;
  overflow: hidden;
  border-radius: 14px;
  font-size: 12px;
}

.task-stop-workflow-grid input[type="file"]::file-selector-button {
  min-height: 36px;
  margin-right: 9px;
  padding: 0 12px;
  border: 1px solid #bfd1e7;
  border-radius: 9px;
  background: #f4f8fd;
  color: #24496f;
  font-weight: 800;
  cursor: pointer;
}

@media (max-width: 1050px) {
  .task-stop-workflow-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-template-areas:
      "status progress"
      "file action";
  }

  .task-stop-workflow-grid.has-comment {
    grid-template-areas:
      "status comment"
      "progress file"
      "action action";
  }

  .task-stop-workflow-grid.has-comment .task-stop-submit {
    max-width: 320px;
    justify-self: end;
  }
}

@media (max-width: 640px) {
  .current-task-workbox {
    padding: 13px !important;
  }

  .current-task-workbox .task-running-banner {
    align-items: flex-start;
    flex-wrap: wrap;
    min-height: 0;
    padding: 13px !important;
  }

  .current-task-workbox .task-running-banner small {
    width: 100%;
    margin: 4px 0 0 19px !important;
    white-space: normal;
  }

  .task-stop-workflow-grid,
  .task-stop-workflow-grid.has-comment {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-areas:
      "status"
      "comment"
      "progress"
      "file"
      "action";
    gap: 13px !important;
  }

  .task-stop-workflow-grid .task-conditional-comment[hidden] {
    display: none !important;
  }

  .task-stop-submit,
  .task-stop-workflow-grid.has-comment .task-stop-submit {
    width: 100%;
    max-width: none;
    min-height: 50px;
  }
}


/* Final My Tasks Stop form layout correction */
.current-task-workbox {
  box-sizing: border-box;
  padding: 18px !important;
}

.task-stop-workflow-grid {
  grid-auto-flow: row !important;
  grid-auto-rows: auto !important;
  align-items: start !important;
  padding: 0 !important;
}

.task-stop-workflow-grid .task-conditional-comment[hidden],
.task-stop-workflow-grid .task-conditional-comment[aria-hidden="true"] {
  display: none !important;
}

.task-stop-workflow-grid .task-conditional-comment:not([hidden]) {
  display: grid !important;
}

.task-stop-workflow-grid:not(.has-comment) {
  grid-template-areas: "status progress file action" !important;
}

.task-stop-workflow-grid:not(.has-comment) .task-stop-status-field,
.task-stop-workflow-grid:not(.has-comment) .task-progress-field,
.task-stop-workflow-grid:not(.has-comment) .task-file-field,
.task-stop-workflow-grid:not(.has-comment) .task-stop-submit {
  align-self: end !important;
}

.task-stop-workflow-grid.has-comment {
  grid-template-areas:
    "status comment comment comment"
    "progress file file action" !important;
  row-gap: 14px !important;
}

.task-stop-workflow-grid.has-comment .task-stop-status-field,
.task-stop-workflow-grid.has-comment .task-conditional-comment {
  align-self: start !important;
}

.task-stop-workflow-grid .task-stop-status-field small,
.task-stop-workflow-grid .task-conditional-comment small {
  min-height: 0 !important;
}

.task-stop-workflow-grid .task-conditional-comment textarea {
  min-height: 96px !important;
}

.task-stop-submit {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
}

@media (max-width: 1050px) {
  .task-stop-workflow-grid:not(.has-comment) {
    grid-template-areas:
      "status progress"
      "file action" !important;
  }

  .task-stop-workflow-grid.has-comment {
    grid-template-areas:
      "status status"
      "comment comment"
      "progress file"
      "action action" !important;
  }

  .task-stop-workflow-grid.has-comment .task-stop-submit {
    width: min(100%, 320px);
    justify-self: end;
  }
}

@media (max-width: 640px) {
  .current-task-workbox {
    padding: 13px !important;
  }

  .task-stop-workflow-grid:not(.has-comment),
  .task-stop-workflow-grid.has-comment {
    grid-template-areas:
      "status"
      "comment"
      "progress"
      "file"
      "action" !important;
  }

  .task-stop-workflow-grid .task-conditional-comment[hidden],
  .task-stop-workflow-grid .task-conditional-comment[aria-hidden="true"] {
    display: none !important;
  }

  .task-stop-workflow-grid.has-comment .task-stop-submit {
    width: 100%;
    justify-self: stretch;
  }
}

/* To-Do and EOD pagination — employee and management panels */
.crm-pagination-wrap{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  margin-top:16px;
  padding-top:14px;
  border-top:1px solid #e2e8f0;
}
.crm-pagination-wrap>span{
  color:#64748b;
  font-size:13px;
  font-weight:700;
}
.crm-pagination{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
}
.crm-pagination a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:38px;
  min-height:38px;
  padding:7px 11px;
  border:1px solid #cbd5e1;
  border-radius:10px;
  background:#fff;
  color:#17457d;
  font-size:13px;
  font-weight:800;
  text-decoration:none;
  transition:background .18s ease,border-color .18s ease,transform .18s ease;
}
.crm-pagination a:hover{
  border-color:#7fb2f5;
  background:#eff6ff;
  transform:translateY(-1px);
}
.crm-pagination a.active{
  border-color:#1768d1;
  background:#1768d1;
  color:#fff;
  box-shadow:0 7px 16px rgba(23,104,209,.2);
}
@media(max-width:640px){
  .crm-pagination-wrap{align-items:flex-start;flex-direction:column}
  .crm-pagination{width:100%;overflow-x:auto;padding-bottom:3px;flex-wrap:nowrap}
  .crm-pagination a{flex:0 0 auto}
}


/* EOD employee list and click-through To-Do/EOD detail layout */
.eod-list-hero .admin-eod-filter{max-width:760px}
.eod-list-total-work{display:grid;gap:4px;text-align:right;color:#64748b}.eod-list-total-work strong{color:#123767;font-size:15px}
.eod-employee-list-wrap{overflow-x:auto!important}.eod-employee-list-table{width:100%;min-width:980px;table-layout:fixed}.eod-employee-list-table th,.eod-employee-list-table td{padding:14px 13px!important;vertical-align:middle}.eod-employee-list-table th:nth-child(1){width:23%}.eod-employee-list-table th:nth-child(2){width:18%}.eod-employee-list-table th:nth-child(3){width:17%}.eod-employee-list-table th:nth-child(4){width:13%}.eod-employee-list-table th:nth-child(5){width:14%}.eod-employee-list-table th:nth-child(6){width:15%}
.eod-employee-name-link{display:flex;align-items:center;gap:12px;min-width:0;text-decoration:none}.eod-employee-name-link>span:last-child{display:grid;gap:3px;min-width:0}.eod-employee-name-link strong{color:#0e3b74;font-size:15px}.eod-employee-name-link small,.eod-employee-list-table td>small{display:block;color:#64748b;font-size:12px;line-height:1.35}.eod-employee-name-link:hover strong{text-decoration:underline}
.eod-employee-avatar{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:13px;background:linear-gradient(135deg,#0f63c8,#20b76b);color:#fff;font-size:18px;font-weight:900;box-shadow:0 8px 18px rgba(15,99,200,.18)}.eod-employee-avatar.is-large{width:58px;height:58px;flex-basis:58px;border-radius:17px;font-size:24px}
.eod-list-task-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.eod-list-task-counts strong{grid-column:1/-1;color:#1e3a5f}.eod-list-task-counts span{padding:5px 6px;border-radius:8px;background:#f3f7fc;color:#52677f;font-size:10.5px;text-align:center;white-space:nowrap}
.eod-list-coverage{display:grid;gap:6px}.eod-list-coverage>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:8px}.eod-list-coverage>div:first-child span{color:#64748b;font-size:12px}.eod-list-coverage small{color:#64748b;font-size:11.5px}.eod-list-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.eod-list-actions .btn{min-height:34px;padding:6px 9px!important}
.eod-detail-employee{display:flex;align-items:center;gap:14px}.eod-comparison-hero{align-items:center}.eod-comparison-stats{grid-template-columns:repeat(4,minmax(0,1fr))!important}.eod-submission-meta{display:grid;gap:3px;text-align:right}.eod-submission-meta span{color:#64748b;font-size:11px;text-transform:uppercase;font-weight:800}.eod-submission-meta strong{color:#163a67;font-size:13px}
.eod-coverage-badge{display:grid;place-items:center;min-width:96px;padding:10px 14px;border:1px solid #bfdbfe;border-radius:14px;background:#eff6ff}.eod-coverage-badge strong{color:#0755b8;font-size:22px}.eod-coverage-badge span{color:#64748b;font-size:11px}
.eod-comparison-table{width:100%;min-width:980px;table-layout:fixed}.eod-comparison-table th:nth-child(1){width:36%}.eod-comparison-table th:nth-child(2){width:38%}.eod-comparison-table th:nth-child(3){width:26%}.eod-comparison-table th,.eod-comparison-table td{padding:15px!important;vertical-align:top}.eod-plan-cell,.eod-update-cell,.eod-result-cell{display:grid;gap:8px;min-width:0}.eod-plan-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.eod-plan-heading strong{color:#15385f}.eod-plan-cell>small{color:#64748b}.eod-plan-cell p,.eod-update-cell p{margin:0;color:#334155;line-height:1.5;overflow-wrap:anywhere}.eod-update-cell>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.eod-update-cell>div small{color:#64748b}.eod-result-cell dl{display:grid;gap:5px;margin:0}.eod-result-cell dl div{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px solid #eef2f7}.eod-result-cell dl div:last-child{border-bottom:0}.eod-result-cell dt{color:#64748b;font-size:12px}.eod-result-cell dd{margin:0;color:#1e3a5f;font-size:12px;font-weight:800}
.eod-detail-review-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end}.eod-detail-review-form label{display:grid;gap:7px}.eod-detail-review-form label span{color:#334155;font-weight:800}.eod-detail-review-form textarea{width:100%;min-height:100px}.eod-detail-review-form>div{display:flex;gap:8px;flex-wrap:wrap}.eod-detail-review-form .btn{min-width:150px}
@media(max-width:900px){.eod-list-total-work,.eod-submission-meta{text-align:left}.eod-comparison-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.eod-detail-review-form{grid-template-columns:1fr}.eod-detail-review-form>div{justify-content:flex-start}}
@media(max-width:700px){.eod-employee-list-wrap,.eod-comparison-table-wrap{overflow:visible!important;border:0}.eod-employee-list-table,.eod-employee-list-table tbody,.eod-employee-list-table tr,.eod-employee-list-table td,.eod-comparison-table,.eod-comparison-table tbody,.eod-comparison-table tr,.eod-comparison-table td{display:block;width:100%!important;min-width:0!important}.eod-employee-list-table thead,.eod-comparison-table thead{display:none}.eod-employee-list-table tbody,.eod-comparison-table tbody{display:grid;gap:14px}.eod-employee-list-table tr,.eod-comparison-table tr{overflow:hidden;border:1px solid #dbe7f5;border-radius:16px;background:#fff;box-shadow:0 8px 22px rgba(15,45,90,.07)}.eod-employee-list-table td,.eod-comparison-table td{display:grid;grid-template-columns:minmax(112px,35%) minmax(0,1fr);gap:10px;padding:12px 13px!important;border-bottom:1px solid #edf2f7}.eod-employee-list-table td:last-child,.eod-comparison-table td:last-child{border-bottom:0}.eod-employee-list-table td::before,.eod-comparison-table td::before{content:attr(data-label);color:#31527e;font-size:12px;font-weight:800}.eod-employee-name-link,.eod-list-task-counts,.eod-list-coverage,.eod-list-actions,.eod-plan-cell,.eod-update-cell,.eod-result-cell{min-width:0}.eod-list-task-counts{grid-template-columns:1fr}.eod-list-task-counts strong{grid-column:auto}.eod-comparison-hero,.eod-detail-employee{align-items:flex-start;flex-direction:column}.eod-detail-actions{width:100%}.eod-detail-actions .btn{flex:1 1 auto;text-align:center}.eod-comparison-stats{grid-template-columns:1fr!important}.eod-detail-review-form>div{display:grid;grid-template-columns:1fr}.eod-detail-review-form .btn{width:100%;min-width:0}}


/* Direct Chat — WhatsApp-style responsive private communication */
.direct-chat-shell{display:grid;grid-template-columns:340px minmax(0,1fr);height:calc(100dvh - 112px);min-height:560px;max-height:900px;border:1px solid #d8e2ec;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 14px 36px rgba(15,23,42,.10)}
.direct-people-panel{display:flex;flex-direction:column;min-width:0;min-height:0;border-right:1px solid #d9e2ea;background:#fff}
.direct-panel-head{display:flex;align-items:center;justify-content:space-between;min-height:76px;padding:14px 16px;border-bottom:1px solid #e7edf2;background:#f7f9fb}
.direct-panel-head .eyebrow{margin:0 0 2px;color:#66788a;font-size:10px;letter-spacing:.08em}
.direct-panel-head h2{margin:0;color:#142b3e;font-size:20px}
.direct-panel-head>span{display:grid;place-items:center;min-width:32px;height:32px;padding:0 8px;border-radius:999px;background:#e4f4ec;color:#08764b;font-size:12px;font-weight:800}
.direct-search-wrap{position:relative;margin:11px 12px 7px}
.direct-search-wrap>span{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#607285;font-size:22px;line-height:1;pointer-events:none}
.direct-search-wrap input{width:100%;height:42px;padding:0 13px 0 39px;border:1px solid #d8e2ea;border-radius:12px;background:#f4f7f9;color:#142b3e;outline:none}
.direct-search-wrap input:focus{border-color:#2d9d73;background:#fff;box-shadow:0 0 0 3px rgba(45,157,115,.12)}
.direct-contact-filters{display:flex;gap:6px;padding:0 12px 8px;overflow-x:auto}
.direct-contact-filters button{flex:0 0 auto;padding:6px 10px;border:1px solid #dce5eb;border-radius:999px;background:#fff;color:#53697c;font-size:11px;font-weight:700;cursor:pointer}
.direct-contact-filters button.active{border-color:#bde5d3;background:#e7f7ef;color:#08764b}
.direct-people-list{flex:1;min-height:0;overflow-y:auto;padding:2px 7px 10px}
.direct-person{display:grid;grid-template-columns:47px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:72px;margin:1px 0;padding:9px;border:0;border-radius:11px;color:#142b3e;text-decoration:none;transition:background .15s ease}
.direct-person:hover{background:#f2f6f8}
.direct-person.active{background:#e8f5ef}
.direct-person-avatar{display:grid;place-items:center;width:47px;height:47px;border-radius:50%;background:linear-gradient(145deg,#147a61,#30a77d);color:#fff;font-size:16px;font-weight:900;box-shadow:inset 0 0 0 1px rgba(255,255,255,.25)}
.direct-person-avatar.large{width:44px;height:44px;flex:0 0 44px}
.direct-person-copy{display:block;min-width:0}
.direct-person-title{display:flex;align-items:center;gap:7px;min-width:0}
.direct-person-title b{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.direct-person-title small{flex:0 0 auto;padding:2px 6px;border-radius:999px;background:#eef3f6;color:#6b7c8c;font-size:8px;font-weight:800;text-transform:uppercase}
.direct-person-preview,.direct-person-meta{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.direct-person-preview{margin-top:4px;color:#637687;font-size:11px}
.direct-person-meta{margin-top:3px;color:#8a9aa8;font-size:9px}
.direct-person-side{display:grid;justify-items:end;align-self:stretch;padding-top:4px}
.direct-person-side time{color:#8a9aa8;font-size:9px}
.direct-person-side em{display:grid;place-items:center;align-self:end;min-width:21px;height:21px;padding:0 5px;border-radius:999px;background:#16a66d;color:#fff;font-size:9px;font-style:normal;font-weight:900}
.direct-conversation{display:flex;flex-direction:column;min-width:0;min-height:0;background-color:#efeae2;background-image:linear-gradient(rgba(255,255,255,.64),rgba(255,255,255,.64)),radial-gradient(circle at 20% 15%,rgba(24,119,84,.06) 0 2px,transparent 2.5px),radial-gradient(circle at 70% 70%,rgba(24,119,84,.05) 0 2px,transparent 2.5px);background-size:auto,28px 28px,34px 34px}
.direct-conversation-head{display:flex;align-items:center;gap:11px;min-height:76px;padding:10px 15px;border-bottom:1px solid #dbe3e9;background:#f6f8f9}
.direct-chat-recipient{min-width:0}
.direct-chat-recipient h2{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#142b3e;font-size:16px}
.direct-chat-recipient p{margin:4px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#6a7b89;font-size:10px}
.direct-private-pill{display:inline-flex;align-items:center;gap:6px;margin-left:auto;padding:6px 10px;border:1px solid #cfe9dd;border-radius:999px;background:#effaf5;color:#08764b;font-size:10px;font-weight:800}
.direct-private-pill i{width:7px;height:7px;border-radius:50%;background:#18a56f;box-shadow:0 0 0 3px rgba(24,165,111,.13)}
.direct-mobile-back{display:none;place-items:center;width:34px;height:34px;border-radius:50%;color:#17384b;text-decoration:none;font-size:30px;line-height:1}
.direct-message-thread{flex:1;min-height:0;overflow-y:auto;padding:18px clamp(14px,4vw,52px);scroll-behavior:smooth}
.direct-day-banner{position:sticky;top:4px;z-index:1;width:max-content;margin:8px auto 15px;padding:5px 9px;border-radius:7px;background:rgba(240,248,252,.94);box-shadow:0 1px 3px rgba(15,23,42,.10);color:#607383;font-size:9px;font-weight:800}
.direct-message{display:flex;margin:4px 0}
.direct-message.mine{justify-content:flex-end}
.direct-message.other{justify-content:flex-start}
.direct-bubble{position:relative;max-width:min(76%,680px);padding:7px 9px 5px;border:0;border-radius:8px;background:#fff;box-shadow:0 1px 2px rgba(15,23,42,.14);overflow-wrap:anywhere}
.direct-message.other .direct-bubble{border-top-left-radius:2px}
.direct-message.mine .direct-bubble{border-radius:8px 2px 8px 8px;background:#d9fdd3}
.direct-message.other .direct-bubble:before,.direct-message.mine .direct-bubble:before{content:"";position:absolute;top:0;width:0;height:0;border-style:solid}
.direct-message.other .direct-bubble:before{left:-7px;border-width:0 8px 9px 0;border-color:transparent #fff transparent transparent}
.direct-message.mine .direct-bubble:before{right:-7px;border-width:0 0 9px 8px;border-color:transparent transparent transparent #d9fdd3}
.direct-sender{display:flex;align-items:center;gap:7px;margin:0 0 4px;color:#0f7b59;font-size:10px}
.direct-sender small{color:#7a8a97;font-size:8px}
.direct-bubble p{margin:0 0 2px;color:#1f2c34;font-size:12px;line-height:1.45;white-space:normal}
.direct-bubble footer{display:flex;align-items:center;justify-content:flex-end;gap:4px;min-height:14px;margin-left:35px;color:#71818d;font-size:8px;white-space:nowrap}
.direct-ticks{font-size:11px;letter-spacing:-3px;color:#7b8b96}
.direct-ticks.read{color:#1e88e5}
.direct-media-preview{display:grid;gap:4px;min-width:180px;color:#31566c;text-decoration:none}
.direct-media-preview img{display:block;width:min(340px,100%);max-height:320px;border-radius:7px;object-fit:cover;background:#dce5e8}
.direct-media-preview span{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}
.direct-file{display:grid;grid-template-columns:38px minmax(0,1fr) 24px;align-items:center;gap:9px;min-width:min(310px,65vw);margin:3px 0;padding:8px;border:1px solid rgba(78,104,117,.16);border-radius:8px;background:rgba(255,255,255,.58);color:#23485d;text-decoration:none}
.direct-file.missing{display:block;color:#b42318;font-size:10px}
.direct-file-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:7px;background:#eef3f5;color:#476171;font-size:8px;font-weight:900}
.direct-file-copy{display:block;min-width:0}
.direct-file-copy b,.direct-file-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.direct-file-copy b{font-size:10px}.direct-file-copy small{margin-top:3px;color:#70828f;font-size:8px}
.direct-download-mark{display:grid;place-items:center;width:22px;height:22px;border:1px solid #c9d4da;border-radius:50%;font-weight:900}
.direct-audio,.direct-video{display:grid;gap:4px;margin:2px 0}
.direct-audio audio{width:min(330px,65vw);height:42px}
.direct-audio a,.direct-video a{max-width:320px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#31566c;font-size:8px}
.direct-video video{width:min(390px,68vw);max-height:300px;border-radius:7px;background:#000}
.direct-conversation-start{display:grid;justify-items:center;max-width:420px;margin:40px auto;padding:16px;border-radius:11px;background:rgba(255,255,255,.74);color:#617481;text-align:center;box-shadow:0 2px 8px rgba(15,23,42,.08)}
.direct-conversation-start>span{font-size:20px}.direct-conversation-start b{margin-top:5px;color:#314d5d;font-size:12px}.direct-conversation-start p{margin:5px 0 0;font-size:10px;line-height:1.5}
.direct-composer{position:relative;flex:0 0 auto;padding:7px 10px 6px;border-top:1px solid #d9e1e6;background:#f0f2f5}
.direct-compose-row{display:flex;align-items:flex-end;gap:5px}
.direct-compose-icon,.direct-send{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:transparent;color:#5f6f79;font-size:20px;cursor:pointer}
.direct-compose-icon:hover{background:#e2e7ea}.direct-compose-icon:disabled{opacity:.45;cursor:not-allowed}
.direct-composer textarea{flex:1;min-width:0;min-height:40px;max-height:120px;padding:10px 13px;border:0;border-radius:19px;background:#fff;color:#1f2c34;font:inherit;font-size:12px;line-height:20px;resize:none;outline:none;box-shadow:none}
.direct-send{background:#0b8f68;color:#fff;font-size:18px;transform:rotate(-3deg)}
.direct-send:hover{background:#087b5b}.direct-send:disabled{opacity:.65;cursor:wait}
.direct-composer-help{margin:5px 46px 0;color:#84929c;font-size:8px;text-align:right}
.direct-emoji-wrap{position:relative}
.direct-emoji-picker{position:absolute;left:0;bottom:49px;z-index:5;display:grid;grid-template-columns:repeat(4,38px);gap:3px;padding:8px;border:1px solid #d4dee4;border-radius:11px;background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.18)}
.direct-emoji-picker[hidden]{display:none}
.direct-emoji-picker button{display:grid;place-items:center;width:38px;height:36px;border:0;border-radius:7px;background:transparent;font-size:19px;cursor:pointer}.direct-emoji-picker button:hover{background:#eef3f5}
.direct-attachment-preview{display:flex;gap:7px;overflow-x:auto;padding:2px 2px 8px}
.direct-attachment-preview[hidden]{display:none}
.direct-selected-file{position:relative;display:grid;grid-template-columns:42px minmax(80px,150px);align-items:center;gap:7px;flex:0 0 auto;padding:5px 29px 5px 5px;border:1px solid #d7e0e5;border-radius:9px;background:#fff}
.direct-selected-file img,.direct-selected-file>span{display:grid;place-items:center;width:42px;height:42px;border-radius:6px;background:#e9eef1;color:#58707e;font-size:8px;font-weight:900;object-fit:cover}
.direct-selected-file b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#38505f;font-size:9px}
.direct-selected-file button{position:absolute;right:5px;top:5px;display:grid;place-items:center;width:20px;height:20px;border:0;border-radius:50%;background:#e7ecef;color:#435c6b;cursor:pointer}
.direct-recording-bar,.direct-voice-preview{display:flex;align-items:center;gap:8px;margin-bottom:7px;padding:8px 10px;border:1px solid #d7e1e6;border-radius:10px;background:#fff;color:#415867;font-size:10px}
.direct-recording-bar[hidden],.direct-voice-preview[hidden]{display:none}
.direct-record-dot{width:9px;height:9px;border-radius:50%;background:#e63946;box-shadow:0 0 0 3px rgba(230,57,70,.14);animation:direct-record-pulse 1s infinite}
@keyframes direct-record-pulse{50%{opacity:.35}}
.direct-recording-bar time{margin-right:auto;font-variant-numeric:tabular-nums}
.direct-recording-bar button,.direct-voice-preview button{padding:5px 8px;border:0;border-radius:7px;background:#edf2f4;color:#435966;font-size:9px;font-weight:800;cursor:pointer}
.direct-recording-bar button.is-stop{background:#dff5ea;color:#08764b}
.direct-voice-preview audio{flex:1;min-width:160px;height:34px}.direct-voice-preview button{font-size:16px}
.direct-chat-error{margin-top:6px;padding:7px 9px;border-radius:8px;background:#fff0f0;color:#b42318;font-size:10px;font-weight:700}
.direct-chat-error[hidden]{display:none}
.direct-empty[hidden]{display:none!important}.direct-empty{display:grid;justify-items:center;gap:5px;padding:20px;color:#748591;text-align:center;font-size:10px}.direct-empty b{color:#3d5564;font-size:12px}
.direct-empty.large{margin:auto;max-width:470px}.direct-select-illustration{display:grid;place-items:center;width:82px;height:82px;margin-bottom:8px;border-radius:50%;background:#e5f5ee;font-size:35px}.direct-select-contact span{line-height:1.6}

@media(max-width:1100px){
  .direct-chat-shell{grid-template-columns:300px minmax(0,1fr)}
  .direct-message-thread{padding-left:24px;padding-right:24px}
}
@media(max-width:760px){
  .direct-chat-shell{display:block;height:calc(100dvh - 92px);min-height:520px;max-height:none;border-radius:13px;overflow:hidden}
  .direct-people-panel,.direct-conversation{height:100%;min-height:0}
  .direct-chat-shell.has-selection .direct-people-panel{display:none}
  .direct-chat-shell.no-selection .direct-conversation{display:none}
  .direct-people-panel{max-height:none;border-right:0;border-bottom:0}
  .direct-mobile-back{display:grid}
  .direct-conversation-head{min-height:64px;padding:8px 9px}
  .direct-person-avatar.large{width:40px;height:40px;flex-basis:40px}
  .direct-private-pill{display:none}
  .direct-message-thread{padding:14px 12px}
  .direct-bubble{max-width:86%}
  .direct-bubble p{font-size:11px}
  .direct-composer{padding:7px 6px 5px}
  .direct-compose-row{gap:2px}
  .direct-compose-icon,.direct-send{flex-basis:36px;width:36px;height:36px;font-size:18px}
  .direct-composer textarea{min-height:38px;padding:9px 11px;font-size:11px}
  .direct-composer-help{display:none}
  .direct-file{min-width:min(260px,68vw)}
  .direct-audio audio{width:min(275px,70vw)}
  .direct-voice-preview{flex-wrap:wrap}.direct-voice-preview audio{order:3;flex-basis:100%}
}
@media(max-width:420px){
  .direct-voice-button{display:grid}
  .direct-message-thread{padding-left:9px;padding-right:9px}
  .direct-bubble{max-width:90%}
  .direct-compose-icon{flex-basis:33px;width:33px}
  .direct-selected-file{grid-template-columns:36px minmax(70px,120px)}
  .direct-selected-file img,.direct-selected-file>span{width:36px;height:36px}
}

/* Direct Chat message menu, edit/reply/forward/pin/star/select/report/delete/download actions */
.direct-bubble{padding-top:22px}
.direct-message-menu-trigger{position:absolute;top:2px;right:4px;z-index:4;display:grid;place-items:center;width:26px;height:24px;padding:0;border:0;border-radius:50%;background:transparent;color:#657681;opacity:0;cursor:pointer;transition:opacity .15s ease,background .15s ease}
.direct-message-menu-trigger svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.direct-message:hover .direct-message-menu-trigger,.direct-message:focus-within .direct-message-menu-trigger{opacity:1}
.direct-message-menu-trigger:hover,.direct-message-menu-trigger:focus-visible{opacity:1;background:rgba(86,106,117,.12);outline:none}
.direct-message-menu{position:fixed;z-index:10080;width:220px;max-height:min(520px,calc(100vh - 16px));overflow:auto;padding:6px 0;border:1px solid #d6dee3;border-radius:11px;background:#fff;color:#233846;box-shadow:0 18px 48px rgba(15,23,42,.28)}
.direct-message-menu[hidden]{display:none!important}
.direct-message-menu button{display:flex;align-items:center;gap:13px;width:100%;min-height:41px;padding:0 14px;border:0;background:transparent;color:inherit;text-align:left;font-size:13px;font-weight:700;cursor:pointer}
.direct-message-menu button:hover,.direct-message-menu button:focus-visible{background:#eef3f5;outline:none}
.direct-message-menu button[hidden]{display:none!important}
.direct-message-menu button span{display:grid;place-items:center;width:21px;color:#607481;font-size:16px}
.direct-message-menu button b{font:inherit}
.direct-message-menu button[data-direct-menu-action="pin"],.direct-message-menu button[data-direct-menu-action="star"],.direct-message-menu button[data-direct-menu-action="select"],.direct-message-menu button[data-direct-menu-action="delete"]{border-top:1px solid #edf1f3}
.direct-message-menu button[data-direct-menu-action="delete"],.direct-message-menu button[data-direct-menu-action="report"]{color:#b42318}
.direct-forwarded-label{margin:0 24px 4px 0;color:#71818c;font-size:9px;font-style:italic;font-weight:800}
.direct-reply-reference{display:grid;gap:2px;width:100%;margin:1px 0 6px;padding:7px 9px;border:0;border-left:3px solid #0b8f68;border-radius:6px;background:rgba(255,255,255,.62);color:#365566;text-align:left;cursor:pointer}
.direct-reply-reference b{color:#08764b;font-size:10px}.direct-reply-reference span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}
.direct-deleted-message{margin:0!important;padding:3px 22px 3px 0;color:#70808b!important;font-size:11px!important;font-style:italic}
.direct-message.is-deleted .direct-bubble{background:#f1f4f5}.direct-message.is-deleted.mine .direct-bubble:before{border-color:transparent transparent transparent #f1f4f5}
.direct-message.is-deleted.other .direct-bubble:before{border-color:transparent #f1f4f5 transparent transparent}
.direct-edited-label{font-style:italic}.direct-star-indicator{color:#e6a100;font-size:10px}.direct-pin-indicator{font-size:9px}.direct-star-indicator[hidden],.direct-pin-indicator[hidden]{display:none!important}
.direct-message.is-highlighted .direct-bubble{animation:directMessageHighlight 1.4s ease}
@keyframes directMessageHighlight{0%,100%{box-shadow:0 1px 2px rgba(15,23,42,.14)}35%{box-shadow:0 0 0 7px rgba(14,165,233,.26)}}
.direct-reply-preview{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px;padding:8px 10px;border-left:4px solid #0b8f68;border-radius:8px;background:#fff;color:#415a68}
.direct-reply-preview[hidden]{display:none!important}.direct-reply-preview>div{display:grid;min-width:0}.direct-reply-preview b{color:#08764b;font-size:10px}.direct-reply-preview span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}.direct-reply-preview button{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:50%;background:#edf2f4;color:#5e707b;font-size:20px;cursor:pointer}
.direct-selection-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex:0 0 auto;padding:8px 12px;background:#075e54;color:#fff;box-shadow:0 3px 10px rgba(15,23,42,.14)}
.direct-selection-toolbar[hidden]{display:none!important}.direct-selection-toolbar>div{display:flex;gap:5px}.direct-selection-toolbar button{display:flex;align-items:center;gap:5px;min-height:32px;padding:0 9px;border:0;border-radius:7px;background:rgba(255,255,255,.15);color:#fff;font-size:11px;font-weight:800;cursor:pointer}.direct-selection-toolbar button:hover{background:rgba(255,255,255,.24)}
.direct-message-thread.is-selecting .direct-message{position:relative;cursor:pointer}.direct-message.is-selected .direct-bubble{outline:3px solid #38bdf8;box-shadow:0 0 0 5px rgba(56,189,248,.16)}
.direct-message.is-selected:after{content:'✓';position:absolute;top:50%;width:23px;height:23px;border-radius:50%;background:#0ea5e9;color:#fff;display:grid;place-items:center;font-size:13px;font-weight:900;transform:translateY(-50%)}
.direct-message.mine.is-selected:after{left:2px}.direct-message.other.is-selected:after{right:2px}
.direct-action-modal-backdrop{position:fixed;inset:0;z-index:10100;display:grid;place-items:center;padding:18px;background:rgba(15,23,42,.56)}
.direct-action-modal-backdrop[hidden]{display:none!important}
.direct-action-modal{display:grid;grid-template-rows:auto minmax(70px,1fr) auto;width:min(520px,100%);max-height:min(720px,calc(100vh - 36px));overflow:hidden;border-radius:17px;background:#fff;box-shadow:0 24px 80px rgba(15,23,42,.34)}
.direct-action-modal>header{display:flex;align-items:center;justify-content:space-between;padding:15px 17px;border-bottom:1px solid #e3e9ed}.direct-action-modal h3{margin:0;color:#123b67;font-size:18px}.direct-action-modal>header button{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:50%;background:#eef2f4;color:#526875;font-size:22px;cursor:pointer}
.direct-action-modal-body{padding:17px;overflow:auto;color:#334e5f}.direct-action-modal>footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 17px;border-top:1px solid #e3e9ed}.direct-action-modal>footer:empty{display:none}
.direct-modal-field{display:grid;gap:7px;color:#2e4a5c;font-size:12px;font-weight:800}.direct-modal-field textarea{width:100%;min-height:120px;padding:11px 12px;border:1px solid #cbd7df;border-radius:10px;color:#1f3441;font:inherit;line-height:1.5;resize:vertical;outline:none}.direct-modal-field textarea:focus{border-color:#0b8f68;box-shadow:0 0 0 3px rgba(11,143,104,.12)}
.direct-modal-note{margin:0 0 14px;color:#607381;font-size:12px;line-height:1.55}.direct-forward-search{width:100%;margin-bottom:10px}
.direct-forward-list{display:grid;gap:3px}.direct-forward-list label{display:grid;grid-template-columns:auto 40px minmax(0,1fr);align-items:center;gap:10px;padding:9px;border-radius:10px;cursor:pointer}.direct-forward-list label:hover{background:#f1f6f7}.direct-forward-list label[hidden]{display:none!important}.direct-forward-list input{width:17px;height:17px;accent-color:#0b8f68}.direct-forward-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:linear-gradient(145deg,#147a61,#30a77d);color:#fff;font-weight:900}.direct-forward-list label>span:last-child{display:grid;min-width:0}.direct-forward-list b,.direct-forward-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.direct-forward-list b{color:#223c4b;font-size:12px}.direct-forward-list small{margin-top:3px;color:#748692;font-size:9px}
.direct-chat-toast{position:fixed;left:50%;bottom:28px;z-index:10200;max-width:min(420px,calc(100vw - 30px));padding:10px 15px;border-radius:999px;background:#173d35;color:#fff;box-shadow:0 12px 30px rgba(15,23,42,.25);font-size:12px;font-weight:800;transform:translateX(-50%)}
.direct-chat-toast[data-type="error"]{background:#b42318}.direct-chat-toast[hidden]{display:none!important}
@media(max-width:760px){
  .direct-message-menu-trigger{opacity:1}
  .direct-message-menu{width:205px}
  .direct-selection-toolbar{padding:7px 8px}.direct-selection-toolbar button{padding:0 8px}.direct-selection-toolbar button span{display:none}
  .direct-action-modal-backdrop{padding:9px}.direct-action-modal{border-radius:14px}
  .direct-bubble{padding-top:21px}
}

/* Employee ID: company + year + month + monthly order, with manual edit support. */
.employee-code-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.employee-code-control .input{text-transform:uppercase;letter-spacing:.045em;font-weight:850!important}.employee-code-generate{min-height:44px!important;padding:0 13px!important;white-space:nowrap;border-radius:13px!important}.employee-code-field small{display:block;margin-top:6px;line-height:1.4}.pv2-edit-grid .field small{display:block;margin-top:6px;color:#64748b;font-size:11.5px;line-height:1.4;font-weight:650}
@media(max-width:640px){.employee-code-control{grid-template-columns:1fr}.employee-code-generate{width:100%}}

/* All Live Projects register */
.alp-hero,
.alp-detail-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 26px;
  margin-bottom: 20px;
}
.alp-hero h2,
.alp-detail-hero h2 { margin: 4px 0 8px; color: #0b326b; font-size: clamp(24px, 3vw, 34px); }
.alp-hero p,
.alp-detail-hero p { margin: 0; color: #60708b; max-width: 760px; line-height: 1.65; }
.alp-hero-actions,
.alp-detail-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 10px; }
.alp-stat-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-bottom: 20px; }
.alp-stat { display: flex; flex-direction: column; gap: 6px; min-height: 132px; padding: 22px; text-decoration: none; border: 1px solid #dce8f8; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.alp-stat:hover { transform: translateY(-2px); box-shadow: 0 12px 28px rgba(16, 63, 121, .12); border-color: #9fc2ef; }
.alp-stat span { color: #526987; font-weight: 700; }
.alp-stat strong { color: #073b7d; font-size: 32px; line-height: 1; }
.alp-stat small { color: #7b8ba2; }
.alp-editor,
.alp-list-card,
.alp-url-card,
.alp-notes-card,
.alp-meta-card { margin-bottom: 20px; }
.alp-editor { padding: 24px; }
.alp-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.alp-form-grid .field { min-width: 0; }
.alp-form-grid label,
.alp-filter-bar label { display: block; margin-bottom: 7px; color: #173e70; font-size: 13px; font-weight: 750; }
.alp-form-grid label span { color: #d3293f; }
.alp-form-grid small { display: block; margin-top: 6px; color: #718099; line-height: 1.45; }
.alp-field-wide { grid-column: 1 / -1; }
.alp-form-grid textarea { min-height: 122px; resize: vertical; }
.alp-form-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.alp-list-card { overflow: hidden; }
.alp-list-head { padding: 22px 22px 8px; }
.alp-result-text { margin: 6px 0 0; color: #71819a; font-size: 13px; }
.alp-filter-bar { display: grid; grid-template-columns: minmax(240px, 1.5fr) repeat(3, minmax(150px, .75fr)) auto; gap: 14px; align-items: end; margin: 14px 22px 20px; padding: 18px; border: 1px solid #dbe7f5; border-radius: 18px; background: #f8fbff; }
.alp-filter-actions { display: flex; gap: 8px; align-items: center; padding-bottom: 1px; }
.alp-table-wrap { width: 100%; overflow-x: auto; border-top: 1px solid #e0e9f4; border-bottom: 1px solid #e0e9f4; }
.alp-table { width: 100%; min-width: 1040px; border-collapse: collapse; table-layout: fixed; }
.alp-table th { padding: 15px 16px; text-align: left; background: #eef5ff; color: #123e74; font-size: 12px; letter-spacing: .03em; text-transform: uppercase; border-bottom: 1px solid #d7e4f3; }
.alp-table td { padding: 17px 16px; vertical-align: middle; color: #2e4563; border-bottom: 1px solid #e5edf7; line-height: 1.45; }
.alp-table tbody tr:last-child td { border-bottom: 0; }
.alp-table tbody tr { transition: background .16s ease; cursor: pointer; }
.alp-table tbody tr:hover { background: #f6faff; }
.alp-table th:nth-child(1) { width: 25%; }
.alp-table th:nth-child(2) { width: 20%; }
.alp-table th:nth-child(3),
.alp-table th:nth-child(4) { width: 12%; }
.alp-table th:nth-child(5) { width: 13%; }
.alp-table th:nth-child(6) { width: 18%; }
.alp-project-link { display: flex; flex-direction: column; gap: 4px; color: inherit; text-decoration: none; }
.alp-project-link strong { color: #063d80; font-size: 15px; word-break: break-word; }
.alp-project-link span { color: #667a95; word-break: break-word; }
.alp-url-link { display: flex; flex-direction: column; gap: 3px; color: #0665ca; text-decoration: none; max-width: 100%; }
.alp-url-link span { font-weight: 750; }
.alp-url-link small { color: #6c7f99; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.alp-url-link:hover span { text-decoration: underline; }
.alp-date-main { color: #244a77; font-weight: 650; white-space: nowrap; }
.alp-muted { color: #8795a9; }
.alp-ongoing { display: inline-flex; align-items: center; padding: 5px 10px; border-radius: 999px; background: #e9f8ef; color: #11834b; font-size: 12px; font-weight: 750; }
.alp-status { display: inline-flex; align-items: center; justify-content: center; min-width: 82px; padding: 7px 11px; border-radius: 999px; font-size: 12px; font-weight: 800; white-space: nowrap; }
.alp-status.live { color: #067246; background: #dff7e9; }
.alp-status.in-development { color: #055db0; background: #e3f0ff; }
.alp-status.on-hold { color: #9b5a00; background: #fff0d4; }
.alp-status.completed { color: #5a3e9a; background: #eee8ff; }
.alp-status.archived { color: #586577; background: #e9edf2; }
.alp-row-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; }
.alp-row-actions form { margin: 0; }
.alp-row-actions .btn { min-width: 58px; }
.alp-empty-state { padding: 56px 20px; text-align: center; }
.alp-empty-state h3 { color: #123d73; margin: 8px 0; }
.alp-empty-state p { color: #75859b; margin: 0 0 18px; }
.alp-empty-icon { margin: auto; width: 56px; height: 56px; display: grid; place-items: center; border-radius: 18px; background: #eef5ff; color: #1665b8; font-size: 28px; }
.alp-pagination { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; padding: 16px 22px; background: #fbfdff; }
.alp-page-summary { color: #62758e; font-size: 13px; }
.alp-per-page { display: flex; align-items: center; gap: 8px; color: #62758e; font-size: 13px; }
.alp-per-page select { min-width: 72px; height: 38px; }
.alp-page-links { display: flex; align-items: center; gap: 5px; }
.alp-page-links a { width: 36px; height: 36px; display: grid; place-items: center; border: 1px solid #d5e2f1; border-radius: 10px; color: #28527f; background: #fff; text-decoration: none; font-weight: 700; }
.alp-page-links a:hover { border-color: #78a9df; background: #f0f7ff; }
.alp-page-links a.active { color: #fff; border-color: #075fc1; background: #075fc1; }
.alp-page-links a.disabled { pointer-events: none; opacity: .38; }
.alp-detail-title { min-width: 0; }
.alp-detail-actions { max-width: 620px; }
.alp-detail-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-bottom: 20px; }
.alp-detail-card { min-height: 124px; display: flex; flex-direction: column; justify-content: center; gap: 9px; padding: 22px; }
.alp-detail-card span { color: #70819a; font-size: 13px; font-weight: 700; }
.alp-detail-card strong { color: #0c3c75; font-size: 18px; line-height: 1.4; word-break: break-word; }
.alp-url-card,
.alp-notes-card { padding: 24px; }
.alp-detail-url-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-top: 16px; padding: 16px 18px; border: 1px solid #d7e6f7; border-radius: 15px; background: #f7fbff; }
.alp-detail-url-row a { min-width: 0; flex: 1; color: #0564c8; font-weight: 700; text-decoration: none; word-break: break-all; }
.alp-detail-url-row a:hover { text-decoration: underline; }
.alp-notes-content { margin-top: 16px; padding: 18px; border: 1px solid #e0e8f2; border-radius: 15px; background: #fbfdff; color: #344d6b; line-height: 1.75; overflow-wrap: anywhere; }
.alp-meta-card { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px; overflow: hidden; padding: 0; background: #e3ebf5; }
.alp-meta-card > div { display: flex; flex-direction: column; gap: 7px; min-height: 104px; justify-content: center; padding: 20px; background: #fff; }
.alp-meta-card span { color: #7a899f; font-size: 12px; font-weight: 700; }
.alp-meta-card strong { color: #173f70; font-size: 14px; line-height: 1.45; }

@media (max-width: 1180px) {
  .alp-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .alp-filter-bar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .alp-search-field { grid-column: 1 / -1; }
  .alp-filter-actions { grid-column: 1 / -1; }
  .alp-detail-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .alp-meta-card { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .alp-hero,
  .alp-detail-hero { align-items: flex-start; flex-direction: column; padding: 20px; }
  .alp-hero-actions,
  .alp-detail-actions { width: 100%; justify-content: flex-start; }
  .alp-hero-actions .btn,
  .alp-detail-actions .btn { flex: 1 1 150px; text-align: center; }
  .alp-stat-grid,
  .alp-form-grid,
  .alp-filter-bar,
  .alp-detail-grid,
  .alp-meta-card { grid-template-columns: 1fr; }
  .alp-field-wide,
  .alp-search-field,
  .alp-filter-actions { grid-column: auto; }
  .alp-filter-bar { margin: 12px 14px 18px; padding: 14px; }
  .alp-filter-actions .btn { flex: 1; text-align: center; }
  .alp-list-head { padding-left: 16px; padding-right: 16px; }
  .alp-table { min-width: 0; table-layout: auto; }
  .alp-table thead { display: none; }
  .alp-table,
  .alp-table tbody,
  .alp-table tr,
  .alp-table td { display: block; width: 100%; }
  .alp-table tbody { padding: 0 14px 14px; }
  .alp-table tr { margin: 12px 0 0; padding: 15px; border: 1px solid #dce8f5; border-radius: 17px; background: #fff; box-shadow: 0 6px 18px rgba(25, 69, 119, .06); }
  .alp-table td { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 10px; align-items: start; padding: 8px 0; border: 0; }
  .alp-table td::before { color: #75859b; font-size: 12px; font-weight: 750; }
  .alp-table td:nth-child(1)::before { content: 'Project'; }
  .alp-table td:nth-child(2)::before { content: 'Website'; }
  .alp-table td:nth-child(3)::before { content: 'Start Date'; }
  .alp-table td:nth-child(4)::before { content: 'End Date'; }
  .alp-table td:nth-child(5)::before { content: 'Status'; }
  .alp-table td:nth-child(6)::before { content: 'Actions'; }
  .alp-row-actions { align-items: stretch; }
  .alp-row-actions .btn { flex: 1 1 70px; text-align: center; }
  .alp-row-actions form { flex: 1 1 70px; }
  .alp-row-actions form .btn { width: 100%; }
  .alp-pagination { justify-content: center; padding: 15px; }
  .alp-page-summary { width: 100%; text-align: center; }
  .alp-detail-url-row { align-items: stretch; flex-direction: column; }
  .alp-detail-url-row .btn { width: 100%; }
}


/* All Projects table spacing refinement V2 */
.alp-list-card {
  padding-bottom: 0;
}
.alp-table-wrap {
  width: calc(100% - 44px);
  margin: 0 22px;
  overflow-x: auto;
  border: 1px solid #dce7f4;
  border-radius: 16px;
  background: #fff;
}
.alp-table {
  width: 100%;
  min-width: 1160px;
  table-layout: fixed;
}
.alp-table th,
.alp-table td {
  padding-left: 20px;
  padding-right: 20px;
}
.alp-table th {
  padding-top: 17px;
  padding-bottom: 17px;
  line-height: 1.35;
  white-space: nowrap;
}
.alp-table td {
  padding-top: 20px;
  padding-bottom: 20px;
  min-width: 0;
}
.alp-table tbody tr {
  height: 92px;
}
.alp-table th:nth-child(1) { width: 27%; }
.alp-table th:nth-child(2) { width: 20%; }
.alp-table th:nth-child(3) { width: 12%; }
.alp-table th:nth-child(4) { width: 12%; }
.alp-table th:nth-child(5) { width: 11%; }
.alp-table th:nth-child(6) { width: 18%; }
.alp-table td:nth-child(3),
.alp-table td:nth-child(4),
.alp-table td:nth-child(5) {
  white-space: nowrap;
}
.alp-project-link {
  min-width: 0;
  padding-right: 10px;
}
.alp-project-link strong,
.alp-project-link span {
  display: block;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
}
.alp-project-link strong {
  font-size: 16px;
  line-height: 1.35;
}
.alp-project-link span {
  margin-top: 2px;
  line-height: 1.4;
}
.alp-url-link {
  min-width: 0;
  padding-right: 8px;
}
.alp-url-link span,
.alp-url-link small {
  display: block;
  max-width: 100%;
}
.alp-url-link small {
  margin-top: 3px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.alp-row-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(62px, 1fr));
  align-items: center;
  gap: 8px;
  min-width: 218px;
  width: 100%;
}
.alp-row-actions form {
  width: 100%;
}
.alp-row-actions .btn,
.alp-row-actions form .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-width: 0;
  min-height: 38px;
  padding: 8px 10px;
  border-radius: 11px;
  line-height: 1.15;
  white-space: nowrap;
}
.alp-pagination {
  margin: 0 22px;
  padding-left: 0;
  padding-right: 0;
}

@media (max-width: 1180px) {
  .alp-table { min-width: 1120px; }
}

@media (max-width: 760px) {
  .alp-table-wrap {
    width: 100%;
    margin: 0;
    border-left: 0;
    border-right: 0;
    border-radius: 0;
  }
  .alp-table { min-width: 0; }
  .alp-table tbody tr { height: auto; }
  .alp-table td {
    padding-left: 0;
    padding-right: 0;
  }
  .alp-table td:nth-child(3),
  .alp-table td:nth-child(4),
  .alp-table td:nth-child(5) {
    white-space: normal;
  }
  .alp-row-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    min-width: 0;
  }
  .alp-pagination {
    margin: 0;
    padding-left: 15px;
    padding-right: 15px;
  }
}

/* All Projects professional desktop layout V3 */
@media (min-width: 761px) {
  .alp-list-card {
    overflow: hidden;
    padding-bottom: 0;
  }

  .alp-list-head {
    padding: 26px 28px 10px;
  }

  .alp-filter-bar {
    margin: 16px 28px 24px;
    padding: 20px;
    gap: 16px;
  }

  .alp-table-wrap {
    width: calc(100% - 56px);
    margin: 0 28px;
    overflow-x: auto;
    overflow-y: hidden;
    border: 1px solid #d9e5f3;
    border-radius: 16px;
    background: #fff;
    scrollbar-width: thin;
    scrollbar-color: #aab8c8 #eef3f8;
  }

  .alp-table-wrap::-webkit-scrollbar {
    height: 8px;
  }

  .alp-table-wrap::-webkit-scrollbar-track {
    background: #eef3f8;
  }

  .alp-table-wrap::-webkit-scrollbar-thumb {
    border: 2px solid #eef3f8;
    border-radius: 999px;
    background: #aab8c8;
  }

  .alp-table {
    width: 100%;
    min-width: 940px;
    table-layout: fixed;
    border-collapse: collapse;
  }

  .alp-table th,
  .alp-table td {
    box-sizing: border-box;
    min-width: 0;
    padding-left: 16px;
    padding-right: 16px;
  }

  .alp-table th {
    padding-top: 17px;
    padding-bottom: 17px;
    color: #123d72;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.3;
    letter-spacing: .035em;
    white-space: nowrap;
  }

  .alp-table td {
    height: 86px;
    padding-top: 16px;
    padding-bottom: 16px;
    vertical-align: middle;
  }

  .alp-table tbody tr {
    height: auto;
  }

  .alp-table th:nth-child(1) { width: 24%; }
  .alp-table th:nth-child(2) { width: 18%; }
  .alp-table th:nth-child(3) { width: 12%; }
  .alp-table th:nth-child(4) { width: 12%; }
  .alp-table th:nth-child(5) { width: 11%; }
  .alp-table th:nth-child(6) { width: 23%; }

  .alp-table th:last-child,
  .alp-table td:last-child {
    padding-left: 12px;
    padding-right: 12px;
  }

  .alp-project-link {
    gap: 5px;
    min-width: 0;
    padding-right: 4px;
  }

  .alp-project-link strong {
    font-size: 15px;
    line-height: 1.35;
  }

  .alp-project-link span {
    margin-top: 0;
    font-size: 13px;
    line-height: 1.4;
  }

  .alp-url-link {
    min-width: 0;
    padding-right: 2px;
  }

  .alp-url-link span {
    font-size: 14px;
    line-height: 1.35;
  }

  .alp-url-link small {
    margin-top: 4px;
    font-size: 12px;
  }

  .alp-date-main,
  .alp-status,
  .alp-ongoing {
    white-space: nowrap;
  }

  .alp-row-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: center;
    gap: 7px;
    width: 100%;
    min-width: 0;
  }

  .alp-row-actions form {
    width: 100%;
    min-width: 0;
    margin: 0;
  }

  .alp-row-actions .btn,
  .alp-row-actions form .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    min-height: 40px;
    padding: 9px 7px;
    border-radius: 11px;
    font-size: 13px;
    font-weight: 750;
    line-height: 1;
    white-space: nowrap;
  }

  .alp-pagination {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: 18px;
    margin: 0 28px;
    padding: 18px 0 22px;
    background: transparent;
  }

  .alp-page-summary {
    justify-self: start;
    font-size: 13px;
    font-weight: 650;
  }

  .alp-per-page {
    justify-self: center;
    gap: 10px;
    font-size: 13px;
    font-weight: 650;
  }

  .alp-per-page select {
    box-sizing: border-box;
    width: 88px;
    min-width: 88px;
    height: 44px;
    min-height: 44px;
    padding: 0 36px 0 14px;
    border: 1px solid #cbd9ea;
    border-radius: 13px;
    background-color: #fff;
    color: #123d72;
    font-size: 14px;
    font-weight: 750;
    line-height: normal;
  }

  .alp-page-links {
    justify-self: end;
    gap: 7px;
  }

  .alp-page-links a {
    width: 42px;
    height: 42px;
    border-radius: 12px;
  }
}

@media (min-width: 761px) and (max-width: 1080px) {
  .alp-list-head {
    padding-left: 20px;
    padding-right: 20px;
  }

  .alp-filter-bar {
    margin-left: 20px;
    margin-right: 20px;
  }

  .alp-table-wrap {
    width: calc(100% - 40px);
    margin-left: 20px;
    margin-right: 20px;
  }

  .alp-table {
    min-width: 900px;
  }

  .alp-table th,
  .alp-table td {
    padding-left: 12px;
    padding-right: 12px;
  }

  .alp-table th:nth-child(1) { width: 23%; }
  .alp-table th:nth-child(2) { width: 18%; }
  .alp-table th:nth-child(3) { width: 12%; }
  .alp-table th:nth-child(4) { width: 12%; }
  .alp-table th:nth-child(5) { width: 11%; }
  .alp-table th:nth-child(6) { width: 24%; }

  .alp-row-actions {
    gap: 5px;
  }

  .alp-row-actions .btn,
  .alp-row-actions form .btn {
    padding-left: 5px;
    padding-right: 5px;
    font-size: 12px;
  }

  .alp-pagination {
    margin-left: 20px;
    margin-right: 20px;
  }
}

@media (max-width: 760px) {
  .alp-per-page select {
    width: 88px;
    min-width: 88px;
    height: 42px;
    padding: 0 34px 0 13px;
  }
}

/* Phase 165: shared Management + Employee hourly work-reminder module. */
.reminder-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px;background:linear-gradient(135deg,#ffffff 0%,#f2f7ff 100%)}
.reminder-hero .eyebrow{color:#1765c1!important;opacity:1!important}.reminder-hero h2{color:#0b2d5c!important;opacity:1!important}.reminder-hero>div>p:not(.eyebrow){color:#536b86!important;opacity:1!important;font-weight:650!important}
.emp-sidebar~.main .reminder-hero{background:linear-gradient(135deg,#ffffff 0%,#eefbf4 100%)}
.reminder-rule-chip{min-width:220px;padding:15px 18px;border:1px solid #bfdbfe;border-radius:18px;background:#eff6ff;display:flex;flex-direction:column;gap:3px;color:#0f3b78;box-shadow:0 10px 24px rgba(37,99,235,.08)}
.reminder-rule-chip b{font-size:17px}.reminder-rule-chip span{font-size:12px;font-weight:700;color:#55708f}
.emp-sidebar~.main .reminder-rule-chip{background:#ecfdf5;border-color:#a7f3d0;color:#05603a}.emp-sidebar~.main .reminder-rule-chip span{color:#46745e}
.reminder-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.reminder-summary-card{background:#fff;border:1px solid #dbe7f5;border-radius:18px;padding:17px 18px;box-shadow:0 10px 28px rgba(15,42,80,.06);display:flex;align-items:center;justify-content:space-between;gap:12px}
.reminder-summary-card span{font-size:13px;font-weight:800;color:#64748b}.reminder-summary-card b{font-size:26px;color:#0b3c7d}
.reminder-summary-card.urgent{border-color:#fecaca;background:#fffafa}.reminder-summary-card.urgent b{color:#c2410c}
.reminder-summary-card.success{border-color:#bbf7d0;background:#f7fff9}.reminder-summary-card.success b{color:#15803d}
.reminder-layout{display:grid;grid-template-columns:minmax(300px,370px) minmax(0,1fr);gap:18px;align-items:start}
.reminder-form-card,.reminder-list-card{padding:20px}.reminder-form-card{position:sticky;top:18px}
.reminder-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.reminder-form .field{display:flex;flex-direction:column;gap:7px;margin:0}.reminder-form .field>span,.reminder-filter-bar label>span{font-size:12px;font-weight:900;color:#334155;letter-spacing:.02em}
.reminder-form input,.reminder-form select,.reminder-form textarea,.reminder-filter-bar input,.reminder-filter-bar select{border:1px solid #cbd9ea;border-radius:13px;padding:12px 13px;background:#fff;color:#10233f;font:inherit;min-height:46px;min-width:0;width:100%}
.reminder-form input:focus,.reminder-form select:focus,.reminder-form textarea:focus,.reminder-filter-bar input:focus,.reminder-filter-bar select:focus{outline:0;border-color:#2563eb;box-shadow:0 0 0 4px rgba(37,99,235,.1)}
.reminder-form textarea{min-height:100px}.reminder-form>.btn{grid-column:1/-1;justify-self:start}
.reminder-form-note{grid-column:1/-1;display:flex;gap:11px;align-items:flex-start;padding:13px 14px;border:1px solid #bfdbfe;border-radius:14px;background:#f4f8ff;color:#1e3a5f}
.reminder-form-note>span{font-size:21px}.reminder-form-note div{display:flex;flex-direction:column;gap:3px}.reminder-form-note small{line-height:1.45;color:#60758f}
.reminder-filter-bar{display:grid;grid-template-columns:minmax(180px,1fr) 150px minmax(180px,220px) auto auto;gap:10px;align-items:end;padding:14px;margin:0 0 15px;border:1px solid #dbe7f5;border-radius:16px;background:#f7faff}
.reminder-filter-bar label{display:flex;flex-direction:column;gap:6px}.reminder-filter-bar .btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
.reminder-filter-bar.employee-filter{grid-template-columns:minmax(180px,1fr) 160px auto auto}
.reminder-list{display:flex;flex-direction:column;gap:12px}
.reminder-item{display:flex;justify-content:space-between;gap:18px;padding:17px;border:1px solid #dce7f4;border-radius:17px;background:#fff;transition:border-color .2s,box-shadow .2s,transform .2s}
.reminder-item:hover{border-color:#b8d1ee;box-shadow:0 12px 28px rgba(15,42,80,.08)}
.reminder-item.is-due{border-color:#fdba74;background:linear-gradient(135deg,#fff 0%,#fff8ef 100%)}
.reminder-item.is-highlighted{border-color:#2563eb;box-shadow:0 0 0 4px rgba(37,99,235,.12),0 14px 30px rgba(15,42,80,.09)}
.reminder-item-main{min-width:0;flex:1}.reminder-item-title{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.reminder-item-title h3{margin:0;color:#0b2d5c;font-size:16px;line-height:1.35;overflow-wrap:anywhere}
.reminder-item-main>p{margin:9px 0;color:#52677f;font-size:13px;line-height:1.55;overflow-wrap:anywhere}
.reminder-status-dot{width:10px;height:10px;border-radius:999px;background:#94a3b8;box-shadow:0 0 0 4px rgba(148,163,184,.15)}.reminder-status-dot.pending{background:#f59e0b;box-shadow:0 0 0 4px rgba(245,158,11,.14)}.reminder-status-dot.completed{background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.14)}.reminder-status-dot.cancelled{background:#94a3b8}.reminder-status-dot.ended{background:#8b5cf6;box-shadow:0 0 0 4px rgba(139,92,246,.14)}
.reminder-status{font-size:11px;font-weight:900;padding:5px 9px;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}.reminder-status.pending{background:#fff7db;color:#a35b00}.reminder-status.completed{background:#dcfce7;color:#166534}.reminder-status.cancelled{background:#eef2f7;color:#64748b}.reminder-status.ended{background:#ede9fe;color:#6d28d9}
.reminder-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:7px 16px;margin-top:12px}.reminder-meta-grid span{font-size:12px;color:#64748b;overflow-wrap:anywhere}.reminder-meta-grid b{color:#334155}
.reminder-actions{width:150px;flex:0 0 150px;display:flex;flex-direction:column;align-items:stretch;gap:7px}.reminder-actions form{margin:0}.reminder-actions .btn{width:100%;display:flex;align-items:center;justify-content:center;white-space:nowrap}
.reminder-pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin-top:16px;padding-top:15px;border-top:1px solid #e2e8f0;color:#64748b;font-size:13px;font-weight:700}.reminder-pagination>.inline-form{justify-self:center}.reminder-pagination label{display:flex;align-items:center;gap:8px}.reminder-pagination select{width:76px;min-height:40px;padding:8px 10px}.reminder-pagination .pagination-buttons{justify-self:end;display:flex;gap:6px}.reminder-pagination .pagination-buttons a{min-width:38px;height:38px;border:1px solid #dbe7f5;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;color:#315071;font-weight:900;background:#fff}.reminder-pagination .pagination-buttons a.active{background:#1462c5;color:#fff;border-color:#1462c5}
@media(max-width:1200px){.reminder-layout{grid-template-columns:1fr}.reminder-form-card{position:static}.reminder-form{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.reminder-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reminder-filter-bar,.reminder-filter-bar.employee-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.reminder-item{flex-direction:column}.reminder-actions{width:auto;flex:0 0 auto;flex-direction:row;flex-wrap:wrap}.reminder-actions form,.reminder-actions>a{flex:1 1 140px}.reminder-meta-grid{grid-template-columns:1fr}.reminder-pagination{grid-template-columns:1fr;justify-items:center}.reminder-pagination>.inline-form,.reminder-pagination .pagination-buttons{justify-self:center}}
@media(max-width:640px){.reminder-hero{align-items:flex-start;flex-direction:column}.reminder-rule-chip{width:100%;min-width:0}.reminder-summary-grid{grid-template-columns:1fr 1fr;gap:10px}.reminder-summary-card{padding:14px}.reminder-summary-card b{font-size:22px}.reminder-form{grid-template-columns:1fr}.reminder-filter-bar,.reminder-filter-bar.employee-filter{grid-template-columns:1fr}.reminder-form-card,.reminder-list-card{padding:15px}.reminder-item{padding:14px}.reminder-actions{display:grid;grid-template-columns:1fr}.reminder-actions form,.reminder-actions>a{width:100%}}
/* To-Do / EOD 2026 user-friendly list refinements */
.work-details-toggle{margin-top:10px}.work-details-toggle summary,.work-history-item>summary{cursor:pointer;color:#2157b7;font-weight:800;list-style:none}.work-details-toggle summary::-webkit-details-marker,.work-history-item>summary::-webkit-details-marker{display:none}.work-history-item{display:block}.work-history-item>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%}.work-history-item[open]>summary{padding-bottom:12px;border-bottom:1px solid var(--work-line)}.work-history-item .work-reference{margin-top:12px}.todo-preview{max-width:760px}.work-quick-actions input[type=month]{min-width:155px}@media(max-width:760px){.work-history-item>summary{align-items:flex-start;flex-direction:column}.work-quick-actions input[type=date],.work-quick-actions input[type=month],.work-quick-actions select,.work-quick-actions .btn{width:100%}}
/* To-Do / EOD workflow refinement - 2026-08-05 */
.eod-clean-page,.compare-list-page{padding-bottom:32px}.eod-submit-card{margin-top:18px}.eod-submit-card .work-panel-body{padding:24px}.eod-submit-card textarea{min-height:210px;line-height:1.7;padding:16px}.work-list{display:grid;gap:12px}.work-list-item{padding:16px 18px;border:1px solid #e1e8f3;border-radius:12px;background:#fff}.work-list-item summary{display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;list-style:none}.work-list-item summary::-webkit-details-marker{display:none}.work-list-item[open] summary{padding-bottom:14px;border-bottom:1px solid #e7edf6;margin-bottom:14px}.eod-modal[hidden]{display:none}.eod-modal{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:24px}.eod-modal-backdrop{position:absolute;inset:0;background:rgba(7,18,43,.62);backdrop-filter:blur(3px)}.eod-modal-card{position:relative;width:min(1050px,96vw);max-height:90vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.28)}.eod-modal-head,.eod-modal-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid #e5ebf4}.eod-modal-actions{border-top:1px solid #e5ebf4;border-bottom:0;justify-content:flex-end}.eod-modal-body{padding:24px}.eod-modal-close{border:0;background:#eef3fb;width:38px;height:38px;border-radius:50%;font-size:25px;cursor:pointer}.eod-preview-grid,.compare-detail-list{display:grid;grid-template-columns:1fr 1fr;gap:20px}.eod-preview-grid>div,.compare-list-column{border:1px solid #e2e9f4;border-radius:14px;padding:18px;background:#f9fbff}.compare-report-list{gap:14px}.compare-report-item{padding:18px 20px}.compare-list-row{padding:14px 0;border-bottom:1px solid #e2e9f4}.compare-list-row:last-child{border-bottom:0}.compare-list-row p{margin:7px 0 10px}.compare-downloads{margin-top:16px}.admin-todo-only-list,.admin-eod-only-list{padding:20px}.admin-todo-only-list .work-reference,.admin-eod-only-list .work-reference{margin-top:12px}.modal-open{overflow:hidden}@media(max-width:800px){.eod-preview-grid,.compare-detail-list{grid-template-columns:1fr}.work-list-item summary{align-items:flex-start;flex-direction:column}.eod-modal{padding:10px}.eod-modal-head,.eod-modal-body,.eod-modal-actions{padding:16px}.eod-modal-actions{flex-direction:column-reverse}.eod-modal-actions .btn{width:100%}.work-main-grid{grid-template-columns:1fr!important}.work-page-shell{padding:12px}.work-panel-body{padding:16px!important}}

/* Phase 166: Professional To-Do / EOD UI polish — 2026-08-05 */
.work-page-shell{
  --work-primary:#2457d6;
  --work-primary-dark:#173879;
  --work-text:#10213c;
  --work-muted:#64748b;
  --work-line:#dfe7f2;
  --work-soft:#f5f8fc;
  --work-radius:18px;
  max-width:1680px;
  margin:0 auto;
  padding:22px 22px 42px;
}
.work-page-shell *{box-sizing:border-box}
.work-topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  min-height:132px;
  margin:0 0 18px;
  padding:26px 28px;
  border:0;
  border-radius:22px;
  color:#fff;
  background:linear-gradient(120deg,#17366f 0%,#2f59cf 56%,#5f7dec 100%);
  box-shadow:0 16px 34px rgba(32,73,170,.18);
}
.work-topbar>div:first-child{min-width:0}
.work-topbar .work-kicker{
  display:block;
  margin-bottom:7px;
  color:#dce7ff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.work-topbar h1{margin:0;color:#fff;font-size:clamp(27px,2.2vw,38px);line-height:1.12;letter-spacing:-.025em}
.work-topbar p{max-width:780px;margin:8px 0 0;color:#e5ecff;font-size:14px;font-weight:600;line-height:1.55}
.work-date-card{
  flex:0 0 168px;
  min-width:168px;
  padding:17px 18px;
  border:1px solid rgba(255,255,255,.25);
  border-radius:17px;
  background:rgba(255,255,255,.13);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
  backdrop-filter:blur(8px);
}
.work-date-card span,.work-date-card small{display:block;color:#e5ecff;font-size:11px;font-weight:700}
.work-date-card strong{display:block;margin:5px 0 3px;color:#fff;font-size:17px;line-height:1.25}
.work-quick-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 16px;
}
.work-quick-actions .btn{min-height:42px;padding:10px 15px;border-radius:12px;font-weight:800}
.work-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px}
.work-summary-card{
  position:relative;
  min-height:96px;
  overflow:hidden;
  padding:18px 20px;
  border:1px solid var(--work-line);
  border-radius:17px;
  background:#fff;
  box-shadow:0 8px 24px rgba(15,42,80,.055);
}
.work-summary-card:after{
  content:"";
  position:absolute;
  right:-18px;
  bottom:-24px;
  width:78px;
  height:78px;
  border-radius:50%;
  background:#eef3ff;
}
.work-summary-card span,.work-summary-card small{display:block;position:relative;z-index:1;color:var(--work-muted);font-size:11px;font-weight:750}
.work-summary-card strong{display:block;position:relative;z-index:1;margin:5px 0 4px;color:var(--work-text);font-size:25px;line-height:1}
.work-main-grid{
  display:grid;
  grid-template-columns:minmax(0,2.25fr) minmax(290px,.9fr);
  gap:18px;
  align-items:start;
  margin-bottom:20px;
}
.work-panel{
  overflow:hidden;
  border:1px solid var(--work-line)!important;
  border-radius:var(--work-radius)!important;
  background:#fff;
  box-shadow:0 10px 28px rgba(15,42,80,.065)!important;
}
.work-panel-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  padding:21px 24px;
  border-bottom:1px solid var(--work-line);
  background:linear-gradient(180deg,#fff 0%,#fbfcff 100%);
}
.work-panel-head h2{margin:0;color:var(--work-text);font-size:21px;line-height:1.25}
.work-panel-head p{margin:5px 0 0;color:var(--work-muted);font-size:13px;line-height:1.45}
.work-panel-body{padding:22px 24px}
.work-form{display:grid;gap:16px}
.work-form .field{display:flex;flex-direction:column;gap:8px;margin:0}
.work-form .field label{color:#263b59;font-size:12px;font-weight:850}
.work-form input[type=date],.work-form input[type=text],.work-form .input,.work-form select,.work-form textarea,
.work-panel-head input[type=date],.work-panel-head input[type=month],.work-panel-head select{
  width:100%;
  min-height:46px;
  padding:11px 14px;
  border:1px solid #cbd8e8;
  border-radius:13px;
  background:#fff;
  color:#10213c;
  font:inherit;
  transition:border-color .18s,box-shadow .18s,background .18s;
}
.work-form textarea{min-height:126px;resize:vertical;line-height:1.55}
.work-form input:focus,.work-form select:focus,.work-form textarea:focus,.work-panel-head input:focus,.work-panel-head select:focus{
  outline:0;
  border-color:#4a72df;
  box-shadow:0 0 0 4px rgba(58,94,206,.11);
}
.work-task-card{
  padding:19px;
  border:1px solid #dce6f2;
  border-radius:16px;
  background:#fbfcff;
}
.work-task-card+.work-task-card{margin-top:14px}
.work-task-card-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}
.work-task-card-head h3{margin:0;color:#122642;font-size:15px}
.work-meta-chip{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:5px 10px;
  border-radius:999px;
  background:#f0f4f9;
  color:#29415f;
  font-size:11px;
  font-weight:750;
  line-height:1.2;
}
.activity-pills.multi{display:flex;flex-wrap:wrap;gap:9px}
.activity-pills.multi label{position:relative;cursor:pointer}
.activity-pills.multi input{position:absolute;opacity:0;pointer-events:none}
.activity-pills.multi span{
  display:inline-flex;
  align-items:center;
  min-height:35px;
  padding:7px 12px;
  border:1px solid #cfdae8;
  border-radius:999px;
  background:#fff;
  color:#354b68;
  font-size:11px;
  font-weight:750;
  transition:.18s ease;
}
.activity-pills.multi span:before{
  content:"";
  width:14px;
  height:14px;
  margin-right:6px;
  border:1.5px solid #98aac0;
  border-radius:4px;
  background:#fff;
}
.activity-pills.multi input:checked+span{border-color:#2f65df;background:#edf3ff;color:#1747ae;box-shadow:0 0 0 3px rgba(47,101,223,.08)}
.activity-pills.multi input:checked+span:before{border-color:#1fa766;background:#1fa766;box-shadow:inset 0 0 0 3px #fff}
.form-grid.two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.95fr);gap:14px}
.work-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:2px}
.work-actions .btn{min-height:44px;padding:10px 16px;border-radius:12px;font-weight:850}
.work-employee-card{padding:18px}
.work-person{display:flex;align-items:center;gap:12px;padding-bottom:15px;border-bottom:1px solid var(--work-line)}
.work-avatar{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#edf2ff;color:#2856cb;font-size:18px;font-weight:900}
.work-person h3{margin:0;color:var(--work-text);font-size:15px}.work-person p{margin:3px 0 0;color:var(--work-muted);font-size:12px}
.work-details{display:grid;gap:11px;padding-top:15px}.work-detail-row{display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--work-muted);font-size:12px}.work-detail-row b{color:#142943;text-align:right}
.work-panel-head>.work-quick-actions{display:grid;grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) auto auto;gap:9px;align-items:center;margin:0;min-width:min(100%,520px)}
.work-panel-head>.work-quick-actions .btn{min-height:44px;margin:0}
.work-list{display:grid;gap:11px}
.work-list-item{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  padding:17px 18px!important;
  border:1px solid #dde6f1!important;
  border-radius:15px!important;
  background:#fff!important;
  transition:transform .18s,border-color .18s,box-shadow .18s;
}
.work-list-item:hover{transform:translateY(-1px);border-color:#bdcee2!important;box-shadow:0 10px 24px rgba(15,42,80,.07)}
.work-list-item h3{margin:0 0 6px;color:#10213c;font-size:15px;line-height:1.35}
.work-list-item p{margin:0;color:#5c7089;font-size:12px;line-height:1.5}
.work-details-toggle{margin:8px 0 0}.work-details-toggle summary{display:inline-flex!important;padding:0!important;border:0!important;color:#2459be!important;font-size:12px;font-weight:850}
.work-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}
.work-list-side{display:flex;min-width:120px;flex-direction:column;align-items:flex-end;justify-content:center;gap:12px}
.work-list-side small{font-weight:750;color:#64748b}
.work-list-side .btn{min-width:104px;justify-content:center}
.work-empty{padding:38px 20px;border:1px dashed #cbd8e8;border-radius:15px;background:#fafcff;text-align:center;color:#52677f}
.crm-pagination-wrap{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 22px;border-top:1px solid var(--work-line);color:#64748b;font-size:12px;font-weight:750}
.crm-pagination{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.crm-pagination a{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;padding:0 11px;border:1px solid #d8e2ee;border-radius:10px;background:#fff;color:#29415f;font-weight:850}.crm-pagination a.active{border-color:#285bd3;background:#285bd3;color:#fff}

@media(max-width:1180px){
  .work-main-grid{grid-template-columns:1fr}
  .work-main-grid aside.work-panel{order:-1}
  .work-employee-card{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:18px;align-items:center}
  .work-person{padding:0 18px 0 0;border-bottom:0;border-right:1px solid var(--work-line)}
  .work-details{padding:0;grid-template-columns:repeat(3,minmax(0,1fr))}.work-detail-row{display:block}.work-detail-row b{display:block;margin-top:4px;text-align:left}
}
@media(max-width:900px){
  .work-page-shell{padding:16px 14px 34px}
  .work-topbar{min-height:auto;padding:22px}
  .work-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .work-panel-head{align-items:stretch;flex-direction:column}
  .work-panel-head>.work-quick-actions{width:100%;min-width:0}
}
@media(max-width:680px){
  .work-page-shell{padding:10px 10px 28px}
  .work-topbar{align-items:flex-start;flex-direction:column;gap:18px;border-radius:18px;padding:20px}
  .work-date-card{width:100%;min-width:0;flex-basis:auto}
  .work-summary-grid{gap:10px}.work-summary-card{min-height:88px;padding:15px}
  .work-main-grid{gap:14px}.work-panel{border-radius:15px!important}
  .work-panel-head,.work-panel-body{padding:17px!important}
  .work-employee-card{display:block;padding:16px}.work-person{padding:0 0 14px;border-right:0;border-bottom:1px solid var(--work-line)}.work-details{padding-top:14px;grid-template-columns:1fr}
  .form-grid.two-col{grid-template-columns:1fr}
  .work-task-card{padding:15px}.work-task-card-head{align-items:flex-start;flex-direction:column}
  .activity-pills.multi{gap:7px}.activity-pills.multi span{padding:7px 10px}
  .work-actions{align-items:stretch;flex-direction:column}.work-actions .btn{width:100%;justify-content:center}
  .work-panel-head>.work-quick-actions{grid-template-columns:1fr 1fr}.work-panel-head>.work-quick-actions input{grid-column:1/-1}
  .work-list-item{grid-template-columns:1fr;padding:15px!important}.work-list-side{min-width:0;align-items:stretch;flex-direction:row;justify-content:space-between}.work-list-side .btn{min-width:0}
  .crm-pagination-wrap{align-items:flex-start;flex-direction:column;padding:15px 17px}.crm-pagination{width:100%}
}

/* To-Do activity chip spacing correction */
.activity-pills.multi{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center;
  column-gap:10px!important;
  row-gap:10px!important;
}
.activity-pills.multi label{
  display:inline-flex;
  align-items:center;
  margin:0;
  min-width:0;
}
.activity-pills.multi span{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  min-height:40px!important;
  padding:8px 14px 8px 11px!important;
  line-height:1.2!important;
  white-space:nowrap;
  overflow:visible;
}
.activity-pills.multi span:before{
  position:static!important;
  left:auto!important;
  top:auto!important;
  transform:none!important;
  flex:0 0 16px!important;
  width:16px!important;
  height:16px!important;
  margin:0!important;
  box-sizing:border-box;
}
.activity-pills.multi input:checked+span:before{
  content:"✓"!important;
  display:inline-grid!important;
  place-items:center!important;
  color:#fff!important;
  font-size:11px!important;
  line-height:1!important;
  box-shadow:none!important;
}
@media(max-width:640px){
  .activity-pills.multi{column-gap:8px!important;row-gap:8px!important}
  .activity-pills.multi span{min-height:38px!important;padding:7px 12px 7px 10px!important;font-size:11px!important}
}

/* EOD page professional spacing and alignment refinement */
.eod-clean-page{
  max-width:1480px;
  margin:0 auto;
  padding-top:18px;
}
.eod-clean-page .work-topbar{
  margin-bottom:20px;
  padding:25px 30px;
  border-radius:20px;
  min-height:150px;
}
.eod-clean-page .work-topbar h1{
  margin:8px 0 7px;
  font-size:clamp(28px,3vw,42px);
  line-height:1.12;
}
.eod-clean-page .work-topbar p{
  max-width:840px;
  margin:0;
  line-height:1.55;
}
.eod-clean-page .work-date-card{
  min-width:210px;
  padding:17px 20px;
}
.eod-clean-page .monthly-download-panel,
.eod-clean-page .eod-submit-card,
.eod-clean-page > .work-panel{
  margin-bottom:20px;
}
.eod-clean-page .monthly-download-panel .work-panel-head{
  padding:22px 26px 18px;
}
.eod-clean-page .monthly-download-panel .work-panel-body{
  padding:20px 26px 22px;
}
.eod-clean-page .monthly-download-form{
  display:grid;
  grid-template-columns:minmax(220px,320px) minmax(0,1fr);
  align-items:end;
  gap:18px 24px;
}
.eod-clean-page .monthly-download-form .field{
  min-width:0;
  width:100%;
  gap:8px;
}
.eod-clean-page .monthly-download-form input[type="month"]{
  width:100%;
  min-height:48px;
  padding:11px 14px;
  border:1px solid #cbd8e8;
  border-radius:12px;
  background:#fff;
  font:inherit;
}
.eod-clean-page .monthly-download-actions{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.eod-clean-page .monthly-download-actions .btn{
  min-width:145px;
  min-height:48px;
  padding:11px 17px;
  justify-content:center;
  border-radius:12px;
}
.eod-clean-page .monthly-download-panel .muted{
  display:block;
  margin-top:12px;
  line-height:1.5;
}
.eod-clean-page .work-summary-grid{
  gap:14px;
  margin:0 0 20px;
}
.eod-clean-page .work-summary-card{
  min-height:112px;
  padding:20px 22px;
  border-radius:16px;
}
.eod-clean-page .eod-submit-card .work-panel-head{
  padding:22px 26px;
  align-items:flex-start;
}
.eod-clean-page .eod-submit-card .work-panel-body{
  padding:24px 26px 26px;
}
.eod-clean-page .eod-submit-card .work-form{
  gap:18px;
}
.eod-clean-page .eod-submit-card textarea{
  min-height:260px;
  padding:17px;
  line-height:1.65;
  border-radius:14px;
}
.eod-clean-page .work-actions{
  margin-top:2px;
  padding-top:6px;
  align-items:center;
}
.eod-clean-page .work-actions .work-quick-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.eod-clean-page .work-actions .btn{
  min-height:46px;
  padding:11px 18px;
}
.eod-clean-page .work-panel-head > .work-date-card{
  min-width:170px;
  padding:12px 16px;
  border-radius:12px;
  box-shadow:none;
}
.eod-clean-page .work-panel:not(.eod-submit-card):not(.monthly-download-panel) .work-panel-head{
  padding:22px 26px;
  align-items:center;
}
.eod-clean-page .work-panel:not(.eod-submit-card):not(.monthly-download-panel) .work-panel-body{
  padding:22px 26px 26px;
}
.eod-clean-page .work-list{
  gap:12px;
}
.eod-clean-page .work-list-item{
  padding:18px 20px!important;
  border-radius:15px!important;
  gap:14px;
}
.eod-clean-page .work-list-item h3{
  margin:0 0 7px;
  font-size:16px;
}
.eod-clean-page .work-list-item p{
  margin:0;
  line-height:1.55;
}
.eod-clean-page .work-item-date{
  margin-bottom:10px;
}
.eod-clean-page .work-meta{
  margin-top:12px;
  gap:8px;
}
.eod-clean-page .work-meta-chip,
.eod-clean-page .badge{
  min-height:30px;
  padding:6px 11px;
}

@media(max-width:900px){
  .eod-clean-page{padding-top:12px}
  .eod-clean-page .work-topbar{padding:23px}
  .eod-clean-page .monthly-download-form{grid-template-columns:1fr}
  .eod-clean-page .monthly-download-actions{justify-content:flex-start}
}
@media(max-width:680px){
  .eod-clean-page{padding-top:8px}
  .eod-clean-page .work-topbar{margin-bottom:14px;padding:20px;min-height:0}
  .eod-clean-page .work-date-card{width:100%;min-width:0}
  .eod-clean-page .monthly-download-panel,
  .eod-clean-page .eod-submit-card,
  .eod-clean-page > .work-panel{margin-bottom:14px}
  .eod-clean-page .monthly-download-panel .work-panel-head,
  .eod-clean-page .monthly-download-panel .work-panel-body,
  .eod-clean-page .eod-submit-card .work-panel-head,
  .eod-clean-page .eod-submit-card .work-panel-body,
  .eod-clean-page .work-panel:not(.eod-submit-card):not(.monthly-download-panel) .work-panel-head,
  .eod-clean-page .work-panel:not(.eod-submit-card):not(.monthly-download-panel) .work-panel-body{
    padding:17px!important;
  }
  .eod-clean-page .monthly-download-actions{display:grid;grid-template-columns:1fr;width:100%;gap:8px}
  .eod-clean-page .monthly-download-actions .btn{width:100%;min-width:0}
  .eod-clean-page .work-summary-grid{gap:10px;margin-bottom:14px}
  .eod-clean-page .work-summary-card{min-height:92px;padding:15px}
  .eod-clean-page .eod-submit-card textarea{min-height:220px;padding:14px}
  .eod-clean-page .work-actions{align-items:stretch;gap:10px}
  .eod-clean-page .work-actions .work-quick-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:8px}
  .eod-clean-page .work-actions .btn{width:100%;justify-content:center}
  .eod-clean-page .work-panel-head > .work-date-card{width:100%;min-width:0;margin-top:4px}
  .eod-clean-page .work-list-item{padding:16px!important}
}

/* ===== To-Do & EOD comparison list professional layout fix ===== */
.compare-list-page .work-panel{
  overflow:hidden;
}
.compare-list-page .work-panel-head{
  padding:22px 24px;
  gap:20px;
}
.compare-list-page .work-panel-head h2{
  margin:0 0 5px;
  font-size:20px;
  line-height:1.25;
}
.compare-list-page .work-panel-head p{
  margin:0;
  color:#64748b;
  line-height:1.5;
}
.compare-list-page .work-panel-head>.work-quick-actions{
  min-width:min(100%,540px);
  grid-template-columns:minmax(170px,1fr) minmax(170px,1fr) auto;
}
.compare-list-page .work-panel-body{
  padding:20px 24px 24px;
}
.compare-list-page .compare-report-list{
  gap:16px;
}
.compare-list-page .compare-report-item{
  display:block!important;
  width:100%;
  padding:0!important;
  overflow:hidden;
  border:1px solid #dbe5f1!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(20,45,80,.045);
}
.compare-list-page .compare-report-item:hover{
  transform:none;
  border-color:#c7d6e8!important;
  box-shadow:0 12px 30px rgba(20,45,80,.075);
}
.compare-list-page .compare-report-item>summary{
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  width:100%;
  min-height:92px;
  gap:22px;
  padding:20px 22px!important;
  margin:0!important;
  border:0!important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);
}
.compare-list-page .compare-report-item[open]>summary{
  border-bottom:1px solid #e3eaf3!important;
  background:#fbfdff;
}
.compare-list-page .compare-report-item>summary>div{
  min-width:0;
}
.compare-list-page .compare-report-item>summary h3{
  margin:0 0 9px;
  font-size:17px;
  color:#10233f;
}
.compare-list-page .compare-report-item>summary .btn{
  flex:0 0 auto;
  min-width:152px;
  min-height:40px;
  border-radius:11px;
}
.compare-list-page .compare-report-item .compare-detail-list{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  gap:18px;
  padding:20px 22px 0;
}
.compare-list-page .compare-list-column{
  min-width:0;
  padding:20px;
  border:1px solid #dfe8f3;
  border-radius:14px;
  background:#f9fbfe;
}
.compare-list-page .compare-list-column h4{
  margin:0 0 14px;
  padding-bottom:12px;
  border-bottom:1px solid #dfe7f1;
  color:#132844;
  font-size:15px;
}
.compare-list-page .compare-list-row{
  padding:14px 0;
}
.compare-list-page .compare-list-row:first-of-type{
  padding-top:0;
}
.compare-list-page .compare-list-row b{
  display:block;
  color:#10233f;
  font-size:14px;
  line-height:1.4;
}
.compare-list-page .compare-list-row p{
  margin:6px 0 10px;
  color:#5f7289;
  line-height:1.55;
}
.compare-list-page .compare-list-column .work-reference{
  min-height:150px;
  margin:0;
  padding:16px 17px;
  border:1px solid #dbe5f1;
  border-radius:12px;
  background:#fff;
}
.compare-list-page .compare-list-column .work-reference p{
  margin:0;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  line-height:1.65;
}
.compare-list-page .compare-downloads{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  margin:0;
  padding:16px 22px 20px;
}
.compare-list-page .compare-downloads .btn{
  min-width:78px;
  min-height:38px;
  justify-content:center;
  border-radius:10px;
}

@media(max-width:900px){
  .compare-list-page .work-panel-head{
    align-items:stretch;
    flex-direction:column;
  }
  .compare-list-page .work-panel-head>.work-quick-actions{
    width:100%;
    min-width:0;
  }
  .compare-list-page .compare-report-item .compare-detail-list{
    grid-template-columns:1fr;
  }
}
@media(max-width:640px){
  .compare-list-page .work-panel-head,
  .compare-list-page .work-panel-body{
    padding:16px;
  }
  .compare-list-page .work-panel-head>.work-quick-actions{
    grid-template-columns:1fr;
  }
  .compare-list-page .work-panel-head>.work-quick-actions .btn{
    width:100%;
  }
  .compare-list-page .compare-report-item>summary{
    align-items:flex-start;
    flex-direction:column;
    min-height:0;
    padding:17px!important;
  }
  .compare-list-page .compare-report-item>summary .btn{
    width:100%;
    min-width:0;
  }
  .compare-list-page .compare-report-item .compare-detail-list{
    padding:16px 16px 0;
    gap:14px;
  }
  .compare-list-page .compare-list-column{
    padding:16px;
  }
  .compare-list-page .compare-downloads{
    justify-content:stretch;
    padding:14px 16px 17px;
  }
  .compare-list-page .compare-downloads .btn{
    flex:1;
    min-width:0;
  }
}

/* =========================================================
   Admin Employee To-Do Report – professional layout polish
   ========================================================= */
body .eod-admin-hero{
  padding:24px 26px;
  margin-bottom:18px;
  border:1px solid #dbe5f2;
  border-radius:20px;
  background:linear-gradient(135deg,#ffffff 0%,#f7faff 100%);
  box-shadow:0 12px 30px rgba(27,65,120,.07);
}
body .eod-admin-hero>div{min-width:260px;flex:1 1 420px}
body .eod-admin-hero .eyebrow{margin-bottom:7px;letter-spacing:.14em}
body .eod-admin-hero h2{font-size:26px;line-height:1.2;margin:0 0 8px;color:#102b53}
body .eod-admin-hero>div>p:last-child{font-size:14px;line-height:1.6;color:#5f6f85}

body .admin-eod-filter{
  flex:1 1 640px;
  display:grid;
  grid-template-columns:minmax(150px,1fr) minmax(170px,1fr) minmax(190px,1.15fr);
  gap:12px;
  align-items:stretch;
  max-width:760px;
}
body .admin-eod-filter input,
body .admin-eod-filter select{
  width:100%;
  min-height:44px;
  padding:0 14px;
  border:1px solid #cfdbee;
  border-radius:12px;
  background:#fff;
  color:#1f3657;
  font-weight:650;
  box-shadow:0 2px 8px rgba(34,65,110,.03);
}
body .admin-eod-filter .btn{
  min-height:44px;
  border-radius:12px;
  padding:0 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  white-space:nowrap;
}
body .admin-eod-filter .btn:nth-of-type(1){grid-column:1 / 2}
body .admin-eod-filter .btn-light:nth-of-type(2){grid-column:2 / 3}
body .admin-eod-filter .btn-light:nth-of-type(3){grid-column:3 / 4}

body .admin-todo-only-list{
  padding:22px 24px 24px;
  display:grid;
  gap:12px;
}
body .admin-todo-only-list .work-list-item{
  padding:0;
  overflow:hidden;
  border:1px solid #dce6f3;
  border-radius:16px;
  background:#fff;
  box-shadow:0 5px 18px rgba(26,59,104,.045);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
body .admin-todo-only-list .work-list-item:hover{
  transform:translateY(-1px);
  border-color:#b9cbea;
  box-shadow:0 10px 24px rgba(26,59,104,.08);
}
body .admin-todo-only-list .work-list-item summary{
  min-height:82px;
  padding:18px 20px;
  gap:20px;
}
body .admin-todo-only-list .work-list-item summary>div{min-width:0;flex:1}
body .admin-todo-only-list .work-list-item h3{
  margin:0 0 10px;
  color:#152d50;
  font-size:15px;
  line-height:1.4;
  font-weight:800;
}
body .admin-todo-only-list .work-meta{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:7px;
}
body .admin-todo-only-list .work-meta-chip,
body .admin-todo-only-list .badge,
body .admin-todo-only-list .status-badge{
  min-height:27px;
  display:inline-flex;
  align-items:center;
  padding:5px 10px;
  border-radius:999px;
  font-size:11px;
  line-height:1;
  font-weight:750;
  white-space:normal;
}
body .admin-todo-only-list summary>.btn{
  flex:0 0 auto;
  min-width:96px;
  border-radius:10px;
  padding:9px 14px;
  font-weight:800;
}
body .admin-todo-only-list .work-reference{
  margin:0!important;
  padding:18px 20px 20px;
  border-top:1px solid #e5ecf6;
  background:#f8fbff;
}
body .admin-todo-only-list .work-reference b{display:block;margin-bottom:8px;color:#14325c}
body .admin-todo-only-list .work-reference p{margin:0 0 10px;line-height:1.65;color:#4c5f78}
body .admin-todo-only-list .work-reference small{color:#718096;font-weight:650}

body .card:has(.admin-todo-only-list){
  overflow:hidden;
  border-radius:20px;
  border:1px solid #dbe5f2;
  box-shadow:0 12px 30px rgba(27,65,120,.06);
}
body .card:has(.admin-todo-only-list)>.card-head{
  padding:20px 24px 16px;
  border-bottom:1px solid #e4ebf5;
  background:linear-gradient(180deg,#fff,#fbfdff);
}
body .card:has(.admin-todo-only-list) .section-title{margin:4px 0 0;font-size:23px;color:#102b53}

body .crm-pagination-wrap{
  padding:18px 24px;
  background:#fbfdff;
}
body .crm-pagination{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
body .crm-pagination a{
  min-width:36px;
  height:36px;
  padding:0 11px;
  border:1px solid #d6e1f0;
  border-radius:9px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  color:#24436d;
  font-weight:800;
  text-decoration:none;
}
body .crm-pagination a:hover{border-color:#8fb1e5;background:#f1f6ff}
body .crm-pagination a.active{background:#0b5fc4;color:#fff;border-color:#0b5fc4;box-shadow:0 5px 14px rgba(11,95,196,.2)}

@media(max-width:1180px){
  body .eod-admin-hero{align-items:flex-start;flex-direction:column}
  body .admin-eod-filter{max-width:none;width:100%}
}
@media(max-width:760px){
  body .eod-admin-hero{padding:20px 18px;border-radius:16px}
  body .eod-admin-hero h2{font-size:22px}
  body .admin-eod-filter{grid-template-columns:1fr}
  body .admin-eod-filter .btn,
  body .admin-eod-filter .btn:nth-of-type(1),
  body .admin-eod-filter .btn-light:nth-of-type(2),
  body .admin-eod-filter .btn-light:nth-of-type(3){grid-column:auto;width:100%}
  body .admin-todo-only-list{padding:15px}
  body .admin-todo-only-list .work-list-item summary{padding:16px;align-items:stretch}
  body .admin-todo-only-list summary>.btn{width:100%;min-width:0}
  body .admin-todo-only-list .work-reference{padding:16px}
  body .card:has(.admin-todo-only-list)>.card-head{padding:17px 16px 14px}
  body .crm-pagination-wrap{padding:16px;gap:12px}
}

/* =========================================================
   Admin Employee To-Do List — premium readable UI (2026-08-05)
   ========================================================= */
body .eod-admin-hero{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:26px 30px;
  margin-bottom:20px;
  border:1px solid #d9e4f2;
  border-radius:22px;
  background:linear-gradient(135deg,#ffffff 0%,#f5f9ff 100%);
  box-shadow:0 14px 38px rgba(25,65,120,.08);
}
body .eod-admin-hero>div{
  flex:1 1 420px;
  min-width:290px;
}
body .eod-admin-hero .eyebrow{
  margin:0 0 8px;
  font-size:11px;
  line-height:1;
  font-weight:850;
  letter-spacing:.15em;
  color:#1261c9;
}
body .eod-admin-hero h2{
  margin:0 0 8px;
  font-size:clamp(23px,2vw,30px);
  line-height:1.2;
  font-weight:800;
  color:#102b53;
}
body .eod-admin-hero>div>p:last-child{
  max-width:620px;
  margin:0;
  font-size:14px;
  line-height:1.65;
  color:#60728a;
}
body .admin-eod-filter{
  flex:0 1 760px;
  width:min(760px,100%);
  display:grid;
  grid-template-columns:minmax(155px,1fr) minmax(175px,1fr) minmax(210px,1.25fr);
  gap:11px;
  align-items:stretch;
}
body .admin-eod-filter input,
body .admin-eod-filter select{
  width:100%;
  min-height:46px;
  padding:0 14px;
  border:1px solid #cbd9ec;
  border-radius:12px;
  background:#fff;
  color:#18345b;
  font-size:13px;
  font-weight:700;
  outline:none;
  box-shadow:0 3px 10px rgba(31,64,110,.035);
  transition:border-color .18s ease,box-shadow .18s ease;
}
body .admin-eod-filter input:focus,
body .admin-eod-filter select:focus{
  border-color:#4f89dc;
  box-shadow:0 0 0 4px rgba(21,101,192,.10);
}
body .admin-eod-filter .btn{
  min-height:44px;
  padding:0 18px;
  border-radius:11px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:13px;
  font-weight:800;
  white-space:nowrap;
}
body .admin-eod-filter .btn:nth-of-type(1){grid-column:1/2}
body .admin-eod-filter .btn-light:nth-of-type(2){grid-column:2/3}
body .admin-eod-filter .btn-light:nth-of-type(3){grid-column:3/4}

body .card:has(.admin-todo-only-list){
  overflow:hidden;
  border:1px solid #d9e4f2;
  border-radius:22px;
  background:#fff;
  box-shadow:0 14px 38px rgba(25,65,120,.07);
}
body .card:has(.admin-todo-only-list)>.card-head{
  padding:22px 28px 18px;
  border-bottom:1px solid #e2eaf5;
  background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);
}
body .card:has(.admin-todo-only-list) .eyebrow{
  margin:0 0 6px;
  font-size:10px;
  font-weight:850;
  letter-spacing:.15em;
  color:#1768ce;
}
body .card:has(.admin-todo-only-list) .section-title{
  margin:0;
  font-size:23px;
  line-height:1.25;
  font-weight:800;
  color:#102b53;
}
body .admin-todo-only-list{
  display:grid;
  gap:13px;
  padding:22px 28px 28px;
}
body .admin-todo-only-list .work-list-item{
  display:block;
  padding:0;
  overflow:hidden;
  border:1px solid #d9e4f2;
  border-radius:16px;
  background:#fff;
  box-shadow:0 5px 16px rgba(25,62,108,.04);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
body .admin-todo-only-list .work-list-item:hover{
  transform:translateY(-2px);
  border-color:#aac5e9;
  box-shadow:0 11px 26px rgba(25,62,108,.085);
}
body .admin-todo-only-list .work-list-item>summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:92px;
  padding:18px 22px;
  cursor:pointer;
  list-style:none;
}
body .admin-todo-only-list .work-list-item>summary::-webkit-details-marker{display:none}
body .admin-todo-only-list .work-list-item>summary>div{
  flex:1 1 auto;
  min-width:0;
}
body .admin-todo-only-list .work-list-item h3{
  margin:0 0 11px;
  overflow-wrap:anywhere;
  font-size:15px;
  line-height:1.45;
  font-weight:800;
  color:#132f57;
}
body .admin-todo-only-list .work-meta{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin:0;
}
body .admin-todo-only-list .work-meta-chip,
body .admin-todo-only-list .badge,
body .admin-todo-only-list .status-badge{
  min-height:28px;
  padding:6px 10px;
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  font-size:11px;
  line-height:1.15;
  font-weight:800;
  white-space:normal;
}
body .admin-todo-only-list summary>.btn{
  flex:0 0 auto;
  min-width:104px;
  min-height:38px;
  padding:0 15px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:10px;
  background:#edf3fb;
  color:#17385f;
  font-size:12px;
  font-weight:800;
  transition:background .18s ease,color .18s ease,transform .18s ease;
}
body .admin-todo-only-list summary>.btn:hover{
  background:#0d63c7;
  color:#fff;
  transform:translateY(-1px);
}
body .admin-todo-only-list details[open] summary{
  background:#fbfdff;
  border-bottom:1px solid #e3ebf5;
}
body .admin-todo-only-list .work-reference{
  margin:0!important;
  padding:20px 22px 22px;
  border:0;
  border-radius:0;
  background:#f7faff;
}
body .admin-todo-only-list .work-reference b{
  display:block;
  margin:0 0 8px;
  font-size:13px;
  color:#12315b;
}
body .admin-todo-only-list .work-reference p{
  margin:0 0 12px;
  font-size:13px;
  line-height:1.7;
  color:#4d617a;
}
body .admin-todo-only-list .work-reference small{
  font-size:11px;
  font-weight:700;
  color:#75869c;
}
body .work-empty{
  padding:46px 20px;
  border:1px dashed #ccd9ea;
  border-radius:15px;
  background:#f8fbff;
  font-size:14px;
  color:#65768d;
}
body .crm-pagination-wrap{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:18px 28px 22px;
  border-top:1px solid #e3eaf4;
  background:#fbfdff;
  color:#64758b;
  font-size:12px;
  font-weight:700;
}
body .crm-pagination{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:7px;
}
body .crm-pagination a{
  min-width:38px;
  height:38px;
  padding:0 12px;
  border:1px solid #d2dfef;
  border-radius:10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  color:#24446c;
  font-size:12px;
  font-weight:800;
  text-decoration:none;
  transition:.18s ease;
}
body .crm-pagination a:hover{
  border-color:#82a9dd;
  background:#eef5ff;
}
body .crm-pagination a.active{
  border-color:#0d63c7;
  background:#0d63c7;
  color:#fff;
  box-shadow:0 6px 15px rgba(13,99,199,.22);
}

@media(max-width:1180px){
  body .eod-admin-hero{align-items:flex-start;flex-direction:column}
  body .admin-eod-filter{width:100%;max-width:none}
}
@media(max-width:760px){
  body .eod-admin-hero{padding:20px 18px;border-radius:17px;gap:20px}
  body .eod-admin-hero>div{min-width:0}
  body .eod-admin-hero h2{font-size:22px}
  body .admin-eod-filter{grid-template-columns:1fr;gap:10px}
  body .admin-eod-filter .btn,
  body .admin-eod-filter .btn:nth-of-type(1),
  body .admin-eod-filter .btn-light:nth-of-type(2),
  body .admin-eod-filter .btn-light:nth-of-type(3){grid-column:auto;width:100%}
  body .card:has(.admin-todo-only-list)>.card-head{padding:18px 17px 15px}
  body .admin-todo-only-list{padding:15px;gap:11px}
  body .admin-todo-only-list .work-list-item>summary{
    align-items:stretch;
    flex-direction:column;
    min-height:0;
    padding:17px;
    gap:15px;
  }
  body .admin-todo-only-list summary>.btn{width:100%;min-width:0}
  body .admin-todo-only-list .work-reference{padding:17px}
  body .crm-pagination-wrap{align-items:flex-start;flex-direction:column;padding:16px 17px}
  body .crm-pagination{justify-content:flex-start}
}
