:root{--cx-ink:#0d1b35;--cx-muted:#65758b;--cx-line:#dfe7ef;--cx-blue:#155eef;--cx-teal:#008f8c;--cx-violet:#6d4aff;--cx-bg:#f5f8fb;--cx-green:#12834b;--cx-amber:#b86b00;--cx-red:#c92a3d}
/* Local proto-3d.css replaces retired avatar images after mount. Assistant layout remains unchanged. */
/* P.R.O.T.O. expressive companion */
.proto-companion{bottom:22px;position:fixed;right:22px;z-index:10038;touch-action:none}.proto-launcher{align-items:center;background:linear-gradient(135deg,#071a38 0%,#075f67 72%,#00a89f 100%);border:1px solid rgba(123,244,231,.56);border-radius:999px;box-shadow:0 18px 52px rgba(2,25,52,.34),inset 0 1px 0 rgba(255,255,255,.18);color:#fff;cursor:grab;display:flex;gap:10px;min-height:66px;padding:7px 15px 7px 7px;position:relative;user-select:none}.proto-launcher:active,.proto-companion.is-dragging .proto-launcher{cursor:grabbing}.proto-launcher:focus-visible{outline:3px solid #7cf4e7;outline-offset:4px}.proto-orbit{animation:proto-orbit 7s linear infinite;border:1px solid rgba(124,244,231,.5);border-radius:50%;height:53px;left:7px;position:absolute;top:7px;width:53px}.proto-orbit:after{background:#fff;border-radius:50%;box-shadow:0 0 9px #80fff1;content:"";height:5px;left:3px;position:absolute;top:8px;width:5px}.proto-face{background:radial-gradient(circle at 34% 25%,#e6fffb 0 5%,#7cf4e7 20%,#08a9a0 58%,#075f67 100%);border:2px solid rgba(255,255,255,.78);border-radius:46% 54% 48% 52%;box-shadow:inset 0 -7px 16px rgba(3,44,64,.28),0 5px 13px rgba(0,0,0,.2);display:block;flex:0 0 auto;height:50px;position:relative;width:50px}.proto-eye{animation:proto-blink 5.5s infinite;background:#052843;border-radius:50%;height:7px;position:absolute;top:18px;width:6px}.proto-eye-left{left:13px}.proto-eye-right{right:13px}.proto-eye:after{background:#fff;border-radius:50%;content:"";height:2px;left:1px;position:absolute;top:1px;width:2px}.proto-mouth{border-bottom:3px solid #052843;border-radius:0 0 12px 12px;bottom:10px;height:6px;left:17px;position:absolute;width:15px}.proto-spark{animation:proto-spark 2.4s ease-in-out infinite;background:#fff;border-radius:50%;color:#007d7a;font-size:9px;padding:3px;position:absolute;right:-6px;top:-5px}.proto-launch-label{display:grid;line-height:1.1;text-align:left}.proto-launch-label b{font-size:13px;letter-spacing:.08em}.proto-launch-label small{color:#c6fffa;font-size:10px;margin-top:4px}.proto-nudge{background:#fff;border:1px solid #c9e7e4;border-radius:15px;bottom:77px;box-shadow:0 16px 42px rgba(6,25,48,.2);color:#13243b;display:grid;gap:3px;line-height:1.35;padding:13px 34px 13px 14px;position:absolute;right:0;width:255px}.proto-nudge[hidden]{display:none}.proto-nudge:after{border-left:8px solid transparent;border-right:8px solid transparent;border-top:9px solid #fff;bottom:-8px;content:"";position:absolute;right:29px}.proto-nudge b{font-size:12px}.proto-nudge span{color:#607086;font-size:10px}.proto-nudge button{background:transparent;border:0;color:#567;cursor:pointer;position:absolute;right:6px;top:6px}.proto-dock-identity{align-items:center;display:flex;gap:11px}.proto-face-small{height:39px;width:39px}.proto-face-small .proto-eye{height:5px;top:14px;width:5px}.proto-face-small .proto-eye-left{left:10px}.proto-face-small .proto-eye-right{right:10px}.proto-face-small .proto-mouth{bottom:7px;height:5px;left:13px;width:12px}.proto-intro{background:linear-gradient(135deg,#ecfffb,#eef5ff);border:1px solid #c9e7e4;border-radius:14px;color:#17334c;display:grid;gap:4px;padding:13px}.proto-intro b{font-size:13px}.proto-intro span{color:#587085;font-size:11px;line-height:1.45}.proto-quick-prompts{display:flex;flex-wrap:wrap;gap:7px}.proto-quick-prompts button{background:#fff;border:1px solid #bfd6e4;border-radius:999px;color:#145d75;cursor:pointer;font-size:10px;font-weight:800;padding:7px 10px}.proto-quick-prompts button:hover,.proto-quick-prompts button:focus-visible{background:#e9fbf8;border-color:#14a69f;outline:none}.proto-human-handoff{align-items:center;background:#f7fafc;border:1px solid #dde8ee;border-radius:13px;color:#51647a;display:grid;font-size:10px;gap:9px;grid-template-columns:auto 1fr auto;padding:11px}.proto-human-handoff i{color:#088d87;font-size:18px}.proto-human-handoff b{color:#17334c}.proto-human-handoff a{color:#08746f;font-weight:850}.proto-companion[data-proto-state="thinking"] .proto-face{animation:proto-think 1.1s ease-in-out infinite}.proto-companion[data-proto-state="thinking"] .proto-eye-right{height:2px;top:21px}.proto-companion[data-proto-state="happy"] .proto-eye{background:transparent;border-top:2px solid #052843;border-radius:50%;height:5px}.proto-companion[data-proto-state="happy"] .proto-mouth{border-bottom-width:4px;height:9px}.proto-companion[data-proto-state="concerned"] .proto-mouth{border-bottom:0;border-top:3px solid #052843;border-radius:12px 12px 0 0;bottom:7px}.proto-companion[data-proto-state="listening"] .proto-eye{height:9px;width:7px}
@keyframes proto-orbit{to{transform:rotate(360deg)}}@keyframes proto-blink{0%,45%,48%,100%{transform:scaleY(1)}46%,47%{transform:scaleY(.08)}}@keyframes proto-spark{0%,100%{transform:scale(.85) rotate(-7deg)}50%{transform:scale(1.12) rotate(7deg)}}@keyframes proto-think{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-4px) rotate(2deg)}}
@media(max-width:650px){.proto-companion{bottom:14px;right:14px}.proto-launch-label{display:none}.proto-launcher{min-height:62px;padding:5px}.proto-orbit{height:50px;left:5px;top:5px;width:50px}.cx-dock{width:100vw}.proto-nudge{right:-1px;width:min(255px,calc(100vw - 28px))}}
@media(prefers-reduced-motion:reduce){.proto-orbit,.proto-eye,.proto-spark,.proto-companion[data-proto-state] .proto-face{animation:none!important;transition:none!important}}
html[data-erp-theme="dark"] .cx-dock{background:#0c1d2d;border-color:#29465c;color:#e8f3f7}html[data-erp-theme="dark"] .cx-dock-context{background:#132d43;color:#c7e0ec}html[data-erp-theme="dark"] .proto-intro{background:linear-gradient(135deg,#12342f,#132a42);border-color:#2f5e61;color:#f0fffd}html[data-erp-theme="dark"] .proto-intro span{color:#b9d2dc}html[data-erp-theme="dark"] .proto-quick-prompts button{background:#122b40;border-color:#355b70;color:#c8fff8}html[data-erp-theme="dark"] .proto-human-handoff{background:#102638;border-color:#2c485b;color:#b9cdd8}html[data-erp-theme="dark"] .proto-human-handoff b{color:#fff}html[data-erp-theme="dark"] .cx-dock textarea{background:#102638;border-color:#36576d;color:#f3f8fa}html[data-erp-theme="dark"] .cx-dock .cx-secondary{background:#132d43;border-color:#36576d;color:#e5f3f7}html[data-erp-theme="dark"] .cx-answer{background:#102638;border-color:#2d5e5c}html[data-erp-theme="dark"] .cx-answer [data-cortex-answer]{color:#e8f3f7}html[data-erp-theme="dark"] .cx-answer header{border-color:#2c4b5b;color:#7cf4e7}
.cx-shell{color:var(--cx-ink);display:grid;gap:18px}.cx-hero{background:linear-gradient(128deg,#071a38 0%,#0d3760 55%,#075f67 100%);border-radius:22px;color:#fff;display:flex;justify-content:space-between;gap:22px;padding:27px 29px;box-shadow:0 16px 42px rgba(7,26,56,.18)}.cx-eyebrow{display:block;font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.cx-hero h1{font-size:30px;line-height:1.12;margin:6px 0}.cx-hero p{color:#d7e6f4;margin:0;max-width:750px}.cx-health{align-items:flex-end;display:flex;flex-direction:column;gap:9px}.cx-chip{align-items:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.24);border-radius:999px;display:inline-flex;font-size:11px;font-weight:800;gap:7px;padding:7px 11px;white-space:nowrap}.cx-chip i{background:#55d49b;border-radius:50%;height:8px;width:8px}.cx-chip.is-off i{background:#ffbf47}.cx-health small{color:#c9d8e7;text-align:right}.cx-grid{display:grid;gap:18px;grid-template-columns:minmax(0,1.55fr) minmax(330px,.75fr)}.cx-stack{display:grid;gap:18px}.cx-card{background:#fff;border:1px solid var(--cx-line);border-radius:18px;box-shadow:0 6px 23px rgba(22,45,77,.055);overflow:hidden}.cx-card>header{align-items:center;border-bottom:1px solid #e8eef3;display:flex;gap:14px;justify-content:space-between;padding:17px 19px}.cx-card>header h2,.cx-card>header h3{font-size:16px;margin:0}.cx-card>header p{color:var(--cx-muted);font-size:11px;margin:3px 0 0}.cx-card-body{padding:18px}.cx-compose textarea{border:1px solid #cbd8e4;border-radius:14px;box-sizing:border-box;min-height:130px;padding:15px;resize:vertical;width:100%}.cx-compose textarea:focus{border-color:var(--cx-blue);box-shadow:0 0 0 3px rgba(21,94,239,.12);outline:none}.cx-context-line{align-items:center;color:var(--cx-muted);display:flex;flex-wrap:wrap;font-size:11px;gap:8px;margin:11px 0}.cx-context-line b{background:#eef5ff;border-radius:999px;color:#265ba8;padding:5px 9px}.cx-compose-actions{align-items:center;display:flex;gap:10px;justify-content:space-between}.cx-primary,.cx-secondary{align-items:center;border:0;border-radius:10px;cursor:pointer;display:inline-flex;font-size:12px;font-weight:850;gap:7px;justify-content:center;min-height:40px;padding:0 15px;text-decoration:none}.cx-primary{background:linear-gradient(120deg,var(--cx-blue),#4b45e5);color:#fff}.cx-secondary{background:#fff;border:1px solid #cbd8e4;color:#27405d}.cx-missions{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.cx-mission{background:#f8fafc;border:1px solid #e2eaf1;border-radius:14px;color:var(--cx-ink);cursor:pointer;padding:14px;text-align:left}.cx-mission:hover,.cx-mission:focus-visible{border-color:#8ab3ef;box-shadow:0 0 0 3px rgba(21,94,239,.09);outline:none}.cx-mission i{align-items:center;background:#e8f1ff;border-radius:10px;color:var(--cx-blue);display:flex;font-size:17px;height:36px;justify-content:center;margin-bottom:10px;width:36px}.cx-mission b,.cx-mission small{display:block}.cx-mission small{color:var(--cx-muted);font-size:10px;margin-top:5px}.cx-metrics{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.cx-metric{background:#f7fafc;border-radius:13px;padding:13px}.cx-metric small{color:var(--cx-muted);display:block;font-size:10px}.cx-metric strong{display:block;font-size:21px;margin-top:4px}.cx-usage{background:#e7edf3;border-radius:99px;height:8px;margin-top:11px;overflow:hidden}.cx-usage i{background:linear-gradient(90deg,var(--cx-teal),var(--cx-blue));display:block;height:100%}.cx-list{display:grid}.cx-row{align-items:center;border-top:1px solid #edf1f4;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) auto;padding:13px 18px}.cx-row:first-child{border-top:0}.cx-row b,.cx-row small{display:block}.cx-row small{color:var(--cx-muted);font-size:10px;margin-top:3px}.cx-status{border-radius:999px;font-size:9px;font-weight:900;padding:5px 8px;text-transform:uppercase}.cx-status.is-draft,.cx-status.is-proposed{background:#fff1d8;color:#9a5a00}.cx-status.is-completed,.cx-status.is-approved,.cx-status.is-executed{background:#e7f7ed;color:#12733f}.cx-status.is-running{background:#e8f1ff;color:#1e5fb9}.cx-status.is-rejected,.cx-status.is-failed,.cx-status.is-blocked{background:#ffebee;color:#b7293c}.cx-empty{color:var(--cx-muted);padding:27px;text-align:center}.cx-empty i{color:#8ba1ba;display:block;font-size:30px;margin-bottom:9px}.cx-evidence{background:#f8fbff;border:1px dashed #b9cee1;border-radius:13px;padding:14px}.cx-evidence b{font-size:12px}.cx-evidence p{color:var(--cx-muted);font-size:10px;margin:5px 0 0}.cx-approval-table{border-collapse:collapse;width:100%}.cx-approval-table th{background:#f5f8fb;color:#607086;font-size:9px;letter-spacing:.06em;padding:11px;text-align:left;text-transform:uppercase}.cx-approval-table td{border-top:1px solid #e9eff4;font-size:11px;padding:12px;vertical-align:middle}.cx-risk{border-radius:999px;font-size:9px;font-weight:900;padding:5px 8px}.cx-risk.r1{background:#e7f7ed;color:#12733f}.cx-risk.r2{background:#fff1d8;color:#915800}.cx-risk.r3,.cx-risk.r4{background:#ffebee;color:#b7293c}.cx-settings-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.cx-field{display:grid;gap:6px}.cx-field span{font-size:11px;font-weight:800}.cx-field input,.cx-field select,.cx-field textarea{border:1px solid #ccd8e3;border-radius:10px;min-height:40px;padding:9px}.cx-check{align-items:flex-start;display:flex;font-size:11px;gap:9px}.cx-check input{margin-top:2px}.cx-note{background:#fff8e8;border:1px solid #f5d999;border-radius:12px;color:#75500d;font-size:11px;padding:12px}.cx-command-trigger{appearance:none;background:#fff;border:1px solid #d3dde7;border-radius:12px;color:#65758b;cursor:pointer;display:flex;align-items:center;gap:10px;min-height:42px;padding:0 13px;text-align:left;width:min(440px,42vw)}.cx-command-trigger span{flex:1}.cx-command-trigger kbd{background:#f3f6f9;border:1px solid #dfe6ed;border-radius:6px;color:#536478;font:600 10px/1 system-ui;padding:5px 7px}.cx-palette[hidden],.cx-dock[hidden]{display:none!important}.cx-palette{align-items:flex-start;background:rgba(8,18,36,.55);display:flex;inset:0;justify-content:center;padding-top:min(15vh,130px);position:fixed;z-index:10050}.cx-palette-panel{background:#fff;border:1px solid #d9e2eb;border-radius:18px;box-shadow:0 30px 90px rgba(3,14,30,.3);max-height:70vh;overflow:auto;width:min(700px,calc(100vw - 32px))}.cx-palette-search{align-items:center;border-bottom:1px solid #e7edf2;display:flex;gap:10px;padding:14px 16px}.cx-palette-search input{border:0;font-size:15px;outline:0;width:100%}.cx-palette-list{display:grid;padding:9px}.cx-palette-list a,.cx-palette-list button{align-items:center;background:#fff;border:0;border-radius:11px;color:#17263d;display:flex;gap:11px;padding:11px;text-align:left;text-decoration:none}.cx-palette-list a:hover,.cx-palette-list button:hover,.cx-palette-list a:focus-visible,.cx-palette-list button:focus-visible{background:#eef5ff;outline:none}.cx-palette-list i{align-items:center;background:#e8f1ff;border-radius:8px;color:#155eef;display:flex;height:31px;justify-content:center;width:31px}.cx-palette-list span{display:grid}.cx-palette-list small{color:#738197;font-size:9px}.cx-dock{background:#fff;border-left:1px solid #dce5ed;box-shadow:-16px 0 40px rgba(14,30,55,.12);display:grid;grid-template-rows:auto 1fr;inset:0 0 0 auto;position:fixed;width:min(430px,100vw);z-index:10040}.cx-dock-head{align-items:center;background:linear-gradient(120deg,#071a38,#075f67);color:#fff;display:flex;justify-content:space-between;padding:17px}.cx-dock-head h2{font-size:16px;margin:0}.cx-dock-head button{background:rgba(255,255,255,.12);border:0;border-radius:9px;color:#fff;height:34px;width:34px}.cx-dock-body{display:grid;gap:14px;overflow:auto;padding:17px}.cx-dock-context{background:#eff7ff;border-radius:12px;color:#24496c;font-size:10px;padding:11px}.cx-dock textarea{border:1px solid #c9d7e3;border-radius:12px;min-height:120px;padding:12px;width:100%}.cx-context-launch{align-items:center;background:#eef7ff;border:1px solid #bcd5ef;border-radius:10px;color:#185f9e;cursor:pointer;display:inline-flex;font-size:11px;font-weight:850;gap:7px;min-height:38px;padding:0 12px}.cx-source-label{align-items:center;color:#697a90;display:flex;font-size:10px;gap:6px}.cx-source-label i{color:#12834b}
@media(max-width:1000px){.cx-grid{grid-template-columns:1fr}.cx-settings-grid{grid-template-columns:1fr}.cx-health{align-items:flex-start}.cx-hero{flex-direction:column}}

/* Keep the authenticated ERP companion visually identical to the public-site P.R.O.T.O. */
.proto-launcher{min-height:74px;padding:4px 15px 4px 9px}
.proto-orbit{height:58px;left:4px;top:8px;transform:rotate(-12deg);width:60px}
.proto-face{background-image:url("../images/proto-expression-strip.png");background-position:0 50%;background-repeat:no-repeat;background-size:400% 100%;border:0;border-radius:0;box-shadow:none;filter:drop-shadow(0 0 7px rgba(202,255,250,.92)) drop-shadow(0 10px 10px rgba(0,0,0,.48));height:66px;transition:background-position .18s ease,filter .18s ease;width:48px}
.proto-eye,.proto-mouth,.proto-spark{display:none!important}
.proto-companion[data-proto-state="listening"] .proto-face{background-position:33.333% 50%}
.proto-companion[data-proto-state="happy"] .proto-face{background-position:66.667% 50%}
.proto-companion[data-proto-state="thinking"] .proto-face,.proto-companion[data-proto-state="concerned"] .proto-face{background-position:100% 50%}
.proto-face-small{height:52px;width:38px}
.proto-companion[data-proto-holiday] .proto-face{aspect-ratio:1;background-image:url("../images/proto-us-holiday-grid.png");background-size:400% 300%;height:auto;width:58px}
.proto-companion[data-proto-holiday="new-year"] .proto-face{background-position:0 0}
.proto-companion[data-proto-holiday="mlk-day"] .proto-face{background-position:33.333% 0}
.proto-companion[data-proto-holiday="valentines"] .proto-face{background-position:66.667% 0}
.proto-companion[data-proto-holiday="presidents-day"] .proto-face{background-position:100% 0}
.proto-companion[data-proto-holiday="memorial-day"] .proto-face{background-position:0 50%}
.proto-companion[data-proto-holiday="juneteenth"] .proto-face{background-position:33.333% 50%}
.proto-companion[data-proto-holiday="independence-day"] .proto-face{background-position:66.667% 50%}
.proto-companion[data-proto-holiday="labor-day"] .proto-face{background-position:100% 50%}
.proto-companion[data-proto-holiday="halloween"] .proto-face{background-position:0 100%}
.proto-companion[data-proto-holiday="veterans-day"] .proto-face{background-position:33.333% 100%}
.proto-companion[data-proto-holiday="thanksgiving"] .proto-face{background-position:66.667% 100%}
.proto-companion[data-proto-holiday="christmas"] .proto-face{background-position:100% 100%}
@media(max-width:650px){.proto-launcher{min-height:70px;padding:3px 7px}.proto-orbit{height:54px;left:3px;top:8px;width:56px}}
.cx-hero .cx-secondary,.cx-hero .cx-secondary:visited{background:#fff!important;border:1px solid #fff!important;color:#123a58!important;font-size:13px!important;min-width:132px!important}.cx-answer-sources a[target="_blank"]:after{content:"↗";font-size:10px;margin-left:4px}
@media(max-width:650px){.cx-hero{border-radius:16px;padding:21px}.cx-missions,.cx-metrics{grid-template-columns:1fr}.cx-command-trigger{width:auto}.cx-command-trigger span{display:none}}
.cx-answer{margin-top:16px;border:1px solid #c8e4e1;border-radius:16px;background:linear-gradient(145deg,#f3fffd,#fff);overflow:hidden}.cx-answer header{display:flex;align-items:center;gap:9px;padding:13px 16px;border-bottom:1px solid #dcebea;color:#0b6d70}.cx-answer header span{margin-left:auto;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#587478}.cx-answer [data-cortex-answer]{padding:18px;white-space:pre-wrap;line-height:1.65;color:#14233b}.cx-answer-sources{display:flex;gap:8px;flex-wrap:wrap;padding:0 18px 18px}.cx-answer-sources b{width:100%;font-size:12px;color:#607282}.cx-answer-sources a{border:1px solid #cce3e1;border-radius:999px;padding:7px 11px;background:#fff;color:#086f72;text-decoration:none;font-size:12px;font-weight:700}

/* 2.7.12 — one task-aware P.R.O.T.O. presence across the firm ERP. */
.cx-dock{width:min(520px,100vw);grid-template-rows:auto minmax(0,1fr);background:#f7fafc}
.cx-dock-head{min-height:98px;padding:18px 20px;background:radial-gradient(circle at 78% -30%,rgba(43,219,218,.35),transparent 45%),linear-gradient(120deg,#07182f,#0a4460 62%,#087971)}
.cx-dock-head h2{font-size:20px;line-height:1.2;margin:3px 0 0}.cx-dock-head p{color:#c9e4ea;font-size:12px;margin:5px 0 0}.cx-dock-head .proto-face-small{height:66px;width:48px}.cx-dock-head .cx-eyebrow{color:#89f1e6;font-size:9px}.cx-dock-head>button{align-self:flex-start;cursor:pointer}
.cx-dock-body{align-content:start;display:grid;gap:13px;padding:16px 18px 20px}.proto-context-card{align-items:flex-start;background:#fff;border:1px solid #dce8ee;border-radius:16px;display:flex;gap:14px;justify-content:space-between;padding:14px 15px}.proto-context-card>div>span{color:#6f8092;font-size:10px;font-weight:800;text-transform:uppercase}.proto-context-card strong{color:#10253a;display:block;font-size:15px;margin-top:3px}.proto-context-card p{color:#617488;font-size:12px;line-height:1.45;margin:4px 0 0}.proto-context-live{align-items:center;background:#eaf9f3;border-radius:99px;color:#15734b;display:flex;flex:0 0 auto;font-size:9px;font-weight:850;gap:6px;padding:6px 8px}.proto-context-live i{background:#19a865;border-radius:50%;box-shadow:0 0 0 3px rgba(25,168,101,.12);height:7px;width:7px}
.proto-workstyle{background:#fff;border:1px solid #dce8ee;border-radius:16px;padding:14px}.proto-workstyle>header{align-items:end;display:flex;justify-content:space-between;margin-bottom:10px}.proto-workstyle>header span{color:#173047;font-size:12px;font-weight:850}.proto-workstyle>header small{color:#7a8998;font-size:9px}.proto-workstyle-grid{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.proto-workstyle-grid button{background:#f8fbfd;border:1px solid #dce8ee;border-radius:12px;color:#193149;cursor:pointer;display:grid;gap:4px;min-height:92px;padding:11px;text-align:left}.proto-workstyle-grid button:hover,.proto-workstyle-grid button:focus-visible{background:#edfffb;border-color:#1aa49d;box-shadow:0 0 0 3px rgba(26,164,157,.1);outline:0}.proto-workstyle-grid i{color:#098f88;font-size:17px}.proto-workstyle-grid b{font-size:11px;line-height:1.25}.proto-workstyle-grid small{color:#738397;font-size:9px}
.proto-quick-prompts{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.proto-quick-prompts button{border-radius:11px;font-size:10px;min-height:38px;padding:7px;text-align:center}.proto-compose{background:#fff;border:1px solid #ccdce6;border-radius:16px;padding:13px}.proto-compose label{color:#173047;display:block;font-size:11px;font-weight:850;margin-bottom:7px}.cx-dock .proto-compose textarea{background:#fbfdff;border:0;border-radius:9px;box-sizing:border-box;font-size:14px;line-height:1.5;min-height:96px;padding:5px 4px;resize:vertical}.cx-dock .proto-compose textarea:focus{box-shadow:none;outline:0}.proto-compose-footer{align-items:center;border-top:1px solid #e6edf2;display:flex;gap:12px;justify-content:space-between;margin-top:9px;padding-top:10px}.proto-compose-footer>span{color:#6b7c8e;font-size:9px}.proto-compose-footer>span i{color:#138559}.proto-compose-footer .cx-primary{border-radius:12px;min-width:88px}.proto-dock-footer{display:flex;gap:8px}.proto-dock-footer a{align-items:center;background:#fff;border:1px solid #d7e3ea;border-radius:11px;color:#244760;display:flex;flex:1;font-size:11px;font-weight:800;gap:7px;justify-content:center;min-height:42px;text-decoration:none}.proto-dock-footer a:hover{border-color:#1aa49d;color:#087d77}
.proto-launcher{background:linear-gradient(135deg,#06172f 0%,#075b69 70%,#08a39b 100%);border-color:rgba(126,246,235,.72);box-shadow:0 15px 38px rgba(1,25,49,.3),0 0 0 4px rgba(16,165,156,.08);min-height:66px}.proto-launch-label b{font-size:12px}.proto-launch-label small{font-size:9px}.proto-companion{z-index:10036}

.cx-workspace-v2{gap:20px}.cx-proto-hero{align-items:center;overflow:hidden;padding:30px 32px;position:relative}.cx-proto-hero:after{background:linear-gradient(110deg,transparent,rgba(255,255,255,.08));content:"";height:190%;position:absolute;right:-12%;top:-45%;transform:rotate(13deg);width:31%;pointer-events:none}.cx-proto-hero-copy{max-width:830px}.cx-proto-hero h1{font-size:34px;max-width:780px}.cx-proto-hero p{font-size:14px;line-height:1.6}.cx-trust-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.cx-trust-row span{align-items:center;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.15);border-radius:99px;color:#d7efef;display:flex;font-size:10px;font-weight:750;gap:6px;padding:7px 10px}.cx-trust-row i{color:#73f2df}.cx-proto-hero-identity{align-items:center;background:rgba(1,20,41,.34);border:1px solid rgba(139,242,231,.26);border-radius:24px;display:flex;flex:0 0 auto;gap:12px;min-width:205px;padding:16px 18px;position:relative;z-index:1}.proto-workspace-avatar{background-image:url("../images/proto-expression-strip.png");background-position:66.667% 50%;background-repeat:no-repeat;background-size:400% 100%;filter:drop-shadow(0 0 12px rgba(133,255,245,.7));height:92px;width:67px}.cx-proto-hero-identity>div{display:grid;gap:9px}.cx-proto-hero-identity b{font-size:18px;letter-spacing:.08em}.cx-proto-hero-identity .cx-chip{font-size:9px;white-space:normal}
.cx-workstyle-panel{background:#fff;border:1px solid #dfe7ef;border-radius:20px;box-shadow:0 8px 26px rgba(22,45,77,.055);padding:20px}.cx-workstyle-panel>header{align-items:end;display:flex;gap:24px;justify-content:space-between;margin-bottom:15px}.cx-workstyle-panel h2{color:#102238;font-size:21px;margin:4px 0 0}.cx-workstyle-panel>header p{color:#6d7e90;font-size:11px;margin:0;max-width:390px;text-align:right}.cx-workstyle-cards{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.cx-workstyle-cards button{background:linear-gradient(150deg,#fbfdff,#f5f9fb);border:1px solid #dbe6ed;border-radius:16px;color:#13283e;cursor:pointer;display:grid;gap:9px;min-height:185px;padding:17px;text-align:left}.cx-workstyle-cards button:nth-child(1){border-top:3px solid #07998f}.cx-workstyle-cards button:nth-child(2){border-top:3px solid #3979bd}.cx-workstyle-cards button:nth-child(3){border-top:3px solid #7560c5}.cx-workstyle-cards button:hover,.cx-workstyle-cards button:focus-visible{box-shadow:0 12px 30px rgba(27,61,92,.12);outline:0;transform:translateY(-2px)}.cx-workstyle-cards button>span{align-items:center;display:flex;justify-content:space-between}.cx-workstyle-cards button>span i{align-items:center;background:#e9f8f5;border-radius:10px;color:#078b84;display:flex;font-size:18px;height:38px;justify-content:center;width:38px}.cx-workstyle-cards em{color:#668094;font-size:9px;font-style:normal;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.cx-workstyle-cards b{font-size:19px}.cx-workstyle-cards small{color:#667b8d;font-size:12px;line-height:1.5}.cx-workstyle-cards strong{align-items:center;color:#0b7772;display:flex;font-size:11px;gap:7px;margin-top:auto}
.cx-command-workspace textarea{font-size:15px;line-height:1.55;min-height:155px}.cx-inline-links{display:flex;gap:14px}.cx-inline-links a{color:#526a7f;font-size:11px;font-weight:800;text-decoration:none}.cx-inline-links i{color:#128d87;margin-right:4px}.cx-mission{position:relative}.cx-mission span{color:#157a75;display:block;font-size:10px;font-weight:850;margin-top:11px}.cx-pulse-card .cx-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.cx-allowance-card .cx-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
html[data-erp-theme="dark"] .proto-context-card,html[data-erp-theme="dark"] .proto-workstyle,html[data-erp-theme="dark"] .proto-compose,html[data-erp-theme="dark"] .proto-dock-footer a{background:#10283a;border-color:#2e4b5e;color:#eef8fa}html[data-erp-theme="dark"] .proto-context-card strong,html[data-erp-theme="dark"] .proto-workstyle>header span,html[data-erp-theme="dark"] .proto-compose label{color:#f3fbfc}html[data-erp-theme="dark"] .proto-context-card p{color:#b8cad4}html[data-erp-theme="dark"] .proto-workstyle-grid button{background:#132f43;border-color:#355367;color:#edf8fa}html[data-erp-theme="dark"] .proto-workstyle-grid small{color:#b7cbd5}html[data-erp-theme="dark"] .proto-compose-footer{border-color:#304d60}html[data-erp-theme="dark"] .proto-dock-footer a{color:#d8eef1}
@media(max-width:1100px){.cx-proto-hero-identity{display:none}.cx-workstyle-panel>header{align-items:flex-start;flex-direction:column}.cx-workstyle-panel>header p{text-align:left}}
@media(max-width:760px){.cx-workstyle-cards{grid-template-columns:1fr}.cx-workstyle-cards button{min-height:150px}}
@media(max-width:650px){.cx-dock-head{min-height:88px;padding:14px}.cx-dock-head h2{font-size:17px}.cx-dock-head .proto-face-small{height:55px;width:40px}.cx-dock-body{padding:12px}.proto-context-card{display:grid}.proto-context-live{justify-self:start}.proto-workstyle>header{align-items:start;display:grid;gap:3px}.proto-workstyle-grid{grid-template-columns:1fr}.proto-workstyle-grid button{align-items:center;grid-template-columns:auto 1fr auto;min-height:58px}.proto-workstyle-grid button small{text-align:right}.proto-quick-prompts{grid-template-columns:repeat(2,minmax(0,1fr))}.proto-compose-footer{align-items:flex-start;flex-direction:column}.proto-compose-footer .cx-primary{align-self:stretch}.cx-proto-hero{padding:23px}.cx-proto-hero h1{font-size:27px}.cx-trust-row{align-items:flex-start;flex-direction:column}.cx-workstyle-panel{padding:15px}.cx-workstyle-cards button{min-height:170px}}

/* 2.7.13 — readable P.R.O.T.O. companion text at normal browser zoom. */
.cx-dock{width:min(560px,100vw)}
.cx-dock-head h2{font-size:22px}.cx-dock-head p{font-size:14px;line-height:1.5}.cx-dock-head .cx-eyebrow{font-size:11px;line-height:1.35}
.cx-dock-body{gap:15px;padding:18px 20px 22px}.proto-context-card>div>span{font-size:12px}.proto-context-card strong{font-size:17px}.proto-context-card p{font-size:14px;line-height:1.55}.proto-context-live{font-size:11px}
.proto-workstyle>header span{font-size:14px}.proto-workstyle>header small{font-size:11px}.proto-workstyle-grid b{font-size:13px;line-height:1.35}.proto-workstyle-grid small{font-size:11px;line-height:1.35}.proto-workstyle-grid button{min-height:108px}
.proto-quick-prompts button{font-size:12px;line-height:1.35;min-height:44px}.proto-compose label{font-size:13px}.cx-dock .proto-compose textarea{font-size:15px}.proto-compose-footer>span{font-size:11px;line-height:1.45}.proto-dock-footer a{font-size:13px;min-height:46px}
.proto-launch-label b{font-size:14px}.proto-launch-label small{font-size:11px}
@media(max-width:650px){.cx-dock-head h2{font-size:19px}.cx-dock-head p{font-size:13px}.cx-dock-body{padding:14px}.proto-workstyle-grid button{min-height:66px}.proto-quick-prompts button{font-size:11px}}

/* 2.7.20 — autonomous, responsive P.R.O.T.O. motion. */
.proto-face{transform-origin:50% 48%;will-change:transform,filter}.proto-launcher:before{animation:proto-aura 3.2s ease-in-out infinite;border:1px solid rgba(111,255,239,.46);border-radius:inherit;box-shadow:0 0 18px rgba(47,236,221,.35),inset 0 0 16px rgba(47,236,221,.12);content:"";inset:-3px;pointer-events:none;position:absolute}.proto-companion[data-proto-motion="glance-left"] .proto-face{animation:proto-glance-left 1.05s ease-in-out}.proto-companion[data-proto-motion="glance-right"] .proto-face{animation:proto-glance-right 1.05s ease-in-out}.proto-companion[data-proto-motion="eye-roll"] .proto-face{animation:proto-head-roll 1.5s cubic-bezier(.45,0,.2,1)}.proto-companion[data-proto-motion="smile"] .proto-face{animation:proto-smile-bounce 1.05s ease-in-out}@keyframes proto-aura{0%,100%{opacity:.45;transform:scale(.985)}50%{opacity:1;transform:scale(1.025)}}@keyframes proto-glance-left{0%,100%{transform:translateX(0) rotate(0)}35%,65%{transform:translateX(-5px) rotate(-9deg)}}@keyframes proto-glance-right{0%,100%{transform:translateX(0) rotate(0)}35%,65%{transform:translateX(5px) rotate(9deg)}}@keyframes proto-head-roll{0%{transform:rotate(0) scale(1)}42%{transform:rotate(185deg) scale(.92)}75%{transform:rotate(360deg) scale(1.08)}100%{transform:rotate(360deg) scale(1)}}@keyframes proto-smile-bounce{0%,100%{transform:translateY(0) scale(1)}35%{transform:translateY(-7px) scale(1.08)}65%{transform:translateY(1px) scale(.98)}}@media(prefers-reduced-motion:reduce){.proto-launcher:before,.proto-companion[data-proto-motion] .proto-face{animation:none!important;transition:none!important}}

/* 2.7.21 — one clean P.R.O.T.O. identity for every authenticated role. */
.proto-face,.proto-workspace-avatar{background-color:transparent!important;background-image:url("../images/proto-avatar-v21.png")!important;background-position:0 0!important;background-repeat:no-repeat!important;background-size:500% 200%!important;border:0!important;border-radius:0!important;box-shadow:none!important;filter:drop-shadow(0 0 7px rgba(202,255,250,.92)) drop-shadow(0 9px 10px rgba(0,0,0,.38))!important}
.proto-face{height:58px!important;margin-inline:auto;transform-origin:50% 55%;width:58px!important}.proto-workspace-avatar{height:92px!important;margin-inline:auto;width:92px!important}.proto-face .proto-eye,.proto-face .proto-mouth,.proto-face .proto-spark{display:none!important}.proto-companion[data-proto-holiday] .proto-face{background-image:url("../images/proto-us-holiday-grid.png")!important;background-size:400% 300%!important}.proto-companion[data-proto-motion="eye-roll"] .proto-face{animation:proto-v21-look-around 1.35s ease-in-out!important}@keyframes proto-v21-look-around{0%,100%{transform:translateX(0) rotate(0)}30%{transform:translateX(3px) rotate(5deg)}65%{transform:translateX(-3px) rotate(-5deg)}}

/* Shared shell: reserve room for the open assistant instead of covering work. */
:root {
    --protax-context-dock-width: clamp(360px, 36vw, 560px);
}
.cx-dock {
    width: var(--protax-context-dock-width);
    max-width: calc(100vw - var(--sidebar-width, 232px) - 24px);
}
.erp-main {
    transition: margin-left var(--transition, .25s ease), margin-right .22s ease;
}
.cp-workspace {
    transition: margin-right .22s ease;
}
body.erp-proto-dock-open .erp-main,
body.erp-proto-dock-open .cp-workspace {
    margin-right: var(--protax-context-dock-width);
}
.cx-dock-resizer{position:absolute;left:-5px;top:0;bottom:0;width:10px;cursor:col-resize;z-index:5}.cx-dock-resizer::after{content:"";position:absolute;left:4px;top:42%;width:2px;height:64px;border-radius:2px;background:rgba(91,219,211,.75)}.cx-dock-resizer:focus-visible{outline:3px solid #5bd7d0;outline-offset:-2px}
body.erp-proto-inline-context .proto-companion {
    display: none !important;
}

@media (max-width: 992px) {
    body.erp-proto-dock-open .erp-main {
        margin-right: 0;
    }
    .erp-wrapper ~ .cx-dock {
        top: var(--navbar-height, 72px);
        width: 100vw;
        max-width: 100vw;
    }
    .cp-app ~ .cx-dock {
        width: var(--protax-context-dock-width);
        max-width: calc(100vw - 220px);
    }
}

@media (max-width: 800px) {
    body.erp-proto-dock-open .cp-workspace {
        margin-right: 0;
    }
    .cp-app ~ .cx-dock {
        top: 126px;
        width: 100vw;
        max-width: 100vw;
    }
}

@media (max-width: 640px) {
    .erp-wrapper ~ .cx-dock {
        top: 64px;
    }
}

/* Filtering must win over the palette item's flex layout. */
.cx-palette-list [hidden] {
    display: none !important;
}

/* 2.7.68 — guided P.R.O.T.O. conversation instead of an unlabeled command wall. */
.proto-workstyle > header > div { display:grid; gap:2px; }
.proto-workstyle > header > div > small { font-weight:750; }
.proto-workstyle-grid button { position:relative; }
.proto-workstyle-icon {
    align-items:center;
    background:var(--protax-proto-accent-soft,#e9f8f5);
    border-radius:9px;
    display:flex;
    height:32px;
    justify-content:center;
    width:32px;
}
.proto-workstyle-grid .proto-workstyle-icon > i { font-size:16px; }
.proto-workstyle-check {
    opacity:0;
    position:absolute;
    right:10px;
    top:10px;
    transform:scale(.75);
    transition:opacity .16s ease,transform .16s ease;
}
.proto-workstyle-grid button[aria-pressed="true"] {
    background:var(--protax-proto-accent-soft,#edfffb);
    border-color:var(--erp-primary,#078c95);
    box-shadow:0 0 0 2px color-mix(in srgb,var(--erp-primary,#078c95) 18%,transparent);
}
.proto-workstyle-grid button[aria-pressed="true"] .proto-workstyle-check { opacity:1; transform:scale(1); }
.proto-quick-prompts { grid-template-columns:repeat(2,minmax(0,1fr)); }
.proto-quick-prompts button {
    align-items:center;
    display:flex;
    gap:9px;
    justify-content:flex-start;
    min-height:46px;
    padding:9px 11px;
    text-align:left;
}
.proto-quick-prompts button > i {
    align-items:center;
    background:var(--protax-proto-accent-soft,#e9f8f5);
    border-radius:8px;
    display:flex;
    flex:0 0 28px;
    height:28px;
    justify-content:center;
}
.proto-quick-prompts button > span { min-width:0; }
.proto-conversation {
    background:var(--protax-proto-surface,#fff);
    border:1px solid var(--protax-proto-border,#dce8ee);
    border-radius:16px;
    display:grid;
    gap:10px;
    padding:12px;
}
.proto-chat-message {
    align-items:flex-start;
    display:grid;
    gap:10px;
    grid-template-columns:auto minmax(0,1fr);
}
.proto-chat-message.is-user { grid-template-columns:minmax(0,1fr) auto; }
.proto-chat-message.is-user > div { justify-self:end; order:1; }
.proto-chat-message.is-user .proto-message-avatar { order:2; }
.proto-message-avatar {
    align-items:center;
    background:var(--protax-proto-accent-soft,#e9f8f5);
    border-radius:10px;
    color:var(--erp-accent-text,#078c95);
    display:flex;
    flex:0 0 32px;
    height:32px;
    justify-content:center;
    width:32px;
}
.proto-chat-message > div {
    background:var(--protax-proto-surface-muted,#f8fbfd);
    border:1px solid var(--protax-proto-border,#dce8ee);
    border-radius:4px 12px 12px 12px;
    max-width:92%;
    padding:9px 11px;
}
.proto-chat-message.is-user > div {
    background:var(--protax-proto-accent-soft,#e9f8f5);
    border-color:color-mix(in srgb,var(--erp-primary,#078c95) 42%,var(--protax-proto-border,#dce8ee));
    border-radius:12px 4px 12px 12px;
}
.proto-chat-message b { color:var(--protax-proto-text,#10253a); display:block; font-size:11px; margin-bottom:3px; }
.proto-chat-message p { color:var(--protax-proto-muted,#617488); font-size:12px; line-height:1.45; margin:0; white-space:pre-wrap; }
.proto-conversation > .cx-answer { margin-top:0; }
.cx-dock .proto-compose textarea { min-height:82px; }
.proto-compose-footer .cx-primary > i { font-size:13px; }

@media(max-width:650px) {
    .proto-workstyle > header > small { display:none; }
    .proto-workstyle-grid button { grid-template-columns:auto minmax(0,1fr) auto auto; }
    .proto-workstyle-check { position:static; }
    .proto-quick-prompts { grid-template-columns:1fr 1fr; }
    .proto-quick-prompts button { font-size:11px; }
    .proto-chat-message > div { max-width:100%; }
}

/* 2.7.88: director command-center treatment from the approved P.R.O.T.O. concept. */
.cx-proto-hero{background:radial-gradient(circle at 72% 46%,rgba(25,221,211,.24),transparent 19%),linear-gradient(115deg,#062849 0%,#063d57 55%,#087f83 100%)!important;border:1px solid rgba(92,232,222,.28)!important;min-height:230px}.cx-proto-hero::before{content:"";position:absolute;inset:auto 20% 0 45%;height:62%;background:linear-gradient(145deg,transparent 48%,rgba(36,208,201,.16) 49%,transparent 51%),linear-gradient(35deg,transparent 48%,rgba(91,135,210,.14) 49%,transparent 51%);background-size:92px 72px;opacity:.7;pointer-events:none}.cx-proto-hero-copy{position:relative;z-index:2}.cx-proto-hero h1{line-height:1.05;letter-spacing:-.035em}.cx-proto-hero h1 em{color:#63ead9;font-style:normal}.cx-hero-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}.cx-hero-actions button,.cx-hero-actions a{align-items:center;background:rgba(3,32,55,.68);border:1px solid #38d8d0;border-radius:999px;color:#efffff!important;cursor:pointer;display:inline-flex;font-size:11px;font-weight:850;gap:7px;min-height:40px;padding:8px 14px;text-decoration:none}.cx-hero-actions button:hover,.cx-hero-actions a:hover{background:#0d8f8c;box-shadow:0 0 24px rgba(71,230,218,.28)}.cx-workstyle-panel{background:linear-gradient(180deg,#09263b,#0b2d43)!important;border-color:#2b5265!important}.cx-workstyle-panel h2,.cx-workstyle-panel .cx-eyebrow{color:#f4fbfc!important}.cx-workstyle-panel>header p{color:#bad0d9!important}.cx-workstyle-cards button{background:linear-gradient(145deg,#12364c,#0d2b40)!important;border-color:#31566a!important;color:#eff9fb!important;min-height:150px}.cx-workstyle-cards button small{color:#b9cdd7!important}.cx-workstyle-cards button strong{color:#63ead9!important}.cx-command-workspace{border-color:#2a6879!important;box-shadow:0 12px 34px rgba(1,19,34,.12)}.cx-missions{grid-template-columns:repeat(2,minmax(0,1fr))!important}.cx-mission{min-height:94px!important}.cx-mission span{margin-top:4px!important}.cx-pulse-card .cx-metric{background:linear-gradient(145deg,#12374e,#0d2b40);border:1px solid #294e63;border-radius:13px;padding:12px}.cx-pulse-card .cx-metric strong{color:#f4fbfc}.cx-pulse-card .cx-metric small{color:#b9ccd6}
@media(max-width:760px){.cx-proto-hero{min-height:0}.cx-hero-actions{display:grid}.cx-hero-actions>*{justify-content:center}.cx-missions{grid-template-columns:1fr!important}}

/* Accountants need a focused work assistant, not the director analytics console. */
.cx-workspace-v2.is-accountant-focus{max-width:1440px;margin-inline:auto}
.cx-workspace-v2.is-accountant-focus .cx-proto-hero{display:block;min-height:0;padding:24px 28px}
.cx-workspace-v2.is-accountant-focus .cx-proto-hero-copy{max-width:980px}
.cx-workspace-v2.is-accountant-focus .cx-proto-hero h1{font-size:30px;margin-bottom:8px}
.cx-workspace-v2.is-accountant-focus .cx-trust-row{margin-top:13px}
.cx-workspace-v2.is-accountant-focus .cx-grid{grid-template-columns:minmax(0,1fr)}
.cx-workspace-v2.is-accountant-focus .cx-grid>aside{display:none}
.cx-workspace-v2.is-accountant-focus .cx-command-workspace>header,
.cx-workspace-v2.is-accountant-focus .cx-card>header{padding:16px 18px}
.cx-workspace-v2.is-accountant-focus .cx-compose textarea{min-height:104px}
@media(max-width:650px){.cx-workspace-v2.is-accountant-focus .cx-proto-hero{padding:20px}.cx-workspace-v2.is-accountant-focus .cx-proto-hero h1{font-size:26px}}

/* 2.7.69 — premium, website-aligned P.R.O.T.O. side workspace. */
:root { --protax-context-dock-width:clamp(540px,44vw,680px); }
.cx-dock,
.proto-companion {
    font-family:var(--font-family,Inter,"Segoe UI",sans-serif);
    letter-spacing:-.005em;
}
.cx-dock,
.cx-dock *,
.cx-dock *::before,
.cx-dock *::after,
.proto-companion,
.proto-companion *,
.proto-companion *::before,
.proto-companion *::after { box-sizing:border-box; }
.cx-dock {
    background:
        linear-gradient(color-mix(in srgb,var(--erp-content-bg,#f4f8fb) 96%,transparent),color-mix(in srgb,var(--erp-content-bg,#f4f8fb) 96%,transparent)),
        linear-gradient(90deg,color-mix(in srgb,var(--erp-primary,#078c95) 7%,transparent) 1px,transparent 1px),
        linear-gradient(color-mix(in srgb,var(--erp-primary,#078c95) 7%,transparent) 1px,transparent 1px);
    background-size:auto,34px 34px,34px 34px;
    border-left-color:color-mix(in srgb,var(--erp-primary,#078c95) 30%,var(--erp-border,#dbe5ea));
    box-shadow:-24px 0 72px rgba(3,17,34,.22);
}
.cx-dock-head {
    background:
        radial-gradient(circle at 14% 110%,color-mix(in srgb,var(--erp-primary-contrast,#fff) 17%,transparent),transparent 35%),
        linear-gradient(125deg,var(--erp-primary-dark,#075f67),var(--erp-primary,#078c95)) !important;
    overflow:visible;
    position:relative;
}
.cx-dock-head::after {
    border:1px solid color-mix(in srgb,var(--erp-primary-contrast,#fff) 11%,transparent);
    border-radius:50%;
    content:"";
    height:210px;
    pointer-events:none;
    position:absolute;
    right:-92px;
    top:-118px;
    width:210px;
}
.proto-dock-identity { align-items:center; flex:1; min-width:0; }
.proto-dock-avatar {
    align-items:center;
    align-self:stretch;
    background:linear-gradient(160deg,rgba(255,255,255,.16),rgba(4,29,45,.18));
    border:1px solid rgba(255,255,255,.24);
    border-radius:20px;
    display:flex;
    flex:0 0 106px;
    flex-direction:column;
    justify-content:center;
    min-height:126px;
    position:relative;
}
.proto-dock-avatar::before {
    background:radial-gradient(circle,color-mix(in srgb,var(--erp-primary-contrast,#fff) 44%,transparent),transparent 68%);
    content:"";
    inset:8px;
    pointer-events:none;
    position:absolute;
}
.proto-dock-copy { display:grid; gap:3px; min-width:0; padding-block:2px; }
.proto-dock-copy .proto-dock-play-slot { margin-top:9px; min-height:34px; }
.proto-dock-close { align-self:flex-start; flex:0 0 auto; position:relative; z-index:2; }
.cx-dock-body { gap:16px; padding:20px 22px 24px; }
.proto-context-card {
    align-items:center;
    border-radius:19px;
    box-shadow:0 9px 24px rgba(12,38,58,.06);
    display:grid;
    gap:14px;
    grid-template-columns:auto minmax(0,1fr) auto;
    padding:17px 18px;
}
.proto-context-symbol {
    align-items:center;
    background:var(--protax-proto-accent-soft,var(--erp-primary-soft,#e9f8f5));
    border-radius:13px;
    color:var(--erp-accent-text,var(--erp-primary,#078c95));
    display:flex;
    flex:0 0 46px;
    font-size:20px;
    height:46px;
    justify-content:center;
}
.proto-context-card strong { font-size:18px; }
.proto-info-tip { align-items:center; background:transparent; border:0; border-radius:50%; color:var(--protax-proto-muted,#617488); cursor:help; display:flex; font-size:17px; height:34px; justify-content:center; padding:0; position:relative; width:34px; }
.proto-info-tip:focus-visible { outline:3px solid color-mix(in srgb,var(--erp-primary,#078c95) 25%,transparent); }
.proto-info-tip [role="tooltip"] { background:#071b2c; border:1px solid #315068; border-radius:10px; box-shadow:0 12px 32px rgba(0,0,0,.32); color:#fff; font-size:11px; font-weight:600; line-height:1.45; opacity:0; padding:9px 10px; pointer-events:none; position:absolute; right:0; top:calc(100% + 7px); transform:translateY(-3px); transition:opacity .14s ease,transform .14s ease; width:230px; z-index:20; }
.proto-info-tip:hover [role="tooltip"],.proto-info-tip:focus [role="tooltip"] { opacity:1; transform:translateY(0); }
.proto-workstyle { border-radius:19px; padding:18px; }
.proto-workstyle > header { align-items:center; margin-bottom:14px; }
.proto-workstyle > header span { font-size:15px; }
.proto-workstyle > header > small { align-items:center; display:flex; gap:5px; }
.proto-workstyle-grid { gap:10px; }
.proto-workstyle-grid button {
    border-radius:15px;
    min-height:124px;
    padding:14px;
    transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.proto-workstyle-grid button:hover { transform:translateY(-2px); }
.proto-workstyle-grid b { font-size:14px; }
.proto-workstyle-grid small { font-size:12px; }
.proto-workstyle-icon { height:36px; width:36px; }
.proto-workstyle-grid .proto-workstyle-icon > i { font-size:18px; }
.proto-quick-section {
    background:var(--protax-proto-surface,#fff);
    border:1px solid var(--protax-proto-border,#dce8ee);
    border-radius:19px;
    padding:15px 17px 17px;
}
.proto-quick-section > header { align-items:center; display:flex; justify-content:space-between; margin-bottom:10px; }
.proto-quick-section > header strong { color:var(--protax-proto-text,#10253a); font-size:14px; }
.proto-quick-section > header small { color:var(--protax-proto-muted,#617488); font-size:11px; }
.proto-quick-prompts { gap:9px; }
.proto-quick-prompts button { border-radius:13px; min-height:48px; }
.proto-conversation { border-radius:19px; padding:15px; }
.proto-message-avatar { border-radius:12px; flex-basis:40px; height:40px; width:40px; }
.proto-chat-message > div { border-radius:5px 15px 15px 15px; padding:11px 13px; }
.proto-chat-message b { font-size:12px; }
.proto-chat-message p { font-size:13px; line-height:1.55; }
.proto-compose { border-radius:19px; padding:15px 16px; }
.cx-dock .proto-compose textarea { min-height:92px; padding:8px; }
.proto-compose-footer > span > small { color:inherit; display:block; margin-top:3px; opacity:.78; }
.proto-dock-footer a { border-radius:13px; min-height:50px; }
body.erp-proto-dock-open [data-proto-companion] {
    opacity:0 !important;
    pointer-events:none !important;
    visibility:hidden !important;
}
body.erp-proto-dock-open::before {
    background:rgba(3,17,31,.2);
    content:"";
    inset:0;
    pointer-events:none;
    position:fixed;
    z-index:10039;
}
html[data-erp-theme="dark"] body.erp-proto-dock-open::before { background:rgba(0,7,17,.28); }
html[data-erp-theme="dark"] .proto-quick-section {
    background:#10283a;
    border-color:#2e4b5e;
}
html[data-erp-theme="dark"] .proto-quick-section > header strong { color:#f3fbfc; }
html[data-erp-theme="dark"] .proto-quick-section > header small { color:#b7cbd5; }
html[data-erp-theme="dark"] .proto-context-symbol { background:var(--erp-primary-soft,#173447); color:var(--erp-accent-on-dark,#6fe1da); }

@media(max-width:992px) {
    .cp-app ~ .cx-dock { width:min(620px,calc(100vw - 28px)); max-width:calc(100vw - 28px); }
}
@media(max-width:800px) {
    .cp-app ~ .cx-dock { width:100vw; max-width:100vw; }
    body.erp-proto-dock-open .erp-main,body.erp-proto-dock-open .cp-workspace{margin-right:0}
    .cx-dock-resizer{display:none}
}
@media(max-width:650px) {
    :root { --protax-context-dock-width:100vw; }
    .cx-dock-body { padding:14px; }
    .proto-dock-avatar { flex-basis:76px; min-height:92px; }
    .proto-dock-copy .cx-eyebrow { font-size:8px !important; }
    .proto-dock-copy p { display:none; }
    .proto-context-card { align-items:start; grid-template-columns:auto minmax(0,1fr); }
    .proto-context-live { grid-column:2; justify-self:start; }
    .proto-workstyle-grid button { min-height:70px; }
    .proto-quick-section > header small { display:none; }
    .proto-compose-footer > span > small { display:none; }
}

/* 2.7.81: one clear writing action and a resolved firm model in firm-specific views. */
.proto-writing-helper {
    align-items:center;
    background:linear-gradient(135deg,#f7fbff,#effcf9);
    border:1px solid #d5e6eb;
    border-radius:16px;
    display:grid;
    gap:10px;
    grid-template-columns:auto auto 1fr;
    padding:12px 14px;
}
.proto-writing-helper > button:first-child { order:0; }
.proto-writing-helper > .proto-info-tip { order:1; }
.proto-writing-helper > span { align-self:center; grid-column:auto; justify-self:end; order:2; text-align:right; }
.proto-writing-helper > div { display:grid; gap:3px; }
.proto-writing-helper strong { align-items:center; color:#173047; display:flex; font-size:12px; gap:6px; }
.proto-writing-helper strong i { color:#098f88; }
.proto-writing-helper small,.proto-writing-helper > span { color:#6b7c8e; font-size:9px; line-height:1.35; }
.proto-writing-helper button {
    align-items:center;
    background:#087f79;
    border:1px solid #0a938b;
    border-radius:10px;
    color:#fff;
    cursor:pointer;
    display:flex;
    font-size:10px;
    font-weight:850;
    gap:6px;
    min-height:36px;
    padding:8px 11px;
}
.proto-writing-helper button:hover,.proto-writing-helper button:focus-visible { background:#066b67; outline:3px solid rgba(20,166,159,.18); }
.proto-writing-helper > span { grid-column:1/-1; text-align:right; }
html[data-erp-theme="dark"] .proto-writing-helper { background:linear-gradient(135deg,#10283a,#12342f); border-color:#2e4b5e; }
html[data-erp-theme="dark"] .proto-writing-helper strong { color:#f3fbfc; }
html[data-erp-theme="dark"] .proto-writing-helper small,html[data-erp-theme="dark"] .proto-writing-helper > span { color:#b7cbd5; }
@media(max-width:650px) {
    .proto-writing-helper { grid-template-columns:1fr; }
    .proto-writing-helper button { justify-content:center; }
    .proto-writing-helper > span { grid-column:1; text-align:left; }
}

/* Compact assistant layout: keep the workspace readable and the composer visible. */
:root {
    --protax-context-dock-width: 440px;
    --proto-ui-accent: var(--erp-primary, #4565e9);
    --proto-ui-accent-soft: var(--erp-primary-soft, #edf2ff);
    --proto-ui-card: var(--erp-card, #fff);
    --proto-ui-muted-surface: var(--erp-surface-muted, #f7f9fc);
    --proto-ui-border: var(--erp-border, #dce4ee);
    --proto-ui-text: var(--erp-text, #334155);
    --proto-ui-muted: var(--erp-text-light, #667085);
}
#proto-context-dock.cx-dock {
    width: min(var(--protax-context-dock-width), 100vw);
    max-width: min(560px, 100vw);
    background: var(--proto-ui-card, #fff);
    border-left: 1px solid var(--proto-ui-border, #dce4ee);
    box-shadow: -12px 0 36px rgba(15, 23, 42, .12);
    grid-template-rows: auto minmax(0, 1fr);
}
.erp-wrapper ~ #proto-context-dock { top: var(--navbar-height, 72px); }
body.erp-proto-dock-open::before { display: none; }
html body #proto-context-dock .cx-dock-head {
    min-height: 80px !important;
    padding: 12px 88px 12px 16px !important;
    background: var(--proto-ui-card, #fff) !important;
    border-bottom: 1px solid var(--proto-ui-border, #dce4ee);
    color: #334155 !important;
}
#proto-context-dock .cx-dock-head::after,
#proto-context-dock .proto-dock-avatar::before { display: none; }
#proto-context-dock .proto-dock-identity { gap: 10px; }
#proto-context-dock .proto-dock-avatar {
    flex: 0 0 40px;
    width: 40px;
    height: 50px;
    min-height: 0;
    align-self: center;
    background: transparent;
    border: 0;
    border-radius: 10px;
}
html body #proto-context-dock .proto-face-small,
html body #proto-context-dock .erp-proto-mount.proto-face-small {
    width: 40px !important;
    height: 50px !important;
}
#proto-context-dock .proto-dock-copy { gap: 2px; padding: 0; }
html body #proto-context-dock .cx-dock-head h2 {
    color: #172b4d !important;
    font-size: 17px !important;
    line-height: 1.3 !important;
    margin: 2px 0 0;
}
html body #proto-context-dock .cx-dock-head .cx-eyebrow {
    color: #64748b !important;
    font-size: 10px !important;
    line-height: 1.3 !important;
    letter-spacing: .06em;
}
html body #proto-context-dock .cx-dock-head p {
    color: #64748b !important;
    font-size: 11px !important;
    line-height: 1.4 !important;
    margin: 2px 0 0 !important;
}
#proto-context-dock .proto-dock-copy .proto-dock-play-slot {
    position: absolute;
    right: 51px;
    top: 24px;
    margin: 0;
    min-height: 0;
}
html body #proto-context-dock .erp-proto-chat-trigger,
#proto-context-dock .proto-dock-close {
    background: var(--proto-ui-muted-surface, #f2f5fa) !important;
    border: 1px solid var(--proto-ui-border, #dce4ee);
    color: #475569 !important;
    width: 30px;
    height: 30px;
    min-height: 30px;
    border-radius: 8px;
}
#proto-context-dock .proto-dock-close { position: absolute; right: 13px; top: 24px; }
html body #proto-context-dock .erp-proto-chat-trigger:hover:not(:disabled),
html body #proto-context-dock .erp-proto-chat-trigger:focus-visible,
#proto-context-dock .proto-dock-close:hover {
    background: var(--proto-ui-accent-soft, #edf2ff);
    border-color: var(--proto-ui-accent, #315be8);
    color: var(--proto-ui-accent, #315be8);
}
#proto-context-dock .cx-dock-body {
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto auto;
    align-content: stretch;
    gap: 10px;
    min-height: 0;
    overflow: hidden;
    padding: 12px;
}
#proto-context-dock .proto-dock-tools { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px; }
#proto-context-dock .proto-dock-tools > .proto-context-card,
#proto-context-dock .proto-dock-tools > .proto-workstyle { grid-column: 1 / -1; }
#proto-context-dock .proto-context-card {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr) 26px;
    gap: 9px;
    padding: 9px 10px;
    border-radius: 9px;
    box-shadow: none;
    background: var(--proto-ui-muted-surface, #f7f9fc);
    border-color: var(--proto-ui-border, #dce4ee);
}
#proto-context-dock .proto-context-symbol { width: 30px; height: 30px; font-size: 15px; border-radius: 7px; }
#proto-context-dock .proto-context-card strong { font-size: 13px; line-height: 1.35; }
#proto-context-dock .proto-context-card > div > span { font-size: 9px; line-height: 1.3; }
#proto-context-dock .proto-info-tip { width: 26px; height: 26px; font-size: 14px; }
#proto-context-dock .proto-context-card > .proto-context-symbol { grid-column: 1; grid-row: 1; }
#proto-context-dock .proto-context-card > div { grid-column: 2; grid-row: 1; }
#proto-context-dock .proto-context-card > .proto-info-tip { grid-column: 3; grid-row: 1; }
#proto-context-dock .proto-quick-section,
#proto-context-dock .proto-personalization,
#proto-context-dock .proto-workstyle {
    min-width: 0;
    border: 1px solid var(--proto-ui-border, #dce4ee);
    background: var(--proto-ui-card, #fff);
    color: var(--proto-ui-text, #334155);
    border-radius: 8px;
    padding: 8px 10px;
    align-self: start;
}
#proto-context-dock .proto-quick-section > summary,
#proto-context-dock .proto-workstyle > summary,
#proto-context-dock .proto-personalization > summary {
    cursor: pointer;
    font-size: 11px;
    line-height: 1.4;
    font-weight: 650;
    overflow-wrap: anywhere;
}
#proto-context-dock .proto-quick-section > summary small,
#proto-context-dock .proto-workstyle > summary small { display: none; }
#proto-context-dock .proto-quick-prompts { gap: 6px; margin-top: 9px; grid-template-columns: 1fr; }
#proto-context-dock .proto-quick-prompts button { min-height: 34px; padding: 7px 8px; border-radius: 6px; font-size: 11px; box-shadow: none; }
#proto-context-dock .proto-quick-section { position: relative; }
#proto-context-dock .proto-quick-section[open] { z-index: 20; }
#proto-context-dock .proto-quick-section[open] > .proto-quick-prompts {
    position: absolute;
    left: -1px;
    top: calc(100% + 6px);
    width: calc(200% + 8px);
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0;
    padding: 10px;
    border: 1px solid var(--proto-ui-border, #dce4ee);
    border-radius: 9px;
    background: var(--proto-ui-card, #fff);
    box-shadow: 0 8px 24px rgba(15, 23, 42, .12);
}
#proto-context-dock .proto-workstyle-grid { gap: 6px; margin-top: 8px; }
#proto-context-dock .proto-workstyle-grid button { min-height: 76px; padding: 8px; border-radius: 7px; }
#proto-context-dock .proto-workstyle-grid b { font-size: 11px; }
#proto-context-dock .proto-workstyle-grid small { font-size: 10px; }
#proto-context-dock .proto-workstyle-icon { width: 24px; height: 24px; }
#proto-context-dock .proto-workstyle-icon > i { font-size: 13px; }
#proto-context-dock .proto-workstyle-access-note { display: block; font-size: 10px; line-height: 1.4; margin-top: 8px; color: var(--proto-ui-muted, #667085); }
#proto-context-dock .proto-personalization p { font-size: 11px; }
#proto-context-dock .proto-learning-actions { gap: 5px; }
#proto-context-dock .proto-learning-actions button { padding: 5px 7px; font-size: 10px; }
#proto-context-dock .proto-conversation {
    display: block;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    margin: 0;
    padding: 10px;
    border: 1px solid var(--proto-ui-border, #dce4ee);
    border-radius: 10px;
    background: var(--proto-ui-muted-surface, #f7f9fc);
}
#proto-context-dock .proto-message-avatar { width: 26px; height: 26px; flex-basis: 26px; border-radius: 7px; font-size: 12px; }
#proto-context-dock .proto-chat-message { gap: 8px; margin-bottom: 12px; }
#proto-context-dock .proto-chat-message > div { padding: 9px 10px; border-radius: 8px; }
#proto-context-dock .proto-chat-message > div { background: var(--proto-ui-card, #fff); border-color: var(--proto-ui-border, #dce4ee); }
#proto-context-dock .proto-chat-message.is-user > div { background: var(--proto-ui-accent-soft, #edf2ff); border-color: color-mix(in srgb, var(--proto-ui-accent, #4565e9) 25%, var(--proto-ui-border, #dce4ee)); }
#proto-context-dock .proto-chat-message b { font-size: 11px; color: var(--proto-ui-text, #334155); }
#proto-context-dock .proto-chat-message p { font-size: 12px; line-height: 1.55; color: var(--proto-ui-muted, #667085); }
#proto-context-dock .cx-answer { margin: 0; border-radius: 8px; border: 1px solid var(--proto-ui-border, #dce4ee); background: var(--proto-ui-card, #fff); box-shadow: none; }
#proto-context-dock .cx-answer > header { padding: 10px 12px; gap: 7px; font-size: 11px; }
#proto-context-dock .cx-answer [data-cortex-mode] { font-size: 9px; }
#proto-context-dock .cx-answer [data-cortex-answer] { padding: 12px; font-size: 13px; line-height: 1.65; color: var(--proto-ui-text, #334155); overflow-wrap: anywhere; }
#proto-context-dock .cx-answer-sources { padding: 0 12px 12px; }
#proto-context-dock .cx-answer-sources a { font-size: 11px; }
#proto-context-dock .proto-compose { margin: 0; padding: 10px 12px; border: 1px solid var(--proto-ui-border, #dce4ee); border-radius: 10px; background: var(--proto-ui-card, #fff); }
#proto-context-dock .proto-compose label { margin-bottom: 4px; font-size: 11px; }
#proto-context-dock .proto-compose textarea { min-height: 52px; height: 52px; max-height: 110px; padding: 4px 0; font: 13px/1.5 var(--font-family, Inter, "Segoe UI", sans-serif); background: var(--proto-ui-card, #fff); color: var(--proto-ui-text, #334155); }
#proto-context-dock .proto-compose textarea:focus-visible { outline: 2px solid var(--proto-ui-accent, #315be8); outline-offset: 3px; }
#proto-context-dock .proto-compose-footer { margin-top: 6px; padding-top: 7px; gap: 8px; align-items: center; flex-direction: row; }
#proto-context-dock .proto-compose-footer > span { font-size: 9px; line-height: 1.4; }
#proto-context-dock .proto-compose-footer > span > small { display: none; }
#proto-context-dock .proto-compose-footer .cx-primary { min-height: 32px; min-width: 66px; padding: 7px 10px; font-size: 12px; border-radius: 7px; box-shadow: none; }
#proto-context-dock .proto-compose-footer .cx-primary { background: var(--proto-ui-accent, #315be8) !important; border-color: var(--proto-ui-accent, #315be8); color: #fff !important; box-shadow: none !important; }
#proto-context-dock .proto-dock-footer { gap: 12px; align-items: center; justify-content: space-between; }
#proto-context-dock .proto-dock-footer a { min-height: 22px; padding: 0; flex: 0 1 auto; font-size: 10px; border: 0; border-radius: 0; background: transparent; color: var(--proto-ui-muted, #667085); }
#proto-context-dock [hidden] { display: none !important; }
@media (max-width: 1479px) {
    body.erp-proto-dock-open .erp-main,
    body.erp-proto-dock-open .cp-workspace { margin-right: 0; }
}
@media (max-width: 800px) {
    .erp-wrapper ~ #proto-context-dock.cx-dock,
    .cp-app ~ #proto-context-dock.cx-dock { width: 100vw; max-width: 100vw; }
    #proto-context-dock .cx-dock-resizer { display: none; }
}
@media (max-width: 640px) {
    .erp-wrapper ~ #proto-context-dock { top: 64px; }
    #proto-context-dock .proto-quick-section,
    #proto-context-dock .proto-personalization { min-height: 48px; }
}
@media (max-height: 600px) {
    #proto-context-dock .cx-dock-body { overflow-y: auto; grid-template-rows: auto minmax(160px, 1fr) auto auto; }
}
html[data-erp-theme="dark"] #proto-context-dock.cx-dock,
html[data-erp-theme="dark"] #proto-context-dock .cx-dock-head,
html[data-erp-theme="dark"] #proto-context-dock .proto-quick-section,
html[data-erp-theme="dark"] #proto-context-dock .proto-personalization,
html[data-erp-theme="dark"] #proto-context-dock .proto-workstyle,
html[data-erp-theme="dark"] #proto-context-dock .cx-answer,
html[data-erp-theme="dark"] #proto-context-dock .proto-compose,
html[data-erp-theme="dark"] #proto-context-dock .proto-compose textarea { background: #111f31 !important; border-color: #304257; }
html[data-erp-theme="dark"] #proto-context-dock .proto-conversation,
html[data-erp-theme="dark"] #proto-context-dock .proto-context-card { background: #0d1929; border-color: #304257; }
html[data-erp-theme="dark"] #proto-context-dock .cx-dock-head h2,
html[data-erp-theme="dark"] #proto-context-dock .proto-context-card strong,
html[data-erp-theme="dark"] #proto-context-dock .proto-compose label { color: #edf2fa !important; }
html[data-erp-theme="dark"] #proto-context-dock .cx-dock-head .cx-eyebrow,
html[data-erp-theme="dark"] #proto-context-dock .cx-dock-head p { color: #a7b8cc !important; }
html[data-erp-theme="dark"] #proto-context-dock { color-scheme: dark; }
html[data-erp-theme="dark"] #proto-context-dock .proto-chat-message.is-user > div { background: #182d48; border-color: #365274; }
html[data-erp-theme="dark"] #proto-context-dock .proto-chat-message.is-user p,
html[data-erp-theme="dark"] #proto-context-dock .proto-chat-message.is-user b,
html[data-erp-theme="dark"] #proto-context-dock .proto-dock-close,
html[data-erp-theme="dark"] #proto-context-dock .erp-proto-chat-trigger { color: #d7e4f5 !important; }

#proto-context-dock .cx-dock-head { box-shadow: none !important; border-bottom-color: var(--proto-ui-border, #dce4ee) !important; }

/* Read-only answer presentation. Controls, source links and dock sizing stay separate. */
.cx-answer,
.proto-chat-message.is-assistant {
    --proto-answer-text: var(--proto-ui-text, var(--erp-text, #243244));
    --proto-answer-muted: var(--proto-ui-muted, var(--erp-text-light, #526174));
    --proto-answer-heading: var(--erp-heading, var(--proto-ui-text, #172334));
    --proto-answer-border: var(--proto-ui-border, var(--erp-border, #dce4ee));
}

.cx-answer > header,
#proto-context-dock .cx-answer > header {
    display: grid;
    grid-template-columns: 16px minmax(0, 1fr) minmax(0, auto);
    align-items: start;
    gap: 8px;
    padding: 10px 12px;
    text-align: left;
}
.cx-answer > header > i { grid-column: 1; line-height: 1.5; }
.cx-answer > header > b {
    grid-column: 2;
    min-width: 0;
    margin: 0;
    color: var(--proto-answer-heading);
    font-size: 12px;
    line-height: 1.5;
    overflow-wrap: anywhere;
}
.cx-answer > header > [data-cortex-mode],
#proto-context-dock .cx-answer > header > [data-cortex-mode] {
    grid-column: 3;
    max-width: 120px;
    min-width: 0;
    margin: 0;
    color: var(--proto-answer-muted);
    font-size: 11px;
    line-height: 1.45;
    text-align: right;
    white-space: normal;
    overflow-wrap: anywhere;
}

.cx-answer [data-cortex-answer],
#proto-context-dock .cx-answer [data-cortex-answer] {
    min-width: 0;
    padding: 12px;
    color: var(--proto-answer-text);
    font-size: 13px;
    line-height: 1.5;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: normal;
}
.cx-answer .cx-answer-sources,
#proto-context-dock .cx-answer .cx-answer-sources { padding: 0 12px 12px; }

:is(.cx-answer, .proto-chat-message.is-assistant) .cx-answer-document {
    container-type: inline-size;
    container-name: proto-answer;
    min-width: 0;
    color: var(--proto-answer-text);
    font-size: 13px;
    line-height: 1.5;
    text-align: left;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: normal;
}
:is(.cx-answer, .proto-chat-message.is-assistant) .cx-answer-record { margin: 0 0 12px; }
:is(.cx-answer, .proto-chat-message.is-assistant) .cx-answer-record + .cx-answer-record {
    padding-top: 12px;
    border-top: 1px solid var(--proto-answer-border);
}
:is(.cx-answer, .proto-chat-message.is-assistant) .cx-answer-title {
    margin: 0 0 8px;
    color: var(--proto-answer-heading);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.45;
    white-space: normal;
    overflow-wrap: anywhere;
}
:is(.cx-answer, .proto-chat-message.is-assistant) .cx-answer-fields {
    display: grid;
    gap: 6px;
    margin: 0;
    padding: 0;
}
:is(.cx-answer, .proto-chat-message.is-assistant) .cx-answer-field {
    display: grid;
    grid-template-columns: clamp(88px, 36%, 120px) minmax(0, 1fr);
    align-items: start;
    column-gap: 12px;
    row-gap: 3px;
    min-width: 0;
    margin: 0;
    padding: 0;
    text-align: left;
}
:is(.cx-answer, .proto-chat-message.is-assistant) .cx-answer-field > dt {
    min-width: 0;
    margin: 0;
    color: var(--proto-answer-muted);
    font-size: 12px;
    font-weight: 500;
    line-height: 1.5;
    text-align: left;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: normal;
}
:is(.cx-answer, .proto-chat-message.is-assistant) .cx-answer-field > dd {
    min-width: 0;
    margin: 0;
    color: var(--proto-answer-text);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.5;
    text-align: left;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: normal;
    hyphens: none;
}
:is(.cx-answer, .proto-chat-message.is-assistant) .cx-answer-paragraph {
    margin: 0 0 10px;
    color: var(--proto-answer-text);
    font-size: 13px;
    font-weight: 400;
    line-height: 1.5;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    word-break: normal;
}
:is(.cx-answer, .proto-chat-message.is-assistant) .cx-answer-section {
    margin: 12px 0 6px;
    color: var(--proto-answer-heading);
    font-size: 13px;
    font-weight: 600;
    line-height: 1.5;
    white-space: normal;
    overflow-wrap: anywhere;
}
:is(.cx-answer, .proto-chat-message.is-assistant) .cx-answer-list {
    margin: 0 0 10px;
    padding: 0 0 0 18px;
    color: var(--proto-answer-text);
    font-size: 13px;
    line-height: 1.5;
}
:is(.cx-answer, .proto-chat-message.is-assistant) .cx-answer-list > li {
    margin: 0 0 5px;
    padding: 0;
    white-space: normal;
    overflow-wrap: anywhere;
}
:is(.cx-answer, .proto-chat-message.is-assistant) .cx-answer-document > :first-child { margin-top: 0; }
:is(.cx-answer, .proto-chat-message.is-assistant) .cx-answer-document > :last-child { margin-bottom: 0; }

@container proto-answer (width < 280px) {
    :is(.cx-answer, .proto-chat-message.is-assistant) .cx-answer-field { grid-template-columns: minmax(0, 1fr); }
}

html[data-erp-theme="dark"] .cx-answer,
html[data-erp-theme="dark"] .proto-chat-message.is-assistant {
    --proto-answer-text: #e4edf6;
    --proto-answer-muted: #b6c6d8;
    --proto-answer-heading: #f2f6fc;
    --proto-answer-border: #33475c;
}

/* Consecutive simple read-only answer fields; existing answer geometry is retained. */
:is(.cx-answer, .proto-chat-message.is-assistant) .cx-answer-field-group { margin: 0 0 10px; }

/* Full-height assistant with a larger character and comfortable interaction targets. */
html body #proto-context-dock.cx-dock {
    top: 0 !important;
    bottom: 0 !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
}
html body #proto-context-dock .cx-dock-head {
    min-height: 112px !important;
    padding: 12px 112px 12px 16px !important;
}
html body #proto-context-dock .proto-dock-avatar {
    flex: 0 0 72px;
    width: 72px;
    height: 90px;
}
html body #proto-context-dock .proto-face-small,
html body #proto-context-dock .erp-proto-mount.proto-face-small {
    width: 72px !important;
    height: 90px !important;
}
html body #proto-context-dock .erp-proto-chat-trigger,
html body #proto-context-dock .proto-dock-close {
    width: 42px !important;
    height: 42px !important;
    min-height: 42px !important;
    font-size: 17px !important;
}
html body #proto-context-dock .proto-dock-close { top: 30px; right: 12px; }
html body #proto-context-dock .proto-dock-copy .proto-dock-play-slot { top: 30px; right: 64px; }
html body #proto-context-dock .erp-proto-chat-menu { max-width: calc(100vw - 24px); }
html body #proto-context-dock .erp-proto-chat-menu .erp-proto-move {
    min-width: 44px; min-height: 44px; font-size: 19px;
}
@media(max-width:480px) {
    html body #proto-context-dock .cx-dock-head { padding-left:10px !important; padding-right:106px !important; }
    html body #proto-context-dock .proto-dock-identity { gap:8px; }
    html body #proto-context-dock .cx-dock-head h2 { font-size:16px !important; }
}

/* Compact context badge and a larger assistant character. */
html body #proto-context-dock .proto-dock-tools > .proto-context-card {
    width: fit-content;
    max-width: 100%;
    justify-self: start;
    min-height: 42px;
    padding: 6px 10px;
    gap: 8px;
}
html body #proto-context-dock .proto-context-card > div { flex: 0 1 auto; min-width: 0; }
html body #proto-context-dock .proto-context-card strong { font-size: 12px; overflow-wrap: anywhere; }
html body #proto-context-dock .proto-context-symbol { width: 28px; height: 28px; flex-basis: 28px; font-size: 15px; }
html body #proto-context-dock .proto-context-card .proto-info-tip { margin-left: 6px; }
html body #proto-context-dock .cx-dock-head { min-height: 142px !important; }
html body #proto-context-dock .proto-dock-avatar { flex-basis: 96px; width: 96px; height: 120px; }
html body #proto-context-dock .proto-face-small,
html body #proto-context-dock .erp-proto-mount.proto-face-small { width: 96px !important; height: 120px !important; }
@media(max-width:400px) {
    html body #proto-context-dock .cx-dock-head { padding-right: 62px !important; }
    html body #proto-context-dock .proto-dock-copy .proto-dock-play-slot { right:12px; top:82px; }
}

/* Shared ERP assistant: compact identity, conversation-first layout. */
html body #proto-context-dock .cx-dock-head {
 position:relative; box-sizing:border-box;
 height:clamp(118px,16dvh,147px); min-height:0!important;
 flex:0 0 auto; padding:12px 102px 0 106px!important;
 align-items:flex-start;
}
html body #proto-context-dock .proto-dock-avatar {
 position:absolute;left:12px;top:7px;width:80px;height:133px;
 max-height:calc(100% - 14px);overflow:hidden;
}
html body #proto-context-dock .proto-face-small,
html body #proto-context-dock .erp-proto-mount.proto-face-small {
 width:100%!important;height:100%!important;
}
html body #proto-context-dock .proto-dock-avatar .proto-3d-canvas {transform:scale(1.5);transform-origin:center;}
html body #proto-context-dock .cx-dock-head h2 {font-size:16px!important;line-height:1.25;margin:3px 0 0;}
html body #proto-context-dock .cx-dock-head p {font-size:11px;line-height:1.35;margin:4px 0 0;}
html body #proto-context-dock .cx-dock-head > .proto-context-card {
 position:absolute;left:106px;bottom:9px;top:auto;
 width:fit-content;max-width:calc(100% - 118px);min-height:36px;
 padding:5px 8px;gap:6px;margin:0;
 grid-template-columns:24px minmax(0,1fr) 24px;align-items:center;
}
html body #proto-context-dock .proto-context-symbol {width:24px;height:24px;font-size:13px;}
html body #proto-context-dock .proto-context-card .proto-info-tip {margin:0;width:24px;height:24px;}
html body #proto-context-dock .proto-context-card strong {font-size:11px;line-height:1.2;}
html body #proto-context-dock .proto-context-card > div > span {font-size:8px;line-height:1.2;}
html body #proto-context-dock .proto-dock-close {top:12px;right:10px;}
html body #proto-context-dock .proto-dock-copy .proto-dock-play-slot {top:12px;right:56px;}
html body #proto-context-dock .erp-proto-chat-trigger,
html body #proto-context-dock .proto-dock-close {width:38px!important;height:38px!important;min-height:38px!important;}
html body #proto-context-dock .cx-dock-body {padding:8px 12px;gap:6px;}
html body #proto-context-dock .proto-quick-section,
html body #proto-context-dock .proto-personalization {padding:6px 8px;}
html body #proto-context-dock .proto-conversation {padding:10px;border-radius:10px;}
html body #proto-context-dock .proto-compose {padding:9px 10px;gap:6px;}
html body #proto-context-dock .proto-compose textarea {min-height:48px;height:48px;max-height:120px;}
html body #proto-context-dock .proto-compose-footer {padding-top:6px;margin-top:0;}
html body #proto-context-dock .proto-dock-footer {padding:0;min-height:16px;}
@media(max-width:400px) {
 html body #proto-context-dock .cx-dock-head {padding-left:94px!important;padding-right:56px!important;height:132px;}
 html body #proto-context-dock .proto-dock-avatar {left:6px;}
 html body #proto-context-dock .cx-dock-head > .proto-context-card {left:94px;max-width:calc(100% - 104px);}
 html body #proto-context-dock .proto-dock-copy .proto-dock-play-slot {right:10px;top:55px;}
}
html body #proto-context-dock .cx-dock-head {height:clamp(100px,calc(25dvh - 80px),147px);}
html body #proto-context-dock .cx-dock-head p {display:none;}
html body #proto-context-dock .cx-dock-head > .proto-context-card {top:56px;bottom:auto;}
html body #proto-context-dock .proto-compose textarea {overflow-y:auto;}
@media(max-height:800px) {
 html body #proto-context-dock .proto-dock-avatar .proto-3d-canvas {transform:scale(1.15);}
}
@media(max-width:400px) {
 html body #proto-context-dock .cx-dock-head {height:124px;}
 html body #proto-context-dock .cx-dock-head > .proto-context-card {top:76px;}
}

/* Assistant primary actions follow the shared ERP theme. */
html body #proto-context-dock .proto-compose-footer .cx-primary,
html body .cx-workspace .cx-primary {background:var(--erp-primary,#315be8)!important;border-color:var(--erp-primary,#315be8)!important;color:var(--erp-primary-contrast,#fff)!important;-webkit-text-fill-color:var(--erp-primary-contrast,#fff)!important;}
html body #proto-context-dock .proto-compose-footer .cx-primary:hover {background:color-mix(in srgb,var(--erp-primary,#315be8) 88%,#000)!important;}
html body #proto-context-dock .proto-compose-footer .cx-primary:focus-visible {outline:2px solid var(--erp-primary,#315be8);outline-offset:3px;}

/* Shared report tables: literal values, consistent alignment, contained scrolling. */
.cx-answer-document .cx-report-table-wrap{max-width:100%;overflow:auto;margin:12px 0;border:1px solid var(--proto-answer-border,#33475c);border-radius:8px;overscroll-behavior:contain;}
.cx-answer-document .cx-report-table{width:100%;border-collapse:collapse;font-size:12px;line-height:1.5;background:transparent;color:inherit;}
.cx-answer-document .cx-report-table :is(th,td){padding:9px 10px;text-align:left;vertical-align:top;border-bottom:1px solid var(--proto-answer-border,#33475c);min-width:110px;max-width:320px;overflow-wrap:anywhere;white-space:normal;}
.cx-answer-document .cx-report-table th{font-weight:700;background:var(--erp-primary-soft,rgba(100,120,160,.12));color:inherit;}
.cx-answer-document .cx-report-table tr:last-child td{border-bottom:0;}
.cx-answer-document .cx-report-table-wrap:focus-visible{outline:2px solid var(--erp-primary,#315be8);outline-offset:2px;}
