:root{
  --bg:#f7f9fc;
  --bg2:#eef4ff;
  --surface:#ffffff;
  --surface-soft:#f8fafc;
  --sidebar:#ffffff;
  --line:#e5eaf2;
  --line-strong:#d6deea;
  --text:#172033;
  --muted:#64748b;
  --accent:#2563eb;
  --accent2:#1d4ed8;
  --accent-soft:#eff6ff;
  --green:#16a34a;
  --green-soft:#ecfdf3;
  --yellow:#d97706;
  --yellow-soft:#fff7ed;
  --red:#dc2626;
  --red-soft:#fef2f2;
  --purple:#7c3aed;
  --purple-soft:#f5f3ff;
  --shadow:0 14px 34px rgba(15,23,42,.07);
  --shadow-soft:0 6px 18px rgba(15,23,42,.05);
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,"Plus Jakarta Sans",Segoe UI,Arial,sans-serif;background:linear-gradient(180deg,#fbfdff 0%,var(--bg) 42%,#f2f6fb 100%);color:var(--text);min-height:100vh}
button,input,textarea,select{font:inherit}.hidden{display:none!important}.glass{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:22px}.muted{color:var(--muted)}h1,h2,h3{margin:0;letter-spacing:-.025em}.brand{display:flex;align-items:center;gap:13px}.logo{width:48px;height:48px;border-radius:15px;background:linear-gradient(145deg,var(--accent),#60a5fa);display:grid;place-items:center;color:white;font-weight:950;box-shadow:0 12px 26px rgba(37,99,235,.22)}
.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 0,#dbeafe 0%,transparent 34%),radial-gradient(circle at 90% 20%,#ecfeff 0%,transparent 26%),var(--bg)}
.login-card{width:min(940px,100%);display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden}.login-left{padding:42px}.login-right{padding:42px;background:#fff;border-left:1px solid var(--line)}
label{display:block;margin:14px 0 7px;color:#475569;font-size:13px;font-weight:800}input,textarea,select{width:100%;border:1px solid var(--line-strong);border-radius:14px;background:#fff;color:var(--text);padding:12px 14px;outline:none;transition:.16s}textarea{min-height:120px;resize:vertical}input::placeholder,textarea::placeholder{color:#9aa7b8}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(37,99,235,.11)}
.btn{border:0;border-radius:14px;padding:12px 17px;color:white;font-weight:900;cursor:pointer;background:linear-gradient(145deg,var(--accent),var(--accent2));box-shadow:0 10px 20px rgba(37,99,235,.18);transition:.16s}.btn:hover{transform:translateY(-1px);box-shadow:0 14px 24px rgba(37,99,235,.22)}.btn:active{transform:translateY(0)}.btn.secondary{background:#f1f5f9;color:#243044;border:1px solid var(--line);box-shadow:none}.btn.secondary:hover{background:#e8eef6}.btn.danger{background:linear-gradient(145deg,#ef4444,var(--red));box-shadow:0 10px 18px rgba(220,38,38,.17)}
.role-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.role-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:18px;cursor:pointer;box-shadow:var(--shadow-soft);transition:.16s}.role-card:hover{transform:translateY(-1px);border-color:#bfdbfe}.role-card.active{border-color:#93c5fd;background:var(--accent-soft);box-shadow:0 12px 22px rgba(37,99,235,.10)}.demo{margin-top:16px;padding:14px;border-radius:16px;background:#f8fafc;border:1px dashed #cbd5e1;font-size:13px;color:#475569}.layout{display:grid;grid-template-columns:276px 1fr;min-height:100vh}.sidebar{padding:22px;border-right:1px solid var(--line);background:rgba(255,255,255,.88);backdrop-filter:blur(14px);position:sticky;top:0;height:100vh}.nav{margin-top:28px;display:grid;gap:6px}.nav button{background:transparent;color:#64748b;border:0;text-align:left;padding:13px 14px;border-radius:14px;cursor:pointer;font-weight:850;transition:.14s}.nav button.active,.nav button:hover{background:var(--accent-soft);color:var(--accent)}.main{padding:26px 30px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:14px}.search{max-width:470px;background:#fff}.righttools{display:flex;gap:8px;align-items:center}.pill{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;background:var(--accent-soft);color:var(--accent);border:1px solid #bfdbfe;font-size:12px;font-weight:850}.pill.green{background:var(--green-soft);color:var(--green);border-color:#bbf7d0}.pill.yellow{background:var(--yellow-soft);color:var(--yellow);border-color:#fed7aa}.pill.red{background:var(--red-soft);color:var(--red);border-color:#fecaca}.cards{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:16px;margin:22px 0}.card{padding:21px}.card strong{display:block;font-size:33px;margin-top:10px;color:#0f172a;letter-spacing:-.04em}.toolbar{display:flex;justify-content:space-between;align-items:center;margin:24px 0 14px;gap:12px}.table{width:100%;border-collapse:separate;border-spacing:0 10px}.table th{text-align:left;color:#64748b;font-size:12px;padding:0 14px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.table td{background:#fff;padding:15px 14px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.table td:first-child{border-radius:15px 0 0 15px;border-left:1px solid var(--line);font-weight:950;color:#0f172a}.table td:last-child{border-radius:0 15px 15px 0;border-right:1px solid var(--line)}.iconbtn{background:#fff;color:#334155;border:1px solid var(--line-strong);border-radius:12px;padding:9px 11px;cursor:pointer;font-weight:800;transition:.14s}.iconbtn:hover{border-color:#93c5fd;color:var(--accent);background:var(--accent-soft)}.modal-back{position:fixed;inset:0;background:rgba(15,23,42,.35);display:grid;place-items:center;padding:20px;z-index:20;backdrop-filter:blur(6px)}.modal{width:min(700px,100%);padding:25px}.grid2{display:grid;grid-template-columns:1fr 340px;gap:18px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:19px 0}.tabs button{border:1px solid var(--line);background:#fff;color:#64748b;padding:10px 13px;border-radius:999px;cursor:pointer;font-weight:850;transition:.14s}.tabs button.active,.tabs button:hover{color:var(--accent);border-color:#bfdbfe;background:var(--accent-soft)}.chatbox{height:390px;overflow:auto;padding:16px;display:grid;align-content:start;gap:12px}.msg{padding:12px 14px;border-radius:18px;background:#fff;border:1px solid var(--line);max-width:78%;box-shadow:var(--shadow-soft)}.msg.me{margin-left:auto;background:#eff6ff;border-color:#bfdbfe}.msg.internal{border-color:#ddd6fe;background:var(--purple-soft)}.composer{display:flex;gap:8px;margin-top:10px}.composer input{flex:1}.upload{border:1px dashed #cbd5e1;border-radius:20px;padding:32px;text-align:center;background:#fff;box-shadow:var(--shadow-soft)}.filegrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;margin-top:14px}.filecard{padding:16px;border-radius:17px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-soft)}.timeline{display:grid;gap:12px}.event{padding:15px;border-radius:17px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-soft)}.small{font-size:12px}.supabase-box{margin-top:18px;padding:16px;border-radius:17px;background:#f0fdf4;border:1px solid #bbf7d0;color:#14532d}
@media(max-width:950px){.layout{grid-template-columns:1fr}.sidebar{display:none}.cards,.grid2,.login-card,.formgrid{grid-template-columns:1fr}.login-right{border-left:0;border-top:1px solid var(--line)}.main{padding:16px}.table{font-size:13px;display:block;overflow:auto}.topbar{align-items:stretch;flex-direction:column}.righttools{flex-wrap:wrap}.composer{flex-wrap:wrap}.composer input{min-width:100%}}
.filters{display:grid;grid-template-columns:1fr 220px;gap:12px;padding:14px;margin-bottom:12px}.pill.purple{background:var(--purple-soft);color:var(--purple);border-color:#ddd6fe}
@media(max-width:700px){.filters{grid-template-columns:1fr}}
.pill.blue{background:#e0f2fe;color:#0369a1;border-color:#bae6fd}
.case-head{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;margin-bottom:14px}
.workflow{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:13px 16px;margin:10px 0 16px}
.workflow span{padding:8px 11px;border-radius:999px;background:#f8fafc;border:1px solid var(--line);color:#64748b;font-size:12px;font-weight:900}
.workflow span.done{background:var(--accent-soft);color:var(--accent);border-color:#bfdbfe}.workflow b{color:#94a3b8}.wide{grid-template-columns:1fr 360px}.check{display:block;margin:9px 0;padding:8px 10px;border-radius:12px;background:#f8fafc;border:1px solid var(--line)}.check input{width:auto;margin-right:8px}.totals{margin-top:14px;padding:16px;text-align:right}.copilot-float{position:fixed;right:24px;bottom:24px;width:54px;height:54px;border-radius:999px;border:0;background:linear-gradient(145deg,var(--accent),#60a5fa);color:white;font-size:22px;box-shadow:0 16px 30px rgba(37,99,235,.28);cursor:pointer}.filecard h3{margin-bottom:8px}.filecard .pill{margin:4px 4px 0 0}.modal h3{margin-top:16px}.modal .event{margin-top:8px}@media(max-width:950px){.wide{grid-template-columns:1fr}.case-head{align-items:flex-start;gap:12px;flex-direction:column}.workflow{align-items:flex-start}.workflow b{display:none}}
.btn.danger{background:#EF4444;color:#fff;border-color:#EF4444}
.btn.danger:hover{background:#DC2626;border-color:#DC2626}
.danger-card{border:1px solid rgba(239,68,68,.25);background:#fff!important}
/* v8 identity badges and online presence */
.portal-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.portal-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:18px;box-shadow:var(--shadow-soft);position:relative;overflow:hidden}.portal-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px}.portal-card.pbi:before{background:linear-gradient(180deg,#0038A8 0 42%,#fff 42% 58%,#CE1126 58%)}.portal-card.efor:before{background:linear-gradient(180deg,#E30A17 0 70%,#fff 70%)}
.user-badge{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:8px 12px;font-weight:950;font-size:13px;border:1px solid var(--line);background:#fff;white-space:nowrap}.user-badge .dot{width:9px;height:9px;border-radius:99px;display:inline-block;background:#94a3b8}.user-badge.pbi{border-color:#bfdbfe;background:linear-gradient(90deg,rgba(0,56,168,.12),rgba(255,255,255,.95),rgba(206,17,38,.10));color:#0f2f67}.user-badge.pbi .dot{background:#0038A8}.user-badge.efor{border-color:#fecaca;background:linear-gradient(90deg,rgba(227,10,23,.14),rgba(255,255,255,.96));color:#7f1d1d}.user-badge.efor .dot{background:#E30A17}
.role-chip{display:inline-flex;align-items:center;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:950;border:1px solid var(--line);white-space:nowrap}.role-chip.pbi{background:#eff6ff;color:#0038A8;border-color:#bfdbfe}.role-chip.efor{background:#fff1f2;color:#E30A17;border-color:#fecaca}.online-pill{display:inline-flex;align-items:center;gap:6px;border:1px solid #bbf7d0;background:#ecfdf3;color:#15803d;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:950}.online-dot{width:8px;height:8px;border-radius:99px;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.14)}.last-activity{font-size:12px;color:#64748b;white-space:nowrap}
.author{font-weight:950;display:inline-flex;align-items:center;gap:6px}.author.pbi{color:#0038A8}.author.pbi:before{content:"🇵🇭"}.author.efor{color:#E30A17}.author.efor:before{content:"🇹🇷"}.msg.pbi{border-left:5px solid #0038A8}.msg.efor{border-left:5px solid #E30A17}.event.pbi{border-left:5px solid #0038A8}.event.efor{border-left:5px solid #E30A17}
@media(max-width:950px){.portal-grid{grid-template-columns:1fr}.last-activity{display:none}}

/* v10 design-system refinements */
.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.page-head h1{margin-bottom:4px}.compact-cards .card{padding:17px 18px}.compact-cards .card strong{font-size:28px}.home-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:16px;margin-top:18px}.toolbar.clean{margin:0 0 12px}.mini-list{display:grid;gap:8px}.mini-case{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;border:1px solid var(--line);background:#fff;border-radius:15px;padding:12px 13px;cursor:pointer}.mini-case:hover{border-color:#bfdbfe;background:#f8fbff}.mini-case b{display:block}.mini-case small{display:block;color:#64748b;margin-top:4px}.event.slim{padding:11px 12px;margin-top:8px}
.case-browser{display:grid;grid-template-columns:minmax(520px,1fr) 380px;gap:16px;align-items:start}.case-list-panel{display:grid;gap:9px}.case-row{width:100%;border:1px solid var(--line);background:#fff;border-radius:16px;padding:14px 15px;display:flex;justify-content:space-between;gap:12px;align-items:center;text-align:left;cursor:pointer;box-shadow:var(--shadow-soft);transition:.14s}.case-row:hover,.case-row.selected{border-color:#93c5fd;background:#f8fbff}.case-row b{display:block;color:#0f172a}.case-row small{display:block;color:#64748b;margin-top:5px}.row-meta{display:flex;align-items:flex-end;flex-direction:column;gap:8px;white-space:nowrap}.case-preview-panel{position:sticky;top:22px;padding:20px}.preview-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:14px}.preview-top h2{font-size:20px}.preview-section{margin:15px 0}.preview-section h3{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:#64748b;margin-bottom:6px}.preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0}.preview-grid div{border:1px solid var(--line);border-radius:14px;padding:11px;background:#f8fafc}.preview-grid span{display:block;color:#64748b;font-size:12px;margin-bottom:4px}.empty{padding:24px;border:1px dashed #cbd5e1;border-radius:16px;background:#fff;color:#64748b;text-align:center}
.breadcrumb{font-size:13px;color:#64748b;margin-bottom:10px}.case-head.clean-head{background:transparent;border:0;box-shadow:none;padding:0;margin-bottom:16px}.case-head.clean-head h1{font-size:30px;letter-spacing:-.04em}.overview-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px;margin-top:12px}.overview-grid .card{padding:18px}.info-list p{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding:9px 0;margin:0}.info-list p:last-child{border-bottom:0}.info-list span{color:#64748b}.request-text{line-height:1.55}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.recent-only{margin-top:14px}
@media(max-width:1150px){.home-grid,.overview-grid{grid-template-columns:1fr 1fr}.case-browser{grid-template-columns:1fr}.case-preview-panel{position:static}}@media(max-width:700px){.home-grid,.overview-grid{grid-template-columns:1fr}.case-row{align-items:flex-start;flex-direction:column}.row-meta{align-items:flex-start}.page-head{flex-direction:column}.quick-actions{grid-template-columns:1fr}}

/* PT EFOR Nexus Design System 2.0 — Industrial Minimalism */
:root{
  --bg:#F7F8FA;
  --surface:#FFFFFF;
  --surface-soft:#FAFBFC;
  --text:#111827;
  --muted:#6B7280;
  --line:#E5E7EB;
  --line-strong:#D7DDE6;
  --accent:#2563EB;
  --graphite:#171A20;
  --shadow:0 2px 12px rgba(17,24,39,.05);
  --shadow-soft:0 1px 8px rgba(17,24,39,.04);
}
body{font-family:Geist,"SF Pro Display","SF Pro Text",Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}
.glass,.card,.event,.filecard,.role-card,.portal-card{box-shadow:var(--shadow);border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.logo{background:#111827;border-radius:13px;box-shadow:none;font-size:15px;letter-spacing:-.04em}.brand h2,.brand h1{font-weight:760;letter-spacing:-.045em}.muted{color:var(--muted)}
.btn{background:#111827;box-shadow:none;border-radius:12px;transition:background .18s,transform .18s}.btn:hover{background:#000;box-shadow:none;transform:translateY(-1px)}
.iconbtn,.btn.secondary{border-radius:12px;box-shadow:none}.pill{box-shadow:none;border-radius:999px;padding:6px 10px}.layout{grid-template-columns:248px 1fr;background:var(--bg)}.sidebar{background:rgba(255,255,255,.86);border-right:1px solid var(--line);padding:26px 20px}.nav button{border-radius:12px;padding:12px 13px;font-weight:680;color:#6B7280}.nav button.active,.nav button:hover{background:#F3F4F6;color:#111827}.main{padding:28px 34px}.topbar{margin-bottom:34px}.search{border-radius:999px;background:#fff;box-shadow:none;max-width:540px}.righttools{gap:10px}.page-head{margin-bottom:22px}.page-head h1,.case-head h1,h1{font-size:34px;line-height:1.05;font-weight:780;letter-spacing:-.055em}.case-head.clean-head{background:transparent;border:0;box-shadow:none;padding:12px 0 10px;margin-bottom:10px}.breadcrumb{font-size:13px;color:#8A94A6;margin-bottom:10px}.tabs{border-bottom:1px solid var(--line);gap:2px;margin:14px 0 22px}.tabs button{border:0;border-radius:0;background:transparent;padding:13px 14px;font-weight:720;color:#6B7280;border-bottom:2px solid transparent}.tabs button.active,.tabs button:hover{background:transparent;color:#111827;border-bottom-color:#111827}.cards{gap:14px}.card strong{font-size:36px;font-weight:780;letter-spacing:-.06em}.table{border-spacing:0}.table td{border-left:0!important;border-right:0!important;border-radius:0!important;background:transparent;border-top:1px solid var(--line);border-bottom:0}.table th{padding-bottom:12px}.filters{box-shadow:none;border-radius:16px}.case-browser{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px}.case-list-panel{min-width:0}.case-preview-panel{position:sticky;top:24px;align-self:start;padding:22px}.case-row{display:grid;grid-template-columns:minmax(220px,1.5fr) 180px 170px 120px 120px;gap:14px;align-items:center;padding:17px 18px;border-bottom:1px solid var(--line);cursor:pointer;transition:background .16s}.case-row:hover{background:#F9FAFB}.case-row.active{background:#F9FAFB;border-left:4px solid #111827}.case-row-title{font-weight:760;letter-spacing:-.02em}.case-row-meta{font-size:13px;color:var(--muted)}.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.overview-grid .card{padding:24px}.recent-only{margin-top:18px}.info-list p{display:flex;justify-content:space-between;border-bottom:1px solid #F0F2F5;padding:10px 0;margin:0}.info-list span{color:var(--muted)}.quick-actions{display:grid;gap:10px}.request-text{font-size:15px;line-height:1.7;color:#374151}.home-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:18px}.compact-cards .card{padding:20px;background:linear-gradient(180deg,#fff,#fbfcfe)}

/* Premium Login with live World Operations */
.nexus-login{min-height:100vh;display:grid;place-items:center;padding:32px;background:radial-gradient(circle at 15% 12%,rgba(37,99,235,.08),transparent 32%),radial-gradient(circle at 85% 18%,rgba(227,10,23,.06),transparent 26%),linear-gradient(180deg,#fff 0%,#F7F8FA 100%)}
.login-shell{width:min(480px,100%);padding:42px 44px 24px;border:1px solid rgba(229,231,235,.9);border-radius:28px;background:rgba(255,255,255,.86);box-shadow:0 24px 70px rgba(17,24,39,.08);backdrop-filter:blur(18px)}
.login-mark{text-align:center;letter-spacing:-.05em;line-height:1;margin-bottom:28px}.login-mark span{display:block;font-size:15px;font-weight:760;color:#111827}.login-mark strong{display:block;font-size:42px;font-weight:780;color:#111827;margin-top:4px}.login-copy{text-align:center;margin-bottom:28px}.login-copy p{margin:0 0 10px;color:#6B7280;font-size:13px;font-weight:650;letter-spacing:.02em}.login-copy h1{font-size:24px;line-height:1.18;margin:0;font-weight:740;letter-spacing:-.055em;color:#111827}.login-panel{margin:0 auto 30px}.login-panel label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#6B7280;font-weight:720;margin:16px 0 8px}.login-panel input{border-radius:14px;padding:14px 15px;border:1px solid var(--line-strong);background:#fff;box-shadow:0 1px 0 rgba(17,24,39,.02)}.login-btn{width:100%;margin-top:20px;padding:14px 18px}.login-error{min-height:18px;margin:12px 0 0;color:#EF4444;font-size:13px;text-align:center}.world-ops{border-top:1px solid var(--line);padding-top:22px;margin-top:8px}.world-title{font-size:11px;font-weight:780;letter-spacing:.16em;color:#9CA3AF;margin-bottom:12px}.world-list{display:grid;gap:10px}.world-row{display:grid;grid-template-columns:22px 1fr 56px 108px;gap:10px;align-items:center;min-height:28px}.world-row .flag{width:18px;height:18px;display:inline-grid}.world-row .flag svg{width:18px;height:18px;display:block;border-radius:50%;box-shadow:0 0 0 1px rgba(17,24,39,.06)}.world-row .city{font-size:13px;font-weight:650;color:#374151}.world-row .time{font-size:15px;font-weight:720;letter-spacing:-.03em;color:#111827;text-align:right}.op-status{font-size:11px;font-weight:700;color:#6B7280;text-align:right;white-space:nowrap}.op-status.business{color:#16A34A}.op-status.after{color:#6B7280}.login-foot{margin-top:20px;text-align:center;color:#9CA3AF;font-size:12px}
.login-wrap,.login-card,.login-left,.login-right{all:unset}
@media(max-width:950px){.case-browser,.home-grid,.overview-grid{grid-template-columns:1fr}.case-preview-panel{position:static}.case-row{grid-template-columns:1fr;gap:6px}.login-shell{padding:34px 24px 22px}.world-row{grid-template-columns:22px 1fr 54px}.op-status{grid-column:2/4;text-align:left}.main{padding:22px}.page-head h1,.case-head h1,h1{font-size:30px}}

/* v13: Case identity + 52-week visual timeline */
.case-meta-strong{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;align-items:center;color:#4b5563;font-size:13px;font-weight:680}
.case-meta-strong span{display:inline-flex;align-items:center;border:1px solid #E5E7EB;background:#fff;border-radius:999px;padding:7px 10px;line-height:1}
.case-meta-strong span:first-child{color:#111827;border-color:#111827;font-weight:820;letter-spacing:.02em}
.week-timeline{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;margin:18px 0;box-shadow:var(--shadow-soft)}
.timeline-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:16px}
.timeline-head h2{margin:0 0 4px;font-size:20px;letter-spacing:-.03em}
.timeline-legend{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;font-size:12px;color:#6B7280;font-weight:650}
.timeline-legend span{display:inline-flex;align-items:center;gap:6px}
.legend-box{width:12px;height:12px;border-radius:4px;border:1px solid #d1d5db;display:inline-block;background:#fff}
.weeks-grid{display:grid;grid-template-columns:repeat(26, minmax(18px,1fr));gap:6px}
.week-cell{height:22px;min-width:18px;border:1px solid #E5E7EB;background:#fff;border-radius:6px;cursor:pointer;padding:0;display:grid;place-items:center;color:#9CA3AF;font-size:9px;font-weight:700;transition:transform .12s, border-color .12s, box-shadow .12s}
.week-cell:hover{transform:translateY(-1px);border-color:#111827;box-shadow:0 4px 10px rgba(17,24,39,.08);color:#111827}
.week-cell.w-new{background:#F3F4F6;border-color:#D1D5DB;color:#374151}
.week-cell.w-tech{background:#EEF2FF;border-color:#C7D2FE;color:#3730A3}
.week-cell.w-rfq{background:#EFF6FF;border-color:#BFDBFE;color:#1D4ED8}
.week-cell.w-supplier{background:#F5F3FF;border-color:#DDD6FE;color:#6D28D9}
.week-cell.w-quote{background:#FFF7ED;border-color:#FED7AA;color:#C2410C}
.week-cell.w-wait{background:#FEFCE8;border-color:#FDE68A;color:#A16207}
.week-cell.w-done{background:#F0FDF4;border-color:#BBF7D0;color:#15803D}
.week-cell.w-lost{background:#FEF2F2;border-color:#FECACA;color:#B91C1C}
.detailed-history{margin-top:18px}.detailed-history .event{box-shadow:none;border-radius:14px}
@media(max-width:1200px){.weeks-grid{grid-template-columns:repeat(13, minmax(18px,1fr));}.timeline-head{display:block}.timeline-legend{justify-content:flex-start;margin-top:10px}}

/* v15 - Clean Cases List: removed right preview panel for visual parallelism */
.case-browser-clean{display:block!important;grid-template-columns:1fr!important}.case-browser-clean .case-list-panel{display:grid;gap:10px}.case-row-clean{width:100%;display:grid!important;grid-template-columns:minmax(260px,1.7fr) 150px minmax(180px,.9fr) 120px 150px 120px!important;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px;box-shadow:var(--shadow-soft);cursor:default}.case-row-clean:hover{background:#fff;border-color:#CBD5E1}.case-row-clean .case-row-title{display:block;font-weight:780;letter-spacing:-.025em;color:#111827}.case-row-clean .case-row-meta{display:block;margin-top:5px;font-size:13px;color:#6B7280;line-height:1.35;max-width:720px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.case-row-label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.055em;color:#8A94A6;margin-bottom:5px;font-weight:740}.case-row-clean b{font-size:13px;color:#111827;font-weight:720}.case-row-action{display:flex;justify-content:flex-end}.case-detail-btn{padding:10px 15px;border-radius:12px;background:#111827;color:#fff;white-space:nowrap}.case-detail-btn:hover{background:#000}.case-preview-panel{display:none!important}
@media(max-width:1180px){.case-row-clean{grid-template-columns:1fr 1fr 1fr!important}.case-row-action{justify-content:flex-start}}@media(max-width:760px){.case-row-clean{grid-template-columns:1fr!important}.case-row-clean .case-row-meta{white-space:normal}.case-row-action{justify-content:stretch}.case-detail-btn{width:100%}}

/* v16: Clean overview with dominant Quick Actions and parallel structure */
.overview-actions{
  display:grid;
  grid-template-columns: minmax(220px,.55fr) minmax(420px,1.45fr);
  gap:24px;
  align-items:center;
  padding:24px;
  border:1px solid var(--line);
  border-radius:18px;
  margin:14px 0 16px;
  background:#fff;
}
.overview-actions h2{margin:0 0 4px;font-size:24px;letter-spacing:-.04em}
.overview-actions-buttons{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px;align-items:center}
.overview-actions-buttons .btn{height:48px;border-radius:14px;font-weight:820;box-shadow:none}
.action-primary{background:#111827;color:#fff;border:1px solid #111827}
.action-primary:hover{background:#0f172a}
.action-secondary{background:#fff;color:#111827;border:1px solid #CBD5E1}
.action-secondary:hover{background:#F8FAFC;border-color:#94A3B8}
.overview-minimal{
  padding:22px 24px;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  margin-bottom:16px;
}
.overview-status-line{
  display:grid;
  grid-template-columns:repeat(4,minmax(150px,1fr));
  gap:0;
  border-top:1px solid #EEF2F7;
  border-left:1px solid #EEF2F7;
}
.overview-status-line>div{
  min-height:74px;
  padding:15px 16px;
  border-right:1px solid #EEF2F7;
  border-bottom:1px solid #EEF2F7;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:7px;
}
.overview-status-line .label{font-size:12px;letter-spacing:.02em;text-transform:uppercase;color:#7C8797;font-weight:760}
.overview-status-line b{font-size:15px;color:#111827;font-weight:820}
.status-control{margin-top:18px;max-width:420px}
.status-control select{height:48px;border-radius:14px}
@media(max-width:1150px){.overview-actions{grid-template-columns:1fr}.overview-actions-buttons{grid-template-columns:1fr 1fr}.overview-status-line{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.overview-actions-buttons,.overview-status-line{grid-template-columns:1fr}}

/* v17: Chat Room green tab + Meeting Room module */
.tabs button.chat-room-tab{color:#15803d;border-bottom-color:rgba(34,197,94,.35)}
.tabs button.chat-room-tab.active,.tabs button.chat-room-tab:hover{color:#15803d;border-bottom-color:#22C55E;background:linear-gradient(180deg,rgba(34,197,94,.08),rgba(34,197,94,0))}
.meeting-layout{display:grid;grid-template-columns:280px minmax(520px,1fr) 360px;gap:18px;align-items:stretch}.meeting-head{margin-bottom:18px}.meeting-online,.meeting-room,.meeting-chat{padding:22px;background:#fff;border-radius:20px;border:1px solid var(--line);box-shadow:var(--shadow-soft)}.meeting-online h2,.meeting-room h2,.meeting-chat h2{font-size:20px;margin:0 0 6px;letter-spacing:-.035em}.online-portraits{display:grid;gap:10px;margin-top:16px}.portrait{display:grid;grid-template-columns:46px 1fr auto;gap:10px;align-items:center;border:1px solid #E5E7EB;border-radius:16px;padding:10px;background:#fff}.portrait.seated{background:#F8FAFC}.portrait-photo{width:46px;height:52px;border-radius:14px;background:#F3F4F6;display:grid;place-items:center;font-weight:850;color:#111827;border:1px solid #E5E7EB}.portrait.pbi .portrait-photo{background:linear-gradient(135deg,rgba(0,56,168,.14),#fff,rgba(206,17,38,.12));color:#0038A8}.portrait.efor .portrait-photo{background:linear-gradient(135deg,rgba(227,10,23,.14),#fff);color:#991b1b}.portrait b{display:block;font-size:13px}.portrait span{display:block;font-size:12px;color:#64748b;margin-top:2px}.add-seat{border:1px solid #CBD5E1;background:#fff;border-radius:999px;padding:8px 11px;font-weight:780;color:#111827;cursor:pointer}.add-seat:hover{background:#F8FAFC}.add-seat:disabled{opacity:.45;cursor:not-allowed}.meeting-room{min-height:650px}.meeting-room-top{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:14px}.meeting-state{display:inline-flex;align-items:center;border:1px solid #E5E7EB;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:820;color:#64748b;background:#fff}.meeting-state.live{color:#15803d;border-color:#BBF7D0;background:#F0FDF4}.table-stage{height:560px;display:grid;place-items:center;background:radial-gradient(circle at center,rgba(37,99,235,.06),transparent 52%);border:1px solid #EEF2F7;border-radius:24px;overflow:hidden}.meeting-table{width:min(720px,92%);height:390px;border-radius:52% / 42%;background:linear-gradient(180deg,#fff,#F8FAFC);border:1px solid #DDE3EC;box-shadow:0 30px 80px rgba(17,24,39,.10), inset 0 1px 0 #fff;position:relative}.table-core{position:absolute;inset:33% 30%;border:1px dashed #CBD5E1;border-radius:999px;display:grid;place-items:center;text-align:center;color:#64748b;background:rgba(255,255,255,.72)}.table-core span{display:block;font-weight:850;color:#111827}.table-core small{display:block;margin-top:4px}.seat{position:absolute;width:174px;display:grid;place-items:center;gap:6px}.seat .chair{width:52px;height:42px;border-radius:18px 18px 10px 10px;background:#E5E7EB;border:1px solid #CBD5E1;box-shadow:inset 0 1px 0 #fff}.seat-card{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:8px;min-width:172px;border:1px solid #DDE3EC;border-radius:16px;background:rgba(255,255,255,.94);box-shadow:0 8px 24px rgba(17,24,39,.08);padding:8px}.seat-avatar{width:34px;height:34px;border-radius:11px;background:#111827;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:850}.seat-avatar.empty{background:#F8FAFC;color:#94A3B8;border:1px dashed #CBD5E1}.seat-card b{display:block;font-size:12px;line-height:1}.seat-card small{display:block;font-size:11px;color:#64748b;margin-top:3px}.seat-actions{display:flex;gap:5px}.seat-actions button{width:28px;height:28px;border-radius:10px;border:1px solid #E5E7EB;background:#fff;cursor:pointer}.seat-actions button:hover{background:#F8FAFC}.seat-actions .mic.on{background:#22C55E;color:#fff;border-color:#22C55E}.seat.speaking .seat-card{border-color:#22C55E;box-shadow:0 0 0 4px rgba(34,197,94,.12),0 12px 28px rgba(17,24,39,.10)}.seat.pbi .seat-avatar{background:#0038A8}.seat.efor .seat-avatar{background:#E30A17}.seat.top-left{left:11%;top:-52px}.seat.top-center{left:50%;top:-74px;transform:translateX(-50%)}.seat.top-right{right:11%;top:-52px}.seat.right-upper{right:-74px;top:22%}.seat.right-lower{right:-74px;bottom:22%}.seat.bottom-right{right:11%;bottom:-64px}.seat.bottom-center{left:50%;bottom:-78px;transform:translateX(-50%)}.seat.bottom-left{left:11%;bottom:-64px}.seat.left-lower{left:-74px;bottom:22%}.seat.left-upper{left:-74px;top:22%}.empty-seat{opacity:.55}.meeting-chat{display:flex;flex-direction:column;min-height:650px}.meeting-chat-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #EEF2F7;padding-bottom:12px}.meeting-chat-flow{flex:1;overflow:auto;display:grid;align-content:start;gap:10px;padding:14px 0}.meeting-msg{border-left:4px solid #CBD5E1;background:#F8FAFC;border-radius:14px;padding:10px 12px}.meeting-msg.pbi{border-left-color:#0038A8}.meeting-msg.efor{border-left-color:#E30A17}.meeting-msg b{display:block;font-size:12px}.meeting-msg p{margin:5px 0;color:#111827}.meeting-msg span{font-size:11px;color:#64748b}.meeting-chat-input{display:grid;grid-template-columns:1fr 86px;gap:8px;border-top:1px solid #EEF2F7;padding-top:12px}.meeting-chat-input input{border-radius:14px;border:1px solid #CBD5E1;padding:12px 13px;background:#fff}
@media(max-width:1350px){.meeting-layout{grid-template-columns:260px 1fr}.meeting-chat{grid-column:1/-1;min-height:360px}.meeting-room{min-height:590px}.table-stage{height:500px}.meeting-table{height:340px}.seat{width:154px}.seat-card{min-width:154px}.seat.right-upper,.seat.right-lower{right:-54px}.seat.left-upper,.seat.left-lower{left:-54px}}
@media(max-width:900px){.meeting-layout{grid-template-columns:1fr}.meeting-room{min-height:auto}.table-stage{height:auto;padding:22px}.meeting-table{width:100%;height:auto;border-radius:24px;padding:18px;display:grid;gap:10px}.table-core{position:static;padding:18px;margin-bottom:8px}.seat,.seat.top-left,.seat.top-center,.seat.top-right,.seat.right-upper,.seat.right-lower,.seat.bottom-right,.seat.bottom-center,.seat.bottom-left,.seat.left-lower,.seat.left-upper{position:static!important;transform:none!important;width:100%}.seat .chair{display:none}.seat-card{width:100%;min-width:0}.meeting-chat{min-height:360px}}
/* v20 RFQ Supplier Workspace */
.rfq-workspace{display:grid;gap:18px}.rfq-toolbar h2{margin:0}.supplier-buttons{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}.supplier-tile{border:1px solid var(--line);background:#fff;border-radius:18px;padding:18px;text-align:left;display:grid;gap:7px;cursor:pointer;box-shadow:var(--shadow-soft);transition:.16s}.supplier-tile:hover{transform:translateY(-2px);border-color:#93c5fd;background:#f8fbff}.supplier-tile b{font-size:18px;letter-spacing:-.03em;color:#0f172a}.supplier-tile small{color:#64748b}.supplier-tile em{font-style:normal;font-size:12px;font-weight:850;color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:5px 9px;justify-self:start}.supplier-code{font-size:11px;font-weight:900;color:#64748b;letter-spacing:.08em;text-transform:uppercase}.security-note{border:1px solid #fde68a;background:#fffbeb;color:#92400e;border-radius:16px;padding:14px 16px;font-weight:750}.supplier-detail-grid{display:grid;grid-template-columns:360px 1fr;gap:18px}.supplier-profile,.supplier-files{padding:22px}.supplier-profile h3,.supplier-files h3{margin-top:0}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.contact-card{border:1px solid var(--line);border-radius:14px;padding:12px;margin:8px 0;background:#fff}.contact-card b,.contact-card span,.contact-card small{display:block}.contact-card span,.contact-card small{color:#64748b}.supplier-doc-list{display:grid;gap:10px;margin:12px 0 22px}.supplier-doc{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:16px;background:#fff;padding:14px}.supplier-doc b,.supplier-doc small{display:block}.supplier-doc small{color:#64748b;margin-top:4px}.supplier-doc p{margin:8px 0 0;color:#475569}.supplier-doc.offer{border-color:#fed7aa;background:#fffaf3}.empty-state{padding:22px;border-radius:18px}.span2{grid-column:1 / -1}.supplier-modal{width:min(840px,100%)}
@media(max-width:950px){.supplier-detail-grid{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}.supplier-doc{flex-direction:column}}

/* v21 supplier upload/contact improvements */
.toolbar-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.section-head.compact{margin-top:18px;margin-bottom:8px}
.doc-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.upload-progress{margin-top:16px;padding:14px;border:1px solid var(--line);border-radius:16px;background:#f8fafc}
.upload-progress span{font-size:12px;color:#475569;font-weight:800}
.progress-track{height:9px;background:#e2e8f0;border-radius:999px;overflow:hidden;margin-top:9px}
.progress-track i{display:block;height:100%;width:0%;background:linear-gradient(90deg,#2563eb,#22c55e);border-radius:999px;transition:width .16s ease}
.supplier-doc small{display:block;margin-top:4px;color:#64748b}
.supplier-doc p{margin:7px 0 0;color:#64748b}
.supplier-doc{align-items:center}
@media(max-width:900px){.doc-actions{justify-content:flex-start}.toolbar-actions{width:100%}}

/* v22 overview redesign */
.case-overview-hero{padding:28px 30px;margin-bottom:18px;display:grid;grid-template-columns:minmax(320px,1.4fr) minmax(520px,2fr);gap:28px;align-items:start}
.case-overview-title .eyebrow{display:block;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#64748b;margin-bottom:10px}
.case-overview-title h2{font-size:32px;line-height:1.08;margin:0 0 12px;color:#081326;letter-spacing:-.035em}
.case-overview-title p{margin:0;color:#475569;line-height:1.55;max-width:680px}
.case-overview-meta{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));border:1px solid #e5e7eb;border-radius:18px;overflow:hidden;background:#fff}
.case-overview-meta>div{padding:16px 18px;border-right:1px solid #e5e7eb;min-height:78px}
.case-overview-meta>div:last-child{border-right:0}
.case-overview-meta span{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#64748b;margin-bottom:8px}
.case-overview-meta b{display:block;font-size:14px;color:#061224;line-height:1.35}
.overview-status-control{grid-column:1/-1;border-top:1px solid #eef2f7;padding-top:18px;display:flex;align-items:center;gap:14px}
.overview-status-control label{font-size:12px;font-weight:800;color:#334155}
.overview-status-control select{max-width:320px}
.overview-suppliers{padding:24px 24px;margin-bottom:18px}
.overview-supplier-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;margin-top:18px}
.overview-supplier-btn{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:stretch}
.supplier-summary{appearance:none;text-align:left;border:1px solid #dbe3ef;background:#fff;border-radius:18px;padding:16px 18px;cursor:pointer;transition:.16s ease;box-shadow:0 8px 20px rgba(15,23,42,.03)}
.supplier-summary:hover{border-color:#9bbcff;transform:translateY(-1px);box-shadow:0 14px 28px rgba(37,99,235,.08)}
.supplier-summary b{display:block;font-size:16px;color:#071224;margin-bottom:6px}
.supplier-summary span{display:block;font-size:13px;color:#64748b;margin-bottom:10px}
.supplier-summary small{display:block;font-size:12px;color:#334155;margin-bottom:8px}
.supplier-summary em{font-style:normal;font-size:11px;font-weight:800;text-transform:uppercase;color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:5px 9px;display:inline-block}
.go-detail.mini{border:1px solid #111827;background:#111827;color:#fff;border-radius:16px;padding:0 16px;font-weight:800;cursor:pointer;white-space:nowrap}
.empty-line{border:1px dashed #cbd5e1;border-radius:18px;padding:22px;color:#64748b;background:#fbfdff}
.overview-week-only{padding:22px 24px;margin-bottom:18px}
.overview-week-only .timeline-head p{display:none}
@media(max-width:1200px){.case-overview-hero{grid-template-columns:1fr}.case-overview-meta{grid-template-columns:repeat(2,1fr)}.case-overview-meta>div{border-bottom:1px solid #e5e7eb}.case-overview-meta>div:nth-child(2n){border-right:0}}
.supplier-tile{position:relative}.supplier-tile-main{display:grid;gap:7px;cursor:pointer}.supplier-admin-actions{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.inline-actions{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.contact-card{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.danger-mini{color:#dc2626!important;border-color:#fecaca!important;background:#fff5f5!important}.danger-mini:hover{background:#fee2e2!important}.btn.danger{background:#ef4444!important;color:#fff!important;border-color:#ef4444!important}

/* v25 customer sharing from supplier workspace */
.customer-shared-files{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
.shared-file-section{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:var(--shadow-soft)}
.shared-file-section h2{margin:0;font-size:20px}
.shared-file-row{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid #eef2f7;padding:14px 0}
.shared-file-row:first-of-type{border-top:0}
.shared-file-row b,.shared-file-row small{display:block}
.shared-file-row small{color:#64748b;margin-top:4px}
.send-customer{background:#16a34a!important;color:#fff!important;border-color:#16a34a!important}
.send-customer:hover{background:#15803d!important}
@media(max-width:900px){.customer-shared-files{grid-template-columns:1fr}.shared-file-row{align-items:flex-start;flex-direction:column}}

/* v27 real browser microphone activation and live input meter */
.meeting-audio-status{margin:0 0 16px;padding:14px 18px;display:grid;grid-template-columns:minmax(230px,1fr) minmax(180px,360px) auto;align-items:center;gap:18px;border:1px solid #dbe3ef}
.meeting-audio-status>div:first-child b,.meeting-audio-status>div:first-child span{display:block}
.meeting-audio-status>div:first-child span{font-size:12px;color:#64748b;margin-top:3px}
.meeting-audio-status small{font-size:11px;color:#64748b;text-align:right}
.meeting-audio-status.connected{border-color:#86efac;background:#f0fdf4}
.mic-level{height:9px;border-radius:999px;background:#e5e7eb;overflow:hidden;border:1px solid #d1d5db}
.mic-level i{display:block;height:100%;width:0;background:linear-gradient(90deg,#22c55e,#16a34a);transition:width .08s linear}
.seat.voice-active .seat-card{box-shadow:0 0 0 3px rgba(34,197,94,.25),0 12px 26px rgba(34,197,94,.18);border-color:#22c55e}
.seat.voice-active .chair{background:#bbf7d0;border-color:#22c55e}
@media(max-width:900px){.meeting-audio-status{grid-template-columns:1fr}.meeting-audio-status small{text-align:left}}
.remote-audio-dock{display:none}
.meeting-audio-status.connected small{color:#15803d;font-weight:700}
.settings-grid{align-items:start}.settings-wide{grid-column:1/-1}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.form-grid label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:650;color:#334155}.form-grid input{width:100%;min-height:44px;border:1px solid #dbe2ea;border-radius:10px;padding:0 12px;background:#fff;color:#111827;outline:none}.form-grid input:focus{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.10)}.form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}@media(max-width:760px){.form-grid{grid-template-columns:1fr}.settings-wide{grid-column:auto}}

/* Main-app meeting invitations */
.meeting-notice-btn{position:relative;overflow:visible}
.meeting-notice-btn .meeting-bell{display:inline-block;color:#94a3b8;font-size:11px;margin-right:5px}
.meeting-notice-btn.has-meeting{border-color:#ef4444!important;background:#fff1f2!important;color:#b91c1c!important;animation:meetingMainPulse 1.05s infinite;box-shadow:0 0 0 0 rgba(239,68,68,.28)}
.meeting-notice-btn.has-meeting .meeting-bell{color:#ef4444}
@keyframes meetingMainPulse{0%,100%{transform:translateY(0);box-shadow:0 0 0 0 rgba(239,68,68,.28)}50%{transform:translateY(-1px);box-shadow:0 0 0 7px rgba(239,68,68,0)}}
.meeting-notice-panel{position:fixed;z-index:9998;top:76px;right:22px;width:min(390px,calc(100vw - 30px));max-height:calc(100vh - 100px);overflow:auto;background:#fff;border:1px solid #dbe3ee;border-radius:16px;box-shadow:0 24px 60px rgba(15,23,42,.2);padding:0;display:none}
.meeting-notice-panel.open{display:block}
.meeting-notice-head{position:sticky;top:0;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid #e5eaf1;z-index:1}
.meeting-notice-head>div{display:grid;gap:2px}.meeting-notice-head span{font-size:12px;color:#64748b}.meeting-notice-head button{border:0;background:#eef2f7;border-radius:10px;width:32px;height:32px;font-size:20px;cursor:pointer}
.meeting-notice-list{padding:12px}.meeting-notice-card{display:grid;gap:7px;padding:14px;border:1px solid #e4eaf2;border-radius:13px;background:#fbfdff;margin-bottom:10px}.meeting-notice-card strong{font-size:15px}.meeting-notice-card span,.meeting-notice-card small{color:#64748b;font-size:12px}.meeting-alert-pulse{justify-self:start;border:0;border-radius:999px;padding:7px 10px;background:#ef4444;color:#fff;font-weight:800;font-size:10px;letter-spacing:.05em;cursor:pointer;animation:meetingInviteBlink .95s infinite}.meeting-open-btn{margin-top:3px;background:#16a34a!important;border-color:#16a34a!important}.meeting-notice-empty{padding:20px 10px;color:#64748b;text-align:center}
@keyframes meetingInviteBlink{0%,100%{opacity:1}50%{opacity:.42}}
@media(max-width:900px){.meeting-notice-panel{top:68px;right:10px}.meeting-notice-btn{font-size:0}.meeting-notice-btn b,.meeting-notice-btn .meeting-bell{font-size:12px}}

/* v48 Inquiry Details */
.inquiry-details{padding:26px 28px;margin-bottom:18px}.inquiry-head{align-items:flex-start}.inquiry-head .eyebrow{display:block;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#64748b;margin-bottom:7px}.inquiry-head h2{margin:0 0 7px;font-size:25px}.inquiry-head p{max-width:760px;margin:0;line-height:1.55}.inquiry-tools{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 0;border-top:1px solid #edf1f6;border-bottom:1px solid #edf1f6;margin-top:20px}.inquiry-search{flex:1;max-width:460px}.inquiry-search input{width:100%;min-height:44px;border:1px solid #dbe3ef;border-radius:12px;padding:0 14px;background:#fff}.inquiry-filters{display:flex;gap:7px;flex-wrap:wrap}.inquiry-filters button{border:1px solid #dbe3ef;background:#fff;color:#475569;border-radius:999px;padding:8px 11px;font-size:11px;font-weight:850;cursor:pointer}.inquiry-filters button.active{background:#0f172a;color:#fff;border-color:#0f172a}.inquiry-doc-list{display:grid;gap:10px;margin-top:18px}.inquiry-doc-row{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 16px;border:1px solid #e1e7ef;border-radius:15px;background:#fff;transition:.15s}.inquiry-doc-row:hover{border-color:#b9c7da;box-shadow:0 8px 24px rgba(15,23,42,.05)}.inquiry-doc-icon{width:48px;height:48px;border-radius:13px;background:#f1f5f9;display:grid;place-items:center;font-size:22px;border:1px solid #e2e8f0}.inquiry-doc-icon.pdf{background:#fff1f2}.inquiry-doc-icon.excel{background:#ecfdf5}.inquiry-doc-icon.image{background:#eff6ff}.inquiry-doc-icon.video{background:#f5f3ff}.inquiry-doc-icon.drawing{background:#fff7ed}.inquiry-doc-main{min-width:0}.inquiry-doc-title{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.inquiry-doc-title b{font-size:15px;color:#0f172a;overflow-wrap:anywhere}.inquiry-doc-main p{margin:6px 0;color:#475569;line-height:1.45}.inquiry-doc-main small{color:#7a8798}.file-type-chip,.revision-chip{font-size:10px;font-weight:900;letter-spacing:.04em;border-radius:999px;padding:4px 7px;border:1px solid #dbe3ef;color:#475569;background:#f8fafc}.revision-chip{color:#2563eb;background:#eff6ff;border-color:#bfdbfe}.inquiry-doc-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.inquiry-empty{border:1px dashed #cbd5e1;border-radius:16px;padding:28px;display:grid;gap:6px;text-align:center;color:#64748b;background:#fbfdff}.inquiry-empty b{color:#1e293b}.inquiry-upload-modal label{display:block;font-size:12px;font-weight:850;color:#334155;margin:15px 0 7px}.inquiry-upload-modal input{width:100%;min-height:44px;border:1px solid #dbe3ef;border-radius:12px;padding:9px 12px}.hidden{display:none!important}.modal-actions{display:flex;gap:9px;justify-content:flex-end;margin-top:20px}.inquiry-preview-back{z-index:1000}.inquiry-preview{width:min(1100px,94vw);height:min(820px,92vh);padding:18px;display:flex;flex-direction:column}.preview-stage{flex:1;min-height:0;border:1px solid #dbe3ef;border-radius:14px;background:#f8fafc;overflow:hidden;display:grid;place-items:center}.preview-stage iframe,.preview-stage video{width:100%;height:100%;border:0}.preview-stage img{max-width:100%;max-height:100%;object-fit:contain}.revision-history{display:grid;gap:9px;margin-top:16px}.revision-history>div{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;border:1px solid #e2e8f0;border-radius:12px;padding:12px}.revision-history span{font-size:12px;color:#64748b}@media(max-width:900px){.inquiry-tools{align-items:stretch;flex-direction:column}.inquiry-search{max-width:none}.inquiry-doc-row{grid-template-columns:46px 1fr}.inquiry-doc-actions{grid-column:1/-1;justify-content:flex-start}.revision-history>div{grid-template-columns:1fr}.inquiry-head{flex-direction:column}.inquiry-head .btn{width:100%}}

/* v49 monthly case archive + compact case code */
.case-months{display:grid;gap:26px;margin-top:20px}.case-year{display:grid;gap:16px}.case-year-title{display:flex;align-items:baseline;justify-content:space-between;border-bottom:2px solid #111827;padding:0 2px 10px}.case-year-title span{font-size:28px;font-weight:820;letter-spacing:-.045em;color:#111827}.case-year-title small{font-size:12px;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.06em}.case-month{border:1px solid #e2e8f0;border-radius:18px;background:#f8fafc;overflow:hidden}.case-month-head{display:flex;align-items:center;justify-content:space-between;padding:14px 17px;background:#fff;border-bottom:1px solid #e8edf3}.case-month-head>div{display:flex;align-items:center;gap:10px}.case-month-head b{font-size:15px;color:#111827}.case-month-head span{font-size:11px;font-weight:850;color:#64748b;background:#f1f5f9;border-radius:999px;padding:5px 9px}.case-month .case-list-panel{padding:10px;display:grid;gap:9px}.month-empty{padding:13px 17px;color:#94a3b8;font-size:12px;background:#fbfdff}.empty-month{opacity:.72}.empty-month .case-month-head{border-bottom:0}.case-code-red{color:#d62828!important;font-weight:900!important;letter-spacing:.01em}.case-code-inline{color:#d62828;font-weight:850}.case-row-clean{grid-template-columns:105px minmax(260px,1.7fr) minmax(180px,.9fr) 120px 150px 120px!important}.case-code-cell{order:-1}.case-code-cell .case-row-label{margin-bottom:3px}.case-code-cell .case-code-red{font-size:18px}@media(max-width:1180px){.case-row-clean{grid-template-columns:105px 1fr 1fr!important}}@media(max-width:760px){.case-row-clean{grid-template-columns:1fr!important}.case-year-title span{font-size:24px}}

/* v50 colored monthly groups, stats and collapse */
.case-month{--month:#2563eb;--month-soft:#eff6ff;--month-border:#bfdbfe}
.case-month.month-1{--month:#2563eb;--month-soft:#eff6ff;--month-border:#bfdbfe}
.case-month.month-2{--month:#ea580c;--month-soft:#fff7ed;--month-border:#fed7aa}
.case-month.month-3{--month:#16a34a;--month-soft:#f0fdf4;--month-border:#bbf7d0}
.case-month.month-4{--month:#7c3aed;--month-soft:#f5f3ff;--month-border:#ddd6fe}
.case-month.month-5{--month:#dc2626;--month-soft:#fef2f2;--month-border:#fecaca}
.case-month.month-6{--month:#0891b2;--month-soft:#ecfeff;--month-border:#a5f3fc}
.case-month.month-7{--month:#ca8a04;--month-soft:#fefce8;--month-border:#fde68a}
.case-month.month-8{--month:#334155;--month-soft:#f8fafc;--month-border:#cbd5e1}
.case-month.month-9{--month:#059669;--month-soft:#ecfdf5;--month-border:#a7f3d0}
.case-month.month-10{--month:#92400e;--month-soft:#fffbeb;--month-border:#fcd34d}
.case-month.month-11{--month:#c026d3;--month-soft:#fdf4ff;--month-border:#f5d0fe}
.case-month.month-12{--month:#1e3a8a;--month-soft:#eef2ff;--month-border:#c7d2fe}
.case-month{border-color:var(--month-border);background:var(--month-soft)}
.case-month-head{width:100%;border:0;text-align:left;cursor:pointer;background:linear-gradient(90deg,var(--month-soft),#fff 72%);padding:15px 17px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:inherit}
.case-month-head:hover{filter:saturate(1.04);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--month) 22%,transparent)}
.month-title-wrap{display:flex;align-items:center;gap:10px;min-width:0}
.month-accent{width:5px;height:28px;border-radius:999px;background:var(--month);box-shadow:0 0 0 4px color-mix(in srgb,var(--month) 10%,transparent)}
.month-chevron{font-size:11px;color:var(--month);width:14px;text-align:center}
.case-month-head b{color:var(--month);letter-spacing:.035em;font-size:14px}
.month-count{font-size:11px;font-weight:850;color:#475569;background:#fff;border:1px solid var(--month-border);border-radius:999px;padding:5px 9px;white-space:nowrap}
.month-stats{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.month-stats .stat{font-size:10px;font-weight:850;border-radius:999px;padding:5px 8px;border:1px solid transparent;white-space:nowrap}
.month-stats .completed{color:#166534;background:#f0fdf4;border-color:#bbf7d0}
.month-stats .progress{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}
.month-stats .waiting{color:#92400e;background:#fffbeb;border-color:#fde68a}
.case-month .case-list-panel{background:rgba(255,255,255,.76)}
.case-month.is-collapsed{background:var(--month-soft)}
.case-month.is-collapsed .case-month-head{border-bottom:0}
.month-content[hidden]{display:none!important}
.case-row-clean:hover{background:#eff6ff!important;border-color:#bfdbfe!important}
@media(max-width:900px){.case-month-head{align-items:flex-start;flex-direction:column}.month-stats{justify-content:flex-start;padding-left:29px}.month-title-wrap{flex-wrap:wrap}}

/* v52 Inquiry Details written notes */
.inquiry-primary-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.add-note-btn{background:#0f766e!important;border-color:#0f766e!important;color:#fff!important}.add-note-btn:hover{background:#115e59!important}.inquiry-subsection{margin-top:24px}.inquiry-subsection+.inquiry-subsection{border-top:1px solid #e7edf4;padding-top:26px}.inquiry-subsection-title{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:4px}.inquiry-subsection-title>div:first-child{display:flex;align-items:center;gap:12px}.inquiry-subsection-title h3{margin:0 0 3px;font-size:18px;color:#0f172a}.inquiry-subsection-title p{margin:0;color:#718096;font-size:12px}.subsection-icon{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;font-weight:900}.subsection-icon.note{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.inquiry-note-search{width:min(320px,100%)}.inquiry-note-search input{width:100%;height:42px;border:1px solid #dbe3ef;border-radius:12px;padding:0 13px;background:#fff;outline:none}.inquiry-note-search input:focus{border-color:#0f766e;box-shadow:0 0 0 3px rgba(15,118,110,.1)}.inquiry-note-list{display:grid;gap:12px;margin-top:16px}.inquiry-note-row{padding:18px 19px;border:1px solid #dce5ec;border-left:4px solid #0f766e;border-radius:14px;background:linear-gradient(135deg,#fff,#fbfefd);box-shadow:0 5px 18px rgba(15,23,42,.035)}.inquiry-note-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.inquiry-note-top>div:first-child{display:flex;align-items:center;gap:9px;min-width:0}.inquiry-note-top b{font-size:15px;color:#0f172a}.note-icon{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:#d1fae5;color:#047857;font-weight:900}.inquiry-note-actions{display:flex;gap:7px}.inquiry-note-body{margin:13px 0 15px;color:#334155;font-size:14px;line-height:1.65;white-space:normal;overflow-wrap:anywhere}.inquiry-note-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:11px;border-top:1px solid #edf2f6;color:#748196;font-size:11px}.note-edited{font-style:italic}.note-empty{margin-top:16px}.inquiry-note-modal{width:min(720px,94vw)}.inquiry-note-modal label{display:block;font-size:12px;font-weight:850;color:#334155;margin:15px 0 7px}.inquiry-note-modal input,.inquiry-note-modal textarea{width:100%;border:1px solid #dbe3ef;border-radius:12px;padding:11px 13px;background:#fff;color:#0f172a;outline:none}.inquiry-note-modal input:focus,.inquiry-note-modal textarea:focus{border-color:#0f766e;box-shadow:0 0 0 3px rgba(15,118,110,.1)}.inquiry-note-modal textarea{height:270px;min-height:180px;resize:vertical;font:inherit;line-height:1.55}.note-char-count{text-align:right;color:#8491a2;font-size:11px;margin-top:6px}@media(max-width:900px){.inquiry-primary-actions{width:100%;justify-content:stretch}.inquiry-primary-actions .btn{flex:1}.inquiry-subsection-title{align-items:stretch;flex-direction:column}.inquiry-note-search{width:100%;max-width:none}.inquiry-note-top,.inquiry-note-meta{align-items:flex-start;flex-direction:column}}

.case-row-action{gap:8px;align-items:center}.case-delete-btn{padding:10px 13px;border-radius:12px;white-space:nowrap;box-shadow:none!important}.case-delete-btn:hover{transform:none!important}
@media(max-width:760px){.case-row-action{display:grid;grid-template-columns:1fr 1fr}.case-row-action .btn{width:100%}}
