:root{--navy:#17324d;--blue:#1f6feb;--bg:#f5f7fb;--card:#fff;--text:#17212b;--muted:#687585;--border:#e3e8ef;--shadow:0 6px 22px rgba(20,38,63,.07)}*{box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer}.top{height:66px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:10px;font-weight:750;color:var(--navy);font-size:20px}.headerlogo{display:block;width:145px;height:auto;max-height:34px}.brandcrm{font-size:18px;font-weight:750;color:var(--navy);padding-left:2px;border-left:1px solid #d9e0e8;margin-left:2px;padding-left:10px}.user{display:flex;align-items:center;gap:12px;font-size:13px}.avatar{width:34px;height:34px;border-radius:50%;background:#e8eef7;display:grid;place-items:center;font-weight:700;color:var(--navy)}.layout{display:flex;min-height:calc(100vh - 66px)}.side{width:220px;background:var(--navy);color:#dbe7f4;padding:20px 12px}.nav{display:flex;flex-direction:column;gap:5px}.nav button{border:0;background:transparent;color:#dbe7f4;text-align:left;padding:11px 14px;border-radius:8px}.nav button:hover,.nav button.active{background:rgba(255,255,255,.11);color:#fff}.main{flex:1;padding:30px;max-width:1500px}.pagehead{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.pagehead h1{margin:0;font-size:25px}.sub{color:var(--muted);font-size:13px;margin-top:5px}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);padding:22px}.grid{display:grid;gap:18px}.grid4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid2{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{padding:20px}.metric .label{font-size:13px;color:var(--muted)}.metric .value{font-size:29px;font-weight:750;margin-top:8px}.btn{border:1px solid var(--border);background:#fff;border-radius:8px;padding:9px 14px}.btn.primary{background:var(--blue);border-color:var(--blue);color:#fff}.btn.danger{color:#b42318}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12px;font-weight:650;color:#4c5a68}.field input,.field select,.field textarea{border:1px solid #d5dce5;border-radius:8px;padding:10px 11px;background:#fff;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:#6da2ea;box-shadow:0 0 0 3px rgba(31,111,235,.1)}.field textarea{min-height:100px;resize:vertical}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.full{grid-column:1/-1}.tablewrap{overflow:auto;border:1px solid var(--border);border-radius:10px}.table{width:100%;border-collapse:collapse;background:#fff}.table th,.table td{padding:12px 13px;border-bottom:1px solid var(--border);text-align:left;font-size:13px;vertical-align:top}.table th{background:#f8fafc;color:#536170;font-size:12px}.table tr:last-child td{border-bottom:0}.status{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.dot{width:9px;height:9px;border-radius:50%;display:inline-block}.red{background:#d92d20}.orange{background:#f79009}.blue{background:#2e90fa}.green{background:#12b76a}.grey{background:#98a2b3}.purple{background:#7f56d9}.yellow{background:#eaaa08}.empty{padding:35px;text-align:center;color:var(--muted)}.login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#f5f8fc,#eaf0f8)}.loginbox{width:min(440px,92vw);background:#fff;border:1px solid var(--border);border-radius:16px;padding:38px;box-shadow:var(--shadow);text-align:center}.loginbox .brandmark{margin:0 auto 14px}.loginlogo{display:block;width:min(360px,88%);height:auto;margin:0 auto 10px}.logincrm{font-size:22px;font-weight:750;color:var(--navy);letter-spacing:.2px;margin:2px 0 14px}.loginbox h1{margin:0 0 8px}.loginbox p{color:var(--muted);font-size:14px;line-height:1.5}.modalback{position:fixed;inset:0;background:rgba(15,23,42,.42);display:grid;place-items:center;z-index:50;padding:20px}.modal{width:min(760px,96vw);max-height:90vh;overflow:auto;background:#fff;border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.2)}.modalhead{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid var(--border)}.modalhead h2{margin:0;font-size:18px}.modalbody{padding:22px}.x{border:0;background:transparent;font-size:24px;color:#667085}.notice{padding:11px 13px;border-radius:8px;background:#f0f6ff;color:#245b9b;font-size:13px}.error{background:#fff1f0;color:#a5281e}.success{background:#ecfdf3;color:#067647}.spinner{display:inline-block;width:15px;height:15px;border:2px solid #ccd6e2;border-top-color:#1f6feb;border-radius:50%;animation:spin .7s linear infinite;vertical-align:-2px}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1000px){.side{width:190px}.grid4{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.side{display:none}.main{padding:18px}.grid4,.grid2,.formgrid{grid-template-columns:1fr}.top{padding:0 15px}.user span{display:none}}
.modalfoot{padding:16px 22px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:9px}
.c360hero{display:flex;justify-content:space-between;align-items:center;padding:24px 26px}.c360eyebrow{font-size:11px;font-weight:750;letter-spacing:.08em;color:var(--blue);margin-bottom:5px}.c360hero h2{margin:0;font-size:25px}.c360meta{color:var(--muted);font-size:13px;margin-top:6px}.c360actions{display:flex;gap:8px}.sectionhead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.sectionhead h3{margin:0}.count{display:inline-grid;place-items:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:#eef4fb;color:var(--navy);font-size:12px;font-weight:750}.c360info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.c360info div{display:flex;flex-direction:column;gap:4px}.c360info span,.c360snapshot span{font-size:11px;color:var(--muted)}.c360info strong{font-size:14px}.c360snapshot{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.c360snapshot div{border:1px solid var(--border);border-radius:10px;padding:14px 10px;text-align:center}.c360snapshot b{display:block;font-size:24px}.mini-list{display:flex;flex-direction:column}.mini-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid var(--border)}.mini-row:last-child{border-bottom:0}.mini-row strong{font-size:13px}.timeline{position:relative;margin:8px 0 0 6px;padding-left:24px}.timeline:before{content:"";position:absolute;left:4px;top:8px;bottom:8px;width:2px;background:#dce5ef}.timeline-item{position:relative;padding:0 0 20px 14px}.timeline-item:last-child{padding-bottom:4px}.timeline-dot{position:absolute;left:-2px;top:5px;width:12px;height:12px;border-radius:50%;background:var(--blue);border:3px solid #e8f1fb}.timeline-content{padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:#fbfcfe}.timeline-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px}.timeline-type{font-size:11px;font-weight:750;color:var(--blue);text-transform:uppercase;letter-spacing:.03em}@media(max-width:700px){.c360hero{align-items:flex-start;gap:15px;flex-direction:column}.c360info,.c360snapshot{grid-template-columns:1fr 1fr}.timeline-top{align-items:flex-start;flex-direction:column;gap:2px}}
.pipeline{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,1fr);gap:14px;overflow-x:auto;padding-bottom:6px}.pipeline-col{background:#f7f9fc;border:1px solid #e1e7ef;border-radius:10px;min-height:180px;padding:10px}.pipeline-head{display:flex;justify-content:space-between;align-items:center;padding:5px 4px 10px;font-weight:700}.pipeline-head b{font-size:12px;background:#e5ebf3;border-radius:999px;padding:3px 8px}.opp-card{background:#fff;border:1px solid #e1e6ed;border-radius:9px;padding:12px;margin-bottom:10px;box-shadow:0 1px 2px rgba(20,40,60,.04)}.opp-card-top{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.opp-card-top strong{font-size:14px;line-height:1.35}.opp-card .details{padding:5px 8px;font-size:11px}.opp-meta{display:flex;justify-content:space-between;margin-top:8px;font-size:12px}.opp-meta span{color:#6b7785}.opp-stage{display:inline-block;margin-top:9px;padding:4px 7px;border-radius:5px;background:#eef5ff;color:#245f9f;font-size:11px;font-weight:600}.pipeline-empty{color:#8b96a3;text-align:center;padding:28px 8px;font-size:12px}
.dash-top{align-items:stretch}.dash-kpis .metric{min-height:124px}.kpi-note{font-size:11px;color:var(--muted);margin-top:7px}.trend{display:flex;flex-direction:column;gap:13px;margin-top:8px}.trend-row{display:grid;grid-template-columns:42px 1fr 28px;align-items:center;gap:10px;font-size:12px}.trendbar{height:10px;background:#edf1f6;border-radius:99px;overflow:hidden}.trendbar i{display:block;height:100%;background:#2e90fa;border-radius:99px;min-width:0}.pipeline{min-height:250px}.pipeline-col{min-height:220px}.opp-card{cursor:default}.opp-card:hover{border-color:#c8d8eb;box-shadow:0 3px 10px rgba(20,40,60,.07)}
.dash-filters{margin-bottom:18px;padding:18px 20px}.dash-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.dash-filter-grid .field select{width:100%}.dash-shortcuts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:18px}.shortcut{border:1px solid var(--border);background:#fff;border-radius:10px;padding:12px 13px;display:flex;align-items:center;gap:10px;text-align:left;box-shadow:0 2px 8px rgba(20,38,63,.04);transition:.15s}.shortcut:hover{border-color:#b9cde4;transform:translateY(-1px);box-shadow:0 4px 14px rgba(20,38,63,.08)}.shortcut-icon{width:30px;height:30px;border-radius:8px;background:#eef4fb;color:var(--blue);display:grid;place-items:center;font-size:18px;font-weight:700;flex:0 0 auto}.shortcut b{display:block;font-size:12px}.shortcut small{display:block;color:var(--muted);font-size:10px;margin-top:3px;line-height:1.25}.recent-scroll{max-height:430px;overflow:auto;padding-right:4px}.dash-more{text-align:center;margin-top:10px}.recent-scroll .mini-row{padding:10px 0}@media(max-width:1100px){.dash-shortcuts{grid-template-columns:repeat(3,1fr)}.dash-filter-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.dash-shortcuts,.dash-filter-grid{grid-template-columns:1fr}}
/* V49 opportunity experience */
.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:750;color:#667085;margin-bottom:4px}
.opportunity-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:4px 0 20px;border-bottom:1px solid var(--border);margin-bottom:20px}
.opportunity-hero h2{margin:0;font-size:25px;color:var(--navy)}
.hero-meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:9px;color:var(--muted);font-size:13px}
.hero-stage{background:#eaf3ff;color:#1858a0;border:1px solid #cfe2fb;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:750;white-space:nowrap}
.detail-section{margin-top:4px}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px 28px;border-top:1px solid var(--border)}
.detail-item{padding:13px 0;border-bottom:1px solid var(--border);min-width:0}.detail-item span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#7a8795;margin-bottom:4px}.detail-item strong{display:block;font-size:13px;color:#253242;word-break:break-word}
.opportunity-process{margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}
.mini-stage-track{display:flex;align-items:flex-start;gap:0;margin-top:18px;overflow-x:auto;padding-bottom:6px}.mini-stage{position:relative;flex:1;min-width:105px;text-align:center;color:#98a2b3;font-size:11px}.mini-stage:not(:last-child)::after{content:"";position:absolute;top:12px;left:55%;right:-45%;height:2px;background:#e5e7eb}.mini-stage span{position:relative;z-index:1;width:25px;height:25px;margin:0 auto 7px;border-radius:50%;display:grid;place-items:center;background:#eef1f5;color:#7a8795;font-size:11px;font-weight:750;border:2px solid #fff;box-shadow:0 0 0 1px #dfe4eb}.mini-stage label{display:block;white-space:nowrap}.mini-stage.done{color:#13795b}.mini-stage.done span{background:#12b76a;color:#fff;box-shadow:none}.mini-stage.done:not(:last-child)::after{background:#7bd7b1}.mini-stage.current{color:#1858a0;font-weight:750}.mini-stage.current span{background:#1f6feb;color:#fff;box-shadow:0 0 0 3px #dcecff}.mini-stage.current:not(:last-child)::after{background:#bcd6f7}
.stage-history-block{margin-top:22px;padding-top:20px;border-top:1px solid var(--border)}
.stage-process{padding:4px 0}.stage-process-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.stage-current{font-size:24px;font-weight:800;color:var(--navy)}.stage-track{display:flex;align-items:flex-start;gap:0;margin:26px 0 18px;overflow-x:auto;padding:4px 2px 12px}.stage-step{position:relative;flex:1;min-width:105px;border:0;background:transparent;color:#98a2b3;padding:0 4px;text-align:center}.stage-step:not(:last-child)::after{content:"";position:absolute;top:13px;left:55%;right:-45%;height:2px;background:#e5e7eb}.stage-step-dot{position:relative;z-index:2;width:27px;height:27px;border-radius:50%;display:grid;place-items:center;margin:0 auto 8px;background:#eef1f5;color:#7a8795;font-size:11px;font-weight:800;box-shadow:0 0 0 1px #dfe4eb}.stage-step span:last-child{font-size:11px;font-weight:650;white-space:nowrap}.stage-step.done{color:#13795b}.stage-step.done .stage-step-dot{background:#12b76a;color:#fff;box-shadow:none}.stage-step.done:not(:last-child)::after{background:#7bd7b1}.stage-step.current{color:#1858a0}.stage-step.current .stage-step-dot{background:#1f6feb;color:#fff;box-shadow:0 0 0 3px #dcecff}.stage-step.current:not(:last-child)::after{background:#bcd6f7}.stage-step.upcoming:hover,.stage-step.selected{color:#1858a0}.stage-step.selected .stage-step-dot{box-shadow:0 0 0 3px #dcecff;background:#dcecff;color:#1858a0}.stage-help{font-size:12px;color:var(--muted);background:#f8fafc;border:1px solid var(--border);border-radius:8px;padding:11px 13px;line-height:1.5}.initial-stage{border:1px solid #dbe7f5;background:#f8fbff;padding:14px;border-radius:9px}
@media(max-width:700px){.detail-grid{grid-template-columns:1fr}.opportunity-hero{flex-direction:column}.mini-stage{min-width:92px}.stage-process-head{align-items:flex-start;flex-direction:column}}

/* V50 opportunity detail refinement */
.opportunity-hero{background:linear-gradient(135deg,#f7faff,#eef5ff);border:1px solid #dbe7f5;border-radius:14px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}
.opportunity-hero h2{margin:3px 0 8px;font-size:24px}
.opportunity-hero .hero-meta{display:flex;gap:18px;flex-wrap:wrap;color:#526174;font-size:13px}
.hero-stage{background:#e7f0ff;color:#1557a6;border:1px solid #c8dcf8;border-radius:999px;padding:8px 14px;font-weight:700;white-space:nowrap}
.detail-section{margin-top:10px}
.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}
.detail-item{padding:11px 0;border-bottom:1px solid #edf1f5}
.detail-item span{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#738197}
.detail-item strong{display:block;margin-top:4px;font-size:14px;color:#172235;font-weight:600}
.opportunity-process{margin-top:20px;border-top:1px solid #e6ebf1;padding-top:18px}
.stage-history-block{margin-top:20px;border-top:1px solid #e6ebf1;padding-top:18px}
@media(max-width:720px){.detail-grid{grid-template-columns:1fr}.opportunity-hero{align-items:flex-start;flex-direction:column}.hero-stage{align-self:flex-start}}

.fu-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:2px 0 12px;padding:3px;background:#f7f9fc;border:1px solid var(--border);border-radius:9px;width:max-content;max-width:100%}.fu-tab{border:0;background:transparent;color:#667085;padding:7px 10px;border-radius:7px;font-size:12px;font-weight:650;white-space:nowrap}.fu-tab:hover{color:var(--navy);background:#eef4fb}.fu-tab.active{background:#fff;color:var(--blue);box-shadow:0 1px 3px rgba(20,38,63,.08);border:1px solid #dce6f2}.fu-tab span{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;margin-left:4px;border-radius:999px;background:#eef2f6;font-size:10px}.fu-tab.active span{background:#e8f1fb;color:var(--blue)}@media(max-width:700px){.fu-tabs{width:100%;overflow-x:auto}.fu-tab{flex:1}}
.role-chip{font-size:11px;font-weight:700;color:#24415f;background:#edf4fb;border:1px solid #d8e6f3;border-radius:999px;padding:4px 8px;white-space:nowrap}.role-list{display:grid;gap:10px}.role-list>div{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border:1px solid #e4eaf0;border-radius:8px}.role-list span{font-size:12px;color:#6b7785}

.activity-clickable{cursor:pointer;transition:background .15s ease,transform .15s ease}.activity-clickable:hover{background:#f8fbff}.activity-clickable:focus{outline:2px solid #6da2ea;outline-offset:-2px}.dash-more{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:10px}.activity-detail-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:20px;border:1px solid var(--border);background:#f8fafc;border-radius:12px}.activity-eyebrow{font-size:11px;font-weight:750;color:#5b6b7d;letter-spacing:.08em;text-transform:uppercase}.activity-detail-hero h2{margin:5px 0 6px;font-size:22px}.activity-context{color:#5f6f80;font-size:13px}.activity-hero-status{padding-top:4px}.activity-section{margin-top:18px;border:1px solid var(--border);border-radius:12px;padding:18px}.activity-section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.activity-section-head h3{margin:0;font-size:15px}.activity-kv-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 22px}.activity-kv-grid>div{display:flex;flex-direction:column;gap:4px}.activity-kv-grid span,.activity-text-card span{font-size:11px;font-weight:700;color:#667789;text-transform:uppercase;letter-spacing:.04em}.activity-kv-grid strong{font-size:13px;font-weight:650}.activity-text-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.activity-text-card{border:1px solid var(--border);border-radius:10px;padding:13px;background:#fcfdff}.activity-text-card p{margin:7px 0 0;font-size:13px;line-height:1.55;white-space:pre-wrap}.history-box{white-space:pre-wrap;line-height:1.6;font-size:13px;background:#f8fafc;border:1px solid var(--border);border-radius:10px;padding:14px}.compact-empty{padding:18px}
@media(max-width:700px){.activity-detail-hero,.activity-text-grid{grid-template-columns:1fr;display:grid}.activity-kv-grid{grid-template-columns:1fr}}
/* V56 Customer 360 refinement */
.c360-selector-card{padding:18px 20px}.c360-selector-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:16px;align-items:end}.c360-tabs{display:flex;gap:4px;flex-wrap:wrap;margin-top:18px;padding:4px;background:#f7f9fc;border:1px solid var(--border);border-radius:10px}.c360-tab{border:0;background:transparent;color:#64748b;padding:9px 13px;border-radius:7px;font-size:12px;font-weight:700}.c360-tab:hover{background:#eef4fb;color:var(--navy)}.c360-tab.active{background:#fff;color:var(--blue);box-shadow:0 1px 4px rgba(20,38,63,.09);border:1px solid #dce6f2}.c360hero{padding:24px 26px}.c360hero .c360actions{flex-wrap:wrap;justify-content:flex-end}.c360-snapshot-wide{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.c360-snapshot-wide div{border:1px solid var(--border);border-radius:10px;padding:16px 10px;text-align:center;background:#fbfcfe}.c360-snapshot-wide b{display:block;font-size:25px;color:var(--navy);margin-bottom:4px}.c360-snapshot-wide span{font-size:11px;color:var(--muted)}.c360hero .btn{white-space:nowrap}.c360-kpis .metric{min-height:112px}.c360-tabs + div .tablewrap{max-height:560px;overflow:auto}@media(max-width:900px){.c360-selector-grid{grid-template-columns:1fr}.c360hero .c360actions{justify-content:flex-start}.c360-snapshot-wide{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.c360-tabs{width:100%;overflow-x:auto;flex-wrap:nowrap}.c360-tab{white-space:nowrap}.c360-snapshot-wide{grid-template-columns:1fr 1fr}}

.context-banner{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border:1px solid #dbe7f5;background:#f5f9ff;border-radius:10px;margin-bottom:16px}.context-icon{color:var(--blue);font-size:14px;line-height:20px}.field select:disabled{background:#f5f7fa;color:#44566c;cursor:not-allowed;opacity:1}

/* V58 business-focused Customer and Contact details */
.record-hero{background:linear-gradient(135deg,#f8fbff,#f2f7fd);border:1px solid #dbe7f5;border-radius:14px;padding:20px 22px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.record-hero h2{margin:4px 0 8px;font-size:24px;color:var(--navy)}.record-hero .hero-meta{display:flex;gap:18px;flex-wrap:wrap;color:#5d6c7d;font-size:13px}.record-type{background:#fff;border:1px solid #d9e2ed;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:700;color:#35516e;white-space:nowrap}.master-rel-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:20px}.rel-card{border:1px solid var(--border);border-radius:10px;background:#fbfcfe;padding:14px;text-align:center}.rel-card span{display:block;font-size:11px;color:var(--muted);margin-bottom:4px}.rel-card b{font-size:21px;color:var(--navy)}.related-section{margin-top:20px;padding-top:18px;border-top:1px solid var(--border)}.related-list{display:flex;flex-direction:column}.related-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid #edf1f5}.related-row:last-child{border-bottom:0}.related-row strong{font-size:13px}.related-row .btn{padding:6px 9px;font-size:11px;white-space:nowrap}.modal:has(.master-rel-summary),.modal:has(.record-hero){width:min(900px,96vw)}
@media(max-width:720px){.master-rel-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.record-hero{align-items:flex-start;flex-direction:column}.record-type{align-self:flex-start}}

/* V59 sticky quick actions for long detail modals */
.detail-actionbar{position:sticky;top:0;z-index:8;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 18px;background:rgba(255,255,255,.97);backdrop-filter:blur(6px);border-bottom:1px solid var(--border);box-shadow:0 2px 6px rgba(20,38,63,.06)}
.detail-action-label{font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.06em;color:#667789;white-space:nowrap}
.detail-action-buttons{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.detail-action-buttons .btn{padding:7px 10px;font-size:12px;white-space:nowrap}
.detail-action-buttons .action-close{margin-left:2px}
@media(max-width:720px){.detail-actionbar{align-items:flex-start;flex-direction:column;padding:10px 14px}.detail-action-buttons{width:100%;justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.detail-action-buttons .btn{flex:0 0 auto}}


.detail-owner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border:1px solid #dfe6ee;background:#f8fafc;border-radius:10px;margin:12px 0 18px}.detail-owner span{color:#6b7785;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.detail-owner strong{font-size:13px}.security-kv{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.security-kv div{padding:10px 12px;background:#f7f9fc;border:1px solid #e1e7ee;border-radius:8px}.security-kv span{display:block;font-size:11px;color:#7a8795;margin-bottom:3px}.security-kv strong{font-size:13px}.security-check{display:grid;gap:10px}.security-check>div{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:10px;padding:11px 12px;border:1px solid #e1e7ee;border-radius:9px;background:#fbfcfe}.security-check b{font-size:12px;color:#556270}.role-chip{white-space:nowrap}.
/* V62 reporting + operational UX */
.report-filters{padding:20px}.report-filter-grid{display:grid;grid-template-columns:1fr 1fr 1.2fr 1.5fr 1fr;gap:14px;align-items:end}.report-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}.report-tab{border:1px solid var(--border);background:#f7f9fc;color:#526174;border-radius:8px;padding:8px 12px;font-size:12px;font-weight:700}.report-tab.active{background:#fff;color:var(--blue);border-color:#d6e3f1;box-shadow:0 1px 4px rgba(20,38,63,.08)}.report-spacer{flex:1}.report-updated{font-size:12px;color:var(--muted)}.report-title-row{display:flex;justify-content:space-between;align-items:end;margin-bottom:2px}.report-title-row h2{margin:0;font-size:20px}.report-kpis .metric{min-height:118px}.report-card{overflow:hidden}.report-stage-row{padding:11px 0;border-bottom:1px solid #edf1f5}.report-stage-row:last-child{border-bottom:0}.report-stage-head{display:flex;justify-content:space-between;gap:14px;font-size:13px;margin-bottom:7px}.report-stage-head span{color:var(--muted);font-size:12px}.report-stage-bar{height:9px;background:#eef2f6;border-radius:99px;overflow:hidden}.report-stage-bar i{display:block;height:100%;background:#2e90fa;border-radius:99px}.scope-pill{padding:9px 11px;background:#f7f9fc;border:1px solid var(--border);border-radius:8px;color:#5d6b79;font-size:12px;white-space:nowrap}.report-card .tablewrap{max-height:520px;overflow:auto}.report-card .table th{position:sticky;top:0;z-index:1}@media(max-width:1000px){.report-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.report-filter-grid{grid-template-columns:1fr}.report-spacer{display:none}.report-actions{align-items:stretch}.report-tab,.report-actions .btn{flex:1}.report-stage-head{align-items:flex-start;flex-direction:column;gap:3px}}
@media print{.top,.side,.pagehead .toolbar,.report-filters,.report-actions{display:none!important}.main{padding:0;max-width:none}.card{box-shadow:none;border:1px solid #ddd}.report-card .tablewrap{max-height:none;overflow:visible}.report-card .table th{position:static}.report-kpis{grid-template-columns:repeat(4,1fr)!important}}


/* V2 workspace/navigation/search/quality */
.top-actions{display:flex;align-items:center;gap:12px}.global-search{position:relative;width:min(390px,34vw)}.global-search>span{position:absolute;left:11px;top:9px;color:#6b7785}.global-search input{width:100%;border:1px solid var(--border);border-radius:9px;padding:9px 12px 9px 31px;background:#fbfcfe;outline:none}.global-search input:focus{background:#fff;border-color:#6da2ea;box-shadow:0 0 0 3px rgba(31,111,235,.1)}.search-drop{display:none;position:absolute;left:0;right:0;top:44px;background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 16px 40px rgba(20,38,63,.16);z-index:100;max-height:520px;overflow:auto;padding:7px}.search-group{padding:5px}.search-group-title{font-size:11px;font-weight:750;color:#667789;text-transform:uppercase;letter-spacing:.05em;padding:7px 8px}.search-result{display:flex;flex-direction:column;gap:2px;width:100%;border:0;background:#fff;text-align:left;padding:9px 8px;border-radius:7px}.search-result:hover{background:#f5f8fc}.search-result span{font-size:11px;color:var(--muted)}.search-empty{padding:18px;text-align:center;color:var(--muted);font-size:13px}.nav button{display:flex;align-items:center;gap:9px}.nav-icon{width:17px;text-align:center;opacity:.8}.quick-add-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quick-add-card{border:1px solid var(--border);background:#fff;border-radius:10px;padding:16px;text-align:left;display:flex;flex-direction:column;gap:5px}.quick-add-card:hover{border-color:#9dbbe0;background:#f8fbff}.quick-add-card span{font-size:12px;color:var(--muted)}.search-large{display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:10px;padding:3px 14px;background:#fbfcfe}.search-large span{font-size:20px;color:#667789}.search-large input{border:0;outline:0;background:transparent;width:100%;padding:12px 0;font-size:16px}.search-results-section{margin-bottom:20px}.kpi-note{font-size:11px;color:var(--muted);margin-top:5px}.dq-open{white-space:nowrap}
@media(max-width:1100px){.global-search{width:280px}.top-actions{gap:7px}.quick-add{padding-left:10px;padding-right:10px}}@media(max-width:800px){.global-search{display:none}.top-actions{flex:1;justify-content:flex-end}.quick-add-grid{grid-template-columns:1fr}.user>span:not(.role-chip){display:none}.dash-kpis{grid-template-columns:repeat(2,1fr)!important}}

/* V2.1 drill-down UX */
.clickable-kpi{cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}
.clickable-kpi:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(20,38,63,.10);border-color:#b9cfe8}
.dash-opp-card{cursor:pointer}
.dash-opp-card .opp-card-top{align-items:center}
.dash-opp-card .opp-card-top .btn{padding:4px 8px;font-size:11px}
.crm-link{color:#1769aa;text-decoration:none;font-weight:600}
.crm-link:hover{text-decoration:underline}

/* V2.1.4 — uniform form controls across CRM */
.field input,
.field select,
.toolbar input,
.toolbar select,
.formgrid input,
.formgrid select {
  box-sizing: border-box;
  height: 40px;
  min-height: 40px;
}
.field textarea,
.formgrid textarea {
  box-sizing: border-box;
}
.btn {
  min-height: 40px;
  box-sizing: border-box;
}

.required-mark{color:#b42318;font-weight:750}
.followup-trigger{display:inline-flex;align-items:center;justify-content:center;min-height:42px;font-weight:700;border-color:#cfd9e5;background:#f8fafc;color:#23415f}.followup-trigger.primary{background:#1f6feb;border-color:#1f6feb;color:#fff}.followup-trigger:hover{border-color:#9db6d2;background:#f1f6fc}.followup-trigger.primary:hover{background:#185dcc}
/* V2.1.21 Help & Guides */
.help-top{min-height:40px;font-weight:700;color:#23415f;background:#f8fafc}.help-search-card{margin-bottom:18px}.help-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.help-card{display:grid;grid-template-columns:42px 1fr 20px;gap:12px;align-items:center;text-align:left;border:1px solid var(--border);background:#fff;border-radius:12px;padding:16px;min-height:92px;cursor:pointer;transition:.12s ease}.help-card:hover{border-color:#a9c3df;box-shadow:0 5px 16px rgba(20,38,63,.08);transform:translateY(-1px)}.help-card-icon{width:38px;height:38px;border-radius:10px;background:#eef4fb;color:var(--navy);display:grid;place-items:center;font-size:18px}.help-card h3{margin:0 0 4px;font-size:14px}.help-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.help-card>span{font-size:24px;color:#91a0af}.help-detail{margin-top:18px}.help-detail h2{margin:0}.help-detail h3{margin-top:22px;margin-bottom:8px}.help-detail p,.help-detail li{font-size:13px;line-height:1.6;color:#4f5e6d}.help-detail ol,.help-detail ul{padding-left:22px}.help-detail .notice{margin-top:16px}.help-body{padding-bottom:30px}@media(max-width:800px){.help-grid{grid-template-columns:1fr}}

/* V2.1.24 editing-policy indicators */
.edit-state{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border-radius:6px;background:#ecfdf3;color:#067647;font-size:12px;white-space:nowrap}.edit-state.locked{background:#f2f4f7;color:#475467}.edit-state span{font-size:14px}.edit-state.locked{border:1px solid #d0d5dd}
/* V2.1.27 dashboard follow-up rows open the exact follow-up record. */
.dashboard-followup-clickable{cursor:pointer}
.dashboard-followup-clickable:hover{background:#f5f9ff}

/* V2.1.28 opportunity history and remarks */
.history-text{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.6;color:var(--text);background:#f8fafc;border:1px solid var(--border);border-radius:10px;padding:14px;margin:10px 0 0;max-height:360px;overflow:auto}.opportunity-comments .field textarea,.opportunity-stage-remarks .field textarea{width:100%}.opportunity-comments .btn{margin-top:8px}

/* V2.1.29: clickable product intelligence drill-downs */
.btn.linklike{background:transparent!important;border:0!important;padding:2px 0!important;color:#1769e0!important;font:inherit!important;text-align:left;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.btn.linklike:hover{color:#0d4ea6!important}
#productGroupSummary tbody tr{cursor:pointer}
#productGroupSummary tbody tr:hover{background:#f1f6ff}

/* V2.1.30: clear read-only follow-up audit history */
.history-timeline{display:flex;flex-direction:column;gap:9px;padding:4px 0}.history-entry{display:grid;grid-template-columns:12px minmax(0,1fr);gap:10px;align-items:start}.history-entry-dot{width:9px;height:9px;margin-top:6px;border-radius:50%;background:#2563eb;box-shadow:0 0 0 3px #e8f0ff}.history-entry-text{padding:10px 12px;background:#f8fafc;border:1px solid var(--border);border-radius:9px;font-size:13px;line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere}.comments-timeline .history-entry-dot{background:#15966a;box-shadow:0 0 0 3px #e5f7ef}.history-empty{padding:12px 14px;border:1px dashed var(--border);border-radius:9px;background:#fbfcfe;color:#788696;font-size:13px}.field .sub#fdcommenthint{margin-top:6px;font-size:12px}

/* Searchable related-activity picker: the backing selects must never be visible. */
.activity-picker select[hidden]{display:none!important;width:0!important;height:0!important;min-height:0!important;padding:0!important;border:0!important;visibility:hidden!important}#factSearch,#fdaidSearch{width:100%;}

/* V2.1.36 — fix native backing-select leakage; use custom searchable result panel */
.activity-picker{position:relative;display:flex;flex-direction:column;gap:8px;min-width:0}
.activity-picker>input[type=search]{width:100%;min-width:0;padding:12px 13px;border:1px solid #cfd8e5;border-radius:10px;background:#fff;color:var(--text);outline:none}
.activity-picker>input[type=search]:focus{border-color:#6da2ea;box-shadow:0 0 0 3px rgba(31,111,235,.1)}
.activity-selected{position:relative;border:1px solid #cfe0f6;background:#f5f9ff;border-radius:10px;padding:11px 12px;min-width:0;overflow-wrap:anywhere}
.activity-selected.empty-selection{border-style:dashed;background:#fbfcfe;border-color:#d9e1eb;color:var(--muted);font-size:13px}
.activity-selected-title{font-weight:700;font-size:13px;color:#1b365d;line-height:1.4;padding-right:82px}
.activity-selected-meta{font-size:12px;line-height:1.5;color:#5d6d81;margin-top:4px;overflow-wrap:anywhere}
.activity-clear{position:absolute;right:8px;top:8px;border:1px solid #d6e1ef;border-radius:7px;background:#fff;color:#475467;font-size:11px;padding:5px 7px}
.activity-clear:hover{background:#edf4ff;border-color:#b9d2f4}
.activity-results{position:absolute;z-index:120;left:0;right:0;top:46px;max-height:310px;overflow:auto;background:#fff;border:1px solid #d6dfeb;border-radius:10px;box-shadow:0 14px 32px rgba(15,35,65,.18);padding:5px}
.activity-result{display:flex;align-items:flex-start;gap:10px;width:100%;border:0;border-radius:8px;background:#fff;text-align:left;padding:10px;min-width:0;color:var(--text)}
.activity-result:hover,.activity-result:focus-visible{background:#f2f7ff;outline:none}
.activity-result-icon{flex:0 0 30px;width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:#eaf2ff;color:#1f5fbf;font-weight:750;font-size:12px}
.activity-result-content{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.activity-result-content strong{font-size:13px;line-height:1.4;overflow-wrap:anywhere}
.activity-result-content span,.activity-result-content small{font-size:11px;line-height:1.45;color:#5f6f82;overflow-wrap:anywhere}
.activity-result-check{color:#16845b;font-weight:800;padding:4px}
.activity-none{border-top:1px solid var(--border);border-radius:0 0 7px 7px;color:#5f6f82;font-size:12px}
.activity-no-results{padding:16px 12px;color:var(--muted);font-size:12px;text-align:center}
@media(max-width:700px){.activity-results{max-height:240px}.activity-selected-title{padding-right:0}.activity-clear{position:static;margin-top:8px}}

/* V2.1.36: ensure HTML hidden state wins over broad form-control rules. */
[hidden]{display:none!important}
.activity-picker .activity-results[hidden]{display:none!important}


/* V2.1.37 — more scannable, colour-coded activity and outcome history */
.recent-activity-row{display:grid;grid-template-columns:36px minmax(0,1fr) minmax(105px,auto);gap:12px;align-items:start;padding:13px 8px!important;border-bottom:1px solid #e8edf4;border-radius:9px;transition:background .15s ease,box-shadow .15s ease}.recent-activity-row:hover{background:#f7faff;box-shadow:inset 3px 0 #2e90fa}.recent-activity-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;font-size:17px;font-weight:750;flex:0 0 auto}.activity-icon-call{background:#e8f1ff;color:#1d4ed8}.activity-icon-email{background:#e6f6ff;color:#0369a1}.activity-icon-meeting{background:#f0eaff;color:#6941c6}.activity-icon-message{background:#e5f8ef;color:#087443}.activity-icon-other{background:#fff4df;color:#9a5b00}.recent-activity-main{min-width:0}.recent-activity-main>strong{display:block;font-size:13px;line-height:1.4}.recent-context{line-height:1.45;overflow-wrap:anywhere}.recent-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.activity-type-chip{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;background:#edf4ff;color:#2457a6;font-size:11px;font-weight:700}.activity-outcome{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;background:#f3f5f8;color:#536170;font-size:11px}.recent-activity-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right}.recent-date{font-size:12px;font-weight:700;color:#344054;white-space:nowrap}.recent-open-hint{font-size:10px;color:#7b8794;opacity:0}.recent-activity-row:hover .recent-open-hint,.recent-activity-row:focus .recent-open-hint{opacity:1}.history-kind{display:inline-block;margin-bottom:5px;padding:3px 7px;border-radius:999px;background:#edf4ff;color:#2457a6;font-size:10px;font-weight:750;letter-spacing:.02em;text-transform:uppercase}.history-complete .history-entry-dot{background:#15966a;box-shadow:0 0 0 3px #e5f7ef}.history-complete .history-kind{background:#e5f7ef;color:#087443}.history-cancelled .history-entry-dot{background:#d92d20;box-shadow:0 0 0 3px #fee4e2}.history-cancelled .history-kind{background:#fee4e2;color:#b42318}.history-progress .history-entry-dot{background:#d97706;box-shadow:0 0 0 3px #fff0d5}.history-progress .history-kind{background:#fff0d5;color:#9a5b00}.history-comment .history-entry-dot{background:#2563eb;box-shadow:0 0 0 3px #e8f0ff}.history-entry-text>div{white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:700px){.recent-activity-row{grid-template-columns:32px minmax(0,1fr);gap:9px}.recent-activity-icon{width:30px;height:30px}.recent-activity-right{grid-column:2;align-items:flex-start;text-align:left;flex-direction:row;flex-wrap:wrap;align-items:center}.recent-open-hint{display:none}}

/* V2.1.38: alphabetical company index and director-report refinements */
.az-index{display:flex;flex-wrap:wrap;gap:5px;margin:14px 0 4px;padding:10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px}
.az-letter{min-width:32px;padding:6px 8px;border:1px solid #dbe3ee;border-radius:7px;background:#fff;color:#334155;font-weight:650;cursor:pointer}
.az-letter:hover,.az-letter.active{background:#2563eb;border-color:#2563eb;color:#fff}
.report-card .value,.report-kpis .value{font-variant-numeric:tabular-nums}
@media(max-width:700px){.az-index{gap:4px}.az-letter{min-width:29px;padding:5px 6px}}
.history-linked .history-kind{background:#eef2f7;color:#475569}
.history-rescheduled .history-kind{background:#f3e8ff;color:#7e22ce}
.history-progress .history-kind{background:#fff7ed;color:#b45309}
.history-cancelled .history-kind{background:#fef2f2;color:#b91c1c}

/* Director Reports layout: compact KPI strip and responsive executive grid */
#directorReportBody>.report-kpis{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
#directorReportBody>.report-kpis .metric{min-height:92px;padding:14px}
#directorReportBody>.report-kpis .metric .value{font-size:25px;margin-top:5px}
#directorReportBody .report-card{padding:18px}
@media(max-width:1200px){#directorReportBody>.report-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){#directorReportBody>.report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
.win-factor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.win-factor{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line,#e5e7eb);border-radius:10px;padding:12px;min-width:0}.win-factor select{min-width:104px;max-width:120px}.win-calc{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.win-calc>div{background:var(--surface-2,#f5f7fa);border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:5px}.win-calc span{font-size:12px;color:var(--muted,#667085)}.win-calc b{font-size:20px}.win-assessment .history-text{max-height:180px;overflow:auto}@media(max-width:760px){.win-factor-grid{grid-template-columns:1fr}.win-calc{grid-template-columns:1fr}}
