/* Artemia admin — follows the site's charter (public/assets/site.css): teal + coral, cream background, same fonts as the website: Montserrat (titles) / Nunito (text) */
:root{--bar:#0a463f;--bar2:#0f5a51;--bar-t:#eef2ef;--bar-m:#a9c4bd;--blue:#0f6b60;--blue-d:#0a463f;--tealt:#e5f0ed;--coral:#c2694a;--coralt:#f6e8e1;--gold:#b08a4f;
 --bg:#f5f1ea;--line:#e6e2d7;--line2:#efebe3;--ink:#16201d;--muted:#5d6864;--red:#b3402a;--green:#1f7a4d;--amber:#b08a4f;
 --serif:'Montserrat',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--sans:'Nunito',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--r:12px;--shadow:0 1px 2px rgba(20,32,29,.04),0 10px 30px rgba(20,32,29,.05)}
*{box-sizing:border-box}
html,body{margin:0}
body{background:var(--bg);color:var(--ink);font:14px/1.55 var(--sans);-webkit-font-smoothing:antialiased}
a{color:var(--blue);text-decoration:none}a:hover{color:var(--blue-d);text-decoration:underline}
h1{font-family:var(--serif);font-size:30px;font-weight:400;letter-spacing:-.015em;line-height:1.15;margin:0 0 20px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
h2{font-size:14px;font-weight:700;margin:0}
.eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);display:inline-flex;gap:.55em;align-items:center}
.eyebrow::before{content:"";width:24px;height:1px;background:var(--blue)}
/* login / invitation */
.login{max-width:420px;margin:9vh auto;padding:0 16px}
.login .logo{display:block;height:30px;width:auto;margin:0 auto 26px;color:var(--ink)}
.login form{background:#fff;border:1px solid var(--line);border-radius:22px;padding:32px;box-shadow:var(--shadow)}
.login h1{font-size:32px;margin:10px 0 18px}
.login h1+p{margin:-8px 0 18px}
.login label{display:block;margin-bottom:14px;font-size:13px;font-weight:600}
.login input{width:100%;padding:11px 14px;font-size:15px;margin-top:5px;border-radius:10px}
.login .err{color:var(--red);background:var(--coralt);border-radius:10px;padding:9px 12px;margin-bottom:14px}
.login .btn.wide{width:100%;justify-content:center;font-size:15px;padding:12px;margin:6px 0 12px}
/* shell */
/* top bar: brand block aligned with the side menu, publishing group, personal group (notifications, language, account menu) */
#adminbar{position:fixed;top:0;left:0;right:0;height:60px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 1px 0 rgba(20,32,29,.02),0 6px 18px rgba(20,32,29,.04);display:flex;align-items:center;gap:12px;padding:0 18px 0 0;z-index:50}
#adminbar svg{width:18px;height:18px;flex:none}
.ab-brand{width:236px;height:calc(100% + 1px);align-self:flex-start;flex:none;background:var(--bar);display:flex;align-items:center;gap:10px;padding:0 22px}
.ab-brand .brand{display:flex;align-items:center}#adminbar .ab-brand svg.logo{height:21px;width:auto;color:#fff}
.burger{display:none;background:none;border:0;color:#fff;cursor:pointer;padding:6px;margin-left:-6px;border-radius:8px}.burger:hover{background:var(--bar2)}
.ab-site{display:inline-flex;align-items:center;gap:7px;margin-left:10px;padding:7px 12px;border-radius:100px;color:var(--muted);font-size:13px;font-weight:600}
.ab-site:hover{background:var(--tealt);color:var(--blue-d);text-decoration:none}.ab-site svg{width:15px;height:15px}
#adminbar .sp{flex:1}
.ab-pub{display:flex;align-items:center;gap:8px}.ab-pubw{display:flex;align-items:center}.ab-pubw[hidden]{display:none}
#stat{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;padding:6px 12px;border-radius:100px;margin-right:4px;white-space:nowrap}
#stat i{width:8px;height:8px;border-radius:50%;flex:none}
#stat.st-ok{background:#e8f3ee;color:var(--green)}#stat.st-ok i{background:var(--green)}
#stat.st-draft{background:#f7efdf;color:#6d5220}#stat.st-draft i{background:var(--amber)}
#stat.st-dirty{background:var(--coralt);color:#8a3a22}#stat.st-dirty i{background:var(--coral);box-shadow:0 0 0 3px rgba(194,105,74,.18)}
#adminbar .btn{min-height:36px;padding:6px 16px;font-size:13px;white-space:nowrap}
#adminbar .btn.primary{background:var(--coral);border-color:var(--coral);color:#fff}#adminbar .btn.primary:hover:not([disabled]){background:#a5563b;border-color:#a5563b}
#adminbar .btn[disabled]{opacity:.4}
.ab-sep{width:1px;height:28px;background:var(--line);margin:0 4px}
.ab-icon{position:relative;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;color:var(--ink)}
.ab-icon:hover{background:var(--bg);text-decoration:none;color:var(--blue-d)}
.ab-icon .pill{position:absolute;top:2px;right:0;margin:0;font-size:10px;padding:0 5px;min-width:17px;line-height:16px;border:2px solid #fff}
.umenu{position:relative}
.ab-user{display:flex;align-items:center;gap:9px;background:none;border:1px solid transparent;border-radius:100px;padding:4px 10px 4px 4px;cursor:pointer;font:inherit;color:var(--ink)}
.ab-user:hover,.umenu.open .ab-user{background:var(--bg);border-color:var(--line)}
.ab-user .av{width:32px;height:32px;border-radius:50%;background:var(--blue);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:700;letter-spacing:.03em}
.ab-user .nm{font-size:13px;font-weight:600;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ab-user svg{width:15px;height:15px;color:var(--muted);transition:transform .15s}.umenu.open .ab-user svg{transform:rotate(180deg)}
.um-pop{display:none;position:absolute;right:0;top:calc(100% + 8px);width:260px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 40px rgba(20,32,29,.16);padding:6px;z-index:60}
.umenu.open .um-pop{display:block}
.um-head{padding:10px 12px 12px;border-bottom:1px solid var(--line2);margin-bottom:6px;display:grid;gap:2px}
.um-head b{font-size:14px}.um-head span{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis}.um-head .badge{justify-self:start;margin-top:6px;color:#fff}
.um-pop a{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:9px;color:var(--ink);font-size:13.5px;font-weight:500}
.um-pop a:hover{background:var(--bg);text-decoration:none}.um-pop a svg{width:16px;height:16px;color:var(--muted)}
.um-pop a.um-out{color:var(--red)}.um-pop a.um-out svg{color:var(--red)}
#side{position:fixed;top:60px;bottom:0;left:0;width:236px;background:var(--bar);overflow:auto;z-index:40;padding:14px 12px 28px;scrollbar-width:thin}
.side-grp{padding:6px 0 10px;border-bottom:1px solid rgba(255,255,255,.08)}
.side-grp:last-child{border-bottom:0}
.side-h{font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--bar-m);opacity:.75;padding:12px 12px 6px}
#side a{display:flex;align-items:center;gap:11px;padding:8px 12px;margin:1px 0;color:var(--bar-t);font-size:14px;font-weight:500;border-radius:10px;line-height:1.25}
#side a:hover{background:var(--bar2);color:#fff;text-decoration:none}
#side a.on{background:#fff;color:var(--blue-d);font-weight:700;box-shadow:inset 3px 0 0 var(--coral)}
#side .ic{width:18px;height:18px;flex:none;display:grid;place-items:center;opacity:.9}
#side .ic svg{width:18px;height:18px}
#side a.on .ic{opacity:1;color:var(--coral)}
#side .lb{flex:1;min-width:0}
#side a .pill{margin-left:auto}
#side .soon{display:inline-block;margin-left:4px;padding:1px 6px;border-radius:8px;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:rgba(255,255,255,.16);color:var(--bar-t);vertical-align:1px}
#side a.on .soon{background:var(--coral);color:#fff}
#side a.side-other{opacity:.85;font-style:italic}
#side a.sub{display:none;margin:2px 0 6px 30px;padding:6px 10px;font-size:13px;color:var(--bar-t);border:1px dashed rgba(255,255,255,.28);border-radius:9px}
#side a.sub.show{display:flex}
#side a.sub .ic,#side a.sub .ic svg{width:14px;height:14px}
#side a.sub.on{border-style:solid;border-color:#fff}
#main{margin:60px 0 0 236px;padding:28px 32px 60px;transition:margin .2s}
body.pv-open #main{margin-right:52vw}
/* buttons / forms */
.btn{display:inline-flex;align-items:center;gap:.4em;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:100px;padding:6px 16px;min-height:34px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:.15s}
.btn:hover{border-color:var(--ink);color:var(--ink);text-decoration:none}
.btn.primary{background:var(--blue);border-color:var(--blue);color:#fff}.btn.primary:hover{background:var(--blue-d);border-color:var(--blue-d);color:#fff}
.btn.danger{border-color:#e5c3b6;color:var(--red)}.btn.danger:hover{background:var(--coralt);border-color:var(--red)}
.btn.sm{min-height:26px;padding:2px 11px;font-size:12px}
.btn[disabled]{opacity:.45;cursor:default}
.page-title-action{font-family:var(--sans);font-size:13px;font-weight:600;border:1px solid var(--blue);color:var(--blue);border-radius:100px;padding:5px 14px;background:#fff;line-height:1.4;letter-spacing:0}
.page-title-action:hover{background:var(--blue);color:#fff;text-decoration:none}
input[type=text],input[type=email],input[type=password],input[type=date],input[type=url],input[type=number],input[type=search],input:not([type]),select,textarea{border:1px solid #d3cec2;border-radius:8px;padding:7px 10px;font:inherit;background:#fff;color:var(--ink);width:100%}
input:focus,select:focus,textarea:focus{outline:2px solid var(--blue);outline-offset:-1px;border-color:var(--blue)}
input:disabled,textarea:disabled,select:disabled{background:#faf8f4;color:var(--muted)}
input[type=checkbox]{accent-color:var(--blue)}
textarea{resize:vertical}
select{width:auto;max-width:100%}
.fld{display:block;margin:0 0 14px}.fld>span{display:block;font-weight:600;font-size:13px;margin-bottom:4px}
.fld small{color:var(--muted);font-weight:400}
.title-in{font-family:var(--serif);font-size:1.7em;padding:6px 12px;height:auto}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0 14px}
/* boxes */
.layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}
.layout.ref{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 300px}
.box{background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);margin-bottom:20px;overflow:hidden}
.box>h2,.box>.bh{padding:12px 16px;border-bottom:1px solid var(--line2);font-size:14px;display:flex;justify-content:space-between;align-items:center;gap:8px}
.box .in{padding:16px}
.box.ro{opacity:.85}.box.ro .in,.ro-note{background:#faf8f4}
.ro-note{padding:6px 12px;font-size:12px;color:var(--muted);border-bottom:1px solid var(--line2)}
.notice{background:#fff;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:10px;padding:11px 16px;margin:0 0 18px}
.notice.warn{border-left-color:var(--amber)}.notice.err{border-left-color:var(--red);background:#fdf6f3}.notice.ok{border-left-color:var(--green)}
/* tables */
table.wp{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
table.wp th,table.wp td{padding:11px 12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line2)}
table.wp tr:last-child td{border-bottom:0}
table.wp th{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);background:#faf8f4;border-bottom:1px solid var(--line)}
table.wp tbody tr:hover{background:#fbfaf7}
table.wp tr:hover .rowact{visibility:visible}
.c2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:break-word}.c2[title]{cursor:help}table.wp .badge{white-space:nowrap}.badge.asg-x{background:#f6e3dc;color:var(--red)}
table.wp td:has(> .rowact){position:relative}table.wp td > .rowact{position:absolute;left:12px;right:12px;bottom:1px;background:#fbfaf7;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rowact{visibility:hidden;font-size:12px;color:var(--muted);margin-top:2px}
.rowact a,.rowact button{color:var(--blue);background:none;border:0;padding:0;cursor:pointer;font:inherit;font-weight:600}
.rowact .del{color:var(--red)}
td.title strong a{font-size:14px;color:var(--ink)}td.title strong a:hover{color:var(--blue)}
.lg{display:inline-block;min-width:30px;text-align:center;font-size:11px;font-weight:700;padding:1px 6px;border-radius:6px;margin-right:3px;background:#f3f0ea;color:var(--muted);border:1px solid var(--line)}
.lg.ok{background:var(--tealt);color:var(--blue-d);border-color:#c3dcd6}.lg.partial{background:#f7efdf;color:#6d5220;border-color:#e6d3ae}.lg.missing{background:var(--coralt);color:#8a3a22;border-color:#ecc9ba}
.badge{display:inline-block;font-size:11px;font-weight:700;padding:2px 10px;border-radius:100px;background:#eee9df;color:var(--muted)}
.badge.open{background:var(--tealt);color:var(--blue-d)}.badge.draft{background:#f7efdf;color:#6d5220}.badge.closed{background:var(--coralt);color:#8a3a22}
.badge.role-admin{background:var(--blue);color:#fff}.badge.role-editor{background:var(--tealt);color:var(--blue-d)}
.thumb{width:44px;height:44px;object-fit:cover;border-radius:8px;background:#eee9df;vertical-align:middle}
.thumb.lg2{width:110px;height:110px;border-radius:14px}
/* language tabs (Polylang) */
.ltabs{display:flex;gap:4px;margin:0 0 14px;border-bottom:1px solid var(--line)}
.ltabs button{background:none;border:0;border-bottom:2px solid transparent;padding:8px 14px;cursor:pointer;font:inherit;font-weight:600;color:var(--muted);margin-bottom:-1px}
.vtabs a{padding:8px 14px;font-weight:600;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;text-decoration:none}.vtabs a:hover{color:var(--ink);text-decoration:none}.vtabs a.on{border-bottom-color:var(--coral);color:var(--ink)}.vtabs .pill{position:static;display:inline-block;margin-left:4px}
.ltabs button.on{border-bottom-color:var(--coral);color:var(--ink)}
.ltabs .lg{margin:0 0 0 6px;min-width:0}
/* ACF-like layouts */
.lay,.row{border:1px solid var(--line);background:#fff;border-radius:10px;margin-bottom:10px;overflow:hidden}
.lay.dropt,.row.dropt{outline:2px dashed var(--coral)}
.lay-h,.row-h{display:flex;align-items:center;gap:8px;padding:7px 12px;background:#faf8f4;border-bottom:1px solid var(--line2);cursor:default}
.lay.col .lay-b,.row.col .row-b{display:none}.lay.col .lay-h,.row.col .row-h{border-bottom:0}
.handle{cursor:grab;color:#a39d90;user-select:none;letter-spacing:-3px;font-weight:700}
.lay-h b,.row-h b{font-weight:700}
.lay-h .prev,.row-h .prev{color:var(--muted);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}
.lay-btns{display:flex;gap:4px;margin-left:auto}
.ib{border:1px solid var(--line);background:#fff;border-radius:6px;width:26px;height:26px;line-height:22px;cursor:pointer;color:var(--muted);padding:0}
.ib:hover{color:var(--blue);border-color:var(--blue)}.ib.x:hover{color:var(--red);border-color:var(--red)}
.lay-b,.row-b{padding:14px}
.row{margin-bottom:8px}.row-h{padding:5px 10px}
.addbar{display:flex;gap:8px;align-items:center;margin-top:10px}
.tag{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#fff;background:var(--blue);border-radius:100px;padding:1px 8px}
.tag.g{background:var(--gold)}
/* metabox misc */
.lbl-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;gap:8px}
.pub-actions{display:flex;gap:8px;flex-wrap:wrap}
.muted{color:var(--muted)}.small{font-size:12px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.stat{display:flex;gap:10px;flex-wrap:wrap}.stat div{flex:1 1 90px;background:var(--bg);border-radius:10px;padding:12px;text-align:center;color:var(--muted);font-size:12px}
.stat b{display:block;font-family:var(--serif);font-size:30px;font-weight:400;color:var(--blue-d);line-height:1.2}
.stats-list{padding-left:18px;margin:0}.stats-list li{padding:3px 0}
.imgpick{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.imgpick .thumb{width:80px;height:56px}
.linkbox{display:flex;gap:8px}.linkbox input{font-size:12px;font-family:ui-monospace,monospace}
/* preview drawer */
#pvd{position:fixed;top:60px;right:0;bottom:0;width:52vw;background:#fff;border-left:1px solid var(--line);z-index:45;display:none;flex-direction:column;box-shadow:-4px 0 18px rgba(20,32,29,.08)}
body.pv-open #pvd{display:flex}
#pvd header{display:flex;gap:8px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--line2);background:#faf8f4}
#pvd iframe{flex:1;border:0;width:100%}
/* modal + toast */
.ovl{position:fixed;inset:0;background:rgba(22,32,29,.55);z-index:100;display:flex;align-items:center;justify-content:center;padding:16px}
.mdl{background:#fff;width:100%;max-width:500px;border-radius:18px;overflow:hidden;box-shadow:0 20px 60px rgba(20,32,29,.3);max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);display:flex;flex-direction:column}
/* every popup fits the screen (#12): title and buttons stay visible, the content in between scrolls */
.mdl>h2,.mdl>.ft{flex:none}.mdl>.in{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain}
.mdl.wide{max-width:1100px}.inv-off td{opacity:.45}.inv-off td.selcol{opacity:1}
.inv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:0 14px}.inv-wide{grid-column:1/-1}.inv-grid select{width:100%}
.chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}.chip{display:inline-flex;align-items:center;gap:5px;font-size:12px;border:1px solid var(--line);border-radius:100px;padding:3px 10px;cursor:pointer;background:#fff}.chip input{width:auto;margin:0}.chip:has(input:checked){border-color:var(--blue);background:var(--tealt)}
.mdl h2{font-family:var(--serif);font-weight:400;padding:18px 20px 6px;font-size:22px}
.mdl .in{padding:12px 20px 18px}.mdl .ft{padding:12px 20px;border-top:1px solid var(--line2);display:flex;justify-content:flex-end;gap:8px;background:#faf8f4}
#toasts{position:fixed;bottom:18px;right:18px;z-index:200;display:grid;gap:8px}
.toast{background:var(--ink);color:#fff;padding:11px 18px;border-radius:12px;box-shadow:0 6px 20px rgba(20,32,29,.25);max-width:360px}
.toast.err{background:var(--red)}.toast.ok{background:var(--blue)}
.strtab td{padding:6px 8px}.strtab td:first-child{width:22%;font-family:ui-monospace,monospace;font-size:11px;color:var(--muted)}
.strtab tr.grp td{background:var(--tealt);font-weight:700;font-family:inherit;font-size:12px;color:var(--blue-d)}
@media(max-width:960px){.layout,.layout.ref{grid-template-columns:1fr}body.pv-open #main{margin-right:0}#pvd{width:100vw}}
@media(max-width:782px){#side{display:none}#side.open{display:block}#main{margin-left:0;padding:16px}.burger{display:block}.grid2,.grid3{grid-template-columns:1fr}}
@media(max-width:1180px){#stat span,.ab-site span,.ab-user .nm{display:none}#stat{padding:8px}.ab-site{margin-left:4px}}
@media(max-width:782px){.ab-brand{width:auto;padding:0 12px}.burger{display:grid;place-items:center}#adminbar .ab-brand svg.logo{height:16px}.ab-site,.ab-sep{display:none}#adminbar{gap:8px;padding-right:10px}#adminbar .btn{padding:6px 11px}}
@media(max-width:600px){#b-save,.ab-brand .brand,.ab-user svg{display:none}.ab-user{padding:2px}} /* phone: Publish saves first anyway */

.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:-4px 0 16px}
.tb-group{display:inline-flex;align-items:center;gap:6px;padding-left:12px;border-left:1px solid var(--line)}
.tb-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-right:2px}
.dd{position:relative;padding-left:12px;border-left:1px solid var(--line)}.dd summary{list-style:none}.dd summary::-webkit-details-marker{display:none}
.dd-pop{position:absolute;left:12px;top:calc(100% + 6px);min-width:250px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 14px 40px rgba(20,32,29,.16);padding:6px;z-index:60}
.dd-pop a{display:block;padding:9px 12px;border-radius:9px;color:var(--ink);font-size:13.5px;font-weight:500}.dd-pop a:hover{background:var(--bg);text-decoration:none}
#app-filt{align-self:center;color:var(--amber)}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}.filters select,.filters input{width:auto;min-width:200px}
.kv td{padding:4px 14px 4px 0;vertical-align:top}.kv td:first-child{color:var(--muted);white-space:nowrap}
.pill{background:var(--coral);color:#fff;border-radius:10px;font-size:11px;font-weight:700;padding:1px 7px;min-width:20px;text-align:center;margin-left:auto;line-height:1.5}
.badge.st-new{background:#dfe9f5;color:#1d4670}.badge.st-review{background:#f7efdf;color:#6d5220}.badge.st-longlisted{background:#e6eef0;color:#2c5560}.badge.st-shortlisted{background:var(--tealt);color:var(--blue-d)}.badge.st-interview{background:#ece3f3;color:#4b2d6b}.badge.st-rejected{background:var(--coralt);color:#8a3a22}.badge.st-archived{background:#eee9df;color:var(--muted)}
tr[hidden]{display:none}
/* accounts, events, messages */
input[type=datetime-local],input[type=tel]{border:1px solid #d3cec2;border-radius:8px;padding:7px 10px;font:inherit;background:#fff;color:var(--ink);width:100%}
#bell{position:relative;font-size:15px}#bell .pill{position:absolute;top:-8px;right:-12px;margin:0}
tr.unread td{background:#fdf6f3}tr.unread td.title a{font-weight:700}
.badge.bs-received{background:#dfe9f5;color:#1d4670}.badge.bs-in-progress{background:#f7efdf;color:#6d5220}.badge.bs-filled{background:var(--tealt);color:var(--blue-d)}.badge.bs-closed{background:#eee9df;color:var(--muted)}
.thread{display:grid;gap:10px;margin:0 0 20px}
.tmsg{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 16px;max-width:820px}
.tmsg.mine{background:var(--tealt);border-color:#c3dcd6;justify-self:end}
.tmsg.ext{border-left:4px solid var(--coral)}
.tmsg .th{display:flex;gap:8px;align-items:center;margin-bottom:4px}.tmsg .th .muted{margin-left:auto}
.plist{display:grid;gap:4px;max-height:200px;overflow:auto;border:1px solid var(--line2);border-radius:8px;padding:8px 10px}
.plist label{font-weight:400}
/* interface language (FR / EN / DE), per staff member */
.uilang{display:inline-flex;border:1px solid var(--line);border-radius:100px;overflow:hidden;font-size:11px;font-weight:700;vertical-align:middle}
.uilang button{background:none;border:0;padding:4px 9px;cursor:pointer;color:var(--muted);font:inherit;letter-spacing:.03em}
.uilang button.on{background:var(--ink);color:#fff}
.login-lang{display:flex;justify-content:center;margin:-10px 0 16px}

/* application list: tick boxes for exports */
.selcol{width:34px;text-align:center;padding-right:0!important}.selcol input{width:16px;height:16px;cursor:pointer;accent-color:var(--blue)}
.selbar[hidden]{display:none}
.selbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--tealt);border:1px solid #c3dcd6;border-radius:var(--r);padding:8px 12px;margin:0 0 10px;font-size:.9rem}
/* wide lists (People, Companies): scroll sideways inside the page rather than squeezing the columns */
.tscroll{overflow-x:auto;border-radius:var(--r)}.tscroll>table.wp{min-width:980px}
table.ptable td,table.ptable th{padding:9px 10px}table.ptable td:nth-child(2){min-width:190px}
.pfilters select,.pfilters input{min-width:170px;max-width:240px}
table.co-cts td{padding:6px}table.co-cts input:not([type=checkbox]){width:100%;min-width:90px}
/* search: rows that do not match the list's search box; the global search in the top bar */
tr[data-qmiss]{display:none}
.gs{position:relative;display:flex;align-items:center;min-width:0}
.gs>svg{position:absolute;left:12px;width:16px!important;height:16px!important;color:var(--muted);pointer-events:none}
.gs input{width:100%;height:38px;padding:0 14px 0 36px;border:1px solid var(--line);border-radius:100px;background:#faf8f4;font-size:14px}
.gs input:focus{background:#fff;border-color:var(--blue);outline:none;box-shadow:0 0 0 3px var(--tealt)}
.gs-pop{position:absolute;top:46px;left:0;width:min(560px,92vw);max-height:min(70vh,560px);overflow:auto;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 40px rgba(20,32,29,.16);padding:6px 0;z-index:200}
.gs-kind{padding:8px 16px 4px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.gs-kind span{font-weight:600;opacity:.7}
.gs-it{display:block;padding:7px 16px;color:var(--ink);text-decoration:none;line-height:1.35}.gs-it:hover,.gs-it.on{background:var(--tealt);text-decoration:none}
.gs-it b{display:block;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gs-sub,.gs-m{display:block;font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gs-m i{font-style:normal;font-weight:600}
.gs-pop mark{background:#fbe3a8;color:inherit;border-radius:3px;padding:0 1px}
.gs-empty{padding:12px 16px;color:var(--muted);margin:0}.gs-foot{margin:4px 0 0;padding:8px 16px 4px;border-top:1px solid var(--line2);font-size:12px;color:var(--muted)}
.filters .tsearch{min-width:240px}
/* column searches (second header row of the lists) */
table.wp tr.colq th{padding:4px 8px 8px;background:#faf8f4;text-transform:none;letter-spacing:0}
table.wp tr.colq input{width:100%;min-width:70px;height:30px;padding:0 8px 0 26px;font-size:12.5px;border:1px solid var(--line);border-radius:8px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237a8580' stroke-width='2.4' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat 8px center/13px}
table.wp tr.colq input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 2px var(--tealt)}
table.wp thead tr:has(+ .colq) th{border-bottom:0}
/* global search tabs, avatars */
.gs-tabs{display:flex;gap:2px;padding:0 10px;border-bottom:1px solid var(--line2);overflow-x:auto}
.gs-tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:10px 12px 9px;font:inherit;font-size:14px;font-weight:600;color:var(--ink);cursor:pointer;white-space:nowrap}
.gs-tabs button.on{color:var(--blue-d,var(--blue));border-bottom-color:var(--blue)}.gs-tabs button span{font-size:11px;color:var(--muted);font-weight:700}
.gs-it{display:flex;align-items:center;gap:12px}.gs-tx{flex:1;min-width:0}
.gs-av{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--tealt);color:var(--blue);font-weight:700;font-size:13px;border:2px solid #fff;box-shadow:0 0 0 1px var(--line)}
.gs-tags{flex:none;max-width:40%;text-align:right;overflow:hidden;white-space:nowrap}.gs-tags .badge{font-size:10.5px}
/* row actions (Edit | Preview…) get their own line instead of covering the second line of the cell */
table.wp td:has(> .rowact){padding-bottom:32px}table.wp td > .rowact{bottom:9px;background:transparent}
.jtable td.title{min-width:340px;width:34%}
/* column filter: the values of the column, several can be ticked */
.cqpop{position:fixed;z-index:300;width:280px;max-height:340px;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 34px rgba(20,32,29,.16);font-size:13px}
.cqpop .cq-list{overflow:auto;padding:6px 0;flex:1}
.cqpop label{display:flex;align-items:center;gap:8px;padding:5px 12px;cursor:pointer;line-height:1.3}.cqpop label:hover{background:var(--tealt)}
.cqpop label input{width:auto;flex:none}.cqpop label span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cqpop label em{font-style:normal;color:var(--muted);font-size:11.5px}
.cqpop .cq-ft{display:flex;justify-content:space-between;align-items:center;padding:7px 12px;border-top:1px solid var(--line2);color:var(--muted);font-size:12px}
.cqpop .cq-ft button{background:none;border:0;color:var(--blue);font:inherit;font-weight:600;cursor:pointer;padding:0}
.cqpop .cq-empty{padding:10px 12px;color:var(--muted)}
table.wp tr.colq input.has-vals{border-color:var(--blue);background-color:var(--tealt)}
.dd-pop [hidden]{display:none!important}
/* drop zone (emails, files) */
.mdrop{display:flex;flex-direction:column;align-items:center;gap:4px;padding:22px;margin:0 0 14px;border:2px dashed var(--line);border-radius:14px;background:#faf8f4;cursor:pointer;text-align:center}
.mdrop:hover,.mdrop.on{border-color:var(--blue);background:var(--tealt)}
/* job workspace: side menu of the sections, dashboard tiles, milestones */
.jhead h1{margin-bottom:4px}.jhead p{margin:0 0 18px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.jhead .page-title-action{margin-left:auto}
.jws{display:grid;grid-template-columns:190px minmax(0,1fr);gap:24px;align-items:start}
.jnav{position:sticky;top:76px;display:flex;flex-direction:column;gap:2px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:8px}
.jnav a{display:flex;justify-content:space-between;align-items:center;padding:9px 12px;border-radius:9px;color:var(--ink);font-weight:600;font-size:14px;text-decoration:none}
.jnav a:hover{background:#faf8f4}.jnav a.on{background:var(--tealt);color:var(--blue-d,var(--blue))}.jnav a span{font-size:11.5px;color:var(--muted);font-weight:700}
.jbody{min-width:0}.jnarrow{max-width:760px}
.jtiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin:0 0 18px}
.jtile{display:flex;flex-direction:column;gap:2px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:var(--r);color:var(--ink);text-decoration:none}
.jtile:hover{border-color:var(--blue);text-decoration:none}.jtile b{font-size:26px;font-family:var(--serif);line-height:1.1}.jtile span{font-size:12.5px;color:var(--muted);font-weight:600}
.msbar{height:8px;border-radius:8px;background:var(--line2);overflow:hidden;margin:2px 0 6px}.msbar i{display:block;height:100%;background:var(--blue);border-radius:8px}
.late,.late input{color:var(--red)!important;font-weight:700}
table.ms-table td{padding:6px 8px;vertical-align:middle}table.ms-table input:not([type=checkbox]){width:100%}tr.ms-done input[data-p$=".label"]{text-decoration:line-through;color:var(--muted)}
.jpipe{margin:0 0 12px}.chip.on{background:var(--tealt);border-color:var(--blue)}
@media (max-width:900px){.jws{grid-template-columns:1fr}.jnav{position:static;flex-direction:row;overflow-x:auto}.jnav a{white-space:nowrap}}
/* dashboards above the lists */
.ltiles{grid-template-columns:repeat(auto-fit,minmax(118px,1fr))}.ltiles .jtile{padding:12px 14px}.ltiles .jtile b{font-size:22px}
button.jtile{font:inherit;text-align:left;cursor:pointer}button.jtile.on{border-color:var(--blue);background:var(--tealt);box-shadow:0 0 0 2px var(--tealt)}
.jtile.static{background:#faf8f4}.jtile.static b{font-size:20px}
/* Invenias data on the person page: compact form */
.invgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:0 12px}.invgrid.inv3{grid-template-columns:repeat(4,minmax(0,1fr))}
.invf .fld{margin-bottom:8px}.invf .fld>span{font-size:12px}.invf input,.invf select{padding:7px 9px;font-size:13.5px}
.invage{padding:7px 0;font-weight:700}
details.invcat{border:1px solid var(--line2);border-radius:10px;padding:6px 10px;margin:0 0 6px;background:#fff}details.invcat summary{cursor:pointer;font-size:13px;list-style:none;display:flex;flex-wrap:wrap;gap:4px;align-items:center}
details.invcat summary b{min-width:120px}details.invcat[open]{background:#faf8f4}details.invcat .chips{margin-top:8px}
details.invmore{margin-top:6px}details.invmore summary{cursor:pointer;color:var(--blue);font-weight:600;font-size:13px;margin-bottom:8px}
.invsave{position:sticky;bottom:0;background:#fff;padding:10px 0 4px;margin:6px 0 0;border-top:1px solid var(--line2)}
@media (max-width:900px){.invgrid.inv3{grid-template-columns:1fr 1fr}}
.invcats{display:grid;grid-template-columns:1fr 1fr;gap:0 8px;align-items:start}details.invcat[open]{grid-column:1/-1}
@media (max-width:900px){.invcats{grid-template-columns:1fr}}
/* sign-in page: the website's home picture under a teal veil, the card on top */
.login-bg{position:fixed;inset:0;overflow:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 0;
  background:linear-gradient(135deg,rgba(10,70,63,.82) 0%,rgba(10,70,63,.55) 45%,rgba(10,70,63,.25) 100%),url('/images/old_home.webp') center/cover no-repeat,var(--bar)}
.login-bg .login{margin:0 auto;width:100%}
.login-bg .login .logo{color:#fff;filter:drop-shadow(0 2px 8px rgba(0,0,0,.25))}
.login-bg .login form{border:0;box-shadow:0 24px 60px rgba(5,30,27,.35);background:rgba(255,255,255,.97)}
.login-bg .uilang{border-color:rgba(255,255,255,.5);background:rgba(255,255,255,.12)}.login-bg .uilang button{color:#fff}.login-bg .uilang button.on{background:#fff;color:var(--bar)}
.login-foot{margin:22px 0 0;color:rgba(255,255,255,.75);font-size:12px;letter-spacing:.08em;text-transform:uppercase;text-align:center}
/* home dashboard: recruitment, then website */
h2.dsec{font-family:var(--serif);font-size:20px;margin:22px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--line)}h1+h2.dsec{margin-top:6px}
a.jtile{cursor:pointer}.dash2{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
@media (max-width:900px){.dash2{grid-template-columns:1fr}}
/* phones (installed app): denser figures and headings */
@media (max-width:600px){#main h1{font-size:28px;line-height:1.15}.jhead h1{font-size:24px}h2.dsec{font-size:18px}
 .jtiles,.ltiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.jtile,.ltiles .jtile{padding:10px 11px;border-radius:12px}.jtile b,.ltiles .jtile b{font-size:20px}.jtile span{font-size:11.5px;line-height:1.25}
 .jnav a span{margin-left:6px}}
#side a.side-ext .lb::after{content:" ↗";opacity:.7}h2.dsec .btn{margin-left:10px;vertical-align:middle;font-family:var(--sans)}
.jnav-h{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:10px 12px 4px}.jnav-h:first-child{padding-top:4px}
@media (max-width:900px){.jnav-h{display:none}}
/* Invenias export: uploaded CVs and the choice per person */
table.ix-table td{vertical-align:top}table.ix-table input:not([type]),table.ix-table input[data-k]{width:100%;max-width:260px;padding:6px 8px;margin-bottom:4px}
.ix-opt{display:flex;gap:8px;align-items:flex-start;padding:4px 0;font-size:13px;cursor:pointer}.ix-opt input{width:auto;margin-top:3px}
/* resizable columns: a handle on the right edge of each column title */
table.wp thead tr:first-child th{position:relative}
.colrz{position:absolute;top:0;right:-3px;width:7px;height:100%;cursor:col-resize;z-index:2}
.colrz::after{content:"";position:absolute;top:25%;bottom:25%;left:3px;width:1px;background:var(--line)}
table.wp thead tr:first-child th:hover .colrz::after,.colrz:hover::after{background:var(--blue);width:2px}
body.rz,body.rz *{cursor:col-resize!important;user-select:none!important}
/* AI pages: usage dashboard */
.aiuse{margin:0 0 14px}.aiuse .jtiles{margin-bottom:8px}.aiuse p{margin:0}.aiu{white-space:nowrap}
.aiq-out b{color:var(--red)}
.aiuse2{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:4px 22px}.aiuse2 h3{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 6px}
/* choice of AI model */
.aimp-list{display:flex;flex-direction:column;gap:6px;max-height:340px;overflow:auto;padding-right:4px}
.aimp-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:start;padding:9px 12px;border:1px solid var(--line);border-radius:12px;cursor:pointer;background:#fff;font-weight:400}
.aimp-row.on{border-color:var(--blue);background:var(--tealt)}.aimp-row input{width:auto;margin-top:3px}.aimp-cost{text-align:right;white-space:nowrap}
@media (max-width:700px){.aimp-row{grid-template-columns:auto 1fr}.aimp-cost{grid-column:2;text-align:left}}
/* AI → Job descriptions: conversation (left) and the document (right) */
.jdws{display:grid;grid-template-columns:minmax(300px,380px) 1fr;gap:16px;align-items:start}
.jdchat{position:sticky;top:70px;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:14px;max-height:calc(100vh - 90px)}
.jdmsgs{flex:1;overflow:auto;padding:12px;display:flex;flex-direction:column;gap:10px;min-height:200px}
.jdm{max-width:92%}.jdm.user{align-self:flex-end}.jdm .jdb{padding:9px 12px;border-radius:12px;background:var(--tealt);font-size:14px;line-height:1.45;white-space:normal;overflow-wrap:anywhere}
.jdm.user .jdb{background:var(--blue);color:#fff}.jdm.user .jdb .muted{color:#e8f4f2}
.jdmeta{font-size:11px;color:var(--muted,#777);margin:3px 4px 0}.jdm.user .jdmeta{text-align:right}
.jdhint{padding:10px;font-size:14px}.jdhint p{margin:0 0 8px}
.jdform{border-top:1px solid var(--line);padding:10px}.jdform textarea{width:100%;resize:vertical;min-height:64px}
.jdbar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:6px}.jdbar select{flex:1;min-width:140px;max-width:100%;font-size:12px}
.jdform #jd-est{margin:6px 0 0}
.jddoc{min-width:0}.jdtabs{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:8px}
.jdtabs>button,.jdmode button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 14px;cursor:pointer;font:inherit;font-size:14px}
.jdtabs>button.on,.jdmode button.on{background:var(--blue);border-color:var(--blue);color:#fff}
.jdmode{margin-left:auto;display:flex;gap:4px}.jdtools{margin:0 0 8px}
.jdview{background:#efeae0;border-radius:14px;padding:10px;min-height:400px;overflow:hidden}
.jdview .docx-wrapper{background:transparent!important;padding:8px 0!important}.jdview section.docx{box-shadow:0 2px 10px rgba(0,0,0,.12);margin-bottom:14px!important}
.jdedit{background:#fff;border-radius:12px;padding:14px}.jdedit textarea{width:100%;resize:vertical}.jdh{margin:16px 0 8px;display:flex;gap:8px;align-items:center;font-size:15px}
.jdblk{display:grid;grid-template-columns:1fr auto;gap:6px;margin-bottom:10px;padding:8px;border:1px solid var(--line);border-radius:10px}.jdblk input{grid-column:1}.jdblk textarea{grid-column:1}.jdblk button{grid-row:1;grid-column:2}
.jdlogo{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.jdlogo img{max-height:44px;max-width:160px;border:1px solid var(--line);border-radius:6px;background:#fff;padding:2px}
.notice.warn{border-left-color:var(--coral,#be6349)}
.spin{display:inline-block;width:12px;height:12px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:jdspin .8s linear infinite;vertical-align:-1px}@keyframes jdspin{to{transform:rotate(360deg)}}
@media (max-width:900px){.jdws{grid-template-columns:1fr}.jdchat{position:static;max-height:none}.jdmsgs{max-height:50vh}}
.jdview .docx-wrapper section.docx, .jdview .docx-wrapper section.docx *{font-family:Calibri,Carlito,"Segoe UI","Helvetica Neue",Arial,sans-serif!important}
/* dashboard: sections as tabs on top, compact layout */
.dhead{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:0 0 14px}.dhead h1{margin:0}
.dtabs{display:flex;gap:4px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:4px}
.dtabs a{padding:7px 16px;border-radius:999px;font-weight:600;font-size:14px;color:var(--ink);text-decoration:none;white-space:nowrap}
.dtabs a:hover{background:#faf8f4;text-decoration:none}.dtabs a.on{background:var(--blue);color:#fff}
.dash .jtiles{grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:8px;margin:0 0 12px}
.dash .jtile{padding:8px 11px;border-radius:12px;gap:0}.dash .jtile b{font-size:19px}.dash .jtile span{font-size:11.5px;line-height:1.25}
.dash .layout{gap:14px}.dash .box{margin-bottom:12px}.dash .box h2,.dash .box .bh{padding:10px 14px;font-size:15px}.dash .box .in{padding:10px 14px}
.dash table.wp td,.dash table.wp th{padding:6px 10px;font-size:13px}.dash .aiuse h3{font-size:15px;margin:0 0 6px}.dash .cards{gap:12px}
@media (max-width:700px){.dhead{gap:8px}.dtabs{width:100%;overflow-x:auto}.dtabs a{padding:6px 12px;font-size:13px}}
/* appearance: “Compact” (per team member, Settings → Your account) = the whole app at 90 % */
html.compact body{zoom:.9}
.nw{white-space:nowrap}
/* Compact appearance: tighter lines and table rows too */
html.compact body{line-height:1.35}
html.compact table.wp th,html.compact table.wp td{padding:6px 10px}
html.compact table.wp td:has(> .rowact){padding-bottom:24px}html.compact table.wp td > .rowact{bottom:4px}
html.compact .box h2,html.compact .box .bh{padding-top:10px;padding-bottom:10px}html.compact .box .in{padding-top:10px;padding-bottom:10px}
html.compact .fld{margin-bottom:10px}

/* in-app document viewer (phones, installed app) */
.ovl.docv{padding:0;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;background:#4a4f4d;z-index:400}
.docv-bar{display:flex;align-items:center;gap:8px;padding:8px 10px;padding-top:max(8px,env(safe-area-inset-top));background:#fff;border-bottom:1px solid var(--line)}
.docv-t{flex:1;min-width:0;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.docv-body{flex:1;overflow:auto;-webkit-overflow-scrolling:touch;padding:8px;display:flex;flex-direction:column;align-items:center;gap:8px}
.docv-body canvas,.docv-body img{background:#fff;max-width:100%;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.docv-body .docx{background:#fff;max-width:100%;overflow:auto}
.docv-body>p,.docv-body>.notice{background:#fff;padding:10px 12px;border-radius:8px}
/* sortable column titles (#16) */
table.wp thead th.srt{cursor:pointer;user-select:none}table.wp thead th.srt:hover{color:var(--ink)}
table.wp thead th.srt::after{content:"";display:inline-block;width:0;height:0;margin-left:6px;vertical-align:middle;border:4px solid transparent;opacity:0}
table.wp thead th.srt:hover::after{opacity:.35;border-top-color:currentColor;border-bottom-width:0}
table.wp thead th.srt.desc::after{opacity:1;border-top-color:var(--blue);border-bottom-width:0}
table.wp thead th.srt.asc::after{opacity:1;border-bottom-color:var(--blue);border-top-width:0}
/* ---- navigation (#18): one page header everywhere, slim rail on computers, bottom bar on phones ---- */
#main{--mx:32px}
.ph-sent{height:1px;margin-bottom:-1px}
.phead{position:sticky;top:60px;z-index:30;display:flex;align-items:flex-end;justify-content:space-between;gap:10px 18px;flex-wrap:wrap;margin:0 calc(-1 * var(--mx)) 18px;padding:4px var(--mx) 12px;background:var(--bg);transition:box-shadow .15s,padding .15s}
.ph-main{flex:1 1 340px;min-width:0}
.ph-back{display:inline-block;font-size:13px;font-weight:700;color:var(--muted);margin:0 0 2px}.ph-back:hover{color:var(--blue)}
.phead h1{margin:0;transition:font-size .15s}
.ph-n{font-family:var(--sans);font-size:13px;font-weight:700;color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:99px;padding:1px 9px;letter-spacing:0}
.ph-meta{margin-top:6px;display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13.5px}
.ph-act{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.ph-act .dd{border-left:0;padding-left:0}.ph-act .dd-pop{left:auto;right:0}
.ph-i{width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--muted);display:grid;place-items:center;cursor:pointer;padding:0}
.ph-i svg{width:18px;height:18px}.ph-i:hover,.ph-i.on{color:var(--blue);border-color:var(--blue)}.ph-i.on{background:var(--tealt)}
.ph-note{margin-top:-6px}
.phead.stuck{padding-top:10px;padding-bottom:10px;background:rgba(245,241,234,.97);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:0 1px 0 var(--line),0 8px 18px rgba(20,32,29,.05)}
#main .phead.stuck h1{font-size:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.phead.stuck .ph-back,.phead.stuck .ph-meta{display:none}
.phead.stuck .ph-meta:has(.dtabs){display:flex;margin-top:0}
.phead .dtabs{margin:4px 0 0}
.jnav{top:calc(72px + var(--phh, 0px))}
/* other pages: actions written into the title go to the right, like the page header */
#main>h1>.page-title-action:first-of-type{margin-left:auto}
/* ---- computers: navigation like Microsoft Teams — a teal frame (top bar + rail of icons), the list pane of the section
   (its pages, or the records while one is open), then the page; workspace sections as tabs ---- */
body{--navw:72px}body.has-pane:not(.pane-off){--navw:336px}
#adminbar{display:grid;grid-template-columns:minmax(max-content,1fr) minmax(200px,640px) minmax(max-content,1fr);gap:16px;background:var(--bar);border:0;box-shadow:none;padding:0 14px 0 0;color:#fff}
.ab-l{display:flex;align-items:center;min-width:0;height:100%}.ab-l .sp{flex:1}
.ab-r{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}
#adminbar .ab-brand{width:auto;height:100%;align-self:auto;background:none;padding:0;gap:6px}
#ab-pane{margin:0 17px;flex:none}
#adminbar .ab-icon{color:var(--bar-t);width:38px;height:38px;border:0;background:none;cursor:pointer;padding:0}
#adminbar .ab-icon:hover{background:var(--bar2);color:#fff}
@media(max-width:1060px){#adminbar .ab-brand .brand{display:none}}
.ab-nav svg{transform:rotate(90deg)}.ab-nav.fwd svg{transform:rotate(-90deg)}
#adminbar .gs>svg{color:var(--bar-m)}#adminbar .gs:focus-within>svg{color:var(--muted)}
#adminbar .gs input{background:rgba(255,255,255,.13);border-color:transparent;color:#fff;border-radius:10px}
#adminbar .gs input::placeholder{color:var(--bar-m)}
#adminbar .gs input:focus{background:#fff;color:var(--ink);border-color:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.25)}
#adminbar .gs input:focus::placeholder{color:var(--muted)}
#adminbar .ab-sep{background:rgba(255,255,255,.2)}
#adminbar .ab-user{color:#fff;padding:3px}#adminbar .ab-user .nm,#adminbar .ab-user>svg{display:none}
#adminbar .ab-user:hover,#adminbar .umenu.open .ab-user{background:var(--bar2);border-color:transparent}
#adminbar .ab-user .av{background:var(--tealt);color:var(--blue-d);box-shadow:0 0 0 2px rgba(255,255,255,.35)}
#adminbar .btn:not(.primary){background:transparent;border-color:rgba(255,255,255,.4);color:#fff}
#adminbar .btn:not(.primary):hover:not([disabled]){background:var(--bar2);border-color:#fff}
#adminbar .btn[disabled]{opacity:1;background:transparent;border-color:rgba(255,255,255,.18);color:rgba(255,255,255,.4)}
#rail{position:fixed;top:60px;left:0;bottom:0;width:72px;background:var(--bar);z-index:42;display:flex;flex-direction:column;gap:2px;padding:6px 0 12px;overflow-y:auto;overflow-x:visible;scrollbar-width:none}
#rail a{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;margin:0 5px;padding:9px 1px 7px;border-radius:10px;color:var(--bar-m);font-size:10px;letter-spacing:-.01em;font-weight:700;line-height:1.15;text-align:center;text-decoration:none}
#rail a:hover{background:var(--bar2);color:#fff}
#rail a.on{background:rgba(255,255,255,.13);color:#fff}
#rail a.on::before{content:"";position:absolute;left:-5px;top:12px;bottom:12px;width:3px;border-radius:0 3px 3px 0;background:var(--coral)}
#rail .ic svg{width:22px;height:22px;display:block}#rail a.on .ic{color:#fff}
#rail .lb{max-width:100%;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}
@media(min-width:783px){.phead .ph-meta:has(>.dtabs:only-child){display:none}} /* the dashboard views are in the list pane */
#rail .pill{position:absolute;top:3px;right:6px;margin:0;font-size:9.5px;min-width:16px;line-height:15px;padding:0 4px;border:2px solid var(--bar)}
/* the rounded inner corner of the frame */
.frame-corner{position:fixed;top:60px;left:var(--navw);width:14px;height:14px;z-index:41;pointer-events:none;background:radial-gradient(circle at 100% 100%,transparent 13.5px,var(--bar) 14px)}
body.has-pane:not(.pane-off) .frame-corner{left:72px}
#pane{display:none;position:fixed;top:60px;left:72px;bottom:0;width:264px;background:#fff;border-right:1px solid var(--line);z-index:40;flex-direction:column}
body.has-pane:not(.pane-off) #pane{display:flex}
.pn-h{padding:18px 18px 10px}.pn-h h2{font-family:var(--serif);font-size:19px;font-weight:600;letter-spacing:-.01em;margin:0}.pn-h h2 a{color:var(--ink)}
.pn-q{position:relative;margin:0 12px 8px}.pn-q svg{position:absolute;left:10px;top:9px;width:15px;height:15px;color:var(--muted);pointer-events:none}
.pn-q input{width:100%;height:34px;padding:0 10px 0 32px;border:1px solid var(--line);border-radius:9px;background:var(--bg);font-size:13.5px}
.pn-q input:focus{outline:none;background:#fff;border-color:var(--blue);box-shadow:0 0 0 3px var(--tealt)}
.pn-list{flex:1;overflow-y:auto;padding:2px 8px 24px;scrollbar-width:thin}
#pane .pn-list>a:not(.pn-rec){display:flex;align-items:center;gap:11px;padding:9px 12px;margin:1px 0;border-radius:9px;color:var(--ink);font-size:14px;font-weight:500;line-height:1.25;text-decoration:none}
#pane .pn-list>a .ic{width:18px;height:18px;flex:none;color:var(--muted)}#pane .pn-list>a .ic svg{width:18px;height:18px}
#pane .pn-list>a .lb{flex:1;min-width:0}#pane .pn-list>a .pill{margin-left:auto}
#pane .pn-list>a:hover{background:var(--bg)}
#pane .pn-list>a.on{background:var(--tealt);color:var(--blue-d);font-weight:700}#pane .pn-list>a.on .ic{color:var(--coral)}
#pane .soon{display:inline-block;margin-left:4px;padding:1px 6px;border-radius:8px;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:var(--bg);color:var(--muted);vertical-align:1px}
#pane a.side-ext .lb::after{content:" ↗";opacity:.7}
.pn-rec{display:flex;align-items:center;gap:10px;padding:8px 10px;margin:1px 0;border-radius:9px;color:var(--ink);text-decoration:none}
.pn-rec:hover{background:var(--bg);text-decoration:none}.pn-rec.on{background:var(--tealt)}
.pn-av{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--coralt);color:#8a3a22;font-size:12px;font-weight:700;letter-spacing:.02em}
.pn-rec.on .pn-av{background:var(--blue);color:#fff}
.pn-tx{min-width:0;flex:1;line-height:1.3}.pn-tx b{display:block;font-size:13.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pn-tx span{display:block;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nt-ic{display:inline-grid;vertical-align:-3px;margin-right:7px;color:var(--blue)}.nt-ic svg{width:16px;height:16px}.nt-ic.err{color:var(--red)}
.pn-agents{flex:none;padding-bottom:6px}
.pn-hh{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:4px 12px 0;padding:10px 6px 6px;border-top:1px solid var(--line2);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.pn-hh select{font-size:12.5px;padding:3px 6px;border:1px solid var(--line);border-radius:7px;background:#fff;max-width:140px;text-transform:none;letter-spacing:0}
.pn-ic{flex:none;width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:var(--tealt);color:var(--blue)}.pn-ic svg{width:16px;height:16px}
.pn-conv.on .pn-ic{background:var(--blue);color:#fff}.pn-conv .pn-tx i{font-style:normal;color:var(--coral)}
.pn-foot{flex:none;border-top:1px solid var(--line);padding:6px 8px 10px}
#pane .pn-foot>a{display:flex;align-items:center;gap:11px;padding:9px 12px;border-radius:9px;color:var(--ink);font-size:14px;font-weight:500;text-decoration:none}
#pane .pn-foot>a .ic{width:18px;height:18px;color:var(--muted)}#pane .pn-foot>a .ic svg{width:18px;height:18px}#pane .pn-foot>a:hover{background:var(--bg)}
#pane .pn-foot>a.on{background:var(--tealt);color:var(--blue-d);font-weight:700}
.pn-more{margin:8px 10px;font-size:12px;color:var(--muted)}
@media(min-width:783px){
 #side{display:none!important}
 #main{margin-left:var(--navw)}
 .jws:has(>.jtabs){grid-template-columns:minmax(0,1fr);gap:0}
 .jnav.jtabs{position:sticky;top:calc(60px + var(--phh, 0px));z-index:20;flex-direction:row;gap:2px;padding:0;margin:-8px 0 20px;background:var(--bg);border:0;border-bottom:1px solid var(--line);border-radius:0;overflow-x:auto;scrollbar-width:none}
 .jtabs a{padding:10px 12px 9px;border-radius:0;border-bottom:3px solid transparent;white-space:nowrap;margin-bottom:-1px}
 .jtabs a:hover{background:none;color:var(--blue-d)}
 .jtabs a.on{background:none;color:var(--blue-d);border-bottom-color:var(--blue)}
 .jtabs a span{margin-left:6px}
}
/* phones: main sections at the bottom, everything else under More */
#tabbar{display:none}
@media(max-width:782px){
 #main{--mx:16px;padding-bottom:calc(92px + env(safe-area-inset-bottom));overflow-x:clip;max-width:100vw}
 /* nothing may make the page wider than the screen: a wider page moves the « fixed » bottom menu off the screen (#25) — wide
    tables scroll sideways in their own frame */
 html,body{overflow-x:clip}
 #main table.wp{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
 /* …also inside grids / flex rows (job / person workspaces, two-column layouts): their columns must not grow to the table's
    width, else the table is cut off at the edge of the screen (#27); same in popups */
 #main :has(table.wp),.mdl :has(table.wp){min-width:0;max-width:100%}
 .mdl table.wp{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
 .burger{display:none!important}
 #tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--line);box-shadow:0 -6px 18px rgba(20,32,29,.06);padding:4px 4px env(safe-area-inset-bottom)}
 #tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:7px 2px 6px;color:var(--muted);font-size:11px;font-weight:700;text-decoration:none;position:relative;border-radius:12px}
 #tabbar .ic svg{width:22px;height:22px}
 #tabbar a.on{color:var(--blue-d)}#tabbar a.on .ic{color:var(--coral)}
 #tabbar a.on::before{content:"";position:absolute;top:-4px;left:28%;right:28%;height:3px;border-radius:0 0 3px 3px;background:var(--coral)}
 #tabbar .pill{position:absolute;top:2px;left:calc(50% + 6px);font-size:10px;min-width:17px;padding:0 5px}
 #side.open{display:block;left:0;right:0;width:auto;bottom:calc(64px + env(safe-area-inset-bottom));box-shadow:0 -10px 30px rgba(20,32,29,.2);padding-bottom:14px}
 #side .side-rail{display:none}
 #toasts{bottom:calc(80px + env(safe-area-inset-bottom))}
 .phead{top:60px;padding-bottom:10px}
 .phead h1{font-size:26px}
 .ph-main{flex-basis:100%}
 .ph-act{justify-content:flex-start}
 .ph-act .btn{min-height:36px;padding:6px 14px;font-size:13px}
 .ph-act .dd-pop{left:0;right:auto}
 .phead.stuck .ph-act{display:none}#main .phead.stuck h1{font-size:18px}
 .ab-brand,.ab-l,#rail,#pane,.frame-corner{display:none!important}#adminbar{display:flex;padding-left:12px}#adminbar .gs{flex:1 1 auto}body{--navw:0px}
 /* figures in one row that scrolls sideways instead of a block of tiles */
 .jtiles,.ltiles,.dash .jtiles{display:flex;overflow-x:auto;scroll-snap-type:x proximity;gap:8px;margin-left:-16px;margin-right:-16px;padding:0 16px 4px;scrollbar-width:none}
 .jtiles::-webkit-scrollbar{display:none}
 .jtiles>*{flex:0 0 auto;min-width:112px;scroll-snap-align:start}
 .jnav{position:sticky;top:calc(60px + var(--phh, 0px));z-index:20;margin:0 -16px;border-radius:0;border-left:0;border-right:0;scrollbar-width:none}
}
.jdout{margin-left:auto;display:flex;gap:8px;align-items:center}.jdout .dd{border-left:0;padding-left:0}.jdout .dd-pop{left:auto;right:0}
.dd-pop label{display:block;padding:9px 12px;border-radius:9px;color:var(--ink);font-size:13.5px;font-weight:500;cursor:pointer}.dd-pop label:hover{background:var(--bg)}
.jdsaved{margin:-2px 0 8px}.jdsaved:empty{display:none}
.jdhint .jdm{margin:0 0 10px}
.jddrop{display:flex;flex-direction:column;align-items:center;gap:2px;padding:22px 12px;margin:0 0 10px;border:2px dashed var(--line);border-radius:14px;background:#faf8f4;cursor:pointer;text-align:center;font-size:14px}
.jddrop span{font-size:12.5px;color:var(--muted)}.jddrop:hover,.jdchat.drag .jddrop{border-color:var(--blue);background:var(--tealt)}
.jdchat.drag{outline:2px dashed var(--blue);outline-offset:-4px}
.jdct{display:flex;gap:6px;align-items:center;margin:0 0 6px}.jdct select{flex:1;min-width:0}
.jdnote{text-align:center;font-size:12px;color:var(--muted);margin:6px 0}
#jd-undo svg,.jdnote svg{width:15px;height:15px;vertical-align:-3px}#jd-undo{display:inline-flex;gap:6px;align-items:center}
.ph-ask{font-size:21px;line-height:1.3;display:block;text-wrap:balance}.phead.stuck .ph-ask{font-size:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.login-forgot{text-align:center;margin:12px 0 0}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.phead.ph-search{align-items:center}.phead.ph-search .ph-main{display:flex;align-items:center;gap:10px}.phead.ph-search .tsearch{flex:0 1 380px;margin:0}
#isv-table td.selcol,#isv-table th.selcol{width:34px}
/* Invenias export sessions */
.ixlist{margin:0 0 16px}.ixh{display:none}.ixlist>summary{cursor:pointer;margin:0 0 8px;font-size:15px}.ixh{font-family:var(--serif);font-weight:400;font-size:20px;margin:6px 0 10px}
.ixpos{display:inline-flex;align-items:center;gap:6px;font-size:13px}.ixpos select{max-width:320px;padding:4px 8px;font-size:13px}
.jdtabs .ixdot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;background:var(--line);vertical-align:1px}.jdtabs .ixdot.done{background:var(--green)}.jdtabs .ixdot.error{background:var(--red)}.jdtabs button.on .ixdot.done{background:#fff}
.jdtabs button.ixoff{opacity:.5;text-decoration:line-through}
.ixempty{opacity:.55;pointer-events:none}
#ix-view .invf{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}
.jdvers{display:grid;grid-template-columns:240px minmax(0,1fr);gap:16px;min-height:60vh}
.jdv-list{display:flex;flex-direction:column;gap:4px;overflow:auto;max-height:70vh}.jdv-list button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:2px;border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 10px;cursor:pointer;font:inherit;font-size:13px}
.jdv-list button.on{border-color:var(--blue);background:var(--tealt)}.jdv-doc{min-width:0}.jdv-doc .jdtabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 14px;cursor:pointer;font:inherit;font-size:14px}.jdv-doc .jdtabs button.on{background:var(--blue);border-color:var(--blue);color:#fff}
@media(max-width:782px){.jdvers{grid-template-columns:1fr}.jdv-list{max-height:none;flex-direction:row;overflow-x:auto}}
.phead.ph-titled{align-items:flex-end}.phead.ph-titled .ph-main{flex-wrap:wrap}.phead.ph-titled .ph-main h1{flex:1 0 100%;margin:0 0 10px}
.phead.stuck.ph-titled .ph-main h1{display:none}
.ixlist-b{margin:22px 0 0}
.jdpick{display:inline-flex;align-items:center;gap:8px}.jdpick select{min-width:170px;max-width:320px;padding:8px 36px 8px 14px;border-radius:999px;font-weight:700;border:1px solid var(--blue);background:var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23fff' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 14px center;color:#fff;-webkit-appearance:none;appearance:none;cursor:pointer;box-shadow:0 2px 6px rgba(10,70,63,.18)}
.jdpick select:hover,.jdpill:hover{background-color:var(--blue-d)}
.jdpill{min-width:170px;max-width:100%;padding:8px 36px 8px 14px;border-radius:999px;font:700 14px/1.3 var(--sans);border:1px solid var(--blue);background:var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%23fff' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 14px center;color:#fff;cursor:pointer;box-shadow:0 2px 6px rgba(10,70,63,.18);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.jdpick select option,.jdpick select optgroup{background:#fff;color:var(--ink)}
.jdpick .ixdot{display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--line)}.jdpick .ixdot.done{background:var(--green)}.jdpick .ixdot.error{background:var(--red)}
.jdcard{background:#efeae0;border-radius:14px;padding:10px}.jdcard>.jdview{background:none;border-radius:0;padding:0}
.jdpickrow{margin:0 0 8px}.jdpickrow:empty{display:none}.jdpickrow .jdpick select{max-width:100%}
.phead .jdout{margin-left:0}.phead .jdtabs{margin:0}.phead .ph-act .jdout .dd-pop{left:auto;right:0}
.phead .ph-act:has(.jdout){align-self:flex-start;margin-top:24px}.phead.stuck .ph-act:has(.jdout){margin-top:0;align-self:center}
.ixsel{display:flex;flex-direction:column;gap:6px;max-height:50vh;overflow:auto}.ixsel .chk{display:flex;align-items:center;gap:8px}
.ph-titlesel{font:600 13px/1.4 var(--sans);color:var(--ink);border:1px solid var(--line);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%230f6b60' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 12px center;padding:6px 32px 6px 16px;min-height:34px;margin:0;max-width:100%;-webkit-appearance:none;appearance:none;cursor:pointer;border-radius:100px;vertical-align:middle}
.ph-titlesel:hover{border-color:var(--blue)}.ph-titlesel:focus{outline:2px solid var(--blue);outline-offset:2px}.ph-titlesel option{font:13px var(--sans)}
button.ph-titlesel{display:inline-flex;align-items:center;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(100%,520px)}
.tppop{width:330px;max-height:380px}.tppop .tp-q{padding:8px 10px;border-bottom:1px solid var(--line2)}
.tppop .tp-q input{width:100%;padding:7px 10px 7px 32px;border:1px solid var(--line);border-radius:8px;font:13px var(--sans);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235d6864' stroke-width='2.2'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") no-repeat 10px center}
.tppop .cq-list a{display:flex;flex-direction:column;padding:6px 12px;color:var(--ink);text-decoration:none;line-height:1.3}.tppop .cq-list a:hover{background:var(--tealt)}
.tppop .cq-list a.on{font-weight:700;color:var(--blue-d)}.tppop .cq-list a em{font-style:normal;color:var(--muted);font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ixpage{background:#fff;max-width:794px;margin:6px auto 14px;padding:48px 56px;box-shadow:0 2px 10px rgba(0,0,0,.12);font:14px/1.5 Calibri,Carlito,"Segoe UI",Arial,sans-serif;color:#222}
.ixpage h1{font:400 26px/1.2 var(--serif);margin:0 0 4px;color:var(--blue-d)}.ixpage .ixrole{font-size:16px;font-weight:600;margin:0 0 2px}
.ixpage h2{font:700 12px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--blue);margin:22px 0 6px;padding-bottom:4px;border-bottom:1px solid var(--line)}
.ixpage table{border-collapse:collapse;width:100%}.ixpage th{width:34%;text-align:left;font-weight:600;color:var(--muted);padding:3px 10px 3px 0;vertical-align:top}.ixpage td{padding:3px 0;vertical-align:top}
.ixpage p{margin:0 0 8px}.ixpage .badge{margin:0 4px 4px 0}
@media(max-width:782px){.ixpage{padding:24px 18px}}
.jdlinkbox{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:space-between}
.jdatts{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;margin-top:4px}.jdatt{display:inline-flex;align-items:center;gap:4px}
.jdattl{margin-top:6px}.jdattl>div{margin:2px 0}
/* chat bars of the agents: the model list on its own full line (its text is not cut), Send below on the right */
.jdbar select#jd-model,.jdbar select#ix-model{flex:1 1 100%;order:2;min-width:0}
.jdbar #jd-send,.jdbar #ix-send{order:3;margin-left:auto}
.jdbar .jdatts{order:1}
/* the prompt of the AI agents (like Claude's) */
.cmp{margin:0;padding:10px}.cmp-box{border:1px solid var(--line);border-radius:18px;background:#fff;padding:10px 10px 8px 14px;box-shadow:0 1px 4px rgba(20,32,29,.07);transition:border-color .15s,box-shadow .15s}
.cmp-box:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px rgba(15,107,96,.12)}
.cmp textarea{display:block;width:100%;border:0!important;outline:0;resize:none;font:14px/1.5 var(--sans);padding:2px 0 8px;min-height:66px;max-height:50vh;overflow-y:auto;background:transparent;box-shadow:none!important}
.cmp-bar{display:flex;align-items:center;gap:6px}.cmp-sp{flex:1}
.cmp-plus{width:32px;height:32px;border-radius:10px;border:1px solid var(--line);display:grid;place-items:center;cursor:pointer;font-size:17px;line-height:1;color:var(--muted);background:#fff}.cmp-plus:hover{background:var(--bg);color:var(--ink)}
.cmp-model{border:0;background:none;font:600 13px var(--sans);color:var(--muted);display:inline-flex;align-items:center;gap:4px;padding:6px 8px;border-radius:8px;cursor:pointer;max-width:60%;white-space:nowrap}.cmp-model span{overflow:hidden;text-overflow:ellipsis}.cmp-model svg{width:14px;height:14px;flex:none}.cmp-model:hover{background:var(--bg);color:var(--ink)}
.cmp-send{width:34px;height:34px;flex:none;border-radius:10px;border:0;background:var(--coral);color:#fff;display:grid;place-items:center;cursor:pointer}.cmp-send:hover:not(:disabled){background:#a5563b}.cmp-send:disabled{opacity:.35;cursor:default}.cmp-send svg{width:18px;height:18px}.cmp-send.stop{background:var(--ink,#1f2a2a);border-radius:50%}.cmp-send.stop:hover:not(:disabled){background:#000}.cmp-send.stop svg{width:14px;height:14px}
.cmp-atts{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 8px}.cmp-atts:empty{display:none}
.cmp-est{margin:6px 6px 0}.cmp-est:empty{display:none}
.mmenu{width:340px;max-height:420px}.mmenu .cq-list a{gap:2px;padding:8px 12px}.mmenu .cq-list a em.mdesc{white-space:normal;font-size:11.5px}.mmenu .badge{font-size:10px}
.cmp-note{margin:6px 0 0;text-align:center;font-size:11.5px;color:var(--muted)}
.cmp-under{display:flex;justify-content:flex-end;margin:4px 2px 0}.cmp-under .cmp-model{max-width:100%;font-size:12.5px}
/* attachment tiles (like Claude desktop) */
.att{position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;width:58px;height:62px;border:1px solid var(--line);border-radius:10px;background:#faf8f4;color:var(--blue-d);cursor:default}
.att-ic svg{width:22px;height:22px}.att-ext{font:700 10px/1 var(--sans);letter-spacing:.04em;color:var(--muted)}
.att-x{position:absolute;top:-7px;right:-7px;width:20px;height:20px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:10px;line-height:1;display:grid;place-items:center;cursor:pointer;opacity:0;transition:opacity .12s;padding:0}
.att:hover .att-x,.att-x:focus{opacity:1}@media(hover:none){.att-x{opacity:1}}
.att-busy{opacity:.7}.att-busy .spin{width:16px;height:16px}
.jdattl{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.jdattl .att{width:46px;height:50px;background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.35);color:#fff}.jdattl .att .att-ext{color:rgba(255,255,255,.85)}
.jdm.ai .jdattl .att{background:#faf8f4;border-color:var(--line);color:var(--blue-d)}
.greet{text-align:center;padding:34px 12px 10px}.greet-ic{display:inline-grid;place-items:center;color:var(--coral)}.greet-ic svg{width:30px;height:30px}
.greet h2{font:400 26px/1.2 var(--serif);margin:8px 0 6px;color:var(--ink)}.greet p{margin:0 auto;max-width:330px;font-size:13px;color:var(--muted)}
.greet-sug{text-align:center;margin:10px 0 4px}
.invf input.ro{background:var(--bg);color:var(--muted);cursor:default}
.cmp-atts .att[data-act]{cursor:pointer}.cmp-atts .att.on{border-color:var(--blue);background:var(--tealt)}
/* advert form: the fields still to complete stand out */
.jdedit .fld.jdmiss input,.jdedit .fld.jdmiss textarea,.invf .fld.jdmiss input,.invf .fld.jdmiss select{border-color:#e0a24a;background:#fff8ec;box-shadow:0 0 0 2px rgba(224,162,74,.18)}
.jdedit .jdblk.jdmiss{border-color:#e0a24a;background:#fff8ec;box-shadow:0 0 0 2px rgba(224,162,74,.18)}
.hlw{position:relative;display:block}.hlw>.hlb{position:absolute;pointer-events:none;overflow:hidden;white-space:pre-wrap;overflow-wrap:break-word;color:var(--ink,#1d2b2b);box-sizing:border-box}.hlw.hl1>.hlb{white-space:pre;overflow-wrap:normal}
.hlw>.hlx{color:transparent!important;caret-color:var(--ink,#1d2b2b)}.hlw>.hlx::selection{color:transparent}
.hlb mark{background:#ffe45c;color:inherit;border-radius:2px;text-shadow:.4px 0 0 currentColor,-.2px 0 0 currentColor}
.jdmiss-b{background:#fbe3bd;color:#7a4a08;font-size:10.5px;margin-left:6px}.jdmiss-b[hidden]{display:none}
/* which documents (empty advert conversation) */
.greet-docs{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;margin:4px 0 2px;font-size:13px;color:var(--muted)}
.gd-ask{flex-direction:column;gap:8px}.gd-row{display:flex;flex-wrap:nowrap;justify-content:center;gap:6px}.gd-row .chipbtn{white-space:nowrap;padding:5px 10px}
.chipbtn{border:1px solid var(--line);background:#fff;border-radius:999px;padding:5px 12px;font:600 12.5px var(--sans);color:var(--ink);cursor:pointer}.chipbtn:hover{border-color:var(--blue)}.chipbtn.on{background:var(--blue);border-color:var(--blue);color:#fff}
/* AI → Write a commercial proposal: preview = slide pictures with the texts and photos laid over them (1600 × 900, zoomed to fit) */
.pp-deck{display:flex;flex-direction:column;gap:14px}.pp-cap{margin:0 0 4px}
.pp-slide{position:relative;width:1600px;height:900px;background-size:100% 100%;box-shadow:0 1px 6px rgba(0,0,0,.18);overflow:hidden;color:#000}
.pp-txt{position:absolute;display:flex;flex-direction:column;box-sizing:border-box}.pp-txt p{margin:0;white-space:pre-wrap;overflow-wrap:break-word}
.pp-hl{background:#ffff00}.pp-pic{position:absolute}.pp-photo{overflow:hidden;background:#d9d6cf}.pp-photo.round{border-radius:50%}.pp-photo img{width:100%;height:100%;object-fit:cover;object-position:top;display:block}
.pp-num{position:absolute;right:62px;bottom:58px;font:13px Calibri,Carlito,Arial,sans-serif;color:#7f7f7f}.pp-slide.nonum .pp-num{display:none}
.ppopts{display:flex;flex-wrap:wrap;gap:8px 18px;margin:2px 0 12px}.ppopt{display:flex;gap:6px;align-items:center;font-size:13.5px;cursor:pointer}
.jdblk.ppair{display:block}.jdblk.ppair .fld{margin-bottom:6px}
.team-ph{width:40px;height:40px;border-radius:50%;object-fit:cover;object-position:top;display:block}.team-ph.none{background:var(--line2)}

/* editing lock: a form held by someone else is read-only (the server refuses the changes anyway) */
.lockbar{margin:0 0 10px}body.jdro #jd-view :is(input,textarea,select,button,label),body.jdro #ix-view :is(input,textarea,select,button,label){pointer-events:none}
body.jdro #jd-view .jdedit,body.jdro #ix-view .invf{opacity:.75}body.jdro .cmp{opacity:.45;pointer-events:none}body.jdro #jd-keep,body.jdro [data-act="ix-keep"],body.jdro .jdout .dd{display:none}

/* export agent: summary of a reading and the list of what to correct (links to the person / the field) */
.ixsum,.ixtodo ul{margin:6px 0 4px;padding-left:18px}.ixsum li,.ixtodo li{margin:3px 0}.ixtodo .jdb{border:1px solid #f0d9b5;background:#fff8ec}
a.ixfix{color:#7a4a08;font-weight:600}.fld.ixflash input,.fld.ixflash select,.fld.ixflash textarea{box-shadow:0 0 0 3px rgba(217,96,59,.55)!important;transition:box-shadow .3s}
.ixscope{margin:0 0 6px}.ixscope select{font:inherit;font-size:12.5px;padding:2px 6px;border-radius:8px;border:1px solid var(--line)}
details.ixflash,.ixflash>summary{box-shadow:0 0 0 3px rgba(217,96,59,.55);border-radius:10px;transition:box-shadow .3s}

/* person → Profile (AI): the Invenias row shown read-only (changed in the CSV agent only) */
fieldset.invro{border:0;padding:0;margin:0;min-width:0}fieldset.invro input,fieldset.invro select,fieldset.invro textarea{background:transparent;color:inherit;opacity:1;-webkit-text-fill-color:currentColor}

/* application page: two balanced columns (phones: one), review status + note side by side */
.layout2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}
.layout2 .box{margin-bottom:12px}.layout2 .box h2{padding:10px 16px;font-size:15px}.layout2 .box .in{padding:12px 16px}.layout2 .box .in .fld{margin-bottom:10px}
.app-rev{display:grid;grid-template-columns:200px minmax(0,1fr);gap:0 14px;align-items:start}
.dd-pop a.danger{color:var(--red)}
#app-teams-res:empty{display:none}#app-teams-res{margin-bottom:12px}
@media (max-width:980px){.layout2{grid-template-columns:minmax(0,1fr)}}
@media (max-width:600px){.app-rev{grid-template-columns:minmax(0,1fr)}}

/* person page: the application shown in « Applications » */
tr.p-cur td{background:rgba(14,110,99,.07)}
details.pfold{margin:-4px 0 12px}details.pfold>summary{cursor:pointer;font-size:13px;color:var(--teal,#0f6b60);padding:2px 4px;list-style:none}details.pfold>summary::before{content:'▸ '}details.pfold[open]>summary::before{content:'▾ '}details.pfold[open]>summary{margin-bottom:8px}
/* Activity timeline (#/notifications) */
.act-list{list-style:none;margin:0;padding:0;max-width:900px}
.act-day{font:600 12px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:18px 4px 6px}.act-day:first-child{padding-top:0}
.act>a,.act>div{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#fff;border:1px solid var(--line);border-radius:12px;margin-bottom:6px;color:var(--ink);text-decoration:none}
.act>a:hover{border-color:var(--blue);text-decoration:none}
.act.unread>a,.act.unread>div{border-left:3px solid var(--coral);background:#fffdf9}
.act-tx{flex:1;min-width:0;line-height:1.4}.act-tx small{display:block;color:var(--muted);font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.act time{flex:none;font-size:12px;color:var(--muted)}
.act-ic{flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--bg);color:var(--muted)}.act-ic svg{width:17px;height:17px}
.act-ic.mail{background:var(--tealt);color:var(--blue)}.act-ic.err{background:var(--coralt);color:var(--red)}
.seg{display:inline-flex;border:1px solid var(--line);border-radius:100px;background:#fff;padding:3px}
.seg button{border:0;background:none;padding:6px 14px;border-radius:100px;font:600 13px var(--sans);color:var(--ink);cursor:pointer}.seg button.on{background:var(--blue);color:#fff}
/* emoji picker */
.emj{position:relative;display:inline-block}.emj-b{padding:6px 10px!important;font-size:16px;line-height:1}
.emj-pop{position:absolute;bottom:calc(100% + 6px);left:0;z-index:80;display:grid;grid-template-columns:repeat(8,34px);gap:2px;padding:8px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 40px rgba(20,32,29,.18)}
.emj-pop button{width:34px;height:34px;border:0;background:none;border-radius:8px;font-size:19px;cursor:pointer;padding:0}.emj-pop button:hover{background:var(--bg)}
/* comments drawer */
#cmtd{position:fixed;top:60px;right:0;bottom:0;width:min(400px,100vw);background:#fff;border-left:1px solid var(--line);box-shadow:-8px 0 24px rgba(20,32,29,.1);z-index:48;display:flex;flex-direction:column}
#cmtd header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:16px 16px 12px;border-bottom:1px solid var(--line2)}#cmtd header div{display:grid;gap:2px;min-width:0}#cmtd header b{font:600 17px var(--serif)}
#cmt-list{flex:1;overflow-y:auto;padding:12px 16px;display:flex;flex-direction:column;gap:12px}
.cmt{display:flex;gap:10px;align-items:flex-start}.cmt-b{flex:1;min-width:0;background:var(--bg);border-radius:4px 12px 12px 12px;padding:8px 12px;line-height:1.45;overflow-wrap:anywhere}
.cmt.mine .cmt-b{background:var(--tealt)}.cmt-h{display:flex;gap:6px;align-items:baseline;margin-bottom:2px}.cmt-x{margin-left:auto;border:0;background:none;color:var(--muted);cursor:pointer;font-size:12px}
.cmt-at,.act-q .cmt-at{color:var(--blue-d);background:#fff;border-radius:5px;padding:0 3px}
.cmt-cmp{position:relative;border-top:1px solid var(--line2);padding:12px 16px 14px}.cmt-cmp textarea{width:100%;resize:vertical}
.cmt-row{display:flex;gap:8px;align-items:center;margin-top:8px}
#cmt-at{position:absolute;left:16px;right:16px;bottom:calc(100% - 4px);background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 40px rgba(20,32,29,.16);padding:4px;max-height:280px;overflow:auto}
#cmt-at button{display:flex;gap:10px;align-items:center;width:100%;border:0;background:none;padding:6px 8px;border-radius:8px;text-align:left;cursor:pointer;font:inherit}#cmt-at button.on,#cmt-at button:hover{background:var(--tealt)}
#cmt-at small{display:block;color:var(--muted);font-size:11.5px}
.act-q{white-space:normal!important}
.ph-view{color:var(--muted)}
/* AI agents: the session picker sits at the right of the document / person row (not in the header), so the chat and the form start higher */
.phead h1:empty{display:none}.phead h1:empty+.ph-meta{margin-top:0}.phead:has(h1:empty){align-items:center;padding-top:0}
.jdpickrow{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.jdpr-r{margin-left:auto;min-width:0;max-width:65%;display:flex;align-items:center;gap:8px;white-space:nowrap}.jdpr-r>*{min-width:0;overflow:hidden;text-overflow:ellipsis}.jdpr-r .ph-titlesel{max-width:100%}
#main:has(.jdws){padding-top:12px}#main:has(.jdws) .phead{margin-bottom:12px}
/* AI agents like Claude: the conversation alone (centred) until there is a result, then the result panel on the right */
.jdws.solo{grid-template-columns:minmax(0,780px);justify-content:center}.jdws.solo .jddoc{display:none}
.jdws.solo .jdchat{min-height:calc(100vh - 110px)}
.ag-show{align-self:flex-end;margin:10px 10px 0;flex:none}.ag-show[hidden]{display:none!important}
.jdtop{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin:0 0 10px}.jdtop .jdout{margin-left:0}
.ag-x{padding:5px 10px!important}
@keyframes agin{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}
.jdws.ag-in .jddoc{animation:agin .3s ease}
/* AI agents, conversation alone — a quieter, “premium” look like Claude: no card, a large serif greeting with the mark beside it,
   the prompt right below it in the middle of the screen (empty conversation), soft shadow, the model under the prompt */
.jdws.solo{grid-template-columns:minmax(0,800px)}
.jdws.solo .jdchat{background:transparent;border:0;box-shadow:none;max-height:none;min-height:calc(100vh - 100px);position:static}
.jdws.solo .jdchat:has(.greet){justify-content:center;padding-bottom:12vh}
.jdws.solo .jdchat:has(.greet) .jdmsgs{flex:none;min-height:0;overflow:visible;padding:0 12px}
.jdws.solo .greet{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 16px;padding:0 0 22px}
.jdws.solo .greet-ic svg{width:42px;height:42px;stroke-width:1.6}
.jdws.solo .greet h2{max-width:720px;text-align:center;text-wrap:balance;font:400 38px/1.18 'Fraunces',Georgia,serif;font-style:normal;letter-spacing:-.02em;margin:0;color:var(--ink)}
.jdws.solo .greet p{flex-basis:100%;max-width:560px;font-size:14.5px;line-height:1.55;margin-top:4px}
.jdws.solo .greet-docs,.jdws.solo .greet-sug{margin-top:6px}
.jdws.solo .cmp{padding:6px 12px 10px}
.jdws.solo .cmp-box{border:1px solid #d9d4ca;border-radius:22px;padding:16px 14px 12px 22px;background:#fff;box-shadow:0 1px 2px rgba(20,32,29,.04),0 14px 44px rgba(20,32,29,.08)}
.jdws.solo .cmp-box:focus-within{border-color:#c9c3b7;box-shadow:0 1px 2px rgba(20,32,29,.05),0 16px 48px rgba(20,32,29,.11)}
.jdws.solo .cmp textarea{font-size:16px;line-height:1.55;min-height:58px}
.jdws.solo .cmp textarea::placeholder{color:#9a9f9c}
.jdws.solo .cmp-plus{border:0;background:none;font-size:24px;font-weight:300;color:var(--ink);width:36px;height:36px;border-radius:10px}.jdws.solo .cmp-plus:hover{background:var(--bg)}
.jdws.solo .cmp-send{width:36px;height:36px;border-radius:12px}
.jdws.solo .cmp-under{padding:6px 18px 0}.jdws.solo .cmp-under .cmp-model{font-size:13.5px;color:var(--ink);font-weight:500}
.jdws.solo .cmp-note{margin-top:10px;opacity:.8}
.jdws.solo .jdm .jdb{font-size:15px;line-height:1.6}
/* empty agents: suggestions under the prompt, and a FIXED layout (greeting 2 lines, help 3 lines, one row of suggestions, anchored at
   the same height) so that switching from one empty agent to another moves nothing */
.agchips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:12px 6px 0;min-height:34px}
.agchips .chipbtn{padding:6px 14px;border-radius:100px;font-size:13px}
.jdws.solo .jdchat:has(.greet){justify-content:flex-start;padding-top:12vh;padding-bottom:0}
.jdws.solo .greet h2{min-height:calc(2 * 1.18em);display:flex;align-items:center;justify-content:center}
.jdws.solo .greet p{min-height:calc(3 * 1.55em)}
.ixscope:empty{display:none}
/* ==== AI agents with a result — Claude's layout: the conversation without frame (AI text plain, your messages in a light bubble),
   a divider to resize, the result in a full-height panel with its own small header; each side scrolls on its own ==== */
.jdm .jdb{background:none;padding:2px 2px;font-size:15px;line-height:1.65;color:var(--ink)}
.jdm.ai{max-width:100%}.jdm.user{max-width:85%}
.jdm.user .jdb{background:#ebe5da;color:var(--ink);padding:10px 15px;border-radius:16px}.jdm.user .jdb .muted{color:var(--muted)}
.jdm.user .jdb a{color:var(--blue-d)}
.jdmeta{opacity:.75}
.jdsplit{display:none}
@media (min-width:901px){
 #main:has(.jdws:not(.solo)){padding-bottom:12px}
 .jdws:not(.solo){grid-template-columns:minmax(300px,var(--chatw,calc(50% - 7px))) 14px minmax(380px,1fr);gap:0;height:calc(100vh - 84px);align-items:stretch}
 .jdws:not(.solo) .jdchat{position:static;max-height:none;height:100%;min-height:0;background:transparent;border:0;box-shadow:none}
 .jdws:not(.solo) .jdmsgs{padding:8px 14px 8px 4px;gap:14px}
 .jdws:not(.solo) .cmp{padding:6px 6px 4px 0}
 .jdws:not(.solo) .cmp-box{border:1px solid #d9d4ca;border-radius:18px;box-shadow:0 1px 2px rgba(20,32,29,.04),0 8px 24px rgba(20,32,29,.06)}
 .jdws:not(.solo) .jdsplit{display:block;cursor:col-resize;position:relative}
 .jdsplit::after{content:"";position:absolute;top:50%;left:5px;width:4px;height:44px;margin-top:-22px;border-radius:4px;background:#d6d0c4;transition:background .15s}
 .jdsplit:hover::after,body.jd-drag .jdsplit::after{background:var(--blue)}
 body.jd-drag{cursor:col-resize;user-select:none}body.jd-drag iframe{pointer-events:none}
 .jdws:not(.solo) .jddoc{height:100%;min-height:0;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 1px 2px rgba(20,32,29,.04),0 10px 30px rgba(20,32,29,.06)}
 .jdws:not(.solo) .jdtop{flex:none;flex-wrap:nowrap;justify-content:flex-start;gap:6px;margin:0;padding:10px 10px 10px 14px;border-bottom:1px solid var(--line2)}
 .jdws:not(.solo) .jdsaved{flex:none;margin:0;padding:6px 16px 0}
 .jdws:not(.solo) .jdcard{flex:1;min-height:0;overflow:auto;background:#fff;border-radius:0;padding:12px 18px 24px}
 .jdws:not(.solo) .jdview{min-height:0}
}
.jdtop-t{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:8px}
.jdtop-t .ph-titlesel{border:0;background-color:transparent;font:600 15px/1.3 var(--sans);color:var(--ink);padding:6px 26px 6px 4px;max-width:100%;background-position:right 6px center}
.jdtop-t .ph-titlesel:hover{background-color:var(--bg)}
.jdtop-who{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jdtop .btn,.jdtop .dd>summary.btn{min-height:32px;padding:4px 12px;font-size:13px;white-space:nowrap}
.jdtop .jdout{display:flex;gap:6px;align-items:center;flex:none}.jdtop .jdtabs{margin:0;flex:none;flex-wrap:nowrap}
.jdtop #cmt-b{padding:4px 10px}.jdtop .ag-x{border:0;background:none;font-size:15px;color:var(--muted)}.jdtop .ag-x:hover{background:var(--bg);color:var(--ink)}
/* the document chooser of the panel: a quiet outlined pill instead of the big filled one */
.jdcard .jdpick select,.jdcard .jdpill{background-color:#fff;color:var(--blue-d);border-color:var(--line);min-width:0;padding:6px 32px 6px 12px;font-size:13px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%230f6b60' stroke-width='2'/%3E%3C/svg%3E")}
.jdcard .jdpick select:hover,.jdcard .jdpill:hover{background-color:var(--bg)}
/* the conversation list of the AI pane, like Claude: grouped by day, one line each, the agent as a small icon */
.pn-day{font-size:12px;color:var(--muted);padding:14px 10px 4px}.pn-day:first-child{padding-top:4px}
.pn-c{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:8px;color:var(--ink);font-size:14px;text-decoration:none}
.pn-c:hover{background:var(--bg);text-decoration:none}.pn-c.on{background:#ece7de;font-weight:600}
.pn-ct{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pn-c.draft .pn-ct{color:var(--muted)}
.pn-cb{flex:none;font-size:11.5px;color:var(--muted)}
.pn-ci{flex:none;width:16px;height:16px;color:#a7aba8}.pn-ci svg{width:16px;height:16px}.pn-c.on .pn-ci{color:var(--blue)}
.jdtop-t{min-width:140px}
.jdtop .btn:not(.primary),.jdtop .dd>summary.btn{border-color:transparent;background:none;box-shadow:none;color:var(--ink)}
.jdtop .btn:not(.primary):hover:not([disabled]),.jdtop .dd>summary.btn:hover{background:var(--bg)}
.jdtop .btn[disabled]{color:var(--muted)}
.jdtop-t .ph-titlesel{display:block;min-width:0;flex:0 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* result panel header: the document / profile chooser on the left, then Preview/Form · Save · Download only */
.jdtop .jdpickrow{margin:0;flex:0 1 auto;min-width:0;display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.jdtop .jdpickrow:empty{display:none}
.jdtop-sp{flex:1}
.jdtop .jdout{order:2}.jdtop [data-act="jd-toggle"],.jdtop [data-act="ix-toggle"]{order:-1}
/* the other actions (More ▾, comments): a quiet row above the prompt */
.agacts{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:flex-start;padding:4px 2px 0;flex:none}.agacts:empty{display:none}
.jdws.solo .agacts{display:none}
.agacts .btn,.agacts .dd>summary.btn{min-height:30px;padding:3px 11px;font-size:12.5px;border-color:var(--line);background:#fff}
.agacts .dd{position:relative;border:0;padding:0}.agacts .dd-pop{top:auto;bottom:calc(100% + 6px);left:0;right:auto}
/* the chooser in the panel header reads like a title (Claude: the document name + a chevron) */
.jdtop .jdpick select,.jdtop .jdpill{background-color:transparent;color:var(--ink);border:0;font:600 15px/1.3 var(--sans);min-width:0;max-width:100%;padding:6px 28px 6px 6px;border-radius:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%235d6864' stroke-width='2'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}
.jdtop .jdpick select:hover,.jdtop .jdpill:hover{background-color:var(--bg)}
.jdtop .jdpick{min-width:0;max-width:100%}
/* discreet buttons under the prompt, on the left of the model (comments, the export's profile link) */
.cmp-under{align-items:center;gap:4px}.cmp-under>.cmp-model{margin-left:auto}
.cmp-mini{border:0;background:none;padding:5px 8px;border-radius:8px;font:500 12.5px var(--sans);color:var(--muted);cursor:pointer;text-decoration:none;white-space:nowrap}
.cmp-mini:hover{background:var(--bg);color:var(--ink);text-decoration:none}
.jdws.solo #cmt-b{display:none}
/* « What do you want to do next? » — the actions of the result (Preview/Form · Save · Download) in the conversation, above the prompt */
.agnext{flex:none;display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:4px 6px 10px 2px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#fff}
.agnext-q{flex-basis:100%;font-size:13.5px;color:var(--muted);margin-bottom:2px}
.agnext .jdout,.agnext .jdtabs{display:flex;flex-wrap:wrap;gap:8px;margin:0;align-items:center}
.agnext .btn{min-height:32px;padding:4px 14px;font-size:13px;border-radius:100px;border:1px solid var(--line);background:#fff;color:var(--ink)}
.agnext .btn:hover:not([disabled]){border-color:var(--blue);background:var(--tealt)}
.agnext .btn.primary{background:var(--blue);border-color:var(--blue);color:#fff}.agnext .btn.primary:hover:not([disabled]){background:var(--blue-d)}
.agnext [data-act="jd-toggle"],.agnext [data-act="ix-toggle"]{order:-1}
.jdws.solo .agnext{display:none}
/* the panel header keeps only the chooser — none (report, proposal): no header */
.jdtop:not(:has(select,.jdpill)){display:none}
.agnext[hidden]{display:none!important}
/* the « ⋯ » menu under the prompt (comments + the actions of the result, always reachable) */
.agmenu{position:relative;border:0;padding:0;margin:0}.agmenu>summary{list-style:none;font-size:18px;line-height:1;padding:3px 10px}.agmenu>summary::-webkit-details-marker{display:none}
.agmenu .dd-pop{top:auto;bottom:calc(100% + 6px);left:0;right:auto;min-width:210px}
/* documents ready: cards in the conversation (Claude-like), with « Télécharger »; the download button of the actions row is then not repeated */
.agdocs{flex-basis:100%;display:flex;flex-direction:column;gap:8px;margin-bottom:6px}.agdocs:empty{display:none}
.agdoc{display:flex;align-items:center;gap:14px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:#fff;cursor:pointer}
.agdoc:hover{background:#faf8f4;border-color:#d9d4ca}
.agdoc-ic{flex:none;width:48px;height:56px;border:1px solid var(--line);border-radius:6px;background:#faf8f4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--muted)}
.agdoc-ic svg{width:20px;height:20px}.agdoc-ic i{font:700 9px var(--sans);font-style:normal;letter-spacing:.04em;text-transform:uppercase}
.agdoc-tx{flex:1;min-width:0}.agdoc-tx b{display:block;font-weight:600;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agdoc-tx span{font-size:12.5px;color:var(--muted)}
.agdoc .btn{flex:none;border-radius:10px}
.agdoc-all{align-self:flex-start;border-radius:10px}
.agnext:has(.agdocs:not(:empty)) .jdout [data-act="jd-dl"],.agnext:has(.agdocs:not(:empty)) #ix-tabs [data-act="ix-dl"]{display:none}
.agnext:has(.agdocs:not(:empty)){border:0;background:none;padding:0 0 0 2px}
/* document cards: never wider than the conversation (the panel never covers them); compact download button, icon only when narrow */
.jdchat,.agnext,.agdocs{min-width:0;max-width:100%}
.agdocs{container-type:inline-size}
.agdoc{min-width:0;max-width:100%;gap:12px;padding:8px 10px}
.agdoc-ic{width:40px;height:48px}
.agdoc .agdoc-dl,.agdoc-all{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:4px 12px;font-size:13px;border-radius:10px;white-space:nowrap}
.agdoc-dl svg,.agdoc-all svg{flex:none}
@container (max-width:380px){.agdoc-ic{display:none}} /* narrow: the file icon goes, « Télécharger » always stays (like Claude's Download) */
.agdoc .agdoc-dl{background:#fff;border:1px solid #d9d4ca;color:var(--ink);font-weight:600}.agdoc .agdoc-dl:hover{background:var(--bg)}
/* card actions: ✎ / 👁 and 💾 as icons, then « Télécharger »; with cards, the « Que voulez-vous faire ensuite ? » row is not repeated */
.agdoc-acts{flex:none;display:flex;align-items:center;gap:4px}
.agdoc-i{width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:9px;background:none;color:var(--muted);cursor:pointer;padding:0}
.agdoc-i:hover:not([disabled]){background:var(--bg);color:var(--ink)}.agdoc-i[disabled]{opacity:.35;cursor:default}
.agnext:has(.agdocs:not(:empty)) .agnext-q,.agnext:has(.agdocs:not(:empty)) > .jdout,.agnext:has(.agdocs:not(:empty)) > #ix-tabs{display:none}
.agnext:has(.agdocs:not(:empty)) .agdocs{margin-bottom:0}
/* (2026-10-09) no « Que voulez-vous faire ensuite ? » row: the conversation shows only the document cards; the hidden buttons stay
   in the page (their state is kept up to date and the « ⋯ » menu uses the same actions) */
.agnext{border:0;background:none;padding:0 0 0 2px}
.agnext > .jdout,.agnext > #ix-tabs{display:none!important}
.agnext:not(:has(.agdoc,.agchip)){display:none}
/* several documents (2026-10-11): slim chips on one row instead of tall cards — the document shown in the panel is outlined */
.agchips{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.agchip{flex:1 1 220px;min-width:0;display:flex;align-items:center;gap:2px;padding:3px 4px 3px 8px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer}
.agchip:hover{background:#faf8f4;border-color:#d9d4ca}.agchip.on{border-color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue)}
.agchip-ic{flex:none;width:20px;height:22px;margin-right:6px;border:1px solid var(--line);border-radius:4px;background:#faf8f4;display:grid;place-items:center;font:700 10px var(--sans);color:var(--muted)}
.agchip-tx{flex:1;min-width:0;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.agchip .agdoc-i{width:28px;height:28px;flex:none}
.agchip-all{flex:none;width:auto!important;padding:0 8px!important;gap:3px;display:inline-flex!important;align-items:center;border:1px solid var(--line)!important;background:#fff!important}
.agchip-all b{font-size:12px;font-weight:700}
.pn-hh select{max-width:150px;min-width:0}
/* the list pane can be resized (drag its right edge, `--panew`, localStorage `pane-w`) */
body{--panew:264px}
@media(min-width:783px){
 body.has-pane:not(.pane-off){--navw:calc(72px + var(--panew))}
 #pane{width:var(--panew)}
 #pane-rz{display:none;position:fixed;top:60px;bottom:0;left:calc(72px + var(--panew) - 4px);width:8px;cursor:col-resize;z-index:43}
 body.has-pane:not(.pane-off) #pane-rz{display:block}
 #pane-rz::after{content:"";position:absolute;top:0;bottom:0;left:3px;width:2px;background:transparent;transition:background .15s}
 #pane-rz:hover::after,body.jd-drag #pane-rz::after{background:var(--blue)}
}
.pn-hh select{max-width:none;flex:0 1 auto;min-width:0}
.ixask{margin-top:10px;padding-top:10px;border-top:1px solid var(--line2);display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-weight:600}
/* ==== the page of a person (2026-10-09): ONE card, sections separated by thin lines, no pile of boxes ==== */
.pv2{background:#fff;border:1px solid var(--line);border-radius:16px;padding:6px 24px 10px;box-shadow:var(--shadow)}
.pv2 .box{border:0;box-shadow:none;background:none;margin:0;padding:0}.pv2 .box>h2{display:none}.pv2 .box>.in{padding:0}
.pv-sec{padding:18px 0;border-top:1px solid var(--line2)}.pv-sec>h3{margin:0 0 12px;font:600 16px var(--sans);color:var(--ink)}
.pv-top{display:grid;grid-template-columns:minmax(260px,1fr) minmax(0,1.4fr);gap:24px;padding:18px 0}
.pv-facts{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.pv-facts span{background:var(--tealt);color:var(--blue-d);font-weight:700;font-size:13px;border-radius:100px;padding:3px 12px}
.pv-role{font:600 17px/1.35 var(--sans);margin-bottom:2px}
.pv-contact{display:flex;flex-direction:column;gap:4px;margin:12px 0}.pv-contact a{display:inline-flex;align-items:center;gap:7px;font-size:14px}.pv-contact svg{width:15px;height:15px}
.pv-cv{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.pv-cv .btn{display:inline-flex;gap:7px;align-items:center}.pv-cv svg{width:16px;height:16px}
.pv-cats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px 18px;align-content:start}
.pv-cat b{display:block;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:5px}.pv-cat .badge{margin:0 4px 4px 0}
#pv-summary{max-width:860px}.pv-sumb h4{margin:12px 0 4px;font:700 12px var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.pv-sumb:first-child h4{margin-top:0}
.pv-sumb p{margin:0 0 3px;line-height:1.6}
.pv-ai{margin-top:10px}
.pv-apps{display:flex;flex-direction:column;gap:10px}
.pv-app{border:1px solid var(--line2);border-radius:12px;padding:12px 14px}.pv-app.on{border-color:var(--blue);box-shadow:0 0 0 2px var(--tealt)}
.pv-app-h{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.pv-app-st{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.pv-tl{list-style:none;margin:10px 0 0;padding:0 0 0 14px;border-left:2px solid var(--line2);display:flex;flex-direction:column;gap:4px;font-size:13px}
.pv-tl li{position:relative}.pv-tl li::before{content:"";position:absolute;left:-19px;top:7px;width:8px;height:8px;border-radius:50%;background:var(--line)}.pv-tl li:last-child::before{background:var(--blue)}
.pv-tl time{color:var(--muted);margin-right:6px;font-variant-numeric:tabular-nums}
.pv-fold{border-top:1px solid var(--line2)}.pv-fold:first-child{border-top:0}.pv-fold>summary{cursor:pointer;padding:12px 0;font-weight:600;list-style:none}.pv-fold>summary::before{content:"▸ ";color:var(--muted)}.pv-fold[open]>summary::before{content:"▾ "}
.pv-fold-in{padding:0 0 14px}
#p-review .pv-fold{margin-top:6px}
.pv-rest{padding-top:4px}
@media(max-width:900px){.pv-top{grid-template-columns:1fr}.pv2{padding:4px 14px}}
/* mandate & company overviews (same card as the person page) + their other tabs as one card */
.pv-figs{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.pv-fig{display:inline-flex;gap:5px;align-items:baseline;padding:5px 12px;border:1px solid var(--line);border-radius:100px;font-size:13px;color:var(--ink);text-decoration:none}
.pv-fig b{font-size:15px}.pv-fig:hover{border-color:var(--blue);background:var(--tealt);text-decoration:none}
.pv-h{margin:0 0 8px;font:600 14px var(--sans)}.pv-people{display:flex;flex-direction:column;gap:8px}
.pv-list{border:0}.pv-list td{border-left:0;border-right:0}
.pv-note{white-space:pre-wrap;margin:8px 0 0}
.pv-tab{padding-top:10px;padding-bottom:10px}.pv-tab .box{border:0;border-top:1px solid var(--line2);border-radius:0;margin:0;padding:6px 0}.pv-tab .box:first-child{border-top:0}
.pv-tab .box>h2{display:block;padding:12px 0 6px;border:0;background:none;font:600 16px var(--sans)}.pv-tab .box>.in{padding:4px 0 10px}
.pv-tab>.layout,.pv-tab .layout{gap:0 28px}
/* a mandate card of the person page: its own status (select) and private note */
.pv-st{font:600 12.5px var(--sans);border:1px solid var(--line);border-radius:100px;padding:4px 26px 4px 10px;background-color:#fff}
.pv-note-d{margin-top:8px}.pv-note-d>summary{cursor:pointer;font-size:12.5px;color:var(--muted)}.pv-note-d textarea{width:100%;margin-top:6px;font-size:13.5px}
/* mandate page (2026-10-09): one card, no tabs — status first, short list cards, candidates grouped by status, parts folded */
.mx-st .fld select{font-weight:700}.mx-st{margin-bottom:6px}
.mx-links{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}
.jf{scroll-margin-top:calc(80px + var(--phh, 0px))}#jf-shortlist,#jf-candidates{scroll-margin-top:calc(80px + var(--phh, 0px))}
.jf .box{margin:0 0 6px}.jf .box>h2{display:block;padding:10px 0 4px;border:0;background:none;font:600 14px var(--sans)}.jf .jnarrow{max-width:none}
.jc-short{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.jc-card{border:1px solid var(--line2);border-left:4px solid var(--blue);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:4px}
.jc-card.st-interview{border-left-color:#7b5aa6}.jc-card-f{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:4px}.jc-card-f svg{width:14px;height:14px;vertical-align:middle}
.jc-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.jc-h h3{margin:0}
.jc-bar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 10px}.jc-bar .chip{cursor:pointer}.jc-bar .jpipe{margin:0 0 0 8px}
.jc-tab tr.grp td{background:var(--tealt);font-weight:700;font-size:12.5px;color:var(--blue-d);cursor:pointer;user-select:none}
.jc-tab tr.grp:hover td{background:#d6ece9}
.pv-top.mx-top{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}.jc-tools{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
@media(max-width:900px){.pv-top.mx-top{grid-template-columns:1fr}}
/* mandate timeline (taken from the commercial proposal) + alerts + client contacts (2026-10-09) */
.mx-verdict{font:700 12.5px var(--sans);border-radius:100px;padding:4px 12px;background:#eee9df;color:var(--muted)}
.mx-verdict.ok,.mx-verdict.ahead{background:#e8f3ee;color:var(--green)}.mx-verdict.risk,.mx-verdict.wait{background:#f7efdf;color:#6d5220}.mx-verdict.late{background:var(--coralt);color:#8a3a22}
.tl{position:relative;padding:26px 0 4px}
.tl-track{position:absolute;left:0;right:0;top:41px;height:4px;border-radius:4px;background:var(--line2)}.tl-track i{display:block;height:100%;border-radius:4px;background:var(--blue)}
.tl-today{position:absolute;top:0;transform:translateX(-50%);font:700 10.5px var(--sans);letter-spacing:.05em;text-transform:uppercase;color:var(--coral);white-space:nowrap}
.tl-today::after{content:"";position:absolute;left:50%;top:15px;width:2px;height:22px;background:var(--coral);transform:translateX(-50%)}
.tl-steps{list-style:none;margin:0;padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:8px;position:relative}
.tl-s{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px}
.tl-dot{width:22px;height:22px;border-radius:50%;border:3px solid var(--line);background:#fff;color:#fff;font:700 12px/1 var(--sans);cursor:pointer;padding:0;margin-bottom:6px;display:grid;place-items:center}
.tl-dot:hover{border-color:var(--blue)}
.tl-s.done .tl-dot{background:var(--green);border-color:var(--green)}.tl-s.lated .tl-dot{background:var(--amber);border-color:var(--amber)}
.tl-s.late .tl-dot{border-color:var(--coral);background:var(--coralt)}.tl-s.soon .tl-dot{border-color:var(--amber)}
.tl-s b{font-size:13px}.tl-st{color:var(--muted)}.tl-s.late .tl-st{color:#8a3a22;font-weight:700}.tl-s.soon .tl-st{color:#6d5220}
.tl-edit{margin-top:12px}.tl-edit>summary{list-style:none;display:inline-flex}.tl-edit>summary::-webkit-details-marker{display:none}
.tl-tab{margin:10px 0}.tl-tab th{text-align:left;font-size:11.5px;color:var(--muted);font-weight:700;padding:4px 8px}.tl-tab td{padding:4px 8px;vertical-align:top}.tl-tab input{width:auto}
.mx-alert{border-radius:10px;padding:8px 12px;margin:0 0 10px;font-size:13.5px;background:#f7efdf;color:#6d5220}.mx-alert.err{background:var(--coralt);color:#8a3a22;font-weight:600}
.mx-cts{display:flex;flex-direction:column;gap:6px;margin:8px 0}.mx-ct{position:relative;border:1px solid var(--line2);border-radius:10px;padding:7px 30px 7px 10px}
.mx-ct .small a{display:inline-flex;align-items:center;gap:5px;margin-right:10px}.mx-ct svg{width:14px;height:14px}
.mx-ct-x{position:absolute;top:6px;right:6px;border:0;background:none;color:var(--muted);cursor:pointer;font-size:13px}.mx-ct-x:hover{color:var(--coral)}
#jct{margin:6px 0 12px}
.act-ic.alert{background:#f7efdf;color:#9a5b12}
@media(max-width:700px){.tl-steps{grid-auto-flow:row;grid-template-columns:repeat(2,1fr)}.tl-track,.tl-today{display:none}}
.tl-s.wait .tl-dot{border-style:dashed}.pv-id>.pv-h{margin-top:14px}.pv-id>.pv-h:first-of-type{margin-top:6px}
.pv2>.pv-sec:first-child{border-top:0}
.jct-dd .dd-pop{min-width:300px;max-height:360px;overflow:auto}.jct-q{margin:6px 8px;width:calc(100% - 16px)}.jct-h{font:700 11px var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:8px 12px 2px}.jct-hint{padding:2px 12px 8px;margin:0}
.jc-long .jc-card{border-left-color:#2c5560}
/* mandate: how long it has been open and in each status */
.mx-age{display:flex;align-items:center;gap:14px;margin:0 0 16px}.ag-c{font-size:12px;color:var(--muted);white-space:nowrap}
.ag-tl{display:flex;gap:3px;list-style:none;margin:0;padding:0;flex:1;min-width:0}
.ag-s{min-width:84px;border-radius:6px;padding:4px 9px;display:flex;flex-direction:column;line-height:1.25;overflow:hidden;background:var(--line2);color:var(--muted);border-top:3px solid var(--line)}
.ag-s b{font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ag-s span{font-size:11px;white-space:nowrap}
.ag-lead{border-top-color:var(--gold)}.ag-act{border-top-color:var(--blue)}.ag-off{border-top-color:var(--coral)}.ag-won{border-top-color:var(--green)}.ag-done{border-top-color:var(--muted)}.ag-lost{border-top-color:var(--red)}
.ag-s.on{background:var(--tealt);color:var(--ink)}.ag-s.on.ag-off{background:var(--coralt)}.ag-s.on.ag-lost{background:#f6e3dc}
@media (max-width:782px){.mx-age{flex-direction:column;align-items:stretch;gap:6px}.ag-tl{overflow-x:auto}}
.pv2>.mx-age:first-child+.pv-top{border-top:0}
/* mandate top: client contacts | consultants on one line, compact cards */
.mx-ppl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;margin-top:4px}.mx-ppl .pv-h{margin-top:4px}
.mx-ppl .mx-cts{margin:4px 0 6px}.mx-ppl #jct{margin:0}.mx-ppl .mx-ct{padding:6px 28px 6px 10px;font-size:13px}.mx-ppl p.muted{margin:4px 0}
.mx-st .fld select{max-width:260px}
@media(max-width:700px){.mx-ppl{grid-template-columns:1fr}}
/* mandate header: the assignment status is a badge you can change */
select.badge.asg-sel{appearance:none;-webkit-appearance:none;border:0;font:inherit;font-weight:700;font-size:12px;cursor:pointer;padding:3px 24px 3px 10px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2316201d' fill='none' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center}
select.asg-sel:hover{filter:brightness(.96)}select.asg-sel:focus-visible{outline:2px solid var(--blue);outline-offset:1px}

/* ＋ New (2026-10-11): top bar menu (mandate / person / company typed by hand) + ＋ in the list pane's title */
.ab-new{position:relative}.ab-new>summary{list-style:none;white-space:nowrap;border-radius:10px}.ab-new>summary::-webkit-details-marker{display:none}
.ab-new .dd-pop{right:0;left:auto;min-width:190px}.ab-new .dd-pop a{display:flex;align-items:center;gap:10px}.ab-new .dd-pop svg{width:16px;height:16px;flex:none}
.pn-h{display:flex;align-items:center;justify-content:space-between;gap:8px}
.pn-new{flex:none;width:30px;height:30px;border-radius:9px;border:1px solid var(--line);background:#fff;color:var(--blue);font-size:17px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0}
.pn-new:hover{background:var(--tealt);border-color:var(--blue)}
@media (max-width:782px){.ab-new>summary{padding:6px 10px}}
