:root{--bg:#0c1114;--bg2:#10171b;--card:#141c21;--bd:#26323a;--fg:#e9edf7;--mut:#94a0bb;--acc:#0f766e;--acc2:color-mix(in srgb,var(--acc) 55%,#fff);--ok:#22c55e;--warn:#f59e0b;--bad:#ef4444;--r:14px}
@media (prefers-color-scheme: light){:root{--bg:#f5f7f8;--bg2:#eef2f3;--card:#fff;--bd:#e0e6e8;--fg:#101828;--mut:#5b6670;--acc2:color-mix(in srgb,var(--acc) 82%,#000)}}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.6 "Segoe UI",Tahoma,system-ui,sans-serif}
a{color:var(--acc2)}
.wrap{max-width:1120px;margin:0 auto;padding:0 16px}
.top{position:sticky;top:0;z-index:5;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--bd)}
.top-in{display:flex;align-items:center;gap:12px;padding:10px 16px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--fg);font-weight:800}
.brand small{display:block;font-weight:500;color:var(--mut);font-size:11px;margin-top:-4px}
.logo{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--acc),color-mix(in srgb,var(--acc) 55%,#0b1220));display:grid;place-items:center;color:#fff}
nav{margin-inline-start:auto;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
nav a{text-decoration:none;color:var(--fg)}
.inline{display:inline}
.btn,button{font:inherit;cursor:pointer;border-radius:10px;border:1px solid var(--acc);background:var(--acc);color:#fff;padding:9px 16px;text-decoration:none;display:inline-block;text-align:center}
.btn:hover,button:hover{background:var(--acc2)}
.ghost{background:transparent;color:var(--fg);border-color:var(--bd)}
.ghost:hover{border-color:var(--acc);background:transparent}
.sm{padding:4px 10px;font-size:13px}
.full{width:100%}
button:disabled{opacity:.5;cursor:not-allowed}
input,select,textarea{font:inherit;width:100%;background:var(--bg2);color:var(--fg);border:1px solid var(--bd);border-radius:10px;padding:9px 11px;margin-top:4px}
label{display:block;margin:10px 0;font-size:14px;color:var(--mut)}
label.check{display:flex;gap:8px;align-items:flex-start}
label.check input{width:auto;margin-top:5px}
.lang{width:auto;margin:0;padding:5px 8px}
.card{background:var(--card);border:1px solid var(--bd);border-radius:var(--r);padding:20px;margin:18px 0}
.narrow{max-width:420px;margin:40px auto}
.hero{display:grid;grid-template-columns:1.3fr 1fr;gap:32px;align-items:center;padding:40px 0}
.hero h1{font-size:40px;line-height:1.15;margin:0 0 12px}
.lead{font-size:18px;color:var(--mut)}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}
.row label{flex:1;min-width:120px}
.muted{color:var(--mut)}.small{font-size:13px}
.features{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ico{font-size:28px}
.plans{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.plans.mini{grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}
.plans.mini form{margin:0}
.plan.hl{border-color:var(--acc);box-shadow:0 0 0 1px var(--acc)}
.price{font-size:30px;font-weight:800}.price small{font-size:14px;color:var(--mut);font-weight:400}
.plan ul{padding-inline-start:18px;color:var(--mut)}
.tabs{display:flex;gap:6px;margin-bottom:10px;border-bottom:1px solid var(--bd)}
.tabs a{padding:8px 12px;text-decoration:none;color:var(--mut);border-bottom:2px solid transparent}
.tabs a.on{color:var(--fg);border-color:var(--acc)}
.pill{background:var(--bg2);border:1px solid var(--bd);border-radius:999px;padding:3px 10px;font-size:13px}
.flash{padding:12px 16px;border-radius:10px;margin:16px 0;border:1px solid var(--bd)}
.flash.ok{background:rgba(34,197,94,.12);border-color:rgba(34,197,94,.4)}
.flash.err{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.4)}
.flash.warn{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.4)}
.grid2{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}
.grid2 .card{margin:18px 0 0}
.big{font-size:34px;font-weight:800;margin:0}.big small{font-size:14px;color:var(--mut)}
.status{font-size:13px;color:var(--mut);margin-bottom:10px;display:flex;gap:8px;align-items:center}
.dot{width:9px;height:9px;border-radius:50%;background:var(--bad)}.status.on .dot{background:var(--ok)}
table.t{width:100%;border-collapse:collapse;font-size:14px}
.t td,.t th{padding:8px 6px;border-bottom:1px solid var(--bd);text-align:start;vertical-align:top}
.num{text-align:end}.neg{color:var(--bad)}.pos{color:var(--ok)}
.badge{padding:2px 8px;border-radius:999px;font-size:12px;border:1px solid var(--bd)}
.badge.done{color:var(--ok);border-color:var(--ok)}.badge.failed{color:var(--bad);border-color:var(--bad)}
.badge.running{color:var(--warn);border-color:var(--warn)}.badge.queued{color:var(--mut)}
.foot{color:var(--mut);font-size:13px;padding:30px 16px}
.legal section{background:var(--card);border:1px solid var(--bd);border-radius:var(--r);padding:20px;margin:16px 0}
details{margin-top:14px}
@media (max-width:860px){.hero,.grid2{grid-template-columns:1fr}.features{grid-template-columns:1fr}.plans{grid-template-columns:1fr 1fr}.hero h1{font-size:30px}}
@media (max-width:520px){.plans,.plans.mini{grid-template-columns:1fr}.jobs td:nth-child(4),.jobs th:nth-child(4){display:none}}
[hidden]{display:none!important}
nav a.on{color:var(--acc2);font-weight:700}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;margin-bottom:12px}
.toolbar input,.toolbar select{width:auto;margin:0}
.toolbar .grow{flex:1;min-width:180px}
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chip{padding:4px 10px;border-radius:999px;border:1px solid var(--bd);text-decoration:none;color:var(--fg);font-size:13px}
.chip.on{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 18%,transparent)}
.stage{padding:2px 8px;border-radius:999px;font-size:12px;border:1px solid var(--bd);white-space:nowrap}
.stage.lead{color:#38bdf8;border-color:#38bdf8}.stage.qualified{color:#a78bfa;border-color:#a78bfa}.stage.proposal{color:var(--warn);border-color:var(--warn)}
.stage.won,.stage.solved,.stage.done{color:var(--ok);border-color:var(--ok)}.stage.lost,.stage.closed{color:var(--mut)}
.stage.open{color:#38bdf8;border-color:#38bdf8}.stage.pending{color:var(--warn);border-color:var(--warn)}
.prio-high,.prio-urgent{color:var(--bad);font-weight:700}
.board{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:12px;overflow-x:auto;padding-bottom:6px}
.col{background:var(--bg2);border:1px solid var(--bd);border-radius:12px;padding:10px;min-height:200px}
.col h4{margin:0 0 8px;display:flex;justify-content:space-between;font-size:14px}
.col.drop{outline:2px dashed var(--acc)}
.task{background:var(--card);border:1px solid var(--bd);border-radius:10px;padding:9px 10px;margin-bottom:8px;cursor:grab;font-size:14px}
.task .meta{font-size:12px;color:var(--mut);margin-top:4px;display:flex;gap:8px;flex-wrap:wrap}
.timeline{list-style:none;padding:0;margin:0}
.timeline li{border-inline-start:2px solid var(--bd);padding:6px 12px;margin-inline-start:6px}
.timeline .when{font-size:12px;color:var(--mut)}
.msg{border:1px solid var(--bd);border-radius:10px;padding:10px 12px;margin:10px 0;background:var(--bg2)}
.msg.internal{border-style:dashed;background:color-mix(in srgb,var(--warn) 8%,transparent)}
.msg .who{font-size:12px;color:var(--mut);margin-bottom:4px}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px}
.kpi{background:var(--card);border:1px solid var(--bd);border-radius:12px;padding:14px}.kpi b{display:block;font-size:24px}
.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
.formgrid .full{grid-column:1/-1}
textarea{min-height:80px}
@media (max-width:860px){.board{grid-template-columns:repeat(4,80vw)}.kpis{grid-template-columns:1fr 1fr}.formgrid{grid-template-columns:1fr}}
/* ---- HR module */
.hrtabs{margin:14px 0 4px;flex-wrap:wrap}
.note{background:var(--bg2);border:1px solid var(--bd);border-radius:10px;padding:10px 12px;margin:10px 0;font-size:14px}
.card.hl{border-color:var(--acc);box-shadow:0 0 0 1px var(--acc)}
.mono{font-family:ui-monospace,Consolas,monospace;font-size:13px}
fieldset{border:1px solid var(--bd);border-radius:12px;padding:6px 14px 10px;margin:8px 0;min-width:0}
legend{color:var(--mut);font-size:13px;padding:0 6px}
fieldset .formgrid{margin:0}
.scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.t .tot td{font-weight:700;border-top:2px solid var(--bd)}
.t.compact td{padding:4px 6px}
input.cell{width:84px;padding:4px 6px;margin:0;text-align:end}
.danger{color:var(--bad)!important;border-color:var(--bad)!important}
.cal{font-size:11px;border-collapse:collapse}.cal th,.cal td{padding:2px 3px;min-width:18px;text-align:center;border:1px solid var(--bd)}
.cal .we{background:var(--bg2)}
.lv{background:#6d5efc}.lv-sick{background:#ef4444}.lv-unpaid{background:#94a3b8}.lv-parental{background:#ec4899}.lv-other{background:#f59e0b}
.lv.pend{background-image:repeating-linear-gradient(45deg,transparent 0 3px,rgba(255,255,255,.55) 3px 6px)}
.lv.legend{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:middle}
.kanban{display:grid;grid-template-columns:repeat(6,minmax(150px,1fr));gap:10px;overflow-x:auto;padding-bottom:6px}
.kanban .col{background:var(--bg2);border:1px solid var(--bd);border-radius:12px;padding:8px;min-height:120px}
.kanban h4{margin:2px 0 8px;font-size:14px}
.kcard{background:var(--card);border:1px solid var(--bd);border-radius:10px;padding:8px;margin-bottom:8px}
.kcard select.sm{padding:3px 6px;font-size:12px;margin:0}
.cvtext{white-space:pre-wrap;max-height:360px;overflow:auto;background:var(--bg2);padding:10px;border-radius:10px;font-size:12px}
@media (max-width:760px){.kanban{grid-template-columns:repeat(6,80%)}input.cell{width:64px}}
.bar{height:10px;background:var(--bg2);border:1px solid var(--bd);border-radius:999px;overflow:hidden;margin:8px 0}.bar span{display:block;height:100%;background:linear-gradient(90deg,var(--acc),#22c55e)}

.aiout{background:var(--bg2);border:1px solid var(--bd);border-radius:12px;padding:14px 18px;line-height:1.65}
.aiout h3,.aiout h4,.aiout h5,.aiout h6{margin:12px 0 4px}.aiout ul{margin:4px 0 8px;padding-inline-start:22px}
.bar .indet{width:35%!important;animation:indet 1.3s ease-in-out infinite}
@keyframes indet{0%{margin-inline-start:-35%}100%{margin-inline-start:100%}}

/* ---- sales / transport / AI employee */
.grid2.side{grid-template-columns:1fr 2.2fr}.grid2.mainl{grid-template-columns:2.2fr 1fr}
@media (max-width:860px){.grid2.side,.grid2.mainl{grid-template-columns:1fr}}
.bars{display:flex;align-items:flex-end;gap:6px;height:150px;padding-top:6px}
.bars .b{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;min-width:0}
.bars .b span{display:block;width:100%;max-width:38px;background:linear-gradient(180deg,var(--acc2),var(--acc));border-radius:6px 6px 2px 2px}
.bars .b small{font-size:11px;color:var(--mut);margin-top:4px}
.tot td{padding:3px 6px}
#lines input.descr{min-width:220px}
.side ul a.on{font-weight:700}
/* ---- service / technicians */
.sigpad{width:100%;max-width:520px;height:180px;background:#fff;border:1px solid var(--bd);border-radius:10px;touch-action:none;display:block}
.phgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;margin:8px 0}.phgrid img{width:100%;height:100px;object-fit:cover;border-radius:8px;border:1px solid var(--bd)}
.phgrid form{margin-top:2px}
.dotc{display:inline-block;width:10px;height:10px;border-radius:50%;margin-inline-end:6px;vertical-align:middle}
.week{display:grid;grid-template-columns:150px repeat(7,minmax(120px,1fr));gap:4px;overflow-x:auto;font-size:13px}
.week .h{font-weight:700;padding:6px;color:var(--mut)}.week .h.today{color:var(--acc2)}
.week .cell{background:var(--bg2);border:1px solid var(--bd);border-radius:8px;min-height:70px;padding:4px}.week .cell.drop{outline:2px dashed var(--acc)}
.week .tech{padding:8px 6px;font-weight:600;display:flex;align-items:center}
.jcard{background:var(--card);border:1px solid var(--bd);border-inline-start:4px solid var(--acc);border-radius:6px;padding:4px 6px;margin-bottom:4px;cursor:grab;font-size:12px;line-height:1.3}
.jcard a{color:var(--fg);text-decoration:none}.jcard small{color:var(--mut);display:block}
.pool{display:flex;flex-wrap:wrap;gap:6px;min-height:40px;padding:6px;border:1px dashed var(--bd);border-radius:10px}
.pool .jcard{width:200px}
/* mobile technician app */
.app .jobl{display:block;background:var(--card);border:1px solid var(--bd);border-radius:14px;padding:14px;margin:10px 0;text-decoration:none;color:var(--fg)}
.app .big{font-size:20px}.app .btns{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}.app .btns .btn,.app .btns button{width:100%;padding:14px 10px;font-size:16px}
.app label.check{font-size:16px;padding:6px 0}.app label.check input{width:22px;height:22px}
/* warehouse */
.scanapp{max-width:640px;margin:0 auto}
.camwrap{position:relative;background:#000;border-radius:12px;overflow:hidden;min-height:120px;display:flex;align-items:center;justify-content:center}
.camwrap video{width:100%;max-height:52vh;object-fit:cover;display:block}
.camoff{padding:28px}.camoff button{font-size:18px;padding:12px 22px}
.scanmsg{margin:10px 0;padding:10px 12px;border-radius:10px;font-weight:600;min-height:20px}
.scanmsg.ok{background:rgba(34,197,94,.14);color:#15803d}.scanmsg.err{background:rgba(239,68,68,.14);color:#b91c1c}
#pi .b{font-weight:700}
svg.bc{max-width:100%;height:46px}
@media print{.noprint,.topnav,nav,header,.hrtabs,footer{display:none!important}.card{box-shadow:none;border:0}body{background:#fff}}
button.chip{background:transparent;color:var(--fg);font-weight:500;padding:8px 14px;font-size:14px;box-shadow:none}button.chip.on{background:color-mix(in srgb,var(--acc) 18%,transparent)}
/* accounting */
.mbars{display:flex;gap:10px;align-items:flex-end;height:150px;margin:8px 0}
.mbars .mb{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%}
.mbars .bars{flex:1;width:100%;display:flex;gap:3px;align-items:flex-end;justify-content:center}
.mbars i{display:block;width:40%;max-width:22px;border-radius:4px 4px 0 0;min-height:2px}
.mbars i.r{background:var(--ok,#22c55e)}.mbars i.e{background:#f97316}
ul.todo{list-style:none;padding:0;margin:0}ul.todo li{padding:7px 0;border-bottom:1px solid var(--bd)}
tr.sum td{border-top:2px solid var(--bd)}
.nowrap{white-space:nowrap}
.sugg{background:color-mix(in srgb,var(--acc) 12%,transparent);padding:4px 8px;border-radius:8px;margin-bottom:4px;display:inline-block}
form.bkf select,form.bkf input{font-size:13px;padding:5px 6px}
form.bkf .row{gap:6px;flex-wrap:wrap;align-items:center}form.bkf select{width:auto;max-width:280px}
/* v8 dashboards (dataviz: categorical slots 1–3, validated for dark #121a2a and light #fff surfaces) */
:root{--vz-1:#3987e5;--vz-2:#d95926;--vz-3:#199e70;--vz-grid:color-mix(in srgb,var(--fg) 9%,transparent);--vz-axis:color-mix(in srgb,var(--fg) 28%,transparent);--vz-tick:var(--mut)}
@media (prefers-color-scheme: light){:root{--vz-1:#2a78d6;--vz-2:#eb6834;--vz-3:#1baf7a}}
.dash-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-top:16px}.dash-head h1{margin:0;font-size:24px}
.dash-filter{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0 4px}
.dash-sub{font-size:17px;margin:26px 0 0}
.vz-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-top:14px}
.vz-tile{background:var(--card);border:1px solid var(--bd);border-radius:var(--r);padding:14px 16px;display:flex;flex-direction:column;gap:2px;text-decoration:none;color:var(--fg);min-width:0}
a.vz-tile:hover{border-color:var(--acc)}
.vz-label{font-size:13px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vz-value{font-size:24px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vz-meta{font-size:12.5px;min-height:18px}
.vz-delta{font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.vz-delta.good{color:var(--ok)}.vz-delta.bad{color:var(--bad)}.vz-delta.neutral{color:var(--mut)}
.vz-spark{width:100%;height:30px;margin-top:6px;display:block}
.dash-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.dash-grid .card{margin:16px 0 0;min-width:0}.dash-grid .wide{grid-column:span 2}
.vz-chart{margin:0}.vz-chart figcaption{margin-bottom:6px}
.vz-svg{width:100%;height:auto;display:block;direction:ltr;overflow:visible}
.vz-svg text{font-size:11px;fill:var(--vz-tick);font-variant-numeric:tabular-nums}
.vz-grid{stroke:var(--vz-grid);stroke-width:1}.vz-axis{stroke:var(--vz-axis);stroke-width:1}
.vz-cross{stroke:var(--vz-axis);stroke-width:1;stroke-dasharray:3 3;pointer-events:none}
.vz-area{opacity:.12}.vz-end,.vz-dot{stroke:var(--card);stroke-width:2;pointer-events:none}
.vz-hit,.vz-hitline{fill:transparent;cursor:crosshair;outline:none}.vz-hit.hot,.vz-hit:focus{fill:color-mix(in srgb,var(--fg) 6%,transparent)}
.vz-hitline:focus{stroke:var(--acc);stroke-width:1}
.vz-legend{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;color:var(--mut);margin:4px 0 6px}.vz-legend span{display:inline-flex;align-items:center;gap:6px}.vz-legend b{color:var(--fg);font-weight:600}
.vz-key{display:inline-block;flex:none;background:var(--k)}.vz-key.rect{width:10px;height:10px;border-radius:3px}.vz-key.line{width:14px;height:2px;border-radius:1px}
.vz-hbars{display:flex;flex-direction:column;gap:7px}
.vz-hrow{display:grid;grid-template-columns:minmax(0,38%) 1fr;gap:10px;align-items:center;font-size:13.5px;border-radius:6px;outline:none}
.vz-hrow.hot,.vz-hrow:focus{background:color-mix(in srgb,var(--fg) 5%,transparent)}
.vz-hl{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vz-hl a{color:var(--fg)}
.vz-ht{display:flex;align-items:center;gap:8px;min-width:0}.vz-ht i{display:block;height:14px;background:var(--vz-1);border-radius:0 4px 4px 0;min-width:2px}
[dir=rtl] .vz-ht i{border-radius:4px 0 0 4px}
.vz-ht b{font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12.5px}
.vz-stack{display:flex;gap:2px;height:22px;border-radius:5px;overflow:hidden;margin:8px 0 10px}.vz-stack i{display:block;min-width:3px;outline:none}.vz-stack i.hot,.vz-stack i:focus{filter:brightness(1.15)}
.vz-table{margin-top:6px;font-size:13px}.vz-table summary{cursor:pointer;color:var(--mut)}.vz-table .scroll{max-height:260px;overflow:auto}
.vz-tip{position:absolute;z-index:50;pointer-events:none;background:var(--bg2);color:var(--fg);border:1px solid var(--bd);border-radius:10px;padding:8px 10px;font-size:13px;box-shadow:0 8px 24px rgba(0,0,0,.25);max-width:260px}
.vz-tip-l{color:var(--mut);font-size:12px;margin-bottom:2px}.vz-tip-r{display:flex;align-items:center;gap:7px;white-space:nowrap}.vz-tip-r b{font-variant-numeric:tabular-nums}.vz-tip-r span{color:var(--mut)}
.vz-alerts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.vz-alerts li{display:flex;gap:8px;align-items:baseline;padding:7px 10px;border-radius:8px;background:var(--bg2);border-inline-start:3px solid var(--warn);font-size:14px}
.vz-alerts li>a{color:var(--fg);text-decoration:none;flex:1}.vz-alerts li>a:hover{text-decoration:underline}
.vz-alerts li.st-critical{border-color:var(--bad)}.vz-alerts li.st-serious{border-color:#f97316}.vz-alerts li.st-good{border-color:var(--ok)}
.dash-alerts h3{margin-top:0}
.dash-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;margin-top:12px}
.dcard{margin:0;padding:16px;text-decoration:none;color:var(--fg);display:flex;flex-direction:column;gap:10px}.dcard:hover{border-color:var(--acc)}
.dc-head{display:flex;align-items:center;gap:8px}.dc-ico{font-size:20px}.dc-al{margin-inline-start:auto;font-size:12px;padding:1px 8px;border-radius:999px;background:color-mix(in srgb,var(--warn) 18%,transparent)}
.dc-al.st-critical{background:color-mix(in srgb,var(--bad) 22%,transparent)}
.dc-vals{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dc-vals>div{display:flex;flex-direction:column;min-width:0}
.dc-v{font-size:18px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dc-vals .vz-delta{font-size:12px}
@media (max-width:760px){.dash-grid{grid-template-columns:1fr}.dash-grid .wide{grid-column:auto}.vz-tiles{grid-template-columns:1fr 1fr}.vz-value{font-size:19px}}
/* v8b dashboard polish */
.vz-svg line,.vz-svg text,.vz-svg polyline,.vz-svg polygon,.vz-bar,.vz-end{pointer-events:none}
.vz-key.dash{width:14px;height:0;border-top:2px dashed var(--vz-tick);background:none}
.vz-chart figcaption{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.vz-csv{margin-inline-start:auto;background:transparent;border:1px solid var(--bd);color:var(--mut);font-size:11.5px;padding:2px 8px;border-radius:7px}.vz-csv:hover{color:var(--fg);border-color:var(--acc);background:transparent}
.dash-range{display:inline-flex;align-items:center;gap:6px}.dash-range input{width:auto;margin:0;padding:4px 8px;font-size:13px}.dash-range.on input{border-color:var(--acc)}
.dash-tools{margin-inline-start:auto;display:inline-flex;align-items:center;gap:10px}
.dash-cmp{margin:2px 0 0}
.vz-ins{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.vz-ins li{display:flex;gap:10px;align-items:baseline;font-size:14px;line-height:1.45}
.vz-ins li>span{flex:none;width:22px;height:22px;border-radius:7px;display:grid;place-items:center;font-weight:700;font-size:13px;background:var(--bg2);color:var(--mut)}
.vz-ins .in-good>span{color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,transparent)}.vz-ins .in-bad>span{color:var(--bad);background:color-mix(in srgb,var(--bad) 14%,transparent)}.vz-ins .in-warn>span{color:var(--warn);background:color-mix(in srgb,var(--warn) 16%,transparent)}
.vz-tile{position:relative;overflow:hidden}.vz-tile::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--vz-1);opacity:.0;transition:opacity .15s}[dir=rtl] .vz-tile::before{inset:0 0 0 auto}a.vz-tile:hover::before{opacity:1}
.dash-grid h3{margin:0 0 10px;font-size:16px}
@media print{.vz-tip,.vz-csv,.dash-tools,.dash-range{display:none!important}.dash-grid{grid-template-columns:1fr 1fr}.card,.vz-tile{break-inside:avoid;border:1px solid #ccc}:root{--vz-1:#2a78d6;--vz-2:#eb6834;--vz-3:#1baf7a;--card:#fff;--fg:#101828;--mut:#5b6785;--bg2:#f2f4f8;--bd:#d9dee8}}
@media (max-width:760px){.dash-tools{margin-inline-start:0}.dash-range{flex-wrap:wrap}}
@media (max-width:760px){.vz-svg text{font-size:17px}.vz-hrow{grid-template-columns:minmax(0,42%) 1fr}}
@media (max-width:760px){.vz-tick.xo{display:none}}
/* v9 platform admin: subscribers */
.adm-usage{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.adm-usage>div{background:var(--bg2);border-radius:10px;padding:8px 10px;display:flex;flex-direction:column}.adm-usage b{font-size:18px;font-variant-numeric:tabular-nums}
.adm-act{border-top:1px solid var(--bd);padding-top:10px;margin-top:10px}.adm-act:first-of-type{border-top:0;margin-top:0;padding-top:0}.adm-act label{margin:4px 0}.adm-act .row{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:4px}.adm-act .row input,.adm-act .row select{margin:0;flex:1;min-width:120px}
.adm-tl{list-style:none;margin:0;padding:0}.adm-tl li{display:grid;grid-template-columns:130px 1fr;gap:12px;padding:8px 0;border-bottom:1px solid var(--bd)}.adm-tl li:last-child{border-bottom:0}.adm-amt{font-variant-numeric:tabular-nums;font-weight:600;margin-inline-start:6px}
.adm-table td{vertical-align:top}.adm-filter select{max-width:180px}
@media (max-width:760px){.adm-usage{grid-template-columns:1fr 1fr}.adm-tl li{grid-template-columns:1fr;gap:2px}}
/* v11 freelance */
.fl-skills{display:flex;flex-wrap:wrap;gap:5px;margin:6px 0}.fl-skill{font-size:12px;padding:1px 8px;border-radius:999px;background:var(--bg2);border:1px solid var(--bd);color:var(--mut);white-space:nowrap}
.fl-skill.hit{color:var(--fg);border-color:var(--vz-1);background:color-mix(in srgb,var(--vz-1) 16%,transparent)}
.fl-stars{color:#f5b301;letter-spacing:1px;white-space:nowrap}.fl-stars .muted{color:var(--bd)}
.fl-list{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:8px}.fl-list li{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.fl-list li a{color:var(--fg);font-weight:600}
.fl-bar{height:4px;background:var(--bg2);border-radius:2px;margin-top:3px;overflow:hidden}.fl-bar i{display:block;height:100%;background:var(--vz-1)}.fl-bar i.hot{background:var(--warn)}
.fl-desc{font-size:14px;line-height:1.55;max-height:520px;overflow:auto;white-space:normal;word-break:break-word}
.fl-match{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.fl-match li{display:flex;gap:10px;align-items:center;padding:8px;border-radius:10px;border:1px solid var(--bd)}.fl-match li.on{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 8%,transparent)}
.fl-match .grow{flex:1;min-width:0}
.fl-gigs{display:flex;flex-direction:column}.fl-gig{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:start;padding:12px 4px;border-bottom:1px solid var(--bd);text-decoration:none;color:var(--fg)}.fl-gig:last-child{border-bottom:0}.fl-gig:hover{background:color-mix(in srgb,var(--fg) 4%,transparent)}
.fl-gig-m{display:flex;flex-direction:column;gap:2px;min-width:0}.fl-gig-m b{overflow-wrap:anywhere}
.fl-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;margin-top:12px}.fl-card{margin:0;padding:16px;text-decoration:none;color:var(--fg);display:flex;flex-direction:column;gap:6px}.fl-card:hover{border-color:var(--acc)}
.fl-review{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;margin-bottom:12px}.fl-review label{margin:0}.fl-review select,.fl-review input{margin-top:2px}.fl-review .grow{flex:1;min-width:200px}
.fl-rev{padding:8px 0;border-top:1px solid var(--bd)}
.fl-tasks{display:flex;flex-direction:column;gap:2px;max-height:320px;overflow:auto;margin-bottom:10px}.fl-tasks label{margin:2px 0}
.fl-srcs{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:2px 12px;margin-top:4px}.fl-srcs label{margin:4px 0}
.fl-code{background:var(--bg2);border:1px solid var(--bd);border-radius:10px;padding:10px;overflow:auto;white-space:pre;direction:ltr;text-align:left}
.fl-pc{padding:10px 0;border-bottom:1px solid var(--bd)}.fl-pc:last-child{border-bottom:0}
@media (max-width:760px){.fl-gig{grid-template-columns:36px 1fr}.fl-gig>.stage{grid-column:2;justify-self:start}}
/* security monitor */
.sx-sev{display:inline-block;white-space:nowrap;padding:1px 8px;border-radius:999px;font-size:12px;border:1px solid var(--bd);color:var(--mut)}
.sx-sev.warning{color:var(--warn);border-color:var(--warn)}.sx-sev.serious{color:#f97316;border-color:#f97316}.sx-sev.critical{color:var(--bad);border-color:var(--bad);font-weight:600}
.sx-tag{font-size:11px;padding:0 6px;border-radius:999px;border:1px solid var(--bd);white-space:nowrap}.sx-tag.bad{color:var(--bad);border-color:var(--bad)}.sx-tag.ok{color:var(--ok);border-color:var(--ok)}
.sx-path{font-family:ui-monospace,Consolas,monospace;font-size:12px;word-break:break-all;min-width:220px;max-width:360px}
.sx-filter select,.sx-filter input{margin:0;width:auto}
.sx-traps li{margin:4px 0}
/* backups */
.bk-kind{display:inline-block;white-space:nowrap;padding:1px 8px;border-radius:999px;font-size:12px;border:1px solid var(--bd);color:var(--mut)}
.bk-kind.weekly,.bk-kind.monthly{color:var(--acc2);border-color:var(--acc2)}.bk-kind.pre-restore{color:var(--warn);border-color:var(--warn)}
.bk-restore{display:inline-block;vertical-align:top}.bk-restore>summary{list-style:none;cursor:pointer;display:inline-block}.bk-restore>summary::-webkit-details-marker{display:none}
.bk-restore[open]{display:block;margin-top:8px}.bk-rform{min-width:280px;max-width:420px;background:var(--bg2);border:1px solid var(--bd);border-radius:10px;padding:12px;white-space:normal}
.bk-danger{background:var(--bad)!important;color:#fff!important;border-color:var(--bad)!important}
.bk-rform{display:flex;flex-direction:column;gap:8px}.bk-rform label{margin:0}.bk-rform button{align-self:flex-start}
/* invoices hub */
.iv-origin{white-space:nowrap;color:var(--mut)}a.iv-origin{color:inherit}
.iv-unbilled{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.iv-unbilled a{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--bd);border-radius:10px;background:var(--bg2);color:inherit;text-decoration:none}
.iv-unbilled a:hover{border-color:var(--acc)}.iv-go{color:var(--acc2);font-size:13px;white-space:nowrap}
.iv-new-grid{display:flex;flex-wrap:wrap;gap:8px}
.iv-src-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:12px}
a.iv-src{display:flex;flex-direction:column;gap:6px;color:inherit;text-decoration:none;margin:0}a.iv-src:hover{border-color:var(--acc)}.iv-ico{font-size:26px}
td.bad{color:var(--bad)}
/* 2FA */
.tfa-qr{background:#fff;display:inline-block;padding:8px;border-radius:10px;margin:8px 0}.tfa-qr svg{display:block}
.tfa-rc{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:6px;margin:10px 0}.tfa-rc span{background:var(--bg2);border:1px solid var(--bd);border-radius:8px;padding:6px 10px;text-align:center}
.tfa-steps{margin:0 0 8px;padding-inline-start:18px}
/* e-invoice / recurring panels */
.einv-box{margin-top:10px;border:1px solid var(--bd);border-radius:10px;padding:8px 12px;background:var(--bg2)}.einv-box>summary{cursor:pointer;font-weight:600}
.einv-probs{margin:8px 0 0;padding-inline-start:16px;color:var(--warn)}
/* customer portal */
.cp-pay{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.cp-paycard{border:1px solid var(--bd);border-radius:12px;padding:12px;background:var(--bg2)}
.cp-qr{background:#fff;display:inline-block;border-radius:8px;margin:8px 0;padding:4px}.cp-qr svg{display:block}
.cp-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid var(--bd)}
.cp-ans{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.cp-ans input{margin:0;min-width:200px}
.msg.staff{border-color:var(--acc)}
/* mobile field apps */
.m-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:10px}
a.m-tile{display:flex;flex-direction:column;gap:6px;color:inherit;text-decoration:none;margin:0;min-height:110px}.m-ico{font-size:30px}
.drv-stops{list-style:none;padding:0;margin:0;display:grid;gap:10px}.drv-stops li{margin:0}.drv-stops li a{display:block;color:inherit;text-decoration:none}.drv-stops li.fin{opacity:.6}
.drv-stops li.queued,.card.queued{border-color:var(--warn)}
a.drv-trip{display:block;color:inherit;text-decoration:none}
.drv-progress{height:8px;border-radius:99px;background:var(--bg2);overflow:hidden;margin:8px 0 12px}.drv-progress i{display:block;height:100%;background:var(--ok)}
.sigpad{width:100%;height:180px;border:1px solid var(--bd);border-radius:10px;background:#fff;touch-action:none;display:block}
.drv-form .btn.full{padding:14px;font-size:17px}
.offq{position:fixed;bottom:12px;inset-inline:12px;z-index:50;background:var(--warn);color:#111;padding:10px 14px;border-radius:12px;font-weight:600;text-align:center;display:none}
.pod-sig{max-width:260px;background:#fff;border-radius:8px;border:1px solid var(--bd)}.pod-photo{max-width:220px;border-radius:8px}
/* onboarding, landing modules, API */
.onb-banner{background:color-mix(in srgb,var(--acc) 18%,var(--bg));border-bottom:1px solid var(--bd);padding:8px 0;font-size:14px}.onb-banner .wrap{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.onb-steps{display:flex;gap:8px;list-style:none;padding:0;margin:10px 0 16px;flex-wrap:wrap}.onb-steps a{display:flex;gap:8px;align-items:center;padding:6px 12px;border:1px solid var(--bd);border-radius:999px;color:inherit;text-decoration:none;font-size:14px}
.onb-steps span{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--bg2);font-size:12px}.onb-steps li.on a{border-color:var(--acc);color:var(--acc2)}.onb-steps li.done span{background:var(--ok);color:#fff}
.onb-mods{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}.onb-mod{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--bd);border-radius:12px;padding:10px;cursor:pointer;margin:0}
.onb-mod>span{display:flex;flex-direction:column;gap:2px}.onb-mod input{margin-top:6px}.onb-next{line-height:2.2}
.mod-grid{margin:30px 0}.mods{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.card.mod{display:flex;flex-direction:column;gap:4px;margin:0}
.api-doc{background:var(--bg2);border:1px solid var(--bd);border-radius:10px;padding:10px;overflow:auto;font-size:12px;white-space:pre}.api-events{display:flex;flex-wrap:wrap;gap:6px 14px}
.field-home{display:none}
@media (max-width:760px){body.field nav>a:not(.pill),body.field nav .lang{display:none}body.field .field-home{display:inline-flex}}
.onb-mod input[type=checkbox]{width:auto;flex:0 0 auto;margin:6px 0 0}.onb-mod>span{flex:1;text-align:start}
/* v19 distribution, sales rep app, customer shop, dental practice */
ul.plain{list-style:none;padding:0;margin:0}ul.plain>li{padding:8px 0;border-bottom:1px solid var(--bd)}ul.plain>li:last-child{border-bottom:0}
button.xs{padding:1px 7px;font-size:12px;border-radius:7px}
.inline-det{display:inline-block;vertical-align:top}.inline-det>summary{list-style:none;display:inline-block}.inline-det>summary::-webkit-details-marker{display:none}
.dist-req{border-inline-start:4px solid var(--warn);padding-inline-start:12px}
.av{font-size:12px;border-radius:999px;padding:0 8px;border:1px solid currentColor;margin-inline-start:4px;white-space:nowrap}.av-ok{color:var(--ok)}.av-low{color:var(--warn)}.av-none{color:var(--mut)}
.rep-kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0}.rep-kpi div{background:var(--card);border:1px solid var(--bd);border-radius:12px;padding:10px;text-align:center;min-width:0}
.rep-kpi b{display:block;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rep-kpi span{font-size:12px;color:var(--mut)}
.rep-list a{display:block;text-decoration:none;color:var(--fg)}
.rep-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px}.rep-actions .btn{padding:12px}
@media (min-width:640px){.rep-actions{grid-template-columns:repeat(3,1fr)}}
.rep-catname{font-weight:700;margin:14px 0 4px;color:var(--mut);font-size:13px;text-transform:uppercase;letter-spacing:.04em}
.rep-item{display:flex;gap:8px;align-items:flex-end;padding:8px 0;border-bottom:1px solid var(--bd)}.rep-item .grow{flex:1;min-width:0}
.rep-item label{margin:0;font-size:12px}.rep-q input{width:70px}.rep-d input{width:56px}.rep-d input.over{border-color:var(--warn);color:var(--warn)}
.rep-total{font-size:18px;margin:12px 0}
.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;margin-top:12px}
.shop-item{border:1px solid var(--bd);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:3px;background:var(--bg2)}.shop-price{font-size:16px;margin-top:4px}
.dent-cal{display:grid;grid-template-columns:52px repeat(var(--cols),minmax(140px,1fr));grid-auto-rows:minmax(26px,auto);border:1px solid var(--bd);border-radius:12px;overflow:auto;background:var(--card);margin-top:8px}
.dent-h{grid-row:1;position:sticky;top:0;background:var(--bg2);font-weight:700;padding:6px 8px;border-bottom:1px solid var(--bd);z-index:2;font-size:14px}
.dent-t{grid-column:1;font-size:11px;color:var(--mut);padding:0 6px;border-top:1px solid color-mix(in srgb,var(--bd) 50%,transparent)}
.dent-free{border-top:1px solid color-mix(in srgb,var(--bd) 50%,transparent);border-inline-start:1px solid var(--bd)}.dent-free:hover{background:color-mix(in srgb,var(--acc) 12%,transparent)}
.dent-ap{z-index:1;margin:1px 3px;border-radius:8px;padding:4px 7px;background:color-mix(in srgb,#38bdf8 16%,var(--card));border-inline-start:4px solid #38bdf8;font-size:13px;line-height:1.3;display:flex;flex-direction:column;gap:2px;overflow:hidden;min-width:0}
.dent-ap a{color:var(--fg);text-decoration:none}.dent-ap .small{color:var(--mut)}.dent-ap-act{display:flex;gap:4px;align-items:center;flex-wrap:wrap;margin-top:auto}
.dent-ap.st-arrived{border-color:var(--warn);background:color-mix(in srgb,var(--warn) 14%,var(--card))}.dent-ap.st-done{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,var(--card))}
.dent-ap.st-no_show{border-color:var(--bad);opacity:.7}.dent-ap.st-confirmed{border-color:#a78bfa}
.dent-alert{font-size:15px}
.odo{overflow-x:auto;padding:6px 0;direction:ltr}.odo-row{display:flex;gap:4px;justify-content:center;margin:6px 0;min-width:max-content}.odo-row:first-child{padding-bottom:6px;border-bottom:2px dashed var(--bd)}
.odo-mid{width:10px;border-inline-start:2px dashed var(--bd)}
.tooth{width:40px;height:50px;padding:2px;border-radius:10px 10px 14px 14px;border:2px solid var(--bd);background:var(--bg2);color:var(--fg);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:13px;line-height:1.1}
.tooth small{font-size:9px;color:var(--mut)}.tooth:hover{border-color:var(--acc);background:var(--bg2)}.tooth.sel{outline:3px solid var(--acc);outline-offset:1px}
.ts-caries{background:color-mix(in srgb,#ef4444 30%,var(--bg2))!important;border-color:#ef4444}.ts-filling{background:color-mix(in srgb,#3b82f6 30%,var(--bg2))!important;border-color:#3b82f6}
.ts-crown{background:color-mix(in srgb,#eab308 34%,var(--bg2))!important;border-color:#eab308}.ts-root_canal{background:color-mix(in srgb,#a855f7 30%,var(--bg2))!important;border-color:#a855f7}
.ts-implant{background:color-mix(in srgb,#14b8a6 30%,var(--bg2))!important;border-color:#14b8a6}.ts-bridge{background:color-mix(in srgb,#f97316 30%,var(--bg2))!important;border-color:#f97316}
.ts-missing{opacity:.45;border-style:dashed}.ts-extract{border-color:#ef4444;border-style:dashed;color:#ef4444}
.odo-legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin:8px 0;color:var(--mut)}.odo-legend span{display:inline-flex;align-items:center;gap:5px}
.tooth-dot{width:14px;height:14px;border-radius:4px;border:2px solid var(--bd);background:var(--bg2);display:inline-block}
@media (max-width:600px){.tooth{width:30px;height:40px;font-size:11px}.rep-kpi{grid-template-columns:repeat(2,1fr)}}
/* v20 route tracking */
.trk-bar{position:sticky;top:0;z-index:4;margin:8px 0;padding:6px 10px;border-radius:10px;background:color-mix(in srgb,var(--ok) 14%,var(--card));border:1px solid var(--ok);font-size:13px}
.trk-bar.err{background:color-mix(in srgb,var(--bad) 14%,var(--card));border-color:var(--bad)}
.danger-btn{background:var(--bad);border-color:var(--bad)}.danger-btn:hover{background:#dc2626}
.trk-map{height:520px;border-radius:12px;overflow:hidden;background:var(--bg2);direction:ltr}
.trk-grid{grid-template-columns:3fr 2fr;align-items:start}@media (max-width:900px){.trk-grid{grid-template-columns:1fr}.trk-map{height:380px}}
.trk-lg{display:inline-block;width:12px;height:12px;border-radius:50%;vertical-align:middle;margin-inline-start:6px}.l-route{background:var(--acc);border-radius:2px;height:4px}.l-stop{background:#f59e0b}.l-visit{border:3px solid #16a34a}.l-far{border:3px solid #ef4444}
.trk-tl li{padding:5px 0}.trk-tl li.warn{color:var(--bad)}
/* v21 app shell: header with search + quick menu, grouped sidebar, start page, search */
.app-top .top-in{padding:8px 16px;gap:10px;flex-wrap:nowrap}
.app-top .brand small{max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top-search{flex:1;max-width:520px;margin-inline-start:12px}.top-search input{margin:0;padding:7px 12px}
.top-acts{display:flex;align-items:center;gap:8px;margin-inline-start:auto;white-space:nowrap}.top-acts .lang{width:auto}
.nav-tog{display:none;font-size:18px;padding:4px 10px}
.quick{position:relative}.quick>summary{margin:0;list-style:none;cursor:pointer;white-space:nowrap}.quick>summary::-webkit-details-marker{display:none}
.quick-menu{position:absolute;inset-inline-start:0;top:calc(100% + 6px);z-index:30;background:var(--card);border:1px solid var(--bd);border-radius:12px;padding:6px;min-width:220px;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.quick-menu a{display:block;padding:7px 10px;border-radius:8px;text-decoration:none;color:var(--fg)}.quick-menu a:hover{background:var(--bg2)}
body.has-side{padding-inline-start:232px}body.has-side .app-top{margin-inline-start:-232px}body.has-side .onb-banner .wrap{max-width:1120px}
.side{display:block;position:fixed;top:57px;bottom:0;inset-inline-start:0;width:232px;overflow-y:auto;padding:12px 10px 20px;border-inline-end:1px solid var(--bd);background:var(--bg);z-index:6}
.side-g{margin-bottom:10px}.side h6{margin:10px 10px 4px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
.side a{display:flex;align-items:center;gap:9px;padding:6px 10px;border-radius:9px;text-decoration:none;color:var(--fg);font-size:14.5px}
.side a:hover{background:var(--bg2)}.side a.on{background:color-mix(in srgb,var(--acc) 16%,transparent);color:var(--acc2);font-weight:600}
.side .si{width:20px;text-align:center}.side-foot{display:none}.side-back{display:none}
@media (max-width:980px){
  .nav-tog{display:inline-block}.top-acts{display:none}.q-l{display:none}
  .quick-menu{position:fixed;top:58px;inset-inline:12px;min-width:0}
  .top-search{margin-inline-start:4px}.app-top .brand>span:last-child{display:none}
  body.has-side{padding-inline-start:0}body.has-side .app-top{margin-inline-start:0}
  .side{top:0;width:280px;z-index:40;transform:translateX(-105%);transition:transform .2s;box-shadow:0 0 40px rgba(0,0,0,.3)}
  [dir=rtl] .side{transform:translateX(105%)}
  body.nav-open .side{transform:none}body.nav-open .side-back{display:block;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:35}
  .side-foot{display:flex;flex-wrap:wrap;gap:8px;padding:12px 10px;border-top:1px solid var(--bd);margin-top:10px}.side-foot .lang{width:auto}
}
.field-acts{display:flex}
.home-search{margin:14px 0}.home-search input{font-size:17px;padding:12px 16px}
.home-grid{display:grid;grid-template-columns:3fr 2fr;gap:18px}.home-grid .card{margin:0}@media (max-width:860px){.home-grid{grid-template-columns:1fr}}
.att a{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--fg);padding:4px 0}.att a:hover .grow{text-decoration:underline}
.att-n{min-width:34px;text-align:center;font-weight:700;border-radius:999px;padding:2px 8px;background:var(--bg2)}
.att-warn .att-n{background:color-mix(in srgb,var(--warn) 22%,transparent);color:var(--warn)}.att-bad .att-n{background:color-mix(in srgb,var(--bad) 20%,transparent);color:var(--bad)}
.att .grow{flex:1}
.quick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.qa{display:flex;align-items:center;gap:8px;border:1px solid var(--bd);border-radius:12px;padding:10px 12px;text-decoration:none;color:var(--fg);background:var(--bg2);font-size:14px}.qa:hover{border-color:var(--acc)}
.srch li a{display:flex;gap:8px;align-items:baseline;text-decoration:none;color:var(--fg);flex-wrap:wrap}.srch .si{width:22px}
/* v22 patient files, online booking */
.dent-files{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.dent-files figure{margin:0;border:1px solid var(--bd);border-radius:10px;overflow:hidden;background:var(--bg2)}
.dent-files img{width:100%;height:120px;object-fit:cover;display:block;background:#000}
.dent-files figcaption{padding:6px 8px}.dent-pdf{display:grid;place-items:center;height:120px;font-weight:800;color:var(--bad)}
.bk-slots{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.bk-slots .btn{min-width:72px}
body.book .chips .chip{font-size:15px}
/* v23 mobile: wide tables scroll inside their card instead of widening the page */
main.wrap,.card,.grid2>*,.home-grid>*,.dash-grid>*{min-width:0}
@media (max-width:860px){
  table.t{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .toolbar,.row{flex-wrap:wrap}
  .inline-det[open]{display:block}
  .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.app-top .top-in{align-items:center}.quick{display:flex;align-items:center}.app-top .quick>summary{margin:0!important}
/* v24 contracts */
.legal-box{border:1px solid var(--bd);border-radius:10px;padding:8px 12px;margin:8px 0}.legal-scroll{max-height:360px;overflow:auto;padding-inline-end:8px}
.legal-accept{border-color:var(--acc)}.legal h2{font-size:20px}.legal h3{font-size:15px;margin:16px 0 4px}
/* v25 messenger */
.msg-app{display:grid;grid-template-columns:300px 1fr;gap:0;height:calc(100vh - 150px);height:calc(100dvh - 150px);min-height:480px;border:1px solid var(--bd);border-radius:14px;overflow:hidden;background:var(--card);margin-top:12px}
.msg-side{border-inline-end:1px solid var(--bd);padding:12px;overflow:auto;display:flex;flex-direction:column;min-width:0}
.msg-side-h{display:flex;align-items:center;justify-content:space-between}
.msg-convs{list-style:none;margin:0;padding:0;flex:1;overflow:auto}.msg-convs a{display:flex;gap:8px;align-items:center;padding:8px;border-radius:10px;text-decoration:none;color:var(--fg)}
.msg-convs a:hover{background:var(--bg2)}.msg-convs a.on{background:color-mix(in srgb,var(--acc) 16%,transparent)}.msg-convs .grow{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.msg-convs .mi{width:26px;height:26px;border-radius:8px;background:var(--bg2);display:grid;place-items:center;flex:none}
.msg-badge{background:var(--acc);color:#fff;border-radius:999px;font-size:12px;padding:1px 7px;font-weight:700}
.msg-main{display:flex;flex-direction:column;min-width:0;min-height:0}
.msg-head{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--bd)}.msg-back{display:none}
.msg-callbar{padding:8px 14px;background:color-mix(in srgb,var(--bad) 12%,transparent);display:flex;gap:10px;align-items:center}
.msg-msgs{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:4px}
.msg-day{text-align:center;font-size:12px;color:var(--mut);margin:10px 0 4px}.msg-sys{text-align:center;font-size:12.5px;color:var(--mut);margin:4px 0}
.msg-row{display:flex}.msg-row.mine{justify-content:flex-end}
.msg-bub{max-width:min(620px,78%);background:var(--bg2);border-radius:14px;padding:7px 11px;overflow-wrap:anywhere}.msg-row.mine .msg-bub{background:color-mix(in srgb,var(--acc) 22%,var(--card))}
.msg-who{font-size:12.5px;font-weight:700;color:var(--acc2)}.msg-co{font-size:11px;font-weight:600;border:1px solid var(--bd);border-radius:6px;padding:0 5px;color:var(--mut)}
.msg-meta{font-size:11px;color:var(--mut);text-align:end;margin-top:2px}.msg-meta a{color:var(--mut);text-decoration:none;margin-inline-start:4px}
.msg-img{max-width:280px;max-height:240px;border-radius:10px;display:block;margin:2px 0}.msg-filechip{display:inline-block;padding:6px 10px;border:1px solid var(--bd);border-radius:10px;text-decoration:none;color:var(--fg)}
.msg-compose{display:flex;gap:8px;align-items:flex-end;padding:10px;border-top:1px solid var(--bd)}.msg-compose textarea{margin:0;resize:none;max-height:160px;flex:1}.msg-attach{margin:0;cursor:pointer}
.msg-ro{padding:8px 14px;margin:0;border-top:1px solid var(--bd)}
.msg-userpick{max-height:240px;overflow:auto;border:1px solid var(--bd);border-radius:10px;padding:6px 10px}.msg-userpick label{margin:4px 0}
.msg-call{position:fixed;inset:0;z-index:60;background:#0b0f17;display:flex;flex-direction:column}
.msg-vids{flex:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:8px;padding:10px;overflow:auto;align-content:center}
.msg-vid{position:relative;background:#000;border-radius:12px;overflow:hidden;aspect-ratio:16/9}.msg-vid video{width:100%;height:100%;object-fit:cover}.msg-vid.mine video{transform:scaleX(-1)}
.msg-vid span{position:absolute;inset-inline-start:8px;bottom:6px;color:#fff;font-size:13px;background:rgba(0,0,0,.45);padding:1px 8px;border-radius:6px}
.msg-call-ctl{display:flex;gap:12px;justify-content:center;align-items:center;padding:14px;color:#fff}.msg-call-ctl button{font-size:20px;min-width:56px;border-radius:999px}.msg-call-ctl button.off{opacity:.45;text-decoration:line-through}.msg-call-ctl button.on{border-color:var(--ok)}
@media (max-width:860px){.msg-app{grid-template-columns:1fr;height:calc(100vh - 150px);height:calc(100dvh - 150px);min-height:420px;margin-top:8px}.msg-compose{padding:8px;padding-bottom:max(8px,env(safe-area-inset-bottom))}.msg-compose #bSend{min-width:44px;min-height:40px}.msg-main{display:none}.msg-app.show-thread .msg-side{display:none}.msg-app.show-thread .msg-main{display:flex}.msg-back{display:inline-block}.msg-bub{max-width:88%}}
/* v26 pilot programme */
.pl-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 16px;align-items:end}.pl-form .full{grid-column:1/-1;width:auto}.pl-form label{margin:0}
label.chip{display:inline-flex;gap:6px;align-items:center;cursor:pointer}label.chip input{margin:0;width:auto}
.rep-qr{display:flex;justify-content:center;margin:8px 0}.rep-qr svg{max-width:240px;height:auto;background:#fff;border-radius:10px}
.ops-chk li,.ops-log li{padding:3px 0;border-bottom:1px solid var(--bd)}.ops-log{max-height:420px;overflow:auto}
.cl-inv{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}.cl-inv .rep-qr{margin:0}.cl-inv .rep-qr svg{max-width:180px}
/* v32 practice AI + notes */
.dent-ai .ai-out:not(:empty){background:var(--bg2);border-radius:10px;padding:10px 14px;margin:8px 0;max-height:520px;overflow:auto}
.ai-st.ok{color:var(--ok,#15803d)}.ai-st.err{color:#b91c1c}.ai-st.warn{color:#b45309}
.dent-note{border-top:1px solid var(--bd);padding:8px 0}.dent-note-b{white-space:normal;overflow-wrap:anywhere}
.dpl{border:1px solid var(--bd);border-radius:10px;padding:10px 12px;margin-bottom:10px}
/* v36 patient portal */
.pp-ap{border:1px solid var(--bd);border-radius:10px;padding:10px 12px;margin-bottom:8px}
.pp-thread{display:flex;flex-direction:column;gap:6px;max-height:360px;overflow:auto;margin-bottom:8px}.pp-m{max-width:85%}.pp-m.me{align-self:flex-end;text-align:end}
.pp-b{background:var(--bg2);border-radius:12px;padding:7px 11px;display:inline-block;overflow-wrap:anywhere;text-align:start}.pp-m.me .pp-b{background:color-mix(in srgb,var(--acc) 22%,var(--card))}
/* medical wholesale & practice stock (v38) */
.med-bar{height:8px;border-radius:4px;background:var(--bd);overflow:hidden;margin:2px 0}
.med-bar i{display:block;height:100%;background:#94a3b8;border-radius:4px}
.med-bar i.mid{background:#f59e0b}.med-bar i.ok{background:#16a34a}
.med-credit{margin:0 0 8px;padding:6px 10px;border-radius:8px;background:rgba(148,163,184,.12)}
.med-credit.bad{background:rgba(239,68,68,.12);color:#b91c1c}
.med-rec.alert{border:2px solid rgba(239,68,68,.55)}
details.med-reg{border:1px dashed var(--bd);border-radius:10px;padding:6px 12px;margin:6px 0 10px}
details.med-reg summary{cursor:pointer;font-weight:600}
details.med-lot summary{cursor:pointer;list-style:none}
details.med-lot summary::-webkit-details-marker{display:none}
details.inline{display:inline-block}
details.inline summary{list-style:none}details.inline summary::-webkit-details-marker{display:none}
@media (prefers-color-scheme:dark){.med-credit.bad{color:#fca5a5}}
/* team areas (v40) */
.team-areas{display:flex;flex-wrap:wrap;gap:4px 14px;margin:4px 0 8px}
.team-area{margin:0!important;font-size:13px}
details.team-edit summary{cursor:pointer;color:var(--acc)}
details.team-edit form{margin-top:6px;min-width:240px}
.team-inv{padding:8px 0;border-bottom:1px solid var(--bd)}.team-inv:last-of-type{border-bottom:0}
.team-t td{vertical-align:top}
.team-welcome{border-inline-start:4px solid #16a34a}
.qty-hint{display:block;color:#0f766e;margin-top:2px}.shop-setup ol{padding-inline-start:18px}.shop-setup li{margin:4px 0}
/* help assistant (v42) */
.helpw{position:fixed;bottom:18px;inset-inline-end:18px;z-index:900}
.helpw-btn{width:52px;height:52px;border-radius:50%;font-size:24px;font-weight:700;padding:0;box-shadow:0 6px 20px rgba(0,0,0,.18)}
.helpw-panel{position:absolute;bottom:64px;inset-inline-end:0;width:min(380px,calc(100vw - 32px));height:min(540px,calc(100vh - 110px));background:var(--card,#fff);border:1px solid var(--bd);border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.22);display:flex;flex-direction:column;overflow:hidden}
.helpw-panel[hidden]{display:none}
.helpw-panel header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid var(--bd)}
.helpw-log{flex:1;overflow-y:auto;padding:10px 12px;display:flex;flex-direction:column;gap:8px}
.hw-msg{max-width:92%;padding:8px 11px;border-radius:12px;font-size:14px;line-height:1.5}
.hw-msg p{margin:0 0 6px}.hw-msg p:last-child{margin-bottom:0}
.hw-bot{align-self:flex-start;background:rgba(109,94,252,.08)}
.hw-me{align-self:flex-end;background:var(--acc);color:#fff}
.hw-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.hw-chips .chip{font-size:12px}
.hw-follow{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.hw-support textarea{width:100%;margin:0 0 6px}
.hw-ai h1,.hw-ai h2,.hw-ai h3{font-size:15px;margin:6px 0}.hw-ai ul,.hw-ai ol{padding-inline-start:18px;margin:4px 0}
.helpw-f{display:flex;gap:6px;padding:8px;border-top:1px solid var(--bd)}.helpw-f input{margin:0;flex:1;min-width:0}.helpw-f button{margin:0}
body.field .helpw{bottom:76px}
@media print{.helpw{display:none!important}}
/* connections hub (v43) */
.con-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:16px;margin-top:10px;align-items:start}
.con-grid .card{margin:0}
.con h3{margin-top:0;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;align-items:center}
.con-row{display:flex;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--bd)}
.con-main{margin-top:10px;padding:10px;border-radius:12px;background:rgba(109,94,252,.06)}
.con-steps{padding-inline-start:18px;margin:8px 0}.con-steps li{margin:3px 0}
@media (max-width:520px){.con-grid{grid-template-columns:1fr}}
/* WhatsApp & catalog (v44) */
.wa-wrap{display:grid;grid-template-columns:320px 1fr;gap:16px;margin-top:10px;align-items:start}
.wa-wrap .card{margin:0}
.wa-list{padding:6px;max-height:75vh;overflow-y:auto}
.wa-conv{display:block;padding:9px 10px;border-radius:10px;color:inherit;text-decoration:none;border-bottom:1px solid var(--bd)}
.wa-conv.on,.wa-conv:hover{background:rgba(37,211,102,.1)}
.wa-msgs{display:flex;flex-direction:column;gap:6px;max-height:60vh;overflow-y:auto;padding:8px 0}
.wa-m{max-width:80%;padding:8px 11px;border-radius:12px;font-size:14px;line-height:1.45}
.wa-m span{display:block;margin-top:3px}
.wa-in{align-self:flex-start;background:rgba(148,163,184,.15)}
.wa-out{align-self:flex-end;background:rgba(37,211,102,.16)}
.wa-reply{display:flex;gap:6px;margin-top:8px}.wa-reply textarea{margin:0;flex:1}.wa-reply button{margin:0}
.wa-btn{background:#25d366!important;border-color:#25d366!important;color:#fff!important}
@media (max-width:820px){.wa-wrap{grid-template-columns:1fr}.wa-wrap.has-thread .wa-list{display:none}}
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px;margin:12px 0}
.cat-item{display:flex;flex-direction:column;gap:6px;margin:0}
.cat-img{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;border-radius:10px;background:rgba(148,163,184,.12);overflow:hidden;font-size:42px;text-decoration:none}
.cat-img img{width:100%;height:100%;object-fit:cover}
.cat-one{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:20px}.cat-one img{width:100%;border-radius:12px}
@media (max-width:700px){.cat-one{grid-template-columns:1fr}}
.cat-social{display:flex;gap:6px;flex-wrap:wrap}
/* online store */
.cart-btn{white-space:nowrap}.cart-btn .badge{margin-inline-start:4px}
.cart-qty{max-width:80px;margin:0;text-align:center}
.cart-img{width:48px;height:48px;object-fit:cover;border-radius:8px;display:block}
.store-cart td{vertical-align:middle}
.store-steps{display:flex;gap:6px;padding:0;margin:14px 0;list-style:none;counter-reset:st}
.store-steps li{flex:1;padding:8px 6px;border-radius:8px;background:rgba(148,163,184,.15);text-align:center;font-size:13px}
.store-steps li.on{background:#16a34a;color:#fff}
.store-pay{border:1px solid rgba(148,163,184,.35);border-radius:10px;padding:8px 12px}
.store-pay legend{padding:0 6px;font-size:13px}
.store-sum{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:10px 12px;border-radius:10px;background:rgba(148,163,184,.12)}
.big-btn{font-size:16px;padding:12px 22px}
.store-kpi{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:12px 0}
.store-kpi .card{margin:0;padding:12px}.store-kpi b{display:block;font-size:22px}
.wn-banner{display:flex;align-items:center;gap:12px;margin:12px 0;padding:12px 16px;border-radius:var(--r);border:1px solid color-mix(in srgb,var(--acc) 45%,var(--bd));background:color-mix(in srgb,var(--acc) 10%,var(--card));color:var(--fg);text-decoration:none}
.wn-banner>span:first-child{font-size:24px}.wn-banner small{display:block;color:var(--mut);font-size:13px;margin-top:2px}.wn-banner .wn-go{margin-inline-start:auto;white-space:nowrap;font-weight:600;color:var(--acc2)}
@media (max-width:560px){.wn-banner{flex-wrap:wrap}.wn-banner .wn-go{margin-inline-start:0}}
.bell{position:relative}.bell .nb{position:absolute;top:-6px;inset-inline-end:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--bad);color:#fff;font-size:11px;line-height:18px;text-align:center;font-weight:700}
.bell .nb[hidden]{display:none}
#nt-toasts{position:fixed;inset-inline-end:16px;bottom:88px;z-index:60;display:grid;gap:8px;max-width:min(380px,calc(100vw - 32px))}
.nt-toast{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:12px;background:var(--card);border:1px solid color-mix(in srgb,var(--acc) 50%,var(--bd));box-shadow:0 10px 30px rgba(0,0,0,.25);color:var(--fg);text-decoration:none;font-size:14px;animation:ntin .25s ease-out;transition:opacity .4s,transform .4s}
.nt-toast.out{opacity:0;transform:translateY(8px)}@keyframes ntin{from{opacity:0;transform:translateY(8px)}}
.ann-bar{background:color-mix(in srgb,var(--warn) 16%,var(--bg2));border-bottom:1px solid color-mix(in srgb,var(--warn) 45%,var(--bd));font-size:14px}
.ann-bar.live{background:color-mix(in srgb,var(--acc) 18%,var(--bg2));border-color:color-mix(in srgb,var(--acc) 45%,var(--bd))}
.ann-bar .wrap{display:flex;gap:10px;align-items:center;padding-block:9px}.ann-bar .ann-x{margin-inline-start:auto}.ann-when{white-space:nowrap;color:var(--mut)}
.nt-list{display:grid;gap:6px}.nt-it{display:grid;grid-template-columns:30px 1fr auto;gap:10px;align-items:start;padding:11px 12px;border-radius:12px;border:1px solid var(--bd);background:var(--card);color:var(--fg);text-decoration:none}
.nt-it.un{border-color:color-mix(in srgb,var(--acc) 55%,var(--bd));background:color-mix(in srgb,var(--acc) 7%,var(--card))}.nt-it .ic{font-size:20px}.nt-it time{font-size:12px;color:var(--mut);white-space:nowrap}
.nt-day{margin:14px 0 4px;font-size:13px;color:var(--mut);font-weight:600}
.anam-chips{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.anam-chip{font-size:13px;padding:4px 10px;border-radius:999px;border:1px solid var(--bd);background:var(--bg2)}
.anam-chip.red{border-color:color-mix(in srgb,var(--bad) 55%,var(--bd));background:color-mix(in srgb,var(--bad) 12%,var(--card));font-weight:600}
.anam-chip.warn{border-color:color-mix(in srgb,var(--warn) 45%,var(--bd));background:color-mix(in srgb,var(--warn) 10%,var(--card))}
.anam-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:4px 14px}.anam-grid .check{margin:0}
#anam summary{cursor:pointer;list-style:none}#anam summary::-webkit-details-marker{display:none}
.dsm-it{display:flex;gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--bd)}.dsm-it:first-of-type{border-top:0}
.dsm-risk{font-size:11px;padding:1px 6px;border-radius:999px;background:color-mix(in srgb,var(--warn) 18%,transparent)}.dsm-risk.hi{background:color-mix(in srgb,var(--bad) 18%,transparent)}
.dsm-brief li{padding:4px 0}
.dent-ap.st-in_chair{border-inline-start:4px solid var(--ok)}
.dent-ap .dsm-risk{display:inline-block;width:auto;max-width:max-content;align-self:flex-start;vertical-align:middle}
.dreq-urg{display:inline-block;font-size:13px;padding:2px 10px;border-radius:999px;border:1px solid var(--bd);white-space:nowrap}
.dreq-urg.u2{border-color:color-mix(in srgb,var(--warn) 55%,var(--bd));background:color-mix(in srgb,var(--warn) 12%,transparent)}
.dreq-urg.u3{border-color:color-mix(in srgb,var(--bad) 60%,var(--bd));background:color-mix(in srgb,var(--bad) 14%,transparent);font-weight:700}
.pp-req-chip{border-color:color-mix(in srgb,var(--acc) 55%,var(--bd));font-weight:600}
.pp-req-it{border:1px solid var(--bd);border-radius:12px;padding:10px 12px;margin:8px 0}.pp-req-it summary{cursor:pointer}
.pp-req input[type=range]{width:100%}
/* wholesale */
.fw-promo{display:inline-block;margin-top:4px;font-size:12px;padding:1px 8px;border-radius:999px;border:1px solid color-mix(in srgb,var(--ok) 50%,var(--bd));background:color-mix(in srgb,var(--ok) 10%,transparent)}
.rep-q select,.rep-u{width:auto;margin:4px 0 0;padding:4px 6px;font-size:12px}
.fw-reason select{width:auto;font-size:12px;padding:4px 6px}
.fw-item{flex-wrap:wrap}
.fw-pay{border:1px solid var(--bd);border-radius:12px;padding:8px 12px;margin:10px 0}.fw-pay legend{font-weight:600;padding:0 6px}
.fw-days{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center}.fw-days .check{margin:0}
.fw-done{border-color:color-mix(in srgb,var(--ok) 50%,var(--bd))}
b.bad,span.bad{color:var(--bad)}
tr.tot td{border-top:2px solid var(--bd)}
/* branches */
.br-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px}
.team-br select{width:auto;margin:6px 0 0;padding:3px 6px;font-size:12px}
/* IT department */
.sla{display:inline-block;font-size:12px;padding:1px 8px;border-radius:999px;border:1px solid var(--bd);white-space:nowrap}
.sla-late{border-color:color-mix(in srgb,var(--bad) 60%,var(--bd));background:color-mix(in srgb,var(--bad) 12%,transparent);font-weight:600}
.sla-soon{border-color:color-mix(in srgb,var(--warn) 60%,var(--bd));background:color-mix(in srgb,var(--warn) 12%,transparent)}
.sla-met,.sla-ok{color:var(--mut)}
.site-dot,span.hl{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--mut);vertical-align:middle}
.site-dot.st-up,span.hl.hl-ok{background:var(--ok)}.site-dot.st-down,span.hl.hl-bad{background:var(--bad)}.site-dot.st-warn,span.hl.hl-warn{background:var(--warn)}
.site-bars{display:flex;gap:2px;align-items:flex-end;height:22px;margin:8px 0}.site-bars i{flex:1;max-width:8px;height:100%;border-radius:2px;background:var(--ok)}.site-bars i.dn{background:var(--bad)}
.it-access{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.it-access select,.it-access input[name=remote_id]{width:auto;max-width:150px;margin:0;padding:4px 6px}
.it-rate{margin-top:12px;border-top:1px solid var(--bd);padding-top:10px}.it-rate .check{display:inline-flex;margin-inline-end:10px}
.msg.it-ai{border-style:dashed}
tr.on td{background:color-mix(in srgb,var(--acc) 8%,transparent)}
.ag{display:inline-block;font-size:11px;padding:0 7px;border-radius:999px;border:1px solid var(--bd);vertical-align:middle;font-weight:500}
.ag-live{border-color:var(--ok);color:var(--ok)}.ag-online{border-color:color-mix(in srgb,var(--ok) 50%,var(--bd))}.ag-offline,.ag-none{color:var(--mut)}
.it-acts{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.it-acts form{margin:0}
.it-jobs details{border:1px solid var(--bd);border-radius:10px;padding:6px 10px;margin:6px 0}.it-jobs summary{cursor:pointer}
.it-out{max-height:420px;overflow:auto;background:color-mix(in srgb,var(--fg) 5%,transparent);padding:10px;border-radius:8px;font-size:12px;white-space:pre;direction:ltr;text-align:left}
.gr{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 5px;border-radius:6px;color:#fff;font-weight:800;font-size:12px;vertical-align:middle;background:var(--mut)}
.gr-A{background:#15803d}.gr-B{background:#65a30d}.gr-C{background:#ca8a04}.gr-D{background:#ea580c}.gr-F{background:#dc2626}
.it-aud{margin-top:12px;border-top:1px solid var(--bd);padding-top:8px}.it-quick{margin:8px 0}
.ls-msgs{max-height:300px;overflow:auto;border:1px solid var(--bd);border-radius:10px;padding:8px;margin-bottom:8px;min-height:80px}
.ls-m{margin:4px 0;padding:6px 10px;border-radius:10px;background:color-mix(in srgb,var(--fg) 5%,transparent);max-width:85%}.ls-m.st{background:color-mix(in srgb,var(--acc) 14%,transparent);margin-inline-start:auto}.ls-m small{color:var(--mut);display:block}
.ls-screen{margin-top:10px;border:1px solid var(--bd);border-radius:12px;min-height:120px;display:flex;align-items:center;justify-content:center;overflow:auto;background:#111}.ls-screen img{max-width:100%;height:auto;display:block}.ls-screen p{color:#aaa}
.bk{display:inline-block;font-size:12px;padding:1px 8px;border-radius:999px;border:1px solid var(--bd);white-space:nowrap}
.bk-ok{border-color:color-mix(in srgb,#16a34a 60%,var(--bd));background:color-mix(in srgb,#16a34a 12%,transparent)}
.bk-warn{border-color:color-mix(in srgb,var(--warn) 60%,var(--bd));background:color-mix(in srgb,var(--warn) 12%,transparent)}
.bk-failed,.bk-missed{border-color:color-mix(in srgb,var(--bad) 60%,var(--bd));background:color-mix(in srgb,var(--bad) 12%,transparent);font-weight:600}
.bk-new{color:var(--mut)}
.cl-it{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--bd)}
.cl-it .cl-q{width:80px;margin:0}
.cl-qty{display:flex;align-items:center;gap:4px}.cl-qty input{width:64px;margin:0;text-align:center}.cl-qty .btn,.cl-qty button{min-width:36px}
.cl-sum{position:sticky;bottom:8px;z-index:2;box-shadow:0 6px 24px rgba(0,0,0,.12)}
.cl-slot{border:1px solid var(--bd);border-radius:12px;padding:10px;margin:10px 0}.cl-slot-h{display:flex;justify-content:space-between;margin-bottom:6px}
.cl-job{display:flex;gap:10px;flex-wrap:wrap;padding:8px 0;border-top:1px dashed var(--bd)}.cl-job-r{display:flex;flex-direction:column;align-items:flex-end;gap:4px;min-width:150px}
.bk-slots label.btn{cursor:pointer}.bk-slots label.btn:has(input:checked){background:var(--acc);color:#fff;border-color:var(--acc)}.bk-slots label.disabled{opacity:.45;pointer-events:none}
@media (max-width:600px){.cl-job-r{align-items:flex-start;min-width:0;width:100%}}

/* nursery / school */
.kg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}.kg-card{border:1px solid var(--bd);border-radius:12px;padding:10px;background:var(--bg2);border-inline-start:4px solid var(--bd)}
.kg-card.st-present,.kg-card.st-late{border-inline-start-color:#22c55e}.kg-card.st-late{border-inline-start-color:#f59e0b}.kg-card.st-absent,.kg-card.st-sick,.kg-card.st-excused{border-inline-start-color:#ef4444;opacity:.85}
.kg-head{display:flex;gap:10px;align-items:center}.kg-ava{width:40px;height:40px;border-radius:50%;object-fit:cover;background:var(--bg);display:inline-flex;align-items:center;justify-content:center;font-size:22px;flex:none}.kg-ava.big{width:64px;height:64px;font-size:34px}
.kg-st{white-space:nowrap}.kg-week{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;margin-top:10px}.kg-day{border:1px solid var(--bd);border-radius:12px;padding:8px;background:var(--card)}.kg-day.today{border-color:var(--acc)}
.kg-day h4{margin:0 0 6px}.kg-act{padding:4px 0;border-top:1px dashed var(--bd);position:relative}.kg-act form{position:absolute;inset-inline-end:0;top:2px}
.kg-post{padding:10px 0;border-top:1px solid var(--bd)}.kg-post.internal{background:repeating-linear-gradient(45deg,transparent,transparent 8px,var(--bg2) 8px,var(--bg2) 16px)}.kg-photo{max-width:100%;max-height:320px;border-radius:10px;margin-top:6px}
.kg-status{font-size:17px;font-weight:600;margin:8px 0}.kg-daily{display:flex;gap:14px;flex-wrap:wrap;background:var(--bg2);border-radius:10px;padding:8px 10px}
body.kp .card.kg-post{border-top:1px solid var(--bd);padding:14px}
@media (max-width:600px){.kg-grid{grid-template-columns:1fr}}
.kg-lv{display:inline-flex;gap:2px;direction:ltr}.kg-lv label{cursor:pointer;display:inline-block;width:auto;margin:0}.kg-lv input{position:absolute;opacity:0;width:0!important;height:0;margin:0}.kg-lv span{display:inline-block;width:26px;height:26px;line-height:26px;text-align:center;border:1px solid var(--bd);border-radius:6px;font-size:12px}
.kg-lv input:checked+span{color:#fff;border-color:transparent}.kg-lv input:checked+.l0{background:#94a3b8}.kg-lv input:checked+.l1{background:#ef4444}.kg-lv input:checked+.l2{background:#f59e0b}.kg-lv input:checked+.l3{background:#22c55e}.kg-lv input:checked+.l4{background:#6d5efc}
.kg-skill{display:grid!important;grid-template-columns:1fr auto minmax(90px,140px);align-items:center;padding:3px 0;border-top:1px dashed var(--bd)}.kg-skill input:not([type=radio]){width:100%!important}.kg-bar{height:8px;background:var(--bg2);border-radius:4px;overflow:hidden}.kg-bar i{display:block;height:100%;background:var(--acc)}
@media (max-width:600px){.kg-skill{grid-template-columns:1fr auto}.kg-skill input:not([type=radio]){grid-column:1/-1}}
.kg-video{position:relative;padding-top:56.25%;border-radius:12px;overflow:hidden;background:#000;margin:8px 0}.kg-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.kg-lesson-body{white-space:pre-wrap;line-height:1.6;margin:10px 0}.kg-lesson-row{display:flex;justify-content:space-between;gap:8px;padding:8px 0;border-top:1px dashed var(--bd);text-decoration:none;color:inherit}
.kg-q{border:1px solid var(--bd);border-radius:10px;padding:8px 10px;margin:6px 0}.kg-q.ok{border-color:var(--ok)}.kg-q.bad{border-color:#ef4444}.kg-q label{display:block;margin:4px 0}
.logo.has-img{background:#fff;padding:2px;overflow:hidden}.logo.has-img img{width:100%;height:100%;object-fit:contain;display:block}
.grd-sh.open{border-inline-start:3px solid #ef4444;padding-inline-start:6px}.grd-sh.st-in{border-inline-start:3px solid #22c55e;padding-inline-start:6px}.grd-sh.st-done{opacity:.8}.grd-sh.st-no_show{border-inline-start:3px solid #ef4444;padding-inline-start:6px;background:#ef44441a}
.cal-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:10px}.cal-week.one{grid-template-columns:1fr}
.cal-day{background:var(--card);border:1px solid var(--bd);border-radius:12px;padding:8px;min-height:120px;min-width:0}.cal-day.today{border-color:var(--acc);box-shadow:0 0 0 1px var(--acc) inset}
.cal-dh{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:.9em}.cal-dh a{text-decoration:none;color:inherit}.cal-add{width:22px;height:22px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;border:1px dashed var(--bd);opacity:.7}
.cal-it{display:block;border-inline-start:3px solid var(--c);background:color-mix(in srgb,var(--c) 10%,transparent);border-radius:6px;padding:4px 6px;margin:4px 0;font-size:.82em;text-decoration:none;color:inherit;overflow:hidden;text-overflow:ellipsis;word-break:break-word}
.cal-it b{font-weight:600}.cal-it .cal-t{opacity:.8;font-variant-numeric:tabular-nums}.cal-it .cal-sub{display:block;opacity:.7;font-size:.92em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cal-it.faded{opacity:.55;border-inline-start-style:dashed}.cal-it.clash{outline:2px solid #ef4444;outline-offset:-1px}.cal-it.dl{background:transparent;border:1px dashed var(--c)}
.cal-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-top:10px}.cal-mh{font-size:.8em;opacity:.7;text-align:center}
.cal-md{background:var(--card);border:1px solid var(--bd);border-radius:8px;padding:4px;min-height:84px;min-width:0}.cal-md.other{opacity:.45}.cal-md.today{border-color:var(--acc)}.cal-dn{font-weight:600;font-size:.85em;text-decoration:none;color:inherit}
.cal-md .cal-it{font-size:.72em;padding:2px 4px;white-space:nowrap}.cal-src .chip{border-color:color-mix(in srgb,var(--c) 50%,var(--bd))}.cal-src .chip.on{background:color-mix(in srgb,var(--c) 18%,transparent)}
.cal-who{display:flex;flex-wrap:wrap;gap:4px 12px;max-height:180px;overflow:auto;border:1px solid var(--bd);border-radius:8px;padding:6px;margin-top:4px}
@media (max-width:900px){.cal-week{grid-template-columns:1fr}.cal-day{min-height:0}.cal-month{gap:2px}.cal-md{min-height:56px;padding:2px}.cal-md .cal-it{font-size:.65em}.cal-md .cal-it .cal-t{display:none}}
.gym-door input[name=q]{font-size:18px;padding:12px 14px}.gym-res{display:flex;gap:14px;align-items:flex-start;margin-top:12px;padding:14px;border-radius:14px;border:2px solid var(--bd)}
.gym-res.ok{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,transparent)}.gym-res.bad{border-color:#ef4444;background:color-mix(in srgb,#ef4444 10%,transparent)}.gym-res .big{font-size:42px;line-height:1}
.gym-qr{background:#fff;border-radius:10px;padding:4px;line-height:0;flex:none}.gym-qr svg{display:block;width:132px;height:132px}.gym-qr.big svg{width:190px;height:190px}
.gym-card-in{display:flex;gap:16px;justify-content:space-between;align-items:center;flex-wrap:wrap}
.gym-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:8px}.gym-spark{width:100%;height:70px;display:block}
.gym-hours{display:grid;grid-template-columns:repeat(19,1fr);gap:3px;align-items:end;height:140px;padding-top:8px}.gym-hours div{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%}
.gym-hours i{display:block;width:100%;background:linear-gradient(180deg,#f97316,#fb923c);border-radius:4px 4px 0 0;min-height:2px}.gym-hours span{font-size:10px;opacity:.6;margin-top:3px}
@media (max-width:700px){.gym-charts{grid-template-columns:1fr}.gym-qr svg{width:110px;height:110px}}
.rst-pos{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:14px;margin-top:10px;align-items:start}.rst-ticket{position:sticky;top:70px}
.rst-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin-top:8px}.rst-grid form{margin:0}
.rst-btn{all:unset;box-sizing:border-box;width:100%;min-height:96px;display:flex;flex-direction:column;gap:2px;align-items:center;justify-content:center;text-align:center;cursor:pointer;border:1px solid var(--bd);border-radius:14px;padding:10px;background:var(--card);transition:transform .08s,border-color .15s}
.rst-btn:hover{border-color:var(--acc)}.rst-btn:active{transform:scale(.97)}.rst-btn[disabled]{opacity:.4;cursor:not-allowed}.rst-btn .ic{font-size:28px}.rst-btn b{font-size:14px}.rst-btn span:last-child{font-size:12.5px;opacity:.75}
.rst-line{display:flex;gap:6px;align-items:center;padding:7px 0;border-bottom:1px dashed var(--bd)}.rst-line.st-qr{background:color-mix(in srgb,#f59e0b 12%,transparent)}.rst-line.st-ready{background:color-mix(in srgb,var(--ok) 12%,transparent)}
.rst-tot{display:grid;grid-template-columns:1fr auto;gap:4px 10px;margin-top:10px}.rst-pay{margin-top:10px;display:grid;gap:6px}.rst-pay .chip input{margin:0 4px 0 0}
.rst-floor{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;margin-top:10px}.rst-floor form{margin:0}.rst-area{grid-column:1/-1;margin:10px 0 0;opacity:.7}
.rst-table{all:unset;box-sizing:border-box;position:relative;width:100%;height:96px;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;border:2px solid var(--bd);background:var(--card)}
.rst-table b{font-size:22px}.rst-table span{font-size:12px;opacity:.8}.rst-table.busy{border-color:#f59e0b;background:color-mix(in srgb,#f59e0b 12%,var(--card))}.rst-table.rdy{border-color:var(--ok)}.rst-table.qr{animation:rstPulse 1.4s infinite}
.rst-table i{position:absolute;top:6px;inset-inline-end:8px;font-style:normal}.rst-table em{position:absolute;bottom:4px;font-size:11px;font-style:normal;opacity:.8}
@keyframes rstPulse{50%{box-shadow:0 0 0 4px color-mix(in srgb,#f59e0b 40%,transparent)}}
.rst-kds{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin-top:10px;align-items:start}.rst-kcard{border-top:5px solid var(--ok)}.rst-kcard.warn{border-top-color:#f59e0b}.rst-kcard.late{border-top-color:#ef4444}
.rst-kl{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:6px 0;border-bottom:1px dashed var(--bd);font-size:16px}.rst-kl .stage{margin-inline-start:auto}.rst-kl .note{width:100%;color:#ef4444;font-size:13px;font-weight:600}.rst-kl.st-ready{opacity:.55;text-decoration:line-through}
.rst-qrs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.rst-qrc{border:1px solid var(--bd);border-radius:12px;padding:10px;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.rst-qrc .gym-qr svg{width:110px;height:110px}
.rst-mi{display:flex;gap:10px;align-items:center;padding:10px 12px;margin:8px 0}.rst-mi .ic{font-size:30px}.rst-q{display:flex;align-items:center;gap:4px}.rst-q input{width:42px;text-align:center;margin:0}
.rst-cartbar{position:sticky;bottom:8px;margin-top:12px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
@media (max-width:900px){.rst-pos{grid-template-columns:1fr}.rst-ticket{position:static}}
@media print{.noprint,header,nav,.side,.chips{display:none!important}.rst-bill{box-shadow:none;border:0}}
/* salons & spas */
.sal-wrap{overflow-x:auto;padding:0}
.sal-grid{display:grid;grid-template-columns:52px repeat(var(--n),minmax(140px,1fr));min-width:calc(52px + var(--n) * 140px)}
.sal-hd{position:sticky;top:0;z-index:3;background:var(--card);padding:8px;border-bottom:1px solid var(--bd);display:flex;flex-direction:column;gap:1px;min-width:0}
.sal-hd b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sal-hd small{color:var(--mut);font-size:11px}
.sal-tcol{position:relative}.sal-tcol span{position:absolute;inset-inline-end:6px;transform:translateY(-50%);font-size:11px;color:var(--mut)}.sal-tcol span:first-child{transform:none}
.sal-col{position:relative;border-inline-start:1px solid var(--bd);background:repeating-linear-gradient(135deg,color-mix(in srgb,var(--bd) 35%,transparent) 0 6px,transparent 6px 12px);min-width:0}
.sal-work{position:absolute;inset-inline:0;background:var(--card) linear-gradient(to bottom,color-mix(in srgb,var(--bd) 70%,transparent) 1px,transparent 1px) 0 0/100% 96px}
.sal-slot{position:absolute;inset-inline:0;display:block;z-index:1;border-radius:6px}
.sal-slot:hover,.sal-slot:focus-visible{background:color-mix(in srgb,var(--acc) 14%,transparent);outline:none}
.sal-slot:hover::after{content:"+";position:absolute;inset-inline-start:6px;top:0;font-size:12px;color:var(--acc2)}
.sal-ap{position:absolute;inset-inline:3px;z-index:2;border-radius:8px;background:color-mix(in srgb,var(--c) 20%,var(--card));border:1px solid color-mix(in srgb,var(--c) 45%,transparent);border-inline-start:4px solid var(--c);padding:2px 6px;font-size:12px;line-height:1.3;overflow:hidden;color:var(--fg);text-decoration:none}
.sal-ap span{display:block;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sal-ap:hover{z-index:4;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.sal-ap.arr{background:color-mix(in srgb,var(--c) 38%,var(--card))}.sal-ap.done{opacity:.55}.sal-ap.ns{opacity:.45;text-decoration:line-through}
.sal-dot{display:inline-block;width:10px;height:10px;border-radius:50%;vertical-align:middle;flex:none}.sal-dot.big{width:16px;height:16px}
.sal-svc{gap:8px;padding:6px 0 6px 10px;border-bottom:1px solid var(--bd);border-inline-start:3px solid var(--c);align-items:center;padding-inline-start:10px}
.sal-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:4px 12px;margin-top:4px}
.sal-checks label{display:flex;gap:6px;align-items:baseline;font-size:14px;margin:0}.sal-checks input{width:auto;margin:0}
.sal-slots{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.sal-slots .chip{min-width:62px;text-align:center}
.sal-note{border-inline-start:3px solid #8b5cf6;padding:4px 10px;margin:6px 0;background:color-mix(in srgb,#8b5cf6 7%,transparent);border-radius:6px}.sal-note small{color:var(--mut)}
.sal-voucher{display:grid;gap:2px;justify-items:start;padding:18px 20px;border-radius:16px;color:#fff;background:linear-gradient(135deg,#db2777,#8b5cf6);margin-bottom:10px;max-width:360px}
.sal-voucher b{font-size:30px;line-height:1.1}.sal-voucher code{font-size:20px;letter-spacing:2px;background:rgba(255,255,255,.18);padding:2px 10px;border-radius:8px;margin-top:6px}.sal-voucher small{opacity:.85}
.sal-steps{display:flex;gap:6px;list-style:none;padding:0;margin:16px 0 10px;counter-reset:s}
.sal-steps li{flex:1;counter-increment:s;font-size:13px;color:var(--mut);border-top:3px solid var(--bd);padding-top:6px;min-width:0}
.sal-steps li::before{content:counter(s) ". "}.sal-steps li.on{color:var(--fg);border-color:var(--acc)}.sal-steps li.ok{border-color:var(--ok)}
.sal-pick{display:flex;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--bd);border-inline-start:4px solid var(--c);border-radius:12px;margin:6px 0;cursor:pointer}
.sal-pick input{width:auto;margin:0}.sal-pick small{display:block;color:var(--mut)}.sal-pick:has(input:checked){background:color-mix(in srgb,var(--c) 12%,transparent);border-color:var(--c)}
.sal-days{display:flex;gap:6px;overflow-x:auto;padding:8px 0;scrollbar-width:thin}
.sal-days a{flex:none;display:grid;justify-items:center;min-width:54px;padding:6px 4px;border:1px solid var(--bd);border-radius:12px;text-decoration:none;color:var(--fg)}
.sal-days a b{font-size:18px}.sal-days a small{font-size:11px;color:var(--mut)}.sal-days a.on{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 14%,transparent)}
.sal-when{font-size:17px}.sal-conf{text-align:center}.sal-ok{width:56px;height:56px;border-radius:50%;margin:0 auto;display:grid;place-items:center;background:var(--ok);color:#fff;font-size:30px}
.hp{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);opacity:0;pointer-events:none}
@media print{body:has(.sal-voucher) .card:not(#voucher),body:has(.sal-voucher) form,body:has(.sal-voucher) .chips,body:has(.sal-voucher) .toolbar{display:none}}
/* real estate */
.prop-map{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px}
.prop-u{display:grid;gap:1px;padding:8px 10px;border-radius:10px;border:1px solid var(--bd);border-inline-start:4px solid var(--c,var(--bd));text-decoration:none;color:var(--fg);min-width:0;background:color-mix(in srgb,var(--c,transparent) 10%,var(--card))}
.prop-u b{font-size:15px}.prop-u small{font-size:11px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.prop-u.ok{--c:#22c55e}.prop-u.soon{--c:#f59e0b}.prop-u.late{--c:#ef4444}.prop-u.free{--c:#94a3b8;border-style:dashed}
.prop-legend .prop-u{display:inline-block;width:14px;height:14px;padding:0;vertical-align:middle;border-radius:4px}
.prop-due b{font-size:30px;display:block}.prop-due.has{border-color:var(--warn)}
.prop-net td{border-top:2px solid var(--fg)}.prop-sign{display:flex;justify-content:space-between;gap:20px;margin-top:60px}.prop-sign span{flex:1;border-top:1px solid var(--fg);padding-top:6px;text-align:center}
@media print{.prop-print{border:0}.no-print{display:none}}
/* facility management */
.fm-chk{display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center;padding:8px 10px;border:1px solid var(--bd);border-radius:10px;margin:6px 0;border-inline-start:4px solid var(--bd)}
.fm-chk.ok{border-inline-start-color:var(--ok)}.fm-chk.fail{border-inline-start-color:var(--bad);background:color-mix(in srgb,var(--bad) 7%,transparent)}
.fm-chk input[type=text],.fm-chk input:not([type]){grid-column:1/-1;margin:0;padding:6px 8px;font-size:13px}
.fm-pf{display:flex;gap:10px}.fm-pf label{display:flex;gap:4px;align-items:center;margin:0;font-weight:700}.fm-pf input{width:auto;margin:0}
.fm-bars{display:flex;align-items:flex-end;gap:6px;height:180px;padding-top:18px}
.fm-bars div{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;min-width:0}
.fm-bars i{display:block;width:100%;max-width:38px;background:linear-gradient(180deg,#ea580c,#fb923c);border-radius:6px 6px 2px 2px;min-height:2px}
.fm-bars b{font-size:10px;color:var(--mut);font-weight:600}.fm-bars span{font-size:10px;color:var(--mut);margin-top:4px}
.fm-labels{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;margin-top:12px}
.fm-label{display:flex;gap:10px;align-items:center;border:1px dashed var(--bd);border-radius:10px;padding:8px;break-inside:avoid;background:var(--card)}
.fm-label b{display:block}.fm-label small{display:block;font-size:11px;color:var(--mut)}.fm-label .gym-qr svg{width:96px;height:96px}
@media print{.fm-labels{grid-template-columns:repeat(3,1fr)}.fm-label{background:#fff;color:#000}}
/* construction */
.cst-bar{height:8px;border-radius:6px;background:color-mix(in srgb,var(--bd) 70%,transparent);overflow:hidden;margin:3px 0}.cst-bar i{display:block;height:100%;background:linear-gradient(90deg,#a16207,#f59e0b);border-radius:6px}.cst-bar.big{height:14px}
.cst-sum{margin-top:10px}.cst-cert input{text-align:end}
.cst-sub{border:1px solid var(--bd);border-radius:12px;padding:10px;margin:8px 0}
.cst-ppl{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:4px 12px;margin-top:4px}.cst-ppl label{display:flex;align-items:center;gap:6px;margin:0;font-size:14px}
/* car workshops */
.gar-plate{display:inline-block;font-family:ui-monospace,Consolas,monospace;font-weight:800;letter-spacing:.5px;border:2px solid var(--fg);border-radius:6px;padding:0 6px;background:var(--card)}
.gar-board{display:grid;grid-template-columns:repeat(5,minmax(170px,1fr));gap:10px;overflow-x:auto;padding-bottom:6px;margin-top:10px}
.gar-col{background:color-mix(in srgb,var(--bd) 30%,transparent);border-radius:12px;padding:8px;min-height:120px;min-width:0}.gar-col h4{margin:2px 4px 8px}
.gar-card{display:grid;gap:2px;background:var(--card);border:1px solid var(--bd);border-radius:10px;padding:8px 10px;margin-bottom:8px;text-decoration:none;color:var(--fg)}.gar-card small{color:var(--mut);font-size:11px}
.gar-card.late{border-color:var(--bad);box-shadow:inset 3px 0 0 var(--bad)}
.gar-steps{display:flex;flex-wrap:wrap;gap:4px;margin:10px 0}.gar-steps span{font-size:12px;padding:3px 8px;border-radius:20px;border:1px solid var(--bd);color:var(--mut)}.gar-steps .ok{border-color:var(--ok);color:var(--ok)}.gar-steps .on{background:var(--acc);border-color:var(--acc);color:#fff}
.gar-chk{display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center;padding:6px 10px;border:1px solid var(--bd);border-radius:10px;margin:5px 0;border-inline-start:4px solid var(--bd)}
.gar-chk.ok{border-inline-start-color:var(--ok)}.gar-chk.warn{border-inline-start-color:var(--warn)}.gar-chk.bad{border-inline-start-color:var(--bad);background:color-mix(in srgb,var(--bad) 6%,transparent)}
.gar-chk input:not([type]),.gar-chk small{grid-column:1/-1;margin:0;padding:5px 8px;font-size:13px}.gar-tl{display:flex;gap:6px}.gar-tl label{display:flex;gap:2px;align-items:center;margin:0}.gar-tl input{width:auto;margin:0}
.gar-ql{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--bd)}.gar-ql small{display:block;color:var(--mut)}
@media (max-width:700px){.gar-board{grid-template-columns:repeat(5,78vw)}}
.formgrid .rst-pay{display:flex;flex-wrap:wrap;gap:6px;margin-top:0}.formgrid .rst-pay label.chip{display:inline-flex;align-items:center;width:auto;margin:0;padding:6px 12px;cursor:pointer}.formgrid .rst-pay label.chip input{width:auto;min-height:0}
/* production (mfg) */
.mfg-board{grid-template-columns:repeat(4,minmax(190px,1fr))}
.mfg-bar{display:block;height:5px;border-radius:5px;background:color-mix(in srgb,var(--bd) 70%,transparent);overflow:hidden;margin:3px 0}.mfg-bar i{display:block;height:100%;background:var(--acc)}
.mfg-so{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--bd)}.mfg-so:last-child{border-bottom:0}
.mfg-load td{min-width:44px;text-align:center}.mfg-load td.lo{background:color-mix(in srgb,var(--ok) 16%,transparent)}.mfg-load td.hi{background:color-mix(in srgb,var(--warn) 26%,transparent)}.mfg-load td.over{background:color-mix(in srgb,var(--bad) 28%,transparent);font-weight:700}
.mfg-op{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:8px 10px;border:1px solid var(--bd);border-radius:10px;margin:6px 0;border-inline-start:4px solid var(--bd)}.mfg-op small{display:block;color:var(--mut);font-size:12px}
.mfg-op.run{border-inline-start-color:var(--acc)}.mfg-op.done{border-inline-start-color:var(--ok);opacity:.8}.mfg-op select,.mfg-op input{padding:5px 6px;font-size:13px}
.mfg-floor{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px;margin-top:12px}
.mfg-task{display:grid;gap:6px;background:var(--card);border:1px solid var(--bd);border-radius:14px;padding:12px 14px;border-inline-start:5px solid var(--bd)}.mfg-task.run{border-inline-start-color:var(--acc);box-shadow:0 0 0 2px color-mix(in srgb,var(--acc) 25%,transparent)}.mfg-task.late{border-inline-start-color:var(--bad)}
.mfg-what{font-size:17px}.mfg-act{display:flex;flex-wrap:wrap;gap:6px}.mfg-act select{flex:1 1 140px;margin:0}.mfg-act input{width:120px;margin:0}.mfg-act button{flex:1 1 100px;padding:12px;font-size:15px}
@media (max-width:700px){.mfg-board{grid-template-columns:repeat(4,78vw)}.mfg-floor{grid-template-columns:1fr}}
/* permissions (team roles) */
.perm-off{opacity:.4;cursor:not-allowed!important}.perm-note{margin:12px 0 0;padding:8px 12px;border-radius:10px;background:color-mix(in srgb,var(--acc) 12%,transparent);border:1px solid color-mix(in srgb,var(--acc) 35%,transparent);font-size:13px}
.team-matrix td.c,.team-matrix th.c{text-align:center}.team-matrix input[type=radio]{width:auto;margin:0}.team-rl{border:1px solid var(--bd);border-radius:12px;padding:8px 12px;margin:8px 0}.team-rl summary{cursor:pointer}
.team-lv-legend{display:grid;gap:3px;margin:6px 0 10px}.team-log tr.denied td{background:color-mix(in srgb,var(--bad) 8%,transparent)}.team-log tr.fullact td:first-child{box-shadow:inset 3px 0 0 var(--warn)}
.team-role select{width:auto;max-width:220px;margin:0;padding:4px 6px;font-size:13px}
.team-sum{display:grid;gap:2px;margin:4px 0 0 18px;color:var(--mut)}.team-sum b{color:var(--fg);font-weight:600}[dir=rtl] .team-sum{margin:4px 18px 0 0}
.adm-modlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:2px 10px;margin:6px 0}.adm-modlist label{margin:0}
/* booking page (bk.php) */
.bkp-svc{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--bd);border-radius:12px;margin:6px 0;text-decoration:none;color:var(--fg)}.bkp-svc.on{border-color:var(--acc);box-shadow:0 0 0 2px color-mix(in srgb,var(--acc) 25%,transparent)}.bkp-svc small{color:var(--mut)}
.bkp-pay{margin:10px 0;padding:12px;border:1px solid color-mix(in srgb,var(--acc) 40%,transparent);border-radius:12px;background:color-mix(in srgb,var(--acc) 6%,transparent);text-align:start}
.bkp-paytext{white-space:normal;padding:8px 10px;background:var(--card);border-radius:8px;border:1px dashed var(--bd);margin:6px 0}.bkp-intro{margin:14px 0 6px}.bkp-depnote{padding:6px 10px;border-radius:8px;background:color-mix(in srgb,var(--warn) 12%,transparent)}
.bkp-hours td{padding:4px}
/* offline devices */
.node-cf{padding:10px 0;border-bottom:1px solid var(--bd)}.node-cf:last-child{border-bottom:0}.node-cf .small{overflow-wrap:anywhere}
.pill.node-st{white-space:nowrap}.pill.node-st.off{background:#fee2e2;color:#991b1b}.pill.node-st.lan{background:#fef3c7;color:#92400e}
@media (max-width:640px){.pill.node-st .ns-l{display:none}}
/* mobile app (Capacitor) */
body.in-app .top{padding-top:max(env(safe-area-inset-top),var(--safe-area-inset-top,0px))}body.in-app{padding-bottom:max(env(safe-area-inset-bottom),var(--safe-area-inset-bottom,0px))}
.hero.lean{grid-template-columns:1fr;max-width:440px;margin:8vh auto 0}
.app-qr{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.app-qr canvas,.app-qr img{background:#fff;padding:6px;border-radius:8px}
/* Microsoft 365 / imports */
.or-line{display:flex;align-items:center;gap:10px;margin:12px 0 8px;color:var(--mut);font-size:12px}.or-line:before,.or-line:after{content:"";flex:1;border-top:1px solid var(--bd)}
.ms-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px}
.imp-src{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.imp-src .card{margin:0}
.imp-sum{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin:10px 0}.imp-sum div{background:var(--bg2);border-radius:10px;padding:10px}.imp-sum b{display:block;font-size:20px}
select{max-width:100%}
/* v104 kindergarten: allergens, meal plan */
.kg-al{display:inline-block;min-width:18px;padding:0 4px;margin:0 1px;border-radius:5px;border:1px solid var(--line,#d0d5dd);font:600 11px/16px ui-monospace,monospace;text-align:center;color:inherit;opacity:.85}
.kg-al.hit{background:#fee2e2;border-color:#ef4444;color:#b91c1c;opacity:1}
.kg-risk{display:inline-block;padding:1px 6px;border-radius:6px;background:#fee2e2;color:#b91c1c;font-weight:600}
.kg-al-legend span{margin-inline-end:4px}
.kg-menu td{vertical-align:top;min-width:150px}.kg-menu tr.today td{background:rgba(109,94,252,.06)}
@media print{.kg-menu input{border:0;padding:0}}
/* v105 – section sub-menu: one calm line of tabs (scrolls sideways on phones) instead of stacked pills */
.subnav{display:flex;flex-wrap:nowrap;gap:2px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;-ms-overflow-style:none;
  margin:10px 0 14px;padding:0 2px;border-bottom:1px solid var(--bd);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 14px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 14px,#000 calc(100% - 14px),transparent 100%)}
.subnav::-webkit-scrollbar{display:none}
.subnav.at-start{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 18px),transparent 100%);mask-image:linear-gradient(90deg,#000 calc(100% - 18px),transparent 100%)}
.subnav.at-end{-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 18px);mask-image:linear-gradient(90deg,transparent 0,#000 18px)}
.subnav.at-start.at-end{-webkit-mask-image:none;mask-image:none}
.subnav>.chip{flex:0 0 auto;scroll-snap-align:start;white-space:nowrap;border:0;border-radius:0;background:none;padding:9px 11px 8px;font-size:14px;color:var(--mut);border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s,border-color .15s}
.subnav>.chip:hover{color:var(--fg)}
.subnav>.chip.on{color:var(--fg);font-weight:600;border-bottom-color:var(--acc);background:none}
.subnav>span,.subnav>form{flex:0 0 auto;align-self:center}
.br-bar{flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none;align-items:center}.br-bar::-webkit-scrollbar{display:none}
.br-bar .chip{flex:0 0 auto;white-space:nowrap;font-size:12.5px;padding:3px 10px}
@media (max-width:640px){.subnav>.chip{font-size:13.5px;padding:9px 10px 8px}}
@media print{.subnav{display:none!important}}
@media (min-width:900px){.subnav{flex-wrap:wrap;overflow:visible;-webkit-mask-image:none!important;mask-image:none!important;row-gap:0}}
.dash-cz-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.dash-cz h4{margin:6px 0}
.dash-cz-list{list-style:none;margin:0;padding:0}.dash-cz-list li{display:flex;align-items:center;gap:6px;padding:4px 0;border-bottom:1px solid var(--bd)}.dash-cz-list li label{flex:1;margin:0}
.dash-cz-mv{display:flex;gap:2px}.dash-cz-mv button{padding:2px 8px}
/* v106 – sub-menu of the open section under its entry in the main menu */
.side-sub{display:flex;flex-direction:column;margin:2px 0 6px;padding-inline-start:20px;border-inline-start:2px solid color-mix(in srgb,var(--acc) 35%,transparent);margin-inline-start:19px}
.side .side-sub a{font-size:13.5px;padding:5px 10px;color:var(--mut);border-radius:8px}
.side .side-sub a:hover{color:var(--fg)}
.side .side-sub a.on{color:var(--fg);background:color-mix(in srgb,var(--acc) 10%,transparent);font-weight:600}
/* v107 – menu tidy-up */
.side .side-edit{margin:10px 0 4px;font-size:13px;color:var(--mut);border:1px dashed var(--bd);justify-content:center}
.side .side-edit:hover{color:var(--fg)}
.nm-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:2px 12px}.nm-list label{margin:0}
/* v108 – company colour picker */
.brand-sw{display:flex;flex-wrap:wrap;gap:10px}
.brand-sw label{display:grid;justify-items:center;gap:4px;cursor:pointer;margin:0;min-width:64px;position:relative}
.brand-sw input[type=radio]{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px;margin:0;inset:0}
.brand-sw span,.brand-sw input[type=color]{width:42px;height:42px;border-radius:12px;border:2px solid var(--bd);display:block;padding:0}
.brand-sw input[type=radio]:checked+span,.brand-sw input[type=radio]:checked+input[type=color]{outline:3px solid var(--fg);outline-offset:2px}
.brand-sw small{font-size:11.5px;color:var(--mut)}
/* v110 freelance marketplace */
.acct-type{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;margin:0 0 14px;border:1px solid var(--bd);border-radius:12px;background:var(--bg2)}
.acct-type a{display:block;text-align:center;padding:9px 8px;border-radius:9px;color:var(--mut);text-decoration:none;font-weight:600;font-size:14px}
.acct-type a.on{background:var(--card);color:var(--fg);box-shadow:0 1px 3px rgba(0,0,0,.18);outline:1px solid color-mix(in srgb,var(--acc) 45%,transparent)}
.mk-sub{display:flex;gap:4px;flex-wrap:wrap;margin:6px 0 14px;padding:4px;border:1px solid var(--bd);border-radius:12px;background:var(--bg2);width:max-content;max-width:100%}
.mk-sub a{padding:7px 12px;border-radius:9px;color:var(--mut);text-decoration:none;font-size:14px;white-space:nowrap}.mk-sub a.on{background:var(--card);color:var(--fg);font-weight:600}
.mk-kicker{color:var(--acc2);font-weight:700;letter-spacing:.02em;margin:0 0 6px}
.mk-ticks{list-style:none;padding:0;margin:14px 0}.mk-ticks li{padding:4px 0;padding-inline-start:26px;position:relative}.mk-ticks li::before{content:"✓";position:absolute;inset-inline-start:0;color:var(--acc2);font-weight:700}
.mk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px;margin:12px 0}.mk-grid.one{grid-template-columns:1fr;margin:0}.mk-grid>.card{margin:0}
a.mk-job,a.mk-fl{display:block;color:inherit;text-decoration:none;transition:border-color .15s,transform .15s}a.mk-job:hover,a.mk-fl:hover{border-color:color-mix(in srgb,var(--acc) 60%,var(--bd));transform:translateY(-1px)}
.mk-job-h{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.mk-job-h b{font-size:16px;line-height:1.3}
.mk-job-b{margin:8px 0 2px}.mk-money{font-weight:700;color:var(--fg)}
.mk-fit{flex:none;font-size:12px;font-weight:700;padding:2px 8px;border-radius:999px;border:1px solid var(--bd);color:var(--mut)}.mk-fit.hi{color:var(--ok);border-color:var(--ok)}
.mk-fl,div.mk-fl{display:flex!important;gap:12px;align-items:flex-start}.mk-fl-b{flex:1;min-width:0}
.mk-av{flex:none;display:inline-grid;place-items:center;width:46px;height:46px;border-radius:50%;font-weight:700;color:#fff;background:hsl(var(--h,180) 45% 38%)}
.mk-facts{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.mk-facts span{display:grid;padding:8px 12px;border:1px solid var(--bd);border-radius:10px;background:var(--bg2);min-width:110px}.mk-facts small{color:var(--mut);font-size:12px}
.mk-desc{margin-top:12px;line-height:1.6;overflow-wrap:anywhere}.mk-letter{margin-top:8px;padding:10px 12px;border-radius:10px;background:var(--bg2);font-size:14px;line-height:1.55;overflow-wrap:anywhere}
.mk-detail{align-items:start}.mk-detail>.card{margin-top:0}
.mk-app-h{display:flex;gap:12px;align-items:flex-start}.mk-app-p{text-align:end;flex:none}
.mk-filter{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px}.mk-filter input[type=search]{flex:1 1 220px;margin:0}.mk-filter select,.mk-filter input{margin:0;width:auto}.mk-filter .check{margin:0}
.mk-split{display:grid;grid-template-columns:260px 1fr;gap:14px;align-items:start}.mk-split>.card{margin:0}
.mk-list{padding:6px;display:grid;gap:2px;max-height:70vh;overflow:auto}.mk-list a{display:block;padding:9px 10px;border-radius:9px;color:inherit;text-decoration:none}.mk-list a.on,.mk-list a:hover{background:var(--bg2)}
.mk-thread{display:flex;flex-direction:column;gap:8px;max-height:60vh;overflow:auto;padding:6px 2px;margin:10px 0}
.mk-m{max-width:80%;padding:9px 12px;border-radius:14px;background:var(--bg2);border:1px solid var(--bd);overflow-wrap:anywhere}.mk-m .small{display:block;margin-top:4px;font-size:11px}
.mk-m.me{align-self:flex-end;background:color-mix(in srgb,var(--acc) 18%,var(--card));border-color:color-mix(in srgb,var(--acc) 40%,var(--bd))}
.mk-reply{display:flex;gap:8px;align-items:flex-end}.mk-reply textarea{margin:0;flex:1}
.mk-meter .mk-bar{height:8px;border-radius:99px;background:var(--bg2);overflow:hidden;margin:10px 0 4px}.mk-bar span{display:block;height:100%;background:var(--acc)}
.mk-top{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:center;padding:30px 0 6px}.mk-top h1{font-size:36px;line-height:1.15;margin:0 0 10px}
.mk-stats{display:flex;gap:22px;flex-wrap:wrap;margin-top:14px}.mk-stats span{display:grid;color:var(--mut);font-size:13px}.mk-stats b{font-size:26px;color:var(--fg)}
.mk-two{display:grid;gap:12px}.mk-choice{display:grid;gap:6px;color:inherit;text-decoration:none;margin:0}.mk-choice .btn{justify-self:start;margin-top:4px}.mk-ico{font-size:28px}
.mk-choice:hover{border-color:color-mix(in srgb,var(--acc) 60%,var(--bd))}
.mk-how{margin:30px 0 10px}.mk-cta .btn.full{display:block;text-align:center}
.mk-svc{display:grid;gap:6px;align-content:start}.mk-svc .btn{justify-self:start}
.mk-k .row form,.mk-k details{margin:0}.mk-rate select{margin:0;width:auto}
.mk-me{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media (max-width:860px){.mk-top{grid-template-columns:1fr}.mk-top h1{font-size:28px}.mk-split{grid-template-columns:1fr}.mk-list{max-height:none;display:flex;overflow-x:auto}.mk-list a{white-space:nowrap}.mk-m{max-width:92%}.mk-facts span{min-width:0;flex:1 1 40%}}

/* v110 messenger: clear send button, calmer new-chat button */
.msg-compose #bSend{flex:none;min-width:42px}.msg-new summary.btn{padding:5px 12px;font-size:16px;line-height:1}
/* v200b chat "+ New" menu: opens towards the inside of the side bar and is not cut off by it (narrow windows, desktop app) */
.msg-side{overflow:visible}.msg-side .msg-convs{overflow:auto;min-height:0}.msg-new .quick-menu{inset-inline-start:auto;inset-inline-end:0;z-index:60;min-width:200px;max-width:calc(100vw - 24px)}.msg-new .quick-menu a{white-space:nowrap}@media (max-width:980px){.msg-new .quick-menu{position:absolute;top:calc(100% + 6px);inset-inline-start:auto;inset-inline-end:0;min-width:200px}}
/* v110 landing */
.lp-trust{list-style:none;padding:0;margin:14px 0 6px;display:flex;flex-wrap:wrap;gap:8px}.lp-trust li{font-size:13px;padding:4px 10px;border:1px solid var(--bd);border-radius:999px;background:var(--card)}
.plan-tag{font-size:11px;font-weight:700;vertical-align:middle;padding:2px 8px;border-radius:999px;background:var(--acc);color:#fff;margin-inline-start:6px}
.lp-mk{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;align-items:center;margin:34px 0;padding:26px}.lp-mk .mk-ticks{margin:0}
#industries{margin-top:26px}
@media (max-width:860px){.lp-mk{grid-template-columns:1fr}}
/* v113 system check + sign-up profile */
.hc-sum{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:6px 0 4px}
.hc-pill{font-weight:700;padding:6px 14px;border-radius:999px;border:1px solid var(--bd)}.hc-pill.bad{color:var(--bad);border-color:var(--bad)}.hc-pill.warn{color:var(--warn);border-color:var(--warn)}.hc-pill.ok{color:var(--ok);border-color:var(--ok)}
.hc-list{display:grid;gap:6px}.hc-row{display:flex;gap:10px;align-items:center;padding:9px 12px;border-radius:10px;background:var(--bg2);border-inline-start:4px solid var(--bd)}
.hc-row.bad{border-inline-start-color:var(--bad)}.hc-row.warn{border-inline-start-color:var(--warn)}.hc-row.ok{border-inline-start-color:var(--ok)}.hc-row form{margin:0}.hc-row .grow{min-width:0;overflow-wrap:anywhere}
.hc-dot{width:10px;height:10px;border-radius:50%;flex:none;background:var(--mut)}.hc-row.bad .hc-dot{background:var(--bad)}.hc-row.warn .hc-dot{background:var(--warn)}.hc-row.ok .hc-dot{background:var(--ok)}
.hc-diag{padding:10px 12px;border:1px solid var(--bd);border-radius:10px;margin:8px 0;overflow-wrap:anywhere}.hc-ai{margin-top:10px}.hc-ans{padding:12px 14px;border-radius:12px;background:var(--bg2);margin-bottom:8px}
.hc-badrow td{color:var(--bad)}
.su-part{border:1px solid var(--bd);border-radius:12px;padding:6px 12px 2px;margin:10px 0}.su-part legend{font-weight:700;font-size:14px;padding:0 6px}
.su-2{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}@media (max-width:520px){.su-2{grid-template-columns:1fr}}
/* v116 pricing */
.pr-plans{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.pr-plans .plan{display:flex;flex-direction:column}.pr-plans .plan ul{flex:1}
.pr-cycle{display:flex;gap:6px;justify-content:center;margin:6px 0 14px;flex-wrap:wrap}
.pr-cycle label{display:inline-flex;white-space:nowrap;align-items:center;gap:6px;padding:6px 14px;border:1px solid var(--bd);border-radius:999px;cursor:pointer;font-weight:600}
.pr-cycle label:has(input:checked){border-color:var(--acc);box-shadow:0 0 0 1px var(--acc)}
.pr-cycle input{margin:0;width:auto;height:auto;padding:0;flex:none}
.pr-save{font-size:11px;background:var(--acc);color:#fff;border-radius:999px;padding:1px 7px;white-space:nowrap;line-height:1.6}
.pr-regions{justify-content:center;margin-bottom:8px}
.pr-trial-banner{text-align:center;font-weight:700;margin:0 0 6px}
.pr-current{border-color:var(--acc)}.plan-tag.pr-cur{background:var(--ok,#1a7f37)}
.pr-buy{margin:0;display:grid;gap:6px}.pr-buy label{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0}.pr-buy input[type=number]{max-width:80px;margin:0}
.pr-status{display:flex;gap:18px;flex-wrap:wrap;align-items:center}
.pr-stat{display:flex;flex-direction:column;gap:2px;min-width:120px}.pr-stat b{font-size:20px}
.pill.pr-pill.warn{border-color:#d97706;color:#b45309}
/* v117 points & consumption */
.pt2-lead{text-align:center;max-width:720px;margin:0 auto 12px;color:var(--mut)}
.pt2-how{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:10px 0 16px}
.pt2-how div{border:1px solid var(--bd);border-radius:var(--r);padding:12px 14px;display:flex;gap:10px;align-items:flex-start;font-size:14px}
.pt2-how b{flex:none;width:26px;height:26px;border-radius:50%;background:var(--acc);color:#fff;display:grid;place-items:center;font-size:13px}
.pt2-grid{margin-bottom:6px}.pt2-grid .card h3{margin-top:0}
.pt2-calc label{display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:center;margin:0 0 10px}
.pt2-calc input[type=range]{grid-column:1/-1;width:100%;padding:0;accent-color:var(--acc)}
.pt2-res{display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:12px;border-radius:10px;background:color-mix(in srgb,var(--acc) 12%,transparent);margin:6px 0}
.pt2-res b{font-size:20px;text-align:end;font-variant-numeric:tabular-nums}
.pt2-h{text-align:center;margin:22px 0 10px}
.pt2-use{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.pt2-use div{display:flex;flex-direction:column;gap:2px;border:1px solid var(--bd);border-radius:10px;padding:10px}.pt2-use b{font-size:20px}.pt2-use small,.pt2-use span{color:var(--mut);font-size:12px}
@media (max-width:700px){.pt2-how,.pt2-use{grid-template-columns:1fr}}
/* v118 launch offer + landing */
.lo-ribbon{display:inline-flex;align-items:center;gap:6px;margin:0 0 10px;padding:6px 14px;border-radius:999px;font-weight:700;font-size:14px;text-decoration:none;color:#fff;background:linear-gradient(90deg,#dc2626,#ea580c)}
.lo-band{display:grid;grid-template-columns:1.6fr 1fr;gap:22px;align-items:center;margin:26px 0;padding:26px;border-radius:20px;color:#fff;background:linear-gradient(135deg,#0f766e,#115e59 55%,#7c2d12);box-shadow:0 14px 40px rgba(0,0,0,.18)}
.lo-band h2{margin:4px 0 8px;font-size:30px;line-height:1.15;color:#fff}.lo-band p{color:rgba(255,255,255,.9)}
.lo-kick{margin:0;font-weight:800;letter-spacing:.04em;text-transform:uppercase;font-size:13px;color:#fde68a!important}
.lo-ticks{list-style:none;padding:0;margin:10px 0 16px;display:grid;gap:6px}.lo-ticks li::before{content:"✓ ";font-weight:800;color:#fde68a}
.lo-cta{background:#fde68a!important;color:#1f2937!important;font-weight:800;border:0}
.lo-side{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:16px;text-align:center}
.lo-count{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.lo-count div{background:rgba(0,0,0,.18);border-radius:12px;padding:10px 4px}
.lo-count b{display:block;font-size:30px;font-variant-numeric:tabular-nums}.lo-count span{font-size:12px;opacity:.85}
.lo-bar{height:10px;border-radius:5px;background:rgba(255,255,255,.2);overflow:hidden;margin-top:8px}.lo-bar i{display:block;height:100%;background:#fde68a}
.lo-spots p{margin:6px 0 0}
.lo-price s{font-size:.55em;font-weight:500;color:var(--mut);margin-inline-end:4px}
.lo-tag{display:block;width:max-content;margin-top:4px;font-size:12px;font-weight:800;color:#fff;background:#dc2626;border-radius:999px;padding:2px 9px}
.lo-li{color:var(--fg)}
.lp-why,.lp-steps,.lp-faq,.lo-final{margin:34px 0}
.lp-why h2,.lp-steps h2,.lp-faq h2{text-align:center}
.lp-why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.lp-why-grid .card{display:flex;flex-direction:column;gap:4px}
.lp-steps ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.lp-steps li{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--bd);border-radius:var(--r);padding:14px}
.lp-steps li>b{flex:none;width:34px;height:34px;border-radius:50%;background:var(--acc);color:#fff;display:grid;place-items:center}
.lp-steps li div{display:flex;flex-direction:column;gap:4px}
.lp-faq details{margin:8px auto;max-width:820px}.lp-faq summary{cursor:pointer;font-weight:700}.lp-faq p{margin:10px 0 0;color:var(--mut)}
.lo-final{text-align:center;padding:30px 16px;border-radius:20px;background:color-mix(in srgb,var(--acc) 12%,transparent)}
@media (max-width:860px){.lo-band{grid-template-columns:1fr;padding:20px}.lo-band h2{font-size:24px}.lp-why-grid,.lp-steps ol{grid-template-columns:1fr}}
/* v119 visitors: people */
.wv-tag{display:inline-block;white-space:nowrap;font-size:12px;font-weight:700;border-radius:999px;padding:2px 9px;border:1px solid var(--bd)}
.wv-customer{background:color-mix(in srgb,var(--ok) 18%,transparent)}.wv-hot{background:color-mix(in srgb,#ef4444 20%,transparent)}.wv-warm{background:color-mix(in srgb,#f59e0b 20%,transparent)}
.wv-trying{background:color-mix(in srgb,#dc2626 28%,transparent);border-color:#dc2626}.wv-bot{opacity:.6}
.wv-score{display:inline-block;width:60px;height:7px;border-radius:4px;background:color-mix(in srgb,var(--fg) 10%,transparent);vertical-align:middle;overflow:hidden}.wv-score i{display:block;height:100%;background:linear-gradient(90deg,#f59e0b,#ef4444)}
/* admin visitors (shared) */
.pt-hb{display:grid;grid-template-columns:minmax(110px,210px) 1fr 54px;gap:10px;align-items:center;font-size:13px;padding:3px 0}.pt-hb .tr{height:8px;border-radius:4px;background:color-mix(in srgb,var(--fg) 7%,transparent)}.pt-hb .tr i{display:block;height:100%;border-radius:4px;background:var(--vz-1,var(--acc))}.pt-hb .v{text-align:end;font-variant-numeric:tabular-nums}.pt-hb>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.wv-cols{display:grid;grid-template-columns:repeat(var(--n),1fr);gap:3px;align-items:end;height:120px}.wv-cols span{background:var(--vz-1,var(--acc));border-radius:3px 3px 0 0;min-height:2px}.wv-axis{display:grid;grid-template-columns:repeat(var(--n),1fr);gap:3px;font-size:10px;color:var(--mut);text-align:center}
.wv-tl{list-style:none;padding:0;margin:0;display:grid;gap:4px;font-size:13px}.wv-tl li{border-bottom:1px solid var(--bd);padding:3px 0}
.wv-cc{white-space:nowrap}
/* v121 job sharing */
.mk-share{margin-top:16px;padding:12px;border:1px dashed var(--bd);border-radius:12px}
.mk-share-b{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.mk-share-b .btn{margin:0}
.mk-sh-whatsapp{border-color:#25d366!important}.mk-sh-linkedin{border-color:#0a66c2!important}.mk-sh-facebook{border-color:#1877f2!important}
/* v122 marketplace polish */
.mk-co-logo{border-radius:14px;object-fit:contain;background:#fff;flex:none;display:inline-grid;place-items:center;border:1px solid var(--bd)}
.mk-co-ini{color:#fff;font-weight:800;border:0}
.mk-job-t{display:flex;gap:10px;align-items:center}
.mk-badges{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.mk-badge{font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;border:1px solid var(--bd);background:var(--bg2)}
.mk-b-new{background:color-mix(in srgb,#22c55e 18%,transparent);border-color:#22c55e}.mk-b-comm{background:color-mix(in srgb,#f59e0b 20%,transparent);border-color:#f59e0b}
.mk-b-soon{background:color-mix(in srgb,#ef4444 18%,transparent);border-color:#ef4444}.mk-b-hot{background:color-mix(in srgb,#f97316 18%,transparent);border-color:#f97316}
.mk-detail2{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}.mk-detail2 .card{margin-top:0;margin-bottom:16px}
.mk-side{position:sticky;top:78px}
.mk-jhead h1{margin:14px 0 6px;font-size:30px;line-height:1.2}
.mk-jco{display:flex;gap:12px;align-items:center}.mk-jco-n{font-weight:800;font-size:17px}.mk-jco-n a{color:inherit;text-decoration:none}
.mk-verified{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#1d9bf0;color:#fff;font-size:12px;vertical-align:middle}
.mk-cta-pay{font-size:22px;font-weight:800;margin:4px 0}
.mk-trust{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:4px;color:var(--mut)}
.mk-co-box .mk-co-about{color:var(--mut);line-height:1.55}
.mk-co-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0}.mk-co-stats span{display:flex;flex-direction:column;align-items:center;text-align:center;font-size:12px;color:var(--mut);border:1px solid var(--bd);border-radius:12px;padding:8px 4px}
.mk-co-stats b{font-size:20px;color:var(--fg)}.mk-co-stats.big span{padding:14px 6px}.mk-co-stats.big b{font-size:26px}
.mk-socs{margin:8px 0}.mk-soc{text-decoration:none}
.mk-co-hero{position:relative;border-radius:20px;overflow:hidden;border:1px solid var(--bd);background:var(--card);margin-bottom:14px}
.mk-co-cover{height:130px;background:linear-gradient(135deg,var(--co,#0f766e),color-mix(in srgb,var(--co,#0f766e) 40%,#111))}
.mk-co-head{display:flex;gap:16px;align-items:flex-end;padding:0 20px 18px;margin-top:-48px;flex-wrap:wrap}.mk-co-head .mk-co-logo{border:4px solid var(--card);box-shadow:0 6px 18px rgba(0,0,0,.2)}
.mk-co-head h1{margin:52px 0 2px;font-size:28px}.mk-co-head .lead{margin:0 0 4px}
.mk-co-cta{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px}
.mk-insta{margin-top:10px;padding:10px;border-radius:12px;background:var(--bg2)}
.mk-insta-imgs{display:flex;gap:10px;margin:8px 0;flex-wrap:wrap}.mk-insta-imgs a{display:flex;flex-direction:column;gap:4px;text-decoration:none;font-size:12px;font-weight:700}.mk-insta-imgs img{height:180px;border-radius:10px;border:1px solid var(--bd)}
.mk-insta-cap{width:100%;font-size:13px}
.mk-sh-insta{border-color:#e1306c!important}
.mk-sticky{display:none}
@media (max-width:860px){.mk-detail2{grid-template-columns:1fr}.mk-side{position:static}.mk-co-stats{grid-template-columns:repeat(2,1fr)}
 .mk-sticky{display:flex;position:fixed;inset-inline:0;bottom:0;z-index:50;justify-content:space-between;align-items:center;gap:10px;padding:10px 16px;background:var(--card);border-top:1px solid var(--bd);box-shadow:0 -6px 18px rgba(0,0,0,.15)}
 body:has(.mk-sticky) main{padding-bottom:70px}}
@media (max-width:640px){.mk-co-head{flex-direction:column;align-items:center;text-align:center}.mk-co-head h1{margin-top:6px}.mk-co-head .mk-socs{justify-content:center}}
/* v122 job ad statistics */
.mk-ad h4{margin:18px 0 8px;font-size:14px;color:var(--mut)}
.mk-ad-tiles,.mk-st-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-top:12px}
.mk-st-tiles>div{border:1px solid var(--bd);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:2px;min-width:0}
.mk-st-tiles span{font-size:18px}.mk-st-tiles b{font-size:26px;line-height:1.1}.mk-st-tiles em{font-style:normal;font-weight:600;font-size:13px}.mk-st-tiles small{color:var(--mut);font-size:12px}
.mk-ad-chart{position:relative;padding-top:16px}.mk-ad-chart .mx{position:absolute;top:0;left:0;font-size:11px;color:var(--mut)}
.mk-ad-chart .cols{direction:ltr;display:flex;align-items:flex-end;gap:2px;height:120px;border-bottom:1px solid var(--bd)}
.mk-ad-chart .cols>span{flex:1;height:100%;display:flex;align-items:flex-end;border-radius:3px 3px 0 0}.mk-ad-chart .cols>span:hover{background:color-mix(in srgb,var(--acc) 10%,transparent)}
.mk-ad-chart .cols i{display:block;width:100%;background:var(--acc);border-radius:4px 4px 0 0}
.mk-ad-chart .ax{display:flex;justify-content:space-between;font-size:11px;color:var(--mut);margin-top:4px;direction:ltr}
.mk-st-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:0 26px}
.mk-st-bars>div{display:grid;grid-template-columns:minmax(90px,1.1fr) 2fr auto;gap:10px;align-items:center;font-size:13px;padding:4px 0}
.mk-st-bars .l{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mk-st-bars .b{height:8px;background:color-mix(in srgb,var(--bd) 60%,transparent);border-radius:4px;overflow:hidden}
.mk-st-bars .b i{display:block;height:100%;background:var(--acc);border-radius:4px}.mk-st-bars .n{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600;min-width:58px;text-align:end}.mk-st-bars .n small{color:var(--mut);font-weight:400}
.mk-st-funnel{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.mk-st-funnel>div{border:1px solid var(--bd);border-radius:12px;padding:8px 14px;display:flex;flex-direction:column;align-items:center;min-width:92px}
.mk-st-funnel b{font-size:20px}.mk-st-funnel span{font-size:12px}.mk-st-funnel small{color:var(--mut);font-size:11px}.mk-st-funnel .ar{color:var(--mut);font-size:18px}
[dir=rtl] .mk-st-funnel .ar{transform:scaleX(-1)}
.mk-ad details{margin-top:14px}.mk-ad details .t{margin-top:6px}
.mk-ad-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}
/* v123 rich freelancer profile */
.mk-av-img{object-fit:cover;background:var(--bg2);padding:0}
.mk-fl-photo{flex:none;width:112px;height:112px;border-radius:50%;overflow:hidden;border:4px solid var(--card);box-shadow:0 6px 18px rgba(0,0,0,.2);background:var(--card);display:grid;place-items:center}
.mk-fl-photo img{width:100%;height:100%;object-fit:cover}.mk-fl-photo .mk-av{width:100%;height:100%;font-size:40px}
.mk-fl-cta{display:flex;gap:8px;flex-wrap:wrap;align-self:center}
.mk-avail{font-weight:600}.mk-avail-full{color:#16a34a}.mk-avail-part{color:#d97706}.mk-avail-busy{color:#dc2626}
.mk-flsec h3{margin:0 0 10px}.mk-flsec h4{margin:14px 0 6px;font-size:14px;color:var(--mut)}
.mk-tl{list-style:none;margin:0;padding:0;border-inline-start:2px solid var(--bd)}
.mk-tl li{position:relative;padding:0 0 16px;padding-inline-start:18px}.mk-tl li:last-child{padding-bottom:0}
.mk-tl li::before{content:"";position:absolute;inset-inline-start:-7px;top:4px;width:12px;height:12px;border-radius:50%;background:var(--acc);border:2px solid var(--card)}
.mk-tl .mk-desc{margin-top:4px}
.mk-works{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.mk-work{display:flex;flex-direction:column;gap:4px;border:1px solid var(--bd);border-radius:14px;padding:12px;color:inherit;text-decoration:none;transition:transform .15s,box-shadow .15s}
a.mk-work:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.12)}
.mk-fl3{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:6px 24px}
.mk-li{margin:0;padding-inline-start:18px}.mk-li li{margin-bottom:8px}
.mk-yt{position:relative;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:linear-gradient(135deg,#111827,#374151);display:grid;place-items:center;max-width:720px}
.mk-yt small{position:absolute;bottom:10px;inset-inline:12px;color:#cbd5e1;text-align:center}
.mk-yt-play{width:78px;height:54px;border-radius:14px;background:#ef4444;border:0;color:#fff;font-size:24px;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.35)}.mk-yt-play:hover{transform:scale(1.06)}
.mk-yt.on{background:#000}.mk-yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.mk-fledit{border-top:1px solid var(--bd);margin-top:8px;padding-top:12px}.mk-fledit h3{margin:0 0 4px}.mk-fledit h4{margin:16px 0 6px}
.mk-rep-list{display:flex;flex-direction:column;gap:8px}
.mk-rep-r{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:10px;border:1px dashed var(--bd);border-radius:12px;position:relative;padding-inline-end:40px}
.mk-rep-r textarea{grid-column:1/-1}.mk-rep-r input,.mk-rep-r textarea,.mk-rep-r select{margin:0}.mk-rep-r label{margin:0}
.mk-rep-r .mk-rep-x{position:absolute;top:8px;inset-inline-end:6px;padding:2px 8px}
.mk-rep-sm{grid-template-columns:2fr 1fr}
.mk-rep-add{margin-top:6px}
.mk-fl-hero .mk-co-head{align-items:flex-start}.mk-fl-hero .mk-co-head h1{margin-top:56px}
@media (max-width:640px){.mk-fl-hero .mk-co-head{align-items:center}.mk-fl-hero .mk-co-head h1{margin-top:6px}.mk-rep-r{grid-template-columns:1fr}.mk-fl-cta{justify-content:center}}
/* v125 Dateien (drive) */
.drv .dash-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.drv-search input{margin:0;min-width:240px}
.drv-wrap{display:grid;grid-template-columns:220px 1fr;gap:16px;align-items:start}
.drv-side nav{display:flex;flex-direction:column;gap:2px}.drv-side nav a{padding:9px 12px;border-radius:10px;color:inherit;text-decoration:none;display:flex;gap:8px;align-items:center;justify-content:flex-start;text-align:start}
.drv-side nav a:hover{background:var(--bg2)}.drv-side nav a.on{background:color-mix(in srgb,var(--acc) 16%,transparent);font-weight:600}
.drv-quota{margin-top:14px;padding:0 12px}.drv-quota small{color:var(--mut);font-size:12px}
.drv-main{position:relative;min-height:420px}
.drv-top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.drv-crumbs{font-size:15px}.drv-crumbs a{text-decoration:none;font-weight:600}
.drv-tools{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.drv-tools form{margin:0}.drv-tools label.btn{margin:0;cursor:pointer}.drv-sort{margin:0;width:auto}
.drv-bulk{display:flex;gap:8px;align-items:center;padding:8px 10px;border-radius:12px;background:color-mix(in srgb,var(--acc) 12%,transparent);margin-bottom:8px;flex-wrap:wrap}.drv-bulk[hidden]{display:none}
.drv-list{display:flex;flex-direction:column}
.drv-row{display:grid;grid-template-columns:28px minmax(0,1fr) 140px 90px 40px;gap:10px;align-items:center;padding:6px 8px;border-bottom:1px solid var(--bd);border-radius:8px}
.drv-row.pub{grid-template-columns:minmax(0,1fr) 110px 90px 50px}
.drv-row:hover{background:var(--bg2)}.drv-row.sel{background:color-mix(in srgb,var(--acc) 10%,transparent)}
.drv-head{font-size:12px;color:var(--mut);font-weight:600;border-bottom:1px solid var(--bd)}.drv-head:hover{background:none}
.drv-row input[type=checkbox]{margin:0}
.drv-name{display:flex;gap:10px;align-items:center;color:inherit;text-decoration:none;min-width:0}
.drv-ic{flex:none;width:36px;height:36px;display:grid;place-items:center;font-size:24px;border-radius:8px;overflow:hidden;background:var(--bg2)}.drv-ic img{width:100%;height:100%;object-fit:cover}
.drv-nm{display:flex;flex-direction:column;min-width:0}.drv-nm b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.drv-nm small{font-size:12px}
.drv-act{position:relative;text-align:end}
.drv-menu summary{list-style:none;cursor:pointer;padding:4px 10px;border-radius:8px;font-size:18px;line-height:1}.drv-menu summary::-webkit-details-marker{display:none}.drv-menu summary:hover{background:var(--bd)}
.drv-menu>div{position:absolute;inset-inline-end:0;top:100%;z-index:30;background:var(--card);border:1px solid var(--bd);border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.18);padding:6px;min-width:210px;display:flex;flex-direction:column;gap:2px;text-align:start}
.drv-menu>div a,.drv-menu>div button,.drv-menu>div label{display:block;width:100%;text-align:start;padding:7px 10px;border-radius:8px;border:0;background:none;color:inherit;font:inherit;font-size:14px;text-decoration:none;cursor:pointer;margin:0}
.drv-menu>div a:hover,.drv-menu>div button:hover,.drv-menu>div label:hover{background:var(--bg2)}.drv-menu form{margin:0}
.drv-list.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.drv-list.grid .drv-head{display:none}
.drv-list.grid .drv-row{grid-template-columns:1fr;position:relative;border:1px solid var(--bd);padding:10px;gap:4px}
.drv-list.grid .drv-row>span:first-child{position:absolute;top:8px;inset-inline-start:8px;z-index:2}
.drv-list.grid .drv-row>span.small{display:none}
.drv-list.grid .drv-name{flex-direction:column;align-items:stretch;text-align:center}
.drv-list.grid .drv-ic{width:100%;height:110px;font-size:52px}
.drv-list.grid .drv-act{position:absolute;top:6px;inset-inline-end:6px}
.drv-empty{text-align:center;padding:60px 10px;color:var(--mut)}
.drv-drop{position:absolute;inset:0;z-index:20;display:grid;place-items:center;background:color-mix(in srgb,var(--acc) 14%,var(--card));border:3px dashed var(--acc);border-radius:16px;font-size:20px;font-weight:700}
.drv-up{position:fixed;bottom:16px;inset-inline-end:16px;z-index:60;width:340px;max-width:calc(100vw - 32px);background:var(--card);border:1px solid var(--bd);border-radius:14px;box-shadow:0 16px 40px rgba(0,0,0,.25);padding:10px}
.drv-up-h{display:flex;justify-content:space-between;align-items:center}.drv-up-list{max-height:240px;overflow:auto;display:flex;flex-direction:column;gap:6px;margin-top:6px}
.drv-up-i{display:grid;grid-template-columns:1fr 80px 22px;gap:6px;align-items:center;font-size:12px}.drv-up-i .n{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.drv-up-i .b{height:6px;border-radius:3px;background:var(--bd);overflow:hidden}.drv-up-i .b i{display:block;height:100%;width:0;background:var(--acc);transition:width .2s}
.drv-up-i.ok .b i{background:#16a34a}.drv-up-i.err{color:#dc2626}.drv-up-i.err .s{grid-column:1/-1}
.drv-dlg{border:1px solid var(--bd);border-radius:16px;padding:18px;background:var(--card);color:var(--fg);width:min(420px,calc(100vw - 32px))}.drv-dlg.wide{width:min(640px,calc(100vw - 32px))}
.drv-dlg::backdrop{background:rgba(0,0,0,.45)}.drv-dlg h3{margin-top:0}.drv-dlg .row{gap:8px;margin-top:10px}
.drv-prev-dlg{width:min(1100px,calc(100vw - 24px));max-height:calc(100vh - 24px);padding:10px}.drv-prev-h{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}
.drv-prev-b{display:grid;place-items:center;min-height:200px}.drv-prev-b img,.drv-prev-b video{max-width:100%;max-height:calc(100vh - 120px);border-radius:8px}.drv-prev-b pre{white-space:pre-wrap;max-height:calc(100vh - 120px);overflow:auto;width:100%;font-size:13px;background:var(--bg2);padding:12px;border-radius:8px}
.drv-noprev{text-align:center;display:flex;flex-direction:column;gap:10px;align-items:center;padding:30px}
.drv-pub{text-align:center}.drv-pub-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.drv-pub-prev{text-align:center}.drv-pub-prev img,.drv-pub-prev video{max-width:100%;max-height:80vh;border-radius:10px}.drv-pdfv{display:flex;flex-direction:column;gap:10px;align-items:center}.drv-pdfv canvas{box-shadow:0 4px 16px rgba(0,0,0,.15);max-width:100%}
@media (max-width:760px){.drv-wrap{grid-template-columns:1fr}.drv-side nav{flex-direction:row;overflow-x:auto;gap:4px}.drv-side nav a{white-space:nowrap;border:1px solid var(--bd)}.drv-row{grid-template-columns:28px minmax(0,1fr) 40px}.drv-row>span.small{display:none}.drv-search input{min-width:0;width:100%}}
/* v125 PDF editor */
.pdf-start{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:14px}
.pdf-pick{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;cursor:pointer;padding:28px 16px;border:2px dashed var(--bd);font:inherit;color:inherit;background:var(--card)}.pdf-pick:hover,.pdf-pick.over{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 6%,var(--card))}
.pdf-recent{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}.pdf-recent a{display:flex;flex-direction:column;padding:10px 12px;border:1px solid var(--bd);border-radius:12px;color:inherit;text-decoration:none}.pdf-recent a:hover{border-color:var(--acc)}
.pdfx{display:flex;flex-direction:column;height:calc(100vh - 110px);min-height:520px;min-width:0;max-width:100%}
.pdfx-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:8px;border:1px solid var(--bd);border-radius:14px;background:var(--card);position:sticky;top:0;z-index:20}
.pdfx-grp{display:flex;gap:3px;align-items:center}.pdfx-grp>button{min-width:36px;height:36px;padding:0 8px;border-radius:9px;border:1px solid transparent;background:none;color:var(--fg);font-size:16px;cursor:pointer;margin:0}
.pdfx-grp>button:hover{background:var(--bg2)}.pdfx-tools>button.on{background:color-mix(in srgb,var(--acc) 18%,transparent);border-color:var(--acc)}
.pdfx-name{max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-inline-start:6px}
.pdfx-zoom{font-size:12px;min-width:44px;text-align:center;color:var(--mut)}.pdfx-save{margin-inline-start:auto}.pdfx-save .btn{margin:0}
.pdfx-hint{min-height:18px;padding:4px 8px}
.pdfx-body{flex:1;display:grid;grid-template-columns:170px 1fr 250px;gap:10px;min-height:0}
.pdfx-thumbs,.pdfx-side{border:1px solid var(--bd);border-radius:14px;background:var(--card);overflow:auto;padding:8px}
.pdfx-th-bar{position:sticky;top:-8px;background:var(--card);padding:4px 0 6px;z-index:2}.pdfx-th-acts{display:flex;flex-wrap:wrap;gap:2px;margin-top:4px}.pdfx-th-acts .sm{padding:3px 6px;margin:0;font-size:13px}
.pdfx-th-list{display:flex;flex-direction:column;align-items:center;gap:10px;padding-top:6px}
.pdfx-th{position:relative;cursor:grab;padding:4px;border-radius:8px;border:2px solid transparent;text-align:center}.pdfx-th canvas{display:block;box-shadow:0 1px 4px rgba(0,0,0,.2);background:#fff}
.pdfx-th span{font-size:11px;color:var(--mut)}.pdfx-th.sel{border-color:var(--acc);background:color-mix(in srgb,var(--acc) 10%,transparent)}.pdfx-th.dropat{border-top:3px solid var(--acc)}
.pdfx-pages{overflow:auto;background:color-mix(in srgb,var(--bg2) 70%,#888 8%);border-radius:14px;padding:20px;display:flex;flex-direction:column;align-items:center;align-items:safe center;gap:18px;min-width:0}
.pdfx-page{position:relative;flex:none;background:#fff;box-shadow:0 4px 18px rgba(0,0,0,.25)}.pdfx-page canvas{width:100%;height:100%;display:block}
.pdfx-ov{position:absolute;inset:0}.pdfx-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.pdfx-svg polyline{pointer-events:stroke;cursor:move}.pdfx-svg polyline.sel{filter:drop-shadow(0 0 2px #2563eb)}
.pdfx-pn{position:absolute;bottom:-17px;left:50%;transform:translateX(-50%);font-size:11px;color:var(--mut)}
.pdfx[data-tool]:not([data-tool=select]) .pdfx-ov{cursor:crosshair;touch-action:none}.pdfx[data-tool=text] .pdfx-ov{cursor:text}
.pdfx-a{position:absolute;box-sizing:border-box;cursor:move;touch-action:none}
.pdfx-a.sel{outline:2px dashed #2563eb;outline-offset:2px}
.pdfx-text{white-space:pre;line-height:1.2;font-family:Helvetica,Arial,"Noto Sans Arabic","Segoe UI",sans-serif;padding:0 2px;min-width:8px;min-height:1em;unicode-bidi:plaintext}
.pdfx-text[contenteditable=true]{cursor:text;outline:2px solid #2563eb;background:rgba(37,99,235,.06)}
.pdfx-box{border:2px solid #dc2626}.pdfx-white{box-shadow:0 0 0 1px rgba(0,0,0,.08)}.pdfx-redact{background:#000}
.pdfx-img img{width:100%;height:100%;display:block;pointer-events:none}
.pdfx-h{position:absolute;right:-7px;bottom:-7px;width:14px;height:14px;border-radius:50%;background:#2563eb;border:2px solid #fff;cursor:nwse-resize}
.pdfx-side h4{margin:4px 0 8px}.pdfx-side details{border-top:1px solid var(--bd);padding:8px 0}.pdfx-side details summary{cursor:pointer}.pdfx-side label{display:block;font-size:13px;margin:6px 0}.pdfx-side input,.pdfx-side select,.pdfx-side textarea{margin:2px 0 0}
.pdfx-props{border:1px solid var(--acc);border-radius:12px;padding:8px;margin-bottom:8px}.pdfx-props input[type=color]{height:34px;padding:2px}
.pdfx-sig .tabs{margin-bottom:8px}.sig-pad{width:100%;height:200px;border:1px dashed var(--bd);border-radius:12px;background:#fff;touch-action:none;cursor:crosshair}
.sig-fonts{display:flex;flex-direction:column;gap:6px;margin-top:8px}.sig-font{width:100%;height:auto;border:2px solid var(--bd);border-radius:10px;background:#fff;cursor:pointer}.sig-font.on{border-color:var(--acc)}
.sig-saved{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-top:8px}.sig-old{padding:4px;background:#fff;border:1px solid var(--bd);border-radius:8px;height:56px;margin:0}.sig-old img{height:100%}
.pdfx-toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:90;background:#111827;color:#fff;padding:10px 16px;border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.3);transition:opacity .5s}.pdfx-toast a{color:#93c5fd}.pdfx-toast.err{background:#991b1b}.pdfx-toast.out{opacity:0}
@media (max-width:900px){.pdfx{height:auto}.pdfx-bar{gap:4px;padding:6px}.pdfx-tools{flex-wrap:nowrap;overflow-x:auto;max-width:100%;order:3;width:100%}.pdfx-grp>button{min-width:34px;height:34px}.pdfx-name{max-width:150px}.pdfx-save{width:100%;order:4;justify-content:flex-end;flex-wrap:wrap}.pdfx-body{grid-template-columns:minmax(0,1fr)}.pdfx-thumbs{order:2;max-height:none}.pdfx-th-list{flex-direction:row;overflow-x:auto;align-items:flex-start}.pdfx-side{order:3}.pdfx-pages{order:1;min-height:60vh;padding:10px}.pdfx-save{margin-inline-start:0}}
/* v126 Office: documents + spreadsheets */
.ofc-tpls{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.ofc-tpl-f{margin:0}
.ofc-tpl{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;border:1px solid var(--bd);border-radius:14px;background:var(--card);color:inherit;font:inherit;cursor:pointer;width:100%;margin:0}
.ofc-tpl:hover{border-color:var(--acc);box-shadow:0 6px 18px rgba(0,0,0,.08)}.ofc-tpl b{font-size:13px;text-align:center}
.ofc-tpl-page{width:84px;height:110px;border-radius:6px;background:#fff;border:1px solid #ddd;display:grid;place-items:center;font-size:32px;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.ofc-recent{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}.ofc-recent a{display:grid;grid-template-columns:28px 1fr;column-gap:8px;padding:10px 12px;border:1px solid var(--bd);border-radius:12px;color:inherit;text-decoration:none}.ofc-recent a span{grid-row:span 2;font-size:22px}.ofc-recent a:hover{border-color:var(--acc)}.ofc-recent b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ofc{display:flex;flex-direction:column;min-width:0}
.ofc-head{display:flex;align-items:center;gap:10px;padding:6px 0 10px;flex-wrap:wrap}.ofc-ic{font-size:26px}
.ofc-titlebox{display:flex;flex-direction:column;flex:1;min-width:160px}.ofc-title{border:1px solid transparent;background:none;font-size:18px;font-weight:600;padding:3px 6px;margin:0;border-radius:8px;color:var(--fg)}.ofc-title:hover,.ofc-title:focus{border-color:var(--bd);background:var(--card)}
.ofc-status{padding-inline-start:7px}.ofc-status.ok{color:#16a34a}.ofc-status.err{color:#dc2626}
.ofc-others{display:flex;gap:4px}.ofc-av{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#7c3aed;color:#fff;font-weight:700;font-size:13px;border:2px solid var(--card)}
.ofc-acts{display:flex;gap:6px;align-items:center;position:relative}.ofc-acts .drv-menu>div{inset-inline-end:0;top:110%}
.ofc-banner{padding:8px 12px;border-radius:10px;margin-bottom:8px;font-size:14px}.ofc-banner.warn{background:#fff7e6;color:#8a5300;border:1px solid #ffd591}.ofc-banner.err{background:#fff1f0;color:#a8071a;border:1px solid #ffa39e}.ofc-banner.info{background:#e6f4ff;color:#0b4a8a;border:1px solid #91caff}
.ofc-banner button{margin:0 4px}
.ofc-toolbar.ql-toolbar.ql-snow{border:1px solid var(--bd);border-radius:12px 12px 0 0;background:var(--card);position:relative;z-index:15;display:flex;flex-wrap:wrap;align-items:center;row-gap:4px}
.ofc-toolbar .ql-formats{margin-inline-end:10px!important}.ofc-toolbar button{color:var(--fg)}.ofc-toolbar .ofc-undo,.ofc-toolbar .ofc-redo,.ofc-toolbar .ofc-table,.ofc-toolbar .ofc-pb,.ofc-toolbar .ofc-find{font-size:16px;line-height:1;width:30px}
.ofc-toolbar .ql-font{width:120px}.ofc-toolbar .ql-header{width:140px!important}.ofc-toolbar .ql-size{width:66px}
.ofc-toolbar .ql-picker.ql-font .ql-picker-label::before,.ofc-toolbar .ql-picker.ql-font .ql-picker-item::before{content:attr(data-value)!important}
.ofc-toolbar .ql-picker.ql-size .ql-picker-label::before,.ofc-toolbar .ql-picker.ql-size .ql-picker-item::before{content:attr(data-value)!important}
.ofc-tbl-tools{display:inline-flex;gap:2px;border-inline-start:1px solid var(--bd);padding-inline-start:8px}.ofc-tbl-tools button{width:auto!important;font-size:12px;padding:2px 6px!important}
.ofc-find-bar{display:flex;gap:6px;align-items:center;padding:6px;border:1px solid var(--bd);border-top:0;background:var(--card);flex-wrap:wrap}.ofc-find-bar input{margin:0;width:180px}.ofc-find-bar button{margin:0}
.ofc-canvas{background:color-mix(in srgb,var(--bg2) 70%,#888 10%);border:1px solid var(--bd);border-top:0;border-radius:0 0 12px 12px;padding:28px 12px;height:calc(100vh - 270px);min-height:420px;overflow:auto}
.ofc-page{background:#fff;color:#111;width:min(21cm,100%);min-height:29.7cm;margin:0 auto;box-shadow:0 4px 22px rgba(0,0,0,.18);padding:2.2cm 2.2cm}
.ofc-page .ql-container.ql-snow{border:0;font-family:Arial,"Noto Sans Arabic",sans-serif;font-size:14px}.ofc-page .ql-editor{padding:0;min-height:24cm;line-height:1.5;overflow:visible}
.ofc-page .ql-editor h1{font-size:2em;color:#1f3864}.ofc-page .ql-editor h2{font-size:1.5em;color:#1f3864}.ofc-page .ql-editor h3{font-size:1.2em}
.ofc-page .ql-editor table{border-collapse:collapse;width:100%}.ofc-page .ql-editor td{border:1px solid #a6a6a6;padding:4px 8px}
.ofc-page .ql-editor .page-break{border-top:2px dashed #bbb;margin:22px -2.2cm;height:0;position:relative}.ofc-page .ql-editor .page-break::after{content:"⤓";position:absolute;left:50%;top:-12px;background:#fff;color:#999;padding:0 6px}
.ofc-page .ql-editor img{max-width:100%}
.ofc-foot{padding:6px 2px}
@media print{.ofc-canvas{height:auto!important;overflow:visible!important;border:0;padding:0;background:#fff}body *{visibility:hidden!important}.ofc-page,.ofc-page *{visibility:visible!important}.ofc-page{position:absolute;left:0;top:0;width:100%;box-shadow:none;padding:0;min-height:0}.ofc-page .page-break{border:0;page-break-after:always;margin:0}.ofc-page .page-break::after{display:none}@page{size:A4;margin:2cm}}
@media (max-width:700px){.ofc-canvas{height:auto;min-height:60vh}.ofc-page{padding:1cm .8cm;min-height:60vh}.ofc-page .ql-editor .page-break{margin:22px -.8cm}.ofc-canvas{padding:12px 4px}}
/* sheets */
.ofs-toolbar{display:flex;flex-wrap:wrap;gap:2px;align-items:center;padding:6px;border:1px solid var(--bd);border-radius:12px 12px 0 0;background:var(--card)}
.ofs-toolbar button,.ofs-toolbar select,.ofs-colorbtn{height:32px;min-width:32px;padding:0 7px;margin:0;border:1px solid transparent;border-radius:7px;background:none;color:var(--fg);font-size:14px;cursor:pointer;width:auto}
.ofs-toolbar button:hover,.ofs-colorbtn:hover{background:var(--bg2)}.ofs-toolbar button.on{background:color-mix(in srgb,var(--acc) 18%,transparent);border-color:var(--acc)}
.ofs-toolbar select{border-color:var(--bd);font-size:13px}.ofs-toolbar .sep{width:1px;height:22px;background:var(--bd);margin:0 4px}
.ofs-colorbtn{position:relative;display:inline-grid;place-items:center;font-weight:700;color:#d9480f}.ofs-colorbtn.bg{color:#f2c200}.ofs-colorbtn input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;margin:0;padding:0}
.ofs-fbar{display:flex;align-items:center;border:1px solid var(--bd);border-top:0;background:var(--card)}.ofs-fbar input{margin:0;border:0;border-radius:0;height:30px;font-family:Consolas,monospace;font-size:13px;background:var(--card);color:var(--fg)}
.ofs-name{width:90px;border-inline-end:1px solid var(--bd)!important;text-align:center}.ofs-fxl{padding:0 8px;color:var(--mut)}.ofs-fx{flex:1}
.ofs-wrap{position:relative;height:calc(100vh - 290px);min-height:380px;border:1px solid var(--bd);border-top:0;background:#fff;color:#111;overflow:hidden;direction:ltr;user-select:none}
.ofs-corner{position:absolute;left:0;top:0;width:46px;height:24px;background:#f1f3f5;border-right:1px solid #ccc;border-bottom:1px solid #ccc;z-index:3;cursor:pointer}
.ofs-colh{position:absolute;left:46px;top:0;right:0;height:24px;overflow:hidden;background:#f1f3f5;border-bottom:1px solid #ccc;z-index:2}
.ofs-rowh{position:absolute;left:0;top:24px;bottom:0;width:46px;overflow:hidden;background:#f1f3f5;border-right:1px solid #ccc;z-index:2}
.ofs-ch,.ofs-rhd{position:absolute;display:grid;place-items:center;font-size:12px;color:#555;box-sizing:border-box;cursor:pointer}
.ofs-ch{top:0;height:24px;border-right:1px solid #d0d0d0}.ofs-rhd{left:0;width:46px;border-bottom:1px solid #d0d0d0}
.ofs-ch.on,.ofs-rhd.on{background:#dbe4ff;color:#1c3d9c;font-weight:700}
.ofs-rz{position:absolute;right:-3px;top:0;width:6px;height:100%;cursor:col-resize;z-index:2}
.ofs-grid{position:absolute;left:46px;top:24px;right:0;bottom:0;overflow:auto;outline:none}
.ofs-cells{position:relative;background-image:linear-gradient(#e3e3e3 1px,transparent 1px);background-size:100% 24px}
.ofs-c{position:absolute;box-sizing:border-box;border-right:1px solid #e3e3e3;border-bottom:1px solid #e3e3e3;padding:0 4px;font-size:13px;line-height:23px;white-space:nowrap;overflow:hidden;text-overflow:clip;font-family:Calibri,Arial,"Noto Sans Arabic",sans-serif;background:#fff}
.ofs-c.wrap{white-space:normal;line-height:1.25;padding-top:2px;word-break:break-word}.ofs-c.bd{border:1px solid #888}.ofs-c.err{color:#c92a2a}.ofs-c.mg{z-index:1;display:flex;align-items:center;justify-content:center}
.ofs-sel{position:absolute;background:rgba(51,102,255,.12);border:1px solid #3366ff;pointer-events:none;z-index:4}
.ofs-cur{position:absolute;border:2px solid #1c7ed6;pointer-events:none;z-index:5;box-sizing:border-box}
.ofs-fill{position:absolute;width:8px;height:8px;background:#1c7ed6;border:1px solid #fff;cursor:crosshair;z-index:6}
.ofs-ed{position:absolute;z-index:8;margin:0;padding:2px 4px;border:2px solid #1c7ed6;font:13px Calibri,Arial,sans-serif;resize:none;box-shadow:0 4px 14px rgba(0,0,0,.2);background:#fff;color:#111;min-height:24px;overflow:hidden;border-radius:0}
.ofs-tabs{display:flex;align-items:center;gap:4px;padding:4px;border:1px solid var(--bd);border-top:0;border-radius:0 0 12px 12px;background:var(--card);overflow-x:auto}
.ofs-tabs button{margin:0;height:30px;padding:0 10px}.ofs-tabs-l{display:flex;gap:2px}
.ofs-tab{border:1px solid var(--bd);border-radius:0 0 8px 8px;background:var(--bg2);color:var(--fg);cursor:pointer;white-space:nowrap}.ofs-tab.on{background:#fff;color:#1c7ed6;font-weight:700;border-top:2px solid #1c7ed6}
.ofs-stats{margin-inline-start:auto;white-space:nowrap;padding:0 8px}
.ofs-menu{position:fixed;z-index:60;background:var(--card);border:1px solid var(--bd);border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.2);padding:6px;min-width:220px;display:flex;flex-direction:column}
.ofs-menu button{display:block;text-align:start;border:0;background:none;color:var(--fg);padding:7px 10px;border-radius:8px;margin:0;font-size:14px;cursor:pointer}.ofs-menu button:hover{background:var(--bg2)}.ofs-menu hr{border:0;border-top:1px solid var(--bd);margin:4px 0}
.drv-new>div{min-width:230px}.drv-new form{margin:0}
/* v127 E-Mail */
.mail{display:grid;grid-template-columns:210px minmax(280px,380px) 1fr;gap:0;height:calc(100vh - 100px);min-height:520px;border:1px solid var(--bd);border-radius:14px;overflow:hidden;background:var(--card);position:relative}
.mail-side{border-inline-end:1px solid var(--bd);padding:10px;display:flex;flex-direction:column;gap:8px;overflow:auto;background:var(--bg2)}
.mail-new{width:100%;margin:0}.mail-accsel{margin:0}.mail-me{padding:0 4px;word-break:break-all}
.mail-folders{display:flex;flex-direction:column;gap:1px}.mail-folders a{display:flex;justify-content:space-between;align-items:center;padding:7px 10px;border-radius:9px;color:inherit;text-decoration:none;font-size:14px;text-align:start;gap:6px}.mail-folders a span{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mail-folders a:hover{background:var(--card)}.mail-folders a.on{background:color-mix(in srgb,var(--acc) 16%,transparent);font-weight:600}.mail-folders a b{background:var(--acc);color:#fff;border-radius:10px;padding:0 7px;font-size:12px}
.mail-set{margin-top:auto;padding:6px 4px}
.mail-listp{display:flex;flex-direction:column;border-inline-end:1px solid var(--bd);min-width:0}
.mail-lhead{display:flex;gap:4px;padding:8px;border-bottom:1px solid var(--bd)}.mail-lhead input{margin:0;flex:1;min-width:0}.mail-lhead select{margin:0;width:auto}.mail-lhead button{margin:0}
.mail-bulk{display:flex;gap:4px;align-items:center;padding:4px 8px;background:color-mix(in srgb,var(--acc) 10%,transparent)}.mail-bulk[hidden]{display:none}.mail-bulk button{margin:0}
.mail-list{flex:1;overflow:auto}
.mail-item{display:grid;grid-template-columns:18px 34px 1fr auto;gap:8px;align-items:center;padding:9px 10px;border-bottom:1px solid var(--bd);cursor:pointer;position:relative}
.mail-item:hover{background:var(--bg2)}.mail-item.on{background:color-mix(in srgb,var(--acc) 12%,transparent)}
.mail-item.unseen::before{content:"";position:absolute;inset-inline-start:0;top:0;bottom:0;width:3px;background:var(--acc)}.mail-item.unseen .mail-it1 b,.mail-item.unseen .mail-it2{font-weight:700}
.mail-ck{margin:0}.mail-av{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:12px;font-weight:700;background:hsl(var(--h,200) 50% 45%)}.mail-av.big{width:42px;height:42px;font-size:15px}
.mail-it{min-width:0}.mail-it1{display:flex;justify-content:space-between;gap:6px}.mail-it1 b{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-it1 small{color:var(--mut);white-space:nowrap}
.mail-it2{font-size:13px;color:var(--mut);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mail-item.unseen .mail-it2{color:var(--fg)}
.mail-ic{display:flex;gap:2px;align-items:center}.mail-star{border:0;background:none;color:var(--mut);font-size:16px;cursor:pointer;padding:0 2px;margin:0}.mail-star.on{color:#f59f00}
.mail-pager{padding:6px;text-align:center;border-top:1px solid var(--bd)}.mail-pager button{margin:0}
.mail-loading,.mail-empty{padding:40px 10px;text-align:center;color:var(--mut)}.mail-empty{font-size:15px}.mail-read .mail-empty{font-size:40px;padding-top:120px}.mail-read .mail-empty span{font-size:14px}
.mail-err{padding:16px;color:#b91c1c}
.mail-read{overflow:auto;padding:0 18px 18px;min-width:0}
.mr-bar{display:flex;gap:2px;align-items:center;flex-wrap:wrap;position:sticky;top:0;background:var(--card);padding:8px 0;z-index:3;border-bottom:1px solid var(--bd)}.mr-bar button,.mr-bar summary{margin:0}.mr-sp{flex:1}.mr-back{display:none}
.mr-movem>div{max-height:300px;overflow:auto}
.mr-subj{margin:14px 0 10px;font-size:20px}
.mr-head{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;margin-bottom:10px}
.mr-img{background:#fff7e6;color:#8a5300;border:1px solid #ffd591;border-radius:10px;padding:6px 10px;font-size:13px;margin-bottom:8px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.mr-img button{margin:0}
.mr-atts{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.mr-att{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--bd);border-radius:10px;padding:3px 4px 3px 10px;font-size:13px}.mr-att a{text-decoration:none}.mr-att button{margin:0;padding:2px 6px}
.mr-frame{width:100%;border:0;min-height:120px;background:#fff;border-radius:8px}
.mr-text{white-space:pre-wrap;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.mail-compose{position:fixed;bottom:0;inset-inline-end:24px;width:min(640px,calc(100vw - 24px));height:min(640px,calc(100vh - 80px));background:var(--card);border:1px solid var(--bd);border-radius:14px 14px 0 0;box-shadow:0 10px 40px rgba(0,0,0,.3);z-index:70;display:flex;flex-direction:column}
.mail-compose.min{height:46px;overflow:hidden}.mail-compose[hidden]{display:none}
.mc-head{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--bg2);border-radius:14px 14px 0 0}.mc-head button{margin:0}
.mc-fields{padding:4px 12px;position:relative}.mc-fields label{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--bd);margin:0}.mc-fields label span{width:60px;color:var(--mut);font-size:13px;flex:none}
.mc-fields input,.mc-fields select{border:0;margin:0;padding:8px 0;background:transparent;flex:1;min-width:0;color:var(--fg);box-shadow:none}.mc-fields .mc-ccbtn{margin:0}.mc-fields label[hidden]{display:none}
.mc-sugg{position:absolute;inset-inline:60px 12px;top:42px;z-index:5;background:var(--card);border:1px solid var(--bd);border-radius:10px;box-shadow:0 10px 26px rgba(0,0,0,.18);display:flex;flex-direction:column;max-height:260px;overflow:auto}
.mc-sugg button{text-align:start;border:0;background:none;padding:7px 10px;margin:0;color:var(--fg);cursor:pointer}.mc-sugg button:hover{background:var(--bg2)}.mc-sugg small{color:var(--mut)}
.mc-editor{flex:1;overflow:auto;display:flex;flex-direction:column}.mail-compose .ql-toolbar.ql-snow{border:0;border-bottom:1px solid var(--bd)}.mail-compose .ql-container.ql-snow{border:0;flex:1;font-size:14px}.mail-compose .ql-editor{min-height:200px}
.mc-atts{display:flex;flex-wrap:wrap;gap:6px;padding:0 12px}.mc-att{display:inline-flex;gap:4px;align-items:center;font-size:12px;border:1px solid var(--bd);border-radius:8px;padding:2px 2px 2px 8px}.mc-att button{border:0;background:none;cursor:pointer;margin:0;padding:0 6px;color:var(--mut)}
.mc-foot{display:flex;gap:6px;align-items:center;padding:8px 12px;border-top:1px solid var(--bd);flex-wrap:wrap}.mc-foot .btn,.mc-foot button{margin:0}.mc-drive>div{bottom:110%;top:auto;max-height:300px;overflow:auto;inset-inline-start:0;inset-inline-end:auto}
.mail-setup{max-width:720px}.mail-adv{margin:10px 0}.mail-prov{margin-top:14px;border-top:1px solid var(--bd);padding-top:10px}
.mail-acc{border-top:1px solid var(--bd);padding:12px 0}.mail-sigform{margin-top:8px}.mail-sig-ed{background:#fff;color:#111;min-height:90px}
@media (max-width:900px){.mail{grid-template-columns:1fr;grid-template-rows:auto 1fr;height:calc(100vh - 90px)}.mail-side{flex-direction:row;align-items:center;padding:6px;gap:6px;overflow-x:auto;border-inline-end:0;border-bottom:1px solid var(--bd)}.mail-side .mail-new{width:auto;white-space:nowrap;flex:none;padding:6px 10px}.mail-me,.mail-set{display:none}.mail-side .mail-accsel{flex:none;width:auto;max-width:60vw;padding:6px 8px}.mail-folders{flex-direction:row;gap:4px;flex-wrap:nowrap}.mail-side{flex-wrap:nowrap!important}.mail-folders a{padding:6px 10px!important;border:1px solid var(--bd);white-space:nowrap}.mail-folders a span{overflow:visible}.mail.show-read .mail-side{display:none}.mail-read{display:none;padding:0 10px 10px}.mail.show-read .mail-listp{display:none}.mail.show-read .mail-read{display:block}.mr-back{display:inline-block}
  .mail-listp::before{content:"";}.mail-compose{inset-inline-end:0;width:100vw;height:calc(100vh - 40px);border-radius:0}}
/* v128 desktop app + network drive */
.dsk-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:center;padding:28px;border-radius:20px;margin-bottom:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--acc) 18%,var(--card)),var(--card));border:1px solid var(--bd)}
.dsk-hero h1{font-size:30px;line-height:1.15;margin:10px 0 8px}.dsk-hero p{margin:0 0 14px}
.dsk-dl{font-size:16px;padding:12px 20px}.dsk-dl small{opacity:.75;margin-inline-start:6px}
.dsk-mock{background:var(--bg2);border:1px solid var(--bd);border-radius:14px;box-shadow:0 18px 40px rgba(0,0,0,.12);overflow:hidden}
.dsk-mock-bar{display:flex;align-items:center;gap:6px;padding:9px 12px;border-bottom:1px solid var(--bd);font-size:13px}.dsk-mock-bar span{width:10px;height:10px;border-radius:50%;background:var(--bd)}.dsk-mock-bar b{margin-inline-start:8px}
.dsk-mock-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:14px}.dsk-mock-grid div{background:var(--card);border:1px solid var(--bd);border-radius:12px;padding:12px 6px;text-align:center}.dsk-mock-grid i{font-style:normal;font-size:26px;display:block}.dsk-mock-grid small{font-size:11.5px;display:block;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dsk-mock-sync{padding:9px 14px;border-top:1px solid var(--bd);font-size:13px;color:#15803d}
.dsk-feats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.dsk-feats .card{margin:0}.dsk-feats p{margin:6px 0 0}
.dsk-cred{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;align-items:center;margin:8px 0}.dsk-cred span{font-size:13px;opacity:.75}.dsk-cred code{word-break:break-all;padding:4px 8px;border-radius:7px;background:var(--bg2);border:1px solid var(--bd)}
.dsk-new{border:2px solid #16a34a;background:color-mix(in srgb,#16a34a 8%,var(--card));border-radius:12px;padding:12px 14px;margin:10px 0}.dsk-pw{font-size:15px;font-weight:700;letter-spacing:.3px}
.dsk-how{margin-top:8px;border:1px solid var(--bd);border-radius:10px;padding:8px 12px}.dsk-how summary{cursor:pointer;font-weight:600}.dsk-how ol{margin:8px 0;padding-inline-start:22px}
.dsk-link{max-width:520px;margin:30px auto;text-align:center}.dsk-link-ic{font-size:46px}.dsk-code{font:700 34px/1.2 ui-monospace,monospace;letter-spacing:4px;margin:14px 0;padding:12px;border-radius:12px;background:var(--bg2);border:1px dashed var(--bd)}
.dsk-code-in{max-width:200px;margin:0;text-transform:uppercase;font:600 20px ui-monospace,monospace;text-align:center;letter-spacing:2px}.dsk-dev{text-align:start;margin:10px auto}
@media (max-width:820px){.dsk-hero{grid-template-columns:1fr;padding:18px}.dsk-hero h1{font-size:24px}.dsk-feats{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.dsk-feats{grid-template-columns:1fr}.dsk-cred{grid-template-columns:1fr}}
.dsk-cred code,.dsk-pw,#admin code{direction:ltr;unicode-bidi:isolate;text-align:left}
/* security scan */
.ss-head{display:flex;gap:22px;align-items:center;flex-wrap:wrap}.ss-txt{flex:1;min-width:260px}.ss-txt h1{margin:0 0 4px;font-size:24px}
.ss-score{width:110px;height:110px;border-radius:50%;border:8px solid var(--c);display:flex;align-items:baseline;justify-content:center;padding-top:28px;color:var(--c)}.ss-score b{font-size:36px}.ss-score small{opacity:.7}
.ss-pill{white-space:nowrap}.ss-item{padding:0;margin-bottom:8px;border-inline-start:5px solid #cbd5e1}.ss-item summary{cursor:pointer;padding:12px 16px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.ss-item.crit{border-inline-start-color:#b91c1c}.ss-item.high{border-inline-start-color:#dc2626}.ss-item.warn{border-inline-start-color:#d97706}.ss-item.info{border-inline-start-color:#2563eb}.ss-item.ok{border-inline-start-color:#16a34a}
.ss-pre{margin:0 16px 10px;padding:10px;border-radius:8px;background:var(--bg2);border:1px solid var(--bd);white-space:pre-wrap;word-break:break-all;font-size:12.5px;max-height:260px;overflow:auto;direction:ltr;text-align:left}
.ss-fix{margin:0 16px 12px;font-size:13.5px}
/* v129 meetings: home + incoming call */
.mt-home-hero{display:flex;gap:24px;align-items:center;justify-content:space-between;padding:26px;border-radius:20px;margin-bottom:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--acc) 16%,var(--card)),var(--card));border:1px solid var(--bd);flex-wrap:wrap}
.mt-home-hero h1{margin:0 0 6px;font-size:28px}.mt-home-new{font-size:16px;padding:12px 20px}
.mt-home-art{display:grid;grid-template-columns:repeat(2,64px);gap:10px}.mt-home-art span{width:64px;height:64px;border-radius:16px;background:var(--card);border:1px solid var(--bd);display:grid;place-items:center;font-size:30px}
.mt-list{display:flex;flex-direction:column;gap:6px}.mt-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--bd);border-radius:12px;color:inherit;text-decoration:none;flex-wrap:wrap}
.mt-row:hover{border-color:var(--acc)}.mt-date{display:flex;flex-direction:column;align-items:center;min-width:54px;font-size:13px}.mt-created code{word-break:break-all}
.ring-box{position:fixed;top:18px;inset-inline-end:18px;z-index:9999;background:var(--card);border:1px solid var(--bd);border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.35);padding:16px;width:min(340px,calc(100vw - 36px));animation:ringin .3s ease-out}
@keyframes ringin{from{transform:translateY(-20px);opacity:0}}
.ring-t{display:flex;gap:12px;align-items:center;margin-bottom:12px}.ring-av{width:46px;height:46px;border-radius:50%;background:var(--acc);color:#fff;display:grid;place-items:center;font-size:20px;font-weight:700;animation:ringpulse 1.2s infinite}
@keyframes ringpulse{0%{box-shadow:0 0 0 0 rgba(34,197,94,.6)}100%{box-shadow:0 0 0 14px rgba(34,197,94,0)}}
.ring-btns{display:flex;gap:8px}.ring-btns button{flex:1;border:0;border-radius:10px;padding:10px;color:#fff;font-weight:600}.ring-ok{background:#16a34a}.ring-no{background:#dc2626}
/* chat topics */
.msg-topics{display:flex;gap:6px;overflow-x:auto;padding:6px 10px;border-bottom:1px solid var(--bd);scrollbar-width:thin}
.msg-topics a{white-space:nowrap;padding:5px 11px;border-radius:16px;border:1px solid var(--bd);color:inherit;text-decoration:none;font-size:13.5px}
.msg-topics a.on{background:color-mix(in srgb,var(--acc) 16%,transparent);border-color:var(--acc);font-weight:600}.msg-topics button{white-space:nowrap}
.msg-convs li.msg-sub a{padding-inline-start:28px}.msg-convs li.msg-sub .mi{opacity:.7}
/* OneDrive import */
.imp-logos{display:flex;align-items:center;gap:12px;font-size:40px}.imp-logos b{font-size:26px;opacity:.6}
.imp-bar{height:12px;border-radius:7px;background:var(--bg2);border:1px solid var(--bd);overflow:hidden;margin:8px 0}.imp-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#0f766e,#14b8a6);transition:width .4s}
.imp-nums{font-size:15px}
/* mails linked to records + notes */
.mr-work{margin:8px 0 10px;padding:8px 10px;border:1px solid var(--bd);border-radius:12px;background:var(--bg2)}
.mlk-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.mlk-chips{display:contents}
.mlk-chip{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--acc);background:color-mix(in srgb,var(--acc) 12%,transparent);border-radius:16px;padding:2px 4px 2px 10px;font-size:13px}
.mlk-chip a{color:inherit;text-decoration:none;font-weight:600}.mlk-chip button{border:0;background:none;cursor:pointer;opacity:.6;padding:0 5px}.mlk-chip button:hover{opacity:1}
.mlk-sug{border:1px dashed var(--bd);background:var(--card);border-radius:16px;padding:3px 10px;font-size:13px;cursor:pointer;color:inherit}.mlk-sug:hover{border-color:var(--acc)}
.mlk-pick{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.mlk-pick select,.mlk-pick input{margin:0;width:auto}.mlk-pick input{flex:1;min-width:160px}
.mlk-res{flex-basis:100%;display:flex;flex-direction:column;gap:3px;max-height:200px;overflow:auto}.mlk-res button{text-align:start;border:1px solid var(--bd);background:var(--card);border-radius:8px;padding:6px 9px;cursor:pointer;color:inherit}.mlk-res button:hover{border-color:var(--acc)}
.mlk-notes{margin-top:8px}.mlk-note{border-inline-start:3px solid #f59e0b;background:color-mix(in srgb,#f59e0b 8%,var(--card));border-radius:8px;padding:6px 10px;margin:6px 0}.mlk-nb{white-space:pre-wrap;font-size:14px}
.mlk-nf{display:flex;gap:6px;align-items:flex-end}.mlk-nf textarea{margin:0;flex:1}
.mlk-list{list-style:none;margin:0;padding:0}.mlk-list li{display:flex;flex-direction:column;padding:8px 0;border-bottom:1px solid var(--bd)}.mlk-list li:last-child{border:0}
.mlk-frame{width:100%;height:70vh;border:1px solid var(--bd);border-radius:10px;background:#fff}.mlk-text{white-space:pre-wrap;font-family:inherit}.mlk-chips a.mlk-chip{padding:3px 10px}
/* v130 one-click Microsoft setup */
.mss-box{border:1px solid var(--line,#e5e7eb);border-radius:12px;padding:12px 14px;margin:8px 0 12px;background:var(--soft,rgba(15,118,110,.05))}
.mss-box p{margin:6px 0}
.mss-code{font-size:1.5em;font-weight:700;letter-spacing:.12em;padding:4px 10px;border-radius:8px;background:var(--card,#fff);border:1px dashed var(--line,#cbd5e1);direction:ltr;display:inline-block}
/* v131 Netz */
.net-conf{margin-top:14px;padding:14px;border:1px solid var(--bd);border-radius:14px;background:var(--soft,rgba(15,118,110,.05))}
.net-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.net-steps p{margin:4px 0}
.net-qr{max-width:260px;margin:6px 0}.net-qr svg{width:100%;height:auto;border:6px solid #fff;border-radius:8px;background:#fff}
.net-pre{white-space:pre-wrap;word-break:break-all;font-size:12px;padding:10px;border-radius:8px;background:var(--card);border:1px solid var(--bd);direction:ltr;text-align:left}
.net-join{padding:12px;border-radius:12px;border:1px dashed var(--acc);margin:8px 0}
.net-pend td{background:rgba(245,158,11,.08)}
/* v131 mail: share / shared folder */
.mr-shared{margin:8px 0;padding:8px 12px;border-radius:10px;background:color-mix(in srgb,var(--acc) 10%,var(--card));border:1px solid var(--bd);font-size:13px}
.mr-shared-note{margin-top:4px;white-space:pre-wrap}
.mail-share{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:60;display:flex;align-items:center;justify-content:center;padding:16px}
.mail-share-box{background:var(--card);border-radius:14px;padding:16px;width:min(460px,100%);max-height:90vh;display:flex;flex-direction:column;gap:8px}
.mail-share-box h3{margin:0}.ms-list{overflow:auto;max-height:40vh;display:flex;flex-direction:column;gap:2px}
.ms-u{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;cursor:pointer}.ms-u:hover{background:var(--soft,rgba(15,118,110,.06))}
.ms-note{width:100%;box-sizing:border-box}

/* passkeys */
.pk-msg{color:var(--bad);margin:6px 0 0}
.pk-hint{margin:6px 0 0;text-align:center}
button.busy{opacity:.6;cursor:progress}
.pk-list td{vertical-align:middle}
.drv-menu{position:relative;display:inline-block}
/* ---- E-Mail v145: Outlook look – colour categories, right-click menu, hover actions */
.mail{box-shadow:0 1px 2px rgba(0,0,0,.04)}
.mail-side{gap:6px}.mail-new{font-weight:600;border-radius:10px;padding:10px}
.mail-folders a{font-size:13.5px;padding:6px 10px}
.mail-catside{display:flex;flex-direction:column;gap:1px;margin-top:6px}
.mail-cath{display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--mut);padding:6px 10px 4px;font-weight:700}.mail-cath button{margin:0;padding:0 6px;min-height:0}
.mail-catside a{display:flex;align-items:center;gap:8px;padding:5px 10px;border-radius:8px;color:inherit;text-decoration:none;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mail-catside a:hover{background:var(--card)}.mail-catside a.on{background:color-mix(in srgb,var(--acc) 16%,transparent);font-weight:600}
.mail-catside i,.mctx-i i{width:12px;height:12px;border-radius:3px;background:var(--c);flex:0 0 12px;display:inline-block}
.mail-lhead{position:sticky;top:0;background:var(--card);z-index:2}
.mail-item{padding:8px 10px 8px 12px;gap:8px 10px;transition:background .08s}
.mail-item .mail-it1 b{font-size:14px}.mail-item .mail-it2{font-size:13px;margin-top:1px}
.mail-item.unseen .mail-it2{color:var(--acc)}
.mail-item.on{background:color-mix(in srgb,var(--acc) 14%,var(--card))}.mail-item.ctx{outline:2px solid color-mix(in srgb,var(--acc) 55%,transparent);outline-offset:-2px}
.mail-ic{gap:4px;font-size:13px}
.mail-qa{position:absolute;inset-inline-end:8px;top:6px;display:none;gap:2px;background:var(--bg2);border:1px solid var(--bd);border-radius:8px;padding:1px;box-shadow:0 2px 8px rgba(0,0,0,.12)}
.mail-qa button{border:0;background:none;margin:0;padding:3px 6px;min-height:0;cursor:pointer;color:var(--fg);border-radius:6px;font-size:13px;line-height:1}.mail-qa button:hover{background:var(--card)}
.mail-item:hover .mail-qa{display:flex}.mail-item:hover .mail-it1 small{visibility:hidden}
@media (hover:none){.mail-qa{display:none!important}.mail-item:hover .mail-it1 small{visibility:visible}}
.mail-cats{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.mcat{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;line-height:1.5;padding:0 8px;border-radius:4px;background:color-mix(in srgb,var(--c) 20%,transparent);border-inline-start:3px solid var(--c);color:var(--fg);white-space:nowrap;max-width:160px;overflow:hidden;text-overflow:ellipsis}
.mr-cats{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:-4px 0 10px}.mr-cats .mcat{font-size:12.5px;padding:2px 4px 2px 10px}.mr-cats .mcat button{border:0;background:none;margin:0;padding:0 4px;min-height:0;cursor:pointer;color:var(--mut)}.mr-cats .mr-catbtn{margin:0}
.mr-bar{gap:4px;padding:8px 0}.mr-subj{font-size:21px;font-weight:600;line-height:1.3}
/* context menu */
.mctx{position:fixed;z-index:9999;min-width:240px;background:var(--card);color:var(--fg);border:1px solid var(--bd);border-radius:10px;box-shadow:0 12px 36px rgba(0,0,0,.28);padding:5px;font-size:13.5px}
.mctx button{display:flex;align-items:center;gap:10px;width:100%;border:0;background:none;color:inherit;text-align:start;padding:7px 10px;margin:0;border-radius:7px;cursor:pointer;min-height:0;position:relative;font-weight:400}
.mctx button:hover,.mctx button.open{background:color-mix(in srgb,var(--acc) 14%,transparent)}
.mctx-i{width:18px;text-align:center;flex:0 0 18px;display:inline-flex;justify-content:center}.mctx-l{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mctx-k{color:var(--mut);font-size:12px;margin-inline-start:12px}
.mctx hr{border:0;border-top:1px solid var(--bd);margin:4px 6px}
.mctx-sub{display:none;position:absolute;inset-inline-start:100%;top:-6px;min-width:220px;max-height:60vh;overflow:auto}
.mctx .has-sub:hover>.mctx-sub,.mctx .has-sub.open>.mctx-sub{display:block}
.mctx.left .mctx-sub{inset-inline-start:auto;inset-inline-end:100%}
/* category manager */
.mcm-list{display:flex;flex-direction:column;gap:6px;max-height:50vh;overflow:auto;margin:8px 0}
.mcm-row{display:grid;grid-template-columns:30px 1fr auto;gap:8px;align-items:center}.mcm-row input{margin:0}.mcm-row button{margin:0}
.mcm-col{width:26px;height:26px;border-radius:6px;border:2px solid var(--bd);background:var(--c);cursor:pointer;padding:0;min-height:0}
.mcm-pal{display:grid;grid-template-columns:repeat(10,1fr);gap:6px;padding:8px;border:1px solid var(--bd);border-radius:10px;margin:4px 0 8px}.mcm-pal[hidden]{display:none}
.mcm-pal button{aspect-ratio:1;border-radius:6px;border:0;background:var(--c);cursor:pointer;padding:0;margin:0;min-height:0}.mcm-pal button:hover{outline:2px solid var(--fg)}
.mail-folders{align-items:stretch}.mail-folders a{width:100%;box-sizing:border-box}.mail-folders a>span{flex:1;min-width:0;text-align:start;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* mail page uses the whole width like Outlook; hover actions replace the date + star */
main.wrap:has(> .mail){max-width:none;padding:0 12px}
main.wrap:has(> .mail) .mail{height:calc(100vh - 78px);margin-top:8px}
@media (min-width:1500px){.mail{grid-template-columns:230px minmax(340px,440px) 1fr}}
.mail-item:hover .mail-ic{visibility:hidden}
.mr-bar .btn,.mr-bar button,.mr-bar summary{border-radius:8px}
/* v146 – desktop programs (APowerFlex Mail, PDF …): their own compact title bar instead of the whole system's header */
.solo-brand{gap:10px}.solo-brand img{width:34px;height:34px;flex:none;filter:drop-shadow(0 2px 5px rgba(0,0,0,.18))}
.solo-brand span{font-size:16px;font-weight:700;line-height:1.15}.solo-brand small{display:block;font-weight:500;font-size:11.5px;color:var(--mut)}
.solo-acts{margin-inline-start:auto}
html.desk-solo .app-top .top-in{min-height:52px}
.mail-lhead .mail-q{flex:1 1 auto;min-width:110px}.mail-lhead .mail-flt{flex:0 1 auto;width:auto;max-width:120px}
/* v147 – every program like Office / Outlook: the editors fill the whole window, no footer, no page scrolling */
:root{--toph:62px}html.desk-solo{--toph:53px}
main.wrap:has(> .ofc),main.wrap:has(> .pdfx:not([hidden])){max-width:none;padding:0}
body:has(main > .ofc) .foot,body:has(main > .pdfx:not([hidden])) .foot,html.desk-solo .foot{display:none}
main > .ofc{height:calc(100vh - var(--toph));overflow:hidden}
main > .ofc .ofc-head{padding:8px 16px;margin:0;background:var(--card);border-bottom:1px solid var(--bd);flex-wrap:nowrap}
main > .ofc .ofc-banner{margin:8px 16px 0}
main > .ofc .ofs-toolbar,main > .ofc .ofc-toolbar.ql-toolbar.ql-snow{border-radius:0;border-inline:0;border-top:0;padding:6px 12px;background:var(--bg2)}
main > .ofc .ofs-fbar{border-inline:0}
main > .ofs .ofs-wrap{flex:1;height:auto;min-height:150px;border-inline:0}
main > .ofs .ofs-tabs{border-radius:0;border-inline:0}
main > .ofc .ofc-canvas{flex:1;height:auto;min-height:0;border:0;border-radius:0;padding:24px 12px;overflow:auto}
main > .ofc .ofc-foot{padding:4px 16px;border-top:1px solid var(--bd);background:var(--card)}
main > .pdfx:not([hidden]){height:calc(100vh - var(--toph));padding:8px 12px 0}
main > .pdfx .pdfx-bar{border-radius:12px}
/* program windows (desktop): full width, quiet chrome, a program rail on the left like Outlook / Teams */
html.desk-solo main.wrap{max-width:none;padding:14px 20px 20px}
html.desk-solo main.wrap:has(> .ofc),html.desk-solo main.wrap:has(> .pdfx:not([hidden])){padding:0}
html.desk-solo main.wrap:has(> .mail){padding:0 12px}
html.desk-solo body.desk-solo{padding-inline-start:64px}
.solo-rail{position:fixed;top:0;bottom:0;inset-inline-start:0;width:64px;z-index:8;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 0;background:var(--bg2);border-inline-end:1px solid var(--bd)}
.solo-rail a{position:relative;width:46px;height:46px;border-radius:12px;display:grid;place-items:center;text-decoration:none;transition:background .12s}
.solo-rail a img{width:28px;height:28px;filter:grayscale(.35) opacity(.85);transition:filter .12s,transform .12s}
.solo-rail a:hover{background:color-mix(in srgb,var(--fg) 7%,transparent)}.solo-rail a:hover img{filter:none;transform:scale(1.06)}
.solo-rail a.on{background:color-mix(in srgb,var(--acc) 15%,transparent)}.solo-rail a.on img{filter:none}
.solo-rail a.on::before{content:"";position:absolute;inset-inline-start:-9px;top:10px;bottom:10px;width:4px;border-radius:4px;background:var(--acc)}
.solo-rail .sr-sp{flex:1}.solo-rail .sr-home{font-size:20px}
.solo-rail a[data-tip]:hover::after{content:attr(data-tip);position:absolute;inset-inline-start:54px;top:50%;transform:translateY(-50%);white-space:nowrap;background:var(--fg);color:var(--bg);font-size:12px;font-weight:600;padding:4px 9px;border-radius:7px;pointer-events:none}
html.desk-solo .helpw-btn,body:has(main > .ofc) .helpw-btn,body:has(main > .pdfx:not([hidden])) .helpw-btn{width:38px;height:38px;font-size:17px;opacity:.75;bottom:44px}html.desk-solo .helpw-btn:hover{opacity:1}
.ofc-toolbar .ql-picker-label,.ofc-toolbar .ql-picker{color:var(--fg)}.ofc-toolbar .ql-stroke{stroke:var(--fg)}.ofc-toolbar .ql-fill{fill:var(--fg)}
main.wrap:has(> .mail) .mail{height:calc(100vh - var(--toph) - 16px)}body:has(main > .mail) .foot{display:none}
/* v150 – phone navigation like an app: bottom tab bar + a drawer with program tiles, search and folding groups */
.side-mhead,.side-apps,.m-tabs{display:none}
.side-gt{all:unset;cursor:default;display:flex;align-items:center;gap:6px;width:100%}.side-gt small{display:none}
@media (max-width:980px){
  .side{width:min(88vw,360px);padding:0 0 calc(80px + env(safe-area-inset-bottom));background:var(--bg)}
  .side-mhead{display:block;position:sticky;top:0;z-index:2;padding:calc(12px + env(safe-area-inset-top)) 14px 10px;background:var(--bg);border-bottom:1px solid var(--bd)}
  .side-q{width:100%;margin:0;font-size:16px;padding:11px 14px;border-radius:12px}
  .side-apps{display:grid;grid-template-columns:repeat(4,1fr);gap:6px 4px;padding:14px 10px 8px}
  .side-apps a{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 2px;border-radius:14px;text-decoration:none;color:var(--fg);font-size:12px;font-weight:600}
  .side-apps a img{width:46px;height:46px;filter:drop-shadow(0 3px 8px rgba(0,0,0,.22))}
  .side-apps a.on{background:color-mix(in srgb,var(--acc) 14%,transparent)}
  .side.searching .side-apps{display:none}
  .side-g{margin:2px 8px;border-radius:14px}
  .side-g h6{margin:0}
  .side-gt{cursor:pointer;padding:12px 10px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--mut);font-weight:700;box-sizing:border-box}
  .side-gt small{display:inline-block;margin-inline-start:auto;font-size:11px;font-weight:700;color:var(--mut);background:var(--bg2);border-radius:10px;padding:1px 8px;letter-spacing:0}
  .side-gt::after{content:"";width:8px;height:8px;border-inline-end:2px solid var(--mut);border-bottom:2px solid var(--mut);transform:rotate(-45deg);transition:transform .15s;margin-inline-start:6px}
  [dir=rtl] .side-gt::after{transform:rotate(45deg)}
  .side-g.open .side-gt::after,.side.searching .side-gt::after{transform:rotate(45deg)}
  .side-g:not(.open) a{display:none}.side.searching .side-g a:not([hidden]){display:flex}
  .side-g.open{background:var(--card)}
  .side a{padding:11px 12px;font-size:16px;border-radius:11px}
  .side .si{width:26px;font-size:19px}
  .m-tabs{display:flex;position:fixed;inset-inline:0;bottom:0;z-index:30;background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--bd);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}
  .m-tabs a,.m-tabs button{all:unset;flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:4px 0;color:var(--mut);font-size:11px;font-weight:600;cursor:pointer;-webkit-tap-highlight-color:transparent}
  .m-tabs svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .m-tabs a.on{color:var(--acc)}.m-tabs a.on svg{stroke-width:2.2}
  body.has-side{padding-bottom:calc(70px + env(safe-area-inset-bottom))}
  body.has-side .helpw{bottom:calc(84px + env(safe-area-inset-bottom))}
  main.wrap:has(> .mail) .mail{height:calc(100vh - var(--toph) - 86px - env(safe-area-inset-bottom))}
  main > .ofc,main > .pdfx:not([hidden]){height:calc(100vh - var(--toph) - 70px - env(safe-area-inset-bottom))}
  body.nav-open .m-tabs button{color:var(--acc)}
  body.has-side .foot{padding-bottom:20px}
}
@media (max-width:980px){body.has-side .nav-tog{display:none}}
/* v151 – phone polish */
@media (max-width:980px){
  .chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:2px;mask-image:linear-gradient(90deg,#000 88%,transparent)}
  .chips::-webkit-scrollbar{display:none}.chips>*{flex:none}
  .side-gt,.side-gt:hover,.side-gt:focus,.side-gt:active{background:none!important;outline:none;-webkit-tap-highlight-color:transparent}
  .side a{-webkit-tap-highlight-color:transparent}
  .side-foot{display:grid;grid-template-columns:auto auto 1fr auto;gap:8px;align-items:center;padding:14px;margin:12px 8px 0;border-top:0;background:var(--card);border-radius:14px}
  .side-foot .pill,.side-foot .lang,.side-foot button{height:42px;margin:0;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center}
  .side-foot .lang{width:100%;min-width:0}.side-foot form{margin:0}
  .m-tabs a.on,body.nav-open .m-tabs button{color:var(--fg)}
  .m-tabs a svg,.m-tabs button svg{padding:3px 14px;border-radius:14px;transition:background .15s;box-sizing:content-box}
  .m-tabs a.on svg,body.nav-open .m-tabs button svg{background:color-mix(in srgb,var(--acc) 28%,transparent)}
  .side-apps a span{font-size:12.5px}
  h1{font-size:24px}
}
@media (max-width:980px){
  .drv-side nav{flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}.drv-side nav::-webkit-scrollbar{display:none}.drv-side nav a{flex:none;padding:7px 12px}
  .ofc-tpls{grid-template-columns:repeat(3,1fr);gap:8px}.ofc-tpl{padding:8px 4px;gap:6px;font-size:12.5px}.ofc-tpl-page{transform:scale(.72);margin:-10px 0}
  .pdfx-start,.pdf-start{grid-template-columns:repeat(3,1fr)!important;gap:8px}
  .helpw{inset-inline-end:12px}.helpw-btn{width:44px!important;height:44px!important;font-size:19px!important;opacity:.9}
  .side-foot .lang{font-size:15px}
}
@media (max-width:900px){
  .mail{height:calc(100vh - var(--toph) - 86px - env(safe-area-inset-bottom))!important;margin-top:0!important;border-radius:0}
  .mail-catside,.mail-folders>div{display:none!important}
  .mail-side{padding:8px 4px}
  .mail-side .mail-new{border-radius:20px;padding:8px 14px}
  .mail-folders a{border-radius:18px}
  main.wrap:has(> .mail){padding:0!important}
}
@media (max-width:980px){.pdf-pick{padding:14px 6px;font-size:12.5px}.pdf-pick>div{font-size:30px!important}.pdf-pick .small{display:none}}
@media (max-width:900px){
  .mail{grid-template-rows:auto minmax(0,1fr)!important}
  .mail-side{min-height:max-content;flex:none}.mail-listp{min-height:0}
  .mail-list .mail-ck{display:none}.mail-list .mail-item{grid-template-columns:40px 1fr auto;padding:10px 12px}
}
/* v153 – voice assistant */
.vc-btn{all:unset;box-sizing:border-box;width:40px;height:40px;flex:none;border-radius:50%;display:grid;place-items:center;cursor:pointer;color:#fff;background:linear-gradient(135deg,#8b5cf6,#2b8cff);box-shadow:0 3px 12px rgba(91,33,182,.35);transition:transform .12s}
.vc-btn:hover{transform:scale(1.07)}.vc-btn svg,.vc-orb svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.solo-acts .vc-btn{margin-inline-end:6px}
dialog.vc{width:min(560px,96vw);height:min(720px,88vh);padding:0;border:1px solid var(--bd);border-radius:22px;background:var(--bg);color:var(--fg);display:flex;flex-direction:column;box-shadow:0 30px 80px rgba(0,0,0,.35);overflow:hidden}
dialog.vc:not([open]){display:none}dialog.vc::backdrop{background:rgba(10,15,30,.45);backdrop-filter:blur(3px)}
.vc-hd{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--bd);background:linear-gradient(135deg,color-mix(in srgb,#8b5cf6 14%,var(--bg)),color-mix(in srgb,#2b8cff 10%,var(--bg)))}
.vc-hd b{flex:1;font-size:16px}.vc-lang{width:auto;margin:0;padding:5px 8px;font-size:13px}.vc-hd .ghost{margin:0}
.vc-log{flex:1;overflow:auto;padding:16px 14px;display:flex;flex-direction:column;gap:10px}
.vc-hello p{margin:0 0 10px;color:var(--mut);font-size:14px}.vc-ex{display:flex;flex-wrap:wrap;gap:6px}.vc-ex .chip{cursor:pointer;font:inherit;font-size:13px}
.vc-msg{max-width:86%;padding:9px 13px;border-radius:16px;font-size:15px;line-height:1.45;white-space:pre-wrap;word-wrap:break-word}
.vc-msg.user{align-self:flex-end;background:linear-gradient(135deg,#8b5cf6,#2b8cff);color:#fff;border-end-end-radius:5px}.vc-msg.user.pending{opacity:.7}
.vc-msg.bot{align-self:flex-start;background:var(--card);border:1px solid var(--bd);border-end-start-radius:5px}.vc-msg.err{color:#e5484d}
.vc-msg.typing{display:flex;gap:4px;padding:12px 14px}.vc-msg.typing i{width:7px;height:7px;border-radius:50%;background:var(--mut);animation:vcdot 1s infinite}.vc-msg.typing i:nth-child(2){animation-delay:.15s}.vc-msg.typing i:nth-child(3){animation-delay:.3s}
@keyframes vcdot{0%,60%,100%{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
.vc-cards{display:flex;flex-direction:column;gap:6px;align-self:stretch}
.vc-card{display:flex;gap:10px;align-items:center;padding:9px 11px;border:1px solid var(--bd);border-radius:12px;background:var(--card);color:inherit;text-decoration:none}
a.vc-card:hover{border-color:var(--acc)}.vc-card.unread b{font-weight:800}.vc-ic{font-size:20px}.vc-tx{display:flex;flex-direction:column;min-width:0}.vc-tx b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vc-tx small{color:var(--mut)}
.vc-more{font-size:13px;align-self:flex-start}
.vc-confirm{display:flex;gap:8px;align-self:flex-start}.vc-confirm button{margin:0}
.vc-ft{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 14px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--bd);background:var(--bg2)}
.vc-st{min-height:16px;font-size:12.5px;color:var(--mut);text-align:center}
.vc-orb{all:unset;cursor:pointer;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#8b5cf6,#2b8cff);box-shadow:0 6px 24px rgba(91,33,182,.4);position:relative;--lvl:0}
.vc-orb svg{width:28px;height:28px}
.vc-orb.on{background:linear-gradient(135deg,#e5484d,#f76b15)}
.vc-orb.on::before{content:"";position:absolute;inset:-8px;border-radius:50%;border:3px solid #f76b15;opacity:.6;transform:scale(calc(1 + var(--lvl) * .25));animation:vcpulse 1.2s infinite}
.vc-orb.think::before{content:"";position:absolute;inset:-6px;border-radius:50%;border:3px solid transparent;border-top-color:#8b5cf6;animation:spin 1s linear infinite}
@keyframes vcpulse{50%{opacity:.15}}
.vc-in{display:flex;gap:6px;width:100%}.vc-in input{flex:1;margin:0;border-radius:22px;padding:10px 16px}.vc-in .btn{margin:0;border-radius:50%;width:42px;height:42px;padding:0}
@media (max-width:980px){dialog.vc{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0;border:0}.app-top .vc-btn{width:38px;height:38px}}
@keyframes spin{to{transform:rotate(360deg)}}
/* v161 E-Rechnung */
.einv-tag{display:inline-block;font-size:11px;font-weight:600;padding:1px 7px;border-radius:999px;background:color-mix(in srgb,var(--ok,#16a34a) 14%,transparent);color:var(--ok,#15803d);vertical-align:middle}
.einv-drop{margin-top:10px;border:2px dashed var(--bd);background:var(--bg2);padding:0;transition:border-color .15s,background .15s}
.einv-drop.on{border-color:var(--acc,#0f766e);background:color-mix(in srgb,var(--acc,#0f766e) 8%,transparent)}
.einv-drop-in{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px;cursor:pointer;text-align:center;margin:0}
.einv-drop-in input{display:none}
.es-steps{display:grid;gap:12px;margin-top:12px}
.es-step{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:start}
.es-num{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:700;background:var(--bg2);border:2px solid var(--bd)}
.es-step.ok .es-num{background:var(--ok,#16a34a);border-color:var(--ok,#16a34a);color:#fff}
.es-step h3{margin:4px 0 6px;font-size:16px}
.es-bar{height:10px;border-radius:999px;background:var(--bg2);overflow:hidden;border:1px solid var(--bd)}
.es-bar>i{display:block;height:100%;background:linear-gradient(90deg,#0f766e,#22c55e);transition:width .4s}
.es-hero{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.es-hero .big{font-size:34px;font-weight:800;line-height:1}
.es-check{list-style:none;padding:0;margin:6px 0}.es-check li{padding:2px 0}
.st-sum{display:flex;gap:16px;align-items:center;margin-top:14px;flex-wrap:wrap}.st-big{font-size:28px;font-weight:800;padding:8px 16px;border-radius:14px;background:var(--bg2);border:1px solid var(--bd)}
.st-big.ok{color:var(--ok)}.st-big.warn{color:var(--warn)}.st-big.bad{color:var(--bad)}
.st-t td{vertical-align:top}.st-t .st-i{font-size:18px;width:30px}.st-t tr.st-fail{background:color-mix(in srgb,var(--bad) 7%,transparent)}.st-t tr.st-warn{background:color-mix(in srgb,var(--warn) 7%,transparent)}
.st-t{table-layout:fixed;width:100%}.st-t td:nth-child(2){width:38%}.st-t td:nth-child(3){width:auto}.st-t td:nth-child(4){width:70px}.st-t td:nth-child(5){width:48px}
@media(max-width:700px){.st-t td:nth-child(4){display:none}.st-t td:nth-child(2){width:45%}}
.ads-kpis{grid-template-columns:repeat(6,1fr)}.ads-kpis .kpi{display:flex;flex-direction:column;gap:2px;margin:0}.ads-kpis .kpi b{font-size:26px}
@media(max-width:900px){.ads-kpis{grid-template-columns:repeat(3,1fr)}}@media(max-width:520px){.ads-kpis{grid-template-columns:1fr 1fr}}
.ads-bars{width:100%;height:120px;display:block}.ads-bars rect{fill:var(--acc)}.ads-bars rect:hover{fill:var(--acc2)}
/* v163 compact public header on phones (more of the offer above the fold) */
@media(max-width:560px){header.top:not(.app-top) .top-in{flex-wrap:nowrap;gap:8px}header.top:not(.app-top) nav{flex-wrap:nowrap;gap:6px}
header.top:not(.app-top) nav>a:not(.btn):not(.pill){display:none}header.top:not(.app-top) .brand small{display:none}header.top:not(.app-top) select.lang{max-width:92px;padding-inline:6px}}
.lo-free{margin-top:12px;padding:14px 16px;border-radius:14px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);display:flex;flex-direction:column;gap:2px;text-align:center}
.lo-free span{font-size:13px;opacity:.9}.lo-free b{font-size:30px;line-height:1.1;color:#fde68a}.lo-free small{font-size:12px;opacity:.85}
.scan-list{list-style:none;margin:0;padding:0 14px 12px;display:flex;flex-direction:column;gap:6px;text-align:start}
.scan-list li{padding:6px 10px;border-radius:8px;background:var(--bg,#fff);border:1px solid var(--bd)}
/* v170 freelancer skills table + leads */
.sk-t input,.sk-t select{margin:0;min-width:0}
.sk-t td:first-child input{min-width:170px}
.sk-bar{display:inline-flex;gap:2px;vertical-align:middle}.sk-bar i{width:14px;height:6px;border-radius:3px;background:var(--bd)}.sk-bar i.on{background:var(--acc,#0f766e)}
.mkl-cta{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;border:1px solid color-mix(in srgb,var(--acc,#0f766e) 40%,transparent)}
.mkl-bal{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.mkl-n{display:flex;flex-direction:column;align-items:center;min-width:90px;padding:8px 12px;border-radius:12px;background:color-mix(in srgb,var(--acc,#0f766e) 12%,transparent)}
.mkl-n b{font-size:30px;line-height:1.1}.mkl-n span{font-size:12px;opacity:.75}
.mkl-bal.low .mkl-n{background:color-mix(in srgb,var(--warn,#b45309) 15%,transparent)}
.mkl-list{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}
.mkl-card{margin:0;display:flex;flex-direction:column;gap:6px}.mkl-card.op{border-inline-start:3px solid var(--acc,#0f766e)}
.mkl-snip{margin:0;opacity:.85}.mkl-locked{position:relative;max-height:9em;overflow:hidden;-webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent)}
.mkl-mini{padding:6px 0;border-bottom:1px solid var(--bd)}.mkl-mini:last-child{border-bottom:0}
.mkl-works .mk-rep-r{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:8px}.mkl-works .mk-rep-r textarea{grid-column:1/-1}
@media(max-width:600px){.mkl-works .mk-rep-r{grid-template-columns:1fr}.mkl-list{grid-template-columns:1fr}}
/* v171 events & concerts */
.gig-list{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));margin-top:10px}
.gig-card{display:flex;gap:12px;margin:0;color:inherit;text-decoration:none}.gig-card:hover{border-color:var(--acc,#0f766e)}
.gig-date{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:64px;padding:6px;border-radius:12px;background:color-mix(in srgb,#c026d3 12%,transparent);color:#a21caf}
.gig-date b{font-size:26px;line-height:1}.gig-date span{font-weight:600;font-size:13px}.gig-date small{opacity:.7;font-size:11px}
.gig-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.gig-kpi{display:flex;gap:12px;flex-wrap:wrap}
.gig-times{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}.gig-times label{margin:0}
.gig-run input{margin:0;min-width:0}.gig-run td:nth-child(3) input{min-width:200px}
.gig-chk{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--bd)}.gig-chk.done .grow{text-decoration:line-through;opacity:.6}.gig-box{font-size:18px;padding:2px 6px}
.gig-facts{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.gig-facts span{display:flex;flex-direction:column;padding:8px 12px;border-radius:10px;background:var(--bg2);min-width:90px}.gig-facts b{font-size:20px}
.gig-runv .gig-tm{white-space:nowrap;width:110px}
@media print{.noprint,.side,.app-top,.nav-tog,footer,.help-fab{display:none!important}.gig-sheet,.card{box-shadow:none;border:1px solid #ccc;break-inside:avoid}}
/* v188 app launcher (⋮⋮⋮ / Ctrl+K) */
.lx{position:relative;display:inline-flex}
.lx-btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;border:0;background:transparent;color:var(--fg);cursor:pointer}
.lx-btn:hover,.lx-btn[aria-expanded=true]{background:rgba(15,118,110,.12)}.lx-btn svg{fill:currentColor;width:20px;height:20px;min-width:20px;flex:none}
.lx-panel{position:absolute;top:calc(100% + 8px);inset-inline-start:0;z-index:80;width:min(640px,calc(100vw - 24px));max-height:min(80vh,760px);overflow:auto;background:var(--card,#fff);border:1px solid var(--bd,#e5e7eb);border-radius:16px;box-shadow:0 18px 50px rgba(15,23,42,.22);padding:14px 16px 16px}
.lx-top{display:flex;gap:8px;position:sticky;top:-14px;background:inherit;padding:2px 0 10px;z-index:2}.lx-q{flex:1;font-size:15px;padding:10px 12px;border-radius:10px}
.lx-sec{margin-top:6px}.lx-sec+.lx-sec{border-top:1px solid var(--bd,#e5e7eb);padding-top:10px;margin-top:10px}
.lx-h{display:flex;justify-content:space-between;align-items:center;margin:2px 2px 6px}.lx-h b{font-size:14px}
.lx-g h6{margin:10px 2px 4px;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--mut,#64748b)}
.lx-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:4px}
.lx-t{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px 8px;border-radius:12px;text-decoration:none;color:inherit;text-align:center}
.lx-t:hover,.lx-t:focus-visible{background:rgba(15,118,110,.08)}
.lx-i{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:14px;font-size:26px;line-height:1;box-shadow:inset 0 -2px 0 rgba(0,0,0,.06)}
.lx-l{font-size:12.5px;line-height:1.25;max-width:100%;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.lx-off{opacity:.6}
.lx-pin{position:absolute;top:2px;inset-inline-end:4px;border:0;background:var(--card,#fff);border-radius:50%;width:22px;height:22px;font-size:11px;line-height:22px;padding:0;cursor:pointer;box-shadow:0 1px 4px rgba(0,0,0,.18);display:none}
.lx-all .lx-t:hover .lx-pin,.lx-editing .lx-mine .lx-pin{display:block}
.lx-hint{display:none;margin:4px 2px 0}.lx-editing .lx-hint{display:block}
.lx-editing .lx-mine .lx-t{cursor:grab;outline:1px dashed var(--bd,#cbd5e1);animation:lxw .35s ease-in-out infinite alternate}
@keyframes lxw{from{transform:rotate(-1deg)}to{transform:rotate(1deg)}}
.lx-drag{opacity:.4}
.lx-row{display:flex;flex-wrap:wrap;gap:8px}
.lx-n{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid var(--bd,#e5e7eb);border-radius:999px;text-decoration:none;color:inherit;font-size:13.5px}.lx-n:hover{background:rgba(15,118,110,.08)}
.lx-searching .lx-mine,.lx-searching .lx-all>.lx-h{display:none}.lx-searching .lx-all{border-top:0;padding-top:0;margin-top:0}
.lx-empty{margin-top:10px;text-align:center}
@media (prefers-reduced-motion:reduce){.lx-editing .lx-mine .lx-t{animation:none}}
@media (max-width:640px){.lx-panel{position:fixed;inset:64px 8px auto 8px;width:auto;max-height:calc(100vh - 80px)}.lx-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.lx-i{width:44px;height:44px;font-size:24px}}
@media (prefers-color-scheme:dark){.lx-i{filter:saturate(.9) brightness(.92)}}
body.lx-open .top{z-index:60}
.top .lx-btn svg{display:block}
/* v205 post inbox */
.post-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:14px;margin-top:12px;align-items:start}
.post-main{display:flex;flex-direction:column;gap:12px;min-width:0}.post-main>.card{margin:0}
.post-file{position:sticky;top:70px}.post-file iframe{width:100%;height:72vh;border:0;border-radius:8px;background:#fff}.post-file img{max-width:100%;border-radius:8px;display:block}
.post-facts{display:flex;flex-wrap:wrap;gap:10px 22px;margin:6px 0 10px}.post-facts>div{display:flex;flex-direction:column;gap:2px}
.post-todo{padding:8px 12px;border-radius:10px;background:color-mix(in srgb,var(--acc) 12%,transparent);border-inline-start:3px solid var(--acc)}
.post-due{white-space:nowrap}.post-due.soon{color:var(--warn)}.post-due.late{color:var(--danger,#dc2626);font-weight:600}
.post-ai-wait{animation:postpulse 1.6s ease-in-out infinite}@keyframes postpulse{50%{opacity:.45}}
.post-cmd-in{gap:6px}.post-cmd-in input{flex:1;min-width:0}#cmdmic.on{background:var(--danger,#dc2626);color:#fff;border-color:transparent;animation:postpulse 1s infinite}
.post-confirm{margin-top:10px;padding:10px 12px;border:1px solid var(--acc);border-radius:10px}.post-confirm ul{margin:6px 0 10px;padding-inline-start:20px}
.post-rel{list-style:none;padding:0;margin:6px 0}.post-rel li{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:6px 0;border-bottom:1px solid var(--bd)}.post-rel li a{flex:1;min-width:0;text-decoration:none;color:var(--fg)}
.post-log{white-space:pre-wrap;font:12px/1.5 inherit;margin:6px 0 0}
.post-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;margin-top:10px}.post-cards>p{grid-column:1/-1}
.post-card{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:var(--fg);margin:0;transition:transform .12s,box-shadow .12s}.post-card:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,.12)}.post-card.is-done{opacity:.6}
.post-k-invoice,.post-k-reminder{border-color:var(--warn)}.post-k-reminder{color:var(--danger,#dc2626);border-color:var(--danger,#dc2626)}.post-k-insurance{border-color:#38bdf8}.post-k-tax,.post-k-authority{border-color:#a78bfa}
.post-cmd .chips{flex-wrap:wrap;overflow:visible}
@media (max-width:860px){.post-grid{grid-template-columns:1fr}.post-file{position:static;order:2}.post-file iframe{height:60vh}}
/* v206 post: risk, contracts, reply */
.post-r-critical{color:#fff;background:var(--danger,#dc2626);border-color:transparent}.post-r-high{color:#c2410c;border-color:#f97316}.post-r-medium{color:var(--warn);border-color:var(--warn)}.post-r-low{color:var(--ok);border-color:var(--ok)}
.post-risk{padding:8px 12px;border-radius:10px;border-inline-start:3px solid var(--warn);background:color-mix(in srgb,var(--warn) 10%,transparent)}
.post-risk-critical{border-color:var(--danger,#dc2626);background:color-mix(in srgb,var(--danger,#dc2626) 12%,transparent)}.post-risk-high{border-color:#f97316;background:color-mix(in srgb,#f97316 12%,transparent)}.post-risk-low{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 8%,transparent)}
.post-draft{width:100%;font:14px/1.55 Georgia,'Times New Roman',serif;min-height:280px}.post-reply-ask textarea{width:100%}
/* v207 mail: mailboxes under each other, backup */
.mail-accsel-m{display:none}.mail-accs{display:flex;flex-direction:column;gap:2px}
.mail-acch{display:flex;align-items:center;gap:6px;padding:7px 8px;border-radius:8px;text-decoration:none;color:var(--fg);font-size:13px;font-weight:600;min-width:0}
.mail-acch:hover{background:color-mix(in srgb,var(--acc) 10%,transparent)}.mail-acch.on{background:color-mix(in srgb,var(--acc) 14%,transparent)}
.mail-acch-e{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-acch-i{opacity:.7;width:14px;text-align:center}
.mail-acch b{background:var(--acc);color:#fff;border-radius:999px;padding:0 7px;font-size:11px}
.mail-accs>.mail-folders{margin:2px 0 8px;padding-inline-start:8px;border-inline-start:2px solid color-mix(in srgb,var(--acc) 30%,transparent)}
.mail-bak-bar{height:6px;border-radius:9px;background:var(--bd);overflow:hidden;margin:2px 0 4px;max-width:220px}.mail-bak-bar span{display:block;height:100%;background:var(--ok)}
@media (max-width:900px){.mail-accsel-m{display:block}.mail-accs{display:contents}.mail-acch{display:none}.mail-accs>.mail-folders{margin:0;padding:0;border:0}}
/* v209 mail: endless list, date groups, drag & drop, AI, undo send */
.mail-listp{min-height:0;overflow:hidden}.mail-list{min-height:0;overscroll-behavior:contain}
.mail-grp{position:sticky;top:0;z-index:2;padding:6px 12px;font-size:12px;font-weight:700;color:var(--mut);background:var(--card);border-bottom:1px solid var(--bd);letter-spacing:.02em}
.mail-item.gone{opacity:.3;pointer-events:none}.mail-item[draggable=true]{cursor:default}
.mail-drag{position:fixed;top:-100px;left:0;padding:6px 12px;border-radius:10px;background:var(--acc);color:#fff;font:600 13px/1.2 system-ui;max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mail.dragging .mail-folders a{outline:1px dashed color-mix(in srgb,var(--acc) 35%,transparent);outline-offset:-2px}
.mail-folders a.drop{background:color-mix(in srgb,var(--acc) 28%,transparent)!important;outline:2px solid var(--acc)!important}
.mr-aib{background:linear-gradient(135deg,color-mix(in srgb,#8b5cf6 16%,transparent),color-mix(in srgb,#06b6d4 16%,transparent))}
.mr-ai{margin:8px 0 12px;padding:12px 14px;border-radius:12px;border:1px solid color-mix(in srgb,#8b5cf6 40%,var(--bd));background:linear-gradient(135deg,color-mix(in srgb,#8b5cf6 7%,var(--card)),color-mix(in srgb,#06b6d4 7%,var(--card)))}
.mr-ai-h{display:flex;align-items:center;justify-content:space-between;font-weight:700;margin-bottom:6px}.mr-ai p{margin:4px 0 8px}.mr-ai ul{margin:4px 0;padding-inline-start:20px}
.mr-ai-wait{animation:postpulse 1.4s ease-in-out infinite}.mr-ai-tags{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-top:6px}
.mr-ai-reps{display:grid;gap:6px}.mr-ai-rep{all:unset;cursor:pointer;display:flex;flex-direction:column;gap:3px;padding:8px 10px;border-radius:10px;border:1px solid var(--bd);background:var(--card)}
.mr-ai-rep:hover{border-color:#8b5cf6}.mr-ai-rep span{font-size:13px;color:var(--mut);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line}
.mc-ai>div{min-width:230px}.mc-ai summary{background:linear-gradient(135deg,color-mix(in srgb,#8b5cf6 18%,transparent),color-mix(in srgb,#06b6d4 18%,transparent))}
.mail-undo{display:flex;align-items:center;gap:10px;overflow:hidden}.mail-undo button{margin:0}.mail-undo i{position:absolute;left:0;bottom:0;height:3px;background:var(--acc);animation:mailundo 6s linear forwards}
@keyframes mailundo{from{width:100%}to{width:0}}
.mc-ai{position:relative}.mc-ai>div{bottom:110%;top:auto;max-height:340px;overflow:auto;inset-inline-start:0;inset-inline-end:auto}
.mr-ai-rep,.mr-ai-rep:hover,.mr-ai-rep:focus{background:var(--card)!important;color:var(--fg)!important;box-shadow:none!important}.mr-ai-rep:hover,.mr-ai-rep:focus-visible{border-color:#8b5cf6!important;outline:2px solid color-mix(in srgb,#8b5cf6 35%,transparent)}
/* v210 business check */
.bz-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-top:12px}.bz-kpi{margin:0;display:flex;flex-direction:column;gap:4px}.bz-kpi b{font-size:22px}
.bz-kpi.neg b{color:var(--danger,#dc2626)}.bz-kpi.pos b{color:var(--ok)}
.bz-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:12px;margin:12px 0}.bz-grid>.card{margin:0}
.bz-legend{display:flex;gap:14px;margin-bottom:6px}.bz-legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-inline-end:5px;vertical-align:-1px}
.bz-c-rev{background:#0ea5e9}.bz-c-exp{background:#f59e0b}
.bz-bars{display:flex;align-items:flex-end;gap:6px;height:170px;direction:ltr}.bz-bar{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%}
.bz-pair{flex:1;width:100%;display:flex;align-items:flex-end;gap:2px;justify-content:center}.bz-pair span{width:42%;max-width:14px;border-radius:4px 4px 0 0;min-height:2px}.bz-bar small{font-size:10px;color:var(--mut)}
.bz-cat{position:relative;display:flex;justify-content:space-between;gap:8px;padding:7px 8px;margin:4px 0;border-radius:8px;overflow:hidden}.bz-cat>*{position:relative;z-index:1}
.bz-cat i{position:absolute;inset-block:0;inset-inline-start:0;background:color-mix(in srgb,#f59e0b 16%,transparent);z-index:0;border-radius:8px}
.bz-add{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 2fr auto;gap:6px;align-items:center}.bz-add>*{margin:0}
@media (max-width:760px){.bz-add{grid-template-columns:1fr 1fr}.bz-add input[name=name],.bz-add input[name=note]{grid-column:1/-1}}
.bz-run textarea{width:100%}.bz-go{background:linear-gradient(135deg,#7c3aed,#0891b2);border:0;color:#fff;font-weight:700}
.bz-wait{font-size:16px;animation:postpulse 1.6s ease-in-out infinite}
.bz-head{display:flex;gap:18px;align-items:center}.bz-score{flex:none;width:96px;height:96px;border-radius:50%;display:grid;place-content:center;text-align:center;background:conic-gradient(var(--c) calc(var(--p)*1%),var(--bd) 0);position:relative}
.bz-score::before{content:"";position:absolute;inset:9px;border-radius:50%;background:var(--card)}.bz-score>*{position:relative}.bz-score b{font-size:28px;line-height:1}.bz-score small{color:var(--mut)}
.bz-save{background:color-mix(in srgb,var(--ok) 15%,transparent);border-color:var(--ok);color:var(--ok);font-weight:600}
.bz-v{padding:2px 8px;border-radius:999px;font-size:12px;border:1px solid var(--bd);white-space:nowrap}.bz-v-ok{color:var(--ok);border-color:var(--ok)}.bz-v-warn{color:#c2410c;border-color:#f97316}.bz-v-bad{color:var(--danger,#dc2626);border-color:var(--danger,#dc2626)}.bz-v-mut{color:var(--mut)}
.bz-ideas{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}.bz-idea{margin:0}.bz-idea ol{padding-inline-start:18px;margin:6px 0}
.bz-step{display:flex;gap:8px;align-items:center;padding:6px 0;border-bottom:1px solid var(--bd)}.bz-step span[dir=auto]{flex:1}.bz-step button{margin:0}
@media (max-width:600px){.bz-head{flex-direction:column;align-items:flex-start}}
.bz-consent{margin:10px 0;padding:12px 14px;border:1px solid color-mix(in srgb,var(--warn) 50%,var(--bd));border-radius:12px;background:color-mix(in srgb,var(--warn) 6%,var(--card))}
.bz-consent ul{margin:6px 0;padding-inline-start:20px}.bz-ck{display:flex!important;gap:8px;align-items:flex-start;margin:8px 0;font-weight:600;font-size:14px}.bz-ck input{width:auto;margin-top:3px;flex:none}
.bz-json{max-height:260px;overflow:auto;font-size:11px;background:var(--bg2);padding:8px;border-radius:8px;white-space:pre-wrap}.bz-go:disabled{opacity:.45;cursor:not-allowed}
/* v212 side menu: find box, collapsible groups, counters, ☆ pins, recent, narrow mode */
.side .sl{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}
.side-n{flex:none;font-size:11px;font-weight:700;line-height:1;padding:3px 7px;border-radius:999px;background:var(--acc);color:#fff}
.side-pin{flex:none;width:18px;height:18px;display:grid;place-content:center;font-style:normal;font-size:13px;opacity:0;color:var(--mut);border-radius:6px;cursor:pointer;transition:opacity .12s}
.side-pin::before{content:"☆"}.side-pin.on::before{content:"★";color:#f59e0b}
.side a:hover .side-pin,.side-pin:focus-visible{opacity:1}.side-mine .side-pin.on{opacity:0}.side-mine a:hover .side-pin.on{opacity:1}
.side-pin:hover{background:var(--bg2);color:#f59e0b}
@media (min-width:981px){
  .side-mhead{display:flex;gap:6px;position:sticky;top:-12px;z-index:3;margin:-12px -10px 6px;padding:10px;background:var(--bg);border-bottom:1px solid var(--bd)}
  .side-q{flex:1;min-width:0;margin:0;padding:7px 10px;font-size:13px;border-radius:9px}
  .side-mini-b{all:unset;cursor:pointer;flex:none;width:30px;display:grid;place-content:center;border-radius:8px;color:var(--mut);border:1px solid var(--bd)}.side-mini-b:hover{color:var(--fg);background:var(--bg2)}
  .side-gt{cursor:pointer;padding:2px 0;box-sizing:border-box}
  .side-gt::after{content:"";width:6px;height:6px;border-inline-end:1.5px solid var(--mut);border-bottom:1.5px solid var(--mut);transform:rotate(-45deg);transition:transform .15s;margin-inline-start:auto;opacity:.7}
  [dir=rtl] .side-gt::after{transform:rotate(45deg)}
  .side-g.open .side-gt::after,.side.searching .side-gt::after{transform:rotate(45deg)}
  .side-gt small{display:inline-block;font-size:10px;font-weight:700;color:var(--mut);background:var(--bg2);border-radius:9px;padding:0 6px;letter-spacing:0}
  .side-g:not(.open) a{display:none}.side.searching .side-g a:not([hidden]){display:flex}
  .side h6:hover{color:var(--fg)}
  /* narrow menu */
  body.has-side.side-mini{padding-inline-start:68px}body.has-side.side-mini .app-top{margin-inline-start:-68px}
  body.side-mini .side{width:68px;padding:8px 6px 20px;overflow-x:hidden}
  body.side-mini .side-mhead{margin:-8px -6px 6px;padding:8px 6px;justify-content:center}body.side-mini .side-q{display:none}
  body.side-mini .side h6,body.side-mini .side .sl,body.side-mini .side-pin,body.side-mini .side-edit,body.side-mini .side-recent{display:none}
  body.side-mini .side-g a{display:flex!important;justify-content:center;padding:8px 0;position:relative}body.side-mini .side .si{width:auto;font-size:19px}
  body.side-mini .side-g{margin-bottom:6px;padding-bottom:6px;border-bottom:1px solid var(--bd)}
  body.side-mini .side-n{position:absolute;top:2px;inset-inline-end:2px;padding:2px 4px;font-size:9px}
  body.side-mini .side-more{display:none!important}
}
@media (max-width:980px){.side-mini-b{display:none}.side-pin{opacity:.55;width:28px;height:28px;font-size:16px}}
.bz-mod{text-decoration:none;color:var(--acc);border-color:var(--acc)}.bz-mod:hover{background:color-mix(in srgb,var(--acc) 12%,transparent)}
.side-gt,.side-gt:hover,.side-gt:focus,.side-gt:active{background:none!important;box-shadow:none!important;color:inherit!important}.side-gt:focus-visible{outline:2px solid var(--acc);outline-offset:2px;border-radius:6px}
@media (min-width:981px){body.side-mini .side-g a{font-size:0!important;gap:0}body.side-mini .side .si{font-size:19px!important}body.side-mini .side .side-sub{display:none!important}body.side-mini .side-n{font-size:9px!important}}

/* v218 AI label (AI Act art. 50) */
.ai-badge{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600;padding:1px 7px;border-radius:999px;background:color-mix(in srgb,#8b5cf6 14%,transparent);color:#7c3aed;border:1px solid color-mix(in srgb,#8b5cf6 35%,transparent);vertical-align:middle;white-space:nowrap}
:root[data-theme=dark] .ai-badge{color:#c4b5fd}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .ai-badge{color:#c4b5fd}}
/* v219 password manager */
.pwm{display:grid;gap:10px}.pwm-card{max-width:520px;display:grid;gap:10px}.pwm-bar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.pwm-bar input[type=search]{flex:1;min-width:180px}
.pwm-more{position:relative}.pwm-more>div{position:absolute;z-index:20;inset-inline-end:0;top:110%;display:grid;gap:6px;padding:10px;background:var(--card,#fff);border:1px solid var(--bd);border-radius:12px;box-shadow:0 10px 30px rgba(0,0,0,.18);min-width:260px}
.pwm-list{display:grid;gap:6px}.pwm-f{margin:12px 0 2px}.pwm-row{display:flex;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--bd);border-radius:12px;background:var(--card,transparent)}
.pwm-ic{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-weight:700;background:color-mix(in srgb,var(--brand,#0f766e) 15%,transparent);color:var(--brand,#0f766e);flex:none}
.pwm-acts{display:flex;gap:4px;flex-wrap:wrap}.pwm-warn{font-size:11px;color:#b45309}.pwm-str{display:inline-block;width:120px;height:6px;border-radius:9px;background:var(--bd);overflow:hidden;vertical-align:middle;margin-inline-end:6px}
.pwm-str i{display:block;height:100%}.pwm-str.s0 i,.pwm-str.s1 i{background:#ef4444}.pwm-str.s2 i{background:#f59e0b}.pwm-str.s3 i,.pwm-str.s4 i{background:#16a34a}
.pwm-dlg{max-width:620px;width:calc(100% - 24px);border:1px solid var(--bd);border-radius:16px;padding:18px}.pwm-dlg::backdrop{background:rgba(0,0,0,.45)}
.pwm-toast{position:fixed;bottom:24px;inset-inline-start:50%;transform:translateX(-50%);background:#111827;color:#fff;padding:10px 16px;border-radius:12px;z-index:9999;font-size:14px;box-shadow:0 8px 24px rgba(0,0,0,.3)}.pwm-toast.err{background:#b91c1c}
.bm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}.bm-it{display:flex;gap:8px;align-items:center;padding:8px 10px;border:1px solid var(--bd);border-radius:10px;min-width:0}
.bm-it a.t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:none;color:inherit}.bm-it img{width:16px;height:16px;flex:none}
/* v230 start page: mobile app */
.lp-app{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;margin:34px 0;padding:24px}
.lp-app-l{list-style:none;padding:0;margin:0 0 14px;display:grid;gap:6px}
.lp-app-b{gap:10px;flex-wrap:wrap}.store-b{display:inline-grid;grid-template-columns:auto auto;grid-template-rows:auto auto;column-gap:8px;align-items:center;background:#111;color:#fff!important;border-radius:10px;padding:6px 14px;text-decoration:none;line-height:1.1}
.store-b span{grid-row:1/3;font-size:22px}.store-b small{font-size:10px;opacity:.85}.store-b b{font-size:16px}
.lp-app-qr{display:grid;justify-items:center;gap:6px}.lp-app-qr .qr{background:#fff;padding:10px;border-radius:12px;border:1px solid var(--bd)}.lp-app-qr svg{display:block;width:150px;height:150px}
@media(max-width:700px){.lp-app{grid-template-columns:1fr}.lp-app-qr{display:none}}
/* v231 start page: industries as tabs */
.ind{margin:34px 0}.ind h2{text-align:center}
.ind-tabs{display:flex;gap:6px;overflow-x:auto;padding:4px 2px 10px;scrollbar-width:thin;scroll-snap-type:x proximity}
.ind-tabs button{all:unset;flex:none;scroll-snap-align:center;display:inline-flex;gap:6px;align-items:center;padding:8px 14px;border:1px solid var(--bd);border-radius:999px;background:var(--card);cursor:pointer;font-weight:600;font-size:14px;white-space:nowrap}
.ind-tabs button[aria-selected=true]{background:var(--acc);border-color:var(--acc);color:#fff}.ind-tabs button:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.ind-p{padding:22px}.ind-h{display:flex;gap:14px;align-items:center}.ind-h h3{margin:0}.ind-h p{margin:4px 0 0}.ind-ic{font-size:40px}
.ind-b{display:grid;grid-template-columns:1.2fr 1fr;gap:20px;margin-top:14px}.ind-f{margin:0;padding:0;list-style:none;display:grid;gap:8px}.ind-f li::before{content:"✓";color:var(--acc);font-weight:700;margin-inline-end:8px}
.ind-m{display:grid;gap:6px;align-content:start}.ind-pills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}
@media(max-width:760px){.ind-b{grid-template-columns:1fr}}
